make-dfsg-3.81.orig/0000755000175000017500000000000010416553102014511 5ustar srivastasrivastamake-dfsg-3.81.orig/ABOUT-NLS0000644000175000017500000015111610416553102015745 0ustar srivastasrivastaNotes on the Free Translation Project ************************************* Free software is going international! The Free Translation Project is a way to get maintainers of free software, translators, and users all together, so that will gradually become able to speak many languages. A few packages already provide translations for their messages. If you found this `ABOUT-NLS' file inside a distribution, you may assume that the distributed package does use GNU `gettext' internally, itself available at your nearest GNU archive site. But you do _not_ need to install GNU `gettext' prior to configuring, installing or using this package with messages translated. Installers will find here some useful hints. These notes also explain how users should proceed for getting the programs to use the available translations. They tell how people wanting to contribute and work at translations should contact the appropriate team. When reporting bugs in the `intl/' directory or bugs which may be related to internationalization, you should tell about the version of `gettext' which is used. The information can be found in the `intl/VERSION' file, in internationalized packages. Quick configuration advice ========================== If you want to exploit the full power of internationalization, you should configure it using ./configure --with-included-gettext to force usage of internationalizing routines provided within this package, despite the existence of internationalizing capabilities in the operating system where this package is being installed. So far, only the `gettext' implementation in the GNU C library version 2 provides as many features (such as locale alias, message inheritance, automatic charset conversion or plural form handling) as the implementation here. It is also not possible to offer this additional functionality on top of a `catgets' implementation. Future versions of GNU `gettext' will very likely convey even more functionality. So it might be a good idea to change to GNU `gettext' as soon as possible. So you need _not_ provide this option if you are using GNU libc 2 or you have installed a recent copy of the GNU gettext package with the included `libintl'. INSTALL Matters =============== Some packages are "localizable" when properly installed; the programs they contain can be made to speak your own native language. Most such packages use GNU `gettext'. Other packages have their own ways to internationalization, predating GNU `gettext'. By default, this package will be installed to allow translation of messages. It will automatically detect whether the system already provides the GNU `gettext' functions. If not, the GNU `gettext' own library will be used. This library is wholly contained within this package, usually in the `intl/' subdirectory, so prior installation of the GNU `gettext' package is _not_ required. Installers may use special options at configuration time for changing the default behaviour. The commands: ./configure --with-included-gettext ./configure --disable-nls will respectively bypass any pre-existing `gettext' to use the internationalizing routines provided within this package, or else, _totally_ disable translation of messages. When you already have GNU `gettext' installed on your system and run configure without an option for your new package, `configure' will probably detect the previously built and installed `libintl.a' file and will decide to use this. This might be not what is desirable. You should use the more recent version of the GNU `gettext' library. I.e. if the file `intl/VERSION' shows that the library which comes with this package is more recent, you should use ./configure --with-included-gettext to prevent auto-detection. The configuration process will not test for the `catgets' function and therefore it will not be used. The reason is that even an emulation of `gettext' on top of `catgets' could not provide all the extensions of the GNU `gettext' library. Internationalized packages have usually many `po/LL.po' files, where LL gives an ISO 639 two-letter code identifying the language. Unless translations have been forbidden at `configure' time by using the `--disable-nls' switch, all available translations are installed together with the package. However, the environment variable `LINGUAS' may be set, prior to configuration, to limit the installed set. `LINGUAS' should then contain a space separated list of two-letter codes, stating which languages are allowed. Using This Package ================== As a user, if your language has been installed for this package, you only have to set the `LANG' environment variable to the appropriate `LL_CC' combination. Here `LL' is an ISO 639 two-letter language code, and `CC' is an ISO 3166 two-letter country code. For example, let's suppose that you speak German and live in Germany. At the shell prompt, merely execute `setenv LANG de_DE' (in `csh'), `export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). This can be done from your `.login' or `.profile' file, once and for all. You might think that the country code specification is redundant. But in fact, some languages have dialects in different countries. For example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The country code serves to distinguish the dialects. The locale naming convention of `LL_CC', with `LL' denoting the language and `CC' denoting the country, is the one use on systems based on GNU libc. On other systems, some variations of this scheme are used, such as `LL' or `LL_CC.ENCODING'. You can get the list of locales supported by your system for your country by running the command `locale -a | grep '^LL''. Not all programs have translations for all languages. By default, an English message is shown in place of a nonexistent translation. If you understand other languages, you can set up a priority list of languages. This is done through a different environment variable, called `LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' for the purpose of message handling, but you still need to have `LANG' set to the primary language; this is required by other parts of the system libraries. For example, some Swedish users who would rather read translations in German than English for when Swedish is not available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. Special advice for Norwegian users: The language code for Norwegian bokma*l changed from `no' to `nb' recently (in 2003). During the transition period, while some message catalogs for this language are installed under `nb' and some older ones under `no', it's recommended for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and older translations are used. In the `LANGUAGE' environment variable, but not in the `LANG' environment variable, `LL_CC' combinations can be abbreviated as `LL' to denote the language's main dialect. For example, `de' is equivalent to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' (Portuguese as spoken in Portugal) in this context. Translating Teams ================= For the Free Translation Project to be a success, we need interested people who like their own language and write it well, and who are also able to synergize with other translators speaking the same language. Each translation team has its own mailing list. The up-to-date list of teams can be found at the Free Translation Project's homepage, `http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams" area. If you'd like to volunteer to _work_ at translating messages, you should become a member of the translating team for your own language. The subscribing address is _not_ the same as the list itself, it has `-request' appended. For example, speakers of Swedish can send a message to `sv-request@li.org', having this message body: subscribe Keep in mind that team members are expected to participate _actively_ in translations, or at solving translational difficulties, rather than merely lurking around. If your team does not exist yet and you want to start one, or if you are unsure about what to do or how to get started, please write to `translation@iro.umontreal.ca' to reach the coordinator for all translator teams. The English team is special. It works at improving and uniformizing the terminology in use. Proven linguistic skill are praised more than programming skill, here. Available Packages ================== Languages are not equally supported in all packages. The following matrix shows the current state of internationalization, as of January 2004. The matrix shows, in regard of each package, for which languages PO files have been submitted to translation coordination, with a translation percentage of at least 50%. Ready PO files af am ar az be bg bs ca cs da de el en en_GB eo es +----------------------------------------------------+ a2ps | [] [] [] [] | aegis | () | ant-phone | () | anubis | | ap-utils | | aspell | [] | bash | [] [] [] [] | batchelor | | bfd | [] [] | binutils | [] [] | bison | [] [] [] | bluez-pin | [] [] [] | clisp | | clisp | [] [] [] | console-tools | [] [] | coreutils | [] [] [] [] | cpio | [] [] [] | darkstat | [] () [] | diffutils | [] [] [] [] [] [] [] | e2fsprogs | [] [] [] | enscript | [] [] [] [] | error | [] [] [] [] [] | fetchmail | [] () [] [] [] [] | fileutils | [] [] [] | findutils | [] [] [] [] [] [] [] | flex | [] [] [] [] | fslint | | gas | [] | gawk | [] [] [] [] | gbiff | [] | gcal | [] | gcc | [] [] | gettext | [] [] [] [] [] | gettext-examples | [] [] [] [] | gettext-runtime | [] [] [] [] [] | gettext-tools | [] [] [] | gimp-print | [] [] [] [] [] | gliv | | glunarclock | [] [] | gnubiff | [] | gnucash | [] () [] [] | gnucash-glossary | [] () [] | gnupg | [] () [] [] [] [] | gpe-aerial | [] | gpe-beam | [] [] | gpe-calendar | [] [] | gpe-clock | [] [] | gpe-conf | [] [] | gpe-contacts | [] [] | gpe-edit | [] | gpe-go | [] | gpe-login | [] [] | gpe-ownerinfo | [] [] | gpe-sketchbook | [] [] | gpe-su | [] [] | gpe-taskmanager | [] [] | gpe-timesheet | [] | gpe-today | [] [] | gpe-todo | [] [] | gphoto2 | [] [] [] [] | gprof | [] [] [] | gpsdrive | () () () | gramadoir | [] | grep | [] [] [] [] [] [] | gretl | [] | gtick | [] () | hello | [] [] [] [] [] [] | id-utils | [] [] | indent | [] [] [] [] | iso_3166 | [] [] [] [] [] [] [] [] [] [] | iso_3166_1 | [] [] [] [] [] [] | iso_3166_2 | | iso_3166_3 | [] | iso_4217 | [] [] [] [] | iso_639 | | jpilot | [] [] [] | jtag | | jwhois | [] | kbd | [] [] [] [] [] | latrine | () | ld | [] [] | libc | [] [] [] [] [] [] | libgpewidget | [] [] | libiconv | [] [] [] [] [] | lifelines | [] () | lilypond | [] | lingoteach | | lingoteach_lessons | () () | lynx | [] [] [] [] | m4 | [] [] [] [] | mailutils | [] [] | make | [] [] [] | man-db | [] () [] [] () | minicom | [] [] [] | mysecretdiary | [] [] [] | nano | [] () [] [] [] | nano_1_0 | [] () [] [] [] | opcodes | [] | parted | [] [] [] [] [] | ptx | [] [] [] [] [] | python | | radius | [] | recode | [] [] [] [] [] [] [] | rpm | [] [] | screem | | scrollkeeper | [] [] [] [] [] [] | sed | [] [] [] [] [] [] | sh-utils | [] [] [] | shared-mime-info | | sharutils | [] [] [] [] [] [] | silky | () | skencil | [] () [] | sketch | [] () [] | soundtracker | [] [] [] | sp | [] | tar | [] [] [] [] | texinfo | [] [] [] | textutils | [] [] [] [] | tin | () () | tp-robot | | tuxpaint | [] [] [] [] [] [] [] | unicode-han-tra... | | unicode-transla... | | util-linux | [] [] [] [] [] | vorbis-tools | [] [] [] [] | wastesedge | () | wdiff | [] [] [] [] | wget | [] [] [] [] [] [] | xchat | [] [] [] [] | xfree86_xkb_xml | [] [] | xpad | [] | +----------------------------------------------------+ af am ar az be bg bs ca cs da de el en en_GB eo es 4 0 0 1 9 4 1 40 41 60 78 17 1 5 13 68 et eu fa fi fr ga gl he hr hu id is it ja ko lg +-------------------------------------------------+ a2ps | [] [] [] () () | aegis | | ant-phone | [] | anubis | [] | ap-utils | [] | aspell | [] [] | bash | [] [] | batchelor | [] [] | bfd | [] | binutils | [] [] | bison | [] [] [] [] | bluez-pin | [] [] [] [] [] | clisp | | clisp | [] | console-tools | | coreutils | [] [] [] [] [] [] | cpio | [] [] [] [] | darkstat | () [] [] [] | diffutils | [] [] [] [] [] [] [] | e2fsprogs | | enscript | [] [] | error | [] [] [] [] | fetchmail | [] | fileutils | [] [] [] [] [] [] | findutils | [] [] [] [] [] [] [] [] [] [] [] | flex | [] [] [] | fslint | [] | gas | [] | gawk | [] [] [] | gbiff | [] | gcal | [] | gcc | [] | gettext | [] [] [] | gettext-examples | [] [] | gettext-runtime | [] [] [] [] [] | gettext-tools | [] [] [] | gimp-print | [] [] | gliv | () | glunarclock | [] [] [] [] | gnubiff | [] | gnucash | () [] | gnucash-glossary | [] | gnupg | [] [] [] [] [] [] [] | gpe-aerial | [] | gpe-beam | [] | gpe-calendar | [] [] [] | gpe-clock | [] | gpe-conf | [] | gpe-contacts | [] [] | gpe-edit | [] [] | gpe-go | [] | gpe-login | [] [] | gpe-ownerinfo | [] [] [] | gpe-sketchbook | [] | gpe-su | [] | gpe-taskmanager | [] | gpe-timesheet | [] [] [] | gpe-today | [] [] | gpe-todo | [] [] | gphoto2 | [] [] [] | gprof | [] [] | gpsdrive | () () () | gramadoir | [] [] | grep | [] [] [] [] [] [] [] [] [] [] [] | gretl | [] [] | gtick | [] [] [] | hello | [] [] [] [] [] [] [] [] [] [] [] [] [] | id-utils | [] [] [] [] | indent | [] [] [] [] [] [] [] [] [] | iso_3166 | [] [] [] [] [] [] [] | iso_3166_1 | [] [] [] [] [] | iso_3166_2 | | iso_3166_3 | | iso_4217 | [] [] [] [] [] [] | iso_639 | | jpilot | [] () | jtag | [] | jwhois | [] [] [] [] | kbd | [] | latrine | [] | ld | [] | libc | [] [] [] [] [] [] | libgpewidget | [] [] [] [] | libiconv | [] [] [] [] [] [] [] [] [] | lifelines | () | lilypond | [] | lingoteach | [] [] | lingoteach_lessons | | lynx | [] [] [] [] | m4 | [] [] [] [] | mailutils | | make | [] [] [] [] [] [] | man-db | () () | minicom | [] [] [] [] | mysecretdiary | [] [] | nano | [] [] [] [] | nano_1_0 | [] [] [] [] | opcodes | [] | parted | [] [] [] | ptx | [] [] [] [] [] [] [] | python | | radius | [] | recode | [] [] [] [] [] [] | rpm | [] [] | screem | | scrollkeeper | [] | sed | [] [] [] [] [] [] [] [] [] | sh-utils | [] [] [] [] [] [] [] | shared-mime-info | [] [] [] | sharutils | [] [] [] [] [] | silky | () [] () () | skencil | [] | sketch | [] | soundtracker | [] [] | sp | [] () | tar | [] [] [] [] [] [] [] [] [] | texinfo | [] [] [] [] | textutils | [] [] [] [] [] [] | tin | [] () | tp-robot | [] | tuxpaint | [] [] [] [] [] [] [] [] [] | unicode-han-tra... | | unicode-transla... | [] [] | util-linux | [] [] [] [] () [] | vorbis-tools | [] | wastesedge | () | wdiff | [] [] [] [] [] [] | wget | [] [] [] [] [] [] [] | xchat | [] [] [] | xfree86_xkb_xml | [] [] | xpad | [] [] | +-------------------------------------------------+ et eu fa fi fr ga gl he hr hu id is it ja ko lg 22 2 1 26 106 28 24 8 10 41 33 1 26 33 12 0 lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru +-----------------------------------------------------+ a2ps | [] [] () () [] [] [] | aegis | () () () | ant-phone | [] [] | anubis | [] [] [] [] [] [] | ap-utils | [] () [] | aspell | [] | bash | [] [] [] | batchelor | [] | bfd | [] | binutils | [] | bison | [] [] [] [] [] | bluez-pin | [] [] [] | clisp | | clisp | [] | console-tools | [] | coreutils | [] [] | cpio | [] [] [] [] [] | darkstat | [] [] [] [] | diffutils | [] [] [] [] [] [] | e2fsprogs | [] | enscript | [] [] [] [] | error | [] [] [] | fetchmail | [] [] () [] | fileutils | [] [] [] | findutils | [] [] [] [] [] | flex | [] [] [] [] | fslint | [] [] | gas | | gawk | [] [] [] | gbiff | [] [] | gcal | | gcc | | gettext | [] [] [] | gettext-examples | [] [] [] | gettext-runtime | [] [] [] [] | gettext-tools | [] [] | gimp-print | [] | gliv | [] [] [] | glunarclock | [] [] [] [] | gnubiff | [] | gnucash | [] [] () [] | gnucash-glossary | [] [] | gnupg | [] | gpe-aerial | [] [] [] [] | gpe-beam | [] [] [] [] | gpe-calendar | [] [] [] [] | gpe-clock | [] [] [] [] | gpe-conf | [] [] [] [] | gpe-contacts | [] [] [] [] | gpe-edit | [] [] [] [] | gpe-go | [] [] [] | gpe-login | [] [] [] [] | gpe-ownerinfo | [] [] [] [] | gpe-sketchbook | [] [] [] [] | gpe-su | [] [] [] [] | gpe-taskmanager | [] [] [] [] | gpe-timesheet | [] [] [] [] | gpe-today | [] [] [] [] | gpe-todo | [] [] [] [] | gphoto2 | [] | gprof | [] [] | gpsdrive | () () [] | gramadoir | () [] | grep | [] [] [] [] [] | gretl | | gtick | [] [] [] | hello | [] [] [] [] [] [] [] [] [] [] | id-utils | [] [] [] [] | indent | [] [] [] [] | iso_3166 | [] [] [] | iso_3166_1 | [] [] | iso_3166_2 | | iso_3166_3 | [] | iso_4217 | [] [] [] [] [] [] [] [] | iso_639 | [] | jpilot | () () | jtag | | jwhois | [] [] [] [] () | kbd | [] [] [] | latrine | [] | ld | | libc | [] [] [] [] | libgpewidget | [] [] [] | libiconv | [] [] [] [] [] | lifelines | | lilypond | | lingoteach | | lingoteach_lessons | | lynx | [] [] [] | m4 | [] [] [] [] [] | mailutils | [] [] [] | make | [] [] [] [] | man-db | [] | minicom | [] [] [] [] | mysecretdiary | [] [] [] | nano | [] [] [] [] [] | nano_1_0 | [] [] [] [] [] [] | opcodes | [] [] | parted | [] [] [] [] | ptx | [] [] [] [] [] [] [] [] | python | | radius | [] [] | recode | [] [] [] [] | rpm | [] [] [] | screem | | scrollkeeper | [] [] [] [] [] | sed | [] [] [] | sh-utils | [] [] | shared-mime-info | [] [] | sharutils | [] [] | silky | () | skencil | [] [] | sketch | [] [] | soundtracker | | sp | | tar | [] [] [] [] [] [] | texinfo | [] [] [] [] | textutils | [] [] | tin | | tp-robot | [] | tuxpaint | [] [] [] [] [] [] [] [] | unicode-han-tra... | | unicode-transla... | | util-linux | [] [] [] | vorbis-tools | [] [] [] | wastesedge | | wdiff | [] [] [] [] [] | wget | [] [] [] | xchat | [] [] [] | xfree86_xkb_xml | [] [] | xpad | [] [] | +-----------------------------------------------------+ lt lv mk mn ms mt nb nl nn no nso pl pt pt_BR ro ru 1 2 0 3 12 0 10 69 6 7 1 40 26 36 76 63 sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu +-----------------------------------------------------+ a2ps | [] [] [] [] | 16 aegis | | 0 ant-phone | | 3 anubis | [] [] | 9 ap-utils | () | 3 aspell | | 4 bash | | 9 batchelor | | 3 bfd | [] [] | 6 binutils | [] [] [] | 8 bison | [] [] | 14 bluez-pin | [] [] [] | 14 clisp | | 0 clisp | | 5 console-tools | | 3 coreutils | [] [] [] [] | 16 cpio | [] [] | 14 darkstat | [] [] [] () () | 12 diffutils | [] [] [] | 23 e2fsprogs | [] [] | 6 enscript | [] [] | 12 error | [] [] [] | 15 fetchmail | [] [] | 11 fileutils | [] [] [] [] [] | 17 findutils | [] [] [] [] [] [] | 29 flex | [] [] | 13 fslint | | 3 gas | [] | 3 gawk | [] [] | 12 gbiff | | 4 gcal | [] [] | 4 gcc | [] | 4 gettext | [] [] [] [] [] | 16 gettext-examples | [] [] [] [] [] | 14 gettext-runtime | [] [] [] [] [] [] [] [] | 22 gettext-tools | [] [] [] [] [] [] | 14 gimp-print | [] [] | 10 gliv | | 3 glunarclock | [] [] [] | 13 gnubiff | | 3 gnucash | [] [] | 9 gnucash-glossary | [] [] [] | 8 gnupg | [] [] [] [] | 17 gpe-aerial | [] | 7 gpe-beam | [] | 8 gpe-calendar | [] [] [] [] | 13 gpe-clock | [] [] [] | 10 gpe-conf | [] [] | 9 gpe-contacts | [] [] [] | 11 gpe-edit | [] [] [] [] [] | 12 gpe-go | | 5 gpe-login | [] [] [] [] [] | 13 gpe-ownerinfo | [] [] [] [] | 13 gpe-sketchbook | [] [] | 9 gpe-su | [] [] [] | 10 gpe-taskmanager | [] [] [] | 10 gpe-timesheet | [] [] [] [] | 12 gpe-today | [] [] [] [] [] | 13 gpe-todo | [] [] [] [] | 12 gphoto2 | [] [] [] | 11 gprof | [] [] | 9 gpsdrive | [] [] | 3 gramadoir | [] | 5 grep | [] [] [] [] | 26 gretl | | 3 gtick | | 7 hello | [] [] [] [] [] | 34 id-utils | [] [] | 12 indent | [] [] [] [] | 21 iso_3166 | [] [] [] [] [] [] [] | 27 iso_3166_1 | [] [] [] | 16 iso_3166_2 | | 0 iso_3166_3 | | 2 iso_4217 | [] [] [] [] [] [] | 24 iso_639 | | 1 jpilot | [] [] [] [] [] | 9 jtag | [] | 2 jwhois | () [] [] | 11 kbd | [] [] | 11 latrine | | 2 ld | [] [] | 5 libc | [] [] [] [] | 20 libgpewidget | [] [] [] [] | 13 libiconv | [] [] [] [] [] [] [] [] | 27 lifelines | [] | 2 lilypond | [] | 3 lingoteach | | 2 lingoteach_lessons | () | 0 lynx | [] [] [] | 14 m4 | [] [] | 15 mailutils | | 5 make | [] [] [] | 16 man-db | [] | 5 minicom | | 11 mysecretdiary | [] [] | 10 nano | [] [] [] [] | 17 nano_1_0 | [] [] [] | 17 opcodes | [] [] | 6 parted | [] [] [] | 15 ptx | [] [] | 22 python | | 0 radius | | 4 recode | [] [] [] | 20 rpm | [] [] | 9 screem | [] [] | 2 scrollkeeper | [] [] [] | 15 sed | [] [] [] [] [] [] | 24 sh-utils | [] [] | 14 shared-mime-info | [] [] | 7 sharutils | [] [] [] [] | 17 silky | () | 3 skencil | [] | 6 sketch | [] | 6 soundtracker | [] [] | 7 sp | [] | 3 tar | [] [] [] [] [] | 24 texinfo | [] [] [] | 14 textutils | [] [] [] [] | 16 tin | | 1 tp-robot | | 2 tuxpaint | [] [] [] [] [] | 29 unicode-han-tra... | | 0 unicode-transla... | | 2 util-linux | [] [] | 15 vorbis-tools | | 8 wastesedge | | 0 wdiff | [] [] [] | 18 wget | [] [] [] [] [] [] [] [] | 24 xchat | [] [] [] [] [] | 15 xfree86_xkb_xml | [] [] [] [] [] | 11 xpad | | 5 +-----------------------------------------------------+ 63 teams sk sl sr sv ta th tr uk ven vi wa xh zh_CN zh_TW zu 131 domains 47 19 28 83 0 0 59 13 1 1 11 0 22 22 0 1373 Some counters in the preceding matrix are higher than the number of visible blocks let us expect. This is because a few extra PO files are used for implementing regional variants of languages, or language dialects. For a PO file in the matrix above to be effective, the package to which it applies should also have been internationalized and distributed as such by its maintainer. There might be an observable lag between the mere existence a PO file and its wide availability in a distribution. If January 2004 seems to be old, you may fetch a more recent copy of this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date matrix with full percentage details can be found at `http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. Using `gettext' in new packages =============================== If you are writing a freely available program and want to internationalize it you are welcome to use GNU `gettext' in your package. Of course you have to respect the GNU Library General Public License which covers the use of the GNU `gettext' library. This means in particular that even non-free programs can use `libintl' as a shared library, whereas only free software can use `libintl' as a static library or use modified versions of `libintl'. Once the sources are changed appropriately and the setup can handle the use of `gettext' the only thing missing are the translations. The Free Translation Project is also available for packages which are not developed inside the GNU project. Therefore the information given above applies also for every other Free Software Project. Contact `translation@iro.umontreal.ca' to make the `.pot' files available to the translation teams. make-dfsg-3.81.orig/AUTHORS0000644000175000017500000000537210416553102015570 0ustar srivastasrivasta----------------------------------- GNU make development up to version 3.75 by: Roland McGrath Development starting with GNU make 3.76 by: Paul D. Smith Additional development starting with GNU make 3.81 by: Boris Kolpackov GNU Make User's Manual Written by: Richard M. Stallman Edited by: Roland McGrath Bob Chassell Melissa Weisshaus Paul D. Smith ----------------------------------- GNU make porting efforts: Port to VMS by: Klaus Kaempf Hartmut Becker Archive support/Bug fixes by: John W. Eaton Martin Zinser Port to Amiga by: Aaron Digulla Port to MS-DOS (DJGPP), OS/2, and MS-Windows (native/MinGW) by: DJ Delorie Rob Tulloh Eli Zaretskii Jonathan Grant Andreas Beuning Earnie Boyd ----------------------------------- Other contributors: Janet Carson Howard Chu Paul Eggert Klaus Heinz Michael Joosten Jim Kelton David Lubbren Tim Magill Markus Mauhart Greg McGary Thomas Riedl Han-Wen Nienhuys Andreas Schwab Carl Staelin (Princeton University) Ian Stewartson (Data Logic Limited) With suggestions/comments/bug reports from a cast of ... well ... hundreds, anyway :) ------------------------------------------------------------------------------- Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/COPYING0000644000175000017500000004317310416553102015554 0ustar srivastasrivasta GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. make-dfsg-3.81.orig/ChangeLog0000644000175000017500000031762610416553102016302 0ustar srivastasrivasta2006-04-01 Paul D. Smith Version 3.81 released. * NEWS: Updated for 3.81. * README.cvs: Mention that vpath builds are not supported out of CVS. Fixes Savannah bug #16236. Remove update of make.texi from the list of things to do; we use version.texi now. 2006-03-26 Paul D. Smith * doc/make.texi: Clean up licensing. Use @copying and version.texi support from automake, as described in the Texinfo manual. 2006-03-25 Eli Zaretskii * implicit.c (pattern_search) [HAVE_DOS_PATHS]: Don't compare b with lastslash, since the latter points to filename, not to target. * job.c (construct_command_argv_internal) [HAVE_DOS_PATHS]: Declare and define sh_chars_sh[]. 2006-03-23 Paul D. Smith * configure.in: Look for build.sh.in in $srcdir so it will be built for remote configurations as well. * Makefile.am: Make sure to clean up build.sh during distclean. Fixes Savannah bug #16166. * misc.c (log_access): Takes a const char *. * function.c (fold_newlines): Takes an unsigned int *. Both fixes for Savannah bug #16170. 2006-03-22 Boris Kolpackov * implicit.c (pattern_search): Call set_file_variables only if we have prerequisites that need second expansion. Fixes Savannah bug #16140. 2006-03-19 Paul D. Smith * remake.c (update_file): Add alloca(0) to clean up alloca'd memory on hosts that don't support it directly. * README.cvs: Add information on steps for making a release (to make sure I don't forget any). * main.c (clean_jobserver): Move jobserver cleanup code into a new function. (die): Cleanup code was removed from here; call the new function. (main): If we are re-execing, clean up the jobserver first so we don't leak file descriptors. Fix bug reported by Craig Fithian . 2006-03-17 Paul D. Smith * maintMakefile (do-po-update): Rewrite this rule to clean up and allow multiple concurrent runs. Patch from Joseph Myers 2006-03-17 Boris Kolpackov * dep.h (struct dep): Add the stem field. * misc.c (alloc_dep, free_dep): New functions. (copy_dep_chain): Copy stem. (free_dep_chain): Use free_dep. * read.c (record_files): Store stem in the dependency line. * file.c (expand_deps): Use stem stored in the dependency line. Use free_dep_chain instead of free_ns_chain. * implicit.c (pattern_search): Use alloc_dep and free_dep. * read.c (read_all_makefiles, eval_makefile, eval): Ditto. * main.c (main, handle_non_switch_argument): Ditto. * remake.c (check_dep): Ditto. * rule.c (convert_suffix_rule, freerule): Ditto. 2006-03-14 Paul D. Smith * expand.c (variable_append): Instead of appending everything then expanding the result, we expand (or not, if it's simple) each part as we add it. (allocated_variable_append): Don't expand the final result. Fixes Savannah bug #15913. 2006-03-09 Paul Smith * remake.c (update_file_1): Revert the change of 3 Jan 2006 which listed non-existent files as changed. Turns out there's a bug in the Linux kernel builds which means that this change causes everything to rebuild every time. We will re-introduce this fix in the next release, to give them time to fix their build system. Fixes Savannah bug #16002. Introduces Savannah bug #16051. * implicit.c (pattern_search) [DOS_PATHS]: Look for DOS paths if we *don't* find UNIX "/". Reported by David Ergo 2006-03-04 Eli Zaretskii * variable.c (do_variable_definition) [WINDOWS32]: Call the shell locator function find_and_set_default_shell if SHELL came from the command line. 2006-02-20 Paul D. Smith * variable.c (merge_variable_set_lists): It's legal for *setlist0 to be null; don't core in that case. 2006-02-19 Paul D. Smith * commands.c (set_file_variables): Realloc, not malloc, the static string values to avoid memory leaks. * expand.c (recursively_expand_for_file): Only set reading_file to an initialized value. * implicit.c (pattern_search): We need to make a copy of the stem if we get it from an intermediate dep, since those get freed. * file.c (lookup_file) [VMS]: Don't lowercase special targets that begin with ".". (enter_file) [VMS]: Ditto. Patch provided by Hartmut Becker . 2006-02-24 Eli Zaretskii * job.c (construct_command_argv_internal): Fix last change. * w32/subproc/sub_proc.c (process_pipe_io): Make dwStdin, dwStdout, and dwStderr unsigned int: avoids compiler warnings in the calls to _beginthreadex. * expand.c (recursively_expand_for_file): Initialize `save' to prevent compiler warnings. 2006-02-18 Eli Zaretskii * job.c (construct_command_argv_internal): Don't create a temporary script/batch file if we are under -n. Call _setmode to switch the script file stream to text mode. 2006-02-17 Paul D. Smith * variable.c (merge_variable_set_lists): Don't try to merge the global_setlist. Not only is this useless, but it can lead to circularities in the linked list, if global_setlist->next in one list gets set to point to another list which also ends in global_setlist. Fixes Savannah bug #15757. 2006-02-15 Paul D. Smith Fix for Savannah bug #106. * expand.c (expanding_var): Keep track of which variable we're expanding. If no variable is being expanded, it's the same as reading_file. * make.h (expanding_var): Declare it. * expand.c (recursively_expand_for_file): Set expanding_var to the current variable we're expanding, unless there's no file info in it (could happen if it comes from the command line or a default variable). Restore it before we exit. * expand.c (variable_expand_string): Use the expanding_var file info instead of the reading_file info. * function.c (check_numeric): Ditto. (func_word): Ditto. (func_wordlist): Ditto. (func_error): Ditto. (expand_builtin_function): Ditto. (handle_function): Ditto. 2006-02-14 Paul D. Smith * read.c (eval): Even if the included filenames expands to the empty string we still need to free the allocated buffer. * implicit.c (pattern_search): If we allocated a variable set for an impossible file, free it. * variable.c (free_variable_set): New function. * variable.h: Declare it. * read.c (read_all_makefiles): Makefile names are kept in the strcache, so there's never any need to alloc/free them. (eval): Ditto. * main.c (main): Add "archives" to the .FEATURES variable if archive support is enabled. * doc/make.texi (Special Variables): Document it. 2006-02-13 Paul D. Smith * implicit.c (pattern_search): Add checking for DOS pathnames to the pattern rule target LASTSLASH manipulation. Fixes Savannah bug #11183. 2006-02-11 Paul D. Smith * (ALL FILES): Updated copyright and license notices. 2006-02-10 Paul D. Smith A new internal capability: the string cache is a read-only cache of strings, with a hash table interface for fast lookup. Nothing in the cache will ever be freed, so there's no need for reference counting, etc. This is the beginning of a full solution for Savannah bug #15182, but for now we only store makefile names here. * strcache.c: New file. Implement a read-only string cache. * make.h: Add prototypes for new functions. * main.c (initialize_global_hash_tables): Initialize the string cache. (print_data_base): Print string cache stats. * read.c (eval_makefile): Use the string cache to store makefile names. Rewrite the string allocation to be sure we free everything. 2006-02-10 Eli Zaretskii * dir.c (dir_contents_file_exists_p): Don't opendir if the directory time stamp didn't change, except on FAT filesystems. Suggested by J. David Bryan . 2006-02-09 Paul D. Smith * function.c (func_or): Implement a short-circuiting OR function. (func_and): Implement a short-circuiting AND function. (function_table_init): Update the table with the new functions. * doc/make.texi (Conditional Functions): Changed the "if" section to one on general conditional functions. Added documentation for $(and ...) and $(or ...) functions. * NEWS: Note new $(and ...) and $(or ...) functions. 2006-02-08 Boris Kolpackov * job.h (struct child): Add the dontcare bitfield. * job.c (new_job): Cache dontcare flag. * job.c (reap_children): Use cached dontcare flag instead of the one in struct file. Fixes Savannah bug #15641. 2006-02-06 Paul D. Smith * vpath.c (selective_vpath_search): If the file we find has a timestamp from -o or -W, use that instead of the real time. * remake.c (f_mtime): If the mtime is a special token from -o or -W, don't overwrite it with the real mtime. Fixes Savannah bug #15341. Updates from Markus Mauhart : * w32/subproc/sub_proc.c (process_begin): Remove no-op tests. (process_signal, process_last_err, process_exit_code): Manage invalid handle values. (process_{outbuf,errbuf,outcnt,errcnt,pipes}): Unused and don't manage invalid handles; remove them. * job.c (start_job_command) [WINDOWS32]: Jump out on error. * config.h.W32.template [WINDOWS32]: Set flags for Windows builds. * README.cvs: Updates for building from CVS. 2006-02-05 Paul D. Smith * file.c (enter_file): Keep track of the last double_colon entry, to avoid walking the list every time we want to add a new one. Fixes Savannah bug #15533. * filedef.h (struct file): Add a new LAST pointer. * dir.c (directory_contents_hash_cmp): Don't use subtraction to do the comparison. For 64-bits systems the result of the subtraction might not fit into an int. Use comparison instead. Fixes Savannah bug #15534. * doc/make.texi: Update the chapter on writing commands to reflect the changes made in 3.81 for backslash/newline and SHELL handling. 2006-02-01 Paul D. Smith * dir.c (dir_contents_file_exists_p) [WINDOWS32]: Make sure variable st is not used when it's not initialized. Patch from Eli Zaretskii . 2006-01-31 Paul D. Smith * README.W32.template: Applied patch #4785 from Markus Mauhart . * README.cvs: Applied patch #4786 from Markus Mauhart . * make_msvc_net2003.vcproj [WINDOWS32]: New version from J. Grant . * main.c: Update the copyright year in the version output. * prepare_w32.bat: Remove this file from the distribution. 2006-01-21 Eli Zaretskii * remake.c (update_goal_chain): Set g->changed instead of incrementing it, as it is only 8-bit wide, and could overflow if many commands got started in update_file. * w32/include/sub_proc.h: Add a prototype for process_used_slots. * w32/subproc/sub_proc.c: Change dimension of proc_array[] to MAXIMUM_WAIT_OBJECTS. (process_wait_for_any_private): Change dimension of handles[] array to MAXIMUM_WAIT_OBJECTS. (process_used_slots): New function. (process_register): Don't register more processes than the available number of slots. (process_easy): Don't start new processes if all slots are used up. * job.c (load_too_high, start_waiting_jobs) [WINDOWS32]: If there are already more children than sub_proc.c can handle, behave as if the load were too high. (start_job_command): Fix a typo in error message when process_easy fails. 2006-01-14 Eli Zaretskii * main.c (main) [WINDOWS32]: Don't refuse to run with -jN, even if the shell is not sh.exe. * job.c (create_batch_file): Renamed from create_batch_filename; all callers changed. Don't close the temporary file; return its file descriptor instead. New arg FD allows to return the file descriptor. (construct_command_argv_internal): Use _fdopen instead of fopen to open the batch file. 2006-01-04 Paul D. Smith * readme.vms: Updates for case-insensitive VMS file systems from Hartmut Becker . * dir.c (vms_hash): Ditto. * vmsify.c (copyto): Ditto. * vmsfunctions.c (readdir): Ditto. * make.1: Add a section on the exit codes for make. * doc/make.texi: A number of minor updates to the documentation. 2006-01-03 Paul D. Smith * remake.c (update_file_1): Mark a prerequisite changed if it doesn't exist. * read.c (eval): Be sure to strip off trailing whitespace from the prerequisites list properly. Also, initialize all fields in struct dep when creating a new one. 2005-12-28 Paul D. Smith * config.h.W32.template [WINDOWS32]: Add in some pragmas to disable warnings for MSC. Patch by Rob Tulloh . 2005-12-17 Eli Zaretskii * doc/make.texi (Execution): Add a footnote about changes in handling of backslash-newline sequences. Mention the differences on MS-DOS and MS-Windows. * NEWS: More details about building the MinGW port and a pointer to README.W32. Fix the section name that describes the new backward-incompatible processing of backslash-newline sequences. The special processing of SHELL set to "cmd" is only relevant to MS-Windows, not MS-DOS. 2005-12-17 Eli Zaretskii * main.c (handle_runtime_exceptions): Cast exrec->ExceptionAddress to DWORD, to avoid compiler warnings. * job.c (exec_command): Cast hWaitPID and hPID to DWORD, and use %ld in format, to avoid compiler warnings. * doc/make.texi (Special Targets): Fix a typo. (Appending): Fix cross-reference to Setting. (Special Variables, Secondary Expansion, File Name Functions) (Flavor Function, Pattern Match, Quick Reference): Ensure two periods after a sentence. (Execution): Add @: after "e.g.". (Environment): Fix punctuation. (Target-specific, Call Function, Quick Reference): Add @: after "etc." (Shell Function, Target-specific): Add @: after "vs." 2005-12-14 Boris Kolpackov * read.c (record_target_var): Initialize variable's export field with v_default instead of leaving it "initialized" by whatever garbage happened to be on the heap. 2005-12-12 Paul D. Smith * make.1: Fix some display errors and document all existing options. Patch provided by Mike Frysinger . 2005-12-11 Paul D. Smith * implicit.c (pattern_search): If 2nd expansion is not set for this implicit rule, replace the pattern with the stem directly, and don't re-expand the variable list. Along with the other .SECONDEXPANSION changes below, fixes bug #13781. 2005-12-09 Boris Kolpackov * implicit.c (pattern_search): Mark other files that this rule builds as targets so that they are not treated as intermediates by the pattern rule search algorithm. Fixes bug #13022. 2005-12-07 Boris Kolpackov * remake.c (notice_finished_file): Propagate the change of modification time to all the double-colon entries only if it is the last one to be updated. Fixes bug #14334. 2005-11-17 Boris Kolpackov * function.c (func_flavor): Implement the flavor function which returns the flavor of a variable. * doc/make.texi (Functions for Transforming Text): Document it. * NEWS: Add it to the list of new functions. 2005-11-14 Boris Kolpackov * read.c (construct_include_path): Set the .INCLUDE_DIRS special variable. * doc/make.texi (Special Variables): Document .INCLUDE_DIRS. * NEWS: Add .INCLUDE_DIRS to the list of new special variables. 2005-10-26 Paul Smith * read.c (record_files): Don't set deps flags if there are no deps. * maintMakefile: We only need to build the templates when we are creating a distribution, so don't do it for "all". 2005-10-24 Paul D. Smith Make secondary expansion optional: its enabled by declaring the special target .SECONDEXPANSION. * NEWS: Update information on second expansion capabilities. * doc/make.texi (Secondary Expansion): Document the .SECONDEXPANSION special target and its behavior. * dep.h (struct dep): Add a flag STATICPATTERN, set to true if the prerequisite list was found in a static pattern rule. (free_dep_chain): Declare a prototype. * file.c (parse_prereqs): New function: break out some complexity from expand_deps(). (expand_deps): If we aren't doing second expansion, replace % with the stem for static pattern rules. Call the new function. * filedef.h (parse_prereqs): Declare a prototype. * implicit.c (pattern_search): Initialize the new staticpattern field. * main.c (second_expansion): Declare a global variable to remember if the special target has been seen. Initialize the new staticpattern field for prerequisites. * make.h: Extern for second_expansion. * misc.c (free_dep_chain): New function: frees a struct dep list. * read.c (read_all_makefiles): Initialize the staticpattern field. (eval_makefile): Ditto. (record_files): Check for the .SECONDEXPANSION target and set second_expansion global if it's found. Use the new free_dep_chain() instead of doing it by hand. Set the staticpattern field for prereqs of static pattern targets. 2005-10-16 Paul D. Smith * main.c (main): Set CURDIR to be a file variable instead of a default, so that values of CURDIR inherited from the environment won't override the make value. 2005-09-26 Paul D. Smith * job.c (construct_command_argv_internal): If the line is empty remember to free the temporary argv strings. Fixes bug # 14527. 2005-09-16 Paul D. Smith * job.c (start_job_command): The noerror flag is a boolean (single bit); set it appropriately. Reported by Mark Eichin 2005-08-29 Paul D. Smith * function.c (func_error): On Windows, output from $(info ...) seems to come in the wrong order. Try to force it with fflush(). 2005-08-10 Boris Kolpackov * read.c (record_files): Move code that sets stem for static pattern rules out of the if (!two_colon) condition so it is also executed for two-colon rules. Fixes Savannah bug #13881. 2005-08-08 Paul D. Smith * make.h: Don't test that __STDC__ is non-0. Some compilers (Windows for example) set it to 0 to denote "ISO C + extensions". Fixes bug # 13594. 2005-08-07 Paul D. Smith * w32/pathstuff.c (getcwd_fs): Fix warning about assignment in a conditional (slightly different version of a fix from Eli). Fix a bug reported by Michael Matz : patch included. If make is running in parallel without -k and two jobs die in a row, but not too close to each other, then make will quit without waiting for the rest of the jobs to die. * main.c (die): Don't reset err before calling reap_children() the second time: we still want it to be in the error condition. * job.c (reap_children): Use a static variable, rather than err, to control whether or not the error message should be printed. 2005-08-06 Eli Zaretskii * w32/subproc/sub_proc.c: Include signal.h. (process_pipe_io, process_file_io): Pass a pointer to a local DWORD variable to GetExitCodeProcess. If the exit code is CONTROL_C_EXIT, put SIGINT into pproc->signal. * job.c [WINDOWS32]: Include windows.h. (main_thread) [WINDOWS32]: New global variable. (reap_children) [WINDOWS32]: Get the handle for the main thread and store it in main_thread. * commands.c [WINDOWS32]: Include windows.h and w32err.h. (fatal_error_signal) [WINDOWS32]: Suspend the main thread before doing anything else. When we are done, close the main thread handle and exit with status 130. 2005-07-30 Eli Zaretskii * w32/subproc/sub_proc.c (process_begin): Don't pass a NULL pointer to fprintf. * main.c (find_and_set_default_shell): If found a DOSish shell, set sh_found and the value of default_shell, and report the findings in debug mode. * job.c (construct_command_argv_internal): Check unixy_shell, not no_default_sh_exe, to decide whether to use Unixy or DOSish builtin commands. * README.W32: Update with info about the MinGW build. * build_w32.bat: Support MinGW. * w32/subproc/build.bat: Likewise. * w32/subproc/sub_proc.c (process_easy): Fix format strings for printing DWORD args. * function.c (windows32_openpipe): Fix format strings for printing DWORD args. * job.c (reap_children) [WINDOWS32]: Don't declare 'status' and 'reap_mode'. (start_job_command): Fix format string for printing the result of process_easy. (start_job_command) [WINDOWS32]: Do not define. (exec_command): Fix format string for printing HANDLE args. * main.c (handle_runtime_exceptions): Fix sprintf format strings to avoid compiler warnings. (open_tmpfile): Declare fd only if HAVE_FDOPEN is defined. (Note: some of these fixes were submitted independently by J. Grant) 2005-07-30 J. Grant * prepare_w32.bat: Copy config.h.w32 to config.h if not exist. * make_msvc_net2003.vcproj, make_msvc_net2003.sln: MSVC Project files. * Makefile.am (EXTRA_DIST): Add MSVC Project files. 2005-07-15 Paul Smith * job.c (construct_command_argv_internal) [DOS,WINDOWS32,OS/2]: If we don't have a POSIX shell, then revert to the old backslash-newline behavior (where they are stripped). Fixes bug #13665. 2005-07-08 Paul D. Smith * config.h.W32.template: Reorder to match the standard config.h, for easier comparisons. From J. Grant * maintMakefile: Remove .dep_segment before overwriting it, in case it's not writable or noclobber is set. * expand.c (variable_expand_string): Cast result of pointer arithmetic to avoid a warning. * main.c (switches): Add full-fledged final initializer. 2005-07-06 Paul D. Smith * configure.in: IRIX has _sys_siglist. Tru64 UNIX has __sys_siglist. * signame.c (strsignal): If we found _sys_siglist[] or __sys_siglist[] use those instead of sys_siglist[]. From Albert Chin 2005-07-04 Paul D. Smith * config.h-vms.template [VMS]: Latest VMS has its own glob() and globfree(); set up to use the GNU versions. From Martin Zinser 2005-07-03 Paul D. Smith From J. Grant : * README.W32.template: Update the Windows and tested MSVC versions. * NMakefile.template (CFLAGS_any): Change warning level from W3 to W4. * w32/subproc/NMakefile (CFLAGS_any): Ditto. * build_w32.bat: Ditto. * w32/subproc/build.bat: Ditto. 2005-06-28 Paul D. Smith * signame.c: HAVE_DECL_* macros are set to 0, not undef, if the declaration was checked but not present. 2005-06-27 Paul D. Smith * dir.c (find_directory): Change type of fs_serno/fs_flags/fs_len to unsigned long. Fixes Savannah bug #13550. * w32/subproc/sub_proc.c: Remove (HANDLE) casts on lvalues. (process_pipe_io): Initialize tStdin/tStdout/tStderr variables. Fixes Savannah bug #13551. 2005-06-26 Paul D. Smith * make.h: Fix bug in ANSI_STRING/strerror() handling; only define it if ANSI_STRING is not set. 2005-06-25 Paul D. Smith * read.c (eval): If no filenames are passed to any of the "include" variants, don't print an error. * doc/make.texi (Include): Document this. Fixes Savannah bug #1761. * job.c (construct_command_argv_internal): Sanitize handling of backslash/newline pairs according to POSIX: that is, keep the backslash-newline in the command script, but remove a following TAB character, if present. In the fast path, make sure that the behavior matches what the shell would do both inside and outside of quotes. In the slow path, quote the backslash and put a literal newline in the string. Fixes Savannah bug #1332. * doc/make.texi (Execution): Document the new behavior and give some examples. * NEWS: Make a note of the new behavior. * make.h [WINDOWS32]: #include . Fixes Savannah bug #13478. * remake.c (name_mtime): If the stat() of a file fails and the -L option was given and the file is a symlink, take the best mtime of the symlink we can get as the mtime of the file and don't fail. Fixes Savannah bug #13280. * read.c (find_char_unquote): Accept a new argument IGNOREVARS. If it's set, then don't stop on STOPCHARs or BLANKs if they're inside a variable reference. Make this function static as it's only used here. (eval): Call find_char_unquote() with IGNOREVARS set when we're parsing an unexpanded line looking for semicolons. Fixes Savannah bug #1454. * misc.c (remove_comments): Move this to read.c and make it static as it's only used there. Call find_char_unquote() with new arg. * make.h: Remove prototypes for find_char_unquote() and remove_comments() since they're static now. * main.c (main): If we see MAKE_RESTARTS in the environment, unset its export flag and obtain its value. When we need to re-exec, increment the value and add it into the environment. * doc/make.texi (Special Variables): Document MAKE_RESTARTS. * NEWS: Mention MAKE_RESTARTS. * main.c (always_make_set): New variable. Change the -B option to set this one instead. (main): When checking makefiles, only set always_make_flag if always_make_set is set AND the restarts flag is 0. When building normal targets, set it IFF always_make_set is set. (main): Avoid infinite recursion with -W, too: only set what-if files to NEW before we check makefiles if we've never restarted before. If we have restarted, set what-if files to NEW _after_ we check makefiles. Fixes Savannah bug #7566: 2005-06-17 Paul D. Smith * default.c: Change VMS implicit rules to use $$$$ instead of $$ in the prerequisites list. 2005-06-12 Paul D. Smith Fix Savannah bug # 1328. * configure.in: Check for atexit(). * misc.c (close_stdout): Test stdout to see if writes to it have failed. If so, be sure to exit with a non-0 error code. Based on code found in gnulib. * make.h: Prototype. * main.c (main): Install close_stdout() with atexit(). 2005-06-10 Paul D. Smith VMS build updates from Hartmut Becker : * vmsjobs.c [VMS]: Updates to compile on VMS: add some missing headers; make vmsWaitForChildren() static; extern vmsify(). * job.c [VMS]: Move vmsWaitForChildren() prototype to be global. Don't create child_execute_job() here (it's in vmsjobs.c). * makefile.vms (job.obj) [VMS]: Add vmsjobs.c as a prerequisite. 2005-06-09 Paul D. Smith * variable.c (push_new_variable_scope): File variables point directly to the global_setlist variable. So, inserting a new scope in front of that has no effect on those variables: they don't go through current_variable_set_list. If we're pushing a scope and the current scope is global, push it "the other way" so that the new setlist is in the global_setlist variable, and next points to a new setlist with the global variable set. (pop_variable_scope): Properly undo a push with the new semantics. Fixes Savannah bug #11913. 2005-05-31 Boris Kolpackov * job.c (reap_children): Don't die of the command failed but the dontcare flag is set. Fixes Savannah bug #13216. * implicit.c (pattern_search): When creating a target from an implicit rule match, lookup pattern target and set precious flag in a newly created target. Fixes Savannah bug #13218. 2005-05-13 Paul D. Smith Implement "if... else if... endif" syntax. * read.c (eval): Push all checks for conditional words ("ifeq", "else", etc.) down into the conditional_line() function. (conditional_line): Rework to allow "else if..." clause. New return value -2 for lines which are not conditionals. The ignoring flag can now also be 2, which means "already parsed a true branch". If that value is seen no other branch of this conditional can be considered true. In the else parsing if there is extra text after the else, invoke conditional_line() recursively to see if it's another conditional. If not, it's an error. If so, raise the conditional value to this level instead of creating a new conditional nesting level. Special check for "else" and "endif", which aren't allowed on the "else" line. * doc/make.texi (Conditional Syntax): Document the new syntax. 2005-05-09 Paul D. Smith * Makefile.am (EXTRA_make_SOURCES): Add vmsjobs.c (MAYBE_W32): Rework how SUBDIRS are handled so that "make dist" recurses to the w32 directory, even on non-Windows systems. Use the method suggested in the automake manual. * configure.in: Add w32/Makefile to AC_CONFIG_FILES. * maintMakefile (gnulib-url): They moved the texinfo.tex files. 2005-05-07 Paul D. Smith * main.c (die): If we're dying with a fatal error (not that a command has failed), write back any leftover tokens before we go. * job.c (set_child_handler_action_flags): If there are jobs waiting for the load to go down, set an alarm to go off in 1 second. This allows us to wake up from a potentially long-lasting read() and start a new job if the load has gone down. Turn it off after the read. (job_noop): Dummy signal handler function. (new_job): Invoke it with the new semantics. * docs/make.texi: Document secondary expansion. Various cleanups and random work. 2005-05-03 Paul D. Smith Rename .DEFAULT_TARGET to .DEFAULT_GOAL: in GNU make terminology the targets which are to ultimately be made are called "goals"; see the GNU make manual. Also, MAKECMDGOALS, etc. * filedef.h, read.c, main.c: Change .DEFAULT_TARGET to .DEFAULT_GOAL, and default_target_name to default_goal_name. * doc/make.texi (Special Variables): Document .DEFAULT_GOAL. 2005-05-02 Paul D. Smith * job.c, vmsjobs.c (vmsWaitForChildren, vms_redirect, vms_handle_apos, vmsHandleChildTerm, reEnableAst, astHandler, tryToSetupYAst, child_execute_job) [VMS]: Move VMS-specific functions to vmsjobs.c. #include it into jobs.c. Grant Taylor reports that -j# can lose jobserver tokens. I found that this happens when an exported recursive variable contains a $(shell ...) function reference: in this situation we could "forget" to write back a token. * job.c, job.h: Add variable jobserver_tokens: counts the tokens we have. It's not reliable to depend on the number of children in our linked list so keep a separate count. (new_job): Check jobserver_tokens rather than children && waiting_jobs. Increment jobserver_tokens when we get one. (free_child): If jobserver_tokens is 0, internal error. If it's >1, write a token back to the jobserver pipe (we don't write a token for the "free" job). Decrement jobserver_tokens. * main.c: Add variable master_job_slots. (main): Set it to hold the number of jobs requested if we're the master process, when using the jobserver. (die): Sanity checks: first test jobserver_tokens to make sure this process isn't holding any tokens we didn't write back. Second, if master_job_slots is set count the tokens left in the jobserver pipe and ensure it's the same as master_job_slots (- 1). 2005-04-24 Paul D. Smith Grant Taylor reports that -j# in conjunction with -l# can lose jobserver tokens, because waiting jobs are not consulted properly when checking for the "free" token. * job.c (free_child): Count waiting_jobs as having tokens. * job.c (new_job): Ditto. Plus, call start_waiting_jobs() here to handle jobs waiting for the load to drop. 2005-04-23 Paul D. Smith * main.c (main): Be careful to not core if a variable setting in the environment doesn't contain an '='. This is illegal but can happen in broken setups. Reported by Joerg Schilling . 2005-04-12 Paul D. Smith The second expansion feature causes significant slowdown. Timing a complex makefile (GCC 4.1) shows a slowdown from .25s to just read the makefile before the feature, to 11+s to do the same operations after the feature. Additionally, memory usage increased drastically. To fix this I added some intelligence that avoids the overhead of the second expansion unless it's required. * dep.h: Add a new boolean field, need_2nd_expansion. * read.c (eval): When creating the struct dep for the target, check if the name contains a "$"; if so set need_2nd_expansion to 1. (record_files): If there's a "%" in a static pattern rule, it gets converted to "$*" so set need_2nd_expansion to 1. * file.c (expand_deps): Rework to be more efficient. Only perform initialize_file_variables(), set_file_variables(), and variable_expand_for_file() if the need_2nd_expansion is set. * implicit.c (pattern_search): Default need_2nd_expansion to 0. (pattern_search): Ditto. * main.c (handle_non_switch_argument): Ditto. (main): Ditto. * read.c (read_all_makefiles): Ditto. (eval_makefile): Ditto. 2005-04-07 Paul D. Smith * main.c (main) [WINDOWS32]: Export PATH to sub-shells, not Path. * variable.c (sync_Path_environment): Ditto. Patch by Alessandro Vesely. Fixes Savannah bug #12209. * main.c (main): Define the .FEATURES variable. * NEWS: Announce .FEATURES. * doc/make.texi (Special Variables): Document .FEATURES. * remake.c (check_dep): If a file is .PHONY, update it even if it's marked intermediate. Fixes Savannah bug #12331. 2005-03-15 Boris Kolpackov * file.c (expand_deps): Factor out the second expansion and prerequisite line parsing logic from snap_deps(). * file.c (snap_deps): Use expand_deps(). Expand and parse prerequisites of the .SUFFIXES special target first. Fixes Savannah bug #12320. 2005-03-13 Paul D. Smith * main.c (main) [MSDOS]: Export SHELL in MSDOS. Requested by Eli Zaretskii. 2005-03-11 Paul D. Smith * signame.c (strsignal): HAVE_DECL_SYS_SIGLIST is 0 when not available, not undefined (from Earnie Boyd). 2005-03-10 Boris Kolpackov * implicit.c (pattern_search): Mark an intermediate target as precious if it happened to be a prerequisite of some (other) target. Fixes Savannah bug #12267. 2005-03-09 Paul D. Smith * read.c (eval_makefile): Add alloca(0). (eval_buffer): Ditto. 2005-03-09 Boris Kolpackov * main.c (main): Use o_file instead of o_default when defining the .DEFAULT_TARGET special variable. * read.c (eval): Use define_variable_global() instead of define_variable() when setting new value for the .DEFAULT_TARGET special variable. Fixes Savannah bug #12266. 2005-03-04 Boris Kolpackov * imlicit.c (pattern_search): Mark files for which an implicit rule has been found as targets. Fixes Savannah bug #12202. 2005-03-04 Paul D. Smith * AUTHORS: Update. * doc/make.texi (Automatic Variables): Document $|. 2005-03-03 Boris Kolpackov * read.c (record_files): Instead of substituting % with actual stem value in dependency list replace it with $*. This fixes stem triple expansion bug. * implicit.c (pattern_search): Copy stem to a separate buffer and make it a properly terminated string. Assign this buffer instead of STEM (which is not terminated) to f->stem. Instead of substituting % with actual stem value in dependency list replace it with $*. This fixes stem triple expansion bug. 2005-03-01 Paul D. Smith * commands.c (fatal_error_signal) [WINDOWS32]: Don't call kill() on Windows, as it takes a handle not a pid. Just exit. Fix from patch #3679, provided by Alessandro Vesely. * configure.in: Update check for sys_siglist[] from autoconf manual. * signame.c (strsignal): Update to use the new autoconf macro. 2005-03-01 Boris Kolpackov * read.c (record_files): Add a check for the list of prerequisites of a static pattern rule being empty. Fixes Savannah bug #12180. 2005-02-28 Paul D. Smith * doc/make.texi (Text Functions): Update docs to allow the end ordinal for $(wordlist ...) to be 0. * function.c (func_wordlist): Fail if the start ordinal for $(wordlist ...) is <1. Matches documentation. Resolves Savannah support request #103195. * remake.c (update_goal_chain): Fix logic for stopping in -q: previously we were stopping when !-q, exactly the opposite. This has been wrong since version 1.34, in 1994! (update_file): If we got an error don't break out to run more double-colon rules: just return immediately. Fixes Savannah bug #7144. 2005-02-27 Paul D. Smith * misc.c (end_of_token): Make argument const. * make.h: Update prototype. * function.c (abspath, func_realpath, func_abspath): Use PATH_VAR() and GET_PATH_MAX instead of PATH_MAX. * dir.c (downcase): Use PATH_VAR() instead of PATH_MAX. * read.c (record_files): Ditto. * variable.c (do_variable_definition): Ditto. * function.c (func_error): Create a new function $(info ...) that simply prints the message to stdout with no extras. (function_table_init): Add new function to the table. * NEWS: Add $(info ...) reference. * doc/make.texi (Make Control Functions): Document it. New feature: if the system supports symbolic links, and the user provides the -L/--check-symlink-time flag, then use the latest mtime between the symlink(s) and the target file. * configure.in (MAKE_SYMLINKS): Check for lstat() and readlink(). If both are available, define MAKE_SYMLINKS. * main.c: New variable: check_symlink_flag. (usage): Add a line for -L/--check-symlink-times to the help string. (switches): Add -L/--check-symlink-times command line argument. (main): If MAKE_SYMLINKS is not defined but the user specified -L, print a warning and disable it again. * make.h: Declare check_symlink_flag. * remake.c (name_mtime): If MAKE_SYMLINKS and check_symlink_flag, if the file is a symlink then check each link in the chain and choose the NEWEST mtime we find as the mtime for the file. The newest mtime might be the file itself! * NEWS: Add information about this new feature. * doc/make.texi (Options Summary): Add -L/--check-symlink-times docs. Avoid core dumps described in Savannah bug # 12124: * file.c: New variable snapped_deps remember whether we've run snap_deps(). (snap_deps): Set it. * filedef.h: Extern it. * read.c (record_files): Check snapped_deps; if it's set then we're trying to eval a new target/prerequisite relationship from within a command script, which we don't support. Fatal. 2005-02-28 Boris Kolpackov Implementation of the .DEFAULT_TARGET special variable. * read.c (eval): If necessary, update default_target_name when reading rules. * read.c (record_files): Update default_target_file if default_target_name has changed. * main.c (default_target_name): Define. * main.c (main): Enter .DEFAULT_TARGET as make variable. If default_target_name is set use default_target_file as a root target to make. * filedef.h (default_target_name): Declare. * dep.h (free_dep_chain): * misc.c (free_dep_chain): Change to operate on struct nameseq and change name to free_ns_chain. * file.c (snap_deps): Update to use free_ns_chain. 2005-02-27 Boris Kolpackov Implementation of the second expansion in explicit rules, static pattern rules and implicit rules. * read.c (eval): Refrain from chopping up rule's dependencies. Store them in a struct dep as a single dependency line. Remove the code that implements SySV-style automatic variables. * read.c (record_files): Adjust the code that handles static pattern rules to expand all percents instead of only the first one. Reverse the order in which dependencies are stored so that when the second expansion reverses them again they appear in the makefile order (with some exceptions, see comments in the code). Remove the code that implements SySV-style automatic variables. * file.c (snap_deps): Implement the second expansion and chopping of dependency lines for explicit rules. * implicit.c (struct idep): Define an auxiliary data type to hold implicit rule's dependencies after stem substitution and expansion. * implicit.c (free_idep_chain): Implement. * implicit.c (get_next_word): Implement helper function for parsing implicit rule's dependency lines into words taking into account variable expansion requests. Used in the stem splitting code. * implicit.c (pattern_search): Implement the second expansion for implicit rules. Also fixes bug #12091. * commands.h (set_file_variables): Declare. * commands.c (set_file_variables): Remove static specifier. * dep.h (free_dep_chain): Declare. * misc.c (free_dep_chain): Implement. * variable.h (variable_expand_for_file): Declare. * expand.c (variable_expand_for_file): Remove static specifier. * make.h (strip_whitespace): Declare. * function.c (strip_whitespace): Remove static specifier. 2005-02-26 Paul D. Smith * main.c (main): Check for ferror() when reading makefiles from stdin. Apparently some shells in Windows don't close pipes properly and require this check. 2005-02-24 Jonathan Grant * configure.in: Add MinGW configuration options, and extra w32 code directory. * Makefile.am: Add MinGW configuration options, and extra w32 code directory. * main.c: Determine correct program string (after last \ without .exe). * subproc/sub_proc.c: `GetExitCodeProcess' from incompatible pointer type fix x2 * w32/Makefile.am: Import to build win32 lib of sub_proc etc. * subproc/w32err.c: MSVC thread directive not applied to MinGW builds. * tests/run_make_tests.pl, tests/test_driver.pl: MSYS testing environment support. 2004-04-16 Dmitry V. Levin * function.c (func_shell): When initializing error_prefix, check that reading file name is not null. This fixes long-standing segfault in cases like "make 'a1=$(shell :)' 'a2:=$(a1)'". 2005-02-09 Paul D. Smith * maintMakefile: Update the CVS download URL to simplify them. Also, the ftp://ftp.gnu.org/GNUinfo site was removed so I'm downloading the .texi files from Savannah now. Fixed these issues reported by Markus Mauhart : * main.c (handle_non_switch_argument): Only add variables to command_variables if they're not already there: duplicate settings waste space and can be confusing to read. * w32/include/sub_proc.h: Remove WINDOWS32. It's not needed since this header is never included by non-WINDOWS32 code, and it requires to define which isn't always included first. * dir.c (read_dirstream) [MINGW]: Use proper macro names when testing MINGW32 versions. * main.c (log_working_directory): flush stdout to be sure the WD change is printed before any stderr messages show up. 2005-02-01 Paul D. Smith * maintMakefile (po_repo): Update the GNU translation site URL. 2004-12-01 Paul D. Smith * main.c (main): Change char* env_shell to struct variable shell_var. * variable.c (target_environment): Use new shell_var. 2004-11-30 Paul D. Smith * configure.in: The old way we avoided creating build.sh from build.sh.in before build.sh.in exists doesn't work anymore; we have to use raw M4 (thanks to Andreas Schwab for the help!). This also keeps automake from complaining. * Makefile.am (README): Add a dummy target so automake won't complain that this file doesn't exist when we checkout from CVS. * maintMakefile (.dep_segment): Rewrite this rule since newer versions of automake don't provide DEP_FILES. 2004-11-30 Boris Kolpackov Implementation of `realpath' and `abspath' built-in functions. * configure.in: Check for realpath. * function.c (abspath): Return an absolute file name that does not contain any `.' or `..' components, nor repeated `/'. * function.c (func_abspath): For each name call abspath. * function.c (func_realpath): For each name call realpath from libc or delegate to abspath if realpath is not available. * doc/make.texi (Functions for File Names): Document new functions. * doc/make.texi (Quick Reference): Ditto. 2004-11-28 Paul D. Smith * main.c (main) [WINDOWS32]: Remove any trailing slashes from -C arguments. Fixes bug #10252. Fix for bug #1276: Handle SHELL according to POSIX requirements. * main.c (main): Set SHELL to v_noexport by default. Remember the original environment setting of SHELL in the env_shell variable. * main.h: Export new env_shell variable. * variable.c (target_environment): If we find a v_noexport variable for SHELL, add a SHELL variable with the env_shell value. * doc/make.texi (Quick Reference): Document the POSIX behavior. * doc/make.texi (Variables/Recursion): Ditto. 2004-11-28 Paul D. Smith * main.c (find_and_set_default_shell) [WINDOWS32]: check for equality of "cmd"/"cmd.exe", not inequality. Fixes bug #11155. Patch by Alessandro Vesely. 2004-11-12 Paul D. Smith * job.c (child_execute_job) [VMS]: Don't treat "#" as a comment on the command line if it's inside a string. Patch by: Hartmut Becker 2004-10-21 Boris Kolpackov * function.c (func_lastword): New function: return last word from the list of words. * doc/make.texi: Document $(lastword ). Fix broken links in Quick Reference section. 2004-10-06 Paul D. Smith Apply patch from Alessandro Vesely, provided with bug # 9748. Fix use of tmpnam() to work with Borland C. * job.c (construct_command_argv_internal) [WINDOWS32]: Remove construction of a temporary filename, and call new function create_batch_filename(). (create_batch_filename) [WINDOWS32]: New function to create a temporary filename. 2004-10-05 Boris Kolpackov * read.c (record_target_var): Expand simple pattern-specific variable. * variable.c (initialize_file_variables): Do not expand simple pattern-specific variable. 2004-09-28 Boris Kolpackov * remake.c (update_file_1): When rebuilding makefiles inherit dontcare flag from a target that triggered update. 2004-09-27 Boris Kolpackov * variable.c (initialize_file_variables): Mark pattern-specific variable as a per-target and copy export status. 2004-09-21 Boris Kolpackov * file.c (snap_deps): Mark .PHONY prerequisites as targets. * implicit.c (pattern_search): When considering an implicit rule's prerequisite check that it is actually a target rather then just an entry in the file hashtable. 2004-09-21 Paul D. Smith * read.c (readstring): Fix some logic errors in backslash handling. (eval): Remove some unnecessary processing in buffer handling. (record_target_var): Assert that parse_variable_definition() succeeded. Reported by: Markus Mauhart . * misc.c: Removed the sindex() function. All instances of this function were trivially replaceable by the standard strstr() function, and that function will always have better (or certainly no worse) performance than the very simple-minded algorithm sindex() used. This can matter with complex makefiles. * make.h: Remove the prototype for sindex(). * function.c (subst_expand): Convert sindex() call to strstr(). This means we no longer need to track the TLEN value so remove that. (func_findstring): Convert sindex() to strstr(). * commands.c (chop_commands): Convert sindex() calls to strstr(). Suggested by: Markus Mauhart . * main.c (find_and_set_default_shell) [WINDOWS32]: Implement the idea behind Savannah Patch #3144 from david.baird@homemail.com. If SHELL is set to CMD.EXE then assume it's batch-mode and non-unixy. I wrote the code differently from the patch, though, to make it safer. This also resolves bug #9174. 2004-09-20 Paul D. Smith * expand.c (variable_expand_string): Modify to invoke patsubst_expand() instead of subst_expand(); the latter didn't handle suffix patterns correctly. * function.c (subst_expand): Remove the SUFFIX_ONLY parameter; it was used only from variable_expand_string() and is no longer used there. (func_subst): Ditto, on call to subst_expand(). (patsubst_expand): Require the percent pointers to point to the character after the %, not to the % itself. * read.c (record_files): New call criteria for patsubst_expand(). * variable.h: Remove SUFFIX_ONLY from subst_expand() prototype. This is to fix a bug reported by Markus Mauhart . 2004-09-19 Paul D. Smith * function.c (subst_expand): Fix a check in by_word: look for a previous blank if we're beyond the beginning of the string, not the beginning of the word. Bugs reported by Markus Mauhart . 2004-05-16 Paul D. Smith * remake.c (update_goal_chain): Change the argument specifying whether we're rebuilding makefiles to be a global variable, REBUILDING_MAKEFILES. (complain): Extract the code that complains about no rules to make a target into a separate function. (update_file_1): If we tried to rebuild a file during the makefile rebuild phase and it was dontcare, then no message was printed. If we then try to build the same file during the normal build, print a message this time. (remake_file): Don't complain about un-remake-able files when we're rebuilding makefiles. 2004-05-11 Paul D. Smith * job.c (construct_command_argv_internal): OS/2 patches from Andreas Buening . 2004-05-10 Paul D. Smith * remake.c (update_file): Don't walk the double-colon chain unless this is a double-colon rule. Fix suggested by Boris Kolpackov . * makefile.vms (CFLAGS): Remove glob/globfree (see readme.vms docs) * readme.vms: New section describing OpenVMS support and issues. * default.c (default_variables): Add support for IA64. * job.c (tryToSetupYAst) [VMS]: On VMS running make in batch mode without some privilege aborts make with the error %SYSTEM-F-NOPRIV. It happens when setting up a handler for pressing Ctrl+Y and the input device is no terminal. The change catches this error and just continues. Patches by Hartmut Becker 2004-04-25 Paul D. Smith * commands.c (set_file_variables): Set $< properly in the face of order-only prerequisites. Patch from Boris Kolpackov 2004-04-21 Bob Byrnes * main.c (main): Notice failures to remake makefiles. 2004-03-28 Paul D. Smith Patches for Acorn RISC OS by Peter Naulls * job.c: No default shell for RISC OS. (load_too_high): Hard-code the return to 1. (construct_command_argv_internal): No sh_chars or sh_cmds. * getloadavg.c: Don't set LOAD_AVE_TYPE on RISC OS. 2004-03-20 Paul D. Smith * variable.c (do_variable_definition): Don't append from the global set if a previous non-appending target-specific variable definition exists. Reported by Oliver Schmidt (with fix). * expand.c (reference_variable): Don't give up on variables with no value that have the target-specific append flag set: they might have a value after all. Reported by Oliver Schmidt (with fix) and also by Maksim A. Nikulin . * rule.c (count_implicit_rule_limits): Don't delete patterns which refer to absolute pathnames in directories that don't exist: some portion of the makefile could create those directories before we match the pattern. Fixes bugs #775 and #108. Fixes from Jonathan R. Grant : * main.c (main): Free makefile_mtimes if we have any. * README.W32.template: Update documentation for the current status of the MS-Windows port. * NMakefile.template (MAKE): Add "MAKE = nmake". A conflicting environment variable is sometimes already defined which causes the build to fail. * main.c (debug_signal_handler): Only define this function if SIGUSR1 is available. Fixes for OS/2 from Andreas Beuning : * configure.in [OS/2]: Relocate setting of HAVE_SA_RESTART for OS/2. * README.OS2.template: Documentation updates. * build.template: Add LIBINTL into LOADLIBES. Add $CFLAGS to the link line for safety. * maintMakefile (build.sh.in): Remove an extraneous ")". * job.c (child_execute_job): Close saved FDs. * job.c (exec_command) [OS/2]: exec_command(): If the command can't be exec'ed and if the shell is not Unix-sh, then try again with argv = { "cmd", "/c", ... }. Normally, this code is never reached for the cmd shell unless the command really doesn't exist. (construct_command_argv_internal) [OS/2]: The code for cmd handling now uses new_argv = { "cmd", "/c", "original line", NULL}. The CMD builtin commands are case insensitive so use strcasecmp(). 2004-03-19 Paul D. Smith * read.c (do_define): Re-order line counter increment so the count is accurate (we were losing one line per define). Reported by Dave Yost . 2004-03-06 Paul D. Smith * configure.in (HAVE_ANSI_COMPILER): Define if we have an ANSI/ISO compiler. * make.h: Convert uses of __STDC__ to HAVE_ANSI_COMPILER. * misc.c (message,error,fatal): Ditto. * configh.dos.template: Define HAVE_ANSI_COMPILER. * config.h.W32.template: Ditto. * config.h-vms.template: Ditto. * config.ami.template: Ditto. 2004-03-04 Paul D. Smith * README.template: Add a note about broken /bin/sh on SunOS 4.1.3_U1 & 4.1.4. Fix up Savannah links. * misc.c (message, error, fatal): Don't use "..." if we're using varargs. ansi2knr should handle this but it doesn't work: it translates "..." to va_dcl etc. but _AFTER_ the preprocessor is done. On many systems (SunOS for example) va_dcl is a #define. So, force the use of the non-"..." version on pre-ANSI compilers. * maintMakefile (sign-dist): Create some rules to help automate the new GNU ftp upload method. 2004-02-24 Paul D. Smith * config.h.W32.template: Add HAVE_STDARG_H * config.h-vms.template: Ditto. * config.ami.template: Ditto. 2004-02-23 Jonathan Grant * README.W32.template: Add a notation about -j with BATCH_MODE_ONLY. * build_w32.bat: Remove extra "+". 2004-02-23 Paul D. Smith * make.h: Create an UNUSED macro to mark unused parameters. * (many): Clean up warnings by applying UNUSED, fixing signed/unsigned incompatibilities, etc. * acinclude.m4 (AC_STRUCT_ST_MTIM_NSEC): Add quoting to silence autoconf warnings. * filedef.h: Name the command_state enumeration. * file.c (set_command_state): Use the enumeration in the function argument. * configure.in: Explicitly set SET_MAKE to empty, to disable MAKE=make even when no make already exists. Fix bug #3823. 2004-02-22 Paul D. Smith * maintMakefile: Perl script to clean up all non-CVS files. Use it on all the subdirectories for the cvs-clean target. * main.c (decode_switches): Require non-empty strings for all our string command-line options. Fixes Debian bug # 164165. * configure.in: Check for stdarg.h and varargs.h. * make.h (USE_VARIADIC): Set this if we can use variadic functions for printing messages. * misc.c: Check USE_VARIADIC instead of (obsolete) HAVE_STDVARARGS. (message): Ditto. (error): Ditto. (fatal): Ditto. A number of patches for OS/2 support from Andreas Buening : * job.c (child_handler) [OS/2]: Allow this on OS/2 but we have to disable the SIGCHLD handler. (reap_children) [OS/2]: Remove special handling of job_rfd. (set_child_handler_action_flags) [OS/2]: Use this function in OS/2. (new_job) [OS/2]: Disable the SIGCHLD handler on OS/2. * main.c (main) [OS/2]: Special handling for paths in OS/2. * configure.in [OS/2]: Force SA_RESTART for OS/2. * Makefile.am (check-regression): Use $(EXEEXT) for Windows-type systems. 2004-02-21 Paul D. Smith * w32/subproc/sub_proc.c (process_easy) [W32]: Christoph Schulz reports that if process_begin() fails we don't handle the error condition correctly in all cases. * w32/subproc/w32err.c (map_windows32_error_to_string): Make sure to have a newline on the message. * job.c (construct_command_argv_internal): Add "test" to UNIX sh_cmds[]. Fixes Savannah bug # 7606. 2004-02-04 Paul D. Smith * job.c (vms_handle_apos) [VMS]: Fix various string handling situations in VMS DCL. Fixes Savannah bug #5533. Fix provided by Hartmut Becker . 2004-01-21 Paul D. Smith * job.c (load_too_high): Implement an algorithm to control the "thundering herd" problem when using -l to control job creation via the load average. The system only recomputes the load once a second but we can start many jobs in a second. To solve this we keep track of the number of jobs started in the last second and apply a weight to try to guess what a correct load would be. The algorithm was provided by Thomas Riedl . Also fixes bug #4693. (reap_children): Decrease the job count for this second. (start_job_command): Increase the job count for this second. * read.c (conditional_line): Expand the text after ifn?def before checking to see if it's a single word. Fixes bug #7257. 2004-01-09 Paul D. Smith * file.c (print_file): Recurse to print all targets in double-colon rules. Fixes bug #4518, reported (with patch) by Andrew Chatham . 2004-01-07 Paul D. Smith * acinclude.m4: Remove make_FUNC_SETVBUF_REVERSED. * configure.in: Change make_FUNC_SETVBUF_REVERSED to AC_FUNC_SETVBUF_REVERSED. * doc/make.texi (Target-specific): Fix Savannah bug #1772. (MAKE Variable): Fix Savannah bug #4898. * job.c (construct_command_argv_internal): Add "!" to the list of shell escape chars. POSIX sh allows it to appear before a command, to negate the exit code. Fixes bug #6404. * implicit.c (pattern_search): When matching an implicit rule, remember which dependencies have the ignore_mtime flag set. Original fix provided in Savannah patch #2349, by Benoit Poulot-Cazajous . 2003-11-22 Paul D. Smith * README.W32.template (Outputs): Clarification on -j with BATCH_MODE_ONLY_SEHLL suggested by Jonathan R. Grant . 2003-11-02 Paul D. Smith * function.c (func_if): Strip all the trailing whitespace from the condition, then don't expand it. Fixed bug # 5798. * expand.c (recursively_expand_for_file): If we're expanding a variable with no file context, then use the variable's context. Fixes bug # 6195. 2003-10-21 Paul D. Smith * main.c (log_working_directory): Add newlines to printf()s. * README.cvs: Add a note to ignore warnings during autoreconf. * maintMakefile (po_repo): Set a new URL for PO file updates. (get-config/config.guess get-config/config.sub): Get these files from the Savannah config project instead of ftp.gnu.org. 2003-10-05 Paul Eggert * main.c (main): Avoid potential subscript error if environ has short strings. 2003-08-22 Paul D. Smith * misc.c (xmalloc, xrealloc): Add one to 0 sizes, to cater to systems which don't yet implement the C89 standard :-/. 2003-07-18 Paul D. Smith * dir.c (directory_contents_hash_1, directory_contents_hash_1) [WINDOWS32]: Initialize hash. 2003-06-19 Earnie Boyd * dir.c (read_dirstream): Provide a workaround for broken versions of the MinGW dirent structure. 2003-05-30 Earnie Boyd * w32/include/dirent.h: Add __MINGW32__ filter. 2003-05-30 Earnie Boyd * make.h: Add global declaration of *make_host. * main.c (print_usage): Remove local declaration of *make_host. (print_version): Display "This program built for ..." after Copyright notice. 2003-05-30 Earnie Boyd * doc/make.texi: Change "ifinfo" to "ifnottex" as suggested by the execution of "makeinfo --html make.texi". 2003-04-30 Paul D. Smith * build.template: Make some changes to maybe allow this script to work on DOS/Windows/OS2 systems. Suggested by Andreas Buening. * README.OS2.template: New file for OS/2 support. Original contributed by Andreas Buening. * configure.in: Invoke new pds_AC_DOS_PATHS macro to test for DOS-style paths. 2003-04-19 Paul D. Smith Fix bug #1405: allow a target to match multiple pattern-specific variables. * rule.c (create_pattern_var, lookup_pattern_var): Move these to variable.c, where they've always belonged. * rule.h: Move the prototypes and struct pattern_var as well. * variable.c (initialize_file_variables): Invoke lookup_pattern_var() in a loop, until no more matches are found. If a match is found, create a new variable set for the target's pattern variables. Then merge the contents of each matching pattern variable set into the target's pattern variable set. (lookup_pattern_var): Change this function to be usable in a loop. It takes a starting position: if NULL, start at the beginning; if non-NULL, start with the pattern variable after that position, and return the next matching pattern. (create_pattern_var): Create a unique instance of pattern-specific variables for every definition in the makefile. Don't combine the same pattern together. This allows us to process the variable handling properly even when the same pattern is used multiple times. (parse_variable_definition): New function: break out the parsing of a variable definition line from try_variable_definition. (try_variable_definition): Call parse_variable_definition to parse. (print_variable_data_base): Print out pattern-specific variables. * variable.h (struct variable): Remember when a variable is conditional. Also remember its flavor. (struct pattern_var): Instead of keeping a variable set, we just keep a single variable for each pattern. * read.c (record_target_var): Each pattern variable contains only a single variable, not a set, so create it properly. * doc/make.texi (Pattern-specific): Document the new behavior. 2003-04-17 Paul D. Smith * dir.c (file_exists_p) [VMS]: Patch provided with Bug #3018 by Jean-Pierre Portier . I don't understand the file/directory naming rules for VMS so I can't tell whether this is correct or not. 2003-04-09 Paul D. Smith * configure.in (HAVE_DOS_PATHS): Define this on systems that need DOS-style pathnames: backslash separators and drive specifiers. 2003-03-28 Paul D. Smith * file.c (snap_deps): If .SECONDARY with no targets is given, set the intermediate flag on all targets. Fixes bug #2515. 2003-03-24 Paul D. Smith * configure.in, Makefile.am, glob/Makefile.am, doc/Makefile.am: Upgrade to autoconf 2.57 and automake 1.7.3. * job.c: More OS/2 changes from Andreas Buening. * file.c (print_file): Fix variable initialization. Fixes bug #2892. * remake.c (notice_finished_file): * make.h (ENULLLOOP): Set errno = 0 before invoking the command; some calls (like readdir()) return NULL in valid situations without resetting errno. Fixes bug #2846. 2003-02-25 Paul D. Smith Port to OS/2 (__EMX__) by Andreas Buening . * job.c (_is_unixy_shell) [OS/2]: New function. Set default shell to /bin/sh. (reap_children): Close the job_rfd pipe here since we don't use a SIGCHLD handler. (set_child_handler_action_flags): define this to empty on OS/2. (start_job_command): Close the jobserver pipe and use child_execute_job() instead of fork/exec. (child_execute_job): Rewrite to handle stdin/stdout FDs and spawn rather than exec'ing, then reconfigure stdin/stdout. (exec_command): Rewrite to use spawn instead of exec. Return the PID of the child. * main.c (main) [OS/2]: Call initialize_main(). Handle argv[0] as in DOS. Handle the TEMP environment variable as in DOS. Don't use a SIGCHLD handler on OS/2. Choose a shell as in DOS. Don't use -j in DOS mode. Use child_execute_job() instead of exec_command(). * function.c (func_shell) [OS/2]: Can't use fork/exec on OS/2: use spawn() instead. * job.h [OS/2]: Move CLOSE_ON_EXEC here from job.c. Add prototypes that return values. * remake.c (f_mtime) [OS/2]: Handle FAT timestamp offsets for OS/2. * read.c (readline) [OS/2]: Don't handle CRLF specially on OS/2. * default.c (default_suffixes) [OS/2]: Set proper default suffixes for OS/2. * vpath.c (construct_vpath_list) [OS/2]: Handle OS/2 paths like DOS paths. 2003-02-24 Paul D. Smith * default.c [VMS]: New default rules for .cxx -> .obj compiles. * job.c (child_execute_job) [VMS]: New code for handling spawn(). (child_execute_job) [VMS]: Handle error status properly. Patches provided by Hartmut Becker . * function.c (func_shell): Use EINTRLOOP() while reading from the subshell pipe (Fixes bug #2502). * job.c (free_child): Use EINTRLOOP() while writing tokens to the jobserver pipe. * main.c (main): Ditto. 2003-01-30 Paul D. Smith * read.c (eval): eval() was not fully reentrant, because the collapsed buffer was static. Change it to be an automatic variable so that eval() can be invoked recursively. Fixes bug # 2238. (eval): Apply patch # 1022: fix memory reference error on long target-specific variable lines. Patch provided by Steve Brown . * function.c (check_numeric): Combine the is_numeric() function into this function, since it's only called from one place. Constify this function. Have it print the incorrect string in the error message. Fixes bug #2407. (strip_whitespace): Constify. (func_if): Constify. * expand.c (expand_argument): Constify. 2003-01-29 Paul D. Smith Fix bug # 2169, also reported by other people on various systems. * make.h: Some systems, such as Solaris and PTX, do not fully implement POSIX-compliant SA_RESTART functionality; important system calls like stat() and readdir() can still fail with EINTR even if SA_RESTART has been set on the signal handler. So, introduce macros EINTRLOOP() and ENULLLOOP() which can loop on EINTR for system calls which return -1 or 0 (NULL), respectively, on error. Also, remove the old atomic_stat()/atomic_readdir() and HAVE_BROKEN_RESTART handling. * configure.in: Remove setting of HAVE_BROKEN_RESTART. * arscan.c (ar_member_touch): Use EINTRLOOP() to wrap fstat(). * remake.c (touch_file): Ditto. * commands.c (delete_target): Use EINTRLOOP() to wrap stat(). * read.c (construct_include_path): Ditto. * remake.c (name_mtime): Ditto. * vpath.c (selective_vpath_search): Ditto. * dir.c (find_directory): Ditto. (local_stat): Ditto. (find_directory): Use ENULLLOOP() to wrap opendir(). (dir_contents_file_exists_p): Use ENULLLOOP() to wrap readdir(). * misc.c: Remove HAVE_BROKEN_RESTART, atomic_stat(), and atomic_readdir() handling. 2003-01-22 Paul D. Smith * function.c (func_call): Fix Bug #1744. If we're inside a recursive invocation of $(call ...), mask any of the outer invocation's arguments that aren't used by this one, so that this invocation doesn't "inherit" them accidentally. 2002-12-05 Paul D. Smith * function.c (subst_expand): Valery Khamenia reported a pathological performance hit when doing substitutions on very large values with lots of words: turns out we were invoking strlen() a ridiculous number of times. Instead of having each call to sindex() call strlen() again, keep track of how much of the text we've seen and pass the length to sindex(). 2002-11-19 Paul D. Smith * README.cvs, configure.in: Upgrade to require autoconf 2.56. 2002-11-16 Paul D. Smith * NMakefile.template (OBJS): Add hash.c object file. * SMakefile.template (srcs): Ditto. * Makefile.ami (objs): Ditto. * build_w32.bat: Ditto. * Makefile.DOS.template: Remove extra dependencies. 2002-10-25 Paul D. Smith * expand.c (install_variable_buffer): New function. Install a new variable_buffer context and return the previous one. (restore_variable_buffer): New function. Free the current variable_buffer context and put a previously saved one back. * variable.h: Prototypes for {install,restore}_variable_buffer. * function.c (func_eval): Push a new variable_buffer context before we eval, then restore the old one when we're done. Fixes Bug #1517. * read.c (install_conditionals): New function. Install a new conditional context and return the previous one. (restore_conditionals): New function. Free the current conditional context and put a previously saved one back. (eval): Use the {install,restore}_conditionals for "include" handling. (eval_buffer): Use {install,restore}_conditionals to preserve the present conditional state before we evaluate the buffer. Fixes Bug #1516. * doc/make.texi (Quick Reference): Add references to $(eval ...) and $(value ...). (Recursion): Add a variable index entry for CURDIR. * README.cvs: Update to appropriate versions. * Makefile.am (nodist_loadavg_SOURCES): automake gurus point out I don't need to copy loadavg.c: automake is smart enough to create it for me. Still have a bug in automake related to ansi2knr tho. 2002-10-14 Paul D. Smith * remake.c (notice_finished_file): Only touch targets if they have at least one command (as per POSIX). Resolve Bug #1418. * *.c: Convert to using ANSI C-style function definitions. * Makefile.am: Enable the ansi2knr feature of automake. * configure.in: ditto. 2002-10-13 Paul D. Smith * commands.c (set_file_variables): Bug #1379: Don't use alloca() for automatic variable values like $^, etc. In the case of very large lists of prerequisites this causes problems. Instead reuse a static buffer (resizeable) for each variable. * read.c (eval): Fix Bug #1391: allow "export" keyword in target-specific variable definitions. Check for it and set an "exported" flag. (record_target_var): Set the export field to v_export if the "exported" flag is set. * doc/make.texi (Target-specific): Document the ability to use "export". * doc/make.texi: Change the name of the section on automatic variables from "Automatic" to "Automatic Variables". Added text clarifying the scope of automatic variables. 2002-10-04 Paul D. Smith * read.c (eval): Allow SysV $$@ variables to use {} braces as well as () braces. (record_files): Ditto. * expand.c (variable_expand_string): In $(A:x=y) expansion limit the search for the '=' to only within the enclosing parens. 2002-10-03 Paul D. Smith Version 3.80 released. * dir.c: Change hash functions to use K&R function definition style. * function.c: Ditto. * read.c: Ditto. * variable.c: Ditto. Update to automake 1.7. * Makefile.am (AUTOMAKE_OPTIONS): Update to require 1.7. (pdf): Remove this target as automake now provides one. * configure.in: Change AM_CONFIG_HEADER to AC_CONFIG_HEADERS. 2002-09-30 Martin P.J. Zinser * makefile.com: Updates for GNU make 3.80. * makefile.vms: Ditto. 2002-09-23 Paul D. Smith * read.c (enum make_word_type): Remove w_comment. (get_next_mword): Don't treat comment characters as special; where this function is used we will never see a comment (it's stripped before we get here) and treating comments specially means that targets like "foo\#bar" aren't handled properly. 2002-09-18 Paul D. Smith * doc/make.texi (Bugs): Update with some info on Savannah, etc. * read.c (eval): Expansion of arguments to export/unexport was ignoring all arguments after the first one. Change the algorithm to expand the whole line once, then parse the results. 2002-09-17 Paul D. Smith Fix Bug #940 (plus another bug I found while looking at this): * read.c (record_target_var): enter_file() will add a new entry if it's a double-colon target: we don't want to do that in this situation. Invoke lookup_file() and only enter_file() if it does not already exist. If the file we get back is a double-colon then add this variable to the "root" double-colon target. * variable.c (initialize_file_variables): If this file is a double-colon target but is not the "root" target, then initialize the root and make the root's variable list the parent of our variable list. 2002-09-13 Paul D. Smith * doc/make.texi (MAKE Variable): Add some indexing for "+". * hash.c (round_up_2): Get rid of a warning. 2002-09-12 Paul D. Smith * Makefile.am (loadavg_SOURCES, loadavg.c): Tiptoe around automake so it doesn't complain about getloadavg.c. * commands.c (set_file_variables): Make sure we always alloca() at least 1 character for the value of $? (for '\0'). 2002-09-11 Paul D. Smith * hash.h (STRING_COMPARE, ISTRING_COMPARE, STRING_N_COMPARE): Fix macro to use RESULT instead of the incorrect _RESULT_. * make.h (HAVE_BROKEN_RESTART): Add prototypes for atomic_stat() and atomic_readdir(). We need to #include dirent.h to get this to work. * misc.c (atomic_readdir): Fix typos. 2002-09-10 Paul D. Smith * read.c (eval): Expand variable lists given to export and unexport, so that "export $(LIST_OF_VARIABLES)" (etc.) works. (conditional_line): Ditto for "ifdef". Fixes bug #103. * doc/make.texi (Variables/Recursion): Document this. (Conditional Syntax): And here. 2002-09-09 Paul D. Smith * configure.in: Check for memmove(). 2002-09-07 Paul D. Smith * configure.in (HAVE_BROKEN_RESTART): Define this on PTX systems; Michael Sterrett reports that while it has SA_RESTART, it does not work properly. * misc.c (atomic_stat): If HAVE_BROKEN_RESTART, create a function that invokes stat() and loops to do it again if it returns EINTR. (atomic_readdir): Ditto, with readdir(). * make.h (stat, readdir): If HAVE_BROKEN_RESTART, alias stat() and readdir() to atomic_stat() and atomic_readdir(). 2002-09-04 Paul D. Smith * implicit.c (pattern_search): Daniel reports that GNU make sometimes doesn't recognize that targets can be made, when directories can be created as prerequisites. He reports that changing the order of predicates in the DEP->changed flag test so that lookup_file() is always performed, solves this problem. 2002-08-08 Paul D. Smith * configure.in: Require a newer version of gettext. * misc.c (perror_with_name): Translate the format string (for right-to-left language support). (pfatal_with_name): Ditto. * main.c: Create a static array of strings to store the usage text. This is done to facilitate translations. (struct command_switch): Remove argdesc and description fields. (switches): Remove values for obsolete fields. (print_usage): Print each element of the usage array. * hash.c: Change function definitions to be K&R style. 2002-08-02 Paul D. Smith * NEWS: Remove the mention of .TARGETS; we aren't going to publish this one because it's too hard to get right. We'll look at it for a future release. * main.c (main): Don't create the .TARGETS variable. * variable.c (handle_special_var): Don't handle .TARGETS. 2002-08-01 Paul D. Smith * main.c (switches): Add a new option, -B (--always-make). If specified, make will rebuild all targets that it encounters even if they don't appear to be out of date. (always_make_flag): New flag. * make.h: Extern always_make_flag. * remake.c (update_file_1): Check always_make_flag; if it's set we will always rebuild any target we can, even if none of its prerequisites are newer. * NEWS: Mention it. * doc/make.texi (Shell Function): Make it clear that make variables marked as "export" are not passed to instances of the shell function. Add new introspection variable .VARIABLES and .TARGETS. * variable.c (handle_special_var): New function. If the variable reference passed in is "special" (.VARIABLES or .TARGETS), calculate the new value if necessary. .VARIABLES is handled here: walk through the hash of defined variables and construct a value which is a list of the names. .TARGETS is handled by build_target_list(). (lookup_variable): Invoke handle_special_var(). * file.c (build_target_list): Walk through the hask of known files and construct a list of the names of all the ones marked as targets. * main.c (main): Initialize them to empty (and as simple variables). * doc/make.texi (Special Variables): Document them. * NEWS: Mention them. * variable.h (struct variable): Add a new flag "exportable" which is true if the variable name is valid for export. * variable.c (define_variable_in_set): Set "exportable" when a new variable is defined. (target_environment): Use the "exportable" flag instead of re-checking the name here... an efficiency improvement. 2002-07-31 Paul D. Smith * config.h-vms.template: Updates to build on VMS. Thanks to Brian_Benning@aksteel.com for helping verify the build. * makefile.com: Build the new hash.c file. * hash.h: Use strcpmi(), not stricmp(), in the HAVE_CASE_INSENSITIVE_FS case. 2002-07-30 Paul D. Smith * hash.h (ISTRING_COMPARE, return_ISTRING_COMPARE): Add missing backslashes to the HAVE_CASE_INSENSITIVE_FS case. Reported by . 2002-07-10 Paul D. Smith * variable.c (pop_variable_scope): Remove variable made unused by new hash infrastructure. * read.c (dep_hash_cmp): Rewrite this to handle ignore_mtime comparisons as well as name comparisons. * variable.h: Add a prototype for new hash_init_function_table(). * file.c (lookup_file): Remove variables made unused by new hash infrastructure. * dir.c (directory_contents_hash_2): Missing return of hash value. (dir_contents_file_exists_p): Remove variables made unused by new hash infrastructure. Installed Greg McGary's integration of the hash functions from the GNU id-utils package: 2002-07-10 Greg McGary * scripts/functions/filter-out: Add literals to to the pattern space in order to add complexity, and trigger use of an internal hash table. Fix documentation strings. * scripts/targets/INTERMEDIATE: Reverse order of files passed to expected `rm' command. 2002-07-10 Greg McGary * Makefile.am (SRCS): Add hash.c (noinst_HEADERS): Add hash.h * hash.c: New file, taken from id-utils. * hash.h: New file, taken from id-utils. * make.h (HASH, HASHI): Remove macros. (find_char_unquote): Change arglist in decl. (hash_init_directories): New function decl. * variable.h (hash.h): New #include. (MAKELEVEL_NAME, MAKELEVEL_LENGTH): New constants. * filedef.h (hash.h): New #include. (struct file) [next]: Remove member. (file_hash_enter): Remove function decl. (init_hash_files): New function decl. * ar.c (ar_name): Delay call to strlen until needed. * main.c (initialize_global_hash_tables): New function. (main): Call it. Use MAKELEVEL_NAME & MAKELEVEL_LENGTH. * misc.c (remove_comments): Pass char constants to find_char_unquote. * remake.c (notice_finished_file): Update last_mtime on `prev' chain. * dir.c (hash.h): New #include. (struct directory_contents) [next, files]: Remove members. [ctime]: Add member for VMS. [dirfiles]: Add hash-table member. (directory_contents_hash_1, directory_contents_hash_2, directory_contents_hash_cmp): New functions. (directories_contents): Change type to `struct hash_table'. (struct directory) [next]: Remove member. (directory_hash_1, directory_hash_2, directory_hash_cmp): New funcs. (directory): Change type to `struct hash_table'. (struct dirfile) [next]: Remove member. [length]: Add member. [impossible]: widen type to fill alignment gap. (dirfile_hash_1, dirfile_hash_2, dirfile_hash_cmp): New functions. (find_directory): Use new hash table package. (dir_contents_file_exists_p): Likewise. (file_impossible): Likewise. (file_impossible_p): Likewise. (print_dir_data_base): Likewise. (open_dirstream): Likewise. (read_dirstream): Likewise. (hash_init_directories): New function. * file.c (hash.h): New #include. (file_hash_1, file_hash_2, file_hash_cmp): New functions. (files): Change type to `struct hash_table'. (lookup_file): Use new hash table package. (enter_file): Likewise. (remove_intermediates): Likewise. (snap_deps): Likewise. (print_file_data_base): Likewise. * function.c (function_table_entry_hash_1, function_table_entry_hash_2, function_table_entry_hash_cmp): New functions. (lookup_function): Remove `table' argument. Use new hash table package. (struct a_word) [chain, length]: New members. (a_word_hash_1, a_word_hash_2, a_word_hash_cmp): New functions. (struct a_pattern): New struct. (func_filter_filterout): Pass through patterns noting boundaries and '%', if present. Note a_word length. Use a hash table if arglists are large enough to justify cost. (function_table_init): Renamed from function_table. (function_table): Declare as `struct hash_table'. (FUNCTION_TABLE_ENTRIES): New constant. (hash_init_function_table): New function. * read.c (hash.h): New #include. (read_makefile): Pass char constants to find_char_unquote. (dep_hash_1, dep_hash_2, dep_hash_cmp): New functions. (uniquize_deps): Use hash table to efficiently identify duplicates. (find_char_unquote): Accept two char-constant stop chars, rather than a string constant, avoiding zillions of calls to strchr. Tighten inner search loops to test only for desired delimiters. * variable.c (variable_hash_1, variable_hash_2, variable_hash_cmp): New functions. (variable_table): Declare as `struct hash_table'. (global_variable_set): Remove initialization. (init_hash_global_variable_set): New function. (define_variable_in_set): Use new hash table package. (lookup_variable): Likewise. (lookup_variable_in_set): Likewise. (initialize_file_variables): Likewise. (pop_variable_scope): Likewise. (create_new_variable_set): Likewise. (merge_variable_sets): Likewise. (define_automatic_variables): Likewise. (target_environment): Likewise. (print_variable_set): Likewise. 2002-07-10 Paul D. Smith Implement the SysV make syntax $$@, $$(@D), and $$(@F) in the prerequisite list. A real SysV make will expand the entire prerequisites list _twice_: we don't do that as it's a big backward-compatibility problem. We only replace those specific variables. * read.c (record_files): Replace any $@, $(@D), and $(@F) variable references left in the list of prerequisites. Check for .POSIX as we record targets, so we can disable non-POSIX behavior while reading makefiles as well as running them. (eval): Check the prerequisite list to see if we have anything that looks like a SysV prerequisite variable reference. 2002-07-09 Paul D. Smith * doc/make.texi (Prerequisite Types): Add a new section describing order-only prerequisites. * read.c (uniquize_deps): If we have the same file as both a normal and order-only prereq, get rid of the order-only prereq, since the normal one supersedes it. 2002-07-08 Paul D. Smith * AUTHORS: Added Greg McGary to the AUTHORS file. * NEWS: Blurbed order-only prerequisites. * file.c (print_file): Show order-only deps properly when printing the database. * maintMakefile: Add "update" targets for wget'ing the latest versions of various external files. Taken from Makefile.maint in autoconf, etc. * dosbuild.bat: Somehow we got _double_ ^M's. Remove them. Reported by Eli Zaretskii . 2002-07-07 Paul D. Smith * po/*.po: Remove. We'll use wget to retrieve them at release time. * variable.c (do_variable_definition) [W32]: On W32 using cmd rather than a shell you get an exception. Make sure we look up the variable. Patch provided by Eli Zaretskii . * remake.c (notice_finished_file): Fix handling of -t flag. Patch provided by Henning Makholm . * implicit.c (pattern_search): Some systems apparently run short of stack space, and using alloca() in this function caused an overrun. I modified it to use xmalloc() on the two variables which seemed like they might get large. Fixes Bug #476. * main.c (print_version): Update copyright notice to conform with GNU standards. (print_usage): Update help output. * function.c (func_eval): Create a new make function, $(eval ...). Expand the arguments, put them into a buffer, then invoke eval_buffer() on the resulting string. (func_quote): Create a new function, $(quote VARNAME). Inserts the value of the variable VARNAME without expanding it any further. * read.c (struct ebuffer): Change the linebuffer structure to an "eval buffer", which can be either a file or a buffer. (eval_makefile): Move the code in the old read_makefile() which located a makefile into here: create a struct ebuffer with that information. Have it invoke the new function eval() with that ebuffer. (eval_buffer): Create a new function that creates a struct ebuffer that holds a string buffer instead of a file. Have it invoke eval() with that ebuffer. (eval): New function that contains the guts of the old read_makefile() function: this function parses makefiles. Obtains data to parse from the provided ebuffer. Some modifications to make the flow of the function cleaner and clearer. Still could use some work here... (do_define): Takes a struct ebuffer instead of a FILE*. Read the contents of the define/endef variable from the ebuffer. (readstring): Read the next line from a string-style ebuffer. (readline): Read the next line from an ebuffer. If it's a string ebuffer, invoke readstring(). If it's a FILE* ebuffer, read it from the file. * dep.h (eval_buffer): Prototype eval_buffer(); * variable.c (do_variable_definition): Make sure that all non-target-specific variables are registered in the global set. If we're invoked from an $(eval ...) we might be inside a $(call ...) or other function which has pushed a variable scope; we still want to define our variables from evaluated makefile code in the global scope. 2002-07-03 Greg McGary * dep.h (struct dep) [ignore_mtime]: New member. [changed]: convert to a bitfield. * implicit.c (pattern_search): Zero ignore_mtime. * main.c (main, handle_non_switch_argument): Likewise. * rule.c (convert_suffix_rule): Likewise. * read.c (read_all_makefiles, read_makefile, multi_glob): Likewise. (read_makefile): Parse '|' in prerequisite list. (uniquize_deps): Consider ignore_mtime when comparing deps. * remake.c (update_file_1, check_dep): Don't force remake for dependencies that have d->ignore_mtime. * commands.c (FILE_LIST_SEPARATOR): New constant. (set_file_variables): Don't include a prerequisite in $+, $^ or $? if d->ignore_mtime. Define $|. 2002-06-18 Paul D. Smith * make.texinfo: Updates for next revision. New date/rev/etc. Recreate all Info menus. Change license on the manual to the GNU Free Documentation License. A number of typos. (Variables Simplify): Don't use "-" before it's defined. (Automatic Prerequisites): Rewrite the target example to work properly if the compile fails. Remove incorrect comments about how "set -e" behaves. (Text Functions): Move the "word", "wordlist", "words", and "firstword" functions here, from "File Name Functions". * make-stds.texi: Update from latest GNU version. * fdl.texi: (created) Import the latest GNU version. 2002-06-06 Paul D. Smith * variable.c (do_variable_definition): New function: extract the part of try_variable_definition() that actually sets the value into a separate function. (try_variable_definition): Call do_variable_definition() after parsing the variable definition string. (define_variable_in_set): Make the name argument const. * variable.h (enum variable_flavor): Make public. (do_variable_definition): Create prototype. * read.c (read_all_makefiles): Create a new built-in variable, MAKEFILE_LIST. (read_makefile): Add each makefile read in to this variable value. 2002-05-18 Eli Zaretskii * Makefile.DOS.template: Tweak according to changes in the distribution. Add back the dependencies of *.o files. * configh.dos.template: Synchronize with config.h.in. 2002-05-09 Paul D. Smith * file.c (file_timestamp_now): Use K&R function declaration. * getloadavg.c (getloadavg): Merge setlocale() fix from sh-utils getloadavg.c. Autoconf thinks QNX is SVR4-like, but it isn't, so #undef it. Remove predefined setup of NLIST_STRUCT. Decide whether to include nlist.h based on HAVE_NLIST_H. Change obsolete NLIST_NAME_UNION to new HAVE_STRUCT_NLIST_N_UN_N_NAME. * configure.in (NLIST_STRUCT): Define this if we have nlist.h and nlist.n_name is a pointer rather than an array. * acinclude.m4 (make_FUNC_SETVBUF_REVERSED): Grab the latest version of AC_FUNC_SETVBUF_REVERSED from autoconf CVS. * configure.in: Use it instead of the old version. * main.c (main): Prefer setvbuf() to setlinebuf(). 2002-05-08 Paul D. Smith * Makefile.am (make_LDADD): Add GETLOADAVG_LIBS. (loadavg_LDADD): Ditto. 2002-04-29 Paul D. Smith * expand.c (recursively_expand_for_file): Rename recursively_expand() to recursively_expand_for_file() and provide an extra argument, struct file. If the argument is provided, set the variable scope to that of the file before expanding. * variable.h (recursively_expand): Make this a macro that invokes recursively_expand_for_file() with a NULL file pointer. * variable.c (target_environment): Call the renamed function and provide the current file context. Fixes Debian bug #144306. 2002-04-28 Paul D. Smith Allow $(call ...) user-defined variables to be self-referencing without throwing an error. Allows implementation of transitive closures, among other possibly useful things. Requested by: Philip Guenther * variable.h (struct variable): Add a new field: exp_count, and new macros to hold its size and maximum value. (warn_undefined): Make this a macro. * variable.c (define_variable_in_set): Initialize it. * expand.c (recursively_expand): If we detect recursive expansion of a variable, check the exp_count field. If it's greater than 0 allow the recursion and decrement the count. (warn_undefined): Remove this (now a macro in variable.h). * function.c (func_call): Before we expand the user-defined function, modify its exp_count field to contain the maximum number of recursive calls we'll allow. After the call, reset it to 0. 2002-04-21 Paul D. Smith Modified to use latest autoconf (2.53), automake (1.6.1), and gettext (0.11.1). We're using gettext's new "external" support, to avoid including libintl source with GNU make. * README.cvs: New file. Explain how to build GNU make from CVS. * configure.in: Modify checking for the system glob library. Use AC_EGREP_CPP instead of AC_TRY_CPP. Remove the setting of GLOBDIR (we will always put "glob" in SUBDIRS, so automake etc. will manage it correctly). Set an automake conditional USE_LOCAL_GLOB to decide whether to compile the glob library. * getloadavg.c (main): Include make.h in the "TEST" program to avoid warnings. * Makefile.am: Remove special rules for loadavg. Replace them with Automake capabilities for building extra programs. * signame.c: This file does nothing if the system provide strsignal(). If not, it implements strsignal(). If the system doesn't define sys_siglist, then we make our own; otherwise we use the system version. * signame.h: Removed. * main.c (main): No need to invoke signame_init(). Update copyright. * ABOUT-NLS: Removed. * gettext.c: Removed. * gettext.h: Get a simplified copy from the gettext package. * po/*: Created. * i18n/*.po: Moved to po/. * i18n/: Removed. * config/*: Created. Contains package configuration helper files. * config.guess, config.sub: Moved to config directory. * configure.in (AC_CONFIG_FILES): Add po/Makefile.in, config/Makefile. Rework to use new-style autoconf features. Use the "external" mode for gettext. Make the build.sh config file conditional on whether build.sh.in exists, to avoid autoconf errors. * acinclude.m4: Removed almost all macros as being obsolete. Rewrote remaining macros to use AC_DEFINE. * acconfig.h: Removed. * Makefile.am (EXTRA_DIST): Add config/config.rpath. Use a conditional to handle customs support. Remove special handling for i18n features. 2002-04-20 Paul D. Smith * function.c (func_call): Don't mark the argument variables $1, etc. as recursive. They've already been fully expanded so there's no need to do it again, and doing so strips escaped $'s. Reported by Sebastian Glita . * remake.c (notice_finished_file): Walk through double-colon entries via the prev field, not the next field! Reported by Greg McGary . * main.c (main): If the user specifies -q and asks for a specific target which is a makefile, we got an assert. In that case it turns out we should continue normally instead. * i18n/de.po, i18n/fr.po: Installed an updated translation. * i18n/he.po: Installed a new translation. 2002-01-07 Paul D. Smith * i18n/es.po, i18n/ru.po: Installed an updated translation. 2001-12-04 Paul D. Smith * i18n/ja.po: Installed an updated translation. 2001-09-06 Paul Eggert * configure.in (AC_CHECK_HEADERS): Add sys/resource.h. (AC_CHECK_FUNCS): Add getrlimit, setrlimit. * main.c: Include if it, getrlimit, and setrlimit are available. (main): Get rid of any avoidable limit on stack size. 2001-09-04 Paul D. Smith * i18n/da.po: Installed an updated translation. 2001-08-03 Paul D. Smith * i18n/fr.po: Installed an updated translation. Resolves Debian bug #106720. 2001-06-13 Paul D. Smith * i18n/da.po, configure.in (ALL_LINGUAS): Installed a new translation. 2001-06-11 Paul D. Smith * i18n/ko.po: Installed a new translation. 2001-05-06 Paul D. Smith Modify the EINTR handling. * job.c (new_job): Reorganize the jobserver algorithm. Reorder the way in which we manage the file descriptor/signal handler race trap to be more efficient. 2001-05-06 Paul Eggert Restart almost all system calls that are interrupted, instead of worrying about EINTR. The lone exception is the read() for job tokens. * configure.in (HAVE_SA_RESTART): New macro. (MAKE_JOBSERVER): Define to 1 only if HAVE_SA_RESTART. * main.c (main): Use SA_RESTART instead of the old, nonstandard SA_INTERRUPT. * configure.in (AC_CHECK_FUNCS): Add bsd_signal. * main.c (bsd_signal): New function or macro, if the implementation doesn't supply it. (The bsd_signal function will be in POSIX 1003.1-200x.) (HANDLESIG): Remove. (main, FATAL_SIG): Use bsd_signal instead of signal or HANDLESIG. * make.h (EINTR_SET): Remove. (SA_RESTART): New macro. * arscan.c (ar_member_touch): Don't worry about EINTR. * function.c (func_shell): Likewise. * job.c (reap_children, free_child, new_job): Likewise. * main.c (main): Likewise. * remake.c (touch_file, name_mtime): Likewise. * arscan.c (ar_member_touch): Fix bug uncovered by EINTR removal; if fstat failed with errno!=EINTR, the error was ignored. * job.c (set_child_handler_action_flags): New function. (new_job): Use it to temporarily clear the SIGCHLD action flags while reading the token. 2001-05-02 Paul D. Smith * job.c (start_job_command): Don't add define/endef per-line flags to the top-level flags setting. 2001-04-03 Paul D. Smith * arscan.c (VMS_get_member_info,ar_scan) [VMS]: VMS sets the low bit on error, so check for odd return values, not non-0 return values. (VMS_get_member_info): Calculate the timezone differences correctly. Reported by John Fowler . 2001-03-14 Paul D. Smith * variable.c (lookup_variable) [VMS]: Null-terminate the variable value before invoking define_variable(). Reported by John Fowler . 2001-02-07 Paul D. Smith * read.c (record_target_var): If we reset the variable due to a command-line variable setting overriding it, turn off the "append" flag. 2001-01-17 Paul D. Smith * variable.c (lookup_variable) [VMS]: When getting values from the environment, allocate enough space for the _value_ plus escapes, not enough space for the name plus escapes :-/. Reported by John Fowler . * remake.c (f_mtime): Removed the "***" prefix from the mod time warnings that make generates, so it doesn't look like an error. Reported by Karl Berry . Fix for PR/2020: Rework appended target-specific variables. I'm fairly confident this algorithm is finally correct. * expand.c (allocated_variable_append): Rewrite. Instead of expanding each appended variable then adding all the expanded strings together, we append all the unexpanded values going up through the variable set contexts, then expand the final result. This behaves just like non-target-specific appended variable values, while the old way didn't in various corner cases. (variable_append): New function: recursively append the unexpanded value of a variable, walking from the outermost variable scope to the innermost. * variable.c (lookup_variable): Remove the code that looked up the variable set list if the found variable was "append". We don't need this anymore. (lookup_variable_in_set): Make this non-static so we can use it elsewhere. (try_variable_definition): Use lookup_variable_in_set() rather than faking out current_variable_set_list by hand (cleanup). * variable.h: Add a prototype for the now non-static lookup_variable_in_set(). 2000-11-17 Paul D. Smith * remake.c (f_mtime) [WINDOWS32]: On various advice, I changed the WINDOWS32 port to assume timestamps can be up to 3 seconds away before throwing a fit. 2000-11-17 Paul D. Smith * read.c (readline): CRLF calculations had a hole, if you hit the buffer grow scenario just right. Reworked the algorithm to avoid the need for len or lastlen at all. Problem description with sample code chages provided by Chris Faylor . 2000-10-24 Paul D. Smith * gettext.c (SWAP): Declare this with the prototype, otherwise some systems don't work (non-32-bit? Reported for Cray T3E). Reported by Thorstein Thorsteinsson . 2000-10-05 Paul D. Smith * acinclude.m4 (AM_LC_MESSAGES): Remove undefined macro AM_LC_MESSAGES; it doesn't seem to do anything anyway?? * i18n/gl.po, configure.in (ALL_LINGUAS): New Galician translation. 2000-09-22 Paul D. Smith * gettext.c: Don't #define _GETTEXT_H here; we only include some parts of the real gettext.h here, and we expect to really include the real gettext.h later. If we keep this #define, it's ignored. 2000-09-21 Paul D. Smith * main.c (log_working_directory): Rework the text to use complete sentences, to make life simpler for the translators. 2000-08-29 Paul D. Smith * file.c (remove_intermediates): Print a debug message before we remove intermediate files, so the user (if she uses -d) knows what's going on. 2000-08-21 Paul D. Smith * variable.c (try_variable_definition): Change how we handle target-specific append variable defns: instead of just setting the value, expand it as an append _but_ only within the current target's context. Otherwise we lose all but the last value if the variable is appended more than once within the current target context. Fixes PR/1831. 2000-08-16 Paul D. Smith * function.c (func_shell): Nul-terminate the buffer before printing an exec error message (just in case it's not!). Fixes PR/1860, reported by Joey Hess . 2000-07-25 Paul D. Smith * job.c (construct_command_argv_internal): Add "~" to the list of sh_chars[] which disallow optimizing out the shell call. 2000-07-23 Paul Eggert * NEWS, make.texinfo: Document .LOW_RESOLUTION_TIME, which supersedes --disable-nsec-timestamps. * make.texinfo: Consistently use "time stamp" instead of "timestamp". * README: Remove --disable-nsec-timestamps. * filedef.h (struct file.low_resolution_time): New member. * file.c (snap_deps): Add support for .LOW_RESOLUTION_TIME. * remake.c (update_file_1): Avoid spurious rebuilds due to low resolution time stamps, generalizing the earlier code that applied only to archive members. (f_mtime): Archive members always have low resolution time stamps. * configure.in: Remove --disable-nsec-timestamps, as this has been superseded by .LOW_RESOLUTION_TIME. 2000-07-23 Paul Eggert * configure.in (enable_nsec_timestamps): Renamed from make_cv_nsec_timestamps, since enable/disable options shouldn't be cached. 2000-07-23 Bruno Haible and Paul Eggert * file.c (file_timestamp_now): Use preprocessor-time check for FILE_TIMESTAMP_HI_RES so that clock_gettime is not linked unless needed. * filedef.h (FILE_TIMESTAMP_HI_RES): Remove definition; "configure" now does this. * configure.in (jm_AC_TYPE_UINTMAX_T): Move up, to before high resolution file timestamp check, since that check now uses uintmax_t. (FILE_TIMESTAMP_HI_RES): Define to nonzero if the code should use high resolution file timestamps. (HAVE_CLOCK_GETTIME): Do not define if !FILE_TIMESTAMP_HI_RES, so that we don't link in clock_gettime unnecessarily. 2000-07-17 Paul D. Smith * i18n/ja.po: New version of the translation file. 2000-07-07 Paul D. Smith * remake.c (f_mtime): If NO_FLOAT is defined, don't bother with the offset calculation. (name_mtime): Replace EINTR test with EINTR_SET macro. 2000-07-07 Paul Eggert Fix for PR/1811: * remake.c (update_file_1): Avoid spurious rebuilds of archive members due to their timestamp resolution being only one second. (f_mtime): Avoid spurious warnings of timestamps in the future due to the clock's resolution being lower than file timestamps'. When warning about future timestamps, report only the discrepancy, not the absolute value of the timestamp and the current time. * file.c (file_timestamp_now): New arg RESOLUTION. * filedef.h (file_timestamp_now): Likewise. (FILE_TIMESTAMP_NS): Now returns int. All uses changed. 2000-07-05 Paul D. Smith * variable.c (lookup_variable) [VMS]: Remove vestigial references to listp. Fixes PR/1793. 2000-06-26 Paul Eggert * Makefile.am (MAINTAINERCLEANFILES): New macro, with stamp-pot in it. * dir.c (vms_hash): Ensure ctype macro args are nonnegative. * remake.c (f_mtime): Remove unused var memtime. 2000-06-25 Martin Buchholz * make.texinfo, NEWS, TODO.private: Minor spelling corrections. Ran spell-check on make.texinfo. 2000-06-23 Paul D. Smith * main.c (main): Replace EXIT_SUCCESS, EXIT_FAILURE, and EXIT_TROUBLE with MAKE_SUCCESS, MAKE_FAILURE, and MAKE_TROUBLE. * make.h: Define these macros. * Version 3.79.1 released. * configure.in: Add a new option, --disable-nsec-timestamps, to avoid using sub-second timestamps on systems that support it. It can lead to problems, e.g. if your makefile relies on "cp -p". * README.template: Document the issue with "cp -p". * config.guess, config.sub: Updated. See ChangeLog.2, available in the CVS repository at: http://savannah.gnu.org/cvs/?group=make for earlier changes. Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/INSTALL0000644000175000017500000002207110416553102015544 0ustar srivastasrivastaInstallation Instructions ************************* Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004 Free Software Foundation, Inc. This file is free documentation; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. Basic Installation ================== These are generic installation instructions. The `configure' shell script attempts to guess correct values for various system-dependent variables used during compilation. It uses those values to create a `Makefile' in each directory of the package. It may also create one or more `.h' files containing system-dependent definitions. Finally, it creates a shell script `config.status' that you can run in the future to recreate the current configuration, and a file `config.log' containing compiler output (useful mainly for debugging `configure'). It can also use an optional file (typically called `config.cache' and enabled with `--cache-file=config.cache' or simply `-C') that saves the results of its tests to speed up reconfiguring. (Caching is disabled by default to prevent problems with accidental use of stale cache files.) If you need to do unusual things to compile the package, please try to figure out how `configure' could check whether to do them, and mail diffs or instructions to the address given in the `README' so they can be considered for the next release. If you are using the cache, and at some point `config.cache' contains results you don't want to keep, you may remove or edit it. The file `configure.ac' (or `configure.in') is used to create `configure' by a program called `autoconf'. You only need `configure.ac' if you want to change it or regenerate `configure' using a newer version of `autoconf'. The simplest way to compile this package is: 1. `cd' to the directory containing the package's source code and type `./configure' to configure the package for your system. If you're using `csh' on an old version of System V, you might need to type `sh ./configure' instead to prevent `csh' from trying to execute `configure' itself. Running `configure' takes awhile. While running, it prints some messages telling which features it is checking for. 2. Type `make' to compile the package. 3. Optionally, type `make check' to run any self-tests that come with the package. 4. Type `make install' to install the programs and any data files and documentation. 5. You can remove the program binaries and object files from the source code directory by typing `make clean'. To also remove the files that `configure' created (so you can compile the package for a different kind of computer), type `make distclean'. There is also a `make maintainer-clean' target, but that is intended mainly for the package's developers. If you use it, you may have to get all sorts of other programs in order to regenerate files that came with the distribution. Compilers and Options ===================== Some systems require unusual options for compilation or linking that the `configure' script does not know about. Run `./configure --help' for details on some of the pertinent environment variables. You can give `configure' initial values for configuration parameters by setting variables in the command line or in the environment. Here is an example: ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix *Note Defining Variables::, for more details. Compiling For Multiple Architectures ==================================== You can compile the package for more than one kind of computer at the same time, by placing the object files for each architecture in their own directory. To do this, you must use a version of `make' that supports the `VPATH' variable, such as GNU `make'. `cd' to the directory where you want the object files and executables to go and run the `configure' script. `configure' automatically checks for the source code in the directory that `configure' is in and in `..'. If you have to use a `make' that does not support the `VPATH' variable, you have to compile the package for one architecture at a time in the source code directory. After you have installed the package for one architecture, use `make distclean' before reconfiguring for another architecture. Installation Names ================== By default, `make install' will install the package's files in `/usr/local/bin', `/usr/local/man', etc. You can specify an installation prefix other than `/usr/local' by giving `configure' the option `--prefix=PREFIX'. You can specify separate installation prefixes for architecture-specific files and architecture-independent files. If you give `configure' the option `--exec-prefix=PREFIX', the package will use PREFIX as the prefix for installing programs and libraries. Documentation and other data files will still use the regular prefix. In addition, if you use an unusual directory layout you can give options like `--bindir=DIR' to specify different values for particular kinds of files. Run `configure --help' for a list of the directories you can set and what kinds of files go in them. If the package supports it, you can cause programs to be installed with an extra prefix or suffix on their names by giving `configure' the option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'. Optional Features ================= Some packages pay attention to `--enable-FEATURE' options to `configure', where FEATURE indicates an optional part of the package. They may also pay attention to `--with-PACKAGE' options, where PACKAGE is something like `gnu-as' or `x' (for the X Window System). The `README' should mention any `--enable-' and `--with-' options that the package recognizes. For packages that use the X Window System, `configure' can usually find the X include and library files automatically, but if it doesn't, you can use the `configure' options `--x-includes=DIR' and `--x-libraries=DIR' to specify their locations. Specifying the System Type ========================== There may be some features `configure' cannot figure out automatically, but needs to determine by the type of machine the package will run on. Usually, assuming the package is built to be run on the _same_ architectures, `configure' can figure that out, but if it prints a message saying it cannot guess the machine type, give it the `--build=TYPE' option. TYPE can either be a short name for the system type, such as `sun4', or a canonical name which has the form: CPU-COMPANY-SYSTEM where SYSTEM can have one of these forms: OS KERNEL-OS See the file `config.sub' for the possible values of each field. If `config.sub' isn't included in this package, then this package doesn't need to know the machine type. If you are _building_ compiler tools for cross-compiling, you should use the `--target=TYPE' option to select the type of system they will produce code for. If you want to _use_ a cross compiler, that generates code for a platform different from the build platform, you should specify the "host" platform (i.e., that on which the generated programs will eventually be run) with `--host=TYPE'. Sharing Defaults ================ If you want to set default values for `configure' scripts to share, you can create a site shell script called `config.site' that gives default values for variables like `CC', `cache_file', and `prefix'. `configure' looks for `PREFIX/share/config.site' if it exists, then `PREFIX/etc/config.site' if it exists. Or, you can set the `CONFIG_SITE' environment variable to the location of the site script. A warning: not all `configure' scripts look for a site script. Defining Variables ================== Variables not defined in a site shell script can be set in the environment passed to `configure'. However, some packages may run configure again during the build, and the customized values of these variables may be lost. In order to avoid this problem, you should set them in the `configure' command line, using `VAR=value'. For example: ./configure CC=/usr/local2/bin/gcc will cause the specified gcc to be used as the C compiler (unless it is overridden in the site shell script). `configure' Invocation ====================== `configure' recognizes the following options to control how it operates. `--help' `-h' Print a summary of the options to `configure', and exit. `--version' `-V' Print the version of Autoconf used to generate the `configure' script, and exit. `--cache-file=FILE' Enable the cache: use and save the results of the tests in FILE, traditionally `config.cache'. FILE defaults to `/dev/null' to disable caching. `--config-cache' `-C' Alias for `--cache-file=config.cache'. `--quiet' `--silent' `-q' Do not print messages saying which checks are being made. To suppress all normal output, redirect it to `/dev/null' (any error messages will still be shown). `--srcdir=DIR' Look for the package's source code in directory DIR. Usually `configure' can determine that directory automatically. `configure' also accepts some other, not widely useful, options. Run `configure --help' for more details. make-dfsg-3.81.orig/Makefile.DOS0000444000175000017500000005302010416553102016573 0ustar srivastasrivasta# -*-Makefile-*- template for DJGPP # Makefile.in generated automatically by automake 1.2 from Makefile.am # # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, # 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. SHELL = /bin/sh srcdir = . VPATH = $(srcdir) # $DJDIR is defined automatically by DJGPP to point # to the root of the DJGPP installation tree. prefix = /dev/env/DJDIR exec_prefix = ${prefix} bindir = /bin datadir = /share libdir = /lib infodir = /info mandir = /man includedir = /include oldincludedir = c:/djgpp/include DESTDIR = /dev/env/DJDIR pkgdatadir = $(datadir)/make pkglibdir = $(libdir)/make pkgincludedir = $(includedir)/make localedir = $(datadir)/locale INSTALL = ${exec_prefix}/bin/ginstall -c INSTALL_PROGRAM = ${exec_prefix}/bin/ginstall -c INSTALL_DATA = ${exec_prefix}/bin/ginstall -c -m 644 INSTALL_SCRIPT = ${exec_prefix}/bin/ginstall -c transform = s,x,x, # This will fail even if they don't have a Unix-like shell (stock DOS # shell doesn't know about `false'). The only difference is that they # get "Error -1" instead of "Error 1". EXIT_FAIL = false NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : EXEEXT = .exe OBJEXT = o AR = ar AWK = gawk CC = gcc CPP = gcc -E LIBOBJS = MAKEINFO = ${exec_prefix}/bin/makeinfo PACKAGE = make PERL = perl RANLIB = ranlib REMOTE = stub VERSION = 3.81 AUTOMAKE_OPTIONS = 1.2 bin_PROGRAMS = make$(EXEEXT) make_SOURCES = ar.c arscan.c commands.c default.c dir.c expand.c file.c function.c getopt.c getopt1.c implicit.c job.c main.c misc.c read.c remake.c rule.c signame.c strcache.c variable.c version.c vpath.c hash.c remote-$(REMOTE).c # This should include the glob/ prefix libglob_a_SOURCES = glob/fnmatch.c glob/glob.c glob/fnmatch.h glob/glob.h make_LDADD = glob/libglob.a info_TEXINFOS = make.texinfo man_MANS = make.1 INCLUDES = -I$(srcdir)/glob -DLIBDIR=\"c:/djgpp/lib\" -DINCLUDEDIR=\"c:/djgpp/include\" -DLOCALEDIR=\"$(localedir)\" BUILT_SOURCES = README build.sh-in EXTRA_DIST = $(BUILT_SOURCES) $(man_MANS) README.customs remote-cstms.c make-stds.texi texinfo.tex SCOPTIONS SMakefile Makefile.ami README.Amiga config.ami amiga.c amiga.h NMakefile README.DOS configh.dos configure.bat makefile.com README.W32 build_w32.bat config.h-W32 subproc.bat make.lnk config.h-vms makefile.vms readme.vms vmsdir.h vmsfunctions.c vmsify.c SUBDIRS = glob mkinstalldirs = ${exec_prefix}/bin/gmkdir -p CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = build.sh PROGRAMS = $(bin_PROGRAMS) MAKE_HOST = i386-pc-msdosdjgpp DEFS = -I. -I$(srcdir) -I. CPPFLAGS = -DHAVE_CONFIG_H LDFLAGS = LIBS = make_OBJECTS = ar.o arscan.o commands.o default.o dir.o expand.o file.o function.o getopt.o getopt1.o implicit.o job.o main.o misc.o read.o remake.o rule.o signame.o strcache.o variable.o version.o vpath.o hash.o remote-$(REMOTE).o make_DEPENDENCIES = glob/libglob.a make_LDFLAGS = libglob_a_LIBADD = libglob_a_OBJECTS = fnmatch.o glob.o noinst_LIBRARIES = glob/libglob.a CFLAGS = -O2 -g COMPILE = $(CC) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) LINK = $(CC) $(CFLAGS) $(LDFLAGS) -o $@ TEXI2DVI = texi2dvi TEXINFO_TEX = $(srcdir)/config/texinfo.tex INFO_DEPS = make.info DVIS = make.dvi TEXINFOS = make.texinfo man1dir = $(mandir)/man1 MANS = $(man_MANS) NROFF = nroff DIST_COMMON = README ABOUT-NLS AUTHORS COPYING ChangeLog INSTALL Makefile.am Makefile.in NEWS acconfig.h aclocal.m4 alloca.c build.sh-in config.h-in configure configure.in getloadavg.c DISTFILES = $(DIST_COMMON) $(SOURCES) $(HEADERS) $(TEXINFOS) $(EXTRA_DIST) TAR = gtar GZIP = --best SOURCES = $(make_SOURCES) OBJECTS = $(make_OBJECTS) HEADERS = $(wildcard $(srcdir)/*.h) default: all .SUFFIXES: .SUFFIXES: .c .dvi .info .o .obj .ps .texinfo .tex mostlyclean-hdr: clean-hdr: distclean-hdr: -rm -f config.h maintainer-clean-hdr: mostlyclean-binPROGRAMS: clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) distclean-binPROGRAMS: maintainer-clean-binPROGRAMS: install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) $(mkinstalldirs) $(DESTDIR)$(bindir) @list='$(bin_PROGRAMS)'; for p in $$list; do if test -f $$p; then echo " $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p | sed '$(transform)'`"; $(INSTALL_PROGRAM) $$p $(DESTDIR)$(bindir)/`echo $$p | sed '$(transform)'`; else :; fi; done uninstall-binPROGRAMS: $(NORMAL_UNINSTALL) list='$(bin_PROGRAMS)'; for p in $$list; do rm -f $(DESTDIR)$(bindir)/`echo $$p|sed '$(transform)'`.exe; done .c.o: $(COMPILE) -c $< clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) mostlyclean-compile: -rm -f *.$(OBJEXT) *$(EXEEXT) make.new core clean-compile: distclean-compile: -rm -f *.tab.c *_tab.c maintainer-clean-compile: make$(EXEEXT): $(make_OBJECTS) $(make_DEPENDENCIES) @command.com /c if exist make del make @command.com /c if exist make.exe del make.exe $(LINK) $(make_LDFLAGS) $(make_OBJECTS) $(make_LDADD) $(LIBS) make.info: make.texinfo make.dvi: make.texinfo DVIPS = dvips .texinfo.info: @command.com /c if exist make.info* del make.info* @command.com /c if exist make.i* del make.i* $(MAKEINFO) -I$(srcdir) $< -o ./$@ .texinfo: @command.com /c if exist make.info* del make.info* @command.com /c if exist make.i* del make.i* $(MAKEINFO) -I$(srcdir) $< -o ./$@ .texinfo.dvi: TEXINPUTS="$(srcdir);$$TEXINPUTS" MAKEINFO='$(MAKEINFO) -I $(srcdir)' $(TEXI2DVI) $< .dvi.ps: $(DVIPS) $< -o $@ install-info-am: $(INFO_DEPS) @$(NORMAL_INSTALL) $(mkinstalldirs) $(DESTDIR)$(infodir) @for file in $(INFO_DEPS) make.i; do d=$(srcdir); for ifile in `cd $$d && echo $$file $$file-[0-9] $$file-[0-9][0-9] $$file[0-9] $$file[0-9][0-9]`; do if test -f $$d/$$ifile; then echo " $(INSTALL_DATA) $$d/$$ifile $(DESTDIR)$(infodir)/$$ifile"; $(INSTALL_DATA) $$d/$$ifile $(DESTDIR)$(infodir)/$$ifile; else : ; fi; done; done @$(POST_INSTALL) @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then for file in $(INFO_DEPS); do echo " install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file"; install-info --info-dir=$(DESTDIR)$(infodir) $(DESTDIR)$(infodir)/$$file || :; done; else : ; fi uninstall-info: $(PRE_UNINSTALL) @if $(SHELL) -c 'install-info --version | sed 1q | fgrep -s -v -i debian' >/dev/null 2>&1; then ii=yes; else ii=; fi; for file in $(INFO_DEPS); do test -z $ii || install-info --info-dir=$(DESTDIR)$(infodir) --remove $$file; done $(NORMAL_UNINSTALL) for file in $(INFO_DEPS) make.i; do (cd $(DESTDIR)$(infodir) && rm -f $$file $$file-[0-9] $$file-[0-9][0-9] $$file[0-9] $$file[0-9][0-9]); done dist-info: $(INFO_DEPS) for base in $(INFO_DEPS); do d=$(srcdir); for file in `cd $$d && eval echo $$base*`; do test -f $(distdir)/$$file || ln $$d/$$file $(distdir)/$$file 2> /dev/null || cp -p $$d/$$file $(distdir)/$$file; done; done mostlyclean-aminfo: -rm -f make.aux make.cp make.cps make.dvi make.fn make.fns make.ky \ make.kys make.ps make.log make.pg make.toc make.tp make.tps \ make.vr make.vrs make.op make.tr make.cv make.cn clean-aminfo: distclean-aminfo: maintainer-clean-aminfo: for i in $(INFO_DEPS) make.i; do rm -f `eval echo $$i*`; done install-man1: $(mkinstalldirs) $(DESTDIR)$(man1dir) @list='$(man1_MANS)'; \ l2='$(man_MANS)'; for i in $$l2; do \ case "$$i" in \ *.1*) list="$$list $$i" ;; \ esac; \ done; \ for i in $$list; do \ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ else file=$$i; fi; \ ext=`echo $$i | sed -e 's/^.*\\.//'`; \ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ echo " $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst"; \ $(INSTALL_DATA) $$file $(DESTDIR)$(man1dir)/$$inst; \ done uninstall-man1: @list='$(man1_MANS)'; \ l2='$(man_MANS)'; for i in $$l2; do \ case "$$i" in \ *.1*) list="$$list $$i" ;; \ esac; \ done; \ for i in $$list; do \ ext=`echo $$i | sed -e 's/^.*\\.//'`; \ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ echo " rm -f $(DESTDIR)$(man1dir)/$$inst"; \ rm -f $(DESTDIR)$(man1dir)/$$inst; \ done install-man: $(MANS) @$(NORMAL_INSTALL) $(MAKE) install-man1 uninstall-man: @$(NORMAL_UNINSTALL) $(MAKE) uninstall-man1 # Assume that the only thing to do in glob is to build libglob.a, # but do a sanity check: if $SUBDIRS will ever have more than # a single directory, yell bloody murder. all-recursive: ifeq ($(words $(SUBDIRS)), 1) @command.com /c if not exist glob\\nul md glob @echo Making all in $(SUBDIRS) $(MAKE) -C $(SUBDIRS) -f ../Makefile INCLUDES='-I$(srcdir) -I$(srcdir)/glob' DEFS='-I.. -I$(srcdir)' VPATH=$(srcdir)/glob libglob.a else @echo FATAL: There is more than one directory in "($(SUBDIRS))" @$(EXIT_FAIL) endif $(SUBDIRS): command.com /c md $@ libglob.a: $(libglob_a_OBJECTS) command.com /c if exist libglob.a del libglob.a $(AR) cru libglob.a $(libglob_a_OBJECTS) $(libglob_a_LIBADD) $(RANLIB) libglob.a mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive check-recursive: ifeq ($(words $(SUBDIRS)), 1) @echo Making $(shell echo $@ | sed s/-recursive//) in $(SUBDIRS) $(MAKE) -C $(SUBDIRS) -f ../Makefile $(shell echo $@ | sed s/-recursive//)-am else @echo FATAL: There is more than one directory in "($(SUBDIRS))" @$(EXIT_FAIL) endif tags-in-glob: $(libglob_a_SOURCES) etags $(addprefix $(srcdir)/,$^) -o ./glob/TAGS tags-recursive: ifeq ($(words $(SUBDIRS)), 1) $(MAKE) tags-in-glob else @echo FATAL: There is more than one directory in "($(SUBDIRS))" @$(EXIT_FAIL) endif tags: TAGS ID: $(HEADERS) $(SOURCES) mkid $(srcdir)/$(SOURCES) $(srcdir)/$(libglob_a_SOURCES) ./config.h $(HEADERS) TAGS: tags-recursive $(HEADERS) $(srcdir)/$(SOURCES) config.h $(TAGS_DEPENDENCIES) etags -i ./glob/TAGS $(ETAGS_ARGS) $(srcdir)/$(SOURCES) ./config.h $(HEADERS) mostlyclean-tags: clean-tags: distclean-tags: -rm -f TAGS ID maintainer-clean-tags: distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist rm -rf $(distdir) GZIP=$(GZIP) $(TAR) zxf $(distdir).tar.gz mkdir $(distdir)/=build mkdir $(distdir)/=inst dc_install_base=`cd $(distdir)/=inst && pwd`; cd $(distdir)/=build && ../configure --srcdir=.. --prefix=$$dc_install_base && $(MAKE) && $(MAKE) dvi && $(MAKE) check && $(MAKE) install && $(MAKE) installcheck && $(MAKE) dist rm -rf $(distdir) @echo "========================"; echo "$(distdir).tar.gz is ready for distribution"; echo "========================" dist: distdir -chmod -R a+r $(distdir) GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) rm -rf $(distdir) dist-all: distdir -chmod -R a+r $(distdir) GZIP=$(GZIP) $(TAR) chozf $(distdir).tar.gz $(distdir) rm -rf $(distdir) distdir: $(DISTFILES) rm -rf $(distdir) mkdir $(distdir) -chmod 777 $(distdir) @for file in $(DISTFILES); do d=$(srcdir); test -f $(distdir)/$$file || ln $$d/$$file $(distdir)/$$file 2> /dev/null || cp -p $$d/$$file $(distdir)/$$file; done; for subdir in $(SUBDIRS); do test -d $(distdir)/$$subdir || mkdir $(distdir)/$$subdir || exit 1; chmod 777 $(distdir)/$$subdir; (cd $$subdir && $(MAKE) top_distdir=../$(top_distdir)/$$subdir distdir=../$(distdir)/$$subdir distdir) || exit 1; done $(MAKE) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-info $(MAKE) top_distdir="$(top_distdir)" distdir="$(distdir)" dist-hook info: $(INFO_DEPS) info-recursive dvi: $(DVIS) dvi-recursive check: all-am check-recursive check-local @: installcheck: installcheck-recursive all-recursive-am: config.h $(MAKE) all-recursive all-am: Makefile $(INFO_DEPS) $(PROGRAMS) config.h install-exec-am: install-binPROGRAMS install-data-am: install-info-am uninstall-am: uninstall-binPROGRAMS uninstall-info install-exec: install-exec-recursive install-exec-am @$(NORMAL_INSTALL) install-data: install-data-recursive install-data-am @$(NORMAL_INSTALL) install-recursive uninstall-recursive: @: install: install-recursive install-exec-am install-data-am @: uninstall: uninstall-recursive uninstall-am all: all-recursive-am all-am install-strip: $(MAKE) INSTALL_PROGRAM='$(INSTALL_PROGRAM) -s' INSTALL_SCRIPT='$(INSTALL_PROGRAM)' install installdirs: installdirs-recursive $(mkinstalldirs) $(bindir) $(infodir) mostlyclean-generic: -test -z "$(MOSTLYCLEANFILES)" || rm -f $(MOSTLYCLEANFILES) clean-generic: -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) distclean-generic: -rm -f Makefile $(DISTCLEANFILES) -rm -f config.cache config.log stamp-h stamp-h[0-9]* -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) mostlyclean-am: mostlyclean-hdr mostlyclean-binPROGRAMS mostlyclean-compile mostlyclean-aminfo mostlyclean-tags mostlyclean-generic clean-am: clean-hdr clean-binPROGRAMS clean-compile clean-aminfo clean-tags clean-generic mostlyclean-am distclean-am: distclean-hdr distclean-binPROGRAMS distclean-compile distclean-aminfo distclean-tags distclean-generic clean-am maintainer-clean-am: maintainer-clean-hdr maintainer-clean-binPROGRAMS maintainer-clean-compile maintainer-clean-aminfo maintainer-clean-tags maintainer-clean-generic distclean-am mostlyclean: mostlyclean-recursive mostlyclean-am clean: clean-noinstLIBRARIES clean-recursive clean-am distclean: distclean-recursive distclean-am rm -f config.status maintainer-clean: maintainer-clean-recursive maintainer-clean-am @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f config.status .PHONY: default mostlyclean-hdr distclean-hdr clean-hdr \ maintainer-clean-hdr mostlyclean-binPROGRAMS distclean-binPROGRAMS \ clean-binPROGRAMS maintainer-clean-binPROGRAMS uninstall-binPROGRAMS \ install-binPROGRAMS mostlyclean-compile distclean-compile clean-compile \ maintainer-clean-compile install-info-am uninstall-info \ mostlyclean-aminfo distclean-aminfo clean-aminfo \ maintainer-clean-aminfo install-data-recursive uninstall-data-recursive \ install-exec-recursive uninstall-exec-recursive installdirs-recursive \ uninstalldirs-recursive all-recursive check-recursive check-am \ installcheck-recursive info-recursive dvi-recursive \ mostlyclean-recursive distclean-recursive clean-recursive \ maintainer-clean-recursive tags tags-recursive mostlyclean-tags \ distclean-tags clean-tags maintainer-clean-tags distdir \ mostlyclean-depend distclean-depend clean-depend \ maintainer-clean-depend info dvi check-local installcheck \ all-recursive-am all-am install-exec-am install-data-am uninstall-am \ install-exec install-data install uninstall all installdirs \ mostlyclean-generic distclean-generic clean-generic \ maintainer-clean-generic clean mostlyclean distclean maintainer-clean # --------------- Local DIST Section # Install the w32 subdirectory # dist-hook: (cd $(srcdir); \ w32=`find w32 -follow \( -name CVS -prune \) -o -type f -print`; \ tar chf - $$w32) \ | (cd $(distdir); tar xfBp -) # --------------- Local CHECK Section # Note: check-loadavg is NOT a prerequisite of check-local, since # there's no uptime utility, and the test it does doesn't make sense # on MSDOS anyway. check-local: check-shell check-regression @banner=" Regression PASSED: GNU Make $(VERSION) ($(MAKE_HOST)) built with $(CC) "; \ dashes=`echo "$$banner" | sed s/./=/g`; \ echo; \ echo "$$dashes"; \ echo "$$banner"; \ echo "$$dashes"; \ echo .PHONY: check-loadavg check-shell check-regression # > check-shell # # check-shell is designed to fail if they don't have a Unixy shell # installed. The test suite requires such a shell. check-shell: @echo If Make says Error -1, you do not have Unix-style shell installed @foo=bar.exe : # > check-loadavg # loadavg: loadavg.c config.h @rm -f loadavg $(LINK) -DTEST $(make_LDFLAGS) loadavg.c $(LIBS) # We copy getloadavg.c into a different file rather than compiling it # directly because some compilers clobber getloadavg.o in the process. loadavg.c: getloadavg.c ln $(srcdir)/getloadavg.c loadavg.c || \ cp $(srcdir)/getloadavg.c loadavg.c check-loadavg: loadavg @echo The system uptime program believes the load average to be: -uptime @echo The GNU load average checking code believes: -./loadavg # > check-regression # # Look for the make test suite, and run it if found. Look in MAKE_TEST if # specified, or else in the srcdir or the distdir, their parents, and _their_ # parents. # check-regression: @if test -f "$(srcdir)/tests/run_make_tests"; then \ if $(PERL) -v >/dev/null 2>&1; then \ case `cd $(srcdir); pwd` in `pwd`) : ;; \ *) test -d tests || mkdir tests; \ for f in run_make_tests run_make_tests.pl test_driver.pl scripts; do \ rm -rf tests/$$f; cp -pr $(srcdir)/tests/$$f tests; \ done ;; \ esac; \ echo "cd tests && $(PERL) ./run_make_tests.pl -make ../make.exe $(MAKETESTFLAGS)"; \ cd tests && $(PERL) ./run_make_tests.pl -make ../make.exe $(MAKETESTFLAGS); \ else \ echo "Can't find a working Perl ($(PERL)); the test suite requires Perl."; \ fi; \ else \ echo "Can't find the GNU Make test suite ($(srcdir)/tests)."; \ fi # --------------- Maintainer's Section # Note this requires GNU make. Not to worry, since it will only be included # in the Makefile if we're in the maintainer's environment. #include $(srcdir)/maintMakefile # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: # --------------- DEPENDENCIES # --------------- DEPENDENCIES # # .deps/alloca.Po # dummy # .deps/ar.Po ar.o ar.o: ar.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h dep.h \ # .deps/arscan.Po arscan.o arscan.o: arscan.c make.h config.h \ getopt.h \ gettext.h \ # .deps/commands.Po commands.o commands.o: commands.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h variable.h \ job.h commands.h # .deps/default.Po default.o default.o: default.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h rule.h \ dep.h job.h commands.h # .deps/dir.Po dir.o dir.o: dir.c make.h config.h \ getopt.h \ gettext.h hash.h \ # .deps/expand.Po expand.o expand.o: expand.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h \ job.h commands.h \ variable.h rule.h # .deps/file.Po file.o file.o: file.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h \ hash.h job.h commands.h \ variable.h debug.h # .deps/function.Po function.o function.o: function.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h dep.h \ job.h commands.h debug.h # .deps/getloadavg.Po # dummy # .deps/getopt.Po getopt.o getopt.o: getopt.c config.h \ # .deps/getopt1.Po getopt1.o getopt1.o: getopt1.c config.h getopt.h \ # .deps/hash.Po hash.o hash.o: hash.c make.h config.h \ getopt.h \ gettext.h hash.h # .deps/implicit.Po implicit.o implicit.o: implicit.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h rule.h dep.h debug.h \ variable.h job.h \ commands.h # .deps/job.Po job.o job.o: job.c make.h config.h \ getopt.h \ gettext.h job.h \ debug.h filedef.h hash.h \ commands.h variable.h \ # .deps/loadavg-getloadavg.Po loadavg-getloadavg.o loadavg-getloadavg.o: getloadavg.c config.h \ make.h \ getopt.h \ gettext.h \ # .deps/main.Po main.o main.o: main.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h variable.h \ job.h commands.h rule.h \ debug.h getopt.h \ # .deps/misc.Po misc.o misc.o: misc.c make.h config.h \ getopt.h \ gettext.h dep.h debug.h # .deps/read.Po read.o read.o: read.c make.h config.h \ getopt.h \ gettext.h \ dep.h filedef.h hash.h job.h \ commands.h variable.h rule.h debug.h \ # .deps/remake.Po remake.o remake.o: remake.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h job.h \ commands.h dep.h \ variable.h debug.h # .deps/remote-cstms.Po # dummy # .deps/remote-stub.Po remote-stub.o remote-stub.o: remote-stub.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h job.h \ commands.h # .deps/rule.Po rule.o rule.o: rule.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h job.h \ commands.h variable.h \ rule.h # .deps/signame.Po signame.o signame.o: signame.c make.h config.h \ getopt.h \ gettext.h # .deps/strcache.Po strcache.o strcache.o: strcache.c make.h config.h \ getopt.h \ gettext.h hash.h # .deps/variable.Po variable.o variable.o: variable.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h \ hash.h job.h commands.h \ variable.h rule.h # .deps/version.Po version.o version.o: version.c config.h # .deps/vmsjobs.Po # dummy # .deps/vpath.Po vpath.o vpath.o: vpath.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h make-dfsg-3.81.orig/Makefile.am0000644000175000017500000001371510416553102016554 0ustar srivastasrivasta# This is a -*-Makefile-*-, or close enough # # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. AUTOMAKE_OPTIONS = 1.8 dist-bzip2 check-news ansi2knr ACLOCAL_AMFLAGS = -I config MAKE_HOST = @MAKE_HOST@ # Only process if target is MS-Windows if WINDOWSENV MAYBE_W32 = w32 W32INC = -I $(top_srcdir)/w32/include W32LIB = -Lw32 -lw32 endif SUBDIRS = glob config po $(MAYBE_W32) bin_PROGRAMS = make if USE_CUSTOMS remote = remote-cstms.c else remote = remote-stub.c endif make_SOURCES = ar.c arscan.c commands.c default.c dir.c expand.c file.c \ function.c getopt.c getopt1.c implicit.c job.c main.c \ misc.c read.c remake.c $(remote) rule.c signame.c \ strcache.c variable.c version.c vpath.c hash.c EXTRA_make_SOURCES = vmsjobs.c remote-stub.c remote-cstms.c noinst_HEADERS = commands.h dep.h filedef.h job.h make.h rule.h variable.h \ debug.h getopt.h gettext.h hash.h make_LDADD = @LIBOBJS@ @ALLOCA@ $(GLOBLIB) @GETLOADAVG_LIBS@ @LIBINTL@ # Only process if target is MS-Windows if WINDOWSENV make_LDADD += $(W32LIB) endif man_MANS = make.1 DEFS = -DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@ AM_CPPFLAGS = $(GLOBINC) # Only process if target is MS-Windows if WINDOWSENV AM_CPPFLAGS += $(W32INC) endif # Extra stuff to include in the distribution. EXTRA_DIST = README build.sh.in $(man_MANS) \ README.customs README.OS2 \ SCOPTIONS SMakefile \ README.Amiga Makefile.ami config.ami make.lnk amiga.c amiga.h \ README.DOS Makefile.DOS configure.bat dosbuild.bat configh.dos\ README.W32 NMakefile config.h.W32 build_w32.bat subproc.bat \ make_msvc_net2003.sln make_msvc_net2003.vcproj \ readme.vms makefile.vms makefile.com config.h-vms \ vmsdir.h vmsfunctions.c vmsify.c # This is built during configure, but behind configure's back DISTCLEANFILES = build.sh # Forward targets # --------------- Internationalization Section localedir = $(datadir)/locale # --------------- Local INSTALL Section # If necessary, change the gid of the app and turn on the setgid flag. # # Whether or not make needs to be installed setgid. # The value should be either `true' or `false'. # On many systems, the getloadavg function (used to implement the `-l' # switch) will not work unless make is installed setgid kmem. # inst_setgid = @NEED_SETGID@ # Install make setgid to this group so it can get the load average. # inst_group = @KMEM_GROUP@ install-exec-local: @if $(inst_setgid); then \ app=$(DESTDIR)$(bindir)/`echo $(bin_PROGRAMS)|sed '$(transform)'`; \ if chgrp $(inst_group) $$app && chmod g+s $$app; then \ echo "chgrp $(inst_group) $$app && chmod g+s $$app"; \ else \ echo "$$app needs to be owned by group $(inst_group) and setgid;"; \ echo "otherwise the \`-l' option will probably not work."; \ echo "You may need special privileges to complete the installation"; \ echo "of $$app."; \ fi; \ else true; fi # --------------- Local DIST Section # Install the w32 and tests subdirectories # dist-hook: (cd $(srcdir); \ sub=`find w32 tests -follow \( -name CVS -prune -o -name .cvsignore -o -name work -prune \) -o \( -name \*.orig -o -name \*.rej -o -name \*~ -prune \) -o -type f -print`; \ tar chf - $$sub) \ | (cd $(distdir); tar xfBp -) # --------------- Local CHECK Section check-local: check-regression check-loadavg @banner=" Regression PASSED: GNU Make $(VERSION) ($(MAKE_HOST)) built with $(CC) "; \ dashes=`echo "$$banner" | sed s/./=/g`; \ echo; \ echo "$$dashes"; \ echo "$$banner"; \ echo "$$dashes"; \ echo .PHONY: check-loadavg check-regression check-loadavg: loadavg$(EXEEXT) @echo The system uptime program believes the load average to be: -uptime @echo The GNU load average checking code thinks: -./loadavg$(EXEEXT) # The loadavg function is invoked during "make check" to test getloadavg. check_PROGRAMS = loadavg nodist_loadavg_SOURCES = getloadavg.c loadavg_CPPFLAGS = -DTEST loadavg_LDADD = @GETLOADAVG_LIBS@ # > check-regression # # Look for the make test suite, and run it if found and we can find perl. # If we're building outside the tree, we use symlinks to make a local copy of # the test suite. Unfortunately the test suite itself isn't localizable yet. # MAKETESTFLAGS = check-regression: @if test -f "$(srcdir)/tests/run_make_tests"; then \ if $(PERL) -v >/dev/null 2>&1; then \ case `cd $(srcdir); pwd` in `pwd`) : ;; \ *) test -d tests || mkdir tests; \ rm -f srctests; \ if ln -s "$(srcdir)/tests" srctests; then \ for f in run_make_tests run_make_tests.pl test_driver.pl scripts; do \ rm -f tests/$$f; ln -s ../srctests/$$f tests; \ done; fi ;; \ esac; \ echo "cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS)"; \ cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS); \ else \ echo "Can't find a working Perl ($(PERL)); the test suite requires Perl."; \ fi; \ else \ echo "Can't find the GNU Make test suite ($(srcdir)/tests)."; \ fi # --------------- Maintainer's Section # Tell automake that I haven't forgotten about this file and it will be # created before we build a distribution (see maintMakefile in the CVS # distribution). README: @MAINT_MAKEFILE@ make-dfsg-3.81.orig/Makefile.ami0000644000175000017500000002417010416553102016722 0ustar srivastasrivasta# -*-Makefile-*- for GNU make on Amiga # # NOTE: If you have no `make' program at all to process this makefile, run # `build.sh' instead. # # Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # # Makefile for GNU Make # CC = sc RM = delete CFLAGS = CPPFLAGS = LDFLAGS = # Define these for your system as follows: # -DNO_ARCHIVES To disable `ar' archive support. # -DNO_FLOAT To avoid using floating-point numbers. # -DENUM_BITFIELDS If the compiler isn't GCC but groks enum foo:2. # Some compilers apparently accept this # without complaint but produce losing code, # so beware. # NeXT 1.0a uses an old version of GCC, which required -D__inline=inline. # See also `config.h'. defines = # Which flavor of remote job execution support to use. # The code is found in `remote-$(REMOTE).c'. REMOTE = stub # If you are using the GNU C library, or have the GNU getopt functions in # your C library, you can comment these out. GETOPT = getopt.o getopt1.o GETOPT_SRC = $(srcdir)getopt.c $(srcdir)getopt1.c $(srcdir)getopt.h # If you are using the GNU C library, or have the GNU glob functions in # your C library, you can comment this out. GNU make uses special hooks # into the glob functions to be more efficient (by using make's directory # cache for globbing), so you must use the GNU functions even if your # system's C library has the 1003.2 glob functions already. Also, the glob # functions in the AIX and HPUX C libraries are said to be buggy. GLOB = glob/glob.lib # If your system doesn't have alloca, or the one provided is bad, define this. ALLOCA = alloca.o ALLOCA_SRC = $(srcdir)alloca.c # If your system needs extra libraries loaded in, define them here. # System V probably need -lPW for alloca. HP-UX 7.0's alloca in # libPW.a is broken on HP9000s300 and HP9000s400 machines. Use # alloca.c instead on those machines. LOADLIBES = # Any extra object files your system needs. extras = amiga.o # Common prefix for machine-independent installed files. prefix = # Common prefix for machine-dependent installed files. exec_prefix = # Directory to install `make' in. bindir = sc:c # Directory to find libraries in for `-lXXX'. libdir = lib: # Directory to search by default for included makefiles. includedir = include: # Directory to install the Info files in. infodir = doc: # Directory to install the man page in. mandir = t: # Number to put on the man page filename. manext = 1 # Prefix to put on installed `make' binary file name. binprefix = # Prefix to put on installed `make' man page file name. manprefix = $(binprefix) # Whether or not make needs to be installed setgid. # The value should be either `true' or `false'. # On many systems, the getloadavg function (used to implement the `-l' # switch) will not work unless make is installed setgid kmem. install_setgid = false # Install make setgid to this group so it can read /dev/kmem. group = sys # Program to install `make'. INSTALL_PROGRAM = copy # Program to install the man page. INSTALL_DATA = copy # Generic install program. INSTALL = copy # Program to format Texinfo source into Info files. MAKEINFO = makeinfo # Program to format Texinfo source into DVI files. TEXI2DVI = texi2dvi # Programs to make tags files. ETAGS = etags -w CTAGS = ctags -w objs = commands.o job.o dir.o file.o misc.o main.o read.o remake.o \ rule.o implicit.o default.o variable.o expand.o function.o \ vpath.o version.o ar.o arscan.o signame.o strcache.o hash.o \ remote-$(REMOTE).o $(GETOPT) $(ALLOCA) $(extras) srcs = $(srcdir)commands.c $(srcdir)job.c $(srcdir)dir.c \ $(srcdir)file.c $(srcdir)getloadavg.c $(srcdir)misc.c \ $(srcdir)main.c $(srcdir)read.c $(srcdir)remake.c \ $(srcdir)rule.c $(srcdir)implicit.c $(srcdir)default.c \ $(srcdir)variable.c $(srcdir)expand.c $(srcdir)function.c \ $(srcdir)vpath.c $(srcdir)version.c $(srcdir)hash.c \ $(srcdir)remote-$(REMOTE).c \ $(srcdir)ar.c $(srcdir)arscan.c $(srcdir)strcache.c \ $(srcdir)signame.c $(srcdir)signame.h $(GETOPT_SRC) \ $(srcdir)commands.h $(srcdir)dep.h $(srcdir)filedep.h \ $(srcdir)job.h $(srcdir)make.h $(srcdir)rule.h \ $(srcdir)variable.h $(ALLOCA_SRC) $(srcdir)config.h.in .SUFFIXES: .SUFFIXES: .o .c .h .ps .dvi .info .texinfo all: make info: make.info dvi: make.dvi # Some makes apparently use .PHONY as the default goal if it is before `all'. .PHONY: all check info dvi make.info: make.texinfo $(MAKEINFO) -I$(srcdir) $(srcdir)make.texinfo -o make.info make.dvi: make.texinfo $(TEXI2DVI) $(srcdir)make.texinfo make.ps: make.dvi dvi2ps make.dvi > make.ps make: $(objs) $(GLOB) $(CC) Link $(LDFLAGS) $(objs) Lib $(GLOB) $(LOADLIBES) To make.new -delete make rename make.new make TMPFILE = t:Make$$ $(GLOB): cd glob @@\ $(MAKE) -$(MAKEFLAGS) -f Makefile # -I. is needed to find config.h in the build directory. OUTPUT_OPTION = .c.o: $(CC) $(defines) IDir "" IDir glob \ $(CPPFLAGS) $(CFLAGS) $< $(OUTPUT_OPTION) # For some losing Unix makes. SHELL = /bin/sh #@SET_MAKE@ glob/libglob.a: FORCE config.h cd glob; $(MAKE) libglob.a FORCE: tagsrcs = $(srcs) $(srcdir)remote-*.c .PHONY: install installdirs install: installdirs \ $(bindir)$(binprefix)make $(infodir)make.info \ $(mandir)$(manprefix)make.$(manext) installdirs: $(SHELL) ${srcdir}/mkinstalldirs $(bindir) $(infodir) $(mandir) $(bindir)$(binprefix)make: make $(INSTALL_PROGRAM) make $@.new @if $(install_setgid); then \ if chgrp $(group) $@.new && chmod g+s $@.new; then \ echo "chgrp $(group) $@.new && chmod g+s $@.new"; \ else \ echo "$@ needs to be owned by group $(group) and setgid;"; \ echo "otherwise the \`-l' option will probably not work."; \ echo "You may need special privileges to install $@."; \ fi; \ else true; fi # Some systems can't deal with renaming onto a running binary. -$(RM) $@.old -mv $@ $@.old mv $@.new $@ $(infodir)make.info: make.info if [ -r ./make.info ]; then dir=.; else dir=$(srcdir); fi; \ for file in $${dir}/make.info*; do \ name="`basename $$file`"; \ $(INSTALL_DATA) $$file \ `echo $@ | sed "s,make.info\$$,$$name,"`; \ done # Run install-info only if it exists. # Use `if' instead of just prepending `-' to the # line so we notice real errors from install-info. # We use `$(SHELL) -c' because some shells do not # fail gracefully when there is an unknown command. if $(SHELL) -c 'install-info --version' >/dev/null 2>&1; then \ if [ -r ./make.info ]; then dir=.; else dir=$(srcdir); fi; \ install-info --infodir=$(infodir) $$dir/make.info; \ else true; fi $(mandir)$(manprefix)make.$(manext): make.man $(INSTALL_DATA) $(srcdir)make.man $@ loadavg: loadavg.c config.h $(CC) $(defines) -DTEST -I. -I$(srcdir) $(CFLAGS) $(LDFLAGS) \ loadavg.c $(LOADLIBES) -o $@ # We copy getloadavg.c into a different file rather than compiling it # directly because some compilers clobber getloadavg.o in the process. loadavg.c: getloadavg.c ln $(srcdir)getloadavg.c loadavg.c || \ cp $(srcdir)getloadavg.c loadavg.c check-loadavg: loadavg @echo The system uptime program believes the load average to be: -uptime @echo The GNU load average checking code believes: ./loadavg check: check-loadavg .PHONY: clean realclean distclean mostlyclean clean: glob-clean -$(RM) make loadavg "#?.o" core make.dvi distclean: clean glob-realclean -$(RM) Makefile config.h config.status build.sh -$(RM) config.log config.cache -$(RM) TAGS tags -$(RM) make.?? make.??s make.log make.toc make.*aux -$(RM) loadavg.c realclean: distclean -$(RM) make.info* mostlyclean: clean .PHONY: glob-clean glob-realclean glob-clean glob-realclean: cd glob @@\ $(MAKE) $@ # This tells versions [3.59,3.63) of GNU make not to export all variables. .NOEXPORT: # The automatically generated dependencies below may omit config.h # because it is included with ``#include '' rather than # ``#include "config.h"''. So we add the explicit dependency to make sure. $(objs): config.h # Automatically generated dependencies will be put at the end of the file. # Automatically generated dependencies. commands.o: commands.c make.h dep.h filedef.h variable.h job.h \ commands.h job.o: job.c make.h job.h filedef.h commands.h variable.h dir.o: dir.c make.h file.o: file.c make.h dep.h filedef.h job.h commands.h variable.h misc.o: misc.c make.h dep.h main.o: main.c make.h dep.h filedef.h variable.h job.h commands.h \ getopt.h read.o: read.c make.h dep.h filedef.h job.h commands.h variable.h \ glob/glob.h remake.o: remake.c make.h filedef.h job.h commands.h dep.h rule.o: rule.c make.h dep.h filedef.h job.h commands.h variable.h \ rule.h implicit.o: implicit.c make.h rule.h dep.h filedef.h default.o: default.c make.h rule.h dep.h filedef.h job.h commands.h \ variable.h variable.o: variable.c make.h dep.h filedef.h job.h commands.h \ variable.h expand.o: expand.c make.h filedef.h job.h commands.h variable.h function.o: function.c make.h filedef.h variable.h dep.h job.h \ commands.h amiga.h vpath.o: vpath.c make.h filedef.h variable.h strcache.o: strcache.c make.h hash.h version.o: version.c ar.o: ar.c make.h filedef.h dep.h arscan.o: arscan.c make.h signame.o: signame.c signame.h remote-stub.o: remote-stub.c make.h filedef.h job.h commands.h getopt.o: getopt.c getopt1.o : getopt1.c getopt.h getloadavg.o: getloadavg.c amiga.o: amiga.c make.h variable.h amiga.h make-dfsg-3.81.orig/Makefile.in0000644000175000017500000012621010416553102016560 0ustar srivastasrivasta# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # This is a -*-Makefile-*-, or close enough # # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = . am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ ANSI2KNR = @ANSI2KNR@ bin_PROGRAMS = make$(EXEEXT) # Only process if target is MS-Windows @WINDOWSENV_TRUE@am__append_1 = $(W32LIB) # Only process if target is MS-Windows @WINDOWSENV_TRUE@am__append_2 = $(W32INC) check_PROGRAMS = loadavg$(EXEEXT) subdir = . DIST_COMMON = README $(am__configure_deps) $(noinst_HEADERS) \ $(srcdir)/Makefile.am $(srcdir)/Makefile.in \ $(srcdir)/config.h.in $(top_srcdir)/configure ABOUT-NLS \ AUTHORS COPYING ChangeLog INSTALL NEWS alloca.c ansi2knr.1 \ ansi2knr.c getloadavg.c ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ $(top_srcdir)/config/gettext.m4 $(top_srcdir)/config/iconv.m4 \ $(top_srcdir)/config/lib-ld.m4 \ $(top_srcdir)/config/lib-link.m4 \ $(top_srcdir)/config/lib-prefix.m4 $(top_srcdir)/config/nls.m4 \ $(top_srcdir)/config/po.m4 $(top_srcdir)/config/progtest.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ configure.lineno configure.status.lineno mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs CONFIG_HEADER = config.h CONFIG_CLEAN_FILES = am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)" binPROGRAMS_INSTALL = $(INSTALL_PROGRAM) PROGRAMS = $(bin_PROGRAMS) nodist_loadavg_OBJECTS = loadavg-getloadavg$U.$(OBJEXT) loadavg_OBJECTS = $(nodist_loadavg_OBJECTS) loadavg_DEPENDENCIES = am__make_SOURCES_DIST = ar.c arscan.c commands.c default.c dir.c \ expand.c file.c function.c getopt.c getopt1.c implicit.c job.c \ main.c misc.c read.c remake.c remote-stub.c remote-cstms.c \ rule.c signame.c strcache.c variable.c version.c vpath.c \ hash.c @USE_CUSTOMS_FALSE@am__objects_1 = remote-stub$U.$(OBJEXT) @USE_CUSTOMS_TRUE@am__objects_1 = remote-cstms$U.$(OBJEXT) am_make_OBJECTS = ar$U.$(OBJEXT) arscan$U.$(OBJEXT) \ commands$U.$(OBJEXT) default$U.$(OBJEXT) dir$U.$(OBJEXT) \ expand$U.$(OBJEXT) file$U.$(OBJEXT) function$U.$(OBJEXT) \ getopt$U.$(OBJEXT) getopt1$U.$(OBJEXT) implicit$U.$(OBJEXT) \ job$U.$(OBJEXT) main$U.$(OBJEXT) misc$U.$(OBJEXT) \ read$U.$(OBJEXT) remake$U.$(OBJEXT) $(am__objects_1) \ rule$U.$(OBJEXT) signame$U.$(OBJEXT) strcache$U.$(OBJEXT) \ variable$U.$(OBJEXT) version$U.$(OBJEXT) vpath$U.$(OBJEXT) \ hash$U.$(OBJEXT) make_OBJECTS = $(am_make_OBJECTS) am__DEPENDENCIES_1 = @WINDOWSENV_TRUE@am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) make_DEPENDENCIES = @LIBOBJS@ @ALLOCA@ $(am__DEPENDENCIES_1) \ $(am__DEPENDENCIES_2) DEFAULT_INCLUDES = -I. -I$(srcdir) -I. depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(nodist_loadavg_SOURCES) $(make_SOURCES) \ $(EXTRA_make_SOURCES) DIST_SOURCES = $(am__make_SOURCES_DIST) $(EXTRA_make_SOURCES) RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ html-recursive info-recursive install-data-recursive \ install-exec-recursive install-info-recursive \ install-recursive installcheck-recursive installdirs-recursive \ pdf-recursive ps-recursive uninstall-info-recursive \ uninstall-recursive man1dir = $(mandir)/man1 NROFF = nroff MANS = $(man_MANS) HEADERS = $(noinst_HEADERS) ETAGS = etags CTAGS = ctags DIST_SUBDIRS = glob config po w32 DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) am__remove_distdir = \ { test ! -d $(distdir) \ || { find $(distdir) -type d ! -perm -200 -exec chmod u+w {} ';' \ && rm -fr $(distdir); }; } DIST_ARCHIVES = $(distdir).tar.gz $(distdir).tar.bz2 GZIP_ENV = --best distuninstallcheck_listfiles = find . -type f -print distcleancheck_listfiles = find . -type f -print ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = -DLOCALEDIR=\"$(localedir)\" -DLIBDIR=\"$(libdir)\" -DINCLUDEDIR=\"$(includedir)\" @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ GLOBINC = @GLOBINC@ GLOBLIB = @GLOBLIB@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ KMEM_GROUP = @KMEM_GROUP@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_HOST = @MAKE_HOST@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGMERGE = @MSGMERGE@ NEED_SETGID = @NEED_SETGID@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL = @PERL@ POSUB = @POSUB@ RANLIB = @RANLIB@ REMOTE = @REMOTE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ U = @U@ USE_CUSTOMS_FALSE = @USE_CUSTOMS_FALSE@ USE_CUSTOMS_TRUE = @USE_CUSTOMS_TRUE@ USE_LOCAL_GLOB_FALSE = @USE_LOCAL_GLOB_FALSE@ USE_LOCAL_GLOB_TRUE = @USE_LOCAL_GLOB_TRUE@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDOWSENV_FALSE = @WINDOWSENV_FALSE@ WINDOWSENV_TRUE = @WINDOWSENV_TRUE@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ AUTOMAKE_OPTIONS = 1.8 dist-bzip2 check-news ansi2knr ACLOCAL_AMFLAGS = -I config # Only process if target is MS-Windows @WINDOWSENV_TRUE@MAYBE_W32 = w32 @WINDOWSENV_TRUE@W32INC = -I $(top_srcdir)/w32/include @WINDOWSENV_TRUE@W32LIB = -Lw32 -lw32 SUBDIRS = glob config po $(MAYBE_W32) @USE_CUSTOMS_FALSE@remote = remote-stub.c @USE_CUSTOMS_TRUE@remote = remote-cstms.c make_SOURCES = ar.c arscan.c commands.c default.c dir.c expand.c file.c \ function.c getopt.c getopt1.c implicit.c job.c main.c \ misc.c read.c remake.c $(remote) rule.c signame.c \ strcache.c variable.c version.c vpath.c hash.c EXTRA_make_SOURCES = vmsjobs.c remote-stub.c remote-cstms.c noinst_HEADERS = commands.h dep.h filedef.h job.h make.h rule.h variable.h \ debug.h getopt.h gettext.h hash.h make_LDADD = @LIBOBJS@ @ALLOCA@ $(GLOBLIB) @GETLOADAVG_LIBS@ @LIBINTL@ \ $(am__append_1) man_MANS = make.1 AM_CPPFLAGS = $(GLOBINC) $(am__append_2) # Extra stuff to include in the distribution. EXTRA_DIST = README build.sh.in $(man_MANS) \ README.customs README.OS2 \ SCOPTIONS SMakefile \ README.Amiga Makefile.ami config.ami make.lnk amiga.c amiga.h \ README.DOS Makefile.DOS configure.bat dosbuild.bat configh.dos\ README.W32 NMakefile config.h.W32 build_w32.bat subproc.bat \ make_msvc_net2003.sln make_msvc_net2003.vcproj \ readme.vms makefile.vms makefile.com config.h-vms \ vmsdir.h vmsfunctions.c vmsify.c # This is built during configure, but behind configure's back DISTCLEANFILES = build.sh # --------------- Internationalization Section localedir = $(datadir)/locale # --------------- Local INSTALL Section # If necessary, change the gid of the app and turn on the setgid flag. # # Whether or not make needs to be installed setgid. # The value should be either `true' or `false'. # On many systems, the getloadavg function (used to implement the `-l' # switch) will not work unless make is installed setgid kmem. # inst_setgid = @NEED_SETGID@ # Install make setgid to this group so it can get the load average. # inst_group = @KMEM_GROUP@ nodist_loadavg_SOURCES = getloadavg.c loadavg_CPPFLAGS = -DTEST loadavg_LDADD = @GETLOADAVG_LIBS@ # > check-regression # # Look for the make test suite, and run it if found and we can find perl. # If we're building outside the tree, we use symlinks to make a local copy of # the test suite. Unfortunately the test suite itself isn't localizable yet. # MAKETESTFLAGS = all: config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: .SUFFIXES: .c .o .obj am--refresh: @: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ echo ' cd $(srcdir) && $(AUTOMAKE) --gnu '; \ cd $(srcdir) && $(AUTOMAKE) --gnu \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ echo ' $(SHELL) ./config.status'; \ $(SHELL) ./config.status;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) $(SHELL) ./config.status --recheck $(top_srcdir)/configure: $(am__configure_deps) cd $(srcdir) && $(AUTOCONF) $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) config.h: stamp-h1 @if test ! -f $@; then \ rm -f stamp-h1; \ $(MAKE) stamp-h1; \ else :; fi stamp-h1: $(srcdir)/config.h.in $(top_builddir)/config.status @rm -f stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status config.h $(srcdir)/config.h.in: $(am__configure_deps) cd $(top_srcdir) && $(AUTOHEADER) rm -f stamp-h1 touch $@ distclean-hdr: -rm -f config.h stamp-h1 install-binPROGRAMS: $(bin_PROGRAMS) @$(NORMAL_INSTALL) test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)" @list='$(bin_PROGRAMS)'; for p in $$list; do \ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \ if test -f $$p \ ; then \ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \ else :; fi; \ done uninstall-binPROGRAMS: @$(NORMAL_UNINSTALL) @list='$(bin_PROGRAMS)'; for p in $$list; do \ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \ rm -f "$(DESTDIR)$(bindir)/$$f"; \ done clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) clean-checkPROGRAMS: -test -z "$(check_PROGRAMS)" || rm -f $(check_PROGRAMS) loadavg$(EXEEXT): $(loadavg_OBJECTS) $(loadavg_DEPENDENCIES) @rm -f loadavg$(EXEEXT) $(LINK) $(loadavg_LDFLAGS) $(loadavg_OBJECTS) $(loadavg_LDADD) $(LIBS) make$(EXEEXT): $(make_OBJECTS) $(make_DEPENDENCIES) @rm -f make$(EXEEXT) $(LINK) $(make_LDFLAGS) $(make_OBJECTS) $(make_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c ansi2knr: ansi2knr.$(OBJEXT) $(LINK) ansi2knr.$(OBJEXT) $(LIBS) ansi2knr.$(OBJEXT): $(CONFIG_HEADER) clean-krextra: -rm -f ansi2knr mostlyclean-kr: -test "$U" = "" || rm -f *_.c @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/alloca.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@$(DEPDIR)/getloadavg.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ar$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/arscan$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/commands$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/default$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dir$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/expand$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/file$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/function$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/getopt1$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/hash$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/implicit$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/job$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/loadavg-getloadavg$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/main$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/misc$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/read$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remake$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote-cstms$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/remote-stub$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rule$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/signame$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/strcache$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/variable$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/version$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vmsjobs$U.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vpath$U.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` loadavg-getloadavg$U.o: getloadavg$U.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadavg_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT loadavg-getloadavg$U.o -MD -MP -MF "$(DEPDIR)/loadavg-getloadavg$U.Tpo" -c -o loadavg-getloadavg$U.o `test -f 'getloadavg$U.c' || echo '$(srcdir)/'`getloadavg$U.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/loadavg-getloadavg$U.Tpo" "$(DEPDIR)/loadavg-getloadavg$U.Po"; else rm -f "$(DEPDIR)/loadavg-getloadavg$U.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='getloadavg$U.c' object='loadavg-getloadavg$U.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadavg_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o loadavg-getloadavg$U.o `test -f 'getloadavg$U.c' || echo '$(srcdir)/'`getloadavg$U.c loadavg-getloadavg$U.obj: getloadavg$U.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadavg_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT loadavg-getloadavg$U.obj -MD -MP -MF "$(DEPDIR)/loadavg-getloadavg$U.Tpo" -c -o loadavg-getloadavg$U.obj `if test -f 'getloadavg$U.c'; then $(CYGPATH_W) 'getloadavg$U.c'; else $(CYGPATH_W) '$(srcdir)/getloadavg$U.c'; fi`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/loadavg-getloadavg$U.Tpo" "$(DEPDIR)/loadavg-getloadavg$U.Po"; else rm -f "$(DEPDIR)/loadavg-getloadavg$U.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='getloadavg$U.c' object='loadavg-getloadavg$U.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(loadavg_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o loadavg-getloadavg$U.obj `if test -f 'getloadavg$U.c'; then $(CYGPATH_W) 'getloadavg$U.c'; else $(CYGPATH_W) '$(srcdir)/getloadavg$U.c'; fi` alloca_.c: alloca.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/alloca.c; then echo $(srcdir)/alloca.c; else echo alloca.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ ar_.c: ar.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/ar.c; then echo $(srcdir)/ar.c; else echo ar.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ arscan_.c: arscan.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/arscan.c; then echo $(srcdir)/arscan.c; else echo arscan.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ commands_.c: commands.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/commands.c; then echo $(srcdir)/commands.c; else echo commands.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ default_.c: default.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/default.c; then echo $(srcdir)/default.c; else echo default.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ dir_.c: dir.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/dir.c; then echo $(srcdir)/dir.c; else echo dir.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ expand_.c: expand.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/expand.c; then echo $(srcdir)/expand.c; else echo expand.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ file_.c: file.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/file.c; then echo $(srcdir)/file.c; else echo file.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ function_.c: function.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/function.c; then echo $(srcdir)/function.c; else echo function.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ getloadavg_.c: getloadavg.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/getloadavg.c; then echo $(srcdir)/getloadavg.c; else echo getloadavg.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ getopt_.c: getopt.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/getopt.c; then echo $(srcdir)/getopt.c; else echo getopt.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ getopt1_.c: getopt1.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/getopt1.c; then echo $(srcdir)/getopt1.c; else echo getopt1.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ hash_.c: hash.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/hash.c; then echo $(srcdir)/hash.c; else echo hash.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ implicit_.c: implicit.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/implicit.c; then echo $(srcdir)/implicit.c; else echo implicit.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ job_.c: job.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/job.c; then echo $(srcdir)/job.c; else echo job.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ main_.c: main.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/main.c; then echo $(srcdir)/main.c; else echo main.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ misc_.c: misc.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/misc.c; then echo $(srcdir)/misc.c; else echo misc.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ read_.c: read.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/read.c; then echo $(srcdir)/read.c; else echo read.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ remake_.c: remake.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/remake.c; then echo $(srcdir)/remake.c; else echo remake.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ remote-cstms_.c: remote-cstms.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/remote-cstms.c; then echo $(srcdir)/remote-cstms.c; else echo remote-cstms.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ remote-stub_.c: remote-stub.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/remote-stub.c; then echo $(srcdir)/remote-stub.c; else echo remote-stub.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ rule_.c: rule.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/rule.c; then echo $(srcdir)/rule.c; else echo rule.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ signame_.c: signame.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/signame.c; then echo $(srcdir)/signame.c; else echo signame.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ strcache_.c: strcache.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/strcache.c; then echo $(srcdir)/strcache.c; else echo strcache.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ variable_.c: variable.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/variable.c; then echo $(srcdir)/variable.c; else echo variable.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ version_.c: version.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/version.c; then echo $(srcdir)/version.c; else echo version.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ vmsjobs_.c: vmsjobs.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/vmsjobs.c; then echo $(srcdir)/vmsjobs.c; else echo vmsjobs.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ vpath_.c: vpath.c $(ANSI2KNR) $(CPP) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) `if test -f $(srcdir)/vpath.c; then echo $(srcdir)/vpath.c; else echo vpath.c; fi` | sed 's/^# \([0-9]\)/#line \1/' | $(ANSI2KNR) > $@ || rm -f $@ alloca_.$(OBJEXT) ar_.$(OBJEXT) arscan_.$(OBJEXT) commands_.$(OBJEXT) \ default_.$(OBJEXT) dir_.$(OBJEXT) expand_.$(OBJEXT) file_.$(OBJEXT) \ function_.$(OBJEXT) getloadavg_.$(OBJEXT) getopt_.$(OBJEXT) \ getopt1_.$(OBJEXT) hash_.$(OBJEXT) implicit_.$(OBJEXT) job_.$(OBJEXT) \ main_.$(OBJEXT) misc_.$(OBJEXT) read_.$(OBJEXT) remake_.$(OBJEXT) \ remote-cstms_.$(OBJEXT) remote-stub_.$(OBJEXT) rule_.$(OBJEXT) \ signame_.$(OBJEXT) strcache_.$(OBJEXT) variable_.$(OBJEXT) \ version_.$(OBJEXT) vmsjobs_.$(OBJEXT) vpath_.$(OBJEXT) : $(ANSI2KNR) uninstall-info-am: install-man1: $(man1_MANS) $(man_MANS) @$(NORMAL_INSTALL) test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)" @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ for i in $$l2; do \ case "$$i" in \ *.1*) list="$$list $$i" ;; \ esac; \ done; \ for i in $$list; do \ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \ else file=$$i; fi; \ ext=`echo $$i | sed -e 's/^.*\\.//'`; \ case "$$ext" in \ 1*) ;; \ *) ext='1' ;; \ esac; \ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \ done uninstall-man1: @$(NORMAL_UNINSTALL) @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \ for i in $$l2; do \ case "$$i" in \ *.1*) list="$$list $$i" ;; \ esac; \ done; \ for i in $$list; do \ ext=`echo $$i | sed -e 's/^.*\\.//'`; \ case "$$ext" in \ 1*) ;; \ *) ext='1' ;; \ esac; \ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \ inst=`echo $$inst | sed -e 's/^.*\///'`; \ inst=`echo $$inst | sed '$(transform)'`.$$ext; \ echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \ rm -f "$(DESTDIR)$(man1dir)/$$inst"; \ done # This directory's subdirectories are mostly independent; you can cd # into them and run `make' without going through this Makefile. # To change the values of `make' variables: instead of editing Makefiles, # (1) if the variable is set in `config.status', edit `config.status' # (which will cause the Makefiles to be regenerated when you run `make'); # (2) otherwise, pass the desired values on the `make' command line. $(RECURSIVE_TARGETS): @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ target=`echo $@ | sed s/-recursive//`; \ list='$(SUBDIRS)'; for subdir in $$list; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ dot_seen=yes; \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done; \ if test "$$dot_seen" = "no"; then \ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \ fi; test -z "$$fail" mostlyclean-recursive clean-recursive distclean-recursive \ maintainer-clean-recursive: @failcom='exit 1'; \ for f in x $$MAKEFLAGS; do \ case $$f in \ *=* | --[!k]*);; \ *k*) failcom='fail=yes';; \ esac; \ done; \ dot_seen=no; \ case "$@" in \ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ *) list='$(SUBDIRS)' ;; \ esac; \ rev=''; for subdir in $$list; do \ if test "$$subdir" = "."; then :; else \ rev="$$subdir $$rev"; \ fi; \ done; \ rev="$$rev ."; \ target=`echo $@ | sed s/-recursive//`; \ for subdir in $$rev; do \ echo "Making $$target in $$subdir"; \ if test "$$subdir" = "."; then \ local_target="$$target-am"; \ else \ local_target="$$target"; \ fi; \ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \ || eval $$failcom; \ done && test -z "$$fail" tags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \ done ctags-recursive: list='$(SUBDIRS)'; for subdir in $$list; do \ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \ done ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: tags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \ include_option=--etags-include; \ empty_fix=.; \ else \ include_option=--include; \ empty_fix=; \ fi; \ list='$(SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test ! -f $$subdir/TAGS || \ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \ fi; \ done; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: ctags-recursive $(HEADERS) $(SOURCES) config.h.in $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) config.h.in $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @case `sed 15q $(srcdir)/NEWS` in \ *"$(VERSION)"*) : ;; \ *) \ echo "NEWS not updated; not releasing" 1>&2; \ exit 1;; \ esac $(am__remove_distdir) mkdir $(distdir) $(mkdir_p) $(distdir)/config $(distdir)/po @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done list='$(DIST_SUBDIRS)'; for subdir in $$list; do \ if test "$$subdir" = .; then :; else \ test -d "$(distdir)/$$subdir" \ || $(mkdir_p) "$(distdir)/$$subdir" \ || exit 1; \ distdir=`$(am__cd) $(distdir) && pwd`; \ top_distdir=`$(am__cd) $(top_distdir) && pwd`; \ (cd $$subdir && \ $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$$top_distdir" \ distdir="$$distdir/$$subdir" \ distdir) \ || exit 1; \ fi; \ done $(MAKE) $(AM_MAKEFLAGS) \ top_distdir="$(top_distdir)" distdir="$(distdir)" \ dist-hook -find $(distdir) -type d ! -perm -777 -exec chmod a+rwx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec $(SHELL) $(install_sh) -c -m a+r {} {} \; \ || chmod -R a+r $(distdir) dist-gzip: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz $(am__remove_distdir) dist-bzip2: distdir tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) dist-tarZ: distdir tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z $(am__remove_distdir) dist-shar: distdir shar $(distdir) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).shar.gz $(am__remove_distdir) dist-zip: distdir -rm -f $(distdir).zip zip -rq $(distdir).zip $(distdir) $(am__remove_distdir) dist dist-all: distdir tardir=$(distdir) && $(am__tar) | GZIP=$(GZIP_ENV) gzip -c >$(distdir).tar.gz tardir=$(distdir) && $(am__tar) | bzip2 -9 -c >$(distdir).tar.bz2 $(am__remove_distdir) # This target untars the dist file and tries a VPATH configuration. Then # it guarantees that the distribution is self-contained by making another # tarfile. distcheck: dist case '$(DIST_ARCHIVES)' in \ *.tar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).tar.gz | $(am__untar) ;;\ *.tar.bz2*) \ bunzip2 -c $(distdir).tar.bz2 | $(am__untar) ;;\ *.tar.Z*) \ uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ *.shar.gz*) \ GZIP=$(GZIP_ENV) gunzip -c $(distdir).shar.gz | unshar ;;\ *.zip*) \ unzip $(distdir).zip ;;\ esac chmod -R a-w $(distdir); chmod a+w $(distdir) mkdir $(distdir)/_build mkdir $(distdir)/_inst chmod a-w $(distdir) dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ && cd $(distdir)/_build \ && ../configure --srcdir=.. --prefix="$$dc_install_base" \ $(DISTCHECK_CONFIGURE_FLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) \ && $(MAKE) $(AM_MAKEFLAGS) dvi \ && $(MAKE) $(AM_MAKEFLAGS) check \ && $(MAKE) $(AM_MAKEFLAGS) install \ && $(MAKE) $(AM_MAKEFLAGS) installcheck \ && $(MAKE) $(AM_MAKEFLAGS) uninstall \ && $(MAKE) $(AM_MAKEFLAGS) distuninstallcheck_dir="$$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$$dc_destdir") \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" install \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" uninstall \ && $(MAKE) $(AM_MAKEFLAGS) DESTDIR="$$dc_destdir" \ distuninstallcheck_dir="$$dc_destdir" distuninstallcheck; \ } || { rm -rf "$$dc_destdir"; exit 1; }) \ && rm -rf "$$dc_destdir" \ && $(MAKE) $(AM_MAKEFLAGS) dist \ && rm -rf $(DIST_ARCHIVES) \ && $(MAKE) $(AM_MAKEFLAGS) distcleancheck $(am__remove_distdir) @(echo "$(distdir) archives ready for distribution: "; \ list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ sed -e '1{h;s/./=/g;p;x;}' -e '$${p;x;}' distuninstallcheck: @cd $(distuninstallcheck_dir) \ && test `$(distuninstallcheck_listfiles) | wc -l` -le 1 \ || { echo "ERROR: files left after uninstall:" ; \ if test -n "$(DESTDIR)"; then \ echo " (check DESTDIR support)"; \ fi ; \ $(distuninstallcheck_listfiles) ; \ exit 1; } >&2 distcleancheck: distclean @if test '$(srcdir)' = . ; then \ echo "ERROR: distcleancheck can only run from a VPATH build" ; \ exit 1 ; \ fi @test `$(distcleancheck_listfiles) | wc -l` -eq 0 \ || { echo "ERROR: files left in build directory after distclean:" ; \ $(distcleancheck_listfiles) ; \ exit 1; } >&2 check-am: all-am $(MAKE) $(AM_MAKEFLAGS) $(check_PROGRAMS) $(MAKE) $(AM_MAKEFLAGS) check-local check: check-recursive all-am: Makefile $(ANSI2KNR) $(PROGRAMS) $(MANS) $(HEADERS) config.h installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \ test -z "$$dir" || $(mkdir_p) "$$dir"; \ done install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-recursive install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-recursive clean-am: clean-binPROGRAMS clean-checkPROGRAMS clean-generic \ clean-krextra mostlyclean-am distclean: distclean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(DEPDIR) ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-hdr distclean-tags dvi: dvi-recursive dvi-am: info: info-recursive info-am: install-data-am: install-man install-exec-am: install-binPROGRAMS install-exec-local install-info: install-info-recursive install-man: install-man1 installcheck-am: maintainer-clean: maintainer-clean-recursive -rm -f $(am__CONFIG_DISTCLEAN_FILES) -rm -rf $(top_srcdir)/autom4te.cache -rm -rf $(DEPDIR) ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-recursive mostlyclean-am: mostlyclean-compile mostlyclean-generic mostlyclean-kr pdf: pdf-recursive pdf-am: ps: ps-recursive ps-am: uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-man uninstall-info: uninstall-info-recursive uninstall-man: uninstall-man1 .PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \ check-am check-local clean clean-binPROGRAMS \ clean-checkPROGRAMS clean-generic clean-krextra \ clean-recursive ctags ctags-recursive dist dist-all dist-bzip2 \ dist-gzip dist-hook dist-shar dist-tarZ dist-zip distcheck \ distclean distclean-compile distclean-generic distclean-hdr \ distclean-recursive distclean-tags distcleancheck distdir \ distuninstallcheck dvi dvi-am html html-am info info-am \ install install-am install-binPROGRAMS install-data \ install-data-am install-exec install-exec-am \ install-exec-local install-info install-info-am install-man \ install-man1 install-strip installcheck installcheck-am \ installdirs installdirs-am maintainer-clean \ maintainer-clean-generic maintainer-clean-recursive \ mostlyclean mostlyclean-compile mostlyclean-generic \ mostlyclean-kr mostlyclean-recursive pdf pdf-am ps ps-am tags \ tags-recursive uninstall uninstall-am uninstall-binPROGRAMS \ uninstall-info-am uninstall-man uninstall-man1 # Forward targets install-exec-local: @if $(inst_setgid); then \ app=$(DESTDIR)$(bindir)/`echo $(bin_PROGRAMS)|sed '$(transform)'`; \ if chgrp $(inst_group) $$app && chmod g+s $$app; then \ echo "chgrp $(inst_group) $$app && chmod g+s $$app"; \ else \ echo "$$app needs to be owned by group $(inst_group) and setgid;"; \ echo "otherwise the \`-l' option will probably not work."; \ echo "You may need special privileges to complete the installation"; \ echo "of $$app."; \ fi; \ else true; fi # --------------- Local DIST Section # Install the w32 and tests subdirectories # dist-hook: (cd $(srcdir); \ sub=`find w32 tests -follow \( -name CVS -prune -o -name .cvsignore -o -name work -prune \) -o \( -name \*.orig -o -name \*.rej -o -name \*~ -prune \) -o -type f -print`; \ tar chf - $$sub) \ | (cd $(distdir); tar xfBp -) # --------------- Local CHECK Section check-local: check-regression check-loadavg @banner=" Regression PASSED: GNU Make $(VERSION) ($(MAKE_HOST)) built with $(CC) "; \ dashes=`echo "$$banner" | sed s/./=/g`; \ echo; \ echo "$$dashes"; \ echo "$$banner"; \ echo "$$dashes"; \ echo .PHONY: check-loadavg check-regression check-loadavg: loadavg$(EXEEXT) @echo The system uptime program believes the load average to be: -uptime @echo The GNU load average checking code thinks: -./loadavg$(EXEEXT) check-regression: @if test -f "$(srcdir)/tests/run_make_tests"; then \ if $(PERL) -v >/dev/null 2>&1; then \ case `cd $(srcdir); pwd` in `pwd`) : ;; \ *) test -d tests || mkdir tests; \ rm -f srctests; \ if ln -s "$(srcdir)/tests" srctests; then \ for f in run_make_tests run_make_tests.pl test_driver.pl scripts; do \ rm -f tests/$$f; ln -s ../srctests/$$f tests; \ done; fi ;; \ esac; \ echo "cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS)"; \ cd tests && $(PERL) ./run_make_tests.pl -make ../make$(EXEEXT) $(MAKETESTFLAGS); \ else \ echo "Can't find a working Perl ($(PERL)); the test suite requires Perl."; \ fi; \ else \ echo "Can't find the GNU Make test suite ($(srcdir)/tests)."; \ fi # --------------- Maintainer's Section # Tell automake that I haven't forgotten about this file and it will be # created before we build a distribution (see maintMakefile in the CVS # distribution). README: @MAINT_MAKEFILE@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/NEWS0000644000175000017500000012360110416553102015213 0ustar srivastasrivastaGNU make NEWS -*-indented-text-*- History of user-visible changes. 1 April 2006 See the end of this file for copyrights and conditions. All changes mentioned here are more fully described in the GNU make manual, which is contained in this distribution as the file doc/make.texi. See the README file and the GNU make manual for instructions for reporting bugs. Version 3.81 * GNU make is ported to OS/2. * GNU make is ported to MinGW. The MinGW build is only supported by the build_w32.bat batch file; see the file README.W32 for more details. * WARNING: Future backward-incompatibility! Up to and including this release, the '$?' variable does not contain any prerequisite that does not exist, even though that prerequisite might have caused the target to rebuild. Starting with the _next_ release of GNU make, '$?' will contain all prerequisites that caused the target to be considered out of date. See this Savannah bug: http://savannah.gnu.org/bugs/index.php?func=detailitem&item_id=16051 * WARNING: Backward-incompatibility! GNU make now implements a generic "second expansion" feature on the prerequisites of both explicit and implicit (pattern) rules. In order to enable this feature, the special target '.SECONDEXPANSION' must be defined before the first target which takes advantage of it. If this feature is enabled then after all rules have been parsed the prerequisites are expanded again, this time with all the automatic variables in scope. This means that in addition to using standard SysV $$@ in prerequisites lists, you can also use complex functions such as $$(notdir $$@) etc. This behavior applies to implicit rules, as well, where the second expansion occurs when the rule is matched. However, this means that when '.SECONDEXPANSION' is enabled you must double-quote any "$" in your filenames; instead of "foo: boo$$bar" you now must write "foo: foo$$$$bar". Note that the SysV $$@ etc. feature, which used to be available by default, is now ONLY available when the .SECONDEXPANSION target is defined. If your makefiles take advantage of this SysV feature you will need to update them. * WARNING: Backward-incompatibility! In order to comply with POSIX, the way in which GNU make processes backslash-newline sequences in command strings has changed. If your makefiles use backslash-newline sequences inside of single-quoted strings in command scripts you will be impacted by this change. See the GNU make manual subsection "Splitting Command Lines" (node "Splitting Lines"), in section "Command Syntax", chapter "Writing the Commands in Rules", for details. * WARNING: Backward-incompatibility! Some previous versions of GNU make had a bug where "#" in a function invocation such as $(shell ...) was treated as a make comment. A workaround was to escape these with backslashes. This bug has been fixed: if your makefile uses "\#" in a function invocation the backslash is now preserved, so you'll need to remove it. * New command-line option: -L (--check-symlink-times). On systems that support symbolic links, if this option is given then GNU make will use the most recent modification time of any symbolic links that are used to resolve target files. The default behavior remains as it always has: use the modification time of the actual target file only. * The "else" conditional line can now be followed by any other valid conditional on the same line: this does not increase the depth of the conditional nesting, so only one "endif" is required to close the conditional. * All pattern-specific variables that match a given target are now used (previously only the first match was used). * Target-specific variables can be marked as exportable using the "export" keyword. * In a recursive $(call ...) context, any extra arguments from the outer call are now masked in the context of the inner call. * Implemented a solution for the "thundering herd" problem with "-j -l". This version of GNU make uses an algorithm suggested by Thomas Riedl to track the number of jobs started in the last second and artificially adjust GNU make's view of the system's load average accordingly. * New special variables available in this release: - .INCLUDE_DIRS: Expands to a list of directories that make searches for included makefiles. - .FEATURES: Contains a list of special features available in this version of GNU make. - .DEFAULT_GOAL: Set the name of the default goal make will use if no goals are provided on the command line. - MAKE_RESTARTS: If set, then this is the number of times this instance of make has been restarted (see "How Makefiles Are Remade" in the manual). - New automatic variable: $| (added in 3.80, actually): contains all the order-only prerequisites defined for the target. * New functions available in this release: - $(lastword ...) returns the last word in the list. This gives identical results as $(word $(words ...) ...), but is much faster. - $(abspath ...) returns the absolute path (all "." and ".." directories resolved, and any duplicate "/" characters removed) for each path provided. - $(realpath ...) returns the canonical pathname for each path provided. The canonical pathname is the absolute pathname, with all symbolic links resolved as well. - $(info ...) prints its arguments to stdout. No makefile name or line number info, etc. is printed. - $(flavor ...) returns the flavor of a variable. - $(or ...) provides a short-circuiting OR conditional: each argument is expanded. The first true (non-empty) argument is returned; no further arguments are expanded. Expands to empty if there are no true arguments. - $(and ...) provides a short-circuiting AND conditional: each argument is expanded. The first false (empty) argument is returned; no further arguments are expanded. Expands to the last argument if all arguments are true. * Changes made for POSIX compatibility: - Only touch targets (under -t) if they have at least one command. - Setting the SHELL make variable does NOT change the value of the SHELL environment variable given to programs invoked by make. As an enhancement to POSIX, if you export the make variable SHELL then it will be set in the environment, just as before. * On MS Windows systems, explicitly setting SHELL to a pathname ending in "cmd" or "cmd.exe" (case-insensitive) will force GNU make to use the DOS command interpreter in batch mode even if a UNIX-like shell could be found on the system. * On VMS there is now support for case-sensitive filesystems such as ODS5. See the readme.vms file for information. * Parallel builds (-jN) no longer require a working Bourne shell on Windows platforms. They work even with the stock Windows shells, such as cmd.exe and command.com. * Updated to autoconf 2.59, automake 1.9.5, and gettext 0.14.1. Users should not be impacted. * New translations for Swedish, Chinese (simplified), Ukrainian, Belarusian, Finnish, Kinyarwandan, and Irish. Many updated translations. A complete list of bugs fixed in this version is available here: http://savannah.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=103 Version 3.80 * A new feature exists: order-only prerequisites. These prerequisites affect the order in which targets are built, but they do not impact the rebuild/no-rebuild decision of their dependents. That is to say, they allow you to require target B be built before target A, without requiring that target A will always be rebuilt if target B is updated. Patch for this feature provided by Greg McGary . * For compatibility with SysV make, GNU make now supports the peculiar syntax $$@, $$(@D), and $$(@F) in the prerequisites list of a rule. This syntax is only valid within explicit and static pattern rules: it cannot be used in implicit (suffix or pattern) rules. Edouard G. Parmelan provided a patch implementing this feature; however, I decided to implement it in a different way. * The argument to the "ifdef" conditional is now expanded before it's tested, so it can be a constructed variable name. Similarly, the arguments to "export" (when not used in a variable definition context) and "unexport" are also now expanded. * A new function is defined: $(value ...). The argument to this function is the _name_ of a variable. The result of the function is the value of the variable, without having been expanded. * A new function is defined: $(eval ...). The arguments to this function should expand to makefile commands, which will then be evaluated as if they had appeared in the makefile. In combination with define/endef multiline variable definitions this is an extremely powerful capability. The $(value ...) function is also sometimes useful here. * A new built-in variable is defined, $(MAKEFILE_LIST). It contains a list of each makefile GNU make has read, or started to read, in the order in which they were encountered. So, the last filename in the list when a makefile is just being read (before any includes) is the name of the current makefile. * A new built-in variable is defined: $(.VARIABLES). When it is expanded it returns a complete list of variable names defined by all makefiles at that moment. * A new command-line option is defined, -B or --always-make. If specified GNU make will consider all targets out-of-date even if they would otherwise not be. * The arguments to $(call ...) functions were being stored in $1, $2, etc. as recursive variables, even though they are fully expanded before assignment. This means that escaped dollar signs ($$ etc.) were not behaving properly. Now the arguments are stored as simple variables. This may mean that if you added extra escaping to your $(call ...) function arguments you will need to undo it now. * The variable invoked by $(call ...) can now be recursive: unlike other variables it can reference itself and this will not produce an error when it is used as the first argument to $(call ...) (but only then). * New pseudo-target .LOW_RESOLUTION_TIME, superseding the configure option --disable-nsec-timestamps. You might need this if your build process depends on tools like "cp -p" preserving time stamps, since "cp -p" (right now) doesn't preserve the subsecond portion of a time stamp. * Updated translations for French, Galician, German, Japanese, Korean, and Russian. New translations for Croatian, Danish, Hebrew, and Turkish. * Updated internationalization support to Gettext 0.11.5. GNU make now uses Gettext's "external" feature, and does not include any internationalization code itself. Configure will search your system for an existing implementation of GNU Gettext (only GNU Gettext is acceptable) and use it if it exists. If not, NLS will be disabled. See ABOUT-NLS for more information. * Updated to autoconf 2.54 and automake 1.7. Users should not be impacted. A complete list of bugs fixed in this version is available here: http://savannah.gnu.org/bugs/index.php?group=make&report_id=111&fix_release_id=102 Version 3.79.1 * .SECONDARY with no prerequisites now prevents any target from being removed because make thinks it's an intermediate file, not just those listed in the makefile. * New configure option --disable-nsec-timestamps, but this was superseded in later versions by the .LOW_RESOLUTION_TIME pseudo-target. Version 3.79 * GNU make optionally supports internationalization and locales via the GNU gettext (or local gettext if suitable) package. See the ABOUT-NLS file for more information on configuring GNU make for NLS. * Previously, GNU make quoted variables such as MAKEFLAGS and MAKEOVERRIDES for proper parsing by the shell. This allowed them to be used within make build scripts. However, using them there is not proper behavior: they are meant to be passed to subshells via the environment. Unfortunately the values were not quoted properly to be passed through the environment. This meant that make didn't properly pass some types of command line values to submakes. With this version we change that behavior: now these variables are quoted properly for passing through the environment, which is the correct way to do it. If you previously used these variables explicitly within a make rule you may need to re-examine your use for correctness given this change. * A new pseudo-target .NOTPARALLEL is available. If defined, the current makefile is run serially regardless of the value of -j. However, submakes are still eligible for parallel execution. * The --debug option has changed: it now allows optional flags controlling the amount and type of debugging output. By default only a minimal amount information is generated, displaying the names of "normal" targets (not makefiles) that were deemed out of date and in need of being rebuilt. Note that the -d option behaves as before: it takes no arguments and all debugging information is generated. * The `-p' (print database) output now includes filename and linenumber information for variable definitions, to aid debugging. * The wordlist function no longer reverses its arguments if the "start" value is greater than the "end" value. If that's true, nothing is returned. * Hartmut Becker provided many updates for the VMS port of GNU make. See the readme.vms file for more details. Version 3.78 * Two new functions, $(error ...) and $(warning ...) are available. The former will cause make to fail and exit immediately upon expansion of the function, with the text provided as the error message. The latter causes the text provided to be printed as a warning message, but make proceeds normally. * A new function $(call ...) is available. This allows users to create their own parameterized macros and invoke them later. Original implementation of this function was provided by Han-Wen Nienhuys . * A new function $(if ...) is available. It provides if-then-else capabilities in a builtin function. Original implementation of this function was provided by Han-Wen Nienhuys . * Make defines a new variable, .LIBPATTERNS. This variable controls how library dependency expansion (dependencies like ``-lfoo'') is performed. * Make accepts CRLF sequences as well as traditional LF, for compatibility with makefiles created on other operating systems. * Make accepts a new option: -R, or --no-builtin-variables. This option disables the definition of the rule-specific builtin variables (CC, LD, AR, etc.). Specifying this option forces -r (--no-builtin-rules) as well. * A "job server" feature, suggested by Howard Chu . On systems that support POSIX pipe(2) semantics, GNU make can now pass -jN options to submakes rather than forcing them all to use -j1. The top make and all its sub-make processes use a pipe to communicate with each other to ensure that no more than N jobs are started across all makes. To get the old behavior of -j back, you can configure make with the --disable-job-server option. * The confusing term "dependency" has been replaced by the more accurate and standard term "prerequisite", both in the manual and in all GNU make output. * GNU make supports the "big archive" library format introduced in AIX 4.3. * GNU make supports large files on AIX, HP-UX, and IRIX. These changes were provided by Paul Eggert . (Large file support for Solaris and Linux was introduced in 3.77, but the configuration had issues: these have also been resolved). * The Windows 95/98/NT (W32) version of GNU make now has native support for the Cygnus Cygwin release B20.1 shell (bash). * The GNU make regression test suite, long available separately "under the table", has been integrated into the release. You can invoke it by running "make check" in the distribution. Note that it requires Perl (either Perl 4 or Perl 5) to run. Version 3.77 * Implement BSD make's "?=" variable assignment operator. The variable is assigned the specified value only if that variable is not already defined. * Make defines a new variable, "CURDIR", to contain the current working directory (after the -C option, if any, has been processed). Modifying this variable has no effect on the operation of make. * Make defines a new default RCS rule, for new-style master file storage: ``% :: RCS/%'' (note no ``,v'' suffix). Make defines new default rules for DOS-style C++ file naming conventions, with ``.cpp'' suffixes. All the same rules as for ``.cc'' and ``.C'' suffixes are provided, along with LINK.cpp and COMPILE.cpp macros (which default to the same value as LINK.cc and COMPILE.cc). Note CPPFLAGS is still C preprocessor flags! You should use CXXFLAGS to change C++ compiler flags. * A new feature, "target-specific variable values", has been added. This is a large change so please see the appropriate sections of the manual for full details. Briefly, syntax like this: TARGET: VARIABLE = VALUE defines VARIABLE as VALUE within the context of TARGET. This is similar to SunOS make's "TARGET := VARIABLE = VALUE" feature. Note that the assignment may be of any type, not just recursive, and that the override keyword is available. COMPATIBILITY: This new syntax means that if you have any rules where the first or second dependency has an equal sign (=) in its name, you'll have to escape them with a backslash: "foo : bar\=baz". Further, if you have any dependencies which already contain "\=", you'll have to escape both of them: "foo : bar\\\=baz". * A new appendix listing the most common error and warning messages generated by GNU make, with some explanation, has been added to the GNU make User's Manual. * Updates to the GNU make Customs library support (see README.customs). * Updates to the Windows 95/NT port from Rob Tulloh (see README.W32), and to the DOS port from Eli Zaretski (see README.DOS). Version 3.76.1 * Small (but serious) bug fix. Quick rollout to get into the GNU source CD. Version 3.76 * GNU make now uses automake to control Makefile.in generation. This should make it more consistent with the GNU standards. * VPATH functionality has been changed to incorporate the VPATH+ patch, previously maintained by Paul Smith . See the manual. * Make defines a new variable, `MAKECMDGOALS', to contain the goals that were specified on the command line, if any. Modifying this variable has no effect on the operation of make. * A new function, `$(wordlist S,E,TEXT)', is available: it returns a list of words from number S to number E (inclusive) of TEXT. * Instead of an error, detection of future modification times gives a warning and continues. The warning is repeated just before GNU make exits, so it is less likely to be lost. * Fix the $(basename) and $(suffix) functions so they only operate on the last filename, not the entire string: Command Old Result New Result ------- ---------- ---------- $(basename a.b) a a $(basename a.b/c) a a.b/c $(suffix a.b) b b $(suffix a.b/c) b/c * The $(strip) function now removes newlines as well as TABs and spaces. * The $(shell) function now changes CRLF (\r\n) pairs to a space as well as newlines (\n). * Updates to the Windows 95/NT port from Rob Tulloh (see README.W32). * Eli Zaretskii has updated the port to 32-bit protected mode on MSDOS and MS-Windows, building with the DJGPP v2 port of GNU C/C++ compiler and utilities. See README.DOS for details, and direct all questions concerning this port to Eli Zaretskii or DJ Delorie . * John W. Eaton has updated the VMS port to support libraries and VPATH. Version 3.75 * The directory messages printed by `-w' and implicitly in sub-makes, are now omitted if Make runs no commands and has no other messages to print. * Make now detects files that for whatever reason have modification times in the future and gives an error. Files with such impossible timestamps can result from unsynchronized clocks, or archived distributions containing bogus timestamps; they confuse Make's dependency engine thoroughly. * The new directive `sinclude' is now recognized as another name for `-include', for compatibility with some other Makes. * Aaron Digulla has contributed a port to AmigaDOS. See README.Amiga for details, and direct all Amiga-related questions to . * Rob Tulloh of Tivoli Systems has contributed a port to Windows NT or 95. See README.W32 for details, and direct all Windows-related questions to . Version 3.73 * Converted to use Autoconf version 2, so `configure' has some new options. See INSTALL for details. * You can now send a SIGUSR1 signal to Make to toggle printing of debugging output enabled by -d, at any time during the run. Version 3.72 * DJ Delorie has ported Make to MS-DOS using the GO32 extender. He is maintaining the DOS port, not the GNU Make maintainer; please direct bugs and questions for DOS to . MS-DOS binaries are available for FTP from ftp.simtel.net in /pub/simtelnet/gnu/djgpp/. * The `MAKEFLAGS' variable (in the environment or in a makefile) can now contain variable definitions itself; these are treated just like command-line variable definitions. Make will automatically insert any variable definitions from the environment value of `MAKEFLAGS' or from the command line, into the `MAKEFLAGS' value exported to children. The `MAKEOVERRIDES' variable previously included in the value of `$(MAKE)' for sub-makes is now included in `MAKEFLAGS' instead. As before, you can reset `MAKEOVERRIDES' in your makefile to avoid putting all the variables in the environment when its size is limited. * If `.DELETE_ON_ERROR' appears as a target, Make will delete the target of a rule if it has changed when its commands exit with a nonzero status, just as when the commands get a signal. * The automatic variable `$+' is new. It lists all the dependencies like `$^', but preserves duplicates listed in the makefile. This is useful for linking rules, where library files sometimes need to be listed twice in the link order. * You can now specify the `.IGNORE' and `.SILENT' special targets with dependencies to limit their effects to those files. If a file appears as a dependency of `.IGNORE', then errors will be ignored while running the commands to update that file. Likewise if a file appears as a dependency of `.SILENT', then the commands to update that file will not be printed before they are run. (This change was made to conform to POSIX.2.) Version 3.71 * The automatic variables `$(@D)', `$(%D)', `$(*D)', `$(. Please see the section of the GNU make manual entitled `Problems and Bugs' for information on submitting useful and complete bug reports. You can also use the online bug tracking system in the Savannah GNU Make project to submit new problem reports or search for existing ones: http://savannah.gnu.org/bugs/?group=make If you need help using GNU make, try these forums: help-make@gnu.org help-utils@gnu.org news:gnu.utils.help news:gnu.utils.bug http://savannah.gnu.org/support/?group=make You may also find interesting patches to GNU Make available here: http://savannah.gnu.org/patch/?group=make Note these patches are provided by our users as a service and we make no statements regarding their correctness. Please contact the authors directly if you have a problem or suggestion for a patch available on this page. CVS Access ---------- The GNU make source repository is available via anonymous CVS from the GNU Subversions CVS server; look here for details: http://savannah.gnu.org/cvs/?group=make Please note: you won't be able to build GNU make from CVS without installing appropriate maintainer's tools, such as GNU m4, automake, autoconf, Perl, GNU make, and GCC. See the README.cvs file for hints on how to build GNU make once these tools are available. We make no guarantees about the contents or quality of the latest code in the CVS repository: it is not unheard of for code that is known to be broken to be checked in. Use at your own risk. System-specific Notes --------------------- It has been reported that the XLC 1.2 compiler on AIX 3.2 is buggy such that if you compile make with `cc -O' on AIX 3.2, it will not work correctly. It is said that using `cc' without `-O' does work. The standard /bin/sh on SunOS 4.1.3_U1 and 4.1.4 is broken and cannot be used to configure GNU make. Please install a different shell such as bash or pdksh in order to run "configure". See this message for more information: http://mail.gnu.org/archive/html/bug-autoconf/2003-10/msg00190.html One area that is often a problem in configuration and porting is the code to check the system's current load average. To make it easier to test and debug this code, you can do `make check-loadavg' to see if it works properly on your system. (You must run `configure' beforehand, but you need not build Make itself to run this test.) Another potential source of porting problems is the support for large files (LFS) in configure for those operating systems that provide it. Please report any bugs that you find in this area. If you run into difficulties, then as a workaround you should be able to disable LFS by adding the `--disable-largefile' option to the `configure' script. On systems that support micro- and nano-second timestamp values and where stat(2) provides this information, GNU make will use it when comparing timestamps to get the most accurate possible result. However, note that many current implementations of tools that *set* timestamps do not preserve micro- or nano-second granularity. This means that "cp -p" and other similar tools (tar, etc.) may not exactly duplicate timestamps with micro- and nano-second granularity on some systems. If your build system contains rules that depend on proper behavior of tools like "cp -p", you should consider using the .LOW_RESOLUTION_TIME pseudo-target to force make to treat them properly. See the manual for details. Ports ----- - See README.customs for details on integrating GNU make with the Customs distributed build environment from the Pmake distribution. - See readme.vms for details about GNU Make on OpenVMS. - See README.Amiga for details about GNU Make on AmigaDOS. - See README.W32 for details about GNU Make on Windows NT, 95, or 98. - See README.DOS for compilation instructions on MS-DOS and MS-Windows using DJGPP tools. A precompiled binary of the MSDOS port of GNU Make is available as part of DJGPP; see the WWW page http://www.delorie.com/djgpp/ for more information. Please note there are two _separate_ ports of GNU make for Microsoft systems: a native Windows tool built with (for example) MSVC or Cygwin, and a DOS-based tool built with DJGPP. Please be sure you are looking at the right README! ------------------------------------------------------------------------------- Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/README.Amiga0000644000175000017500000000534410416553102016414 0ustar srivastasrivastaShort: Port of GNU make with SAS/C (no ixemul.library required) Author: GNU, Amiga port by Aaron "Optimizer" Digulla Uploader: Aaron "Optimizer" Digulla (digulla@fh-konstanz.de) Type: dev/c This is a pure Amiga port of GNU make. It needs no extra libraries or anything. It has the following features (in addition to any features of GNU make): - Runs Amiga-Commands with SystemTags() (Execute) - Can run multi-line statements - Allows to use Device-Names in targets: c:make : make.o is ok. To distinguish between device-names and target : or ::, MAKE looks for spaces. If there are any around :, it's taken as a target delimiter, if there are none, it's taken as the name of a device. Note that "make:make.o" tries to create "make.o" on the device "make:". - Replaces @@ by a newline in any command line: if exists make @@\ delete make.bak quiet @@\ rename make make.bak @@\ endif @@\ $(CC) Link Make.o To make works. Note that the @@ must stand alone (ie. "make@@\" is illegal). Also be carefull that there is a space after the "\" (ie, at the beginning of the next line). - Can be made resident to save space and time - Amiga specific wildcards can be used in $(wildcard ...) BUGS: - The line dummy.h : src/*.c tries to make dummy.h from "src/*.c" (ie. no wildcard-expansion takes place). You have to use "$(wildcard src/*.c)" instead. COMPILING FROM SCRATCH ---------------------- To recompile, you need SAS/C 6.51. make itself is not neccessary, there is an smakefile. 1. Copy config.ami to config.h 2. If you use make to compie, copy Makefile.ami to Makefile and glob/Makefile.ami to glob/Makefile. Copy make into the current directory. 3. Run smake/make INSTALLATION Copy make somewhere in your search path (eg. sc:c or sc:bin). If you plan to use recursive makes, install make resident: Resident make Add ------------------------------------------------------------------------------- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/README.DOS0000444000175000017500000003714510416553102016025 0ustar srivastasrivastaPort of GNU Make to 32-bit protected mode on MSDOS and MS-Windows. Builds with DJGPP v2 port of GNU C/C++ compiler and utilities. New (since 3.74) DOS-specific features: 1. Supports long filenames when run from DOS box on Windows 9x. 2. Supports both stock DOS COMMAND.COM and Unix-style shells (details in ``Notes'' below). 3. Supports DOS drive letters in dependencies and pattern rules. 4. Better support for DOS-style backslashes in pathnames (but see ``Notes'' below). 5. The $(shell) built-in can run arbitrary complex commands, including pipes and redirection, even when COMMAND.COM is your shell. 6. Can be built without floating-point code (see below). 7. Supports signals in child programs and restores the original directory if the child was interrupted. 8. Can be built without (a previous version of) Make. 9. The build process requires only standard tools. (Optional targets like "install:" and "clean:" still need additional programs, though, see below.) 10. Beginning with v3.78, the test suite works in the DJGPP environment (requires Perl and auxiliary tools; see below). To install a binary distribution: Simply unzip the makNNNb.zip file (where NNN is the version number) preserving the directory structure (-d switch if you use PKUNZIP). If you are installing Make on Windows 9X or Windows 2000, use an unzip program that supports long filenames in zip files. After unzipping, make sure the directory with make.exe is on your PATH, and that's all you need to use Make. To build from sources: 1. Unzip the archive, preserving the directory structure (-d switch if you use PKUNZIP). If you build Make on Windows 9X or Windows 2000, use an unzip program that supports long filenames in zip files. If you are unpacking an official GNU source distribution, use either DJTAR (which is part of the DJGPP development environment), or the DJGPP port of GNU Tar. 2. Invoke the `configure.bat' batch file. If you are building Make in-place, i.e. in the same directory where its sources are kept, just type "configure.bat" and press [Enter]. Otherwise, you need to supply the path to the source directory as an argument to the batch file, like this: c:\djgpp\gnu\make-3.81\configure.bat c:/djgpp/gnu/make-3.81 Note the forward slashes in the source path argument: you MUST use them here. 3. If configure.bat doesn't find a working Make, it will suggest to use the `dosbuild.bat' batch file to build Make. Either do as it suggests or install another Make program (a pre-compiled binary should be available from the usual DJGPP sites) and rerun configure.bat. 4. If you will need to run Make on machines without an FPU, you might consider building a version of Make which doesn't issue floating-point instructions (they don't help much on MSDOS anyway). To this end, edit the Makefile created by configure.bat and add -DNO_FLOAT to the value of CPPFLAGS. 5. Invoke Make. If you are building from outside of the source directory, you need to tell Make where the sources are, like this: make srcdir=c:/djgpp/gnu/make-3.81 (configure.bat will tell you this when it finishes). You MUST use a full, not relative, name of the source directory here, or else Make might fail. 6. After Make finishes, if you have a Unix-style shell installed, you can use the `install' target to install the package. You will also need GNU Fileutils and GNU Sed for this (they should be available from the DJGPP sites). By default, GNU make will install into your DJGPP installation area. If you wish to use a different directory, override the DESTDIR variable when invoking "make install", like this: make install DESTDIR=c:/other/dir This causes the make executable to be placed in c:/other/dir/bin, the man pages in c:/other/dir/man, etc. Without a Unix-style shell, you will have to install programs and the docs manually. Copy make.exe to a directory on your PATH, make.i* info files to your Info directory, and update the file `dir' in your Info directory by adding the following item to the main menu: * Make: (make.info). The GNU make utility. If you have the `install-info' program (from the GNU Texinfo package), it will do that for you if you invoke it like this: install-info --info-dir=c:/djgpp/info c:/djgpp/info/make.info (If your Info directory is other than C:\DJGPP\INFO, change this command accordingly.) 7. The `clean' targets also require Unix-style shell, and GNU Sed and `rm' programs (the latter from Fileutils). 8. To run the test suite, type "make check". This requires a Unix shell (I used the DJGPP port of Bash 2.03), Perl, Sed, Fileutils and Sh-utils. Notes: ----- 1. The shell issue. This is probably the most significant improvement, first introduced in the port of GNU Make 3.75. The original behavior of GNU Make is to invoke commands directly, as long as they don't include characters special to the shell or internal shell commands, because that is faster. When shell features like redirection or filename wildcards are involved, Make calls the shell. This port supports both DOS shells (the stock COMMAND.COM and its 4DOS/NDOS replacements), and Unix-style shells (tested with the venerable Stewartson's `ms_sh' 2.3 and the DJGPP port of `bash' by Daisuke Aoyama ). When the $SHELL variable points to a Unix-style shell, Make works just like you'd expect on Unix, calling the shell for any command that involves characters special to the shell or internal shell commands. The only difference is that, since there is no standard way to pass command lines longer than the infamous DOS 126-character limit, this port of Make writes the command line to a temporary disk file and then invokes the shell on that file. If $SHELL points to a DOS-style shell, however, Make will not call it automatically, as it does with Unix shells. Stock COMMAND.COM is too dumb and would unnecessarily limit the functionality of Make. For example, you would not be able to use long command lines in commands that use redirection or pipes. Therefore, when presented with a DOS shell, this port of Make will emulate most of the shell functionality, like redirection and pipes, and shall only call the shell when a batch file or a command internal to the shell is invoked. (Even when a command is an internal shell command, Make will first search the $PATH for it, so that if a Makefile calls `mkdir', you can install, say, a port of GNU `mkdir' and have it called in that case.) The key to all this is the extended functionality of `spawn' and `system' functions from the DJGPP library; this port just calls `system' where it would invoke the shell on Unix. The most important aspect of these functions is that they use a special mechanism to pass long (up to 16KB) command lines to DJGPP programs. In addition, `system' emulates some internal commands, like `cd' (so that you can now use forward slashes with it, and can also change the drive if the directory is on another drive). Another aspect worth mentioning is that you can call Unix shell scripts directly, provided that the shell whose name is mentioned on the first line of the script is installed anywhere along the $PATH. It is impossible to tell here everything about these functions; refer to the DJGPP library reference for more details. The $(shell) built-in is implemented in this port by calling `popen'. Since `popen' calls `system', the above considerations are valid for $(shell) as well. In particular, you can put arbitrary complex commands, including pipes and redirection, inside $(shell), which is in many cases a valid substitute for the Unix-style command substitution (`command`) feature. 2. "SHELL=/bin/sh" -- or is it? Many Unix Makefiles include a line which sets the SHELL, for those versions of Make which don't have this as the default. Since many DOS systems don't have `sh' installed (in fact, most of them don't even have a `/bin' directory), this port takes such directives with a grain of salt. It will only honor such a directive if the basename of the shell name (like `sh' in the above example) can indeed be found in the directory that is mentioned in the SHELL= line (`/bin' in the above example), or in the current working directory, or anywhere on the $PATH (in that order). If the basename doesn't include a filename extension, Make will look for any known extension that indicates an executable file (.exe, .com, .bat, .btm, .sh, and even .sed and .pl). If any such file is found, then $SHELL will be defined to the exact pathname of that file, and that shell will hence be used for the rest of processing. But if the named shell is *not* found, the line which sets it will be effectively ignored, leaving the value of $SHELL as it was before. Since a lot of decisions that this port makes depend on the gender of the shell, I feel it doesn't make any sense to tailor Make's behavior to a shell which is nowhere to be found. Note that the above special handling of "SHELL=" only happens for Makefiles; if you set $SHELL in the environment or on the Make command line, you are expected to give the complete pathname of the shell, including the filename extension. The default value of $SHELL is computed as on Unix (see the Make manual for details), except that if $SHELL is not defined in the environment, $COMSPEC is used. Also, if an environment variable named $MAKESHELL is defined, it takes precedence over both $COMSPEC and $SHELL. Note that, unlike Unix, $SHELL in the environment *is* used to set the shell (since on MSDOS, it's unlikely that the interactive shell will not be suitable for Makefile processing). The bottom line is that you can now write Makefiles where some of the targets require a real (i.e. Unix-like) shell, which will nevertheless work when such shell is not available (provided, of course, that the commands which should always work, don't require such a shell). More important, you can convert Unix Makefiles to MSDOS and leave the line which sets the shell intact, so that people who do have Unixy shell could use it for targets which aren't converted to DOS (like `install' and `uninstall', for example). 3. Default directories. GNU Make knows about standard directories where it searches for library and include files mentioned in the Makefile. Since MSDOS machines don't have standard places for these, this port will search ${DJDIR}/lib and ${DJDIR}/include respectively. $DJDIR is defined automatically by the DJGPP startup code as the root of the DJGPP installation tree (unless you've tampered with the DJGPP.ENV file). This should provide reasonable default values, unless you moved parts of DJGPP to other directories. 4. Letter-case in filenames. If you run Make on Windows 9x, you should be aware of the letter-case issue. Make is internally case-sensitive, but all file operations are case-insensitive on Windows 9x, so e.g. files `FAQ', `faq' and `Faq' all refer to the same file, as far as Windows is concerned. The underlying DJGPP C library functions honor the letter-case of the filenames they get from the OS, except that by default, they down-case 8+3 DOS filenames which are stored in upper case in the directory and would break many Makefiles otherwise. (The details of which filenames are converted to lower case are explained in the DJGPP libc docs, under the `_preserve_fncase' and `_lfn_gen_short_fname' functions, but as a thumb rule, any filename that is stored in upper case in the directory, is a valid DOS 8+3 filename and doesn't include characters invalid on MSDOS FAT filesystems, will be automatically down-cased.) User reports that I have indicate that this default behavior is generally what you'd expect; however, your input is most welcome. In any case, if you hit a situation where you must force Make to get the 8+3 DOS filenames in upper case, set FNCASE=y in the environment or in the Makefile. 5. DOS-style pathnames. There are a lot of places throughout the program sources which make implicit assumptions about the pathname syntax. In particular, the directories are assumed to be separated by `/', and any pathname which doesn't begin with a `/' is assumed to be relative to the current directory. This port attempts to support DOS-style pathnames which might include the drive letter and use backslashes instead of forward slashes. However, this support is not complete; I feel that pursuing this support too far might break some more important features, particularly if you use a Unix-style shell (where a backslash is a quote character). I only consider support of backslashes desirable because some Makefiles invoke non-DJGPP programs which don't understand forward slashes. A notable example of such programs is the standard programs which come with MSDOS. Otherwise, you are advised to stay away from backslashes whenever possible. In particular, filename globbing won't work on pathnames with backslashes, because the GNU `glob' library doesn't support them (backslash is special in filename wildcards, and I didn't want to break that). One feature which *does* work with backslashes is the filename- related built-in functions such as $(dir), $(notdir), etc. Drive letters in pathnames are also fully supported. Bug reports: ----------- Bugs that are clearly related to the MSDOS/DJGPP port should be reported first on the comp.os.msdos.djgpp news group (if you cannot post to Usenet groups, write to the DJGPP mailing list, , which is an email gateway into the above news group). For other bugs, please follow the procedure explained in the "Bugs" chapter of the Info docs. If you don't have an Info reader, look up that chapter in the `make.i1' file with any text browser/editor. Enjoy, Eli Zaretskii ------------------------------------------------------------------------------- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/README.OS20000444000175000017500000001512410416553102015774 0ustar srivastasrivastaPort of GNU make to OS/2. Features of GNU make that do not work under OS/2: - remote job execution - dynamic load balancing Special features of the OS/2 version: Due to the fact that some people might want to use sh syntax in Makefiles while others might want to use OS/2's native shell cmd.exe, GNU make supports both shell types. The following list defines the order that is used to determine the shell: 1. The shell specified by the environment variable MAKESHELL. 2. The shell specified by the SHELL variable within a Makefile. As on Unix, SHELL is NOT taken from the environment. 3. The shell specified by the COMSPEC environment variable. 4. The shell specified by the OS2_SHELL environment variable. 5. If none of the above is defined /bin/sh is used as default. This happens e.g. in the make testsuite. Note: - Points 3 and 4 can be turned off at compile time by adding -DNO_CMD_DEFAULT to the CPPFLAGS. - DOS support is not tested for EMX and therefore might not work. - The UNIXROOT environment variable is supported to find /bin/sh if it is not on the current drive. COMPILATION OF GNU MAKE FOR OS/2: I. ***** SPECIAL OPTIONS ***** - At compile time you can turn off that cmd is used as default shell (but only /bin/sh). Simply set CPPFLAGS="-DNO_CMD_DEFAULT" and make will not use cmd unless you cause it to do so by setting MAKESHELL to cmd or by specifying SHELL=cmd in your Makefile. - At compile time you can set CPPFLAGS="-DNO_CHDIR2" to turn off that GNU make prints drive letters. This is necessary if you want to run the testsuite. II. ***** REQUIREMENTS FOR THE COMPILATION ***** A standard Unix like build environment: - sh compatible shell (ksh, bash, ash, but tested only with pdksh 5.2.14 release 2) If you use pdksh it is recommended to update to 5.2.14 release 2. Older versions may not work! You can get this version at http://www.math.ohio-state.edu/~ilya/software/os2/pdksh-5.2.14-bin-2.zip - GNU file utilities (make sure that install.exe from the file utilities is in front of your PATH before X:\OS2\INSTALL\INSTALL.EXE. I recommend also to change the filename to ginstall.exe instead of install.exe to avoid confusion with X:\OS2\INSTALL\INSTALL.EXE) - GNU shell utilities - GNU text utilities - gawk - grep - sed - GNU make 3.79.1 (special OS/2 patched version) or higher - perl 5.005 or higher - GNU texinfo (you can use 3.1 (gnuinfo.zip), but I recommend 4.0) If you want to recreate the configuration files (developers only!) you need also: GNU m4 1.4, autoconf 2.59, automake 1.8.2 (or compatible) III. ***** COMPILATION AND INSTALLATION ***** a) ** Developers only - Everyone else should skip this section ** To recreate the configuration files use: export EMXSHELL=ksh aclocal -I config automake autoconf autoheader b) Installation into x:/usr Note: Although it is possible to compile make using "./configure", "make", "make install" this is not recommended. In particular, you must ALWAYS use LDFLAGS="-Zstack 0x8000" because the default stack size is far to small and make will not work properly! Recommended environment variables and installation options: export ac_executable_extensions=".exe" export CPPFLAGS="-D__ST_MT_ERRNO__" export CFLAGS="-O2 -Zomf -Zmt" export LDFLAGS="-Zcrtdll -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x8000" export RANLIB="echo" ./configure --prefix=x:/usr --infodir=x:/usr/share/info --mandir=x:/usr/share/man --without-included-gettext make AR=emxomfar make install Note: If you use gcc 2.9.x or higher I recommend to set also LIBS="-lgcc" Note: You can add -DNO_CMD_DEFAULT and -DNO_CHDIR2 to CPPFLAGS. See section I. for details. IV. ***** NLS support ***** GNU make has NLS (National Language Support), with the following caveats: a) It will only work with GNU gettext, and b) GNU gettext support is not included in the GNU make package. Therefore, if you wish to enable the internationalization features of GNU make you must install GNU gettext on your system before configuring GNU make. You can choose the languages to be installed. To install support for English, German and French only enter: export LINGUAS="en de fr" If you don't specify LINGUAS all languages are installed. If you don't want NLS support (English only) use the option --disable-nls for the configure script. Note if GNU gettext is not installed then NLS will not be enabled regardless of this flag. V. ***** Running the make test suite ***** To run the included make test suite you have to set CPPFLAGS="-D__ST_MT_ERRNO__ -DNO_CMD_DEFAULT -DNO_CHDIR2" before you compile make. This is due to some restrictions of the testsuite itself. -DNO_CMD_DEFAULT causes make to use /bin/sh as default shell in every case. Normally you could simply set MAKESHELL="/bin/sh" to do this but the testsuite ignores the environment. -DNO_CHDIR2 causes make not to use drive letters for directory names (i.e. _chdir2() and _getcwd2() are NOT used). The testsuite interpretes the whole output of make, especially statements like make[1]: Entering directory `C:/somewhere/make-3.79.1/tests' where the testsuite does not expect the drive letter. This would be interpreted as an error even if there is none. To run the testsuite do the following: export CPPFLAGS="-D__ST_MT_ERRNO__ -DNO_CMD_DEFAULT -DNO_CHDIR2" export CFLAGS="-Zomf -O2 -Zmt" export LDFLAGS="-Zcrtdll -s -Zlinker /exepack:2 -Zlinker /pm:vio -Zstack 0x8000" export RANLIB="echo" ./configure --prefix=x:/usr --disable-nls make AR=emxomfar make check All tests should work fine with the exception of "default_names" which is because OS/2 file systems are not case sensitive ("makefile" and "Makefile" specify the same file). ------------------------------------------------------------------------------- Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/README.W320000444000175000017500000002666610416553102015761 0ustar srivastasrivastaThis version of GNU make has been tested on Microsoft Windows 2000/XP/2003. It has also been used on Windows 95/98/NT, and on OS/2. It builds natively with MSVC 2.x, 4.x, 5.x, 6.x, and 2003 as well as .NET 7.x and .NET 2003. It builds with the MinGW port of GCC 3.x (tested with GCC 3.4.2). The Windows 32-bit port of GNU make is maintained jointly by various people. It was originally made by Rob Tulloh. Do this first, regardless of the build method you choose: --------------------------------------------------------- 1. At the Windows command prompt run: if not exist NMakefile copy NMakefile.template NMakefile if not exist config.h copy config.h.W32 config.h Then edit config.h to your liking (especially the few shell-related defines near the end, or HAVE_CASE_INSENSITIVE_FS which corresponds to './configure --enable-case-insensitive-file-system'). Using make_msvc_net2003.vcproj ------------------------------ 2. Open make_msvc_net2003.vcproj in MSVS71 or MSVC71 or any compatible IDE, then build this project as usual. Building with (MinGW-)GCC using build_w32.bat --------------------------------------------- 2. Open a W32 command prompt for your installed (MinGW-)GCC, setup a correct PATH and other environment variables for it, then execute ... build_w32.bat gcc This produces gnumake.exe in the current directory. Building with (MSVC++-)cl using build_w32.bat or NMakefile ---------------------------------------------------------- 2. Open a W32 command prompt for your installed (MSVC++-)cl, setup a correct PATH and other environment variables for it (usually via executing vcvars32.bat or vsvars32.bat from the cl-installation, e.g. "%VS71COMNTOOLS%vsvars32.bat"; or using a corresponding start menue entry from the cl-installation), then execute EITHER ... build_w32.bat (this produces WinDebug/gnumake.exe and WinRel/gnumake.exe) ... OR ... nmake /f NMakefile (this produces WinDebug/make.exe and WinRel/make.exe). ------------------- -- Notes/Caveats -- ------------------- GNU make on Windows 32-bit platforms: This version of make is ported natively to Windows32 platforms (Windows NT 3.51, Windows NT 4.0, Windows 95, and Windows 98). It does not rely on any 3rd party software or add-on packages for building. The only thing needed is a version of Visual C++, which is the predominant compiler used on Windows32 platforms. Do not confuse this port of GNU make with other Windows32 projects which provide a GNU make binary. These are separate projects and are not connected to this port effort. GNU make and sh.exe: This port prefers you have a working sh.exe somewhere on your system. If you don't have sh.exe, the port falls back to MSDOS mode for launching programs (via a batch file). The MSDOS mode style execution has not been tested that carefully though (The author uses GNU bash as sh.exe). There are very few true ports of Bourne shell for NT right now. There is a version of GNU bash available from Cygnus "Cygwin" porting effort (http://www.cygwin.com/). Other possibilities are the MKS version of sh.exe, or building your own with a package like NutCracker (DataFocus) or Portage (Consensys). Also MinGW includes sh (http://mingw.org/). GNU make and brain-dead shells (BATCH_MODE_ONLY_SHELL): Some versions of Bourne shell do not behave well when invoked as 'sh -c' from CreateProcess(). The main problem is they seem to have a hard time handling quoted strings correctly. This can be circumvented by writing commands to be executed to a batch file and then executing the command by calling 'sh file'. To work around this difficulty, this version of make supports a batch mode. When BATCH_MODE_ONLY_SHELL is defined at compile time, make forces all command lines to be executed via script files instead of by command line. In this mode you must have a working sh.exe in order to use parallel builds (-j). A native Windows32 system with no Bourne shell will also run in batch mode. All command lines will be put into batch files and executed via $(COMSPEC) (%COMSPEC%). Note that parallel builds (-j) require a working Bourne shell; they will not work with COM. GNU make and Cygnus GNU Windows32 tools: Good news! Make now has native support for Cygwin sh. To enable, define the HAVE_CYGWIN_SHELL in config.h and rebuild make from scratch. This version of make tested with B20.1 of Cygwin. Do not define BATCH_MODE_ONLY_SHELL if you use HAVE_CYGWIN_SHELL. GNU make and the MKS shell: There is now semi-official support for the MKS shell. To turn this support on, define HAVE_MKS_SHELL in the config.h.W32 before you build make. Do not define BATCH_MODE_ONLY_SHELL if you turn on HAVE_MKS_SHELL. GNU make handling of drive letters in pathnames (PATH, vpath, VPATH): There is a caveat that should be noted with respect to handling single character pathnames on Windows systems. When colon is used in PATH variables, make tries to be smart about knowing when you are using colon as a separator versus colon as a drive letter. Unfortunately, something as simple as the string 'x:/' could be interpreted 2 ways: (x and /) or (x:/). Make chooses to interpret a letter plus colon (e.g. x:/) as a drive letter pathname. If it is necessary to use single character directories in paths (VPATH, vpath, Path, PATH), the user must do one of two things: a. Use semicolon as the separator to disambiguate colon. For example use 'x;/' if you want to say 'x' and '/' are separate components. b. Qualify the directory name so that there is more than one character in the path(s) used. For example, none of these settings are ambiguous: ./x:./y /some/path/x:/some/path/y x:/some/path/x:x:/some/path/y Please note that you are free to mix colon and semi-colon in the specification of paths. Make is able to figure out the intended result and convert the paths internally to the format needed when interacting with the operating system, providing the path is not within quotes, e.g. "x:/test/test.c". You are encouraged to use colon as the separator character. This should ease the pain of deciding how to handle various path problems which exist between platforms. If colon is used on both Unix and Windows systems, then no ifdef'ing will be necessary in the makefile source. GNU make test suite: I verified all functionality with a slightly modified version of make-test-3.81 (modifications to get test suite to run on Windows NT). All tests pass in an environment that includes sh.exe. Tests were performed on both Windows NT and Windows 95. Building GNU make on Windows NT and Windows 95/98 with Microsoft Visual C: I did not provide a Visual C project file with this port as the project file would not be considered freely distributable (or so I think). It is easy enough to create one, though, if you know how to use Visual C. I build the program statically to avoid problems locating DLL's on machines that may not have MSVC runtime installed. If you prefer, you can change make to build with shared libraries by changing /MT to /MD in the NMakefile (or in build_w32.bat). The program has not been built for non-Intel architectures (yet). I have not tried to build with any other compilers than MSVC. I have heard that this is possible though so don't be afraid to notify me of your successes! Pathnames and white space: Unlike Unix, Windows 95/NT systems encourage pathnames which contain white space (e.g. C:\Program Files\). These sorts of pathnames are legal under Unix too, but are never encouraged. There is at least one place in make (VPATH/vpath handling) where paths containing white space will simply not work. There may be others too. I chose to not try and port make in such a way so that these sorts of paths could be handled. I offer these suggestions as workarounds: 1. Use 8.3 notation. i.e. "x:/long~1/", which is actually "x:\longpathtest". Type "dir /x" to view these filenames within the cmd.exe shell. 2. Rename the directory so it does not contain white space. If you are unhappy with this choice, this is free software and you are free to take a crack at making this work. The code in w32/pathstuff.c and vpath.c would be the places to start. Pathnames and Case insensitivity: Unlike Unix, Windows 95/NT systems are case insensitive but case preserving. For example if you tell the file system to create a file named "Target", it will preserve the case. Subsequent access to the file with other case permutations will succeed (i.e. opening a file named "target" or "TARGET" will open the file "Target"). By default, GNU make retains its case sensitivity when comparing target names and existing files or directories. It can be configured, however, into a case preserving and case insensitive mode by adding a define for HAVE_CASE_INSENSITIVE_FS to config.h.W32. For example, the following makefile will create a file named Target in the directory subdir which will subsequently be used to satisfy the dependency of SUBDIR/DepTarget on SubDir/TARGET. Without HAVE_CASE_INSENSITIVE_FS configured, the dependency link will not be made: subdir/Target: touch $@ SUBDIR/DepTarget: SubDir/TARGET cp $^ $@ Reliance on this behavior also eliminates the ability of GNU make to use case in comparison of matching rules. For example, it is not possible to set up a C++ rule using %.C that is different than a C rule using %.c. GNU make will consider these to be the same rule and will issue a warning. SAMBA/NTFS/VFAT: I have not had any success building the debug version of this package using SAMBA as my file server. The reason seems to be related to the way VC++ 4.0 changes the case name of the pdb filename it is passed on the command line. It seems to change the name always to to lower case. I contend that the VC++ compiler should not change the casename of files that are passed as arguments on the command line. I don't think this was a problem in MSVC 2.x, but I know it is a problem in MSVC 4.x. The package builds fine on VFAT and NTFS filesystems. Most all of the development I have done to date has been using NTFS and long file names. I have not done any considerable work under VFAT. VFAT users may wish to be aware that this port of make does respect case sensitivity. FAT: Version 3.76 added support for FAT filesystems. Make works around some difficulties with stat'ing of files and caching of filenames and directories internally. Bug reports: Please submit bugs via the normal bug reporting mechanism which is described in the GNU make manual and the base README. ------------------------------------------------------------------------------- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/README.customs0000644000175000017500000001101210416553102017060 0ustar srivastasrivasta -*-indented-text-*- GNU make can utilize the Customs library, distributed with Pmake, to provide builds distributed across multiple hosts. In order to utilize this capability, you must first download and build the Customs library. It is contained in the Pmake distribution, which can be obtained at: ftp://ftp.icsi.berkeley.edu/pub/ai/stolcke/software/ This integration was tested (superficially) with Pmake 2.1.33. BUILDING CUSTOMS ---------------- First, build pmake and Customs. You need to build pmake first, because Customs require pmake to build. Unfortunately, this is not trivial; please see the pmake and Customs documentation for details. The best place to look for instructions is in the pmake-2.1.33/INSTALL file. Note that the 2.1.33 Pmake distribution comes with a set of patches to GNU make, distributed in the pmake-2.1.33/etc/gnumake/ directory. These patches are based on GNU make 3.75 (there are patches for earlier versions of GNU make, also). The parts of this patchfile which relate directly to Customs support have already been incorporated into this version of GNU make, so you should _NOT_ apply the patch file. However, there are a few non-Customs specific (as far as I could tell) changes here which are not incorporated (for example, the modification to try expanding -lfoo to libfoo.so). If you rely on these changes you'll need to re-apply them by hand. Install the Customs library and header files according to the documentation. You should also install the man pages (contrary to comments in the documentation, they weren't installed automatically for me; I had to cd to the ``pmake-2.1.33/doc'' directory and run ``pmake install'' there directly). BUILDING GNU MAKE ----------------- Once you've installed Customs, you can build GNU make to use it. When configuring GNU make, merely use the ``--with-customs=DIR'' option. Provide the directory containing the ``lib'' and ``include/customs'' subdirectories as DIR. For example, if you installed the customs library in /usr/local/lib and the headers in /usr/local/include/customs, then you'd pass ``--with-customs=/usr/local'' as an option to configure. Run make (or use build.sh) normally to build GNU make as described in the INSTALL file. See the documentation for Customs for information on starting and configuring Customs. INVOKING CUSTOMS-IZED GNU MAKE ----------------------------- One thing you should be aware of is that the default build environment for Customs requires root permissions. Practically, this means that GNU make must be installed setuid root to use Customs. If you don't want to do this, you can build Customs such that root permissions are not necessary. Andreas Stolcke writes: > pmake, gnumake or any other customs client program is not required to > be suid root if customs was compiled WITHOUT the USE_RESERVED_PORTS > option in customs/config.h. Make sure the "customs" service in > /etc/services is defined accordingly (port 8231 instead of 1001). > Not using USE_RESERVED_PORTS means that a user with programming > skills could impersonate another user by writing a fake customs > client that pretends to be someone other than himself. See the > discussion in etc/SECURITY. PROBLEMS -------- SunOS 4.1.x: The customs/sprite.h header file #includes the header files; this conflicts with GNU make's configuration so you'll get a compile error if you use GCC (or any other ANSI-capable C compiler). I commented out the #include in sprite.h:107: #if defined(sun) || defined(ultrix) || defined(hpux) || defined(sgi) /* #include */ #else YMMV. ------------------------------------------------------------------------------- Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/SCOPTIONS0000644000175000017500000000030310416553102016011 0ustar srivastasrivastaERRORREXX OPTIMIZE NOVERSION OPTIMIZERTIME OPTIMIZERALIAS DEFINE INCLUDEDIR="include:" DEFINE LIBDIR="lib:" DEFINE NO_ALLOCA DEFINE NO_FLOAT DEFINE NO_ARCHIVES IGNORE=161 IGNORE=100 STARTUP=cres make-dfsg-3.81.orig/SMakefile0000444000175000017500000002360110416553102016274 0ustar srivastasrivasta# -*-Makefile-*- for building GNU make with smake # # NOTE: If you have no 'make' program at all to process this makefile, # run 'build.sh' instead. # # Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # # Makefile for GNU Make # # Ultrix 2.2 make doesn't expand the value of VPATH. VPATH = /make-3.81/ # This must repeat the value, because configure will remove `VPATH = .'. srcdir = /make-3.81/ CC = sc RM = delete MAKE = smake CFLAGS = CPPFLAGS = LDFLAGS = # Define these for your system as follows: # -DNO_ARCHIVES To disable `ar' archive support. # -DNO_FLOAT To avoid using floating-point numbers. # -DENUM_BITFIELDS If the compiler isn't GCC but groks enum foo:2. # Some compilers apparently accept this # without complaint but produce losing code, # so beware. # NeXT 1.0a uses an old version of GCC, which required -D__inline=inline. # See also `config.h'. defines = # Which flavor of remote job execution support to use. # The code is found in `remote-$(REMOTE).c'. REMOTE = stub # If you are using the GNU C library, or have the GNU getopt functions in # your C library, you can comment these out. GETOPT = getopt.o getopt1.o GETOPT_SRC = $(srcdir)getopt.c $(srcdir)getopt1.c $(srcdir)getopt.h # If you are using the GNU C library, or have the GNU glob functions in # your C library, you can comment this out. GNU make uses special hooks # into the glob functions to be more efficient (by using make's directory # cache for globbing), so you must use the GNU functions even if your # system's C library has the 1003.2 glob functions already. Also, the glob # functions in the AIX and HPUX C libraries are said to be buggy. GLOB = Lib glob/glob.lib # If your system doesn't have alloca, or the one provided is bad, define this. ALLOCA = alloca.o ALLOCA_SRC = $(srcdir)alloca.c # If your system needs extra libraries loaded in, define them here. # System V probably need -lPW for alloca. HP-UX 7.0's alloca in # libPW.a is broken on HP9000s300 and HP9000s400 machines. Use # alloca.c instead on those machines. LOADLIBES = # Any extra object files your system needs. extras = amiga.o # Common prefix for machine-independent installed files. prefix = # Common prefix for machine-dependent installed files. exec_prefix = # Directory to install `make' in. bindir = sc:c # Directory to find libraries in for `-lXXX'. libdir = lib: # Directory to search by default for included makefiles. includedir = include: # Directory to install the Info files in. infodir = doc: # Directory to install the man page in. mandir = t: # Number to put on the man page filename. manext = 1 # Prefix to put on installed `make' binary file name. binprefix = # Prefix to put on installed `make' man page file name. manprefix = $(binprefix) # Whether or not make needs to be installed setgid. # The value should be either `true' or `false'. # On many systems, the getloadavg function (used to implement the `-l' # switch) will not work unless make is installed setgid kmem. install_setgid = false # Install make setgid to this group so it can read /dev/kmem. group = sys # Program to install `make'. INSTALL_PROGRAM = copy # Program to install the man page. INSTALL_DATA = copy # Generic install program. INSTALL = copy # Program to format Texinfo source into Info files. MAKEINFO = makeinfo # Program to format Texinfo source into DVI files. TEXI2DVI = texi2dvi # Programs to make tags files. ETAGS = etags -w CTAGS = ctags -w objs = commands.o job.o dir.o file.o misc.o main.o read.o remake.o \ rule.o implicit.o default.o variable.o expand.o function.o \ vpath.o version.o ar.o arscan.o signame.o strcache.o hash.o \ remote-$(REMOTE).o $(GLOB) $(GETOPT) $(ALLOCA) $(extras) srcs = $(srcdir)commands.c $(srcdir)job.c $(srcdir)dir.c \ $(srcdir)file.c $(srcdir)getloadavg.c $(srcdir)misc.c \ $(srcdir)main.c $(srcdir)read.c $(srcdir)remake.c \ $(srcdir)rule.c $(srcdir)implicit.c $(srcdir)default.c \ $(srcdir)variable.c $(srcdir)expand.c $(srcdir)function.c \ $(srcdir)vpath.c $(srcdir)version.c $(srcdir)hash.c \ $(srcdir)remote-$(REMOTE).c \ $(srcdir)ar.c $(srcdir)arscan.c $(srcdir)strcache.c \ $(srcdir)signame.c $(srcdir)signame.h $(GETOPT_SRC) \ $(srcdir)commands.h $(srcdir)dep.h $(srcdir)file.h \ $(srcdir)job.h $(srcdir)make.h $(srcdir)rule.h \ $(srcdir)variable.h $(ALLOCA_SRC) $(srcdir)config.h.in .SUFFIXES: .SUFFIXES: .o .c .h .ps .dvi .info .texinfo all: make info: make.info dvi: make.dvi # Some makes apparently use .PHONY as the default goal if it is before `all'. .PHONY: all check info dvi make.info: make.texinfo $(MAKEINFO) -I$(srcdir) $(srcdir)make.texinfo -o make.info make.dvi: make.texinfo $(TEXI2DVI) $(srcdir)make.texinfo make.ps: make.dvi dvi2ps make.dvi > make.ps make: $(objs) glob/glob.lib $(CC) Link $(LDFLAGS) $(objs) $(LOADLIBES) To make.new -delete quiet make rename make.new make # -I. is needed to find config.h in the build directory. .c.o: $(CC) $(defines) IDir "" IDir $(srcdir)glob \ $(CPPFLAGS) $(CFLAGS) $< $(OUTPUT_OPTION) glob/glob.lib: execute << cd glob smake < tagsrcs = $(srcs) $(srcdir)remote-*.c TAGS: $(tagsrcs) $(ETAGS) $(tagsrcs) tags: $(tagsrcs) $(CTAGS) $(tagsrcs) .PHONY: install installdirs install: copy make sc:c loadavg: loadavg.c config.h $(CC) $(defines) -DTEST -I. -I$(srcdir) $(CFLAGS) $(LDFLAGS) \ loadavg.c $(LOADLIBES) -o $@ clean: glob-clean -$(RM) -f make loadavg *.o core make.dvi distclean: clean glob-realclean -$(RM) -f Makefile config.h config.status build.sh -$(RM) -f config.log config.cache -$(RM) -f TAGS tags -$(RM) -f make.?? make.??s make.log make.toc make.*aux -$(RM) -f loadavg.c realclean: distclean -$(RM) -f make.info* mostlyclean: clean .PHONY: glob-clean glob-realclean glob-clean glob-realclean: execute << cd glob smake $@ < # --------------- DEPENDENCIES # # .deps/alloca.Po # dummy # .deps/ar.Po ar.o ar.o: ar.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h dep.h \ # .deps/arscan.Po arscan.o arscan.o: arscan.c make.h config.h \ getopt.h \ gettext.h \ # .deps/commands.Po commands.o commands.o: commands.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h variable.h \ job.h commands.h # .deps/default.Po default.o default.o: default.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h rule.h \ dep.h job.h commands.h # .deps/dir.Po dir.o dir.o: dir.c make.h config.h \ getopt.h \ gettext.h hash.h \ # .deps/expand.Po expand.o expand.o: expand.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h \ job.h commands.h \ variable.h rule.h # .deps/file.Po file.o file.o: file.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h \ hash.h job.h commands.h \ variable.h debug.h # .deps/function.Po function.o function.o: function.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h dep.h \ job.h commands.h debug.h # .deps/getloadavg.Po # dummy # .deps/getopt.Po getopt.o getopt.o: getopt.c config.h \ # .deps/getopt1.Po getopt1.o getopt1.o: getopt1.c config.h getopt.h \ # .deps/hash.Po hash.o hash.o: hash.c make.h config.h \ getopt.h \ gettext.h hash.h # .deps/implicit.Po implicit.o implicit.o: implicit.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h rule.h dep.h debug.h \ variable.h job.h \ commands.h # .deps/job.Po job.o job.o: job.c make.h config.h \ getopt.h \ gettext.h job.h \ debug.h filedef.h hash.h \ commands.h variable.h \ # .deps/loadavg-getloadavg.Po loadavg-getloadavg.o loadavg-getloadavg.o: getloadavg.c config.h \ make.h \ getopt.h \ gettext.h \ # .deps/main.Po main.o main.o: main.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h variable.h \ job.h commands.h rule.h \ debug.h getopt.h \ # .deps/misc.Po misc.o misc.o: misc.c make.h config.h \ getopt.h \ gettext.h dep.h debug.h # .deps/read.Po read.o read.o: read.c make.h config.h \ getopt.h \ gettext.h \ dep.h filedef.h hash.h job.h \ commands.h variable.h rule.h debug.h \ # .deps/remake.Po remake.o remake.o: remake.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h job.h \ commands.h dep.h \ variable.h debug.h # .deps/remote-cstms.Po # dummy # .deps/remote-stub.Po remote-stub.o remote-stub.o: remote-stub.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h job.h \ commands.h # .deps/rule.Po rule.o rule.o: rule.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h hash.h job.h \ commands.h variable.h \ rule.h # .deps/signame.Po signame.o signame.o: signame.c make.h config.h \ getopt.h \ gettext.h # .deps/strcache.Po strcache.o strcache.o: strcache.c make.h config.h \ getopt.h \ gettext.h hash.h # .deps/variable.Po variable.o variable.o: variable.c make.h config.h \ getopt.h \ gettext.h dep.h filedef.h \ hash.h job.h commands.h \ variable.h rule.h # .deps/version.Po version.o version.o: version.c config.h # .deps/vmsjobs.Po # dummy # .deps/vpath.Po vpath.o vpath.o: vpath.c make.h config.h \ getopt.h \ gettext.h filedef.h hash.h variable.h make-dfsg-3.81.orig/acinclude.m40000644000175000017500000001146610416553102016712 0ustar srivastasrivastadnl acinclude.m4 -- Extra macros needed for GNU make. dnl dnl Automake will incorporate this into its generated aclocal.m4. dnl Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 dnl Free Software Foundation, Inc. dnl This file is part of GNU Make. dnl dnl GNU Make is free software; you can redistribute it and/or modify it dnl under the terms of the GNU General Public License as published by dnl the Free Software Foundation; either version 2, or (at your option) dnl any later version. dnl dnl GNU Make is distributed in the hope that it will be useful, but dnl WITHOUT ANY WARRANTY; without even the implied warranty of dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU dnl General Public License for more details. dnl dnl You should have received a copy of the GNU General Public License dnl along with GNU Make; see the file COPYING. If not, write to the dnl Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, dnl MA 02110-1301 USA. dnl --------------------------------------------------------------------------- dnl Got this from the lynx 2.8 distribution. dnl by T.E.Dickey dnl and Jim Spath dnl and Philippe De Muyter dnl dnl Created: 1997/1/28 dnl Updated: 1997/12/23 dnl --------------------------------------------------------------------------- dnl After checking for functions in the default $LIBS, make a further check dnl for the functions that are netlib-related (these aren't always in the dnl libc, etc., and have to be handled specially because there are conflicting dnl and broken implementations. dnl Common library requirements (in order): dnl -lresolv -lsocket -lnsl dnl -lnsl -lsocket dnl -lsocket dnl -lbsd AC_DEFUN([CF_NETLIBS],[ cf_test_netlibs=no AC_MSG_CHECKING(for network libraries) AC_CACHE_VAL(cf_cv_netlibs,[ AC_MSG_RESULT(working...) cf_cv_netlibs="" cf_test_netlibs=yes AC_CHECK_FUNCS(gethostname,,[ CF_RECHECK_FUNC(gethostname,nsl,cf_cv_netlibs,[ CF_RECHECK_FUNC(gethostname,socket,cf_cv_netlibs)])]) # # FIXME: sequent needs this library (i.e., -lsocket -linet -lnsl), but # I don't know the entrypoints - 97/7/22 TD AC_CHECK_LIB(inet,main,cf_cv_netlibs="-linet $cf_cv_netlibs") # if test "$ac_cv_func_lsocket" != no ; then AC_CHECK_FUNCS(socket,,[ CF_RECHECK_FUNC(socket,socket,cf_cv_netlibs,[ CF_RECHECK_FUNC(socket,bsd,cf_cv_netlibs)])]) fi # AC_CHECK_FUNCS(gethostbyname,,[ CF_RECHECK_FUNC(gethostbyname,nsl,cf_cv_netlibs)]) # AC_CHECK_FUNCS(strcasecmp,,[ CF_RECHECK_FUNC(strcasecmp,resolv,cf_cv_netlibs)]) ]) LIBS="$LIBS $cf_cv_netlibs" test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&AC_FD_MSG ])dnl dnl --------------------------------------------------------------------------- dnl Re-check on a function to see if we can pick it up by adding a library. dnl $1 = function to check dnl $2 = library to check in dnl $3 = environment to update (e.g., $LIBS) dnl $4 = what to do if this fails dnl dnl This uses 'unset' if the shell happens to support it, but leaves the dnl configuration variable set to 'unknown' if not. This is a little better dnl than the normal autoconf test, which gives misleading results if a test dnl for the function is made (e.g., with AC_CHECK_FUNC) after this macro is dnl used (autoconf does not distinguish between a null token and one that is dnl set to 'no'). AC_DEFUN([CF_RECHECK_FUNC],[ AC_CHECK_LIB($2,$1,[ CF_UPPER(cf_tr_func,$1) AC_DEFINE_UNQUOTED(HAVE_$cf_tr_func,1,[Define if you have function $1]) ac_cv_func_$1=yes $3="-l$2 [$]$3"],[ ac_cv_func_$1=unknown unset ac_cv_func_$1 2>/dev/null $4], [[$]$3]) ])dnl dnl --------------------------------------------------------------------------- dnl Make an uppercase version of a variable dnl $1=uppercase($2) AC_DEFUN([CF_UPPER], [ changequote(,)dnl $1=`echo $2 | tr '[a-z]' '[A-Z]'` changequote([,])dnl ])dnl dnl --------------------------------------------------------------------------- dnl From Paul Eggert AC_DEFUN([AC_STRUCT_ST_MTIM_NSEC], [AC_CACHE_CHECK([for nanoseconds field of struct stat.st_mtim], ac_cv_struct_st_mtim_nsec, [ac_save_CPPFLAGS="$CPPFLAGS" ac_cv_struct_st_mtim_nsec=no # tv_nsec -- the usual case # _tv_nsec -- Solaris 2.6, if # (defined _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED == 1 # && !defined __EXTENSIONS__) # st__tim.tv_nsec -- UnixWare 2.1.2 for ac_val in tv_nsec _tv_nsec st__tim.tv_nsec; do CPPFLAGS="$ac_save_CPPFLAGS -DST_MTIM_NSEC=$ac_val" AC_TRY_COMPILE([#include #include ], [struct stat s; s.st_mtim.ST_MTIM_NSEC;], [ac_cv_struct_st_mtim_nsec=$ac_val; break]) done CPPFLAGS="$ac_save_CPPFLAGS" ]) if test $ac_cv_struct_st_mtim_nsec != no; then AC_DEFINE_UNQUOTED([ST_MTIM_NSEC], [$ac_cv_struct_st_mtim_nsec], [Define if struct stat contains a nanoseconds field]) fi ] ) make-dfsg-3.81.orig/aclocal.m40000644000175000017500000010212010416553102016345 0ustar srivastasrivasta# generated automatically by aclocal 1.9.6 -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005 Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. # Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_AUTOMAKE_VERSION(VERSION) # ---------------------------- # Automake X.Y traces this macro to ensure aclocal.m4 has been # generated from the m4 files accompanying Automake X.Y. AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"]) # AM_SET_CURRENT_AUTOMAKE_VERSION # ------------------------------- # Call AM_AUTOMAKE_VERSION so it can be traced. # This function is AC_REQUIREd by AC_INIT_AUTOMAKE. AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], [AM_AUTOMAKE_VERSION([1.9.6])]) # AM_AUX_DIR_EXPAND -*- Autoconf -*- # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets # $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to # `$srcdir', `$srcdir/..', or `$srcdir/../..'. # # Of course, Automake must honor this variable whenever it calls a # tool from the auxiliary directory. The problem is that $srcdir (and # therefore $ac_aux_dir as well) can be either absolute or relative, # depending on how configure is run. This is pretty annoying, since # it makes $ac_aux_dir quite unusable in subdirectories: in the top # source directory, any form will work fine, but in subdirectories a # relative path needs to be adjusted first. # # $ac_aux_dir/missing # fails when called from a subdirectory if $ac_aux_dir is relative # $top_srcdir/$ac_aux_dir/missing # fails if $ac_aux_dir is absolute, # fails when called from a subdirectory in a VPATH build with # a relative $ac_aux_dir # # The reason of the latter failure is that $top_srcdir and $ac_aux_dir # are both prefixed by $srcdir. In an in-source build this is usually # harmless because $srcdir is `.', but things will broke when you # start a VPATH build or use an absolute $srcdir. # # So we could use something similar to $top_srcdir/$ac_aux_dir/missing, # iff we strip the leading $srcdir from $ac_aux_dir. That would be: # am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"` # and then we would define $MISSING as # MISSING="\${SHELL} $am_aux_dir/missing" # This will work as long as MISSING is not called from configure, because # unfortunately $(top_srcdir) has no meaning in configure. # However there are other variables, like CC, which are often used in # configure, and could therefore not use this "fixed" $ac_aux_dir. # # Another solution, used here, is to always expand $ac_aux_dir to an # absolute PATH. The drawback is that using absolute paths prevent a # configured tree to be moved without reconfiguration. AC_DEFUN([AM_AUX_DIR_EXPAND], [dnl Rely on autoconf to set up CDPATH properly. AC_PREREQ([2.50])dnl # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` ]) # AM_CONDITIONAL -*- Autoconf -*- # Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 7 # AM_CONDITIONAL(NAME, SHELL-CONDITION) # ------------------------------------- # Define a conditional. AC_DEFUN([AM_CONDITIONAL], [AC_PREREQ(2.52)dnl ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl AC_SUBST([$1_TRUE]) AC_SUBST([$1_FALSE]) if $2; then $1_TRUE= $1_FALSE='#' else $1_TRUE='#' $1_FALSE= fi AC_CONFIG_COMMANDS_PRE( [if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then AC_MSG_ERROR([[conditional "$1" was never defined. Usually this means the macro was only invoked conditionally.]]) fi])]) # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 8 # There are a few dirty hacks below to avoid letting `AC_PROG_CC' be # written in clear, in which case automake, when reading aclocal.m4, # will think it sees a *use*, and therefore will trigger all it's # C support machinery. Also note that it means that autoscan, seeing # CC etc. in the Makefile, will ask for an AC_PROG_CC use... # _AM_DEPENDENCIES(NAME) # ---------------------- # See how the compiler implements dependency checking. # NAME is "CC", "CXX", "GCJ", or "OBJC". # We try a few techniques and use that to set a single cache variable. # # We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was # modified to invoke _AM_DEPENDENCIES(CC); we would have a circular # dependency, and given that the user is not expected to run this macro, # just rely on AC_PROG_CC. AC_DEFUN([_AM_DEPENDENCIES], [AC_REQUIRE([AM_SET_DEPDIR])dnl AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl AC_REQUIRE([AM_MAKE_INCLUDE])dnl AC_REQUIRE([AM_DEP_TRACK])dnl ifelse([$1], CC, [depcc="$CC" am_compiler_list=], [$1], CXX, [depcc="$CXX" am_compiler_list=], [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'], [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'], [depcc="$$1" am_compiler_list=]) AC_CACHE_CHECK([dependency style of $depcc], [am_cv_$1_dependencies_compiler_type], [if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_$1_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_$1_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_$1_dependencies_compiler_type=none fi ]) AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type]) AM_CONDITIONAL([am__fastdep$1], [ test "x$enable_dependency_tracking" != xno \ && test "$am_cv_$1_dependencies_compiler_type" = gcc3]) ]) # AM_SET_DEPDIR # ------------- # Choose a directory name for dependency files. # This macro is AC_REQUIREd in _AM_DEPENDENCIES AC_DEFUN([AM_SET_DEPDIR], [AC_REQUIRE([AM_SET_LEADING_DOT])dnl AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl ]) # AM_DEP_TRACK # ------------ AC_DEFUN([AM_DEP_TRACK], [AC_ARG_ENABLE(dependency-tracking, [ --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors]) if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) AC_SUBST([AMDEPBACKSLASH]) ]) # Generate code to set up dependency tracking. -*- Autoconf -*- # Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. #serial 3 # _AM_OUTPUT_DEPENDENCY_COMMANDS # ------------------------------ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], [for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`AS_DIRNAME("$mf")` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`AS_DIRNAME(["$file"])` AS_MKDIR_P([$dirpart/$fdir]) # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ])# _AM_OUTPUT_DEPENDENCY_COMMANDS # AM_OUTPUT_DEPENDENCY_COMMANDS # ----------------------------- # This macro should only be invoked once -- use via AC_REQUIRE. # # This code is only required when automatic dependency tracking # is enabled. FIXME. This creates each `.P' file that we will # need in order to bootstrap the dependency handling code. AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS], [AC_CONFIG_COMMANDS([depfiles], [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS], [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"]) ]) # Copyright (C) 1996, 1998, 1999, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 AC_DEFUN([AM_WITH_DMALLOC], [AC_MSG_CHECKING([if malloc debugging is wanted]) AC_ARG_WITH(dmalloc, [ --with-dmalloc use dmalloc, as in http://www.dmalloc.com/dmalloc.tar.gz], [if test "$withval" = yes; then AC_MSG_RESULT(yes) AC_DEFINE(WITH_DMALLOC,1, [Define if using the dmalloc debugging malloc package]) LIBS="$LIBS -ldmalloc" LDFLAGS="$LDFLAGS -g" else AC_MSG_RESULT(no) fi], [AC_MSG_RESULT(no)]) ]) AU_DEFUN([fp_WITH_DMALLOC], [AM_WITH_DMALLOC]) # Do all the work for Automake. -*- Autoconf -*- # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 12 # This macro actually does too much. Some checks are only needed if # your package does certain things. But this isn't really a big deal. # AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE]) # AM_INIT_AUTOMAKE([OPTIONS]) # ----------------------------------------------- # The call with PACKAGE and VERSION arguments is the old style # call (pre autoconf-2.50), which is being phased out. PACKAGE # and VERSION should now be passed to AC_INIT and removed from # the call to AM_INIT_AUTOMAKE. # We support both call styles for the transition. After # the next Automake release, Autoconf can make the AC_INIT # arguments mandatory, and then we can depend on a new Autoconf # release and drop the old call support. AC_DEFUN([AM_INIT_AUTOMAKE], [AC_PREREQ([2.58])dnl dnl Autoconf wants to disallow AM_ names. We explicitly allow dnl the ones we care about. m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi AC_SUBST([CYGPATH_W]) # Define the identity of the package. dnl Distinguish between old-style and new-style calls. m4_ifval([$2], [m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl AC_SUBST([PACKAGE], [$1])dnl AC_SUBST([VERSION], [$2])], [_AM_SET_OPTIONS([$1])dnl AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl _AM_IF_OPTION([no-define],, [AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package]) AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl # Some tools Automake needs. AC_REQUIRE([AM_SANITY_CHECK])dnl AC_REQUIRE([AC_ARG_PROGRAM])dnl AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version}) AM_MISSING_PROG(AUTOCONF, autoconf) AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version}) AM_MISSING_PROG(AUTOHEADER, autoheader) AM_MISSING_PROG(MAKEINFO, makeinfo) AM_PROG_INSTALL_SH AM_PROG_INSTALL_STRIP AC_REQUIRE([AM_PROG_MKDIR_P])dnl # We need awk for the "check" target. The system "awk" is bad on # some platforms. AC_REQUIRE([AC_PROG_AWK])dnl AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AM_SET_LEADING_DOT])dnl _AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])], [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])], [_AM_PROG_TAR([v7])])]) _AM_IF_OPTION([no-dependencies],, [AC_PROVIDE_IFELSE([AC_PROG_CC], [_AM_DEPENDENCIES(CC)], [define([AC_PROG_CC], defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl AC_PROVIDE_IFELSE([AC_PROG_CXX], [_AM_DEPENDENCIES(CXX)], [define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl ]) ]) # When config.status generates a header, we must update the stamp-h file. # This file resides in the same directory as the config header # that is generated. The stamp files are numbered to have different names. # Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the # loop where config.status creates the headers, so we can generate # our stamp files there. AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK], [# Compute $1's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $1 | $1:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_SH # ------------------ # Define $install_sh. AC_DEFUN([AM_PROG_INSTALL_SH], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl install_sh=${install_sh-"$am_aux_dir/install-sh"} AC_SUBST(install_sh)]) # Copyright (C) 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # Check whether the underlying file-system supports filenames # with a leading dot. For instance MS-DOS doesn't. AC_DEFUN([AM_SET_LEADING_DOT], [rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null AC_SUBST([am__leading_dot])]) # Check to see how 'make' treats includes. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # AM_MAKE_INCLUDE() # ----------------- # Check to see how make treats includes. AC_DEFUN([AM_MAKE_INCLUDE], [am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. AC_MSG_CHECKING([for style of include used by $am_make]) am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi AC_SUBST([am__include]) AC_SUBST([am__quote]) AC_MSG_RESULT([$_am_result]) rm -f confinc confmf ]) # Copyright (C) 1999, 2000, 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # AM_PROG_CC_C_O # -------------- # Like AC_PROG_CC_C_O, but changed for automake. AC_DEFUN([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC_C_O])dnl AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl # FIXME: we rely on the cache variable name because # there is no other way. set dummy $CC ac_cc=`echo $[2] | sed ['s/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/']` if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" != yes"; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi ]) # Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- # Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_MISSING_PROG(NAME, PROGRAM) # ------------------------------ AC_DEFUN([AM_MISSING_PROG], [AC_REQUIRE([AM_MISSING_HAS_RUN]) $1=${$1-"${am_missing_run}$2"} AC_SUBST($1)]) # AM_MISSING_HAS_RUN # ------------------ # Define MISSING if not defined so far and test if it supports --run. # If it does, set am_missing_run to use it, otherwise, to nothing. AC_DEFUN([AM_MISSING_HAS_RUN], [AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= AC_MSG_WARN([`missing' script is too old or missing]) fi ]) # Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_MKDIR_P # --------------- # Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise. # # Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories # created by `make install' are always world readable, even if the # installer happens to have an overly restrictive umask (e.g. 077). # This was a mistake. There are at least two reasons why we must not # use `-m 0755': # - it causes special bits like SGID to be ignored, # - it may be too restrictive (some setups expect 775 directories). # # Do not use -m 0755 and let people choose whatever they expect by # setting umask. # # We cannot accept any implementation of `mkdir' that recognizes `-p'. # Some implementations (such as Solaris 8's) are not thread-safe: if a # parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c' # concurrently, both version can detect that a/ is missing, but only # one can create it and the other will error out. Consequently we # restrict ourselves to GNU make (using the --version option ensures # this.) AC_DEFUN([AM_PROG_MKDIR_P], [if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi AC_SUBST([mkdir_p])]) # Helper functions for option handling. -*- Autoconf -*- # Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 3 # _AM_MANGLE_OPTION(NAME) # ----------------------- AC_DEFUN([_AM_MANGLE_OPTION], [[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])]) # _AM_SET_OPTION(NAME) # ------------------------------ # Set option NAME. Presently that only means defining a flag for this option. AC_DEFUN([_AM_SET_OPTION], [m4_define(_AM_MANGLE_OPTION([$1]), 1)]) # _AM_SET_OPTIONS(OPTIONS) # ---------------------------------- # OPTIONS is a space-separated list of Automake options. AC_DEFUN([_AM_SET_OPTIONS], [AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])]) # _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET]) # ------------------------------------------- # Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. AC_DEFUN([_AM_IF_OPTION], [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])]) # Copyright (C) 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 AC_DEFUN([AM_C_PROTOTYPES], [AC_REQUIRE([AC_C_PROTOTYPES]) if test "$ac_cv_prog_cc_stdc" != no; then U= ANSI2KNR= else U=_ ANSI2KNR=./ansi2knr fi # Ensure some checks needed by ansi2knr itself. AC_REQUIRE([AC_HEADER_STDC]) AC_CHECK_HEADERS(string.h) AC_SUBST(U)dnl AC_SUBST(ANSI2KNR)dnl ]) AU_DEFUN([fp_C_PROTOTYPES], [AM_C_PROTOTYPES]) # Check to make sure that the build environment is sane. -*- Autoconf -*- # Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005 # Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 4 # AM_SANITY_CHECK # --------------- AC_DEFUN([AM_SANITY_CHECK], [AC_MSG_CHECKING([whether build environment is sane]) # Just in case sleep 1 echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` if test "$[*]" = "X"; then # -L didn't work. set X `ls -t $srcdir/configure conftest.file` fi rm -f conftest.file if test "$[*]" != "X $srcdir/configure conftest.file" \ && test "$[*]" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken alias in your environment]) fi test "$[2]" = conftest.file ) then # Ok. : else AC_MSG_ERROR([newly created file is older than distributed files! Check your system clock]) fi AC_MSG_RESULT(yes)]) # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # AM_PROG_INSTALL_STRIP # --------------------- # One issue with vendor `install' (even GNU) is that you can't # specify the program used to strip binaries. This is especially # annoying in cross-compiling environments, where the build's strip # is unlikely to handle the host's binaries. # Fortunately install-sh will honor a STRIPPROG variable, so we # always use install-sh in `make install-strip', and initialize # STRIPPROG with the value of the STRIP variable (set by the user). AC_DEFUN([AM_PROG_INSTALL_STRIP], [AC_REQUIRE([AM_PROG_INSTALL_SH])dnl # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. dnl Don't test for $cross_compiling = yes, because it might be `maybe'. if test "$cross_compiling" != no; then AC_CHECK_TOOL([STRIP], [strip], :) fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" AC_SUBST([INSTALL_STRIP_PROGRAM])]) # Check how to create a tarball. -*- Autoconf -*- # Copyright (C) 2004, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # serial 2 # _AM_PROG_TAR(FORMAT) # -------------------- # Check how to create a tarball in format FORMAT. # FORMAT should be one of `v7', `ustar', or `pax'. # # Substitute a variable $(am__tar) that is a command # writing to stdout a FORMAT-tarball containing the directory # $tardir. # tardir=directory && $(am__tar) > result.tar # # Substitute a variable $(am__untar) that extract such # a tarball read from stdin. # $(am__untar) < result.tar AC_DEFUN([_AM_PROG_TAR], [# Always define AMTAR for backward compatibility. AM_MISSING_PROG([AMTAR], [tar]) m4_if([$1], [v7], [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'], [m4_case([$1], [ustar],, [pax],, [m4_fatal([Unknown tar format])]) AC_MSG_CHECKING([how to create a $1 tar archive]) # Loop over all known methods to create a tar archive until one works. _am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' _am_tools=${am_cv_prog_tar_$1-$_am_tools} # Do not fold the above two line into one, because Tru64 sh and # Solaris sh will not grok spaces in the rhs of `-'. for _am_tool in $_am_tools do case $_am_tool in gnutar) for _am_tar in tar gnutar gtar; do AM_RUN_LOG([$_am_tar --version]) && break done am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"' am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"' am__untar="$_am_tar -xf -" ;; plaintar) # Must skip GNU tar: if it does not support --format= it doesn't create # ustar tarball either. (tar --version) >/dev/null 2>&1 && continue am__tar='tar chf - "$$tardir"' am__tar_='tar chf - "$tardir"' am__untar='tar xf -' ;; pax) am__tar='pax -L -x $1 -w "$$tardir"' am__tar_='pax -L -x $1 -w "$tardir"' am__untar='pax -r' ;; cpio) am__tar='find "$$tardir" -print | cpio -o -H $1 -L' am__tar_='find "$tardir" -print | cpio -o -H $1 -L' am__untar='cpio -i -H $1 -d' ;; none) am__tar=false am__tar_=false am__untar=false ;; esac # If the value was cached, stop now. We just wanted to have am__tar # and am__untar set. test -n "${am_cv_prog_tar_$1}" && break # tar/untar a dummy directory, and stop if the command works rm -rf conftest.dir mkdir conftest.dir echo GrepMe > conftest.dir/file AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar]) rm -rf conftest.dir if test -s conftest.tar; then AM_RUN_LOG([$am__untar /dev/null 2>&1 && break fi done rm -rf conftest.dir AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool]) AC_MSG_RESULT([$am_cv_prog_tar_$1])]) AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR m4_include([config/dospaths.m4]) m4_include([config/gettext.m4]) m4_include([config/iconv.m4]) m4_include([config/lib-ld.m4]) m4_include([config/lib-link.m4]) m4_include([config/lib-prefix.m4]) m4_include([config/nls.m4]) m4_include([config/po.m4]) m4_include([config/progtest.m4]) m4_include([acinclude.m4]) make-dfsg-3.81.orig/alloca.c0000644000175000017500000003362710416553102016123 0ustar srivastasrivasta/* alloca.c -- allocate automatically reclaimed memory (Mostly) portable public-domain implementation -- D A Gwyn This implementation of the PWB library alloca function, which is used to allocate space off the run-time stack so that it is automatically reclaimed upon procedure exit, was inspired by discussions with J. Q. Johnson of Cornell. J.Otto Tennant contributed the Cray support. There are some preprocessor constants that can be defined when compiling for your specific system, for improved efficiency; however, the defaults should be okay. The general concept of this implementation is to keep track of all alloca-allocated blocks, and reclaim any that are found to be deeper in the stack than the current invocation. This heuristic does not reclaim storage as soon as it becomes invalid, but it will do so eventually. As a special case, alloca(0) reclaims storage without allocating any. It is a good idea to use alloca(0) in your main control loop, etc. to force garbage collection. */ #ifdef HAVE_CONFIG_H #include #endif #ifdef HAVE_STRING_H #include #endif #ifdef HAVE_STDLIB_H #include #endif #ifdef emacs #include "blockinput.h" #endif /* If compiling with GCC 2, this file's not needed. */ #if !defined (__GNUC__) || __GNUC__ < 2 /* If someone has defined alloca as a macro, there must be some other way alloca is supposed to work. */ #ifndef alloca #ifdef emacs #ifdef static /* actually, only want this if static is defined as "" -- this is for usg, in which emacs must undefine static in order to make unexec workable */ #ifndef STACK_DIRECTION you lose -- must know STACK_DIRECTION at compile-time #endif /* STACK_DIRECTION undefined */ #endif /* static */ #endif /* emacs */ /* If your stack is a linked list of frames, you have to provide an "address metric" ADDRESS_FUNCTION macro. */ #if defined (CRAY) && defined (CRAY_STACKSEG_END) long i00afunc (); #define ADDRESS_FUNCTION(arg) (char *) i00afunc (&(arg)) #else #define ADDRESS_FUNCTION(arg) &(arg) #endif #if __STDC__ typedef void *pointer; #else typedef char *pointer; #endif #ifndef NULL #define NULL 0 #endif /* Different portions of Emacs need to call different versions of malloc. The Emacs executable needs alloca to call xmalloc, because ordinary malloc isn't protected from input signals. On the other hand, the utilities in lib-src need alloca to call malloc; some of them are very simple, and don't have an xmalloc routine. Non-Emacs programs expect this to call use xmalloc. Callers below should use malloc. */ #ifndef emacs #define malloc xmalloc #endif extern pointer malloc (); /* Define STACK_DIRECTION if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ #ifndef STACK_DIRECTION #define STACK_DIRECTION 0 /* Direction unknown. */ #endif #if STACK_DIRECTION != 0 #define STACK_DIR STACK_DIRECTION /* Known at compile-time. */ #else /* STACK_DIRECTION == 0; need run-time code. */ static int stack_dir; /* 1 or -1 once known. */ #define STACK_DIR stack_dir static void find_stack_direction (void) { static char *addr = NULL; /* Address of first `dummy', once known. */ auto char dummy; /* To get stack address. */ if (addr == NULL) { /* Initial entry. */ addr = ADDRESS_FUNCTION (dummy); find_stack_direction (); /* Recurse once. */ } else { /* Second entry. */ if (ADDRESS_FUNCTION (dummy) > addr) stack_dir = 1; /* Stack grew upward. */ else stack_dir = -1; /* Stack grew downward. */ } } #endif /* STACK_DIRECTION == 0 */ /* An "alloca header" is used to: (a) chain together all alloca'ed blocks; (b) keep track of stack depth. It is very important that sizeof(header) agree with malloc alignment chunk size. The following default should work okay. */ #ifndef ALIGN_SIZE #define ALIGN_SIZE sizeof(double) #endif typedef union hdr { char align[ALIGN_SIZE]; /* To force sizeof(header). */ struct { union hdr *next; /* For chaining headers. */ char *deep; /* For stack depth measure. */ } h; } header; static header *last_alloca_header = NULL; /* -> last alloca header. */ /* Return a pointer to at least SIZE bytes of storage, which will be automatically reclaimed upon exit from the procedure that called alloca. Originally, this space was supposed to be taken from the current stack frame of the caller, but that method cannot be made to work for some implementations of C, for example under Gould's UTX/32. */ pointer alloca (unsigned size) { auto char probe; /* Probes stack depth: */ register char *depth = ADDRESS_FUNCTION (probe); #if STACK_DIRECTION == 0 if (STACK_DIR == 0) /* Unknown growth direction. */ find_stack_direction (); #endif /* Reclaim garbage, defined as all alloca'd storage that was allocated from deeper in the stack than currently. */ { register header *hp; /* Traverses linked list. */ #ifdef emacs BLOCK_INPUT; #endif for (hp = last_alloca_header; hp != NULL;) if ((STACK_DIR > 0 && hp->h.deep > depth) || (STACK_DIR < 0 && hp->h.deep < depth)) { register header *np = hp->h.next; free ((pointer) hp); /* Collect garbage. */ hp = np; /* -> next header. */ } else break; /* Rest are not deeper. */ last_alloca_header = hp; /* -> last valid storage. */ #ifdef emacs UNBLOCK_INPUT; #endif } if (size == 0) return NULL; /* No allocation required. */ /* Allocate combined header + user data storage. */ { register pointer new = malloc (sizeof (header) + size); /* Address of header. */ if (new == 0) abort(); ((header *) new)->h.next = last_alloca_header; ((header *) new)->h.deep = depth; last_alloca_header = (header *) new; /* User storage begins just after header. */ return (pointer) ((char *) new + sizeof (header)); } } #if defined (CRAY) && defined (CRAY_STACKSEG_END) #ifdef DEBUG_I00AFUNC #include #endif #ifndef CRAY_STACK #define CRAY_STACK #ifndef CRAY2 /* Stack structures for CRAY-1, CRAY X-MP, and CRAY Y-MP */ struct stack_control_header { long shgrow:32; /* Number of times stack has grown. */ long shaseg:32; /* Size of increments to stack. */ long shhwm:32; /* High water mark of stack. */ long shsize:32; /* Current size of stack (all segments). */ }; /* The stack segment linkage control information occurs at the high-address end of a stack segment. (The stack grows from low addresses to high addresses.) The initial part of the stack segment linkage control information is 0200 (octal) words. This provides for register storage for the routine which overflows the stack. */ struct stack_segment_linkage { long ss[0200]; /* 0200 overflow words. */ long sssize:32; /* Number of words in this segment. */ long ssbase:32; /* Offset to stack base. */ long:32; long sspseg:32; /* Offset to linkage control of previous segment of stack. */ long:32; long sstcpt:32; /* Pointer to task common address block. */ long sscsnm; /* Private control structure number for microtasking. */ long ssusr1; /* Reserved for user. */ long ssusr2; /* Reserved for user. */ long sstpid; /* Process ID for pid based multi-tasking. */ long ssgvup; /* Pointer to multitasking thread giveup. */ long sscray[7]; /* Reserved for Cray Research. */ long ssa0; long ssa1; long ssa2; long ssa3; long ssa4; long ssa5; long ssa6; long ssa7; long sss0; long sss1; long sss2; long sss3; long sss4; long sss5; long sss6; long sss7; }; #else /* CRAY2 */ /* The following structure defines the vector of words returned by the STKSTAT library routine. */ struct stk_stat { long now; /* Current total stack size. */ long maxc; /* Amount of contiguous space which would be required to satisfy the maximum stack demand to date. */ long high_water; /* Stack high-water mark. */ long overflows; /* Number of stack overflow ($STKOFEN) calls. */ long hits; /* Number of internal buffer hits. */ long extends; /* Number of block extensions. */ long stko_mallocs; /* Block allocations by $STKOFEN. */ long underflows; /* Number of stack underflow calls ($STKRETN). */ long stko_free; /* Number of deallocations by $STKRETN. */ long stkm_free; /* Number of deallocations by $STKMRET. */ long segments; /* Current number of stack segments. */ long maxs; /* Maximum number of stack segments so far. */ long pad_size; /* Stack pad size. */ long current_address; /* Current stack segment address. */ long current_size; /* Current stack segment size. This number is actually corrupted by STKSTAT to include the fifteen word trailer area. */ long initial_address; /* Address of initial segment. */ long initial_size; /* Size of initial segment. */ }; /* The following structure describes the data structure which trails any stack segment. I think that the description in 'asdef' is out of date. I only describe the parts that I am sure about. */ struct stk_trailer { long this_address; /* Address of this block. */ long this_size; /* Size of this block (does not include this trailer). */ long unknown2; long unknown3; long link; /* Address of trailer block of previous segment. */ long unknown5; long unknown6; long unknown7; long unknown8; long unknown9; long unknown10; long unknown11; long unknown12; long unknown13; long unknown14; }; #endif /* CRAY2 */ #endif /* not CRAY_STACK */ #ifdef CRAY2 /* Determine a "stack measure" for an arbitrary ADDRESS. I doubt that "lint" will like this much. */ static long i00afunc (long *address) { struct stk_stat status; struct stk_trailer *trailer; long *block, size; long result = 0; /* We want to iterate through all of the segments. The first step is to get the stack status structure. We could do this more quickly and more directly, perhaps, by referencing the $LM00 common block, but I know that this works. */ STKSTAT (&status); /* Set up the iteration. */ trailer = (struct stk_trailer *) (status.current_address + status.current_size - 15); /* There must be at least one stack segment. Therefore it is a fatal error if "trailer" is null. */ if (trailer == 0) abort (); /* Discard segments that do not contain our argument address. */ while (trailer != 0) { block = (long *) trailer->this_address; size = trailer->this_size; if (block == 0 || size == 0) abort (); trailer = (struct stk_trailer *) trailer->link; if ((block <= address) && (address < (block + size))) break; } /* Set the result to the offset in this segment and add the sizes of all predecessor segments. */ result = address - block; if (trailer == 0) { return result; } do { if (trailer->this_size <= 0) abort (); result += trailer->this_size; trailer = (struct stk_trailer *) trailer->link; } while (trailer != 0); /* We are done. Note that if you present a bogus address (one not in any segment), you will get a different number back, formed from subtracting the address of the first block. This is probably not what you want. */ return (result); } #else /* not CRAY2 */ /* Stack address function for a CRAY-1, CRAY X-MP, or CRAY Y-MP. Determine the number of the cell within the stack, given the address of the cell. The purpose of this routine is to linearize, in some sense, stack addresses for alloca. */ static long i00afunc (long address) { long stkl = 0; long size, pseg, this_segment, stack; long result = 0; struct stack_segment_linkage *ssptr; /* Register B67 contains the address of the end of the current stack segment. If you (as a subprogram) store your registers on the stack and find that you are past the contents of B67, you have overflowed the segment. B67 also points to the stack segment linkage control area, which is what we are really interested in. */ stkl = CRAY_STACKSEG_END (); ssptr = (struct stack_segment_linkage *) stkl; /* If one subtracts 'size' from the end of the segment, one has the address of the first word of the segment. If this is not the first segment, 'pseg' will be nonzero. */ pseg = ssptr->sspseg; size = ssptr->sssize; this_segment = stkl - size; /* It is possible that calling this routine itself caused a stack overflow. Discard stack segments which do not contain the target address. */ while (!(this_segment <= address && address <= stkl)) { #ifdef DEBUG_I00AFUNC fprintf (stderr, "%011o %011o %011o\n", this_segment, address, stkl); #endif if (pseg == 0) break; stkl = stkl - pseg; ssptr = (struct stack_segment_linkage *) stkl; size = ssptr->sssize; pseg = ssptr->sspseg; this_segment = stkl - size; } result = address - this_segment; /* If you subtract pseg from the current end of the stack, you get the address of the previous stack segment's end. This seems a little convoluted to me, but I'll bet you save a cycle somewhere. */ while (pseg != 0) { #ifdef DEBUG_I00AFUNC fprintf (stderr, "%011o %011o\n", pseg, size); #endif stkl = stkl - pseg; ssptr = (struct stack_segment_linkage *) stkl; size = ssptr->sssize; pseg = ssptr->sspseg; result += size; } return (result); } #endif /* not CRAY2 */ #endif /* CRAY */ #endif /* no alloca */ #endif /* not GCC version 2 */ make-dfsg-3.81.orig/amiga.c0000644000175000017500000000520510416553102015735 0ustar srivastasrivasta/* Running commands on Amiga Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "variable.h" #include "amiga.h" #include #include #include #include #include static const char Amiga_version[] = "$VER: Make 3.74.3 (12.05.96) \n" "Amiga Port by A. Digulla (digulla@home.lake.de)"; int MyExecute (char **argv) { char * buffer, * ptr; char ** aptr; int len = 0; int status; for (aptr=argv; *aptr; aptr++) { len += strlen (*aptr) + 4; } buffer = AllocMem (len, MEMF_ANY); if (!buffer) fatal (NILF, "MyExecute: Cannot allocate space for calling a command"); ptr = buffer; for (aptr=argv; *aptr; aptr++) { if (((*aptr)[0] == ';' && !(*aptr)[1])) { *ptr ++ = '"'; strcpy (ptr, *aptr); ptr += strlen (ptr); *ptr ++ = '"'; } else if ((*aptr)[0] == '@' && (*aptr)[1] == '@' && !(*aptr)[2]) { *ptr ++ = '\n'; continue; } else { strcpy (ptr, *aptr); ptr += strlen (ptr); } *ptr ++ = ' '; *ptr = 0; } ptr[-1] = '\n'; status = SystemTags (buffer, SYS_UserShell, TRUE, TAG_END); FreeMem (buffer, len); if (SetSignal(0L,0L) & SIGBREAKF_CTRL_C) status = 20; /* Warnings don't count */ if (status == 5) status = 0; return status; } char * wildcard_expansion (char *wc, char *o) { # define PATH_SIZE 1024 struct AnchorPath * apath; if ( (apath = AllocMem (sizeof (struct AnchorPath) + PATH_SIZE, MEMF_CLEAR)) ) { apath->ap_Strlen = PATH_SIZE; if (MatchFirst (wc, apath) == 0) { do { o = variable_buffer_output (o, apath->ap_Buf, strlen (apath->ap_Buf)); o = variable_buffer_output (o, " ",1); } while (MatchNext (apath) == 0); } MatchEnd (apath); FreeMem (apath, sizeof (struct AnchorPath) + PATH_SIZE); } return o; } make-dfsg-3.81.orig/amiga.h0000644000175000017500000000172210416553102015742 0ustar srivastasrivasta/* Definitions for amiga specific things Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ extern int MyExecute PARAMS ((char ** argv)); extern char * wildcard_expansion PARAMS ((char * wc, char * o)); make-dfsg-3.81.orig/ansi2knr.10000644000175000017500000000277110416553102016331 0ustar srivastasrivasta.TH ANSI2KNR 1 "19 Jan 1996" .SH NAME ansi2knr \- convert ANSI C to Kernighan & Ritchie C .SH SYNOPSIS .I ansi2knr [--varargs] input_file [output_file] .SH DESCRIPTION If no output_file is supplied, output goes to stdout. .br There are no error messages. .sp .I ansi2knr recognizes function definitions by seeing a non-keyword identifier at the left margin, followed by a left parenthesis, with a right parenthesis as the last character on the line, and with a left brace as the first token on the following line (ignoring possible intervening comments). It will recognize a multi-line header provided that no intervening line ends with a left or right brace or a semicolon. These algorithms ignore whitespace and comments, except that the function name must be the first thing on the line. .sp The following constructs will confuse it: .br - Any other construct that starts at the left margin and follows the above syntax (such as a macro or function call). .br - Some macros that tinker with the syntax of the function header. .sp The --varargs switch is obsolete, and is recognized only for backwards compatibility. The present version of .I ansi2knr will always attempt to convert a ... argument to va_alist and va_dcl. .SH AUTHOR L. Peter Deutsch wrote the original ansi2knr and continues to maintain the current version; most of the code in the current version is his work. ansi2knr also includes contributions by Francois Pinard and Jim Avera . make-dfsg-3.81.orig/ansi2knr.c0000644000175000017500000004745110416553102016417 0ustar srivastasrivasta/* Copyright (C) 1989, 2000 Aladdin Enterprises. All rights reserved. */ /*$Id: ansi2knr.c,v 1.3 2000/04/13 03:41:48 lpd Exp $*/ /* Convert ANSI C function definitions to K&R ("traditional C") syntax */ /* ansi2knr is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY. No author or distributor accepts responsibility to anyone for the consequences of using it or for whether it serves any particular purpose or works at all, unless he says so in writing. Refer to the GNU General Public License (the "GPL") for full details. Everyone is granted permission to copy, modify and redistribute ansi2knr, but only under the conditions described in the GPL. A copy of this license is supposed to have been given to you along with ansi2knr so you can know your rights and responsibilities. It should be in a file named COPYLEFT, or, if there is no file named COPYLEFT, a file named COPYING. Among other things, the copyright notice and this notice must be preserved on all copies. We explicitly state here what we believe is already implied by the GPL: if the ansi2knr program is distributed as a separate set of sources and a separate executable file which are aggregated on a storage medium together with another program, this in itself does not bring the other program under the GPL, nor does the mere fact that such a program or the procedures for constructing it invoke the ansi2knr executable bring any other part of the program under the GPL. */ /* * Usage: ansi2knr [--filename FILENAME] [INPUT_FILE [OUTPUT_FILE]] * --filename provides the file name for the #line directive in the output, * overriding input_file (if present). * If no input_file is supplied, input is read from stdin. * If no output_file is supplied, output goes to stdout. * There are no error messages. * * ansi2knr recognizes function definitions by seeing a non-keyword * identifier at the left margin, followed by a left parenthesis, with a * right parenthesis as the last character on the line, and with a left * brace as the first token on the following line (ignoring possible * intervening comments and/or preprocessor directives), except that a line * consisting of only * identifier1(identifier2) * will not be considered a function definition unless identifier2 is * the word "void", and a line consisting of * identifier1(identifier2, <>) * will not be considered a function definition. * ansi2knr will recognize a multi-line header provided that no intervening * line ends with a left or right brace or a semicolon. These algorithms * ignore whitespace, comments, and preprocessor directives, except that * the function name must be the first thing on the line. The following * constructs will confuse it: * - Any other construct that starts at the left margin and * follows the above syntax (such as a macro or function call). * - Some macros that tinker with the syntax of function headers. */ /* * The original and principal author of ansi2knr is L. Peter Deutsch * . Other authors are noted in the change history * that follows (in reverse chronological order): lpd 2000-04-12 backs out Eggert's changes because of bugs: - concatlits didn't declare the type of its bufend argument; - concatlits didn't recognize when it was inside a comment; - scanstring could scan backward past the beginning of the string; when - the check for \ + newline in scanstring was unnecessary. 2000-03-05 Paul Eggert Add support for concatenated string literals. * ansi2knr.c (concatlits): New decl. (main): Invoke concatlits to concatenate string literals. (scanstring): Handle backslash-newline correctly. Work with character constants. Fix bug when scanning backwards through backslash-quote. Check for unterminated strings. (convert1): Parse character constants, too. (appendline, concatlits): New functions. * ansi2knr.1: Document this. lpd 1999-08-17 added code to allow preprocessor directives wherever comments are allowed lpd 1999-04-12 added minor fixes from Pavel Roskin for clean compilation with gcc -W -Wall lpd 1999-03-22 added hack to recognize lines consisting of identifier1(identifier2, xxx) as *not* being procedures lpd 1999-02-03 made indentation of preprocessor commands consistent lpd 1999-01-28 fixed two bugs: a '/' in an argument list caused an endless loop; quoted strings within an argument list confused the parser lpd 1999-01-24 added a check for write errors on the output, suggested by Jim Meyering lpd 1998-11-09 added further hack to recognize identifier(void) as being a procedure lpd 1998-10-23 added hack to recognize lines consisting of identifier1(identifier2) as *not* being procedures lpd 1997-12-08 made input_file optional; only closes input and/or output file if not stdin or stdout respectively; prints usage message on stderr rather than stdout; adds --filename switch (changes suggested by ) lpd 1996-01-21 added code to cope with not HAVE_CONFIG_H and with compilers that don't understand void, as suggested by Tom Lane lpd 1996-01-15 changed to require that the first non-comment token on the line following a function header be a left brace, to reduce sensitivity to macros, as suggested by Tom Lane lpd 1995-06-22 removed #ifndefs whose sole purpose was to define undefined preprocessor symbols as 0; changed all #ifdefs for configuration symbols to #ifs lpd 1995-04-05 changed copyright notice to make it clear that including ansi2knr in a program does not bring the entire program under the GPL lpd 1994-12-18 added conditionals for systems where ctype macros don't handle 8-bit characters properly, suggested by Francois Pinard ; removed --varargs switch (this is now the default) lpd 1994-10-10 removed CONFIG_BROKETS conditional lpd 1994-07-16 added some conditionals to help GNU `configure', suggested by Francois Pinard ; properly erase prototype args in function parameters, contributed by Jim Avera ; correct error in writeblanks (it shouldn't erase EOLs) lpd 1989-xx-xx original version */ /* Most of the conditionals here are to make ansi2knr work with */ /* or without the GNU configure machinery. */ #if HAVE_CONFIG_H # include #endif #include #include #if HAVE_CONFIG_H /* For properly autoconfiguring ansi2knr, use AC_CONFIG_HEADER(config.h). This will define HAVE_CONFIG_H and so, activate the following lines. */ # if STDC_HEADERS || HAVE_STRING_H # include # else # include # endif #else /* not HAVE_CONFIG_H */ /* Otherwise do it the hard way */ # ifdef BSD # include # else # ifdef VMS extern int strlen(), strncmp(); # else # include # endif # endif #endif /* not HAVE_CONFIG_H */ #if STDC_HEADERS # include #else /* malloc and free should be declared in stdlib.h, but if you've got a K&R compiler, they probably aren't. */ # ifdef MSDOS # include # else # ifdef VMS extern char *malloc(); extern void free(); # else extern char *malloc(); extern int free(); # endif # endif #endif /* Define NULL (for *very* old compilers). */ #ifndef NULL # define NULL (0) #endif /* * The ctype macros don't always handle 8-bit characters correctly. * Compensate for this here. */ #ifdef isascii # undef HAVE_ISASCII /* just in case */ # define HAVE_ISASCII 1 #else #endif #if STDC_HEADERS || !HAVE_ISASCII # define is_ascii(c) 1 #else # define is_ascii(c) isascii(c) #endif #define is_space(c) (is_ascii(c) && isspace(c)) #define is_alpha(c) (is_ascii(c) && isalpha(c)) #define is_alnum(c) (is_ascii(c) && isalnum(c)) /* Scanning macros */ #define isidchar(ch) (is_alnum(ch) || (ch) == '_') #define isidfirstchar(ch) (is_alpha(ch) || (ch) == '_') /* Forward references */ char *ppdirforward(); char *ppdirbackward(); char *skipspace(); char *scanstring(); int writeblanks(); int test1(); int convert1(); /* The main program */ int main(argc, argv) int argc; char *argv[]; { FILE *in = stdin; FILE *out = stdout; char *filename = 0; char *program_name = argv[0]; char *output_name = 0; #define bufsize 5000 /* arbitrary size */ char *buf; char *line; char *more; char *usage = "Usage: ansi2knr [--filename FILENAME] [INPUT_FILE [OUTPUT_FILE]]\n"; /* * In previous versions, ansi2knr recognized a --varargs switch. * If this switch was supplied, ansi2knr would attempt to convert * a ... argument to va_alist and va_dcl; if this switch was not * supplied, ansi2knr would simply drop any such arguments. * Now, ansi2knr always does this conversion, and we only * check for this switch for backward compatibility. */ int convert_varargs = 1; int output_error; while ( argc > 1 && argv[1][0] == '-' ) { if ( !strcmp(argv[1], "--varargs") ) { convert_varargs = 1; argc--; argv++; continue; } if ( !strcmp(argv[1], "--filename") && argc > 2 ) { filename = argv[2]; argc -= 2; argv += 2; continue; } fprintf(stderr, "%s: Unrecognized switch: %s\n", program_name, argv[1]); fprintf(stderr, usage); exit(1); } switch ( argc ) { default: fprintf(stderr, usage); exit(0); case 3: output_name = argv[2]; out = fopen(output_name, "w"); if ( out == NULL ) { fprintf(stderr, "%s: Cannot open output file %s\n", program_name, output_name); exit(1); } /* falls through */ case 2: in = fopen(argv[1], "r"); if ( in == NULL ) { fprintf(stderr, "%s: Cannot open input file %s\n", program_name, argv[1]); exit(1); } if ( filename == 0 ) filename = argv[1]; /* falls through */ case 1: break; } if ( filename ) fprintf(out, "#line 1 \"%s\"\n", filename); buf = malloc(bufsize); if ( buf == NULL ) { fprintf(stderr, "Unable to allocate read buffer!\n"); exit(1); } line = buf; while ( fgets(line, (unsigned)(buf + bufsize - line), in) != NULL ) { test: line += strlen(line); switch ( test1(buf) ) { case 2: /* a function header */ convert1(buf, out, 1, convert_varargs); break; case 1: /* a function */ /* Check for a { at the start of the next line. */ more = ++line; f: if ( line >= buf + (bufsize - 1) ) /* overflow check */ goto wl; if ( fgets(line, (unsigned)(buf + bufsize - line), in) == NULL ) goto wl; switch ( *skipspace(ppdirforward(more), 1) ) { case '{': /* Definitely a function header. */ convert1(buf, out, 0, convert_varargs); fputs(more, out); break; case 0: /* The next line was blank or a comment: */ /* keep scanning for a non-comment. */ line += strlen(line); goto f; default: /* buf isn't a function header, but */ /* more might be. */ fputs(buf, out); strcpy(buf, more); line = buf; goto test; } break; case -1: /* maybe the start of a function */ if ( line != buf + (bufsize - 1) ) /* overflow check */ continue; /* falls through */ default: /* not a function */ wl: fputs(buf, out); break; } line = buf; } if ( line != buf ) fputs(buf, out); free(buf); if ( output_name ) { output_error = ferror(out); output_error |= fclose(out); } else { /* out == stdout */ fflush(out); output_error = ferror(out); } if ( output_error ) { fprintf(stderr, "%s: error writing to %s\n", program_name, (output_name ? output_name : "stdout")); exit(1); } if ( in != stdin ) fclose(in); return 0; } /* * Skip forward or backward over one or more preprocessor directives. */ char * ppdirforward(p) char *p; { for (; *p == '#'; ++p) { for (; *p != '\r' && *p != '\n'; ++p) if (*p == 0) return p; if (*p == '\r' && p[1] == '\n') ++p; } return p; } char * ppdirbackward(p, limit) char *p; char *limit; { char *np = p; for (;; p = --np) { if (*np == '\n' && np[-1] == '\r') --np; for (; np > limit && np[-1] != '\r' && np[-1] != '\n'; --np) if (np[-1] == 0) return np; if (*np != '#') return p; } } /* * Skip over whitespace, comments, and preprocessor directives, * in either direction. */ char * skipspace(p, dir) char *p; int dir; /* 1 for forward, -1 for backward */ { for ( ; ; ) { while ( is_space(*p) ) p += dir; if ( !(*p == '/' && p[dir] == '*') ) break; p += dir; p += dir; while ( !(*p == '*' && p[dir] == '/') ) { if ( *p == 0 ) return p; /* multi-line comment?? */ p += dir; } p += dir; p += dir; } return p; } /* Scan over a quoted string, in either direction. */ char * scanstring(p, dir) char *p; int dir; { for (p += dir; ; p += dir) if (*p == '"' && p[-dir] != '\\') return p + dir; } /* * Write blanks over part of a string. * Don't overwrite end-of-line characters. */ int writeblanks(start, end) char *start; char *end; { char *p; for ( p = start; p < end; p++ ) if ( *p != '\r' && *p != '\n' ) *p = ' '; return 0; } /* * Test whether the string in buf is a function definition. * The string may contain and/or end with a newline. * Return as follows: * 0 - definitely not a function definition; * 1 - definitely a function definition; * 2 - definitely a function prototype (NOT USED); * -1 - may be the beginning of a function definition, * append another line and look again. * The reason we don't attempt to convert function prototypes is that * Ghostscript's declaration-generating macros look too much like * prototypes, and confuse the algorithms. */ int test1(buf) char *buf; { char *p = buf; char *bend; char *endfn; int contin; if ( !isidfirstchar(*p) ) return 0; /* no name at left margin */ bend = skipspace(ppdirbackward(buf + strlen(buf) - 1, buf), -1); switch ( *bend ) { case ';': contin = 0 /*2*/; break; case ')': contin = 1; break; case '{': return 0; /* not a function */ case '}': return 0; /* not a function */ default: contin = -1; } while ( isidchar(*p) ) p++; endfn = p; p = skipspace(p, 1); if ( *p++ != '(' ) return 0; /* not a function */ p = skipspace(p, 1); if ( *p == ')' ) return 0; /* no parameters */ /* Check that the apparent function name isn't a keyword. */ /* We only need to check for keywords that could be followed */ /* by a left parenthesis (which, unfortunately, is most of them). */ { static char *words[] = { "asm", "auto", "case", "char", "const", "double", "extern", "float", "for", "if", "int", "long", "register", "return", "short", "signed", "sizeof", "static", "switch", "typedef", "unsigned", "void", "volatile", "while", 0 }; char **key = words; char *kp; unsigned len = endfn - buf; while ( (kp = *key) != 0 ) { if ( strlen(kp) == len && !strncmp(kp, buf, len) ) return 0; /* name is a keyword */ key++; } } { char *id = p; int len; /* * Check for identifier1(identifier2) and not * identifier1(void), or identifier1(identifier2, xxxx). */ while ( isidchar(*p) ) p++; len = p - id; p = skipspace(p, 1); if (*p == ',' || (*p == ')' && (len != 4 || strncmp(id, "void", 4))) ) return 0; /* not a function */ } /* * If the last significant character was a ), we need to count * parentheses, because it might be part of a formal parameter * that is a procedure. */ if (contin > 0) { int level = 0; for (p = skipspace(buf, 1); *p; p = skipspace(p + 1, 1)) level += (*p == '(' ? 1 : *p == ')' ? -1 : 0); if (level > 0) contin = -1; } return contin; } /* Convert a recognized function definition or header to K&R syntax. */ int convert1(buf, out, header, convert_varargs) char *buf; FILE *out; int header; /* Boolean */ int convert_varargs; /* Boolean */ { char *endfn; char *p; /* * The breaks table contains pointers to the beginning and end * of each argument. */ char **breaks; unsigned num_breaks = 2; /* for testing */ char **btop; char **bp; char **ap; char *vararg = 0; /* Pre-ANSI implementations don't agree on whether strchr */ /* is called strchr or index, so we open-code it here. */ for ( endfn = buf; *(endfn++) != '('; ) ; top: p = endfn; breaks = (char **)malloc(sizeof(char *) * num_breaks * 2); if ( breaks == NULL ) { /* Couldn't allocate break table, give up */ fprintf(stderr, "Unable to allocate break table!\n"); fputs(buf, out); return -1; } btop = breaks + num_breaks * 2 - 2; bp = breaks; /* Parse the argument list */ do { int level = 0; char *lp = NULL; char *rp = NULL; char *end = NULL; if ( bp >= btop ) { /* Filled up break table. */ /* Allocate a bigger one and start over. */ free((char *)breaks); num_breaks <<= 1; goto top; } *bp++ = p; /* Find the end of the argument */ for ( ; end == NULL; p++ ) { switch(*p) { case ',': if ( !level ) end = p; break; case '(': if ( !level ) lp = p; level++; break; case ')': if ( --level < 0 ) end = p; else rp = p; break; case '/': if (p[1] == '*') p = skipspace(p, 1) - 1; break; case '"': p = scanstring(p, 1) - 1; break; default: ; } } /* Erase any embedded prototype parameters. */ if ( lp && rp ) writeblanks(lp + 1, rp); p--; /* back up over terminator */ /* Find the name being declared. */ /* This is complicated because of procedure and */ /* array modifiers. */ for ( ; ; ) { p = skipspace(p - 1, -1); switch ( *p ) { case ']': /* skip array dimension(s) */ case ')': /* skip procedure args OR name */ { int level = 1; while ( level ) switch ( *--p ) { case ']': case ')': level++; break; case '[': case '(': level--; break; case '/': if (p > buf && p[-1] == '*') p = skipspace(p, -1) + 1; break; case '"': p = scanstring(p, -1) + 1; break; default: ; } } if ( *p == '(' && *skipspace(p + 1, 1) == '*' ) { /* We found the name being declared */ while ( !isidfirstchar(*p) ) p = skipspace(p, 1) + 1; goto found; } break; default: goto found; } } found: if ( *p == '.' && p[-1] == '.' && p[-2] == '.' ) { if ( convert_varargs ) { *bp++ = "va_alist"; vararg = p-2; } else { p++; if ( bp == breaks + 1 ) /* sole argument */ writeblanks(breaks[0], p); else writeblanks(bp[-1] - 1, p); bp--; } } else { while ( isidchar(*p) ) p--; *bp++ = p+1; } p = end; } while ( *p++ == ',' ); *bp = p; /* Make a special check for 'void' arglist */ if ( bp == breaks+2 ) { p = skipspace(breaks[0], 1); if ( !strncmp(p, "void", 4) ) { p = skipspace(p+4, 1); if ( p == breaks[2] - 1 ) { bp = breaks; /* yup, pretend arglist is empty */ writeblanks(breaks[0], p + 1); } } } /* Put out the function name and left parenthesis. */ p = buf; while ( p != endfn ) putc(*p, out), p++; /* Put out the declaration. */ if ( header ) { fputs(");", out); for ( p = breaks[0]; *p; p++ ) if ( *p == '\r' || *p == '\n' ) putc(*p, out); } else { for ( ap = breaks+1; ap < bp; ap += 2 ) { p = *ap; while ( isidchar(*p) ) putc(*p, out), p++; if ( ap < bp - 1 ) fputs(", ", out); } fputs(") ", out); /* Put out the argument declarations */ for ( ap = breaks+2; ap <= bp; ap += 2 ) (*ap)[-1] = ';'; if ( vararg != 0 ) { *vararg = 0; fputs(breaks[0], out); /* any prior args */ fputs("va_dcl", out); /* the final arg */ fputs(bp[0], out); } else fputs(breaks[0], out); } free((char *)breaks); return 0; } make-dfsg-3.81.orig/ar.c0000644000175000017500000001746310416553102015272 0ustar srivastasrivasta/* Interface to `ar' archives for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #ifndef NO_ARCHIVES #include "filedef.h" #include "dep.h" #include /* Defined in arscan.c. */ extern long int ar_scan PARAMS ((char *archive, long int (*function) (), long int arg)); extern int ar_name_equal PARAMS ((char *name, char *mem, int truncated)); #ifndef VMS extern int ar_member_touch PARAMS ((char *arname, char *memname)); #endif /* Return nonzero if NAME is an archive-member reference, zero if not. An archive-member reference is a name like `lib(member)'. If a name like `lib((entry))' is used, a fatal error is signaled at the attempt to use this unsupported feature. */ int ar_name (char *name) { char *p = strchr (name, '('); char *end; if (p == 0 || p == name) return 0; end = p + strlen (p) - 1; if (*end != ')') return 0; if (p[1] == '(' && end[-1] == ')') fatal (NILF, _("attempt to use unsupported feature: `%s'"), name); return 1; } /* Parse the archive-member reference NAME into the archive and member names. Put the malloc'd archive name in *ARNAME_P if ARNAME_P is non-nil; put the malloc'd member name in *MEMNAME_P if MEMNAME_P is non-nil. */ void ar_parse_name (char *name, char **arname_p, char **memname_p) { char *p = strchr (name, '('), *end = name + strlen (name) - 1; if (arname_p != 0) *arname_p = savestring (name, p - name); if (memname_p != 0) *memname_p = savestring (p + 1, end - (p + 1)); } static long int ar_member_date_1 PARAMS ((int desc, char *mem, int truncated, long int hdrpos, long int datapos, long int size, long int date, int uid, int gid, int mode, char *name)); /* Return the modtime of NAME. */ time_t ar_member_date (char *name) { char *arname; int arname_used = 0; char *memname; long int val; ar_parse_name (name, &arname, &memname); /* Make sure we know the modtime of the archive itself because we are likely to be called just before commands to remake a member are run, and they will change the archive itself. But we must be careful not to enter_file the archive itself if it does not exist, because pattern_search assumes that files found in the data base exist or can be made. */ { struct file *arfile; arfile = lookup_file (arname); if (arfile == 0 && file_exists_p (arname)) { arfile = enter_file (arname); arname_used = 1; } if (arfile != 0) (void) f_mtime (arfile, 0); } val = ar_scan (arname, ar_member_date_1, (long int) memname); if (!arname_used) free (arname); free (memname); return (val <= 0 ? (time_t) -1 : (time_t) val); } /* This function is called by `ar_scan' to find which member to look at. */ /* ARGSUSED */ static long int ar_member_date_1 (int desc UNUSED, char *mem, int truncated, long int hdrpos UNUSED, long int datapos UNUSED, long int size UNUSED, long int date, int uid UNUSED, int gid UNUSED, int mode UNUSED, char *name) { return ar_name_equal (name, mem, truncated) ? date : 0; } /* Set the archive-member NAME's modtime to now. */ #ifdef VMS int ar_touch (char *name) { error (NILF, _("touch archive member is not available on VMS")); return -1; } #else int ar_touch (char *name) { char *arname, *memname; int arname_used = 0; register int val; ar_parse_name (name, &arname, &memname); /* Make sure we know the modtime of the archive itself before we touch the member, since this will change the archive itself. */ { struct file *arfile; arfile = lookup_file (arname); if (arfile == 0) { arfile = enter_file (arname); arname_used = 1; } (void) f_mtime (arfile, 0); } val = 1; switch (ar_member_touch (arname, memname)) { case -1: error (NILF, _("touch: Archive `%s' does not exist"), arname); break; case -2: error (NILF, _("touch: `%s' is not a valid archive"), arname); break; case -3: perror_with_name ("touch: ", arname); break; case 1: error (NILF, _("touch: Member `%s' does not exist in `%s'"), memname, arname); break; case 0: val = 0; break; default: error (NILF, _("touch: Bad return code from ar_member_touch on `%s'"), name); } if (!arname_used) free (arname); free (memname); return val; } #endif /* !VMS */ /* State of an `ar_glob' run, passed to `ar_glob_match'. */ struct ar_glob_state { char *arname; char *pattern; unsigned int size; struct nameseq *chain; unsigned int n; }; /* This function is called by `ar_scan' to match one archive element against the pattern in STATE. */ static long int ar_glob_match (int desc UNUSED, char *mem, int truncated UNUSED, long int hdrpos UNUSED, long int datapos UNUSED, long int size UNUSED, long int date UNUSED, int uid UNUSED, int gid UNUSED, int mode UNUSED, struct ar_glob_state *state) { if (fnmatch (state->pattern, mem, FNM_PATHNAME|FNM_PERIOD) == 0) { /* We have a match. Add it to the chain. */ struct nameseq *new = (struct nameseq *) xmalloc (state->size); new->name = concat (state->arname, mem, ")"); new->next = state->chain; state->chain = new; ++state->n; } return 0L; } /* Return nonzero if PATTERN contains any metacharacters. Metacharacters can be quoted with backslashes if QUOTE is nonzero. */ static int glob_pattern_p (const char *pattern, int quote) { const char *p; int open = 0; for (p = pattern; *p != '\0'; ++p) switch (*p) { case '?': case '*': return 1; case '\\': if (quote) ++p; break; case '[': open = 1; break; case ']': if (open) return 1; break; } return 0; } /* Glob for MEMBER_PATTERN in archive ARNAME. Return a malloc'd chain of matching elements (or nil if none). */ struct nameseq * ar_glob (char *arname, char *member_pattern, unsigned int size) { struct ar_glob_state state; char **names; struct nameseq *n; unsigned int i; if (! glob_pattern_p (member_pattern, 1)) return 0; /* Scan the archive for matches. ar_glob_match will accumulate them in STATE.chain. */ i = strlen (arname); state.arname = (char *) alloca (i + 2); bcopy (arname, state.arname, i); state.arname[i] = '('; state.arname[i + 1] = '\0'; state.pattern = member_pattern; state.size = size; state.chain = 0; state.n = 0; (void) ar_scan (arname, ar_glob_match, (long int) &state); if (state.chain == 0) return 0; /* Now put the names into a vector for sorting. */ names = (char **) alloca (state.n * sizeof (char *)); i = 0; for (n = state.chain; n != 0; n = n->next) names[i++] = n->name; /* Sort them alphabetically. */ qsort ((char *) names, i, sizeof (*names), alpha_compare); /* Put them back into the chain in the sorted order. */ i = 0; for (n = state.chain; n != 0; n = n->next) n->name = names[i++]; return state.chain; } #endif /* Not NO_ARCHIVES. */ make-dfsg-3.81.orig/arscan.c0000644000175000017500000005110210416553102016123 0ustar srivastasrivasta/* Library function for scanning an archive file. Copyright (C) 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #ifdef HAVE_FCNTL_H #include #else #include #endif #ifndef NO_ARCHIVES #ifdef VMS #include #include #include #include #include #if __DECC #include #include #endif static void *VMS_lib_idx; static char *VMS_saved_memname; static time_t VMS_member_date; static long int (*VMS_function) (); static int VMS_get_member_info (struct dsc$descriptor_s *module, unsigned long *rfa) { int status, i; long int fnval; time_t val; static struct dsc$descriptor_s bufdesc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, NULL }; struct mhddef *mhd; char filename[128]; bufdesc.dsc$a_pointer = filename; bufdesc.dsc$w_length = sizeof (filename); status = lbr$set_module (&VMS_lib_idx, rfa, &bufdesc, &bufdesc.dsc$w_length, 0); if (! (status & 1)) { error (NILF, _("lbr$set_module failed to extract module info, status = %d"), status); lbr$close (&VMS_lib_idx); return 0; } mhd = (struct mhddef *) filename; #ifdef __DECC /* John Fowler writes this is needed in his environment, * but that decc$fix_time() isn't documented to work this way. Let me * know if this causes problems in other VMS environments. */ val = decc$fix_time (&mhd->mhd$l_datim) + timezone - daylight*3600; #endif for (i = 0; i < module->dsc$w_length; i++) filename[i] = _tolower ((unsigned char)module->dsc$a_pointer[i]); filename[i] = '\0'; VMS_member_date = (time_t) -1; fnval = (*VMS_function) (-1, filename, 0, 0, 0, 0, val, 0, 0, 0, VMS_saved_memname); if (fnval) { VMS_member_date = fnval; return 0; } else return 1; } /* Takes three arguments ARCHIVE, FUNCTION and ARG. Open the archive named ARCHIVE, find its members one by one, and for each one call FUNCTION with the following arguments: archive file descriptor for reading the data, member name, member name might be truncated flag, member header position in file, member data position in file, member data size, member date, member uid, member gid, member protection mode, ARG. NOTE: on VMS systems, only name, date, and arg are meaningful! The descriptor is poised to read the data of the member when FUNCTION is called. It does not matter how much data FUNCTION reads. If FUNCTION returns nonzero, we immediately return what FUNCTION returned. Returns -1 if archive does not exist, Returns -2 if archive has invalid format. Returns 0 if have scanned successfully. */ long int ar_scan (char *archive, long int (*function) PARAMS ((void)), long int arg) { char *p; static struct dsc$descriptor_s libdesc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, NULL }; unsigned long func = LBR$C_READ; unsigned long type = LBR$C_TYP_UNK; unsigned long index = 1; int status; status = lbr$ini_control (&VMS_lib_idx, &func, &type, 0); if (! (status & 1)) { error (NILF, _("lbr$ini_control failed with status = %d"),status); return -2; } libdesc.dsc$a_pointer = archive; libdesc.dsc$w_length = strlen (archive); status = lbr$open (&VMS_lib_idx, &libdesc, 0, 0, 0, 0, 0); if (! (status & 1)) { error (NILF, _("unable to open library `%s' to lookup member `%s'"), archive, (char *)arg); return -1; } VMS_saved_memname = (char *)arg; /* For comparison, delete .obj from arg name. */ p = strrchr (VMS_saved_memname, '.'); if (p) *p = '\0'; VMS_function = function; VMS_member_date = (time_t) -1; lbr$get_index (&VMS_lib_idx, &index, VMS_get_member_info, 0); /* Undo the damage. */ if (p) *p = '.'; lbr$close (&VMS_lib_idx); return VMS_member_date > 0 ? VMS_member_date : 0; } #else /* !VMS */ /* SCO Unix's compiler defines both of these. */ #ifdef M_UNIX #undef M_XENIX #endif /* On the sun386i and in System V rel 3, ar.h defines two different archive formats depending upon whether you have defined PORTAR (normal) or PORT5AR (System V Release 1). There is no default, one or the other must be defined to have a nonzero value. */ #if (!defined (PORTAR) || PORTAR == 0) && (!defined (PORT5AR) || PORT5AR == 0) #undef PORTAR #ifdef M_XENIX /* According to Jim Sievert , for SCO XENIX defining PORTAR to 1 gets the wrong archive format, and defining it to 0 gets the right one. */ #define PORTAR 0 #else #define PORTAR 1 #endif #endif /* On AIX, define these symbols to be sure to get both archive formats. AIX 4.3 introduced the "big" archive format to support 64-bit object files, so on AIX 4.3 systems we need to support both the "normal" and "big" archive formats. An archive's format is indicated in the "fl_magic" field of the "FL_HDR" structure. For a normal archive, this field will be the string defined by the AIAMAG symbol. For a "big" archive, it will be the string defined by the AIAMAGBIG symbol (at least on AIX it works this way). Note: we'll define these symbols regardless of which AIX version we're compiling on, but this is okay since we'll use the new symbols only if they're present. */ #ifdef _AIX # define __AR_SMALL__ # define __AR_BIG__ #endif #ifndef WINDOWS32 # ifndef __BEOS__ # include # else /* BeOS 5 doesn't have but has archives in the same format * as many other Unices. This was taken from GNU binutils for BeOS. */ # define ARMAG "!\n" /* String that begins an archive file. */ # define SARMAG 8 /* Size of that string. */ # define ARFMAG "`\n" /* String in ar_fmag at end of each header. */ struct ar_hdr { char ar_name[16]; /* Member file name, sometimes / terminated. */ char ar_date[12]; /* File date, decimal seconds since Epoch. */ char ar_uid[6], ar_gid[6]; /* User and group IDs, in ASCII decimal. */ char ar_mode[8]; /* File mode, in ASCII octal. */ char ar_size[10]; /* File size, in ASCII decimal. */ char ar_fmag[2]; /* Always contains ARFMAG. */ }; # endif #else /* These should allow us to read Windows (VC++) libraries (according to Frank * Libbrecht ) */ # include # include # include # define ARMAG IMAGE_ARCHIVE_START # define SARMAG IMAGE_ARCHIVE_START_SIZE # define ar_hdr _IMAGE_ARCHIVE_MEMBER_HEADER # define ar_name Name # define ar_mode Mode # define ar_size Size # define ar_date Date # define ar_uid UserID # define ar_gid GroupID #endif /* Cray's apparently defines this. */ #ifndef AR_HDR_SIZE # define AR_HDR_SIZE (sizeof (struct ar_hdr)) #endif /* Takes three arguments ARCHIVE, FUNCTION and ARG. Open the archive named ARCHIVE, find its members one by one, and for each one call FUNCTION with the following arguments: archive file descriptor for reading the data, member name, member name might be truncated flag, member header position in file, member data position in file, member data size, member date, member uid, member gid, member protection mode, ARG. The descriptor is poised to read the data of the member when FUNCTION is called. It does not matter how much data FUNCTION reads. If FUNCTION returns nonzero, we immediately return what FUNCTION returned. Returns -1 if archive does not exist, Returns -2 if archive has invalid format. Returns 0 if have scanned successfully. */ long int ar_scan (char *archive, long int (*function)(), long int arg) { #ifdef AIAMAG FL_HDR fl_header; #ifdef AIAMAGBIG int big_archive = 0; FL_HDR_BIG fl_header_big; #endif #else int long_name = 0; #endif char *namemap = 0; register int desc = open (archive, O_RDONLY, 0); if (desc < 0) return -1; #ifdef SARMAG { char buf[SARMAG]; register int nread = read (desc, buf, SARMAG); if (nread != SARMAG || bcmp (buf, ARMAG, SARMAG)) { (void) close (desc); return -2; } } #else #ifdef AIAMAG { register int nread = read (desc, (char *) &fl_header, FL_HSZ); if (nread != FL_HSZ) { (void) close (desc); return -2; } #ifdef AIAMAGBIG /* If this is a "big" archive, then set the flag and re-read the header into the "big" structure. */ if (!bcmp (fl_header.fl_magic, AIAMAGBIG, SAIAMAG)) { big_archive = 1; /* seek back to beginning of archive */ if (lseek (desc, 0, 0) < 0) { (void) close (desc); return -2; } /* re-read the header into the "big" structure */ nread = read (desc, (char *) &fl_header_big, FL_HSZ_BIG); if (nread != FL_HSZ_BIG) { (void) close (desc); return -2; } } else #endif /* Check to make sure this is a "normal" archive. */ if (bcmp (fl_header.fl_magic, AIAMAG, SAIAMAG)) { (void) close (desc); return -2; } } #else { #ifndef M_XENIX int buf; #else unsigned short int buf; #endif register int nread = read(desc, &buf, sizeof (buf)); if (nread != sizeof (buf) || buf != ARMAG) { (void) close (desc); return -2; } } #endif #endif /* Now find the members one by one. */ { #ifdef SARMAG register long int member_offset = SARMAG; #else #ifdef AIAMAG long int member_offset; long int last_member_offset; #ifdef AIAMAGBIG if ( big_archive ) { sscanf (fl_header_big.fl_fstmoff, "%20ld", &member_offset); sscanf (fl_header_big.fl_lstmoff, "%20ld", &last_member_offset); } else #endif { sscanf (fl_header.fl_fstmoff, "%12ld", &member_offset); sscanf (fl_header.fl_lstmoff, "%12ld", &last_member_offset); } if (member_offset == 0) { /* Empty archive. */ close (desc); return 0; } #else #ifndef M_XENIX register long int member_offset = sizeof (int); #else /* Xenix. */ register long int member_offset = sizeof (unsigned short int); #endif /* Not Xenix. */ #endif #endif while (1) { register int nread; struct ar_hdr member_header; #ifdef AIAMAGBIG struct ar_hdr_big member_header_big; #endif #ifdef AIAMAG char name[256]; int name_len; long int dateval; int uidval, gidval; long int data_offset; #else char namebuf[sizeof member_header.ar_name + 1]; char *name; int is_namemap; /* Nonzero if this entry maps long names. */ #endif long int eltsize; int eltmode; long int fnval; if (lseek (desc, member_offset, 0) < 0) { (void) close (desc); return -2; } #ifdef AIAMAG #define AR_MEMHDR_SZ(x) (sizeof(x) - sizeof (x._ar_name)) #ifdef AIAMAGBIG if (big_archive) { nread = read (desc, (char *) &member_header_big, AR_MEMHDR_SZ(member_header_big) ); if (nread != AR_MEMHDR_SZ(member_header_big)) { (void) close (desc); return -2; } sscanf (member_header_big.ar_namlen, "%4d", &name_len); nread = read (desc, name, name_len); if (nread != name_len) { (void) close (desc); return -2; } name[name_len] = 0; sscanf (member_header_big.ar_date, "%12ld", &dateval); sscanf (member_header_big.ar_uid, "%12d", &uidval); sscanf (member_header_big.ar_gid, "%12d", &gidval); sscanf (member_header_big.ar_mode, "%12o", &eltmode); sscanf (member_header_big.ar_size, "%20ld", &eltsize); data_offset = (member_offset + AR_MEMHDR_SZ(member_header_big) + name_len + 2); } else #endif { nread = read (desc, (char *) &member_header, AR_MEMHDR_SZ(member_header) ); if (nread != AR_MEMHDR_SZ(member_header)) { (void) close (desc); return -2; } sscanf (member_header.ar_namlen, "%4d", &name_len); nread = read (desc, name, name_len); if (nread != name_len) { (void) close (desc); return -2; } name[name_len] = 0; sscanf (member_header.ar_date, "%12ld", &dateval); sscanf (member_header.ar_uid, "%12d", &uidval); sscanf (member_header.ar_gid, "%12d", &gidval); sscanf (member_header.ar_mode, "%12o", &eltmode); sscanf (member_header.ar_size, "%12ld", &eltsize); data_offset = (member_offset + AR_MEMHDR_SZ(member_header) + name_len + 2); } data_offset += data_offset % 2; fnval = (*function) (desc, name, 0, member_offset, data_offset, eltsize, dateval, uidval, gidval, eltmode, arg); #else /* Not AIAMAG. */ nread = read (desc, (char *) &member_header, AR_HDR_SIZE); if (nread == 0) /* No data left means end of file; that is OK. */ break; if (nread != AR_HDR_SIZE #if defined(ARFMAG) || defined(ARFZMAG) || ( # ifdef ARFMAG bcmp (member_header.ar_fmag, ARFMAG, 2) # else 1 # endif && # ifdef ARFZMAG bcmp (member_header.ar_fmag, ARFZMAG, 2) # else 1 # endif ) #endif ) { (void) close (desc); return -2; } name = namebuf; bcopy (member_header.ar_name, name, sizeof member_header.ar_name); { register char *p = name + sizeof member_header.ar_name; do *p = '\0'; while (p > name && *--p == ' '); #ifndef AIAMAG /* If the member name is "//" or "ARFILENAMES/" this may be a list of file name mappings. The maximum file name length supported by the standard archive format is 14 characters. This member will actually always be the first or second entry in the archive, but we don't check that. */ is_namemap = (!strcmp (name, "//") || !strcmp (name, "ARFILENAMES/")); #endif /* Not AIAMAG. */ /* On some systems, there is a slash after each member name. */ if (*p == '/') *p = '\0'; #ifndef AIAMAG /* If the member name starts with a space or a slash, this is an index into the file name mappings (used by GNU ar). Otherwise if the member name looks like #1/NUMBER the real member name appears in the element data (used by 4.4BSD). */ if (! is_namemap && (name[0] == ' ' || name[0] == '/') && namemap != 0) { name = namemap + atoi (name + 1); long_name = 1; } else if (name[0] == '#' && name[1] == '1' && name[2] == '/') { int namesize = atoi (name + 3); name = (char *) alloca (namesize + 1); nread = read (desc, name, namesize); if (nread != namesize) { close (desc); return -2; } name[namesize] = '\0'; long_name = 1; } #endif /* Not AIAMAG. */ } #ifndef M_XENIX sscanf (member_header.ar_mode, "%o", &eltmode); eltsize = atol (member_header.ar_size); #else /* Xenix. */ eltmode = (unsigned short int) member_header.ar_mode; eltsize = member_header.ar_size; #endif /* Not Xenix. */ fnval = (*function) (desc, name, ! long_name, member_offset, member_offset + AR_HDR_SIZE, eltsize, #ifndef M_XENIX atol (member_header.ar_date), atoi (member_header.ar_uid), atoi (member_header.ar_gid), #else /* Xenix. */ member_header.ar_date, member_header.ar_uid, member_header.ar_gid, #endif /* Not Xenix. */ eltmode, arg); #endif /* AIAMAG. */ if (fnval) { (void) close (desc); return fnval; } #ifdef AIAMAG if (member_offset == last_member_offset) /* End of the chain. */ break; #ifdef AIAMAGBIG if (big_archive) sscanf (member_header_big.ar_nxtmem, "%20ld", &member_offset); else #endif sscanf (member_header.ar_nxtmem, "%12ld", &member_offset); if (lseek (desc, member_offset, 0) != member_offset) { (void) close (desc); return -2; } #else /* If this member maps archive names, we must read it in. The name map will always precede any members whose names must be mapped. */ if (is_namemap) { char *clear; char *limit; namemap = (char *) alloca (eltsize); nread = read (desc, namemap, eltsize); if (nread != eltsize) { (void) close (desc); return -2; } /* The names are separated by newlines. Some formats have a trailing slash. Null terminate the strings for convenience. */ limit = namemap + eltsize; for (clear = namemap; clear < limit; clear++) { if (*clear == '\n') { *clear = '\0'; if (clear[-1] == '/') clear[-1] = '\0'; } } is_namemap = 0; } member_offset += AR_HDR_SIZE + eltsize; if (member_offset % 2 != 0) member_offset++; #endif } } close (desc); return 0; } #endif /* !VMS */ /* Return nonzero iff NAME matches MEM. If TRUNCATED is nonzero, MEM may be truncated to sizeof (struct ar_hdr.ar_name) - 1. */ int ar_name_equal (char *name, char *mem, int truncated) { char *p; p = strrchr (name, '/'); if (p != 0) name = p + 1; #ifndef VMS if (truncated) { #ifdef AIAMAG /* TRUNCATED should never be set on this system. */ abort (); #else struct ar_hdr hdr; #if !defined (__hpux) && !defined (cray) return strneq (name, mem, sizeof(hdr.ar_name) - 1); #else return strneq (name, mem, sizeof(hdr.ar_name) - 2); #endif /* !__hpux && !cray */ #endif /* !AIAMAG */ } #endif /* !VMS */ return !strcmp (name, mem); } #ifndef VMS /* ARGSUSED */ static long int ar_member_pos (int desc UNUSED, char *mem, int truncated, long int hdrpos, long int datapos UNUSED, long int size UNUSED, long int date UNUSED, int uid UNUSED, int gid UNUSED, int mode UNUSED, char *name) { if (!ar_name_equal (name, mem, truncated)) return 0; return hdrpos; } /* Set date of member MEMNAME in archive ARNAME to current time. Returns 0 if successful, -1 if file ARNAME does not exist, -2 if not a valid archive, -3 if other random system call error (including file read-only), 1 if valid but member MEMNAME does not exist. */ int ar_member_touch (char *arname, char *memname) { long int pos = ar_scan (arname, ar_member_pos, (long int) memname); int fd; struct ar_hdr ar_hdr; int i; unsigned int ui; struct stat statbuf; if (pos < 0) return (int) pos; if (!pos) return 1; fd = open (arname, O_RDWR, 0666); if (fd < 0) return -3; /* Read in this member's header */ if (lseek (fd, pos, 0) < 0) goto lose; if (AR_HDR_SIZE != read (fd, (char *) &ar_hdr, AR_HDR_SIZE)) goto lose; /* Write back the header, thus touching the archive file. */ if (lseek (fd, pos, 0) < 0) goto lose; if (AR_HDR_SIZE != write (fd, (char *) &ar_hdr, AR_HDR_SIZE)) goto lose; /* The file's mtime is the time we we want. */ EINTRLOOP (i, fstat (fd, &statbuf)); if (i < 0) goto lose; #if defined(ARFMAG) || defined(ARFZMAG) || defined(AIAMAG) || defined(WINDOWS32) /* Advance member's time to that time */ for (ui = 0; ui < sizeof ar_hdr.ar_date; ui++) ar_hdr.ar_date[ui] = ' '; sprintf (ar_hdr.ar_date, "%ld", (long int) statbuf.st_mtime); #ifdef AIAMAG ar_hdr.ar_date[strlen(ar_hdr.ar_date)] = ' '; #endif #else ar_hdr.ar_date = statbuf.st_mtime; #endif /* Write back this member's header */ if (lseek (fd, pos, 0) < 0) goto lose; if (AR_HDR_SIZE != write (fd, (char *) &ar_hdr, AR_HDR_SIZE)) goto lose; close (fd); return 0; lose: i = errno; close (fd); errno = i; return -3; } #endif #ifdef TEST long int describe_member (int desc, char *name, int truncated, long int hdrpos, long int datapos, long int size, long int date, int uid, int gid, int mode) { extern char *ctime (); printf (_("Member `%s'%s: %ld bytes at %ld (%ld).\n"), name, truncated ? _(" (name might be truncated)") : "", size, hdrpos, datapos); printf (_(" Date %s"), ctime (&date)); printf (_(" uid = %d, gid = %d, mode = 0%o.\n"), uid, gid, mode); return 0; } int main (int argc, char **argv) { ar_scan (argv[1], describe_member); return 0; } #endif /* TEST. */ #endif /* NO_ARCHIVES. */ make-dfsg-3.81.orig/build.sh.in0000555000175000017500000000577510416553102016570 0ustar srivastasrivasta#!/bin/sh # Shell script to build GNU Make in the absence of any `make' program. # @configure_input@ # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # See Makefile.in for comments describing these variables. srcdir='@srcdir@' CC='@CC@' CFLAGS='@CFLAGS@' CPPFLAGS='@CPPFLAGS@' LDFLAGS='@LDFLAGS@' ALLOCA='@ALLOCA@' LOADLIBES='@LIBS@ @LIBINTL@' eval extras=\'@LIBOBJS@\' REMOTE='@REMOTE@' GLOBLIB='@GLOBLIB@' PATH_SEPARATOR='@PATH_SEPARATOR@' OBJEXT='@OBJEXT@' EXEEXT='@EXEEXT@' # Common prefix for machine-independent installed files. prefix='@prefix@' # Common prefix for machine-dependent installed files. exec_prefix=`eval echo @exec_prefix@` # Directory to find libraries in for `-lXXX'. libdir=${exec_prefix}/lib # Directory to search by default for included makefiles. includedir=${prefix}/include localedir=${prefix}/share/locale aliaspath=${localedir}${PATH_SEPARATOR}. defines="-DALIASPATH=\"${aliaspath}\" -DLOCALEDIR=\"${localedir}\" -DLIBDIR=\"${libdir}\" -DINCLUDEDIR=\"${includedir}\""' @DEFS@' # Exit as soon as any command fails. set -e # These are all the objects we need to link together. objs="ar.${OBJEXT} arscan.${OBJEXT} commands.${OBJEXT} default.${OBJEXT} dir.${OBJEXT} expand.${OBJEXT} file.${OBJEXT} function.${OBJEXT} getopt.${OBJEXT} getopt1.${OBJEXT} implicit.${OBJEXT} job.${OBJEXT} main.${OBJEXT} misc.${OBJEXT} read.${OBJEXT} remake.${OBJEXT} rule.${OBJEXT} signame.${OBJEXT} strcache.${OBJEXT} variable.${OBJEXT} version.${OBJEXT} vpath.${OBJEXT} hash.${OBJEXT} remote-${REMOTE}.${OBJEXT} ${extras} ${ALLOCA}" if [ x"$GLOBLIB" != x ]; then objs="$objs glob/fnmatch.${OBJEXT} glob/glob.${OBJEXT}" globinc=-I${srcdir}/glob fi # Compile the source files into those objects. for file in `echo ${objs} | sed 's/\.'${OBJEXT}'/.c/g'`; do echo compiling ${file}... $CC $defines $CPPFLAGS $CFLAGS \ -c -I. -I${srcdir} ${globinc} ${srcdir}/$file done # The object files were actually all put in the current directory. # Remove the source directory names from the list. srcobjs="$objs" objs= for obj in $srcobjs; do objs="$objs `basename $obj`" done # Link all the objects together. echo linking make... $CC $CFLAGS $LDFLAGS $objs $LOADLIBES -o makenew${EXEEXT} echo done mv -f makenew${EXEEXT} make${EXEEXT} make-dfsg-3.81.orig/build_w32.bat0000644000175000017500000005246710416553102017011 0ustar srivastasrivasta@echo off rem Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, rem 2006 Free Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under the rem terms of the GNU General Public License as published by the Free Software rem Foundation; either version 2, or (at your option) any later version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY rem WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR rem A PARTICULAR PURPOSE. See the GNU General Public License for more details. rem You should have received a copy of the GNU General Public License along with rem GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. if not exist config.h copy config.h.W32 config.h cd w32\subproc echo "Creating the subproc library" %ComSpec% /c build.bat %1 cd ..\.. if exist link.dbg del link.dbg if exist link.rel del link.rel echo "Creating GNU Make for Windows 9X/NT/2K/XP" if "%1" == "gcc" GoTo GCCBuild set make=gnumake echo on if not exist .\WinDebug\nul mkdir .\WinDebug cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D TIVOLI /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c variable.c echo WinDebug\variable.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c rule.c echo WinDebug\rule.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c remote-stub.c echo WinDebug\remote-stub.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c commands.c echo WinDebug\commands.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c file.c echo WinDebug\file.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c getloadavg.c echo WinDebug\getloadavg.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c default.c echo WinDebug\default.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c signame.c echo WinDebug\signame.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c expand.c echo WinDebug\expand.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c dir.c echo WinDebug\dir.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c main.c echo WinDebug\main.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c getopt1.c echo WinDebug\getopt1.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c job.c echo WinDebug\job.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c read.c echo WinDebug\read.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c version.c echo WinDebug\version.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c getopt.c echo WinDebug\getopt.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c arscan.c echo WinDebug\arscan.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c hash.c echo WinDebug\hash.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c strcache.c echo WinDebug\strcache.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c remake.c echo WinDebug\remake.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c misc.c echo WinDebug\misc.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c ar.c echo WinDebug\ar.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c function.c echo WinDebug\function.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c vpath.c echo WinDebug\vpath.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c implicit.c echo WinDebug\implicit.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c .\w32\compat\dirent.c echo WinDebug\dirent.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c .\glob\glob.c echo WinDebug\glob.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c .\glob\fnmatch.c echo WinDebug\fnmatch.obj >>link.dbg cl.exe /nologo /MT /W4 /GX /Zi /YX /Od /I . /I glob /I w32/include /D _DEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinDebug/ /Fp.\WinDebug/%make%.pch /Fo.\WinDebug/ /Fd.\WinDebug/%make%.pdb /c .\w32\pathstuff.c echo WinDebug\pathstuff.obj >>link.dbg echo off echo "Linking WinDebug/%make%.exe" rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\windebug\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /MACHINE:I386 /OUT:.\WinDebug/%make%.exe .\WinDebug/variable.obj .\WinDebug/rule.obj .\WinDebug/remote-stub.obj .\WinDebug/commands.obj .\WinDebug/file.obj .\WinDebug/getloadavg.obj .\WinDebug/default.obj .\WinDebug/signame.obj .\WinDebug/expand.obj .\WinDebug/dir.obj .\WinDebug/main.obj .\WinDebug/getopt1.obj .\WinDebug/job.obj .\WinDebug/read.obj .\WinDebug/version.obj .\WinDebug/getopt.obj .\WinDebug/arscan.obj .\WinDebug/remake.obj .\WinDebug/hash.obj .\WinDebug/strcache.obj .\WinDebug/misc.obj .\WinDebug/ar.obj .\WinDebug/function.obj .\WinDebug/vpath.obj .\WinDebug/implicit.obj .\WinDebug/dirent.obj .\WinDebug/glob.obj .\WinDebug/fnmatch.obj .\WinDebug/pathstuff.obj echo kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\windebug\subproc.lib >>link.dbg link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:yes /PDB:.\WinDebug/%make%.pdb /DEBUG /MACHINE:I386 /OUT:.\WinDebug/%make%.exe @link.dbg if not exist .\WinDebug/%make%.exe echo "WinDebug build failed" if exist .\WinDebug/%make%.exe echo "WinDebug build succeeded!" if not exist .\WinRel\nul mkdir .\WinRel echo on cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /D TIVOLI /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c variable.c echo WinRel\variable.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c rule.c echo WinRel\rule.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c remote-stub.c echo WinRel\remote-stub.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c commands.c echo WinRel\commands.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c file.c echo WinRel\file.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c getloadavg.c echo WinRel\getloadavg.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c default.c echo WinRel\default.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c signame.c echo WinRel\signame.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c expand.c echo WinRel\expand.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c dir.c echo WinRel\dir.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c main.c echo WinRel\main.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c getopt1.c echo WinRel\getopt1.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c job.c echo WinRel\job.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c read.c echo WinRel\read.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c version.c echo WinRel\version.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c getopt.c echo WinRel\getopt.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c arscan.c echo WinRel\arscan.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c remake.c echo WinRel\remake.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c hash.c echo WinRel\hash.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c strcache.c echo WinRel\strcache.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c misc.c echo WinRel\misc.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c ar.c echo WinRel\ar.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c function.c echo WinRel\function.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c vpath.c echo WinRel\vpath.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c implicit.c echo WinRel\implicit.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c .\w32\compat\dirent.c echo WinRel\dirent.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c .\glob\glob.c echo WinRel\glob.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c .\glob\fnmatch.c echo WinRel\fnmatch.obj >>link.rel cl.exe /nologo /MT /W4 /GX /YX /O2 /I . /I glob /I w32/include /D NDEBUG /D WINDOWS32 /D WIN32 /D _CONSOLE /D HAVE_CONFIG_H /FR.\WinRel/ /Fp.\WinRel/%make%.pch /Fo.\WinRel/ /c .\w32\pathstuff.c echo WinRel\pathstuff.obj >>link.rel echo off echo "Linking WinRel/%make%.exe" rem link.exe kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\winrel\subproc.lib /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /MACHINE:I386 /OUT:.\WinRel/%make%.exe .\WinRel/variable.obj .\WinRel/rule.obj .\WinRel/remote-stub.obj .\WinRel/commands.obj .\WinRel/file.obj .\WinRel/getloadavg.obj .\WinRel/default.obj .\WinRel/signame.obj .\WinRel/expand.obj .\WinRel/dir.obj .\WinRel/main.obj .\WinRel/getopt1.obj .\WinRel/job.obj .\WinRel/read.obj .\WinRel/version.obj .\WinRel/getopt.obj .\WinRel/arscan.obj .\WinRel/remake.obj .\WinRel/misc.obj .\WinRel/hash.obj .\WinRel/strcache.obj .\WinRel/ar.obj .\WinRel/function.obj .\WinRel/vpath.obj .\WinRel/implicit.obj .\WinRel/dirent.obj .\WinRel/glob.obj .\WinRel/fnmatch.obj .\WinRel/pathstuff.obj echo kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib w32\subproc\winrel\subproc.lib >>link.rel link.exe /NOLOGO /SUBSYSTEM:console /INCREMENTAL:no /PDB:.\WinRel/%make%.pdb /MACHINE:I386 /OUT:.\WinRel/%make%.exe @link.rel if not exist .\WinRel/%make%.exe echo "WinRel build failed" if exist .\WinRel/%make%.exe echo "WinRel build succeeded!" set make= GoTo BuildEnd :GCCBuild echo on gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c variable.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c rule.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c remote-stub.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c commands.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c file.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c getloadavg.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c default.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c signame.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c expand.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c dir.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c main.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c getopt1.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c job.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c read.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c version.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c getopt.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c arscan.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c remake.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c hash.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c strcache.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c misc.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c ar.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c function.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c vpath.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c implicit.c gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c ./glob/glob.c -o glob.o gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c ./glob/fnmatch.c -o fnmatch.o gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I. -I./glob -I./w32/include -DWINDOWS32 -DHAVE_CONFIG_H -c ./w32/pathstuff.c -o pathstuff.o gcc -mthreads -gstabs+ -ggdb3 -o gnumake.exe variable.o rule.o remote-stub.o commands.o file.o getloadavg.o default.o signame.o expand.o dir.o main.o getopt1.o job.o read.o version.o getopt.o arscan.o remake.o misc.o hash.o strcache.o ar.o function.o vpath.o implicit.o glob.o fnmatch.o pathstuff.o w32_misc.o sub_proc.o w32err.o -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 -ladvapi32 -lshell32 -lole32 -loleaut32 -luuid -lodbc32 -lodbccp32 :BuildEnd echo on make-dfsg-3.81.orig/commands.c0000644000175000017500000003676110416553102016473 0ustar srivastasrivasta/* Command processing for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "dep.h" #include "filedef.h" #include "variable.h" #include "job.h" #include "commands.h" #ifdef WINDOWS32 #include #include "w32err.h" #endif #if VMS # define FILE_LIST_SEPARATOR ',' #else # define FILE_LIST_SEPARATOR ' ' #endif extern int remote_kill PARAMS ((int id, int sig)); #ifndef HAVE_UNISTD_H extern int getpid (); #endif /* Set FILE's automatic variables up. */ void set_file_variables (struct file *file) { struct dep *d; char *at, *percent, *star, *less; #ifndef NO_ARCHIVES /* If the target is an archive member `lib(member)', then $@ is `lib' and $% is `member'. */ if (ar_name (file->name)) { unsigned int len; char *p; p = strchr (file->name, '('); at = (char *) alloca (p - file->name + 1); bcopy (file->name, at, p - file->name); at[p - file->name] = '\0'; len = strlen (p + 1); percent = (char *) alloca (len); bcopy (p + 1, percent, len - 1); percent[len - 1] = '\0'; } else #endif /* NO_ARCHIVES. */ { at = file->name; percent = ""; } /* $* is the stem from an implicit or static pattern rule. */ if (file->stem == 0) { /* In Unix make, $* is set to the target name with any suffix in the .SUFFIXES list stripped off for explicit rules. We store this in the `stem' member. */ register struct dep *d; char *name; unsigned int len; #ifndef NO_ARCHIVES if (ar_name (file->name)) { name = strchr (file->name, '(') + 1; len = strlen (name) - 1; } else #endif { name = file->name; len = strlen (name); } for (d = enter_file (".SUFFIXES")->deps; d != 0; d = d->next) { unsigned int slen = strlen (dep_name (d)); if (len > slen && strneq (dep_name (d), name + (len - slen), slen)) { file->stem = savestring (name, len - slen); break; } } if (d == 0) file->stem = ""; } star = file->stem; /* $< is the first not order-only dependency. */ less = ""; for (d = file->deps; d != 0; d = d->next) if (!d->ignore_mtime) { less = dep_name (d); break; } if (file->cmds == default_file->cmds) /* This file got its commands from .DEFAULT. In this case $< is the same as $@. */ less = at; #define DEFINE_VARIABLE(name, len, value) \ (void) define_variable_for_file (name,len,value,o_automatic,0,file) /* Define the variables. */ DEFINE_VARIABLE ("<", 1, less); DEFINE_VARIABLE ("*", 1, star); DEFINE_VARIABLE ("@", 1, at); DEFINE_VARIABLE ("%", 1, percent); /* Compute the values for $^, $+, $?, and $|. */ { static char *plus_value=0, *bar_value=0, *qmark_value=0; static unsigned int qmark_max=0, plus_max=0, bar_max=0; unsigned int qmark_len, plus_len, bar_len; char *cp; char *caret_value; char *qp; char *bp; unsigned int len; /* Compute first the value for $+, which is supposed to contain duplicate dependencies as they were listed in the makefile. */ plus_len = 0; for (d = file->deps; d != 0; d = d->next) if (! d->ignore_mtime) plus_len += strlen (dep_name (d)) + 1; if (plus_len == 0) plus_len++; if (plus_len > plus_max) plus_value = xrealloc (plus_value, plus_max = plus_len); cp = plus_value; qmark_len = plus_len + 1; /* Will be this or less. */ for (d = file->deps; d != 0; d = d->next) if (! d->ignore_mtime) { char *c = dep_name (d); #ifndef NO_ARCHIVES if (ar_name (c)) { c = strchr (c, '(') + 1; len = strlen (c) - 1; } else #endif len = strlen (c); bcopy (c, cp, len); cp += len; *cp++ = FILE_LIST_SEPARATOR; if (! d->changed) qmark_len -= len + 1; /* Don't space in $? for this one. */ } /* Kill the last space and define the variable. */ cp[cp > plus_value ? -1 : 0] = '\0'; DEFINE_VARIABLE ("+", 1, plus_value); /* Make sure that no dependencies are repeated. This does not really matter for the purpose of updating targets, but it might make some names be listed twice for $^ and $?. */ uniquize_deps (file->deps); bar_len = 0; for (d = file->deps; d != 0; d = d->next) if (d->ignore_mtime) bar_len += strlen (dep_name (d)) + 1; if (bar_len == 0) bar_len++; /* Compute the values for $^, $?, and $|. */ cp = caret_value = plus_value; /* Reuse the buffer; it's big enough. */ if (qmark_len > qmark_max) qmark_value = xrealloc (qmark_value, qmark_max = qmark_len); qp = qmark_value; if (bar_len > bar_max) bar_value = xrealloc (bar_value, bar_max = bar_len); bp = bar_value; for (d = file->deps; d != 0; d = d->next) { char *c = dep_name (d); #ifndef NO_ARCHIVES if (ar_name (c)) { c = strchr (c, '(') + 1; len = strlen (c) - 1; } else #endif len = strlen (c); if (d->ignore_mtime) { bcopy (c, bp, len); bp += len; *bp++ = FILE_LIST_SEPARATOR; } else { bcopy (c, cp, len); cp += len; *cp++ = FILE_LIST_SEPARATOR; if (d->changed) { bcopy (c, qp, len); qp += len; *qp++ = FILE_LIST_SEPARATOR; } } } /* Kill the last spaces and define the variables. */ cp[cp > caret_value ? -1 : 0] = '\0'; DEFINE_VARIABLE ("^", 1, caret_value); qp[qp > qmark_value ? -1 : 0] = '\0'; DEFINE_VARIABLE ("?", 1, qmark_value); bp[bp > bar_value ? -1 : 0] = '\0'; DEFINE_VARIABLE ("|", 1, bar_value); } #undef DEFINE_VARIABLE } /* Chop CMDS up into individual command lines if necessary. Also set the `lines_flags' and `any_recurse' members. */ void chop_commands (struct commands *cmds) { register char *p; unsigned int nlines, idx; char **lines; /* If we don't have any commands, or we already parsed them, never mind. */ if (!cmds || cmds->command_lines != 0) return; /* Chop CMDS->commands up into lines in CMDS->command_lines. Also set the corresponding CMDS->lines_flags elements, and the CMDS->any_recurse flag. */ nlines = 5; lines = (char **) xmalloc (5 * sizeof (char *)); idx = 0; p = cmds->commands; while (*p != '\0') { char *end = p; find_end:; end = strchr (end, '\n'); if (end == 0) end = p + strlen (p); else if (end > p && end[-1] == '\\') { int backslash = 1; register char *b; for (b = end - 2; b >= p && *b == '\\'; --b) backslash = !backslash; if (backslash) { ++end; goto find_end; } } if (idx == nlines) { nlines += 2; lines = (char **) xrealloc ((char *) lines, nlines * sizeof (char *)); } lines[idx++] = savestring (p, end - p); p = end; if (*p != '\0') ++p; } if (idx != nlines) { nlines = idx; lines = (char **) xrealloc ((char *) lines, nlines * sizeof (char *)); } cmds->ncommand_lines = nlines; cmds->command_lines = lines; cmds->any_recurse = 0; cmds->lines_flags = (char *) xmalloc (nlines); for (idx = 0; idx < nlines; ++idx) { int flags = 0; for (p = lines[idx]; isblank ((unsigned char)*p) || *p == '-' || *p == '@' || *p == '+'; ++p) switch (*p) { case '+': flags |= COMMANDS_RECURSE; break; case '@': flags |= COMMANDS_SILENT; break; case '-': flags |= COMMANDS_NOERROR; break; } /* If no explicit '+' was given, look for MAKE variable references. */ if (!(flags & COMMANDS_RECURSE) && (strstr (p, "$(MAKE)") != 0 || strstr (p, "${MAKE}") != 0)) flags |= COMMANDS_RECURSE; cmds->lines_flags[idx] = flags; cmds->any_recurse |= flags & COMMANDS_RECURSE; } } /* Execute the commands to remake FILE. If they are currently executing, return or have already finished executing, just return. Otherwise, fork off a child process to run the first command line in the sequence. */ void execute_file_commands (struct file *file) { register char *p; /* Don't go through all the preparations if the commands are nothing but whitespace. */ for (p = file->cmds->commands; *p != '\0'; ++p) if (!isspace ((unsigned char)*p) && *p != '-' && *p != '@') break; if (*p == '\0') { /* If there are no commands, assume everything worked. */ set_command_state (file, cs_running); file->update_status = 0; notice_finished_file (file); return; } /* First set the automatic variables according to this file. */ initialize_file_variables (file, 0); set_file_variables (file); /* Start the commands running. */ new_job (file); } /* This is set while we are inside fatal_error_signal, so things can avoid nonreentrant operations. */ int handling_fatal_signal = 0; /* Handle fatal signals. */ RETSIGTYPE fatal_error_signal (int sig) { #ifdef __MSDOS__ extern int dos_status, dos_command_running; if (dos_command_running) { /* That was the child who got the signal, not us. */ dos_status |= (sig << 8); return; } remove_intermediates (1); exit (EXIT_FAILURE); #else /* not __MSDOS__ */ #ifdef _AMIGA remove_intermediates (1); if (sig == SIGINT) fputs (_("*** Break.\n"), stderr); exit (10); #else /* not Amiga */ #ifdef WINDOWS32 extern HANDLE main_thread; /* Windows creates a sperate thread for handling Ctrl+C, so we need to suspend the main thread, or else we will have race conditions when both threads call reap_children. */ if (main_thread) { DWORD susp_count = SuspendThread (main_thread); if (susp_count != 0) fprintf (stderr, "SuspendThread: suspend count = %ld\n", susp_count); else if (susp_count == (DWORD)-1) { DWORD ierr = GetLastError (); fprintf (stderr, "SuspendThread: error %ld: %s\n", ierr, map_windows32_error_to_string (ierr)); } } #endif handling_fatal_signal = 1; /* Set the handling for this signal to the default. It is blocked now while we run this handler. */ signal (sig, SIG_DFL); /* A termination signal won't be sent to the entire process group, but it means we want to kill the children. */ if (sig == SIGTERM) { register struct child *c; for (c = children; c != 0; c = c->next) if (!c->remote) (void) kill (c->pid, SIGTERM); } /* If we got a signal that means the user wanted to kill make, remove pending targets. */ if (sig == SIGTERM || sig == SIGINT #ifdef SIGHUP || sig == SIGHUP #endif #ifdef SIGQUIT || sig == SIGQUIT #endif ) { register struct child *c; /* Remote children won't automatically get signals sent to the process group, so we must send them. */ for (c = children; c != 0; c = c->next) if (c->remote) (void) remote_kill (c->pid, sig); for (c = children; c != 0; c = c->next) delete_child_targets (c); /* Clean up the children. We don't just use the call below because we don't want to print the "Waiting for children" message. */ while (job_slots_used > 0) reap_children (1, 0); } else /* Wait for our children to die. */ while (job_slots_used > 0) reap_children (1, 1); /* Delete any non-precious intermediate files that were made. */ remove_intermediates (1); #ifdef SIGQUIT if (sig == SIGQUIT) /* We don't want to send ourselves SIGQUIT, because it will cause a core dump. Just exit instead. */ exit (EXIT_FAILURE); #endif #ifdef WINDOWS32 if (main_thread) CloseHandle (main_thread); /* Cannot call W32_kill with a pid (it needs a handle). The exit status of 130 emulates what happens in Bash. */ exit (130); #else /* Signal the same code; this time it will really be fatal. The signal will be unblocked when we return and arrive then to kill us. */ if (kill (getpid (), sig) < 0) pfatal_with_name ("kill"); #endif /* not WINDOWS32 */ #endif /* not Amiga */ #endif /* not __MSDOS__ */ } /* Delete FILE unless it's precious or not actually a file (phony), and it has changed on disk since we last stat'd it. */ static void delete_target (struct file *file, char *on_behalf_of) { struct stat st; int e; if (file->precious || file->phony) return; #ifndef NO_ARCHIVES if (ar_name (file->name)) { time_t file_date = (file->last_mtime == NONEXISTENT_MTIME ? (time_t) -1 : (time_t) FILE_TIMESTAMP_S (file->last_mtime)); if (ar_member_date (file->name) != file_date) { if (on_behalf_of) error (NILF, _("*** [%s] Archive member `%s' may be bogus; not deleted"), on_behalf_of, file->name); else error (NILF, _("*** Archive member `%s' may be bogus; not deleted"), file->name); } return; } #endif EINTRLOOP (e, stat (file->name, &st)); if (e == 0 && S_ISREG (st.st_mode) && FILE_TIMESTAMP_STAT_MODTIME (file->name, st) != file->last_mtime) { if (on_behalf_of) error (NILF, _("*** [%s] Deleting file `%s'"), on_behalf_of, file->name); else error (NILF, _("*** Deleting file `%s'"), file->name); if (unlink (file->name) < 0 && errno != ENOENT) /* It disappeared; so what. */ perror_with_name ("unlink: ", file->name); } } /* Delete all non-precious targets of CHILD unless they were already deleted. Set the flag in CHILD to say they've been deleted. */ void delete_child_targets (struct child *child) { struct dep *d; if (child->deleted) return; /* Delete the target file if it changed. */ delete_target (child->file, (char *) 0); /* Also remove any non-precious targets listed in the `also_make' member. */ for (d = child->file->also_make; d != 0; d = d->next) delete_target (d->file, child->file->name); child->deleted = 1; } /* Print out the commands in CMDS. */ void print_commands (struct commands *cmds) { register char *s; fputs (_("# commands to execute"), stdout); if (cmds->fileinfo.filenm == 0) puts (_(" (built-in):")); else printf (_(" (from `%s', line %lu):\n"), cmds->fileinfo.filenm, cmds->fileinfo.lineno); s = cmds->commands; while (*s != '\0') { char *end; while (isspace ((unsigned char)*s)) ++s; end = strchr (s, '\n'); if (end == 0) end = s + strlen (s); printf ("\t%.*s\n", (int) (end - s), s); s = end; } } make-dfsg-3.81.orig/commands.h0000644000175000017500000000367610416553102016477 0ustar srivastasrivasta/* Definition of data structures describing shell commands for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Structure that gives the commands to make a file and information about where these commands came from. */ struct commands { struct floc fileinfo; /* Where commands were defined. */ char *commands; /* Commands text. */ unsigned int ncommand_lines;/* Number of command lines. */ char **command_lines; /* Commands chopped up into lines. */ char *lines_flags; /* One set of flag bits for each line. */ int any_recurse; /* Nonzero if any `lines_recurse' elt has */ /* the COMMANDS_RECURSE bit set. */ }; /* Bits in `lines_flags'. */ #define COMMANDS_RECURSE 1 /* Recurses: + or $(MAKE). */ #define COMMANDS_SILENT 2 /* Silent: @. */ #define COMMANDS_NOERROR 4 /* No errors: -. */ extern void execute_file_commands PARAMS ((struct file *file)); extern void print_commands PARAMS ((struct commands *cmds)); extern void delete_child_targets PARAMS ((struct child *child)); extern void chop_commands PARAMS ((struct commands *cmds)); extern void set_file_variables PARAMS ((struct file *file)); make-dfsg-3.81.orig/config/0000755000175000017500000000000010416553102015756 5ustar srivastasrivastamake-dfsg-3.81.orig/config/ChangeLog0000644000175000017500000000340110416553102017526 0ustar srivastasrivasta2006-03-09 Paul Smith * dospaths.m4: Add MSYS to the list of targets allowing DOS-style pathnames. Reported by David Ergo . 2005-07-01 Paul D. Smith * Makefile.am (EXTRA_DIST): Added more M4 files to EXTRA_DIST, so users can re-run aclocal. 2003-04-30 Paul D. Smith * dospaths.m4: New macro to test for DOS-style pathnames, based on coreutils 5.0 "dos.m4" by Jim Meyering. 2002-04-21 gettextize * codeset.m4: New file, from gettext-0.11.1. * gettext.m4: New file, from gettext-0.11.1. * glibc21.m4: New file, from gettext-0.11.1. * iconv.m4: New file, from gettext-0.11.1. * isc-posix.m4: New file, from gettext-0.11.1. * lcmessage.m4: New file, from gettext-0.11.1. * lib-ld.m4: New file, from gettext-0.11.1. * lib-link.m4: New file, from gettext-0.11.1. * lib-prefix.m4: New file, from gettext-0.11.1. * progtest.m4: New file, from gettext-0.11.1. * Makefile.am: New file. Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/config/Makefile.am0000644000175000017500000000230410416553102020011 0ustar srivastasrivasta# -*-Makefile-*-, or close enough # Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 nls.m4 \ intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 \ isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 \ progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 longlong.m4 \ dospaths.m4 po.m4 signed.m4 longdouble.m4 wchar_t.m4 \ wint_t.m4 intmax.m4 printf-posix.m4 xsize.m4 size_max.m4 make-dfsg-3.81.orig/config/Makefile.in0000644000175000017500000002401310416553102020023 0ustar srivastasrivasta# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # -*-Makefile-*-, or close enough # Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = config DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ChangeLog \ compile config.guess config.rpath config.sub depcomp \ install-sh mdate-sh missing mkinstalldirs texinfo.tex ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ $(top_srcdir)/config/gettext.m4 $(top_srcdir)/config/iconv.m4 \ $(top_srcdir)/config/lib-ld.m4 \ $(top_srcdir)/config/lib-link.m4 \ $(top_srcdir)/config/lib-prefix.m4 $(top_srcdir)/config/nls.m4 \ $(top_srcdir)/config/po.m4 $(top_srcdir)/config/progtest.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = SOURCES = DIST_SOURCES = DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ GLOBINC = @GLOBINC@ GLOBLIB = @GLOBLIB@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ KMEM_GROUP = @KMEM_GROUP@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_HOST = @MAKE_HOST@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGMERGE = @MSGMERGE@ NEED_SETGID = @NEED_SETGID@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL = @PERL@ POSUB = @POSUB@ RANLIB = @RANLIB@ REMOTE = @REMOTE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ U = @U@ USE_CUSTOMS_FALSE = @USE_CUSTOMS_FALSE@ USE_CUSTOMS_TRUE = @USE_CUSTOMS_TRUE@ USE_LOCAL_GLOB_FALSE = @USE_LOCAL_GLOB_FALSE@ USE_LOCAL_GLOB_TRUE = @USE_LOCAL_GLOB_TRUE@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDOWSENV_FALSE = @WINDOWSENV_FALSE@ WINDOWSENV_TRUE = @WINDOWSENV_TRUE@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ EXTRA_DIST = codeset.m4 gettext.m4 glibc21.m4 iconv.m4 isc-posix.m4 nls.m4 \ intdiv0.m4 inttypes-pri.m4 inttypes.m4 inttypes_h.m4 \ isc-posix.m4 lcmessage.m4 lib-ld.m4 lib-link.m4 lib-prefix.m4 \ progtest.m4 stdint_h.m4 uintmax_t.m4 ulonglong.m4 longlong.m4 \ dospaths.m4 po.m4 signed.m4 longdouble.m4 wchar_t.m4 \ wint_t.m4 intmax.m4 printf-posix.m4 xsize.m4 size_max.m4 all: all-am .SUFFIXES: $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu config/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu config/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh uninstall-info-am: tags: TAGS TAGS: ctags: CTAGS CTAGS: distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic mostlyclean-am distclean: distclean-am -rm -f Makefile distclean-am: clean-am distclean-generic dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am .PHONY: all all-am check check-am clean clean-generic distclean \ distclean-generic distdir dvi dvi-am html html-am info info-am \ install install-am install-data install-data-am install-exec \ install-exec-am install-info install-info-am install-man \ install-strip installcheck installcheck-am installdirs \ maintainer-clean maintainer-clean-generic mostlyclean \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \ uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/config/codeset.m40000644000175000017500000000157610416553102017657 0ustar srivastasrivasta# codeset.m4 serial AM1 (gettext-0.10.40) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. AC_DEFUN([AM_LANGINFO_CODESET], [ AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, [AC_TRY_LINK([#include ], [char* cs = nl_langinfo(CODESET);], am_cv_langinfo_codeset=yes, am_cv_langinfo_codeset=no) ]) if test $am_cv_langinfo_codeset = yes; then AC_DEFINE(HAVE_LANGINFO_CODESET, 1, [Define if you have and nl_langinfo(CODESET).]) fi ]) make-dfsg-3.81.orig/config/compile0000755000175000017500000000717310416553102017344 0ustar srivastasrivasta#! /bin/sh # Wrapper for compilers which do not understand `-c -o'. scriptversion=2005-05-14.22 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. # Written by Tom Tromey . # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: compile [--help] [--version] PROGRAM [ARGS] Wrapper for compilers which do not understand `-c -o'. Remove `-o dest.o' from ARGS, run PROGRAM with the remaining arguments, and rename the output as expected. If you are trying to build a whole package this is not the right script to run: please start by reading the file `INSTALL'. Report bugs to . EOF exit $? ;; -v | --v*) echo "compile $scriptversion" exit $? ;; esac ofile= cfile= eat= for arg do if test -n "$eat"; then eat= else case $1 in -o) # configure might choose to run compile as `compile cc -o foo foo.c'. # So we strip `-o arg' only if arg is an object. eat=1 case $2 in *.o | *.obj) ofile=$2 ;; *) set x "$@" -o "$2" shift ;; esac ;; *.c) cfile=$1 set x "$@" "$1" shift ;; *) set x "$@" "$1" shift ;; esac fi shift done if test -z "$ofile" || test -z "$cfile"; then # If no `-o' option was seen then we might have been invoked from a # pattern rule where we don't need one. That is ok -- this is a # normal compilation that the losing compiler can handle. If no # `.c' file was seen then we are probably linking. That is also # ok. exec "$@" fi # Name of file we expect compiler to create. cofile=`echo "$cfile" | sed -e 's|^.*/||' -e 's/\.c$/.o/'` # Create the lock directory. # Note: use `[/.-]' here to ensure that we don't use the same name # that we are using for the .o file. Also, base the name on the expected # object file name, since that is what matters with a parallel build. lockdir=`echo "$cofile" | sed -e 's|[/.-]|_|g'`.d while true; do if mkdir "$lockdir" >/dev/null 2>&1; then break fi sleep 1 done # FIXME: race condition here if user kills between mkdir and trap. trap "rmdir '$lockdir'; exit 1" 1 2 15 # Run the compile. "$@" ret=$? if test -f "$cofile"; then mv "$cofile" "$ofile" elif test -f "${cofile}bj"; then mv "${cofile}bj" "$ofile" fi rmdir "$lockdir" exit $ret # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: make-dfsg-3.81.orig/config/config.guess0000644000175000017500000012576210416553102020310 0ustar srivastasrivasta#! /bin/sh # Attempt to guess a canonical system name. # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, # 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, # Inc. timestamp='2006-03-13' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA # 02110-1301, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Per Bothner . # Please send patches to . Submit a context # diff and a properly formatted ChangeLog entry. # # This script attempts to guess a canonical system name similar to # config.sub. If it succeeds, it prints the system name on stdout, and # exits with 0. Otherwise, it exits with 1. # # The plan is that this can be called by configure scripts if you # don't specify an explicit build system type. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] Output the configuration name of the system \`$me' is run on. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.guess ($timestamp) Originally written by Per Bothner. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" >&2 exit 1 ;; * ) break ;; esac done if test $# != 0; then echo "$me: too many arguments$help" >&2 exit 1 fi trap 'exit 1' 1 2 15 # CC_FOR_BUILD -- compiler used by this script. Note that the use of a # compiler to aid in system detection is discouraged as it requires # temporary files to be created and, as you can see below, it is a # headache to deal with in a portable fashion. # Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still # use `HOST_CC' if defined, but it is deprecated. # Portable tmp directory creation inspired by the Autoconf team. set_cc_for_build=' trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; : ${TMPDIR=/tmp} ; { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; dummy=$tmp/dummy ; tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; case $CC_FOR_BUILD,$HOST_CC,$CC in ,,) echo "int x;" > $dummy.c ; for c in cc gcc c89 c99 ; do if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then CC_FOR_BUILD="$c"; break ; fi ; done ; if test x"$CC_FOR_BUILD" = x ; then CC_FOR_BUILD=no_compiler_found ; fi ;; ,,*) CC_FOR_BUILD=$CC ;; ,*,*) CC_FOR_BUILD=$HOST_CC ;; esac ; set_cc_for_build= ;' # This is needed to find uname on a Pyramid OSx when run in the BSD universe. # (ghazi@noc.rutgers.edu 1994-08-24) if (test -f /.attbin/uname) >/dev/null 2>&1 ; then PATH=$PATH:/.attbin ; export PATH fi UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown # Note: order is significant - the case branches are not exclusive. case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in *:NetBSD:*:*) # NetBSD (nbsd) targets should (where applicable) match one or # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*, # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently # switched to ELF, *-*-netbsd* would select the old # object file format. This provides both forward # compatibility and a consistent mechanism for selecting the # object file format. # # Note: NetBSD doesn't particularly care about the vendor # portion of the name. We always set it to "unknown". sysctl="sysctl -n hw.machine_arch" UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \ /usr/sbin/$sysctl 2>/dev/null || echo unknown)` case "${UNAME_MACHINE_ARCH}" in armeb) machine=armeb-unknown ;; arm*) machine=arm-unknown ;; sh3el) machine=shl-unknown ;; sh3eb) machine=sh-unknown ;; *) machine=${UNAME_MACHINE_ARCH}-unknown ;; esac # The Operating System including object format, if it has switched # to ELF recently, or will in the future. case "${UNAME_MACHINE_ARCH}" in arm*|i386|m68k|ns32k|sh3*|sparc|vax) eval $set_cc_for_build if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ | grep __ELF__ >/dev/null then # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). # Return netbsd for either. FIX? os=netbsd else os=netbsdelf fi ;; *) os=netbsd ;; esac # The OS release # Debian GNU/NetBSD machines have a different userland, and # thus, need a distinct triplet. However, they do not need # kernel version information, so it can be replaced with a # suitable tag, in the style of linux-gnu. case "${UNAME_VERSION}" in Debian*) release='-gnu' ;; *) release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'` ;; esac # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: # contains redundant information, the shorter form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. echo "${machine}-${os}${release}" exit ;; *:OpenBSD:*:*) UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} exit ;; *:ekkoBSD:*:*) echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} exit ;; *:SolidBSD:*:*) echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} exit ;; macppc:MirBSD:*:*) echo powerppc-unknown-mirbsd${UNAME_RELEASE} exit ;; *:MirBSD:*:*) echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} exit ;; alpha:OSF1:*:*) case $UNAME_RELEASE in *4.0) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ;; *5.*) UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ;; esac # According to Compaq, /usr/sbin/psrinfo has been available on # OSF/1 and Tru64 systems produced since 1995. I hope that # covers most systems running today. This code pipes the CPU # types through head -n 1, so we only detect the type of CPU 0. ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` case "$ALPHA_CPU_TYPE" in "EV4 (21064)") UNAME_MACHINE="alpha" ;; "EV4.5 (21064)") UNAME_MACHINE="alpha" ;; "LCA4 (21066/21068)") UNAME_MACHINE="alpha" ;; "EV5 (21164)") UNAME_MACHINE="alphaev5" ;; "EV5.6 (21164A)") UNAME_MACHINE="alphaev56" ;; "EV5.6 (21164PC)") UNAME_MACHINE="alphapca56" ;; "EV5.7 (21164PC)") UNAME_MACHINE="alphapca57" ;; "EV6 (21264)") UNAME_MACHINE="alphaev6" ;; "EV6.7 (21264A)") UNAME_MACHINE="alphaev67" ;; "EV6.8CB (21264C)") UNAME_MACHINE="alphaev68" ;; "EV6.8AL (21264B)") UNAME_MACHINE="alphaev68" ;; "EV6.8CX (21264D)") UNAME_MACHINE="alphaev68" ;; "EV6.9A (21264/EV69A)") UNAME_MACHINE="alphaev69" ;; "EV7 (21364)") UNAME_MACHINE="alphaev7" ;; "EV7.9 (21364A)") UNAME_MACHINE="alphaev79" ;; esac # A Pn.n version is a patched version. # A Vn.n version is a released version. # A Tn.n version is a released field test version. # A Xn.n version is an unreleased experimental baselevel. # 1.2 uses "1.2" for uname -r. echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` exit ;; Alpha\ *:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # Should we change UNAME_MACHINE based on the output of uname instead # of the specific Alpha model? echo alpha-pc-interix exit ;; 21064:Windows_NT:50:3) echo alpha-dec-winnt3.5 exit ;; Amiga*:UNIX_System_V:4.0:*) echo m68k-unknown-sysv4 exit ;; *:[Aa]miga[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-amigaos exit ;; *:[Mm]orph[Oo][Ss]:*:*) echo ${UNAME_MACHINE}-unknown-morphos exit ;; *:OS/390:*:*) echo i370-ibm-openedition exit ;; *:z/VM:*:*) echo s390-ibm-zvmoe exit ;; *:OS400:*:*) echo powerpc-ibm-os400 exit ;; arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) echo arm-acorn-riscix${UNAME_RELEASE} exit ;; arm:riscos:*:*|arm:RISCOS:*:*) echo arm-unknown-riscos exit ;; SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) echo hppa1.1-hitachi-hiuxmpp exit ;; Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. if test "`(/bin/universe) 2>/dev/null`" = att ; then echo pyramid-pyramid-sysv3 else echo pyramid-pyramid-bsd fi exit ;; NILE*:*:*:dcosx) echo pyramid-pyramid-svr4 exit ;; DRS?6000:unix:4.0:6*) echo sparc-icl-nx6 exit ;; DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:SunOS:5.*:*) echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize # SunOS6. Hard to guess exactly what SunOS6 will be like, but # it's likely to be more like Solaris than SunOS4. echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:*:*) case "`/usr/bin/arch -k`" in Series*|S4*) UNAME_RELEASE=`uname -v` ;; esac # Japanese Language versions have a version number like `4.1.3-JL'. echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` exit ;; sun3*:SunOS:*:*) echo m68k-sun-sunos${UNAME_RELEASE} exit ;; sun*:*:4.2BSD:*) UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3 case "`/bin/arch`" in sun3) echo m68k-sun-sunos${UNAME_RELEASE} ;; sun4) echo sparc-sun-sunos${UNAME_RELEASE} ;; esac exit ;; aushp:SunOS:*:*) echo sparc-auspex-sunos${UNAME_RELEASE} exit ;; # The situation for MiNT is a little confusing. The machine name # can be virtually everything (everything which is not # "atarist" or "atariste" at least should have a processor # > m68000). The system name ranges from "MiNT" over "FreeMiNT" # to the lowercase version "mint" (or "freemint"). Finally # the system name "TOS" denotes a system which is actually not # MiNT. But MiNT is downward compatible to TOS, so this should # be no problem. atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) echo m68k-atari-mint${UNAME_RELEASE} exit ;; milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) echo m68k-milan-mint${UNAME_RELEASE} exit ;; hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) echo m68k-hades-mint${UNAME_RELEASE} exit ;; *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) echo m68k-unknown-mint${UNAME_RELEASE} exit ;; m68k:machten:*:*) echo m68k-apple-machten${UNAME_RELEASE} exit ;; powerpc:machten:*:*) echo powerpc-apple-machten${UNAME_RELEASE} exit ;; RISC*:Mach:*:*) echo mips-dec-mach_bsd4.3 exit ;; RISC*:ULTRIX:*:*) echo mips-dec-ultrix${UNAME_RELEASE} exit ;; VAX*:ULTRIX*:*:*) echo vax-dec-ultrix${UNAME_RELEASE} exit ;; 2020:CLIX:*:* | 2430:CLIX:*:*) echo clipper-intergraph-clix${UNAME_RELEASE} exit ;; mips:*:*:UMIPS | mips:*:*:RISCos) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #ifdef __cplusplus #include /* for printf() prototype */ int main (int argc, char *argv[]) { #else int main (argc, argv) int argc; char *argv[]; { #endif #if defined (host_mips) && defined (MIPSEB) #if defined (SYSTYPE_SYSV) printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_SVR4) printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); #endif #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); #endif #endif exit (-1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && SYSTEM_NAME=`$dummy $dummyarg` && { echo "$SYSTEM_NAME"; exit; } echo mips-mips-riscos${UNAME_RELEASE} exit ;; Motorola:PowerMAX_OS:*:*) echo powerpc-motorola-powermax exit ;; Motorola:*:4.3:PL8-*) echo powerpc-harris-powermax exit ;; Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) echo powerpc-harris-powermax exit ;; Night_Hawk:Power_UNIX:*:*) echo powerpc-harris-powerunix exit ;; m88k:CX/UX:7*:*) echo m88k-harris-cxux7 exit ;; m88k:*:4*:R4*) echo m88k-motorola-sysv4 exit ;; m88k:*:3*:R3*) echo m88k-motorola-sysv3 exit ;; AViiON:dgux:*:*) # DG/UX returns AViiON for all architectures UNAME_PROCESSOR=`/usr/bin/uname -p` if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] then if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ [ ${TARGET_BINARY_INTERFACE}x = x ] then echo m88k-dg-dgux${UNAME_RELEASE} else echo m88k-dg-dguxbcs${UNAME_RELEASE} fi else echo i586-dg-dgux${UNAME_RELEASE} fi exit ;; M88*:DolphinOS:*:*) # DolphinOS (SVR3) echo m88k-dolphin-sysv3 exit ;; M88*:*:R3*:*) # Delta 88k system running SVR3 echo m88k-motorola-sysv3 exit ;; XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) echo m88k-tektronix-sysv3 exit ;; Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) echo m68k-tektronix-bsd exit ;; *:IRIX*:*:*) echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` exit ;; ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' i*86:AIX:*:*) echo i386-ibm-aix exit ;; ia64:AIX:*:*) if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} exit ;; *:AIX:2:3) if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include main() { if (!__power_pc()) exit(1); puts("powerpc-ibm-aix3.2.5"); exit(0); } EOF if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` then echo "$SYSTEM_NAME" else echo rs6000-ibm-aix3.2.5 fi elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then echo rs6000-ibm-aix3.2.4 else echo rs6000-ibm-aix3.2 fi exit ;; *:AIX:*:[45]) IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then IBM_ARCH=rs6000 else IBM_ARCH=powerpc fi if [ -x /usr/bin/oslevel ] ; then IBM_REV=`/usr/bin/oslevel` else IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} fi echo ${IBM_ARCH}-ibm-aix${IBM_REV} exit ;; *:AIX:*:*) echo rs6000-ibm-aix exit ;; ibmrt:4.4BSD:*|romp-ibm:BSD:*) echo romp-ibm-bsd4.4 exit ;; ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to exit ;; # report: romp-ibm BSD 4.3 *:BOSX:*:*) echo rs6000-bull-bosx exit ;; DPX/2?00:B.O.S.:*:*) echo m68k-bull-sysv3 exit ;; 9000/[34]??:4.3bsd:1.*:*) echo m68k-hp-bsd exit ;; hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) echo m68k-hp-bsd4.4 exit ;; 9000/[34678]??:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` case "${UNAME_MACHINE}" in 9000/31? ) HP_ARCH=m68000 ;; 9000/[34]?? ) HP_ARCH=m68k ;; 9000/[678][0-9][0-9]) if [ -x /usr/bin/getconf ]; then sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` case "${sc_cpu_version}" in 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1 532) # CPU_PA_RISC2_0 case "${sc_kernel_bits}" in 32) HP_ARCH="hppa2.0n" ;; 64) HP_ARCH="hppa2.0w" ;; '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20 esac ;; esac fi if [ "${HP_ARCH}" = "" ]; then eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #define _HPUX_SOURCE #include #include int main () { #if defined(_SC_KERNEL_BITS) long bits = sysconf(_SC_KERNEL_BITS); #endif long cpu = sysconf (_SC_CPU_VERSION); switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0"); break; case CPU_PA_RISC1_1: puts ("hppa1.1"); break; case CPU_PA_RISC2_0: #if defined(_SC_KERNEL_BITS) switch (bits) { case 64: puts ("hppa2.0w"); break; case 32: puts ("hppa2.0n"); break; default: puts ("hppa2.0"); break; } break; #else /* !defined(_SC_KERNEL_BITS) */ puts ("hppa2.0"); break; #endif default: puts ("hppa1.0"); break; } exit (0); } EOF (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` test -z "$HP_ARCH" && HP_ARCH=hppa fi ;; esac if [ ${HP_ARCH} = "hppa2.0w" ] then eval $set_cc_for_build # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler # generating 64-bit code. GNU and HP use different nomenclature: # # $ CC_FOR_BUILD=cc ./config.guess # => hppa2.0w-hp-hpux11.23 # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess # => hppa64-hp-hpux11.23 if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | grep __LP64__ >/dev/null then HP_ARCH="hppa2.0w" else HP_ARCH="hppa64" fi fi echo ${HP_ARCH}-hp-hpux${HPUX_REV} exit ;; ia64:HP-UX:*:*) HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` echo ia64-hp-hpux${HPUX_REV} exit ;; 3050*:HI-UX:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include int main () { long cpu = sysconf (_SC_CPU_VERSION); /* The order matters, because CPU_IS_HP_MC68K erroneously returns true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct results, however. */ if (CPU_IS_PA_RISC (cpu)) { switch (cpu) { case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; default: puts ("hppa-hitachi-hiuxwe2"); break; } } else if (CPU_IS_HP_MC68K (cpu)) puts ("m68k-hitachi-hiuxwe2"); else puts ("unknown-hitachi-hiuxwe2"); exit (0); } EOF $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && { echo "$SYSTEM_NAME"; exit; } echo unknown-hitachi-hiuxwe2 exit ;; 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) echo hppa1.1-hp-bsd exit ;; 9000/8??:4.3bsd:*:*) echo hppa1.0-hp-bsd exit ;; *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) echo hppa1.0-hp-mpeix exit ;; hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) echo hppa1.1-hp-osf exit ;; hp8??:OSF1:*:*) echo hppa1.0-hp-osf exit ;; i*86:OSF1:*:*) if [ -x /usr/sbin/sysversion ] ; then echo ${UNAME_MACHINE}-unknown-osf1mk else echo ${UNAME_MACHINE}-unknown-osf1 fi exit ;; parisc*:Lites*:*:*) echo hppa1.1-hp-lites exit ;; C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) echo c1-convex-bsd exit ;; C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) echo c34-convex-bsd exit ;; C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) echo c38-convex-bsd exit ;; C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) echo c4-convex-bsd exit ;; CRAY*Y-MP:*:*:*) echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*[A-Z]90:*:*:*) echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ -e 's/\.[^.]*$/.X/' exit ;; CRAY*TS:*:*:*) echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*T3E:*:*:*) echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; CRAY*SV1:*:*:*) echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; *:UNICOS/mp:*:*) echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' exit ;; F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'` FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; 5000:UNIX_System_V:4.*:*) FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'` FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'` echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" exit ;; i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} exit ;; sparc*:BSD/OS:*:*) echo sparc-unknown-bsdi${UNAME_RELEASE} exit ;; *:BSD/OS:*:*) echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} exit ;; *:FreeBSD:*:*) case ${UNAME_MACHINE} in pc98) echo i386-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; *) echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;; esac exit ;; i*:CYGWIN*:*) echo ${UNAME_MACHINE}-pc-cygwin exit ;; i*:MINGW*:*) echo ${UNAME_MACHINE}-pc-mingw32 exit ;; i*:windows32*:*) # uname -m includes "-pc" on this system. echo ${UNAME_MACHINE}-mingw32 exit ;; i*:PW*:*) echo ${UNAME_MACHINE}-pc-pw32 exit ;; x86:Interix*:[345]*) echo i586-pc-interix${UNAME_RELEASE} exit ;; EM64T:Interix*:[345]*) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) echo i${UNAME_MACHINE}-pc-mks exit ;; i*:Windows_NT*:* | Pentium*:Windows_NT*:*) # How do we know it's Interix rather than the generic POSIX subsystem? # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we # UNAME_MACHINE based on the output of uname instead of i386? echo i586-pc-interix exit ;; i*:UWIN*:*) echo ${UNAME_MACHINE}-pc-uwin exit ;; amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) echo x86_64-unknown-cygwin exit ;; p*:CYGWIN*:*) echo powerpcle-unknown-cygwin exit ;; prep*:SunOS:5.*:*) echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; *:GNU:*:*) # the GNU system echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` exit ;; *:GNU/*:*:*) # other systems with GNU libc and userland echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu exit ;; i*86:Minix:*:*) echo ${UNAME_MACHINE}-pc-minix exit ;; arm*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; cris:Linux:*:*) echo cris-axis-linux-gnu exit ;; crisv32:Linux:*:*) echo crisv32-axis-linux-gnu exit ;; frv:Linux:*:*) echo frv-unknown-linux-gnu exit ;; ia64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m32r*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; m68*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; mips:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips #undef mipsel #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mipsel #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips #else CPU= #endif #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^CPU/{ s: ::g p }'`" test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; mips64:Linux:*:*) eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #undef CPU #undef mips64 #undef mips64el #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) CPU=mips64el #else #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) CPU=mips64 #else CPU= #endif #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^CPU/{ s: ::g p }'`" test x"${CPU}" != x && { echo "${CPU}-unknown-linux-gnu"; exit; } ;; or32:Linux:*:*) echo or32-unknown-linux-gnu exit ;; ppc:Linux:*:*) echo powerpc-unknown-linux-gnu exit ;; ppc64:Linux:*:*) echo powerpc64-unknown-linux-gnu exit ;; alpha:Linux:*:*) case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in EV5) UNAME_MACHINE=alphaev5 ;; EV56) UNAME_MACHINE=alphaev56 ;; PCA56) UNAME_MACHINE=alphapca56 ;; PCA57) UNAME_MACHINE=alphapca56 ;; EV6) UNAME_MACHINE=alphaev6 ;; EV67) UNAME_MACHINE=alphaev67 ;; EV68*) UNAME_MACHINE=alphaev68 ;; esac objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in PA7*) echo hppa1.1-unknown-linux-gnu ;; PA8*) echo hppa2.0-unknown-linux-gnu ;; *) echo hppa-unknown-linux-gnu ;; esac exit ;; parisc64:Linux:*:* | hppa64:Linux:*:*) echo hppa64-unknown-linux-gnu exit ;; s390:Linux:*:* | s390x:Linux:*:*) echo ${UNAME_MACHINE}-ibm-linux exit ;; sh64*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sh*:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; sparc:Linux:*:* | sparc64:Linux:*:*) echo ${UNAME_MACHINE}-unknown-linux-gnu exit ;; vax:Linux:*:*) echo ${UNAME_MACHINE}-dec-linux-gnu exit ;; x86_64:Linux:*:*) echo x86_64-unknown-linux-gnu exit ;; i*86:Linux:*:*) # The BFD linker knows what the default object file format is, so # first see if it will tell us. cd to the root directory to prevent # problems with other programs or directories called `ld' in the path. # Set LC_ALL=C to ensure ld outputs messages in English. ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \ | sed -ne '/supported targets:/!d s/[ ][ ]*/ /g s/.*supported targets: *// s/ .*// p'` case "$ld_supported_targets" in elf32-i386) TENTATIVE="${UNAME_MACHINE}-pc-linux-gnu" ;; a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit ;; coff-i386) echo "${UNAME_MACHINE}-pc-linux-gnucoff" exit ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. echo "${UNAME_MACHINE}-pc-linux-gnuoldld" exit ;; esac # Determine whether the default compiler is a.out or elf eval $set_cc_for_build sed 's/^ //' << EOF >$dummy.c #include #ifdef __ELF__ # ifdef __GLIBC__ # if __GLIBC__ >= 2 LIBC=gnu # else LIBC=gnulibc1 # endif # else LIBC=gnulibc1 # endif #else #if defined(__INTEL_COMPILER) || defined(__PGI) || defined(__sun) LIBC=gnu #else LIBC=gnuaout #endif #endif #ifdef __dietlibc__ LIBC=dietlibc #endif EOF eval "`$CC_FOR_BUILD -E $dummy.c 2>/dev/null | sed -n ' /^LIBC/{ s: ::g p }'`" test x"${LIBC}" != x && { echo "${UNAME_MACHINE}-pc-linux-${LIBC}" exit } test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; } ;; i*86:DYNIX/ptx:4*:*) # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. # earlier versions are messed up and put the nodename in both # sysname and nodename. echo i386-sequent-sysv4 exit ;; i*86:UNIX_SV:4.2MP:2.*) # Unixware is an offshoot of SVR4, but it has its own version # number series starting with 2... # I am not positive that other SVR4 systems won't match this, # I just have to hope. -- rms. # Use sysv4.2uw... so that sysv4* matches it. echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} exit ;; i*86:OS/2:*:*) # If we were able to find `uname', then EMX Unix compatibility # is probably installed. echo ${UNAME_MACHINE}-pc-os2-emx exit ;; i*86:XTS-300:*:STOP) echo ${UNAME_MACHINE}-unknown-stop exit ;; i*86:atheos:*:*) echo ${UNAME_MACHINE}-unknown-atheos exit ;; i*86:syllable:*:*) echo ${UNAME_MACHINE}-pc-syllable exit ;; i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*) echo i386-unknown-lynxos${UNAME_RELEASE} exit ;; i*86:*DOS:*:*) echo ${UNAME_MACHINE}-pc-msdosdjgpp exit ;; i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} else echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} fi exit ;; i*86:*:5:[678]*) # UnixWare 7.x, OpenUNIX and OpenServer 6. case `/bin/uname -X | grep "^Machine"` in *486*) UNAME_MACHINE=i486 ;; *Pentium) UNAME_MACHINE=i586 ;; *Pent*|*Celeron) UNAME_MACHINE=i686 ;; esac echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} exit ;; i*86:*:3.2:*) if test -f /usr/options/cb.name; then UNAME_REL=`sed -n 's/.*Version //p' /dev/null >/dev/null ; then UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ && UNAME_MACHINE=i586 (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ && UNAME_MACHINE=i686 (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ && UNAME_MACHINE=i686 echo ${UNAME_MACHINE}-pc-sco$UNAME_REL else echo ${UNAME_MACHINE}-pc-sysv32 fi exit ;; pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about # the processor, so we play safe by assuming i386. echo i386-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 exit ;; paragon:*:*:*) echo i860-intel-osf1 exit ;; i860:*:4.*:*) # i860-SVR4 if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 else # Add other i860-SVR4 vendors below as they are discovered. echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 fi exit ;; mini*:CTIX:SYS*5:*) # "miniframe" echo m68010-convergent-sysv exit ;; mc68k:UNIX:SYSTEM5:3.51m) echo m68k-convergent-sysv exit ;; M680?0:D-NIX:5.3:*) echo m68k-diab-dnix exit ;; M68*:*:R3V[5678]*:*) test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) OS_REL='' test -r /etc/.relid \ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; mc68030:UNIX_System_V:4.*:*) echo m68k-atari-sysv4 exit ;; TSUNAMI:LynxOS:2.*:*) echo sparc-unknown-lynxos${UNAME_RELEASE} exit ;; rs6000:LynxOS:2.*:*) echo rs6000-unknown-lynxos${UNAME_RELEASE} exit ;; PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*) echo powerpc-unknown-lynxos${UNAME_RELEASE} exit ;; SM[BE]S:UNIX_SV:*:*) echo mips-dde-sysv${UNAME_RELEASE} exit ;; RM*:ReliantUNIX-*:*:*) echo mips-sni-sysv4 exit ;; RM*:SINIX-*:*:*) echo mips-sni-sysv4 exit ;; *:SINIX-*:*:*) if uname -p 2>/dev/null >/dev/null ; then UNAME_MACHINE=`(uname -p) 2>/dev/null` echo ${UNAME_MACHINE}-sni-sysv4 else echo ns32k-sni-sysv fi exit ;; PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort # says echo i586-unisys-sysv4 exit ;; *:UNIX_System_V:4*:FTX*) # From Gerald Hewes . # How about differentiating between stratus architectures? -djm echo hppa1.1-stratus-sysv4 exit ;; *:*:*:FTX*) # From seanf@swdc.stratus.com. echo i860-stratus-sysv4 exit ;; i*86:VOS:*:*) # From Paul.Green@stratus.com. echo ${UNAME_MACHINE}-stratus-vos exit ;; *:VOS:*:*) # From Paul.Green@stratus.com. echo hppa1.1-stratus-vos exit ;; mc68*:A/UX:*:*) echo m68k-apple-aux${UNAME_RELEASE} exit ;; news*:NEWS-OS:6*:*) echo mips-sony-newsos6 exit ;; R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) if [ -d /usr/nec ]; then echo mips-nec-sysv${UNAME_RELEASE} else echo mips-unknown-sysv${UNAME_RELEASE} fi exit ;; BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. echo powerpc-be-beos exit ;; BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. echo powerpc-apple-beos exit ;; BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; SX-5:SUPER-UX:*:*) echo sx5-nec-superux${UNAME_RELEASE} exit ;; SX-6:SUPER-UX:*:*) echo sx6-nec-superux${UNAME_RELEASE} exit ;; Power*:Rhapsody:*:*) echo powerpc-apple-rhapsody${UNAME_RELEASE} exit ;; *:Rhapsody:*:*) echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} exit ;; *:Darwin:*:*) UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown case $UNAME_PROCESSOR in unknown) UNAME_PROCESSOR=powerpc ;; esac echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} exit ;; *:procnto*:*:* | *:QNX:[0123456789]*:*) UNAME_PROCESSOR=`uname -p` if test "$UNAME_PROCESSOR" = "x86"; then UNAME_PROCESSOR=i386 UNAME_MACHINE=pc fi echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} exit ;; *:QNX:*:4*) echo i386-pc-qnx exit ;; NSE-?:NONSTOP_KERNEL:*:*) echo nse-tandem-nsk${UNAME_RELEASE} exit ;; NSR-?:NONSTOP_KERNEL:*:*) echo nsr-tandem-nsk${UNAME_RELEASE} exit ;; *:NonStop-UX:*:*) echo mips-compaq-nonstopux exit ;; BS2000:POSIX*:*:*) echo bs2000-siemens-sysv exit ;; DS/*:UNIX_System_V:*:*) echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} exit ;; *:Plan9:*:*) # "uname -m" is not consistent, so use $cputype instead. 386 # is converted to i386 for consistency with other x86 # operating systems. if test "$cputype" = "386"; then UNAME_MACHINE=i386 else UNAME_MACHINE="$cputype" fi echo ${UNAME_MACHINE}-unknown-plan9 exit ;; *:TOPS-10:*:*) echo pdp10-unknown-tops10 exit ;; *:TENEX:*:*) echo pdp10-unknown-tenex exit ;; KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) echo pdp10-dec-tops20 exit ;; XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) echo pdp10-xkl-tops20 exit ;; *:TOPS-20:*:*) echo pdp10-unknown-tops20 exit ;; *:ITS:*:*) echo pdp10-unknown-its exit ;; SEI:*:*:SEIUX) echo mips-sei-seiux${UNAME_RELEASE} exit ;; *:DragonFly:*:*) echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` exit ;; *:*VMS:*:*) UNAME_MACHINE=`(uname -p) 2>/dev/null` case "${UNAME_MACHINE}" in A*) echo alpha-dec-vms ; exit ;; I*) echo ia64-dec-vms ; exit ;; V*) echo vax-dec-vms ; exit ;; esac ;; *:XENIX:*:SysV) echo i386-pc-xenix exit ;; i*86:skyos:*:*) echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//' exit ;; i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 #echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2 eval $set_cc_for_build cat >$dummy.c < # include #endif main () { #if defined (sony) #if defined (MIPSEB) /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed, I don't know.... */ printf ("mips-sony-bsd\n"); exit (0); #else #include printf ("m68k-sony-newsos%s\n", #ifdef NEWSOS4 "4" #else "" #endif ); exit (0); #endif #endif #if defined (__arm) && defined (__acorn) && defined (__unix) printf ("arm-acorn-riscix\n"); exit (0); #endif #if defined (hp300) && !defined (hpux) printf ("m68k-hp-bsd\n"); exit (0); #endif #if defined (NeXT) #if !defined (__ARCHITECTURE__) #define __ARCHITECTURE__ "m68k" #endif int version; version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`; if (version < 4) printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version); else printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version); exit (0); #endif #if defined (MULTIMAX) || defined (n16) #if defined (UMAXV) printf ("ns32k-encore-sysv\n"); exit (0); #else #if defined (CMU) printf ("ns32k-encore-mach\n"); exit (0); #else printf ("ns32k-encore-bsd\n"); exit (0); #endif #endif #endif #if defined (__386BSD__) printf ("i386-pc-bsd\n"); exit (0); #endif #if defined (sequent) #if defined (i386) printf ("i386-sequent-dynix\n"); exit (0); #endif #if defined (ns32000) printf ("ns32k-sequent-dynix\n"); exit (0); #endif #endif #if defined (_SEQUENT_) struct utsname un; uname(&un); if (strncmp(un.version, "V2", 2) == 0) { printf ("i386-sequent-ptx2\n"); exit (0); } if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */ printf ("i386-sequent-ptx1\n"); exit (0); } printf ("i386-sequent-ptx\n"); exit (0); #endif #if defined (vax) # if !defined (ultrix) # include # if defined (BSD) # if BSD == 43 printf ("vax-dec-bsd4.3\n"); exit (0); # else # if BSD == 199006 printf ("vax-dec-bsd4.3reno\n"); exit (0); # else printf ("vax-dec-bsd\n"); exit (0); # endif # endif # else printf ("vax-dec-bsd\n"); exit (0); # endif # else printf ("vax-dec-ultrix\n"); exit (0); # endif #endif #if defined (alliant) && defined (i860) printf ("i860-alliant-bsd\n"); exit (0); #endif exit (1); } EOF $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` && { echo "$SYSTEM_NAME"; exit; } # Apollos put the system type in the environment. test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; } # Convex versions that predate uname can use getsysinfo(1) if [ -x /usr/convex/getsysinfo ] then case `getsysinfo -f cpu_type` in c1*) echo c1-convex-bsd exit ;; c2*) if getsysinfo -f scalar_acc then echo c32-convex-bsd else echo c2-convex-bsd fi exit ;; c34*) echo c34-convex-bsd exit ;; c38*) echo c38-convex-bsd exit ;; c4*) echo c4-convex-bsd exit ;; esac fi cat >&2 < in order to provide the needed information to handle your system. config.guess timestamp = $timestamp uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` /bin/uname -X = `(/bin/uname -X) 2>/dev/null` hostinfo = `(hostinfo) 2>/dev/null` /bin/universe = `(/bin/universe) 2>/dev/null` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` /bin/arch = `(/bin/arch) 2>/dev/null` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` UNAME_MACHINE = ${UNAME_MACHINE} UNAME_RELEASE = ${UNAME_RELEASE} UNAME_SYSTEM = ${UNAME_SYSTEM} UNAME_VERSION = ${UNAME_VERSION} EOF exit 1 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: make-dfsg-3.81.orig/config/config.rpath0000755000175000017500000003521310416553102020272 0ustar srivastasrivasta#! /bin/sh # Output a system dependent set of variables, describing how to set the # run time search path of shared libraries in an executable. # # Copyright 1996-2003 Free Software Foundation, Inc. # Taken from GNU libtool, 2001 # Originally by Gordon Matzigkeit , 1996 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, but # WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU # General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. # # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # # The first argument passed to this file is the canonical host specification, # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # The environment variables CC, GCC, LDFLAGS, LD, with_gnu_ld # should be set by the caller. # # The set of defined variables is at the end of this script. # Known limitations: # - On IRIX 6.5 with CC="cc", the run time search patch must not be longer # than 256 bytes, otherwise the compiler driver will dump core. The only # known workaround is to choose shorter directory names for the build # directory and/or the installation directory. # All known linkers require a `.a' archive for static linking (except M$VC, # which needs '.lib'). libext=a shrext=.so host="$1" host_cpu=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_vendor=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo "$host" | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` # Code taken from libtool.m4's AC_LIBTOOL_PROG_COMPILER_PIC. wl= if test "$GCC" = yes; then wl='-Wl,' else case "$host_os" in aix*) wl='-Wl,' ;; mingw* | pw32* | os2*) ;; hpux9* | hpux10* | hpux11*) wl='-Wl,' ;; irix5* | irix6* | nonstopux*) wl='-Wl,' ;; newsos6) ;; linux*) case $CC in icc|ecc) wl='-Wl,' ;; ccc) wl='-Wl,' ;; esac ;; osf3* | osf4* | osf5*) wl='-Wl,' ;; sco3.2v5*) ;; solaris*) wl='-Wl,' ;; sunos4*) wl='-Qoption ld ' ;; sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) wl='-Wl,' ;; sysv4*MP*) ;; uts4*) ;; esac fi # Code taken from libtool.m4's AC_LIBTOOL_PROG_LD_SHLIBS. hardcode_libdir_flag_spec= hardcode_libdir_separator= hardcode_direct=no hardcode_minus_L=no case "$host_os" in cygwin* | mingw* | pw32*) # FIXME: the MSVC++ port hasn't been tested in a loooong time # When not using gcc, we currently assume that we are using # Microsoft Visual C++. if test "$GCC" != yes; then with_gnu_ld=no fi ;; openbsd*) with_gnu_ld=no ;; esac ld_shlibs=yes if test "$with_gnu_ld" = yes; then case "$host_os" in aix3* | aix4* | aix5*) # On AIX/PPC, the GNU linker is very broken if test "$host_cpu" != ia64; then ld_shlibs=no fi ;; amigaos*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes # Samuel A. Falvo II reports # that the semantics of dynamic libraries on AmigaOS, at least up # to version 4, is to share data among multiple programs linked # with the same dynamic library. Since this doesn't match the # behavior of shared libraries on other platforms, we can use # them. ld_shlibs=no ;; beos*) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; cygwin* | mingw* | pw32*) # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. hardcode_libdir_flag_spec='-L$libdir' if $LD --help 2>&1 | grep 'auto-import' > /dev/null; then : else ld_shlibs=no fi ;; netbsd*) ;; solaris* | sysv5*) if $LD -v 2>&1 | grep 'BFD 2\.8' > /dev/null; then ld_shlibs=no elif $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; sunos4*) hardcode_direct=yes ;; *) if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then : else ld_shlibs=no fi ;; esac if test "$ld_shlibs" = yes; then # Unlike libtool, we use -rpath here, not --rpath, since the documented # option of GNU ld is called -rpath, not --rpath. hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' fi else case "$host_os" in aix3*) # Note: this linker hardcodes the directories in LIBPATH if there # are no directories specified by -L. hardcode_minus_L=yes if test "$GCC" = yes; then # Neither direct hardcoding nor static linking is supported with a # broken collect2. hardcode_direct=unsupported fi ;; aix4* | aix5*) if test "$host_cpu" = ia64; then # On IA64, the linker does run time linking by default, so we don't # have to do anything special. aix_use_runtimelinking=no else aix_use_runtimelinking=no # Test if we are trying to use run time linking or normal # AIX style linking. If -brtl is somewhere in LDFLAGS, we # need to do runtime linking. case $host_os in aix4.[23]|aix4.[23].*|aix5*) for ld_flag in $LDFLAGS; do if (test $ld_flag = "-brtl" || test $ld_flag = "-Wl,-brtl"); then aix_use_runtimelinking=yes break fi done esac fi hardcode_direct=yes hardcode_libdir_separator=':' if test "$GCC" = yes; then case $host_os in aix4.[012]|aix4.[012].*) collect2name=`${CC} -print-prog-name=collect2` if test -f "$collect2name" && \ strings "$collect2name" | grep resolve_lib_name >/dev/null then # We have reworked collect2 hardcode_direct=yes else # We have old collect2 hardcode_direct=unsupported hardcode_minus_L=yes hardcode_libdir_flag_spec='-L$libdir' hardcode_libdir_separator= fi esac fi # Begin _LT_AC_SYS_LIBPATH_AIX. echo 'int main () { return 0; }' > conftest.c ${CC} ${LDFLAGS} conftest.c -o conftest aix_libpath=`dump -H conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` if test -z "$aix_libpath"; then aix_libpath=`dump -HX64 conftest 2>/dev/null | sed -n -e '/Import File Strings/,/^$/ { /^0/ { s/^0 *\(.*\)$/\1/; p; } }'` fi if test -z "$aix_libpath"; then aix_libpath="/usr/lib:/lib" fi rm -f conftest.c conftest # End _LT_AC_SYS_LIBPATH_AIX. if test "$aix_use_runtimelinking" = yes; then hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" else if test "$host_cpu" = ia64; then hardcode_libdir_flag_spec='${wl}-R $libdir:/usr/lib:/lib' else hardcode_libdir_flag_spec='${wl}-blibpath:$libdir:'"$aix_libpath" fi fi ;; amigaos*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes # see comment about different semantics on the GNU ld section ld_shlibs=no ;; bsdi4*) ;; cygwin* | mingw* | pw32*) # When not using gcc, we currently assume that we are using # Microsoft Visual C++. # hardcode_libdir_flag_spec is actually meaningless, as there is # no search path for DLLs. hardcode_libdir_flag_spec=' ' libext=lib ;; darwin* | rhapsody*) if $CC -v 2>&1 | grep 'Apple' >/dev/null ; then hardcode_direct=no fi ;; dgux*) hardcode_libdir_flag_spec='-L$libdir' ;; freebsd1*) ld_shlibs=no ;; freebsd2.2*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; freebsd2*) hardcode_direct=yes hardcode_minus_L=yes ;; freebsd*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; hpux9*) hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; hpux10* | hpux11*) if test "$with_gnu_ld" = no; then case "$host_cpu" in hppa*64*) hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=no ;; ia64*) hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=no # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; *) hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' hardcode_libdir_separator=: hardcode_direct=yes # hardcode_minus_L: Not really in the search PATH, # but as the default location of the library. hardcode_minus_L=yes ;; esac fi ;; irix5* | irix6* | nonstopux*) hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; netbsd*) hardcode_libdir_flag_spec='-R$libdir' hardcode_direct=yes ;; newsos6) hardcode_direct=yes hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; openbsd*) hardcode_direct=yes if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`" || test "$host_os-$host_cpu" = "openbsd2.8-powerpc"; then hardcode_libdir_flag_spec='${wl}-rpath,$libdir' else case "$host_os" in openbsd[01].* | openbsd2.[0-7] | openbsd2.[0-7].*) hardcode_libdir_flag_spec='-R$libdir' ;; *) hardcode_libdir_flag_spec='${wl}-rpath,$libdir' ;; esac fi ;; os2*) hardcode_libdir_flag_spec='-L$libdir' hardcode_minus_L=yes ;; osf3*) hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' hardcode_libdir_separator=: ;; osf4* | osf5*) if test "$GCC" = yes; then hardcode_libdir_flag_spec='${wl}-rpath ${wl}$libdir' else # Both cc and cxx compiler support -rpath directly hardcode_libdir_flag_spec='-rpath $libdir' fi hardcode_libdir_separator=: ;; sco3.2v5*) ;; solaris*) hardcode_libdir_flag_spec='-R$libdir' ;; sunos4*) hardcode_libdir_flag_spec='-L$libdir' hardcode_direct=yes hardcode_minus_L=yes ;; sysv4) case $host_vendor in sni) hardcode_direct=yes # is this really true??? ;; siemens) hardcode_direct=no ;; motorola) hardcode_direct=no #Motorola manual says yes, but my tests say they lie ;; esac ;; sysv4.3*) ;; sysv4*MP*) if test -d /usr/nec; then ld_shlibs=yes fi ;; sysv4.2uw2*) hardcode_direct=yes hardcode_minus_L=no ;; sysv5OpenUNIX8* | sysv5UnixWare7* | sysv5uw[78]* | unixware7*) ;; sysv5*) hardcode_libdir_flag_spec= ;; uts4*) hardcode_libdir_flag_spec='-L$libdir' ;; *) ld_shlibs=no ;; esac fi # Check dynamic linker characteristics # Code taken from libtool.m4's AC_LIBTOOL_SYS_DYNAMIC_LINKER. libname_spec='lib$name' case "$host_os" in aix3*) ;; aix4* | aix5*) ;; amigaos*) ;; beos*) ;; bsdi4*) ;; cygwin* | mingw* | pw32*) shrext=.dll ;; darwin* | rhapsody*) shrext=.dylib ;; dgux*) ;; freebsd1*) ;; freebsd*) ;; gnu*) ;; hpux9* | hpux10* | hpux11*) case "$host_cpu" in ia64*) shrext=.so ;; hppa*64*) shrext=.sl ;; *) shrext=.sl ;; esac ;; irix5* | irix6* | nonstopux*) case "$host_os" in irix5* | nonstopux*) libsuff= shlibsuff= ;; *) case $LD in *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") libsuff= shlibsuff= ;; *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") libsuff=32 shlibsuff=N32 ;; *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") libsuff=64 shlibsuff=64 ;; *) libsuff= shlibsuff= ;; esac ;; esac ;; linux*oldld* | linux*aout* | linux*coff*) ;; linux*) ;; netbsd*) ;; newsos6) ;; nto-qnx) ;; openbsd*) ;; os2*) libname_spec='$name' shrext=.dll ;; osf3* | osf4* | osf5*) ;; sco3.2v5*) ;; solaris*) ;; sunos4*) ;; sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) ;; sysv4*MP*) ;; uts4*) ;; esac sed_quote_subst='s/\(["`$\\]\)/\\\1/g' escaped_wl=`echo "X$wl" | sed -e 's/^X//' -e "$sed_quote_subst"` shlibext=`echo "$shrext" | sed -e 's,^\.,,'` escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. Submit a context # diff and a properly formatted ChangeLog entry. # # Configuration subroutine to validate and canonicalize a configuration type. # Supply the specified configuration type as an argument. # If it is invalid, we print an error message on stderr and exit with code 1. # Otherwise, we print the canonical config type on stdout and succeed. # This file is supposed to be the same for all GNU packages # and recognize all the CPU types, system types and aliases # that are meaningful with *any* GNU software. # Each package is responsible for reporting which valid configurations # it does not support. The user should be able to distinguish # a failure to support a valid configuration from a meaningless # configuration. # The goal of this file is to map all the various variations of a given # machine specification into a single specification in the form: # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM # or in some cases, the newer four-part form: # CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM # It is wrong to echo any other type of specification. me=`echo "$0" | sed -e 's,.*/,,'` usage="\ Usage: $0 [OPTION] CPU-MFR-OPSYS $0 [OPTION] ALIAS Canonicalize a configuration name. Operation modes: -h, --help print this help, then exit -t, --time-stamp print date of last modification, then exit -v, --version print version number, then exit Report bugs and patches to ." version="\ GNU config.sub ($timestamp) Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." help=" Try \`$me --help' for more information." # Parse command line while test $# -gt 0 ; do case $1 in --time-stamp | --time* | -t ) echo "$timestamp" ; exit ;; --version | -v ) echo "$version" ; exit ;; --help | --h* | -h ) echo "$usage"; exit ;; -- ) # Stop option processing shift; break ;; - ) # Use stdin as input. break ;; -* ) echo "$me: invalid option $1$help" exit 1 ;; *local*) # First pass through any local machine types. echo $1 exit ;; * ) break ;; esac done case $# in 0) echo "$me: missing argument$help" >&2 exit 1;; 1) ;; *) echo "$me: too many arguments$help" >&2 exit 1;; esac # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). # Here we must recognize all the valid KERNEL-OS combinations. maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ;; *) basic_machine=`echo $1 | sed 's/-[^-]*$//'` if [ $basic_machine != $1 ] then os=`echo $1 | sed 's/.*-/-/'` else os=; fi ;; esac ### Let's recognize common machines as not being operating systems so ### that things like config.sub decstation-3100 work. We also ### recognize some manufacturers as not being operating systems, so we ### can provide default operating systems below. case $os in -sun*os*) # Prevent following clause from handling this invalid input. ;; -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ -apple | -axis | -knuth | -cray) os= basic_machine=$1 ;; -sim | -cisco | -oki | -wec | -winbond) os= basic_machine=$1 ;; -scout) ;; -wrs) os=-vxworks basic_machine=$1 ;; -chorusos*) os=-chorusos basic_machine=$1 ;; -chorusrdb) os=-chorusrdb basic_machine=$1 ;; -hiux*) os=-hiuxwe2 ;; -sco6) os=-sco5v6 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5) os=-sco3.2v5 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco4) os=-sco3.2v4 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2.[4-9]*) os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco3.2v[4-9]*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco5v6*) # Don't forget version if it is 3.2v4 or newer. basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -sco*) os=-sco3.2v2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -udk*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -isc) os=-isc2.2 basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -clix*) basic_machine=clipper-intergraph ;; -isc*) basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ;; -lynx*) os=-lynxos ;; -ptx*) basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ;; -windowsnt*) os=`echo $os | sed -e 's/windowsnt/winnt/'` ;; -psos*) os=-psos ;; -mint | -mint[0-9]*) basic_machine=m68k-atari os=-mint ;; esac # Decode aliases for certain CPU-COMPANY combinations. case $basic_machine in # Recognize the basic CPU types without company name. # Some are omitted here because they have special meanings below. 1750a | 580 \ | a29k \ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ | am33_2.0 \ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \ | bfin \ | c4x | clipper \ | d10v | d30v | dlx | dsp16xx \ | fr30 | frv \ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ | m32r | m32rle | m68000 | m68k | m88k | maxq | mb | microblaze | mcore \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ | mips64vr | mips64vrel \ | mips64orion | mips64orionel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ | mips64vr5900 | mips64vr5900el \ | mipsisa32 | mipsisa32el \ | mipsisa32r2 | mipsisa32r2el \ | mipsisa64 | mipsisa64el \ | mipsisa64r2 | mipsisa64r2el \ | mipsisa64sb1 | mipsisa64sb1el \ | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ | mt \ | msp430 \ | nios | nios2 \ | ns16k | ns32k \ | or32 \ | pdp10 | pdp11 | pj | pjl \ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ | strongarm \ | tahoe | thumb | tic4x | tic80 | tron \ | v850 | v850e \ | we32k \ | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \ | z8k) basic_machine=$basic_machine-unknown ;; m32c) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) # Motorola 68HC11/12. basic_machine=$basic_machine-unknown os=-none ;; m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ;; ms1) basic_machine=mt-unknown ;; # We use `pc' rather than `unknown' # because (1) that's what they normally are, and # (2) the word "unknown" tends to confuse beginning users. i*86 | x86_64) basic_machine=$basic_machine-pc ;; # Object if more than one company name word. *-*-*) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; # Recognize the basic CPU types with company name. 580-* \ | a29k-* \ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ | avr-* \ | bfin-* | bs2000-* \ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \ | clipper-* | craynv-* | cydra-* \ | d10v-* | d30v-* | dlx-* \ | elxsi-* \ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \ | h8300-* | h8500-* \ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ | m88110-* | m88k-* | maxq-* | mcore-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ | mips64vr-* | mips64vrel-* \ | mips64orion-* | mips64orionel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ | mips64vr5900-* | mips64vr5900el-* \ | mipsisa32-* | mipsisa32el-* \ | mipsisa32r2-* | mipsisa32r2el-* \ | mipsisa64-* | mipsisa64el-* \ | mipsisa64r2-* | mipsisa64r2el-* \ | mipsisa64sb1-* | mipsisa64sb1el-* \ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ | mipstx39-* | mipstx39el-* \ | mmix-* \ | mt-* \ | msp430-* \ | nios-* | nios2-* \ | none-* | np1-* | ns16k-* | ns32k-* \ | orion-* \ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa-* \ | ymp-* \ | z8k-*) ;; m32c-*) ;; # Recognize the various machine names and aliases which stand # for a CPU type and a company and sometimes even an OS. 386bsd) basic_machine=i386-unknown os=-bsd ;; 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) basic_machine=m68000-att ;; 3b*) basic_machine=we32k-att ;; a29khif) basic_machine=a29k-amd os=-udi ;; abacus) basic_machine=abacus-unknown ;; adobe68k) basic_machine=m68010-adobe os=-scout ;; alliant | fx80) basic_machine=fx80-alliant ;; altos | altos3068) basic_machine=m68k-altos ;; am29k) basic_machine=a29k-none os=-bsd ;; amd64) basic_machine=x86_64-pc ;; amd64-*) basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; amdahl) basic_machine=580-amdahl os=-sysv ;; amiga | amiga-*) basic_machine=m68k-unknown ;; amigaos | amigados) basic_machine=m68k-unknown os=-amigaos ;; amigaunix | amix) basic_machine=m68k-unknown os=-sysv4 ;; apollo68) basic_machine=m68k-apollo os=-sysv ;; apollo68bsd) basic_machine=m68k-apollo os=-bsd ;; aux) basic_machine=m68k-apple os=-aux ;; balance) basic_machine=ns32k-sequent os=-dynix ;; c90) basic_machine=c90-cray os=-unicos ;; convex-c1) basic_machine=c1-convex os=-bsd ;; convex-c2) basic_machine=c2-convex os=-bsd ;; convex-c32) basic_machine=c32-convex os=-bsd ;; convex-c34) basic_machine=c34-convex os=-bsd ;; convex-c38) basic_machine=c38-convex os=-bsd ;; cray | j90) basic_machine=j90-cray os=-unicos ;; craynv) basic_machine=craynv-cray os=-unicosmp ;; cr16c) basic_machine=cr16c-unknown os=-elf ;; crds | unos) basic_machine=m68k-crds ;; crisv32 | crisv32-* | etraxfs*) basic_machine=crisv32-axis ;; cris | cris-* | etrax*) basic_machine=cris-axis ;; crx) basic_machine=crx-unknown os=-elf ;; da30 | da30-*) basic_machine=m68k-da30 ;; decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) basic_machine=mips-dec ;; decsystem10* | dec10*) basic_machine=pdp10-dec os=-tops10 ;; decsystem20* | dec20*) basic_machine=pdp10-dec os=-tops20 ;; delta | 3300 | motorola-3300 | motorola-delta \ | 3300-motorola | delta-motorola) basic_machine=m68k-motorola ;; delta88) basic_machine=m88k-motorola os=-sysv3 ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp ;; dpx20 | dpx20-*) basic_machine=rs6000-bull os=-bosx ;; dpx2* | dpx2*-bull) basic_machine=m68k-bull os=-sysv3 ;; ebmon29k) basic_machine=a29k-amd os=-ebmon ;; elxsi) basic_machine=elxsi-elxsi os=-bsd ;; encore | umax | mmax) basic_machine=ns32k-encore ;; es1800 | OSE68k | ose68k | ose | OSE) basic_machine=m68k-ericsson os=-ose ;; fx2800) basic_machine=i860-alliant ;; genix) basic_machine=ns32k-ns ;; gmicro) basic_machine=tron-gmicro os=-sysv ;; go32) basic_machine=i386-pc os=-go32 ;; h3050r* | hiux*) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; h8300hms) basic_machine=h8300-hitachi os=-hms ;; h8300xray) basic_machine=h8300-hitachi os=-xray ;; h8500hms) basic_machine=h8500-hitachi os=-hms ;; harris) basic_machine=m88k-harris os=-sysv3 ;; hp300-*) basic_machine=m68k-hp ;; hp300bsd) basic_machine=m68k-hp os=-bsd ;; hp300hpux) basic_machine=m68k-hp os=-hpux ;; hp3k9[0-9][0-9] | hp9[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k2[0-9][0-9] | hp9k31[0-9]) basic_machine=m68000-hp ;; hp9k3[2-9][0-9]) basic_machine=m68k-hp ;; hp9k6[0-9][0-9] | hp6[0-9][0-9]) basic_machine=hppa1.0-hp ;; hp9k7[0-79][0-9] | hp7[0-79][0-9]) basic_machine=hppa1.1-hp ;; hp9k78[0-9] | hp78[0-9]) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) # FIXME: really hppa2.0-hp basic_machine=hppa1.1-hp ;; hp9k8[0-9][13679] | hp8[0-9][13679]) basic_machine=hppa1.1-hp ;; hp9k8[0-9][0-9] | hp8[0-9][0-9]) basic_machine=hppa1.0-hp ;; hppa-next) os=-nextstep3 ;; hppaosf) basic_machine=hppa1.1-hp os=-osf ;; hppro) basic_machine=hppa1.1-hp os=-proelf ;; i370-ibm* | ibm*) basic_machine=i370-ibm ;; # I'm not sure what "Sysv32" means. Should this be sysv3.2? i*86v32) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv32 ;; i*86v4*) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv4 ;; i*86v) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-sysv ;; i*86sol2) basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` os=-solaris2 ;; i386mach) basic_machine=i386-mach os=-mach ;; i386-vsta | vsta) basic_machine=i386-unknown os=-vsta ;; iris | iris4d) basic_machine=mips-sgi case $os in -irix*) ;; *) os=-irix4 ;; esac ;; isi68 | isi) basic_machine=m68k-isi os=-sysv ;; m88k-omron*) basic_machine=m88k-omron ;; magnum | m3230) basic_machine=mips-mips os=-sysv ;; merlin) basic_machine=ns32k-utek os=-sysv ;; mingw32) basic_machine=i386-pc os=-mingw32 ;; miniframe) basic_machine=m68000-convergent ;; *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) basic_machine=m68k-atari os=-mint ;; mips3*-*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ;; mips3*) basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ;; monitor) basic_machine=m68k-rom68k os=-coff ;; morphos) basic_machine=powerpc-unknown os=-morphos ;; msdos) basic_machine=i386-pc os=-msdos ;; ms1-*) basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ;; mvs) basic_machine=i370-ibm os=-mvs ;; ncr3000) basic_machine=i486-ncr os=-sysv4 ;; netbsd386) basic_machine=i386-unknown os=-netbsd ;; netwinder) basic_machine=armv4l-rebel os=-linux ;; news | news700 | news800 | news900) basic_machine=m68k-sony os=-newsos ;; news1000) basic_machine=m68030-sony os=-newsos ;; news-3600 | risc-news) basic_machine=mips-sony os=-newsos ;; necv70) basic_machine=v70-nec os=-sysv ;; next | m*-next ) basic_machine=m68k-next case $os in -nextstep* ) ;; -ns2*) os=-nextstep2 ;; *) os=-nextstep3 ;; esac ;; nh3000) basic_machine=m68k-harris os=-cxux ;; nh[45]000) basic_machine=m88k-harris os=-cxux ;; nindy960) basic_machine=i960-intel os=-nindy ;; mon960) basic_machine=i960-intel os=-mon960 ;; nonstopux) basic_machine=mips-compaq os=-nonstopux ;; np1) basic_machine=np1-gould ;; nsr-tandem) basic_machine=nsr-tandem ;; op50n-* | op60c-*) basic_machine=hppa1.1-oki os=-proelf ;; openrisc | openrisc-*) basic_machine=or32-unknown ;; os400) basic_machine=powerpc-ibm os=-os400 ;; OSE68000 | ose68000) basic_machine=m68000-ericsson os=-ose ;; os68k) basic_machine=m68k-none os=-os68k ;; pa-hitachi) basic_machine=hppa1.1-hitachi os=-hiuxwe2 ;; paragon) basic_machine=i860-intel os=-osf ;; pbd) basic_machine=sparc-tti ;; pbb) basic_machine=m68k-tti ;; pc532 | pc532-*) basic_machine=ns32k-pc532 ;; pc98) basic_machine=i386-pc ;; pc98-*) basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium | p5 | k5 | k6 | nexgen | viac3) basic_machine=i586-pc ;; pentiumpro | p6 | 6x86 | athlon | athlon_*) basic_machine=i686-pc ;; pentiumii | pentium2 | pentiumiii | pentium3) basic_machine=i686-pc ;; pentium4) basic_machine=i786-pc ;; pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumpro-* | p6-* | 6x86-* | athlon-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pentium4-*) basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ;; pn) basic_machine=pn-gould ;; power) basic_machine=power-ibm ;; ppc) basic_machine=powerpc-unknown ;; ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppcle | powerpclittle | ppc-le | powerpc-little) basic_machine=powerpcle-unknown ;; ppcle-* | powerpclittle-*) basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64) basic_machine=powerpc64-unknown ;; ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ppc64le | powerpc64little | ppc64-le | powerpc64-little) basic_machine=powerpc64le-unknown ;; ppc64le-* | powerpc64little-*) basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ;; ps2) basic_machine=i386-ibm ;; pw32) basic_machine=i586-unknown os=-pw32 ;; rdos) basic_machine=i386-pc os=-rdos ;; rom68k) basic_machine=m68k-rom68k os=-coff ;; rm[46]00) basic_machine=mips-siemens ;; rtpc | rtpc-*) basic_machine=romp-ibm ;; s390 | s390-*) basic_machine=s390-ibm ;; s390x | s390x-*) basic_machine=s390x-ibm ;; sa29200) basic_machine=a29k-amd os=-udi ;; sb1) basic_machine=mipsisa64sb1-unknown ;; sb1el) basic_machine=mipsisa64sb1el-unknown ;; sei) basic_machine=mips-sei os=-seiux ;; sequent) basic_machine=i386-sequent ;; sh) basic_machine=sh-hitachi os=-hms ;; sh64) basic_machine=sh64-unknown ;; sparclite-wrs | simso-wrs) basic_machine=sparclite-wrs os=-vxworks ;; sps7) basic_machine=m68k-bull os=-sysv2 ;; spur) basic_machine=spur-unknown ;; st2000) basic_machine=m68k-tandem ;; stratus) basic_machine=i860-stratus os=-sysv4 ;; sun2) basic_machine=m68000-sun ;; sun2os3) basic_machine=m68000-sun os=-sunos3 ;; sun2os4) basic_machine=m68000-sun os=-sunos4 ;; sun3os3) basic_machine=m68k-sun os=-sunos3 ;; sun3os4) basic_machine=m68k-sun os=-sunos4 ;; sun4os3) basic_machine=sparc-sun os=-sunos3 ;; sun4os4) basic_machine=sparc-sun os=-sunos4 ;; sun4sol2) basic_machine=sparc-sun os=-solaris2 ;; sun3 | sun3-*) basic_machine=m68k-sun ;; sun4) basic_machine=sparc-sun ;; sun386 | sun386i | roadrunner) basic_machine=i386-sun ;; sv1) basic_machine=sv1-cray os=-unicos ;; symmetry) basic_machine=i386-sequent os=-dynix ;; t3e) basic_machine=alphaev5-cray os=-unicos ;; t90) basic_machine=t90-cray os=-unicos ;; tic54x | c54x*) basic_machine=tic54x-unknown os=-coff ;; tic55x | c55x*) basic_machine=tic55x-unknown os=-coff ;; tic6x | c6x*) basic_machine=tic6x-unknown os=-coff ;; tx39) basic_machine=mipstx39-unknown ;; tx39el) basic_machine=mipstx39el-unknown ;; toad1) basic_machine=pdp10-xkl os=-tops20 ;; tower | tower-32) basic_machine=m68k-ncr ;; tpf) basic_machine=s390x-ibm os=-tpf ;; udi29k) basic_machine=a29k-amd os=-udi ;; ultra3) basic_machine=a29k-nyu os=-sym1 ;; v810 | necv810) basic_machine=v810-nec os=-none ;; vaxv) basic_machine=vax-dec os=-sysv ;; vms) basic_machine=vax-dec os=-vms ;; vpp*|vx|vx-*) basic_machine=f301-fujitsu ;; vxworks960) basic_machine=i960-wrs os=-vxworks ;; vxworks68) basic_machine=m68k-wrs os=-vxworks ;; vxworks29k) basic_machine=a29k-wrs os=-vxworks ;; w65*) basic_machine=w65-wdc os=-none ;; w89k-*) basic_machine=hppa1.1-winbond os=-proelf ;; xbox) basic_machine=i686-pc os=-mingw32 ;; xps | xps100) basic_machine=xps100-honeywell ;; ymp) basic_machine=ymp-cray os=-unicos ;; z8k-*-coff) basic_machine=z8k-unknown os=-sim ;; none) basic_machine=none-none os=-none ;; # Here we handle the default manufacturer of certain CPU types. It is in # some cases the only manufacturer, in others, it is the most popular. w89k) basic_machine=hppa1.1-winbond ;; op50n) basic_machine=hppa1.1-oki ;; op60c) basic_machine=hppa1.1-oki ;; romp) basic_machine=romp-ibm ;; mmix) basic_machine=mmix-knuth ;; rs6000) basic_machine=rs6000-ibm ;; vax) basic_machine=vax-dec ;; pdp10) # there are many clones, so DEC is not a safe bet basic_machine=pdp10-unknown ;; pdp11) basic_machine=pdp11-dec ;; we32k) basic_machine=we32k-att ;; sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) basic_machine=sparc-sun ;; cydra) basic_machine=cydra-cydrome ;; orion) basic_machine=orion-highlevel ;; orion105) basic_machine=clipper-highlevel ;; mac | mpw | mac-mpw) basic_machine=m68k-apple ;; pmac | pmac-mpw) basic_machine=powerpc-apple ;; *-unknown) # Make sure to match an already-canonicalized machine name. ;; *) echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 exit 1 ;; esac # Here we canonicalize certain aliases for manufacturers. case $basic_machine in *-digital*) basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ;; *-commodore*) basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ;; *) ;; esac # Decode manufacturer-specific aliases for certain operating systems. if [ x"$os" != x"" ] then case $os in # First match some system type aliases # that might get confused with valid system types. # -solaris* is a basic system type, with this one exception. -solaris1 | -solaris1.*) os=`echo $os | sed -e 's|solaris1|sunos4|'` ;; -solaris) os=-solaris2 ;; -svr4*) os=-sysv4 ;; -unixware*) os=-sysv4.2uw ;; -gnu/linux*) os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ;; # First accept the basic system types. # The portable systems comes first. # Each alternative MUST END IN A *, to match a version number. # -sysv* is not here because it comes later, after sysvr4. -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ | -aos* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ | -openbsd* | -solidbsd* \ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ | -chorusos* | -chorusrdb* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ | -skyos* | -haiku* | -rdos*) # Remember, each alternative MUST END IN *, to match a version number. ;; -qnx*) case $basic_machine in x86-* | i*86-*) ;; *) os=-nto$os ;; esac ;; -nto-qnx*) ;; -nto*) os=`echo $os | sed -e 's|nto|nto-qnx|'` ;; -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ;; -mac*) os=`echo $os | sed -e 's|mac|macos|'` ;; -linux-dietlibc) os=-linux-dietlibc ;; -linux*) os=`echo $os | sed -e 's|linux|linux-gnu|'` ;; -sunos5*) os=`echo $os | sed -e 's|sunos5|solaris2|'` ;; -sunos6*) os=`echo $os | sed -e 's|sunos6|solaris3|'` ;; -opened*) os=-openedition ;; -os400*) os=-os400 ;; -wince*) os=-wince ;; -osfrose*) os=-osfrose ;; -osf*) os=-osf ;; -utek*) os=-bsd ;; -dynix*) os=-bsd ;; -acis*) os=-aos ;; -atheos*) os=-atheos ;; -syllable*) os=-syllable ;; -386bsd) os=-bsd ;; -ctix* | -uts*) os=-sysv ;; -nova*) os=-rtmk-nova ;; -ns2 ) os=-nextstep2 ;; -nsk*) os=-nsk ;; # Preserve the version number of sinix5. -sinix5.*) os=`echo $os | sed -e 's|sinix|sysv|'` ;; -sinix*) os=-sysv4 ;; -tpf*) os=-tpf ;; -triton*) os=-sysv3 ;; -oss*) os=-sysv3 ;; -svr4) os=-sysv4 ;; -svr3) os=-sysv3 ;; -sysvr4) os=-sysv4 ;; # This must come after -sysvr4. -sysv*) ;; -ose*) os=-ose ;; -es1800*) os=-ose ;; -xenix) os=-xenix ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) os=-mint ;; -aros*) os=-aros ;; -kaos*) os=-kaos ;; -zvmoe) os=-zvmoe ;; -none) ;; *) # Get rid of the `-' at the beginning of $os. os=`echo $os | sed 's/[^-]*-//'` echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 exit 1 ;; esac else # Here we handle the default operating systems that come with various machines. # The value should be what the vendor currently ships out the door with their # machine or put another way, the most popular os provided with the machine. # Note that if you're going to try to match "-MANUFACTURER" here (say, # "-sun"), then you have to tell the case statement up towards the top # that MANUFACTURER isn't an operating system. Otherwise, code above # will signal an error saying that MANUFACTURER isn't an operating # system, and we'll never get to this point. case $basic_machine in *-acorn) os=-riscix1.2 ;; arm*-rebel) os=-linux ;; arm*-semi) os=-aout ;; c4x-* | tic4x-*) os=-coff ;; # This must come before the *-dec entry. pdp10-*) os=-tops20 ;; pdp11-*) os=-none ;; *-dec | vax-*) os=-ultrix4.2 ;; m68*-apollo) os=-domain ;; i386-sun) os=-sunos4.0.2 ;; m68000-sun) os=-sunos3 # This also exists in the configure program, but was not the # default. # os=-sunos4 ;; m68*-cisco) os=-aout ;; mips*-cisco) os=-elf ;; mips*-*) os=-elf ;; or32-*) os=-coff ;; *-tti) # must be before sparc entry or we get the wrong os. os=-sysv3 ;; sparc-* | *-sun) os=-sunos4.1.1 ;; *-be) os=-beos ;; *-haiku) os=-haiku ;; *-ibm) os=-aix ;; *-knuth) os=-mmixware ;; *-wec) os=-proelf ;; *-winbond) os=-proelf ;; *-oki) os=-proelf ;; *-hp) os=-hpux ;; *-hitachi) os=-hiux ;; i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) os=-sysv ;; *-cbm) os=-amigaos ;; *-dg) os=-dgux ;; *-dolphin) os=-sysv3 ;; m68k-ccur) os=-rtu ;; m88k-omron*) os=-luna ;; *-next ) os=-nextstep ;; *-sequent) os=-ptx ;; *-crds) os=-unos ;; *-ns) os=-genix ;; i370-*) os=-mvs ;; *-next) os=-nextstep3 ;; *-gould) os=-sysv ;; *-highlevel) os=-bsd ;; *-encore) os=-bsd ;; *-sgi) os=-irix ;; *-siemens) os=-sysv4 ;; *-masscomp) os=-rtu ;; f30[01]-fujitsu | f700-fujitsu) os=-uxpv ;; *-rom68k) os=-coff ;; *-*bug) os=-coff ;; *-apple) os=-macos ;; *-atari*) os=-mint ;; *) os=-none ;; esac fi # Here we handle the case where we know the os, and the CPU type, but not the # manufacturer. We pick the logical manufacturer. vendor=unknown case $basic_machine in *-unknown) case $os in -riscix*) vendor=acorn ;; -sunos*) vendor=sun ;; -aix*) vendor=ibm ;; -beos*) vendor=be ;; -hpux*) vendor=hp ;; -mpeix*) vendor=hp ;; -hiux*) vendor=hitachi ;; -unos*) vendor=crds ;; -dgux*) vendor=dg ;; -luna*) vendor=omron ;; -genix*) vendor=ns ;; -mvs* | -opened*) vendor=ibm ;; -os400*) vendor=ibm ;; -ptx*) vendor=sequent ;; -tpf*) vendor=ibm ;; -vxsim* | -vxworks* | -windiss*) vendor=wrs ;; -aux*) vendor=apple ;; -hms*) vendor=hitachi ;; -mpw* | -macos*) vendor=apple ;; -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) vendor=atari ;; -vos*) vendor=stratus ;; esac basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ;; esac echo $basic_machine$os exit # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "timestamp='" # time-stamp-format: "%:y-%02m-%02d" # time-stamp-end: "'" # End: make-dfsg-3.81.orig/config/depcomp0000755000175000017500000003710010416553102017334 0ustar srivastasrivasta#! /bin/sh # depcomp - compile a program generating dependencies as side-effects scriptversion=2005-07-09.11 # Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # Originally written by Alexandre Oliva . case $1 in '') echo "$0: No command. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: depcomp [--help] [--version] PROGRAM [ARGS] Run PROGRAMS ARGS to compile a file, generating dependencies as side-effects. Environment variables: depmode Dependency tracking mode. source Source file read by `PROGRAMS ARGS'. object Object file output by `PROGRAMS ARGS'. DEPDIR directory where to store dependencies. depfile Dependency file to output. tmpdepfile Temporary file to use when outputing dependencies. libtool Whether libtool is used (yes/no). Report bugs to . EOF exit $? ;; -v | --v*) echo "depcomp $scriptversion" exit $? ;; esac if test -z "$depmode" || test -z "$source" || test -z "$object"; then echo "depcomp: Variables source, object and depmode must be set" 1>&2 exit 1 fi # Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po. depfile=${depfile-`echo "$object" | sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`} tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`} rm -f "$tmpdepfile" # Some modes work just like other modes, but use different flags. We # parameterize here, but still list the modes in the big case below, # to make depend.m4 easier to write. Note that we *cannot* use a case # here, because this file can only contain one case statement. if test "$depmode" = hp; then # HP compiler uses -M and no extra arg. gccflag=-M depmode=gcc fi if test "$depmode" = dashXmstdout; then # This is just like dashmstdout with a different argument. dashmflag=-xM depmode=dashmstdout fi case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what ## we want. Yay! Note: for some reason libtool 1.4 doesn't like ## it if -MD -MP comes after the -MF stuff. Hmm. "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi mv "$tmpdepfile" "$depfile" ;; gcc) ## There are various ways to get dependency output from gcc. Here's ## why we pick this rather obscure method: ## - Don't want to use -MD because we'd like the dependencies to end ## up in a subdir. Having to rename by hand is ugly. ## (We might end up doing this anyway to support other compilers.) ## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like ## -MM, not -M (despite what the docs say). ## - Using -M directly means running the compiler twice (even worse ## than renaming). if test -z "$gccflag"; then gccflag=-MD, fi "$@" -Wp,"$gccflag$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" echo "$object : \\" > "$depfile" alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ## The second -e expression handles DOS-style file names with drive letters. sed -e 's/^[^:]*: / /' \ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile" ## This next piece of magic avoids the `deleted header file' problem. ## The problem is that when a header file which appears in a .P file ## is deleted, the dependency causes make to die (because there is ## typically no way to rebuild the header). We avoid this by adding ## dummy dependencies for each header file. Too bad gcc doesn't do ## this for us directly. tr ' ' ' ' < "$tmpdepfile" | ## Some versions of gcc put a space before the `:'. On the theory ## that the space means something, we add a space to the output as ## well. ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; hp) # This case exists only to let depend.m4 do its work. It works by # looking at the text of this script. This case will never be run, # since it is checked for above. exit 1 ;; sgi) if test "$libtool" = yes; then "$@" "-Wp,-MDupdate,$tmpdepfile" else "$@" -MDupdate "$tmpdepfile" fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files echo "$object : \\" > "$depfile" # Clip off the initial element (the dependent). Don't try to be # clever and replace this with sed code, as IRIX sed won't handle # lines with more than a fixed number of characters (4096 in # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines; # the IRIX cc adds comments like `#:fec' to the end of the # dependency line. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' ' ' ' >> $depfile echo >> $depfile # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ >> $depfile else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; aix) # The C for AIX Compiler uses -M and outputs the dependencies # in a .u file. In older versions, this file always lives in the # current directory. Also, the AIX compiler puts `$object:' at the # start of each line; $object doesn't have directory information. # Version 6 uses the directory in both cases. stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'` tmpdepfile="$stripped.u" if test "$libtool" = yes; then "$@" -Wc,-M else "$@" -M fi stat=$? if test -f "$tmpdepfile"; then : else stripped=`echo "$stripped" | sed 's,^.*/,,'` tmpdepfile="$stripped.u" fi if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi if test -f "$tmpdepfile"; then outname="$stripped.o" # Each line is of the form `foo.o: dependent.h'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile" sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile # "include basename.Plo" scheme. echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; icc) # Intel's C compiler understands `-MD -MF file'. However on # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c # ICC 7.0 will fill foo.d with something like # foo.o: sub/foo.c # foo.o: sub/foo.h # which is wrong. We want: # sub/foo.o: sub/foo.c # sub/foo.o: sub/foo.h # sub/foo.c: # sub/foo.h: # ICC 7.1 will output # foo.o: sub/foo.c sub/foo.h # and will wrap long lines using \ : # foo.o: sub/foo.c ... \ # sub/foo.h ... \ # ... "$@" -MD -MF "$tmpdepfile" stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile" exit $stat fi rm -f "$depfile" # Each line is of the form `foo.o: dependent.h', # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'. # Do two passes, one to just change these to # `$object: dependent.h' and one to simply `dependent.h:'. sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile" # Some versions of the HPUX 10.20 sed can't process this invocation # correctly. Breaking it into two sed invocations is a workaround. sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; tru64) # The Tru64 compiler uses -MD to generate dependencies as a side # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'. # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put # dependencies in `foo.d' instead, so we check for that too. # Subdirectories are respected. dir=`echo "$object" | sed -e 's|/[^/]*$|/|'` test "x$dir" = "x$object" && dir= base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'` if test "$libtool" = yes; then # With Tru64 cc, shared objects can also be used to make a # static library. This mecanism is used in libtool 1.4 series to # handle both shared and static libraries in a single compilation. # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d. # # With libtool 1.5 this exception was removed, and libtool now # generates 2 separate objects for the 2 libraries. These two # compilations output dependencies in in $dir.libs/$base.o.d and # in $dir$base.o.d. We have to check for both files, because # one of the two compilations can be disabled. We should prefer # $dir$base.o.d over $dir.libs/$base.o.d because the latter is # automatically cleaned when .libs/ is deleted, while ignoring # the former would cause a distcleancheck panic. tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4 tmpdepfile2=$dir$base.o.d # libtool 1.5 tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5 tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504 "$@" -Wc,-MD else tmpdepfile1=$dir$base.o.d tmpdepfile2=$dir$base.d tmpdepfile3=$dir$base.d tmpdepfile4=$dir$base.d "$@" -MD fi stat=$? if test $stat -eq 0; then : else rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" exit $stat fi for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4" do test -f "$tmpdepfile" && break done if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile" # That's a tab and a space in the []. sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi rm -f "$tmpdepfile" ;; #nosideeffect) # This comment above is used by automake to tell side-effect # dependency tracking mechanisms from slower ones. dashmstdout) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done test -z "$dashmflag" && dashmflag=-M # Require at least two characters before searching for `:' # in the target name. This is to cope with DOS-style filenames: # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise. "$@" $dashmflag | sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" tr ' ' ' ' < "$tmpdepfile" | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; dashXmstdout) # This case only exists to satisfy depend.m4. It is never actually # run, as this mode is specially recognized in the preamble. exit 1 ;; makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # X makedepend shift cleared=no for arg in "$@"; do case $cleared in no) set ""; shift cleared=yes ;; esac case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done obj_suffix="`echo $object | sed 's/^.*\././'`" touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" cat < "$tmpdepfile" > "$depfile" sed '1,2d' "$tmpdepfile" | tr ' ' ' ' | \ ## Some versions of the HPUX 10.20 sed can't process this invocation ## correctly. Breaking it into two sed invocations is a workaround. sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile" rm -f "$tmpdepfile" "$tmpdepfile".bak ;; cpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout. "$@" || exit $? # Remove the call to Libtool. if test "$libtool" = yes; then while test $1 != '--mode=compile'; do shift done shift fi # Remove `-o $object'. IFS=" " for arg do case $arg in -o) shift ;; $object) shift ;; *) set fnord "$@" "$arg" shift # fnord shift # $arg ;; esac done "$@" -E | sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' | sed '$ s: \\$::' > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" cat < "$tmpdepfile" >> "$depfile" sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile" rm -f "$tmpdepfile" ;; msvisualcpp) # Important note: in order to support this mode, a compiler *must* # always write the preprocessed file to stdout, regardless of -o, # because we must use -o when running libtool. "$@" || exit $? IFS=" " for arg do case "$arg" in "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift shift ;; *) set fnord "$@" "$arg" shift shift ;; esac done "$@" -E | sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; none) exec "$@" ;; *) echo "Unknown depmode $depmode" 1>&2 exit 1 ;; esac exit 0 # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: make-dfsg-3.81.orig/config/dospaths.m40000644000175000017500000000301710416553102020046 0ustar srivastasrivasta# Test if the system uses DOS-style pathnames (drive specs and backslashes) # By Paul Smith . Based on dos.m4 by Jim Meyering. # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. AC_DEFUN([pds_AC_DOS_PATHS], [ AC_CACHE_CHECK([whether system uses MSDOS-style paths], [ac_cv_dos_paths], [ AC_COMPILE_IFELSE([ #if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __EMX__ && !defined __MSYS__ neither MSDOS nor Windows nor OS2 #endif ], [ac_cv_dos_paths=yes], [ac_cv_dos_paths=no]) ]) if test x"$ac_cv_dos_paths" = xyes; then AC_DEFINE_UNQUOTED([HAVE_DOS_PATHS], 1, [Define if the system uses DOS-style pathnames.]) fi ]) make-dfsg-3.81.orig/config/gettext.m40000644000175000017500000004513010416553102017707 0ustar srivastasrivasta# gettext.m4 serial 28 (gettext-0.13) dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. dnl Macro to add for using GNU gettext. dnl Usage: AM_GNU_GETTEXT([INTLSYMBOL], [NEEDSYMBOL], [INTLDIR]). dnl INTLSYMBOL can be one of 'external', 'no-libtool', 'use-libtool'. The dnl default (if it is not specified or empty) is 'no-libtool'. dnl INTLSYMBOL should be 'external' for packages with no intl directory, dnl and 'no-libtool' or 'use-libtool' for packages with an intl directory. dnl If INTLSYMBOL is 'use-libtool', then a libtool library dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, dnl depending on --{enable,disable}-{shared,static} and on the presence of dnl AM-DISABLE-SHARED). If INTLSYMBOL is 'no-libtool', a static library dnl $(top_builddir)/intl/libintl.a will be created. dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext dnl implementations (in libc or libintl) without the ngettext() function dnl will be ignored. If NEEDSYMBOL is specified and is dnl 'need-formatstring-macros', then GNU gettext implementations that don't dnl support the ISO C 99 formatstring macros will be ignored. dnl INTLDIR is used to find the intl libraries. If empty, dnl the value `$(top_builddir)/intl/' is used. dnl dnl The result of the configuration is one of three cases: dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled dnl and used. dnl Catalog format: GNU --> install in $(datadir) dnl Catalog extension: .mo after installation, .gmo in source tree dnl 2) GNU gettext has been found in the system's C library. dnl Catalog format: GNU --> install in $(datadir) dnl Catalog extension: .mo after installation, .gmo in source tree dnl 3) No internationalization, always use English msgid. dnl Catalog format: none dnl Catalog extension: none dnl If INTLSYMBOL is 'external', only cases 2 and 3 can occur. dnl The use of .gmo is historical (it was needed to avoid overwriting the dnl GNU format catalogs when building on a platform with an X/Open gettext), dnl but we keep it in order not to force irrelevant filename changes on the dnl maintainers. dnl AC_DEFUN([AM_GNU_GETTEXT], [ dnl Argument checking. ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], , [ifelse([$1], [use-libtool], , [errprint([ERROR: invalid first argument to AM_GNU_GETTEXT ])])])])]) ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-formatstring-macros], , [errprint([ERROR: invalid second argument to AM_GNU_GETTEXT ])])])]) define(gt_included_intl, ifelse([$1], [external], [no], [yes])) define(gt_libtool_suffix_prefix, ifelse([$1], [use-libtool], [l], [])) AC_REQUIRE([AM_PO_SUBDIRS])dnl ifelse(gt_included_intl, yes, [ AC_REQUIRE([AM_INTL_SUBDIR])dnl ]) dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) dnl Sometimes libintl requires libiconv, so first search for libiconv. dnl Ideally we would do this search only after the dnl if test "$USE_NLS" = "yes"; then dnl if test "$gt_cv_func_gnugettext_libc" != "yes"; then dnl tests. But if configure.in invokes AM_ICONV after AM_GNU_GETTEXT dnl the configure script would need to contain the same shell code dnl again, outside any 'if'. There are two solutions: dnl - Invoke AM_ICONV_LINKFLAGS_BODY here, outside any 'if'. dnl - Control the expansions in more detail using AC_PROVIDE_IFELSE. dnl Since AC_PROVIDE_IFELSE is only in autoconf >= 2.52 and not dnl documented, we avoid it. ifelse(gt_included_intl, yes, , [ AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) ]) dnl Set USE_NLS. AM_NLS ifelse(gt_included_intl, yes, [ BUILD_INCLUDED_LIBINTL=no USE_INCLUDED_LIBINTL=no ]) LIBINTL= LTLIBINTL= POSUB= dnl If we use NLS figure out what method if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no ifelse(gt_included_intl, yes, [ AC_MSG_CHECKING([whether included gettext is requested]) AC_ARG_WITH(included-gettext, [ --with-included-gettext use the GNU gettext library included here], nls_cv_force_use_gnu_gettext=$withval, nls_cv_force_use_gnu_gettext=no) AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" if test "$nls_cv_force_use_gnu_gettext" != "yes"; then ]) dnl User does not insist on using GNU NLS library. Figure out what dnl to use. If GNU gettext is available we use this. Else we have dnl to fall back to GNU NLS library. dnl Add a version number to the cache macros. define([gt_api_version], ifelse([$2], [need-formatstring-macros], 3, ifelse([$2], [need-ngettext], 2, 1))) define([gt_cv_func_gnugettext_libc], [gt_cv_func_gnugettext]gt_api_version[_libc]) define([gt_cv_func_gnugettext_libintl], [gt_cv_func_gnugettext]gt_api_version[_libintl]) AC_CACHE_CHECK([for GNU gettext in libc], gt_cv_func_gnugettext_libc, [AC_TRY_LINK([#include ]ifelse([$2], [need-formatstring-macros], [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif changequote(,)dnl typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; changequote([,])dnl ], [])[extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings;], [bindtextdomain ("", ""); return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_domain_bindings], gt_cv_func_gnugettext_libc=yes, gt_cv_func_gnugettext_libc=no)]) if test "$gt_cv_func_gnugettext_libc" != "yes"; then dnl Sometimes libintl requires libiconv, so first search for libiconv. ifelse(gt_included_intl, yes, , [ AM_ICONV_LINK ]) dnl Search for libintl and define LIBINTL, LTLIBINTL and INCINTL dnl accordingly. Don't use AC_LIB_LINKFLAGS_BODY([intl],[iconv]) dnl because that would add "-liconv" to LIBINTL and LTLIBINTL dnl even if libiconv doesn't exist. AC_LIB_LINKFLAGS_BODY([intl]) AC_CACHE_CHECK([for GNU gettext in libintl], gt_cv_func_gnugettext_libintl, [gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" dnl Now see whether libintl exists and does not depend on libiconv. AC_TRY_LINK([#include ]ifelse([$2], [need-formatstring-macros], [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif changequote(,)dnl typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; changequote([,])dnl ], [])[extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias ();], [bindtextdomain ("", ""); return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], gt_cv_func_gnugettext_libintl=yes, gt_cv_func_gnugettext_libintl=no) dnl Now see whether libintl exists and depends on libiconv. if test "$gt_cv_func_gnugettext_libintl" != yes && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" AC_TRY_LINK([#include ]ifelse([$2], [need-formatstring-macros], [#ifndef __GNU_GETTEXT_SUPPORTED_REVISION #define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) #endif changequote(,)dnl typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; changequote([,])dnl ], [])[extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias ();], [bindtextdomain ("", ""); return (int) gettext ("")]ifelse([$2], [need-ngettext], [ + (int) ngettext ("", "", 0)], [])[ + _nl_msg_cat_cntr + *_nl_expand_alias (0)], [LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" gt_cv_func_gnugettext_libintl=yes ]) fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS"]) fi dnl If an already present or preinstalled GNU gettext() is found, dnl use it. But if this macro is used in GNU gettext, and GNU dnl gettext is already preinstalled in libintl, we update this dnl libintl. (Cf. the install rule in intl/Makefile.in.) if test "$gt_cv_func_gnugettext_libc" = "yes" \ || { test "$gt_cv_func_gnugettext_libintl" = "yes" \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes else dnl Reset the values set by searching for libintl. LIBINTL= LTLIBINTL= INCINTL= fi ifelse(gt_included_intl, yes, [ if test "$gt_use_preinstalled_gnugettext" != "yes"; then dnl GNU gettext is not found in the C library. dnl Fall back on included GNU gettext library. nls_cv_use_gnu_gettext=yes fi fi if test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions used to generate GNU NLS library. BUILD_INCLUDED_LIBINTL=yes USE_INCLUDED_LIBINTL=yes LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LIBICONV" LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV" LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` fi if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then dnl Mark actions to use GNU gettext tools. CATOBJEXT=.gmo fi ]) if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then AC_DEFINE(ENABLE_NLS, 1, [Define to 1 if translation of program messages to the user's native language is requested.]) else USE_NLS=no fi fi AC_MSG_CHECKING([whether to use NLS]) AC_MSG_RESULT([$USE_NLS]) if test "$USE_NLS" = "yes"; then AC_MSG_CHECKING([where the gettext function comes from]) if test "$gt_use_preinstalled_gnugettext" = "yes"; then if test "$gt_cv_func_gnugettext_libintl" = "yes"; then gt_source="external libintl" else gt_source="libc" fi else gt_source="included intl directory" fi AC_MSG_RESULT([$gt_source]) fi if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then if test "$gt_cv_func_gnugettext_libintl" = "yes"; then AC_MSG_CHECKING([how to link with libintl]) AC_MSG_RESULT([$LIBINTL]) AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCINTL]) fi dnl For backward compatibility. Some packages may be using this. AC_DEFINE(HAVE_GETTEXT, 1, [Define if the GNU gettext() function is already present or preinstalled.]) AC_DEFINE(HAVE_DCGETTEXT, 1, [Define if the GNU dcgettext() function is already present or preinstalled.]) fi dnl We need to process the po/ directory. POSUB=po fi ifelse(gt_included_intl, yes, [ dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL dnl to 'yes' because some of the testsuite requires it. if test "$PACKAGE" = gettext-runtime || test "$PACKAGE" = gettext-tools; then BUILD_INCLUDED_LIBINTL=yes fi dnl Make all variables we use known to autoconf. AC_SUBST(BUILD_INCLUDED_LIBINTL) AC_SUBST(USE_INCLUDED_LIBINTL) AC_SUBST(CATOBJEXT) dnl For backward compatibility. Some configure.ins may be using this. nls_cv_header_intl= nls_cv_header_libgt= dnl For backward compatibility. Some Makefiles may be using this. DATADIRNAME=share AC_SUBST(DATADIRNAME) dnl For backward compatibility. Some Makefiles may be using this. INSTOBJEXT=.mo AC_SUBST(INSTOBJEXT) dnl For backward compatibility. Some Makefiles may be using this. GENCAT=gencat AC_SUBST(GENCAT) dnl For backward compatibility. Some Makefiles may be using this. if test "$USE_INCLUDED_LIBINTL" = yes; then INTLOBJS="\$(GETTOBJS)" fi AC_SUBST(INTLOBJS) dnl Enable libtool support if the surrounding package wishes it. INTL_LIBTOOL_SUFFIX_PREFIX=gt_libtool_suffix_prefix AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX) ]) dnl For backward compatibility. Some Makefiles may be using this. INTLLIBS="$LIBINTL" AC_SUBST(INTLLIBS) dnl Make all documented variables known to autoconf. AC_SUBST(LIBINTL) AC_SUBST(LTLIBINTL) AC_SUBST(POSUB) ]) dnl Checks for all prerequisites of the intl subdirectory, dnl except for INTL_LIBTOOL_SUFFIX_PREFIX (and possibly LIBTOOL), INTLOBJS, dnl USE_INCLUDED_LIBINTL, BUILD_INCLUDED_LIBINTL. AC_DEFUN([AM_INTL_SUBDIR], [ AC_REQUIRE([AC_PROG_INSTALL])dnl AC_REQUIRE([AM_MKINSTALLDIRS])dnl AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_REQUIRE([AC_PROG_RANLIB])dnl AC_REQUIRE([AC_ISC_POSIX])dnl AC_REQUIRE([AC_HEADER_STDC])dnl AC_REQUIRE([AC_C_CONST])dnl AC_REQUIRE([bh_C_SIGNED])dnl AC_REQUIRE([AC_C_INLINE])dnl AC_REQUIRE([AC_TYPE_OFF_T])dnl AC_REQUIRE([AC_TYPE_SIZE_T])dnl AC_REQUIRE([jm_AC_TYPE_LONG_LONG])dnl AC_REQUIRE([gt_TYPE_LONGDOUBLE])dnl AC_REQUIRE([gt_TYPE_WCHAR_T])dnl AC_REQUIRE([gt_TYPE_WINT_T])dnl AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) AC_REQUIRE([jm_AC_HEADER_STDINT_H]) AC_REQUIRE([gt_TYPE_INTMAX_T]) AC_REQUIRE([gt_PRINTF_POSIX]) AC_REQUIRE([AC_FUNC_ALLOCA])dnl AC_REQUIRE([AC_FUNC_MMAP])dnl AC_REQUIRE([jm_GLIBC21])dnl AC_REQUIRE([gt_INTDIV0])dnl AC_REQUIRE([jm_AC_TYPE_UINTMAX_T])dnl AC_REQUIRE([gt_HEADER_INTTYPES_H])dnl AC_REQUIRE([gt_INTTYPES_PRI])dnl AC_REQUIRE([gl_XSIZE])dnl AC_CHECK_TYPE([ptrdiff_t], , [AC_DEFINE([ptrdiff_t], [long], [Define as the type of the result of subtracting two pointers, if the system doesn't define it.]) ]) AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ stdlib.h string.h unistd.h sys/param.h]) AC_CHECK_FUNCS([asprintf fwprintf getcwd getegid geteuid getgid getuid \ mempcpy munmap putenv setenv setlocale snprintf stpcpy strcasecmp strdup \ strtoul tsearch wcslen __argz_count __argz_stringify __argz_next \ __fsetlocking]) dnl Use the _snprintf function only if it is declared (because on NetBSD it dnl is defined as a weak alias of snprintf; we prefer to use the latter). gt_CHECK_DECL(_snprintf, [#include ]) gt_CHECK_DECL(_snwprintf, [#include ]) dnl Use the *_unlocked functions only if they are declared. dnl (because some of them were defined without being declared in Solaris dnl 2.5.1 but were removed in Solaris 2.6, whereas we want binaries built dnl on Solaris 2.5.1 to run on Solaris 2.6). dnl Don't use AC_CHECK_DECLS because it isn't supported in autoconf-2.13. gt_CHECK_DECL(feof_unlocked, [#include ]) gt_CHECK_DECL(fgets_unlocked, [#include ]) gt_CHECK_DECL(getc_unlocked, [#include ]) case $gt_cv_func_printf_posix in *yes) HAVE_POSIX_PRINTF=1 ;; *) HAVE_POSIX_PRINTF=0 ;; esac AC_SUBST([HAVE_POSIX_PRINTF]) if test "$ac_cv_func_asprintf" = yes; then HAVE_ASPRINTF=1 else HAVE_ASPRINTF=0 fi AC_SUBST([HAVE_ASPRINTF]) if test "$ac_cv_func_snprintf" = yes; then HAVE_SNPRINTF=1 else HAVE_SNPRINTF=0 fi AC_SUBST([HAVE_SNPRINTF]) if test "$ac_cv_func_wprintf" = yes; then HAVE_WPRINTF=1 else HAVE_WPRINTF=0 fi AC_SUBST([HAVE_WPRINTF]) AM_ICONV AM_LANGINFO_CODESET if test $ac_cv_header_locale_h = yes; then AM_LC_MESSAGES fi dnl intl/plural.c is generated from intl/plural.y. It requires bison, dnl because plural.y uses bison specific features. It requires at least dnl bison-1.26 because earlier versions generate a plural.c that doesn't dnl compile. dnl bison is only needed for the maintainer (who touches plural.y). But in dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put dnl the rule in general Makefile. Now, some people carelessly touch the dnl files or have a broken "make" program, hence the plural.c rule will dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not dnl present or too old. AC_CHECK_PROGS([INTLBISON], [bison]) if test -z "$INTLBISON"; then ac_verc_fail=yes else dnl Found it, now check the version. AC_MSG_CHECKING([version of bison]) changequote(<<,>>)dnl ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` case $ac_prog_version in '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) changequote([,])dnl ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; esac AC_MSG_RESULT([$ac_prog_version]) fi if test $ac_verc_fail = yes; then INTLBISON=: fi ]) dnl gt_CHECK_DECL(FUNC, INCLUDES) dnl Check whether a function is declared. AC_DEFUN([gt_CHECK_DECL], [ AC_CACHE_CHECK([whether $1 is declared], ac_cv_have_decl_$1, [AC_TRY_COMPILE([$2], [ #ifndef $1 char *p = (char *) $1; #endif ], ac_cv_have_decl_$1=yes, ac_cv_have_decl_$1=no)]) if test $ac_cv_have_decl_$1 = yes; then gt_value=1 else gt_value=0 fi AC_DEFINE_UNQUOTED([HAVE_DECL_]translit($1, [a-z], [A-Z]), [$gt_value], [Define to 1 if you have the declaration of `$1', and to 0 if you don't.]) ]) dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) make-dfsg-3.81.orig/config/glibc21.m40000644000175000017500000000172710416553102017452 0ustar srivastasrivasta# glibc21.m4 serial 2 (fileutils-4.1.3, gettext-0.10.40) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. # Test for the GNU C Library, version 2.1 or newer. # From Bruno Haible. AC_DEFUN([jm_GLIBC21], [ AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, ac_cv_gnu_library_2_1, [AC_EGREP_CPP([Lucky GNU user], [ #include #ifdef __GNU_LIBRARY__ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) Lucky GNU user #endif #endif ], ac_cv_gnu_library_2_1=yes, ac_cv_gnu_library_2_1=no) ] ) AC_SUBST(GLIBC21) GLIBC21="$ac_cv_gnu_library_2_1" ] ) make-dfsg-3.81.orig/config/iconv.m40000644000175000017500000000665310416553102017350 0ustar srivastasrivasta# iconv.m4 serial AM4 (gettext-0.11.3) dnl Copyright (C) 2000-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. AC_DEFUN([AM_ICONV_LINKFLAGS_BODY], [ dnl Prerequisites of AC_LIB_LINKFLAGS_BODY. AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV dnl accordingly. AC_LIB_LINKFLAGS_BODY([iconv]) ]) AC_DEFUN([AM_ICONV_LINK], [ dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and dnl those with the standalone portable GNU libiconv installed). dnl Search for libiconv and define LIBICONV, LTLIBICONV and INCICONV dnl accordingly. AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) dnl Add $INCICONV to CPPFLAGS before performing the following checks, dnl because if the user has installed libiconv and not disabled its use dnl via --without-libiconv-prefix, he wants to use it. The first dnl AC_TRY_LINK will then fail, the second AC_TRY_LINK will succeed. am_save_CPPFLAGS="$CPPFLAGS" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INCICONV]) AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no AC_TRY_LINK([#include #include ], [iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);], am_cv_func_iconv=yes) if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" AC_TRY_LINK([#include #include ], [iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd);], am_cv_lib_iconv=yes am_cv_func_iconv=yes) LIBS="$am_save_LIBS" fi ]) if test "$am_cv_func_iconv" = yes; then AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) fi if test "$am_cv_lib_iconv" = yes; then AC_MSG_CHECKING([how to link with libiconv]) AC_MSG_RESULT([$LIBICONV]) else dnl If $LIBICONV didn't lead to a usable library, we don't need $INCICONV dnl either. CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi AC_SUBST(LIBICONV) AC_SUBST(LTLIBICONV) ]) AC_DEFUN([AM_ICONV], [ AM_ICONV_LINK if test "$am_cv_func_iconv" = yes; then AC_MSG_CHECKING([for iconv declaration]) AC_CACHE_VAL(am_cv_proto_iconv, [ AC_TRY_COMPILE([ #include #include extern #ifdef __cplusplus "C" #endif #if defined(__STDC__) || defined(__cplusplus) size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); #else size_t iconv(); #endif ], [], am_cv_proto_iconv_arg1="", am_cv_proto_iconv_arg1="const") am_cv_proto_iconv="extern size_t iconv (iconv_t cd, $am_cv_proto_iconv_arg1 char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);"]) am_cv_proto_iconv=`echo "[$]am_cv_proto_iconv" | tr -s ' ' | sed -e 's/( /(/'` AC_MSG_RESULT([$]{ac_t:- }[$]am_cv_proto_iconv) AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, [Define as const if the declaration of iconv() needs const.]) fi ]) make-dfsg-3.81.orig/config/install-sh0000755000175000017500000002202110416553102017757 0ustar srivastasrivasta#!/bin/sh # install - install a program, script, or datafile scriptversion=2005-05-14.22 # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the # following copyright and license. # # Copyright (C) 1994 X Consortium # # Permission is hereby granted, free of charge, to any person obtaining a copy # of this software and associated documentation files (the "Software"), to # deal in the Software without restriction, including without limitation the # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or # sell copies of the Software, and to permit persons to whom the Software is # furnished to do so, subject to the following conditions: # # The above copyright notice and this permission notice shall be included in # all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE # X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN # AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC- # TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. # # Except as contained in this notice, the name of the X Consortium shall not # be used in advertising or otherwise to promote the sale, use or other deal- # ings in this Software without prior written authorization from the X Consor- # tium. # # # FSF changes to this file are in the public domain. # # Calling this script install-sh is preferred over install.sh, to prevent # `make' implicit rules from creating a file called install from it # when there is no Makefile. # # This script is compatible with the BSD install script, but was written # from scratch. It can only install one file at a time, a restriction # shared with many OS's install programs. # set DOITPROG to echo to test this script # Don't use :- since 4.3BSD and earlier shells don't like it. doit="${DOITPROG-}" # put in absolute paths if you don't have them in your path; or use env. vars. mvprog="${MVPROG-mv}" cpprog="${CPPROG-cp}" chmodprog="${CHMODPROG-chmod}" chownprog="${CHOWNPROG-chown}" chgrpprog="${CHGRPPROG-chgrp}" stripprog="${STRIPPROG-strip}" rmprog="${RMPROG-rm}" mkdirprog="${MKDIRPROG-mkdir}" chmodcmd="$chmodprog 0755" chowncmd= chgrpcmd= stripcmd= rmcmd="$rmprog -f" mvcmd="$mvprog" src= dst= dir_arg= dstarg= no_target_directory= usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE or: $0 [OPTION]... SRCFILES... DIRECTORY or: $0 [OPTION]... -t DIRECTORY SRCFILES... or: $0 [OPTION]... -d DIRECTORIES... In the 1st form, copy SRCFILE to DSTFILE. In the 2nd and 3rd, copy all SRCFILES to DIRECTORY. In the 4th, create DIRECTORIES. Options: -c (ignored) -d create directories instead of installing files. -g GROUP $chgrpprog installed files to GROUP. -m MODE $chmodprog installed files to MODE. -o USER $chownprog installed files to USER. -s $stripprog installed files. -t DIRECTORY install into DIRECTORY. -T report an error if DSTFILE is a directory. --help display this help and exit. --version display version info and exit. Environment variables override the default commands: CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG " while test -n "$1"; do case $1 in -c) shift continue;; -d) dir_arg=true shift continue;; -g) chgrpcmd="$chgrpprog $2" shift shift continue;; --help) echo "$usage"; exit $?;; -m) chmodcmd="$chmodprog $2" shift shift continue;; -o) chowncmd="$chownprog $2" shift shift continue;; -s) stripcmd=$stripprog shift continue;; -t) dstarg=$2 shift shift continue;; -T) no_target_directory=true shift continue;; --version) echo "$0 $scriptversion"; exit $?;; *) # When -d is used, all remaining arguments are directories to create. # When -t is used, the destination is already specified. test -n "$dir_arg$dstarg" && break # Otherwise, the last argument is the destination. Remove it from $@. for arg do if test -n "$dstarg"; then # $@ is not empty: it contains at least $arg. set fnord "$@" "$dstarg" shift # fnord fi shift # arg dstarg=$arg done break;; esac done if test -z "$1"; then if test -z "$dir_arg"; then echo "$0: no input file specified." >&2 exit 1 fi # It's OK to call `install-sh -d' without argument. # This can happen when creating conditional directories. exit 0 fi for src do # Protect names starting with `-'. case $src in -*) src=./$src ;; esac if test -n "$dir_arg"; then dst=$src src= if test -d "$dst"; then mkdircmd=: chmodcmd= else mkdircmd=$mkdirprog fi else # Waiting for this to be detected by the "$cpprog $src $dsttmp" command # might cause directories to be created, which would be especially bad # if $src (and thus $dsttmp) contains '*'. if test ! -f "$src" && test ! -d "$src"; then echo "$0: $src does not exist." >&2 exit 1 fi if test -z "$dstarg"; then echo "$0: no destination specified." >&2 exit 1 fi dst=$dstarg # Protect names starting with `-'. case $dst in -*) dst=./$dst ;; esac # If destination is a directory, append the input filename; won't work # if double slashes aren't ignored. if test -d "$dst"; then if test -n "$no_target_directory"; then echo "$0: $dstarg: Is a directory" >&2 exit 1 fi dst=$dst/`basename "$src"` fi fi # This sed command emulates the dirname command. dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'` # Make sure that the destination directory exists. # Skip lots of stat calls in the usual case. if test ! -d "$dstdir"; then defaultIFS=' ' IFS="${IFS-$defaultIFS}" oIFS=$IFS # Some sh's can't handle IFS=/ for some reason. IFS='%' set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'` shift IFS=$oIFS pathcomp= while test $# -ne 0 ; do pathcomp=$pathcomp$1 shift if test ! -d "$pathcomp"; then $mkdirprog "$pathcomp" # mkdir can fail with a `File exist' error in case several # install-sh are creating the directory concurrently. This # is OK. test -d "$pathcomp" || exit fi pathcomp=$pathcomp/ done fi if test -n "$dir_arg"; then $doit $mkdircmd "$dst" \ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; } else dstfile=`basename "$dst"` # Make a couple of temp file names in the proper directory. dsttmp=$dstdir/_inst.$$_ rmtmp=$dstdir/_rm.$$_ # Trap to clean up those temp files at exit. trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0 trap '(exit $?); exit' 1 2 13 15 # Copy the file name to the temp name. $doit $cpprog "$src" "$dsttmp" && # and set any options; do chmod last to preserve setuid bits. # # If any of these fail, we abort the whole thing. If we want to # ignore errors from any of these, just make sure not to ignore # errors from the above "$doit $cpprog $src $dsttmp" command. # { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } && # Now rename the file to the real destination. { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \ || { # The rename failed, perhaps because mv can't rename something else # to itself, or perhaps because mv is so ancient that it does not # support -f. # Now remove or move aside any old file at destination location. # We try this two ways since rm can't unlink itself on some # systems and the destination file might be busy for other # reasons. In this case, the final cleanup might fail but the new # file should still install successfully. { if test -f "$dstdir/$dstfile"; then $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \ || { echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2 (exit 1); exit 1 } else : fi } && # Now rename the file to the real destination. $doit $mvcmd "$dsttmp" "$dstdir/$dstfile" } } fi || { (exit 1); exit 1; } done # The final little trick to "correctly" pass the exit status to the exit trap. { (exit 0); exit 0 } # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: make-dfsg-3.81.orig/config/intdiv0.m40000644000175000017500000000356510416553102017606 0ustar srivastasrivasta# intdiv0.m4 serial 1 (gettext-0.11.3) dnl Copyright (C) 2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. AC_DEFUN([gt_INTDIV0], [ AC_REQUIRE([AC_PROG_CC])dnl AC_REQUIRE([AC_CANONICAL_HOST])dnl AC_CACHE_CHECK([whether integer division by zero raises SIGFPE], gt_cv_int_divbyzero_sigfpe, [ AC_TRY_RUN([ #include #include static void #ifdef __cplusplus sigfpe_handler (int sig) #else sigfpe_handler (sig) int sig; #endif { /* Exit with code 0 if SIGFPE, with code 1 if any other signal. */ exit (sig != SIGFPE); } int x = 1; int y = 0; int z; int nan; int main () { signal (SIGFPE, sigfpe_handler); /* IRIX and AIX (when "xlc -qcheck" is used) yield signal SIGTRAP. */ #if (defined (__sgi) || defined (_AIX)) && defined (SIGTRAP) signal (SIGTRAP, sigfpe_handler); #endif /* Linux/SPARC yields signal SIGILL. */ #if defined (__sparc__) && defined (__linux__) signal (SIGILL, sigfpe_handler); #endif z = x / y; nan = y / y; exit (1); } ], gt_cv_int_divbyzero_sigfpe=yes, gt_cv_int_divbyzero_sigfpe=no, [ # Guess based on the CPU. case "$host_cpu" in alpha* | i[34567]86 | m68k | s390*) gt_cv_int_divbyzero_sigfpe="guessing yes";; *) gt_cv_int_divbyzero_sigfpe="guessing no";; esac ]) ]) case "$gt_cv_int_divbyzero_sigfpe" in *yes) value=1;; *) value=0;; esac AC_DEFINE_UNQUOTED(INTDIV0_RAISES_SIGFPE, $value, [Define if integer division by zero raises signal SIGFPE.]) ]) make-dfsg-3.81.orig/config/intmax.m40000644000175000017500000000217210416553102017522 0ustar srivastasrivasta# intmax.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl Test whether the system has the 'intmax_t' type, but don't attempt to dnl find a replacement if it is lacking. AC_DEFUN([gt_TYPE_INTMAX_T], [ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) AC_REQUIRE([jm_AC_HEADER_STDINT_H]) AC_CACHE_CHECK(for intmax_t, gt_cv_c_intmax_t, [AC_TRY_COMPILE([ #include #include #if HAVE_STDINT_H_WITH_UINTMAX #include #endif #if HAVE_INTTYPES_H_WITH_UINTMAX #include #endif ], [intmax_t x = -1;], gt_cv_c_intmax_t=yes, gt_cv_c_intmax_t=no)]) if test $gt_cv_c_intmax_t = yes; then AC_DEFINE(HAVE_INTMAX_T, 1, [Define if you have the 'intmax_t' type in or .]) fi ]) make-dfsg-3.81.orig/config/inttypes-pri.m40000644000175000017500000000222710416553102020672 0ustar srivastasrivasta# inttypes-pri.m4 serial 1 (gettext-0.11.4) dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. # Define PRI_MACROS_BROKEN if exists and defines the PRI* # macros to non-string values. This is the case on AIX 4.3.3. AC_DEFUN([gt_INTTYPES_PRI], [ AC_REQUIRE([gt_HEADER_INTTYPES_H]) if test $gt_cv_header_inttypes_h = yes; then AC_CACHE_CHECK([whether the inttypes.h PRIxNN macros are broken], gt_cv_inttypes_pri_broken, [ AC_TRY_COMPILE([#include #ifdef PRId32 char *p = PRId32; #endif ], [], gt_cv_inttypes_pri_broken=no, gt_cv_inttypes_pri_broken=yes) ]) fi if test "$gt_cv_inttypes_pri_broken" = yes; then AC_DEFINE_UNQUOTED(PRI_MACROS_BROKEN, 1, [Define if exists and defines unusable PRI* macros.]) fi ]) make-dfsg-3.81.orig/config/inttypes.m40000644000175000017500000000171710416553102020105 0ustar srivastasrivasta# inttypes.m4 serial 1 (gettext-0.11.4) dnl Copyright (C) 1997-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. # Define HAVE_INTTYPES_H if exists and doesn't clash with # . AC_DEFUN([gt_HEADER_INTTYPES_H], [ AC_CACHE_CHECK([for inttypes.h], gt_cv_header_inttypes_h, [ AC_TRY_COMPILE( [#include #include ], [], gt_cv_header_inttypes_h=yes, gt_cv_header_inttypes_h=no) ]) if test $gt_cv_header_inttypes_h = yes; then AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H, 1, [Define if exists and doesn't clash with .]) fi ]) make-dfsg-3.81.orig/config/inttypes_h.m40000644000175000017500000000210310416553102020402 0ustar srivastasrivasta# inttypes_h.m4 serial 5 (gettext-0.12) dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. # Define HAVE_INTTYPES_H_WITH_UINTMAX if exists, # doesn't clash with , and declares uintmax_t. AC_DEFUN([jm_AC_HEADER_INTTYPES_H], [ AC_CACHE_CHECK([for inttypes.h], jm_ac_cv_header_inttypes_h, [AC_TRY_COMPILE( [#include #include ], [uintmax_t i = (uintmax_t) -1;], jm_ac_cv_header_inttypes_h=yes, jm_ac_cv_header_inttypes_h=no)]) if test $jm_ac_cv_header_inttypes_h = yes; then AC_DEFINE_UNQUOTED(HAVE_INTTYPES_H_WITH_UINTMAX, 1, [Define if exists, doesn't clash with , and declares uintmax_t. ]) fi ]) make-dfsg-3.81.orig/config/isc-posix.m40000644000175000017500000000213310416553102020135 0ustar srivastasrivasta# isc-posix.m4 serial 2 (gettext-0.11.2) dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. # This file is not needed with autoconf-2.53 and newer. Remove it in 2005. # This test replaces the one in autoconf. # Currently this macro should have the same name as the autoconf macro # because gettext's gettext.m4 (distributed in the automake package) # still uses it. Otherwise, the use in gettext.m4 makes autoheader # give these diagnostics: # configure.in:556: AC_TRY_COMPILE was called before AC_ISC_POSIX # configure.in:556: AC_TRY_RUN was called before AC_ISC_POSIX undefine([AC_ISC_POSIX]) AC_DEFUN([AC_ISC_POSIX], [ dnl This test replaces the obsolescent AC_ISC_POSIX kludge. AC_CHECK_LIB(cposix, strerror, [LIBS="$LIBS -lcposix"]) ] ) make-dfsg-3.81.orig/config/lcmessage.m40000644000175000017500000000261610416553102020170 0ustar srivastasrivasta# lcmessage.m4 serial 3 (gettext-0.11.3) dnl Copyright (C) 1995-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995. # Check whether LC_MESSAGES is available in . AC_DEFUN([AM_LC_MESSAGES], [ AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, [AC_TRY_LINK([#include ], [return LC_MESSAGES], am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) if test $am_cv_val_LC_MESSAGES = yes; then AC_DEFINE(HAVE_LC_MESSAGES, 1, [Define if your file defines LC_MESSAGES.]) fi ]) make-dfsg-3.81.orig/config/lib-ld.m40000644000175000017500000000675610416553102017401 0ustar srivastasrivasta# lib-ld.m4 serial 3 (gettext-0.13) dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl Subroutines of libtool.m4, dnl with replacements s/AC_/AC_LIB/ and s/lt_cv/acl_cv/ to avoid collision dnl with libtool.m4. dnl From libtool-1.4. Sets the variable with_gnu_ld to yes or no. AC_DEFUN([AC_LIB_PROG_LD_GNU], [AC_CACHE_CHECK([if the linker ($LD) is GNU ld], acl_cv_prog_gnu_ld, [# I'd rather use --version here, but apparently some GNU ld's only accept -v. case `$LD -v 2>&1 conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. AC_MSG_CHECKING([for ld used by GCC]) case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [[\\/]* | [A-Za-z]:[\\/]*)] [re_direlt='/[^/][^/]*/\.\./'] # Canonicalize the path of ld ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then AC_MSG_CHECKING([for GNU ld]) else AC_MSG_CHECKING([for non-GNU ld]) fi AC_CACHE_VAL(acl_cv_path_LD, [if test -z "$LD"; then IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then acl_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some GNU ld's only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in *GNU* | *'with BFD'*) test "$with_gnu_ld" != no && break ;; *) test "$with_gnu_ld" != yes && break ;; esac fi done IFS="$ac_save_ifs" else acl_cv_path_LD="$LD" # Let the user override the test with a path. fi]) LD="$acl_cv_path_LD" if test -n "$LD"; then AC_MSG_RESULT($LD) else AC_MSG_RESULT(no) fi test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) AC_LIB_PROG_LD_GNU ]) make-dfsg-3.81.orig/config/lib-link.m40000644000175000017500000005534310416553102017733 0ustar srivastasrivasta# lib-link.m4 serial 4 (gettext-0.12) dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and dnl the libraries corresponding to explicit and implicit dependencies. dnl Sets and AC_SUBSTs the LIB${NAME} and LTLIB${NAME} variables and dnl augments the CPPFLAGS variable. AC_DEFUN([AC_LIB_LINKFLAGS], [ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) define([Name],[translit([$1],[./-], [___])]) define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) AC_CACHE_CHECK([how to link with lib[]$1], [ac_cv_lib[]Name[]_libs], [ AC_LIB_LINKFLAGS_BODY([$1], [$2]) ac_cv_lib[]Name[]_libs="$LIB[]NAME" ac_cv_lib[]Name[]_ltlibs="$LTLIB[]NAME" ac_cv_lib[]Name[]_cppflags="$INC[]NAME" ]) LIB[]NAME="$ac_cv_lib[]Name[]_libs" LTLIB[]NAME="$ac_cv_lib[]Name[]_ltlibs" INC[]NAME="$ac_cv_lib[]Name[]_cppflags" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) AC_SUBST([LIB]NAME) AC_SUBST([LTLIB]NAME) dnl Also set HAVE_LIB[]NAME so that AC_LIB_HAVE_LINKFLAGS can reuse the dnl results of this search when this library appears as a dependency. HAVE_LIB[]NAME=yes undefine([Name]) undefine([NAME]) ]) dnl AC_LIB_HAVE_LINKFLAGS(name, dependencies, includes, testcode) dnl searches for libname and the libraries corresponding to explicit and dnl implicit dependencies, together with the specified include files and dnl the ability to compile and link the specified testcode. If found, it dnl sets and AC_SUBSTs HAVE_LIB${NAME}=yes and the LIB${NAME} and dnl LTLIB${NAME} variables and augments the CPPFLAGS variable, and dnl #defines HAVE_LIB${NAME} to 1. Otherwise, it sets and AC_SUBSTs dnl HAVE_LIB${NAME}=no and LIB${NAME} and LTLIB${NAME} to empty. AC_DEFUN([AC_LIB_HAVE_LINKFLAGS], [ AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) AC_REQUIRE([AC_LIB_RPATH]) define([Name],[translit([$1],[./-], [___])]) define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) dnl Search for lib[]Name and define LIB[]NAME, LTLIB[]NAME and INC[]NAME dnl accordingly. AC_LIB_LINKFLAGS_BODY([$1], [$2]) dnl Add $INC[]NAME to CPPFLAGS before performing the following checks, dnl because if the user has installed lib[]Name and not disabled its use dnl via --without-lib[]Name-prefix, he wants to use it. ac_save_CPPFLAGS="$CPPFLAGS" AC_LIB_APPENDTOVAR([CPPFLAGS], [$INC]NAME) AC_CACHE_CHECK([for lib[]$1], [ac_cv_lib[]Name], [ ac_save_LIBS="$LIBS" LIBS="$LIBS $LIB[]NAME" AC_TRY_LINK([$3], [$4], [ac_cv_lib[]Name=yes], [ac_cv_lib[]Name=no]) LIBS="$ac_save_LIBS" ]) if test "$ac_cv_lib[]Name" = yes; then HAVE_LIB[]NAME=yes AC_DEFINE([HAVE_LIB]NAME, 1, [Define if you have the $1 library.]) AC_MSG_CHECKING([how to link with lib[]$1]) AC_MSG_RESULT([$LIB[]NAME]) else HAVE_LIB[]NAME=no dnl If $LIB[]NAME didn't lead to a usable library, we don't need dnl $INC[]NAME either. CPPFLAGS="$ac_save_CPPFLAGS" LIB[]NAME= LTLIB[]NAME= fi AC_SUBST([HAVE_LIB]NAME) AC_SUBST([LIB]NAME) AC_SUBST([LTLIB]NAME) undefine([Name]) undefine([NAME]) ]) dnl Determine the platform dependent parameters needed to use rpath: dnl libext, shlibext, hardcode_libdir_flag_spec, hardcode_libdir_separator, dnl hardcode_direct, hardcode_minus_L. AC_DEFUN([AC_LIB_RPATH], [ AC_REQUIRE([AC_PROG_CC]) dnl we use $CC, $GCC, $LDFLAGS AC_REQUIRE([AC_LIB_PROG_LD]) dnl we use $LD, $with_gnu_ld AC_REQUIRE([AC_CANONICAL_HOST]) dnl we use $host AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT]) dnl we use $ac_aux_dir AC_CACHE_CHECK([for shared library run path origin], acl_cv_rpath, [ CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh . ./conftest.sh rm -f ./conftest.sh acl_cv_rpath=done ]) wl="$acl_cv_wl" libext="$acl_cv_libext" shlibext="$acl_cv_shlibext" hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" hardcode_direct="$acl_cv_hardcode_direct" hardcode_minus_L="$acl_cv_hardcode_minus_L" dnl Determine whether the user wants rpath handling at all. AC_ARG_ENABLE(rpath, [ --disable-rpath do not hardcode runtime library paths], :, enable_rpath=yes) ]) dnl AC_LIB_LINKFLAGS_BODY(name [, dependencies]) searches for libname and dnl the libraries corresponding to explicit and implicit dependencies. dnl Sets the LIB${NAME}, LTLIB${NAME} and INC${NAME} variables. AC_DEFUN([AC_LIB_LINKFLAGS_BODY], [ define([NAME],[translit([$1],[abcdefghijklmnopqrstuvwxyz./-], [ABCDEFGHIJKLMNOPQRSTUVWXYZ___])]) dnl By default, look in $includedir and $libdir. use_additional=yes AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) AC_LIB_ARG_WITH([lib$1-prefix], [ --with-lib$1-prefix[=DIR] search for lib$1 in DIR/include and DIR/lib --without-lib$1-prefix don't search for lib$1 in includedir and libdir], [ if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) else additional_includedir="$withval/include" additional_libdir="$withval/lib" fi fi ]) dnl Search the library and its dependencies in $additional_libdir and dnl $LDFLAGS. Using breadth-first-seach. LIB[]NAME= LTLIB[]NAME= INC[]NAME= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='$1 $2' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" dnl See if it was already located by an earlier AC_LIB_LINKFLAGS dnl or AC_LIB_HAVE_LINKFLAGS call. uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$value" else dnl An earlier call to AC_LIB_HAVE_LINKFLAGS has determined dnl that this library doesn't exist. So just drop it. : fi else dnl Search the library lib$name in $additional_libdir and $LDFLAGS dnl and the already constructed $LIBNAME/$LTLIBNAME. found_dir= found_la= found_so= found_a= if test $use_additional = yes; then if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi else if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi else if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then dnl Found the library. LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then dnl Linking with a shared library. We attempt to hardcode its dnl directory into the executable's runpath, unless it's the dnl standard /usr/lib. if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then dnl No hardcoding is needed. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else dnl Use an explicit option to hardcode DIR into the resulting dnl binary. dnl Potentially add DIR to ltrpathdirs. dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi dnl The hardcoding into $LIBNAME is system dependent. if test "$hardcode_direct" = yes; then dnl Using DIR/libNAME.so during linking hardcodes DIR into the dnl resulting binary. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then dnl Use an explicit option to hardcode DIR into the resulting dnl binary. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" dnl Potentially add DIR to rpathdirs. dnl The rpathdirs will be appended to $LIBNAME at the end. haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else dnl Rely on "-L$found_dir". dnl But don't add it if it's already contained in the LDFLAGS dnl or the already constructed $LIBNAME haveit= for x in $LDFLAGS $LIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then dnl FIXME: Not sure whether we should use dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" dnl here. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" else dnl We cannot use $hardcode_runpath_var and LD_RUN_PATH dnl here, because this doesn't fit in flags passed to the dnl compiler. So give up. No hardcoding. This affects only dnl very old systems. dnl FIXME: Not sure whether we should use dnl "-L$found_dir -l$name" or "-L$found_dir $found_so" dnl here. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then dnl Linking with a static library. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_a" else dnl We shouldn't come here, but anyway it's good to have a dnl fallback. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$found_dir -l$name" fi fi dnl Assume the include files are nearby. additional_includedir= case "$found_dir" in */lib | */lib/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then dnl Potentially add $additional_includedir to $INCNAME. dnl But don't add it dnl 1. if it's the standard /usr/include, dnl 2. if it's /usr/local/include and we are using GCC on Linux, dnl 3. if it's already present in $CPPFLAGS or the already dnl constructed $INCNAME, dnl 4. if it doesn't exist as a directory. if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INC[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then dnl Really add $additional_includedir to $INCNAME. INC[]NAME="${INC[]NAME}${INC[]NAME:+ }-I$additional_includedir" fi fi fi fi fi dnl Look for dependencies. if test -n "$found_la"; then dnl Read the .la file. It defines the variables dnl dlname, library_names, old_library, dependency_libs, current, dnl age, revision, installed, dlopen, dlpreopen, libdir. save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" dnl We use only dependency_libs. for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` dnl Potentially add $additional_libdir to $LIBNAME and $LTLIBNAME. dnl But don't add it dnl 1. if it's the standard /usr/lib, dnl 2. if it's /usr/local/lib and we are using GCC on Linux, dnl 3. if it's already present in $LDFLAGS or the already dnl constructed $LIBNAME, dnl 4. if it doesn't exist as a directory. if test "X$additional_libdir" != "X/usr/lib"; then haveit= if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LIBNAME. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIB[]NAME; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LTLIBNAME. LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then dnl Potentially add DIR to rpathdirs. dnl The rpathdirs will be appended to $LIBNAME at the end. haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi dnl Potentially add DIR to ltrpathdirs. dnl The ltrpathdirs will be appended to $LTLIBNAME at the end. haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) dnl Handle this in the next round. names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) dnl Handle this in the next round. Throw away the .la's dnl directory; it is already contained in a preceding -L dnl option. names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) dnl Most likely an immediate library name. LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$dep" LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }$dep" ;; esac done fi else dnl Didn't find the library; assume it is in the system directories dnl known to the linker and runtime loader. (All the system dnl directories known to the linker should also be known to the dnl runtime loader, otherwise the system is severely misconfigured.) LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-l$name" LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$hardcode_libdir_separator"; then dnl Weird platform: only the last -rpath option counts, the user must dnl pass all path elements in one option. We can arrange that for a dnl single library, but not when more than one $LIBNAMEs are used. alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" done dnl Note: hardcode_libdir_flag_spec uses $libdir and $wl. acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" else dnl The -rpath options are cumulative. for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then dnl When using libtool, the option that works for both libraries and dnl executables is -R. The -R options are cumulative. for found_dir in $ltrpathdirs; do LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" done fi ]) dnl AC_LIB_APPENDTOVAR(VAR, CONTENTS) appends the elements of CONTENTS to VAR, dnl unless already present in VAR. dnl Works only for CPPFLAGS, not for LIB* variables because that sometimes dnl contains two or three consecutive elements that belong together. AC_DEFUN([AC_LIB_APPENDTOVAR], [ for element in [$2]; do haveit= for x in $[$1]; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then [$1]="${[$1]}${[$1]:+ }$element" fi done ]) make-dfsg-3.81.orig/config/lib-prefix.m40000644000175000017500000001250710416553102020266 0ustar srivastasrivasta# lib-prefix.m4 serial 3 (gettext-0.13) dnl Copyright (C) 2001-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl AC_LIB_ARG_WITH is synonymous to AC_ARG_WITH in autoconf-2.13, and dnl similar to AC_ARG_WITH in autoconf 2.52...2.57 except that is doesn't dnl require excessive bracketing. ifdef([AC_HELP_STRING], [AC_DEFUN([AC_LIB_ARG_WITH], [AC_ARG_WITH([$1],[[$2]],[$3],[$4])])], [AC_DEFUN([AC_][LIB_ARG_WITH], [AC_ARG_WITH([$1],[$2],[$3],[$4])])]) dnl AC_LIB_PREFIX adds to the CPPFLAGS and LDFLAGS the flags that are needed dnl to access previously installed libraries. The basic assumption is that dnl a user will want packages to use other packages he previously installed dnl with the same --prefix option. dnl This macro is not needed if only AC_LIB_LINKFLAGS is used to locate dnl libraries, but is otherwise very convenient. AC_DEFUN([AC_LIB_PREFIX], [ AC_BEFORE([$0], [AC_LIB_LINKFLAGS]) AC_REQUIRE([AC_PROG_CC]) AC_REQUIRE([AC_CANONICAL_HOST]) AC_REQUIRE([AC_LIB_PREPARE_PREFIX]) dnl By default, look in $includedir and $libdir. use_additional=yes AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) AC_LIB_ARG_WITH([lib-prefix], [ --with-lib-prefix[=DIR] search for libraries in DIR/include and DIR/lib --without-lib-prefix don't search for libraries in includedir and libdir], [ if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then AC_LIB_WITH_FINAL_PREFIX([ eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" ]) else additional_includedir="$withval/include" additional_libdir="$withval/lib" fi fi ]) if test $use_additional = yes; then dnl Potentially add $additional_includedir to $CPPFLAGS. dnl But don't add it dnl 1. if it's the standard /usr/include, dnl 2. if it's already present in $CPPFLAGS, dnl 3. if it's /usr/local/include and we are using GCC on Linux, dnl 4. if it doesn't exist as a directory. if test "X$additional_includedir" != "X/usr/include"; then haveit= for x in $CPPFLAGS; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then if test -d "$additional_includedir"; then dnl Really add $additional_includedir to $CPPFLAGS. CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }-I$additional_includedir" fi fi fi fi dnl Potentially add $additional_libdir to $LDFLAGS. dnl But don't add it dnl 1. if it's the standard /usr/lib, dnl 2. if it's already present in $LDFLAGS, dnl 3. if it's /usr/local/lib and we are using GCC on Linux, dnl 4. if it doesn't exist as a directory. if test "X$additional_libdir" != "X/usr/lib"; then haveit= for x in $LDFLAGS; do AC_LIB_WITH_FINAL_PREFIX([eval x=\"$x\"]) if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then if test -d "$additional_libdir"; then dnl Really add $additional_libdir to $LDFLAGS. LDFLAGS="${LDFLAGS}${LDFLAGS:+ }-L$additional_libdir" fi fi fi fi fi ]) dnl AC_LIB_PREPARE_PREFIX creates variables acl_final_prefix, dnl acl_final_exec_prefix, containing the values to which $prefix and dnl $exec_prefix will expand at the end of the configure script. AC_DEFUN([AC_LIB_PREPARE_PREFIX], [ dnl Unfortunately, prefix and exec_prefix get only finally determined dnl at the end of configure. if test "X$prefix" = "XNONE"; then acl_final_prefix="$ac_default_prefix" else acl_final_prefix="$prefix" fi if test "X$exec_prefix" = "XNONE"; then acl_final_exec_prefix='${prefix}' else acl_final_exec_prefix="$exec_prefix" fi acl_save_prefix="$prefix" prefix="$acl_final_prefix" eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" prefix="$acl_save_prefix" ]) dnl AC_LIB_WITH_FINAL_PREFIX([statement]) evaluates statement, with the dnl variables prefix and exec_prefix bound to the values they will have dnl at the end of the configure script. AC_DEFUN([AC_LIB_WITH_FINAL_PREFIX], [ acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" $1 exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" ]) make-dfsg-3.81.orig/config/longdouble.m40000644000175000017500000000230010416553102020345 0ustar srivastasrivasta# longdouble.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl Test whether the compiler supports the 'long double' type. dnl Prerequisite: AC_PROG_CC AC_DEFUN([gt_TYPE_LONGDOUBLE], [ AC_CACHE_CHECK([for long double], gt_cv_c_long_double, [if test "$GCC" = yes; then gt_cv_c_long_double=yes else AC_TRY_COMPILE([ /* The Stardent Vistra knows sizeof(long double), but does not support it. */ long double foo = 0.0; /* On Ultrix 4.3 cc, long double is 4 and double is 8. */ int array [2*(sizeof(long double) >= sizeof(double)) - 1]; ], , gt_cv_c_long_double=yes, gt_cv_c_long_double=no) fi]) if test $gt_cv_c_long_double = yes; then AC_DEFINE(HAVE_LONG_DOUBLE, 1, [Define if you have the 'long double' type.]) fi ]) make-dfsg-3.81.orig/config/longlong.m40000644000175000017500000000164310416553102020043 0ustar srivastasrivasta# longlong.m4 serial 4 dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. # Define HAVE_LONG_LONG if 'long long' works. AC_DEFUN([jm_AC_TYPE_LONG_LONG], [ AC_CACHE_CHECK([for long long], ac_cv_type_long_long, [AC_TRY_LINK([long long ll = 1LL; int i = 63;], [long long llmax = (long long) -1; return ll << i | ll >> i | llmax / ll | llmax % ll;], ac_cv_type_long_long=yes, ac_cv_type_long_long=no)]) if test $ac_cv_type_long_long = yes; then AC_DEFINE(HAVE_LONG_LONG, 1, [Define if you have the 'long long' type.]) fi ]) make-dfsg-3.81.orig/config/mdate-sh0000755000175000017500000001255310416553102017414 0ustar srivastasrivasta#!/bin/sh # Get modification time of a file or directory and pretty-print it. scriptversion=2005-06-29.22 # Copyright (C) 1995, 1996, 1997, 2003, 2004, 2005 Free Software # Foundation, Inc. # written by Ulrich Drepper , June 1995 # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software Foundation, # Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. # This file is maintained in Automake, please report # bugs to or send patches to # . case $1 in '') echo "$0: No file. Try \`$0 --help' for more information." 1>&2 exit 1; ;; -h | --h*) cat <<\EOF Usage: mdate-sh [--help] [--version] FILE Pretty-print the modification time of FILE. Report bugs to . EOF exit $? ;; -v | --v*) echo "mdate-sh $scriptversion" exit $? ;; esac # Prevent date giving response in another language. LANG=C export LANG LC_ALL=C export LC_ALL LC_TIME=C export LC_TIME # GNU ls changes its time format in response to the TIME_STYLE # variable. Since we cannot assume `unset' works, revert this # variable to its documented default. if test "${TIME_STYLE+set}" = set; then TIME_STYLE=posix-long-iso export TIME_STYLE fi save_arg1=$1 # Find out how to get the extended ls output of a file or directory. if ls -L /dev/null 1>/dev/null 2>&1; then ls_command='ls -L -l -d' else ls_command='ls -l -d' fi # A `ls -l' line looks as follows on OS/2. # drwxrwx--- 0 Aug 11 2001 foo # This differs from Unix, which adds ownership information. # drwxrwx--- 2 root root 4096 Aug 11 2001 foo # # To find the date, we split the line on spaces and iterate on words # until we find a month. This cannot work with files whose owner is a # user named `Jan', or `Feb', etc. However, it's unlikely that `/' # will be owned by a user whose name is a month. So we first look at # the extended ls output of the root directory to decide how many # words should be skipped to get the date. # On HPUX /bin/sh, "set" interprets "-rw-r--r--" as options, so the "x" below. set x`ls -l -d /` # Find which argument is the month. month= command= until test $month do shift # Add another shift to the command. command="$command shift;" case $1 in Jan) month=January; nummonth=1;; Feb) month=February; nummonth=2;; Mar) month=March; nummonth=3;; Apr) month=April; nummonth=4;; May) month=May; nummonth=5;; Jun) month=June; nummonth=6;; Jul) month=July; nummonth=7;; Aug) month=August; nummonth=8;; Sep) month=September; nummonth=9;; Oct) month=October; nummonth=10;; Nov) month=November; nummonth=11;; Dec) month=December; nummonth=12;; esac done # Get the extended ls output of the file or directory. set dummy x`eval "$ls_command \"\$save_arg1\""` # Remove all preceding arguments eval $command # Because of the dummy argument above, month is in $2. # # On a POSIX system, we should have # # $# = 5 # $1 = file size # $2 = month # $3 = day # $4 = year or time # $5 = filename # # On Darwin 7.7.0 and 7.6.0, we have # # $# = 4 # $1 = day # $2 = month # $3 = year or time # $4 = filename # Get the month. case $2 in Jan) month=January; nummonth=1;; Feb) month=February; nummonth=2;; Mar) month=March; nummonth=3;; Apr) month=April; nummonth=4;; May) month=May; nummonth=5;; Jun) month=June; nummonth=6;; Jul) month=July; nummonth=7;; Aug) month=August; nummonth=8;; Sep) month=September; nummonth=9;; Oct) month=October; nummonth=10;; Nov) month=November; nummonth=11;; Dec) month=December; nummonth=12;; esac case $3 in ???*) day=$1;; *) day=$3; shift;; esac # Here we have to deal with the problem that the ls output gives either # the time of day or the year. case $3 in *:*) set `date`; eval year=\$$# case $2 in Jan) nummonthtod=1;; Feb) nummonthtod=2;; Mar) nummonthtod=3;; Apr) nummonthtod=4;; May) nummonthtod=5;; Jun) nummonthtod=6;; Jul) nummonthtod=7;; Aug) nummonthtod=8;; Sep) nummonthtod=9;; Oct) nummonthtod=10;; Nov) nummonthtod=11;; Dec) nummonthtod=12;; esac # For the first six month of the year the time notation can also # be used for files modified in the last year. if (expr $nummonth \> $nummonthtod) > /dev/null; then year=`expr $year - 1` fi;; *) year=$3;; esac # The result. echo $day $month $year # Local Variables: # mode: shell-script # sh-indentation: 2 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: make-dfsg-3.81.orig/config/missing0000755000175000017500000002540610416553102017364 0ustar srivastasrivasta#! /bin/sh # Common stub for a few missing GNU programs while installing. scriptversion=2005-06-08.21 # Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005 # Free Software Foundation, Inc. # Originally by Fran,cois Pinard , 1996. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2, or (at your option) # any later version. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA # 02110-1301, USA. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a # configuration script generated by Autoconf, you may include it under # the same distribution terms that you use for the rest of that program. if test $# -eq 0; then echo 1>&2 "Try \`$0 --help' for more information" exit 1 fi run=: # In the cases where this matters, `missing' is being run in the # srcdir already. if test -f configure.ac; then configure_ac=configure.ac else configure_ac=configure.in fi msg="missing on your system" case "$1" in --run) # Try to run requested program, and just exit if it succeeds. run= shift "$@" && exit 0 # Exit code 63 means version mismatch. This often happens # when the user try to use an ancient version of a tool on # a file that requires a minimum version. In this case we # we should proceed has if the program had been absent, or # if --run hadn't been passed. if test $? = 63; then run=: msg="probably too old" fi ;; -h|--h|--he|--hel|--help) echo "\ $0 [OPTION]... PROGRAM [ARGUMENT]... Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an error status if there is no known handling for PROGRAM. Options: -h, --help display this help and exit -v, --version output version information and exit --run try to run the given command, and emulate it if it fails Supported PROGRAM values: aclocal touch file \`aclocal.m4' autoconf touch file \`configure' autoheader touch file \`config.h.in' automake touch all \`Makefile.in' files bison create \`y.tab.[ch]', if possible, from existing .[ch] flex create \`lex.yy.c', if possible, from existing .c help2man touch the output file lex create \`lex.yy.c', if possible, from existing .c makeinfo touch the output file tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] Send bug reports to ." exit $? ;; -v|--v|--ve|--ver|--vers|--versi|--versio|--version) echo "missing $scriptversion (GNU Automake)" exit $? ;; -*) echo 1>&2 "$0: Unknown \`$1' option" echo 1>&2 "Try \`$0 --help' for more information" exit 1 ;; esac # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect # the program). case "$1" in lex|yacc) # Not GNU programs, they don't have --version. ;; tar) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then exit 1 fi ;; *) if test -z "$run" && ($1 --version) > /dev/null 2>&1; then # We have it, but it failed. exit 1 elif test "x$2" = "x--version" || test "x$2" = "x--help"; then # Could not run --version or --help. This is probably someone # running `$TOOL --version' or `$TOOL --help' to check whether # $TOOL exists and not knowing $TOOL uses missing. exit 1 fi ;; esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. case "$1" in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." touch aclocal.m4 ;; autoconf) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." touch configure ;; autoheader) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want to install the \`Autoconf' and \`GNU m4' packages. Grab them from any GNU archive site." files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}` test -z "$files" && files="config.h" touch_files= for f in $files; do case "$f" in *:*) touch_files="$touch_files "`echo "$f" | sed -e 's/^[^:]*://' -e 's/:.*//'`;; *) touch_files="$touch_files $f.in";; esac done touch $touch_files ;; automake*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'. You might want to install the \`Automake' and \`Perl' packages. Grab them from any GNU archive site." find . -type f -name Makefile.am -print | sed 's/\.am$/.in/' | while read f; do touch "$f"; done ;; autom4te) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the proper tools for further handling them. You can get \`$1' as part of \`Autoconf' from any GNU archive site." file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'` test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'` if test -f "$file"; then touch $file else test -z "$file" || exec >$file echo "#! /bin/sh" echo "# Created by GNU Automake missing as a replacement of" echo "# $ $@" echo "exit 0" chmod +x $file exit 1 fi ;; bison|yacc) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package in order for those modifications to take effect. You can get \`Bison' from any GNU archive site." rm -f y.tab.c y.tab.h if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.y) SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.c fi SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" y.tab.h fi ;; esac fi if [ ! -f y.tab.h ]; then echo >y.tab.h fi if [ ! -f y.tab.c ]; then echo 'main() { return 0; }' >y.tab.c fi ;; lex|flex) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package in order for those modifications to take effect. You can get \`Flex' from any GNU archive site." rm -f lex.yy.c if [ $# -ne 1 ]; then eval LASTARG="\${$#}" case "$LASTARG" in *.l) SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'` if [ -f "$SRCFILE" ]; then cp "$SRCFILE" lex.yy.c fi ;; esac fi if [ ! -f lex.yy.c ]; then echo 'main() { return 0; }' >lex.yy.c fi ;; help2man) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the \`Help2man' package in order for those modifications to take effect. You can get \`Help2man' from any GNU archive site." file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'` fi if [ -f "$file" ]; then touch $file else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" exit 1 fi ;; makeinfo) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file indirectly affecting the aspect of the manual. The spurious call might also be the consequence of using a buggy \`make' (AIX, DU, IRIX). You might want to install the \`Texinfo' package or the \`GNU make' package. Grab either from any GNU archive site." # The file to touch is that specified with -o ... file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'` if test -z "$file"; then # ... or it is the one specified with @setfilename ... infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'` file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile` # ... or it is derived from the source name (dir/f.texi becomes f.info) test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info fi # If the file does not exist, the user really needs makeinfo; # let's fail without touching anything. test -f $file || exit 1 touch $file ;; tar) shift # We have already tried tar in the generic part. # Look for gnutar/gtar before invocation to avoid ugly error # messages. if (gnutar --version > /dev/null 2>&1); then gnutar "$@" && exit 0 fi if (gtar --version > /dev/null 2>&1); then gtar "$@" && exit 0 fi firstarg="$1" if shift; then case "$firstarg" in *o*) firstarg=`echo "$firstarg" | sed s/o//` tar "$firstarg" "$@" && exit 0 ;; esac case "$firstarg" in *h*) firstarg=`echo "$firstarg" | sed s/h//` tar "$firstarg" "$@" && exit 0 ;; esac fi echo 1>&2 "\ WARNING: I can't seem to be able to run \`tar' with the given arguments. You may want to install GNU tar or Free paxutils, or check the command line arguments." exit 1 ;; *) echo 1>&2 "\ WARNING: \`$1' is needed, and is $msg. You might have modified some files without having the proper tools for further handling them. Check the \`README' file, it often tells you about the needed prerequisites for installing this package. You may also peek at any GNU archive site, in case some other package would contain this missing \`$1' program." exit 1 ;; esac exit 0 # Local variables: # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" # time-stamp-end: "$" # End: make-dfsg-3.81.orig/config/mkinstalldirs0000755000175000017500000000370410416553102020570 0ustar srivastasrivasta#! /bin/sh # mkinstalldirs --- make directory hierarchy # Author: Noah Friedman # Created: 1993-05-16 # Public domain errstatus=0 dirmode="" usage="\ Usage: mkinstalldirs [-h] [--help] [-m mode] dir ..." # process command line arguments while test $# -gt 0 ; do case $1 in -h | --help | --h*) # -h for help echo "$usage" 1>&2 exit 0 ;; -m) # -m PERM arg shift test $# -eq 0 && { echo "$usage" 1>&2; exit 1; } dirmode=$1 shift ;; --) # stop option processing shift break ;; -*) # unknown option echo "$usage" 1>&2 exit 1 ;; *) # first non-opt arg break ;; esac done for file do if test -d "$file"; then shift else break fi done case $# in 0) exit 0 ;; esac case $dirmode in '') if mkdir -p -- . 2>/dev/null; then echo "mkdir -p -- $*" exec mkdir -p -- "$@" fi ;; *) if mkdir -m "$dirmode" -p -- . 2>/dev/null; then echo "mkdir -m $dirmode -p -- $*" exec mkdir -m "$dirmode" -p -- "$@" fi ;; esac for file do set fnord `echo ":$file" | sed -ne 's/^:\//#/;s/^://;s/\// /g;s/^#/\//;p'` shift pathcomp= for d do pathcomp="$pathcomp$d" case $pathcomp in -*) pathcomp=./$pathcomp ;; esac if test ! -d "$pathcomp"; then echo "mkdir $pathcomp" mkdir "$pathcomp" || lasterr=$? if test ! -d "$pathcomp"; then errstatus=$lasterr else if test ! -z "$dirmode"; then echo "chmod $dirmode $pathcomp" lasterr="" chmod "$dirmode" "$pathcomp" || lasterr=$? if test ! -z "$lasterr"; then errstatus=$lasterr fi fi fi fi pathcomp="$pathcomp/" done done exit $errstatus # Local Variables: # mode: shell-script # sh-indentation: 2 # End: # mkinstalldirs ends here make-dfsg-3.81.orig/config/nls.m40000644000175000017500000000350510416553102017017 0ustar srivastasrivasta# nls.m4 serial 1 (gettext-0.12) dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. AC_DEFUN([AM_NLS], [ AC_MSG_CHECKING([whether NLS is requested]) dnl Default is enabled NLS AC_ARG_ENABLE(nls, [ --disable-nls do not use Native Language Support], USE_NLS=$enableval, USE_NLS=yes) AC_MSG_RESULT($USE_NLS) AC_SUBST(USE_NLS) ]) AC_DEFUN([AM_MKINSTALLDIRS], [ dnl If the AC_CONFIG_AUX_DIR macro for autoconf is used we possibly dnl find the mkinstalldirs script in another subdir but $(top_srcdir). dnl Try to locate it. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then case "$ac_aux_dir" in /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; esac fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi AC_SUBST(MKINSTALLDIRS) ]) make-dfsg-3.81.orig/config/po.m40000644000175000017500000004265210416553102016647 0ustar srivastasrivasta# po.m4 serial 3 (gettext-0.14) dnl Copyright (C) 1995-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1995-2000. dnl Bruno Haible , 2000-2003. dnl Checks for all prerequisites of the po subdirectory. AC_DEFUN([AM_PO_SUBDIRS], [ AC_REQUIRE([AC_PROG_MAKE_SET])dnl AC_REQUIRE([AC_PROG_INSTALL])dnl AC_REQUIRE([AM_MKINSTALLDIRS])dnl AC_REQUIRE([AM_NLS])dnl dnl Perform the following tests also if --disable-nls has been given, dnl because they are needed for "make dist" to work. dnl Search for GNU msgfmt in the PATH. dnl The first test excludes Solaris msgfmt and early GNU msgfmt versions. dnl The second test excludes FreeBSD msgfmt. AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) dnl Search for GNU xgettext 0.12 or newer in the PATH. dnl The first test excludes Solaris xgettext and early GNU xgettext versions. dnl The second test excludes FreeBSD xgettext. AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, [$ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi)], :) dnl Remove leftover from FreeBSD xgettext call. rm -f messages.po dnl Search for GNU msgmerge 0.11 or newer in the PATH. AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, [$ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1], :) dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. dnl Test whether we really found GNU msgfmt. if test "$GMSGFMT" != ":"; then dnl If it is no GNU msgfmt we define it as : so that the dnl Makefiles still can work. if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then : ; else GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` AC_MSG_RESULT( [found $GMSGFMT program is not GNU msgfmt; ignore it]) GMSGFMT=":" fi fi dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. dnl Test whether we really found GNU xgettext. if test "$XGETTEXT" != ":"; then dnl If it is no GNU xgettext we define it as : so that the dnl Makefiles still can work. if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then : ; else AC_MSG_RESULT( [found xgettext program is not GNU xgettext; ignore it]) XGETTEXT=":" fi dnl Remove leftover from FreeBSD xgettext call. rm -f messages.po fi AC_OUTPUT_COMMANDS([ for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; esac # PO directories have a Makefile.in generated from Makefile.in.in. case "$ac_file" in */Makefile.in) # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" POMAKEFILEDEPS="POTFILES.in" # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend # on $ac_dir but don't depend on user-specified configuration # parameters. if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assigment from automake. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) # Compute UPDATEPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) # Compute DUMMYPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) # Compute GMOFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) case "$ac_given_srcdir" in .) srcdirpre= ;; *) srcdirpre='$(srcdir)/' ;; esac POFILES= UPDATEPOFILES= DUMMYPOFILES= GMOFILES= for lang in $ALL_LINGUAS; do POFILES="$POFILES $srcdirpre$lang.po" UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" DUMMYPOFILES="$DUMMYPOFILES $lang.nop" GMOFILES="$GMOFILES $srcdirpre$lang.gmo" done # CATALOGS depends on both $ac_dir and the user's LINGUAS # environment variable. INST_LINGUAS= if test -n "$ALL_LINGUAS"; then for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "$LINGUAS"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then INST_LINGUAS="$INST_LINGUAS $presentlang" fi done fi CATALOGS= if test -n "$INST_LINGUAS"; then for lang in $INST_LINGUAS; do CATALOGS="$CATALOGS $lang.gmo" done fi test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do if test -f "$f"; then case "$f" in *.orig | *.bak | *~) ;; *) cat "$f" >> "$ac_dir/Makefile" ;; esac fi done fi ;; esac done], [# Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it # from automake. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" ]) ]) dnl Postprocesses a Makefile in a directory containing PO files. AC_DEFUN([AM_POSTPROCESS_PO_MAKEFILE], [ # When this code is run, in config.status, two variables have already been # set: # - OBSOLETE_ALL_LINGUAS is the value of LINGUAS set in configure.in, # - LINGUAS is the value of the environment variable LINGUAS at configure # time. changequote(,)dnl # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac # Find a way to echo strings without interpreting backslash. if test "X`(echo '\t') 2>/dev/null`" = 'X\t'; then gt_echo='echo' else if test "X`(printf '%s\n' '\t') 2>/dev/null`" = 'X\t'; then gt_echo='printf %s\n' else echo_func () { cat < "$ac_file.tmp" if grep -l '@TCLCATALOGS@' "$ac_file" > /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/'` cat >> "$ac_file.tmp" < /dev/null; then # Add dependencies that cannot be formulated as a simple suffix rule. for lang in $ALL_LINGUAS; do frobbedlang=`echo $lang | sed -e 's/_/-/g'` cat >> "$ac_file.tmp" <> "$ac_file.tmp" < #include /* The string "%2$d %1$d", with dollar characters protected from the shell's dollar expansion (possibly an autoconf bug). */ static char format[] = { '%', '2', '$', 'd', ' ', '%', '1', '$', 'd', '\0' }; static char buf[100]; int main () { sprintf (buf, format, 33, 55); return (strcmp (buf, "55 33") != 0); }], gt_cv_func_printf_posix=yes, gt_cv_func_printf_posix=no, [ AC_EGREP_CPP(notposix, [ #if defined __NetBSD__ || defined _MSC_VER || defined __MINGW32__ || defined __CYGWIN__ notposix #endif ], gt_cv_func_printf_posix="guessing no", gt_cv_func_printf_posix="guessing yes") ]) ]) case $gt_cv_func_printf_posix in *yes) AC_DEFINE(HAVE_POSIX_PRINTF, 1, [Define if your printf() function supports format strings with positions.]) ;; esac ]) make-dfsg-3.81.orig/config/progtest.m40000644000175000017500000000563410416553102020077 0ustar srivastasrivasta# progtest.m4 serial 3 (gettext-0.12) dnl Copyright (C) 1996-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl dnl This file can can be used in projects which are not available under dnl the GNU General Public License or the GNU Library General Public dnl License but which still want to provide support for the GNU gettext dnl functionality. dnl Please note that the actual code of the GNU gettext library is covered dnl by the GNU Library General Public License, and the rest of the GNU dnl gettext package package is covered by the GNU General Public License. dnl They are *not* in the public domain. dnl Authors: dnl Ulrich Drepper , 1996. # Search path for a program which passes the given test. dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) AC_DEFUN([AM_PATH_PROG_WITH_TEST], [ # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "$2", so it can be a program name with args. set dummy $2; ac_word=[$]2 AC_MSG_CHECKING([for $ac_word]) AC_CACHE_VAL(ac_cv_path_$1, [case "[$]$1" in [[\\/]]* | ?:[[\\/]]*) ac_cv_path_$1="[$]$1" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in ifelse([$5], , $PATH, [$5]); do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then if [$3]; then ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" dnl If no 4th arg is given, leave the cache variable unset, dnl so AC_PATH_PROGS will keep looking. ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" ])dnl ;; esac])dnl $1="$ac_cv_path_$1" if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then AC_MSG_RESULT([$]$1) else AC_MSG_RESULT(no) fi AC_SUBST($1)dnl ]) make-dfsg-3.81.orig/config/signed.m40000644000175000017500000000140110416553102017465 0ustar srivastasrivasta# signed.m4 serial 1 (gettext-0.10.40) dnl Copyright (C) 2001-2002 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. AC_DEFUN([bh_C_SIGNED], [ AC_CACHE_CHECK([for signed], bh_cv_c_signed, [AC_TRY_COMPILE(, [signed char x;], bh_cv_c_signed=yes, bh_cv_c_signed=no)]) if test $bh_cv_c_signed = no; then AC_DEFINE(signed, , [Define to empty if the C compiler doesn't support this keyword.]) fi ]) make-dfsg-3.81.orig/config/size_max.m40000644000175000017500000000407210416553102020042 0ustar srivastasrivasta# size_max.m4 serial 2 dnl Copyright (C) 2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. AC_DEFUN([gl_SIZE_MAX], [ AC_CHECK_HEADERS(stdint.h) dnl First test whether the system already has SIZE_MAX. AC_MSG_CHECKING([for SIZE_MAX]) result= AC_EGREP_CPP([Found it], [ #include #if HAVE_STDINT_H #include #endif #ifdef SIZE_MAX Found it #endif ], result=yes) if test -z "$result"; then dnl Define it ourselves. Here we assume that the type 'size_t' is not wider dnl than the type 'unsigned long'. dnl The _AC_COMPUTE_INT macro works up to LONG_MAX, since it uses 'expr', dnl which is guaranteed to work from LONG_MIN to LONG_MAX. _AC_COMPUTE_INT([~(size_t)0 / 10], res_hi, [#include ], result=?) _AC_COMPUTE_INT([~(size_t)0 % 10], res_lo, [#include ], result=?) _AC_COMPUTE_INT([sizeof (size_t) <= sizeof (unsigned int)], fits_in_uint, [#include ], result=?) if test "$fits_in_uint" = 1; then dnl Even though SIZE_MAX fits in an unsigned int, it must be of type dnl 'unsigned long' if the type 'size_t' is the same as 'unsigned long'. AC_TRY_COMPILE([#include extern size_t foo; extern unsigned long foo; ], [], fits_in_uint=0) fi if test -z "$result"; then if test "$fits_in_uint" = 1; then result="$res_hi$res_lo"U else result="$res_hi$res_lo"UL fi else dnl Shouldn't happen, but who knows... result='~(size_t)0' fi fi AC_MSG_RESULT([$result]) if test "$result" != yes; then AC_DEFINE_UNQUOTED([SIZE_MAX], [$result], [Define as the maximum value of type 'size_t', if the system doesn't define it.]) fi ]) make-dfsg-3.81.orig/config/stdint_h.m40000644000175000017500000000205310416553102020034 0ustar srivastasrivasta# stdint_h.m4 serial 3 (gettext-0.12) dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. # Define HAVE_STDINT_H_WITH_UINTMAX if exists, # doesn't clash with , and declares uintmax_t. AC_DEFUN([jm_AC_HEADER_STDINT_H], [ AC_CACHE_CHECK([for stdint.h], jm_ac_cv_header_stdint_h, [AC_TRY_COMPILE( [#include #include ], [uintmax_t i = (uintmax_t) -1;], jm_ac_cv_header_stdint_h=yes, jm_ac_cv_header_stdint_h=no)]) if test $jm_ac_cv_header_stdint_h = yes; then AC_DEFINE_UNQUOTED(HAVE_STDINT_H_WITH_UINTMAX, 1, [Define if exists, doesn't clash with , and declares uintmax_t. ]) fi ]) make-dfsg-3.81.orig/config/texinfo.tex0000644000175000017500000070341310416553102020164 0ustar srivastasrivasta% texinfo.tex -- TeX macros to handle Texinfo files. % % Load plain if necessary, i.e., if running under initex. \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi % \def\texinfoversion{2006-03-21.13} % % Copyright (C) 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995, % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free % Software Foundation, Inc. % % This texinfo.tex file is free software; you can redistribute it and/or % modify it under the terms of the GNU General Public License as % published by the Free Software Foundation; either version 2, or (at % your option) any later version. % % This texinfo.tex file is distributed in the hope that it will be % useful, but WITHOUT ANY WARRANTY; without even the implied warranty % of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU % General Public License for more details. % % You should have received a copy of the GNU General Public License % along with this texinfo.tex file; see the file COPYING. If not, write % to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, % Boston, MA 02110-1301, USA. % % As a special exception, when this file is read by TeX when processing % a Texinfo source document, you may use the result without % restriction. (This has been our intent since Texinfo was invented.) % % Please try the latest version of texinfo.tex before submitting bug % reports; you can get the latest version from: % http://www.gnu.org/software/texinfo/ (the Texinfo home page), or % ftp://tug.org/tex/texinfo.tex % (and all CTAN mirrors, see http://www.ctan.org). % The texinfo.tex in any given distribution could well be out % of date, so if that's what you're using, please check. % % Send bug reports to bug-texinfo@gnu.org. Please include including a % complete document in each bug report with which we can reproduce the % problem. Patches are, of course, greatly appreciated. % % To process a Texinfo manual with TeX, it's most reliable to use the % texi2dvi shell script that comes with the distribution. For a simple % manual foo.texi, however, you can get away with this: % tex foo.texi % texindex foo.?? % tex foo.texi % tex foo.texi % dvips foo.dvi -o # or whatever; this makes foo.ps. % The extra TeX runs get the cross-reference information correct. % Sometimes one run after texindex suffices, and sometimes you need more % than two; texi2dvi does it as many times as necessary. % % It is possible to adapt texinfo.tex for other languages, to some % extent. You can get the existing language-specific files from the % full Texinfo distribution. % % The GNU Texinfo home page is http://www.gnu.org/software/texinfo. \message{Loading texinfo [version \texinfoversion]:} % If in a .fmt file, print the version number % and turn on active characters that we couldn't do earlier because % they might have appeared in the input file name. \everyjob{\message{[Texinfo version \texinfoversion]}% \catcode`+=\active \catcode`\_=\active} \message{Basics,} \chardef\other=12 % We never want plain's \outer definition of \+ in Texinfo. % For @tex, we can use \tabalign. \let\+ = \relax % Save some plain tex macros whose names we will redefine. \let\ptexb=\b \let\ptexbullet=\bullet \let\ptexc=\c \let\ptexcomma=\, \let\ptexdot=\. \let\ptexdots=\dots \let\ptexend=\end \let\ptexequiv=\equiv \let\ptexexclam=\! \let\ptexfootnote=\footnote \let\ptexgtr=> \let\ptexhat=^ \let\ptexi=\i \let\ptexindent=\indent \let\ptexinsert=\insert \let\ptexlbrace=\{ \let\ptexless=< \let\ptexnewwrite\newwrite \let\ptexnoindent=\noindent \let\ptexplus=+ \let\ptexrbrace=\} \let\ptexslash=\/ \let\ptexstar=\* \let\ptext=\t % If this character appears in an error message or help string, it % starts a new line in the output. \newlinechar = `^^J % Use TeX 3.0's \inputlineno to get the line number, for better error % messages, but if we're using an old version of TeX, don't do anything. % \ifx\inputlineno\thisisundefined \let\linenumber = \empty % Pre-3.0. \else \def\linenumber{l.\the\inputlineno:\space} \fi % Set up fixed words for English if not already set. \ifx\putwordAppendix\undefined \gdef\putwordAppendix{Appendix}\fi \ifx\putwordChapter\undefined \gdef\putwordChapter{Chapter}\fi \ifx\putwordfile\undefined \gdef\putwordfile{file}\fi \ifx\putwordin\undefined \gdef\putwordin{in}\fi \ifx\putwordIndexIsEmpty\undefined \gdef\putwordIndexIsEmpty{(Index is empty)}\fi \ifx\putwordIndexNonexistent\undefined \gdef\putwordIndexNonexistent{(Index is nonexistent)}\fi \ifx\putwordInfo\undefined \gdef\putwordInfo{Info}\fi \ifx\putwordInstanceVariableof\undefined \gdef\putwordInstanceVariableof{Instance Variable of}\fi \ifx\putwordMethodon\undefined \gdef\putwordMethodon{Method on}\fi \ifx\putwordNoTitle\undefined \gdef\putwordNoTitle{No Title}\fi \ifx\putwordof\undefined \gdef\putwordof{of}\fi \ifx\putwordon\undefined \gdef\putwordon{on}\fi \ifx\putwordpage\undefined \gdef\putwordpage{page}\fi \ifx\putwordsection\undefined \gdef\putwordsection{section}\fi \ifx\putwordSection\undefined \gdef\putwordSection{Section}\fi \ifx\putwordsee\undefined \gdef\putwordsee{see}\fi \ifx\putwordSee\undefined \gdef\putwordSee{See}\fi \ifx\putwordShortTOC\undefined \gdef\putwordShortTOC{Short Contents}\fi \ifx\putwordTOC\undefined \gdef\putwordTOC{Table of Contents}\fi % \ifx\putwordMJan\undefined \gdef\putwordMJan{January}\fi \ifx\putwordMFeb\undefined \gdef\putwordMFeb{February}\fi \ifx\putwordMMar\undefined \gdef\putwordMMar{March}\fi \ifx\putwordMApr\undefined \gdef\putwordMApr{April}\fi \ifx\putwordMMay\undefined \gdef\putwordMMay{May}\fi \ifx\putwordMJun\undefined \gdef\putwordMJun{June}\fi \ifx\putwordMJul\undefined \gdef\putwordMJul{July}\fi \ifx\putwordMAug\undefined \gdef\putwordMAug{August}\fi \ifx\putwordMSep\undefined \gdef\putwordMSep{September}\fi \ifx\putwordMOct\undefined \gdef\putwordMOct{October}\fi \ifx\putwordMNov\undefined \gdef\putwordMNov{November}\fi \ifx\putwordMDec\undefined \gdef\putwordMDec{December}\fi % \ifx\putwordDefmac\undefined \gdef\putwordDefmac{Macro}\fi \ifx\putwordDefspec\undefined \gdef\putwordDefspec{Special Form}\fi \ifx\putwordDefvar\undefined \gdef\putwordDefvar{Variable}\fi \ifx\putwordDefopt\undefined \gdef\putwordDefopt{User Option}\fi \ifx\putwordDeffunc\undefined \gdef\putwordDeffunc{Function}\fi % Since the category of space is not known, we have to be careful. \chardef\spacecat = 10 \def\spaceisspace{\catcode`\ =\spacecat} % Ignore a token. % \def\gobble#1{} % The following is used inside several \edef's. \def\makecsname#1{\expandafter\noexpand\csname#1\endcsname} % Hyphenation fixes. \hyphenation{ Flor-i-da Ghost-script Ghost-view Mac-OS Post-Script ap-pen-dix bit-map bit-maps data-base data-bases eshell fall-ing half-way long-est man-u-script man-u-scripts mini-buf-fer mini-buf-fers over-view par-a-digm par-a-digms rath-er rec-tan-gu-lar ro-bot-ics se-vere-ly set-up spa-ces spell-ing spell-ings stand-alone strong-est time-stamp time-stamps which-ever white-space wide-spread wrap-around } % Margin to add to right of even pages, to left of odd pages. \newdimen\bindingoffset \newdimen\normaloffset \newdimen\pagewidth \newdimen\pageheight % For a final copy, take out the rectangles % that mark overfull boxes (in case you have decided % that the text looks ok even though it passes the margin). % \def\finalout{\overfullrule=0pt} % @| inserts a changebar to the left of the current line. It should % surround any changed text. This approach does *not* work if the % change spans more than two lines of output. To handle that, we would % have adopt a much more difficult approach (putting marks into the main % vertical list for the beginning and end of each change). % \def\|{% % \vadjust can only be used in horizontal mode. \leavevmode % % Append this vertical mode material after the current line in the output. \vadjust{% % We want to insert a rule with the height and depth of the current % leading; that is exactly what \strutbox is supposed to record. \vskip-\baselineskip % % \vadjust-items are inserted at the left edge of the type. So % the \llap here moves out into the left-hand margin. \llap{% % % For a thicker or thinner bar, change the `1pt'. \vrule height\baselineskip width1pt % % This is the space between the bar and the text. \hskip 12pt }% }% } % Sometimes it is convenient to have everything in the transcript file % and nothing on the terminal. We don't just call \tracingall here, % since that produces some useless output on the terminal. We also make % some effort to order the tracing commands to reduce output in the log % file; cf. trace.sty in LaTeX. % \def\gloggingall{\begingroup \globaldefs = 1 \loggingall \endgroup}% \def\loggingall{% \tracingstats2 \tracingpages1 \tracinglostchars2 % 2 gives us more in etex \tracingparagraphs1 \tracingoutput1 \tracingmacros2 \tracingrestores1 \showboxbreadth\maxdimen \showboxdepth\maxdimen \ifx\eTeXversion\undefined\else % etex gives us more logging \tracingscantokens1 \tracingifs1 \tracinggroups1 \tracingnesting2 \tracingassigns1 \fi \tracingcommands3 % 3 gives us more in etex \errorcontextlines16 }% % add check for \lastpenalty to plain's definitions. If the last thing % we did was a \nobreak, we don't want to insert more space. % \def\smallbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\smallskipamount \removelastskip\penalty-50\smallskip\fi\fi} \def\medbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\medskipamount \removelastskip\penalty-100\medskip\fi\fi} \def\bigbreak{\ifnum\lastpenalty<10000\par\ifdim\lastskip<\bigskipamount \removelastskip\penalty-200\bigskip\fi\fi} % For @cropmarks command. % Do @cropmarks to get crop marks. % \newif\ifcropmarks \let\cropmarks = \cropmarkstrue % % Dimensions to add cropmarks at corners. % Added by P. A. MacKay, 12 Nov. 1986 % \newdimen\outerhsize \newdimen\outervsize % set by the paper size routines \newdimen\cornerlong \cornerlong=1pc \newdimen\cornerthick \cornerthick=.3pt \newdimen\topandbottommargin \topandbottommargin=.75in % Main output routine. \chardef\PAGE = 255 \output = {\onepageout{\pagecontents\PAGE}} \newbox\headlinebox \newbox\footlinebox % \onepageout takes a vbox as an argument. Note that \pagecontents % does insertions, but you have to call it yourself. \def\onepageout#1{% \ifcropmarks \hoffset=0pt \else \hoffset=\normaloffset \fi % \ifodd\pageno \advance\hoffset by \bindingoffset \else \advance\hoffset by -\bindingoffset\fi % % Do this outside of the \shipout so @code etc. will be expanded in % the headline as they should be, not taken literally (outputting ''code). \setbox\headlinebox = \vbox{\let\hsize=\pagewidth \makeheadline}% \setbox\footlinebox = \vbox{\let\hsize=\pagewidth \makefootline}% % {% % Have to do this stuff outside the \shipout because we want it to % take effect in \write's, yet the group defined by the \vbox ends % before the \shipout runs. % \indexdummies % don't expand commands in the output. \normalturnoffactive % \ in index entries must not stay \, e.g., if % the page break happens to be in the middle of an example. % We don't want .vr (or whatever) entries like this: % \entry{{\tt \indexbackslash }acronym}{32}{\code {\acronym}} % "\acronym" won't work when it's read back in; % it needs to be % {\code {{\tt \backslashcurfont }acronym} \shipout\vbox{% % Do this early so pdf references go to the beginning of the page. \ifpdfmakepagedest \pdfdest name{\the\pageno} xyz\fi % \ifcropmarks \vbox to \outervsize\bgroup \hsize = \outerhsize \vskip-\topandbottommargin \vtop to0pt{% \line{\ewtop\hfil\ewtop}% \nointerlineskip \line{% \vbox{\moveleft\cornerthick\nstop}% \hfill \vbox{\moveright\cornerthick\nstop}% }% \vss}% \vskip\topandbottommargin \line\bgroup \hfil % center the page within the outer (page) hsize. \ifodd\pageno\hskip\bindingoffset\fi \vbox\bgroup \fi % \unvbox\headlinebox \pagebody{#1}% \ifdim\ht\footlinebox > 0pt % Only leave this space if the footline is nonempty. % (We lessened \vsize for it in \oddfootingxxx.) % The \baselineskip=24pt in plain's \makefootline has no effect. \vskip 2\baselineskip \unvbox\footlinebox \fi % \ifcropmarks \egroup % end of \vbox\bgroup \hfil\egroup % end of (centering) \line\bgroup \vskip\topandbottommargin plus1fill minus1fill \boxmaxdepth = \cornerthick \vbox to0pt{\vss \line{% \vbox{\moveleft\cornerthick\nsbot}% \hfill \vbox{\moveright\cornerthick\nsbot}% }% \nointerlineskip \line{\ewbot\hfil\ewbot}% }% \egroup % \vbox from first cropmarks clause \fi }% end of \shipout\vbox }% end of group with \indexdummies \advancepageno \ifnum\outputpenalty>-20000 \else\dosupereject\fi } \newinsert\margin \dimen\margin=\maxdimen \def\pagebody#1{\vbox to\pageheight{\boxmaxdepth=\maxdepth #1}} {\catcode`\@ =11 \gdef\pagecontents#1{\ifvoid\topins\else\unvbox\topins\fi % marginal hacks, juha@viisa.uucp (Juha Takala) \ifvoid\margin\else % marginal info is present \rlap{\kern\hsize\vbox to\z@{\kern1pt\box\margin \vss}}\fi \dimen@=\dp#1 \unvbox#1 \ifvoid\footins\else\vskip\skip\footins\footnoterule \unvbox\footins\fi \ifr@ggedbottom \kern-\dimen@ \vfil \fi} } % Here are the rules for the cropmarks. Note that they are % offset so that the space between them is truly \outerhsize or \outervsize % (P. A. MacKay, 12 November, 1986) % \def\ewtop{\vrule height\cornerthick depth0pt width\cornerlong} \def\nstop{\vbox {\hrule height\cornerthick depth\cornerlong width\cornerthick}} \def\ewbot{\vrule height0pt depth\cornerthick width\cornerlong} \def\nsbot{\vbox {\hrule height\cornerlong depth\cornerthick width\cornerthick}} % Parse an argument, then pass it to #1. The argument is the rest of % the input line (except we remove a trailing comment). #1 should be a % macro which expects an ordinary undelimited TeX argument. % \def\parsearg{\parseargusing{}} \def\parseargusing#1#2{% \def\argtorun{#2}% \begingroup \obeylines \spaceisspace #1% \parseargline\empty% Insert the \empty token, see \finishparsearg below. } {\obeylines % \gdef\parseargline#1^^M{% \endgroup % End of the group started in \parsearg. \argremovecomment #1\comment\ArgTerm% }% } % First remove any @comment, then any @c comment. \def\argremovecomment#1\comment#2\ArgTerm{\argremovec #1\c\ArgTerm} \def\argremovec#1\c#2\ArgTerm{\argcheckspaces#1\^^M\ArgTerm} % Each occurence of `\^^M' or `\^^M' is replaced by a single space. % % \argremovec might leave us with trailing space, e.g., % @end itemize @c foo % This space token undergoes the same procedure and is eventually removed % by \finishparsearg. % \def\argcheckspaces#1\^^M{\argcheckspacesX#1\^^M \^^M} \def\argcheckspacesX#1 \^^M{\argcheckspacesY#1\^^M} \def\argcheckspacesY#1\^^M#2\^^M#3\ArgTerm{% \def\temp{#3}% \ifx\temp\empty % Do not use \next, perhaps the caller of \parsearg uses it; reuse \temp: \let\temp\finishparsearg \else \let\temp\argcheckspaces \fi % Put the space token in: \temp#1 #3\ArgTerm } % If a _delimited_ argument is enclosed in braces, they get stripped; so % to get _exactly_ the rest of the line, we had to prevent such situation. % We prepended an \empty token at the very beginning and we expand it now, % just before passing the control to \argtorun. % (Similarily, we have to think about #3 of \argcheckspacesY above: it is % either the null string, or it ends with \^^M---thus there is no danger % that a pair of braces would be stripped. % % But first, we have to remove the trailing space token. % \def\finishparsearg#1 \ArgTerm{\expandafter\argtorun\expandafter{#1}} % \parseargdef\foo{...} % is roughly equivalent to % \def\foo{\parsearg\Xfoo} % \def\Xfoo#1{...} % % Actually, I use \csname\string\foo\endcsname, ie. \\foo, as it is my % favourite TeX trick. --kasal, 16nov03 \def\parseargdef#1{% \expandafter \doparseargdef \csname\string#1\endcsname #1% } \def\doparseargdef#1#2{% \def#2{\parsearg#1}% \def#1##1% } % Several utility definitions with active space: { \obeyspaces \gdef\obeyedspace{ } % Make each space character in the input produce a normal interword % space in the output. Don't allow a line break at this space, as this % is used only in environments like @example, where each line of input % should produce a line of output anyway. % \gdef\sepspaces{\obeyspaces\let =\tie} % If an index command is used in an @example environment, any spaces % therein should become regular spaces in the raw index file, not the % expansion of \tie (\leavevmode \penalty \@M \ ). \gdef\unsepspaces{\let =\space} } \def\flushcr{\ifx\par\lisppar \def\next##1{}\else \let\next=\relax \fi \next} % Define the framework for environments in texinfo.tex. It's used like this: % % \envdef\foo{...} % \def\Efoo{...} % % It's the responsibility of \envdef to insert \begingroup before the % actual body; @end closes the group after calling \Efoo. \envdef also % defines \thisenv, so the current environment is known; @end checks % whether the environment name matches. The \checkenv macro can also be % used to check whether the current environment is the one expected. % % Non-false conditionals (@iftex, @ifset) don't fit into this, so they % are not treated as enviroments; they don't open a group. (The % implementation of @end takes care not to call \endgroup in this % special case.) % At runtime, environments start with this: \def\startenvironment#1{\begingroup\def\thisenv{#1}} % initialize \let\thisenv\empty % ... but they get defined via ``\envdef\foo{...}'': \long\def\envdef#1#2{\def#1{\startenvironment#1#2}} \def\envparseargdef#1#2{\parseargdef#1{\startenvironment#1#2}} % Check whether we're in the right environment: \def\checkenv#1{% \def\temp{#1}% \ifx\thisenv\temp \else \badenverr \fi } % Evironment mismatch, #1 expected: \def\badenverr{% \errhelp = \EMsimple \errmessage{This command can appear only \inenvironment\temp, not \inenvironment\thisenv}% } \def\inenvironment#1{% \ifx#1\empty out of any environment% \else in environment \expandafter\string#1% \fi } % @end foo executes the definition of \Efoo. % But first, it executes a specialized version of \checkenv % \parseargdef\end{% \if 1\csname iscond.#1\endcsname \else % The general wording of \badenverr may not be ideal, but... --kasal, 06nov03 \expandafter\checkenv\csname#1\endcsname \csname E#1\endcsname \endgroup \fi } \newhelp\EMsimple{Press RETURN to continue.} %% Simple single-character @ commands % @@ prints an @ % Kludge this until the fonts are right (grr). \def\@{{\tt\char64}} % This is turned off because it was never documented % and you can use @w{...} around a quote to suppress ligatures. %% Define @` and @' to be the same as ` and ' %% but suppressing ligatures. %\def\`{{`}} %\def\'{{'}} % Used to generate quoted braces. \def\mylbrace {{\tt\char123}} \def\myrbrace {{\tt\char125}} \let\{=\mylbrace \let\}=\myrbrace \begingroup % Definitions to produce \{ and \} commands for indices, % and @{ and @} for the aux/toc files. \catcode`\{ = \other \catcode`\} = \other \catcode`\[ = 1 \catcode`\] = 2 \catcode`\! = 0 \catcode`\\ = \other !gdef!lbracecmd[\{]% !gdef!rbracecmd[\}]% !gdef!lbraceatcmd[@{]% !gdef!rbraceatcmd[@}]% !endgroup % @comma{} to avoid , parsing problems. \let\comma = , % Accents: @, @dotaccent @ringaccent @ubaraccent @udotaccent % Others are defined by plain TeX: @` @' @" @^ @~ @= @u @v @H. \let\, = \c \let\dotaccent = \. \def\ringaccent#1{{\accent23 #1}} \let\tieaccent = \t \let\ubaraccent = \b \let\udotaccent = \d % Other special characters: @questiondown @exclamdown @ordf @ordm % Plain TeX defines: @AA @AE @O @OE @L (plus lowercase versions) @ss. \def\questiondown{?`} \def\exclamdown{!`} \def\ordf{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{a}}} \def\ordm{\leavevmode\raise1ex\hbox{\selectfonts\lllsize \underbar{o}}} % Dotless i and dotless j, used for accents. \def\imacro{i} \def\jmacro{j} \def\dotless#1{% \def\temp{#1}% \ifx\temp\imacro \ptexi \else\ifx\temp\jmacro \j \else \errmessage{@dotless can be used only with i or j}% \fi\fi } % The \TeX{} logo, as in plain, but resetting the spacing so that a % period following counts as ending a sentence. (Idea found in latex.) % \edef\TeX{\TeX \spacefactor=1000 } % @LaTeX{} logo. Not quite the same results as the definition in % latex.ltx, since we use a different font for the raised A; it's most % convenient for us to use an explicitly smaller font, rather than using % the \scriptstyle font (since we don't reset \scriptstyle and % \scriptscriptstyle). % \def\LaTeX{% L\kern-.36em {\setbox0=\hbox{T}% \vbox to \ht0{\hbox{\selectfonts\lllsize A}\vss}}% \kern-.15em \TeX } % Be sure we're in horizontal mode when doing a tie, since we make space % equivalent to this in @example-like environments. Otherwise, a space % at the beginning of a line will start with \penalty -- and % since \penalty is valid in vertical mode, we'd end up putting the % penalty on the vertical list instead of in the new paragraph. {\catcode`@ = 11 % Avoid using \@M directly, because that causes trouble % if the definition is written into an index file. \global\let\tiepenalty = \@M \gdef\tie{\leavevmode\penalty\tiepenalty\ } } % @: forces normal size whitespace following. \def\:{\spacefactor=1000 } % @* forces a line break. \def\*{\hfil\break\hbox{}\ignorespaces} % @/ allows a line break. \let\/=\allowbreak % @. is an end-of-sentence period. \def\.{.\spacefactor=\endofsentencespacefactor\space} % @! is an end-of-sentence bang. \def\!{!\spacefactor=\endofsentencespacefactor\space} % @? is an end-of-sentence query. \def\?{?\spacefactor=\endofsentencespacefactor\space} % @frenchspacing on|off says whether to put extra space after punctuation. % \def\onword{on} \def\offword{off} % \parseargdef\frenchspacing{% \def\temp{#1}% \ifx\temp\onword \plainfrenchspacing \else\ifx\temp\offword \plainnonfrenchspacing \else \errhelp = \EMsimple \errmessage{Unknown @frenchspacing option `\temp', must be on/off}% \fi\fi } % @w prevents a word break. Without the \leavevmode, @w at the % beginning of a paragraph, when TeX is still in vertical mode, would % produce a whole line of output instead of starting the paragraph. \def\w#1{\leavevmode\hbox{#1}} % @group ... @end group forces ... to be all on one page, by enclosing % it in a TeX vbox. We use \vtop instead of \vbox to construct the box % to keep its height that of a normal line. According to the rules for % \topskip (p.114 of the TeXbook), the glue inserted is % max (\topskip - \ht (first item), 0). If that height is large, % therefore, no glue is inserted, and the space between the headline and % the text is small, which looks bad. % % Another complication is that the group might be very large. This can % cause the glue on the previous page to be unduly stretched, because it % does not have much material. In this case, it's better to add an % explicit \vfill so that the extra space is at the bottom. The % threshold for doing this is if the group is more than \vfilllimit % percent of a page (\vfilllimit can be changed inside of @tex). % \newbox\groupbox \def\vfilllimit{0.7} % \envdef\group{% \ifnum\catcode`\^^M=\active \else \errhelp = \groupinvalidhelp \errmessage{@group invalid in context where filling is enabled}% \fi \startsavinginserts % \setbox\groupbox = \vtop\bgroup % Do @comment since we are called inside an environment such as % @example, where each end-of-line in the input causes an % end-of-line in the output. We don't want the end-of-line after % the `@group' to put extra space in the output. Since @group % should appear on a line by itself (according to the Texinfo % manual), we don't worry about eating any user text. \comment } % % The \vtop produces a box with normal height and large depth; thus, TeX puts % \baselineskip glue before it, and (when the next line of text is done) % \lineskip glue after it. Thus, space below is not quite equal to space % above. But it's pretty close. \def\Egroup{% % To get correct interline space between the last line of the group % and the first line afterwards, we have to propagate \prevdepth. \endgraf % Not \par, as it may have been set to \lisppar. \global\dimen1 = \prevdepth \egroup % End the \vtop. % \dimen0 is the vertical size of the group's box. \dimen0 = \ht\groupbox \advance\dimen0 by \dp\groupbox % \dimen2 is how much space is left on the page (more or less). \dimen2 = \pageheight \advance\dimen2 by -\pagetotal % if the group doesn't fit on the current page, and it's a big big % group, force a page break. \ifdim \dimen0 > \dimen2 \ifdim \pagetotal < \vfilllimit\pageheight \page \fi \fi \box\groupbox \prevdepth = \dimen1 \checkinserts } % % TeX puts in an \escapechar (i.e., `@') at the beginning of the help % message, so this ends up printing `@group can only ...'. % \newhelp\groupinvalidhelp{% group can only be used in environments such as @example,^^J% where each line of input produces a line of output.} % @need space-in-mils % forces a page break if there is not space-in-mils remaining. \newdimen\mil \mil=0.001in % Old definition--didn't work. %\parseargdef\need{\par % %% This method tries to make TeX break the page naturally %% if the depth of the box does not fit. %{\baselineskip=0pt% %\vtop to #1\mil{\vfil}\kern -#1\mil\nobreak %\prevdepth=-1000pt %}} \parseargdef\need{% % Ensure vertical mode, so we don't make a big box in the middle of a % paragraph. \par % % If the @need value is less than one line space, it's useless. \dimen0 = #1\mil \dimen2 = \ht\strutbox \advance\dimen2 by \dp\strutbox \ifdim\dimen0 > \dimen2 % % Do a \strut just to make the height of this box be normal, so the % normal leading is inserted relative to the preceding line. % And a page break here is fine. \vtop to #1\mil{\strut\vfil}% % % TeX does not even consider page breaks if a penalty added to the % main vertical list is 10000 or more. But in order to see if the % empty box we just added fits on the page, we must make it consider % page breaks. On the other hand, we don't want to actually break the % page after the empty box. So we use a penalty of 9999. % % There is an extremely small chance that TeX will actually break the % page at this \penalty, if there are no other feasible breakpoints in % sight. (If the user is using lots of big @group commands, which % almost-but-not-quite fill up a page, TeX will have a hard time doing % good page breaking, for example.) However, I could not construct an % example where a page broke at this \penalty; if it happens in a real % document, then we can reconsider our strategy. \penalty9999 % % Back up by the size of the box, whether we did a page break or not. \kern -#1\mil % % Do not allow a page break right after this kern. \nobreak \fi } % @br forces paragraph break (and is undocumented). \let\br = \par % @page forces the start of a new page. % \def\page{\par\vfill\supereject} % @exdent text.... % outputs text on separate line in roman font, starting at standard page margin % This records the amount of indent in the innermost environment. % That's how much \exdent should take out. \newskip\exdentamount % This defn is used inside fill environments such as @defun. \parseargdef\exdent{\hfil\break\hbox{\kern -\exdentamount{\rm#1}}\hfil\break} % This defn is used inside nofill environments such as @example. \parseargdef\nofillexdent{{\advance \leftskip by -\exdentamount \leftline{\hskip\leftskip{\rm#1}}}} % @inmargin{WHICH}{TEXT} puts TEXT in the WHICH margin next to the current % paragraph. For more general purposes, use the \margin insertion % class. WHICH is `l' or `r'. % \newskip\inmarginspacing \inmarginspacing=1cm \def\strutdepth{\dp\strutbox} % \def\doinmargin#1#2{\strut\vadjust{% \nobreak \kern-\strutdepth \vtop to \strutdepth{% \baselineskip=\strutdepth \vss % if you have multiple lines of stuff to put here, you'll need to % make the vbox yourself of the appropriate size. \ifx#1l% \llap{\ignorespaces #2\hskip\inmarginspacing}% \else \rlap{\hskip\hsize \hskip\inmarginspacing \ignorespaces #2}% \fi \null }% }} \def\inleftmargin{\doinmargin l} \def\inrightmargin{\doinmargin r} % % @inmargin{TEXT [, RIGHT-TEXT]} % (if RIGHT-TEXT is given, use TEXT for left page, RIGHT-TEXT for right; % else use TEXT for both). % \def\inmargin#1{\parseinmargin #1,,\finish} \def\parseinmargin#1,#2,#3\finish{% not perfect, but better than nothing. \setbox0 = \hbox{\ignorespaces #2}% \ifdim\wd0 > 0pt \def\lefttext{#1}% have both texts \def\righttext{#2}% \else \def\lefttext{#1}% have only one text \def\righttext{#1}% \fi % \ifodd\pageno \def\temp{\inrightmargin\righttext}% odd page -> outside is right margin \else \def\temp{\inleftmargin\lefttext}% \fi \temp } % @include file insert text of that file as input. % \def\include{\parseargusing\filenamecatcodes\includezzz} \def\includezzz#1{% \pushthisfilestack \def\thisfile{#1}% {% \makevalueexpandable \def\temp{\input #1 }% \expandafter }\temp \popthisfilestack } \def\filenamecatcodes{% \catcode`\\=\other \catcode`~=\other \catcode`^=\other \catcode`_=\other \catcode`|=\other \catcode`<=\other \catcode`>=\other \catcode`+=\other \catcode`-=\other } \def\pushthisfilestack{% \expandafter\pushthisfilestackX\popthisfilestack\StackTerm } \def\pushthisfilestackX{% \expandafter\pushthisfilestackY\thisfile\StackTerm } \def\pushthisfilestackY #1\StackTerm #2\StackTerm {% \gdef\popthisfilestack{\gdef\thisfile{#1}\gdef\popthisfilestack{#2}}% } \def\popthisfilestack{\errthisfilestackempty} \def\errthisfilestackempty{\errmessage{Internal error: the stack of filenames is empty.}} \def\thisfile{} % @center line % outputs that line, centered. % \parseargdef\center{% \ifhmode \let\next\centerH \else \let\next\centerV \fi \next{\hfil \ignorespaces#1\unskip \hfil}% } \def\centerH#1{% {% \hfil\break \advance\hsize by -\leftskip \advance\hsize by -\rightskip \line{#1}% \break }% } \def\centerV#1{\line{\kern\leftskip #1\kern\rightskip}} % @sp n outputs n lines of vertical space \parseargdef\sp{\vskip #1\baselineskip} % @comment ...line which is ignored... % @c is the same as @comment % @ignore ... @end ignore is another way to write a comment \def\comment{\begingroup \catcode`\^^M=\other% \catcode`\@=\other \catcode`\{=\other \catcode`\}=\other% \commentxxx} {\catcode`\^^M=\other \gdef\commentxxx#1^^M{\endgroup}} \let\c=\comment % @paragraphindent NCHARS % We'll use ems for NCHARS, close enough. % NCHARS can also be the word `asis' or `none'. % We cannot feasibly implement @paragraphindent asis, though. % \def\asisword{asis} % no translation, these are keywords \def\noneword{none} % \parseargdef\paragraphindent{% \def\temp{#1}% \ifx\temp\asisword \else \ifx\temp\noneword \defaultparindent = 0pt \else \defaultparindent = #1em \fi \fi \parindent = \defaultparindent } % @exampleindent NCHARS % We'll use ems for NCHARS like @paragraphindent. % It seems @exampleindent asis isn't necessary, but % I preserve it to make it similar to @paragraphindent. \parseargdef\exampleindent{% \def\temp{#1}% \ifx\temp\asisword \else \ifx\temp\noneword \lispnarrowing = 0pt \else \lispnarrowing = #1em \fi \fi } % @firstparagraphindent WORD % If WORD is `none', then suppress indentation of the first paragraph % after a section heading. If WORD is `insert', then do indent at such % paragraphs. % % The paragraph indentation is suppressed or not by calling % \suppressfirstparagraphindent, which the sectioning commands do. % We switch the definition of this back and forth according to WORD. % By default, we suppress indentation. % \def\suppressfirstparagraphindent{\dosuppressfirstparagraphindent} \def\insertword{insert} % \parseargdef\firstparagraphindent{% \def\temp{#1}% \ifx\temp\noneword \let\suppressfirstparagraphindent = \dosuppressfirstparagraphindent \else\ifx\temp\insertword \let\suppressfirstparagraphindent = \relax \else \errhelp = \EMsimple \errmessage{Unknown @firstparagraphindent option `\temp'}% \fi\fi } % Here is how we actually suppress indentation. Redefine \everypar to % \kern backwards by \parindent, and then reset itself to empty. % % We also make \indent itself not actually do anything until the next % paragraph. % \gdef\dosuppressfirstparagraphindent{% \gdef\indent{% \restorefirstparagraphindent \indent }% \gdef\noindent{% \restorefirstparagraphindent \noindent }% \global\everypar = {% \kern -\parindent \restorefirstparagraphindent }% } \gdef\restorefirstparagraphindent{% \global \let \indent = \ptexindent \global \let \noindent = \ptexnoindent \global \everypar = {}% } % @asis just yields its argument. Used with @table, for example. % \def\asis#1{#1} % @math outputs its argument in math mode. % % One complication: _ usually means subscripts, but it could also mean % an actual _ character, as in @math{@var{some_variable} + 1}. So make % _ active, and distinguish by seeing if the current family is \slfam, % which is what @var uses. { \catcode`\_ = \active \gdef\mathunderscore{% \catcode`\_=\active \def_{\ifnum\fam=\slfam \_\else\sb\fi}% } } % Another complication: we want \\ (and @\) to output a \ character. % FYI, plain.tex uses \\ as a temporary control sequence (why?), but % this is not advertised and we don't care. Texinfo does not % otherwise define @\. % % The \mathchar is class=0=ordinary, family=7=ttfam, position=5C=\. \def\mathbackslash{\ifnum\fam=\ttfam \mathchar"075C \else\backslash \fi} % \def\math{% \tex \mathunderscore \let\\ = \mathbackslash \mathactive $\finishmath } \def\finishmath#1{#1$\endgroup} % Close the group opened by \tex. % Some active characters (such as <) are spaced differently in math. % We have to reset their definitions in case the @math was an argument % to a command which sets the catcodes (such as @item or @section). % { \catcode`^ = \active \catcode`< = \active \catcode`> = \active \catcode`+ = \active \gdef\mathactive{% \let^ = \ptexhat \let< = \ptexless \let> = \ptexgtr \let+ = \ptexplus } } % @bullet and @minus need the same treatment as @math, just above. \def\bullet{$\ptexbullet$} \def\minus{$-$} % @dots{} outputs an ellipsis using the current font. % We do .5em per period so that it has the same spacing in a typewriter % font as three actual period characters. % \def\dots{% \leavevmode \hbox to 1.5em{% \hskip 0pt plus 0.25fil .\hfil.\hfil.% \hskip 0pt plus 0.5fil }% } % @enddots{} is an end-of-sentence ellipsis. % \def\enddots{% \dots \spacefactor=\endofsentencespacefactor } % @comma{} is so commas can be inserted into text without messing up % Texinfo's parsing. % \let\comma = , % @refill is a no-op. \let\refill=\relax % If working on a large document in chapters, it is convenient to % be able to disable indexing, cross-referencing, and contents, for test runs. % This is done with @novalidate (before @setfilename). % \newif\iflinks \linkstrue % by default we want the aux files. \let\novalidate = \linksfalse % @setfilename is done at the beginning of every texinfo file. % So open here the files we need to have open while reading the input. % This makes it possible to make a .fmt file for texinfo. \def\setfilename{% \fixbackslash % Turn off hack to swallow `\input texinfo'. \iflinks \tryauxfile % Open the new aux file. TeX will close it automatically at exit. \immediate\openout\auxfile=\jobname.aux \fi % \openindices needs to do some work in any case. \openindices \let\setfilename=\comment % Ignore extra @setfilename cmds. % % If texinfo.cnf is present on the system, read it. % Useful for site-wide @afourpaper, etc. \openin 1 texinfo.cnf \ifeof 1 \else \input texinfo.cnf \fi \closein 1 % \comment % Ignore the actual filename. } % Called from \setfilename. % \def\openindices{% \newindex{cp}% \newcodeindex{fn}% \newcodeindex{vr}% \newcodeindex{tp}% \newcodeindex{ky}% \newcodeindex{pg}% } % @bye. \outer\def\bye{\pagealignmacro\tracingstats=1\ptexend} \message{pdf,} % adobe `portable' document format \newcount\tempnum \newcount\lnkcount \newtoks\filename \newcount\filenamelength \newcount\pgn \newtoks\toksA \newtoks\toksB \newtoks\toksC \newtoks\toksD \newbox\boxA \newcount\countA \newif\ifpdf \newif\ifpdfmakepagedest % when pdftex is run in dvi mode, \pdfoutput is defined (so \pdfoutput=1 % can be set). So we test for \relax and 0 as well as \undefined, % borrowed from ifpdf.sty. \ifx\pdfoutput\undefined \else \ifx\pdfoutput\relax \else \ifcase\pdfoutput \else \pdftrue \fi \fi \fi % PDF uses PostScript string constants for the names of xref targets, % for display in the outlines, and in other places. Thus, we have to % double any backslashes. Otherwise, a name like "\node" will be % interpreted as a newline (\n), followed by o, d, e. Not good. % http://www.ntg.nl/pipermail/ntg-pdftex/2004-July/000654.html % (and related messages, the final outcome is that it is up to the TeX % user to double the backslashes and otherwise make the string valid, so % that's what we do). % double active backslashes. % {\catcode`\@=0 \catcode`\\=\active @gdef@activebackslashdouble{% @catcode`@\=@active @let\=@doublebackslash} } % To handle parens, we must adopt a different approach, since parens are % not active characters. hyperref.dtx (which has the same problem as % us) handles it with this amazing macro to replace tokens. I've % tinkered with it a little for texinfo, but it's definitely from there. % % #1 is the tokens to replace. % #2 is the replacement. % #3 is the control sequence with the string. % \def\HyPsdSubst#1#2#3{% \def\HyPsdReplace##1#1##2\END{% ##1% \ifx\\##2\\% \else #2% \HyReturnAfterFi{% \HyPsdReplace##2\END }% \fi }% \xdef#3{\expandafter\HyPsdReplace#3#1\END}% } \long\def\HyReturnAfterFi#1\fi{\fi#1} % #1 is a control sequence in which to do the replacements. \def\backslashparens#1{% \xdef#1{#1}% redefine it as its expansion; the definition is simply % \lastnode when called from \setref -> \pdfmkdest. \HyPsdSubst{(}{\realbackslash(}{#1}% \HyPsdSubst{)}{\realbackslash)}{#1}% } \ifpdf \input pdfcolor \pdfcatalog{/PageMode /UseOutlines}% \def\dopdfimage#1#2#3{% \def\imagewidth{#2}% \def\imageheight{#3}% % without \immediate, pdftex seg faults when the same image is % included twice. (Version 3.14159-pre-1.0-unofficial-20010704.) \ifnum\pdftexversion < 14 \immediate\pdfimage \else \immediate\pdfximage \fi \ifx\empty\imagewidth\else width \imagewidth \fi \ifx\empty\imageheight\else height \imageheight \fi \ifnum\pdftexversion<13 #1.pdf% \else {#1.pdf}% \fi \ifnum\pdftexversion < 14 \else \pdfrefximage \pdflastximage \fi} \def\pdfmkdest#1{{% % We have to set dummies so commands such as @code, and characters % such as \, aren't expanded when present in a section title. \atdummies \activebackslashdouble \def\pdfdestname{#1}% \backslashparens\pdfdestname \pdfdest name{\pdfdestname} xyz% }}% % % used to mark target names; must be expandable. \def\pdfmkpgn#1{#1}% % \let\linkcolor = \Blue % was Cyan, but that seems light? \def\endlink{\Black\pdfendlink} % Adding outlines to PDF; macros for calculating structure of outlines % come from Petr Olsak \def\expnumber#1{\expandafter\ifx\csname#1\endcsname\relax 0% \else \csname#1\endcsname \fi} \def\advancenumber#1{\tempnum=\expnumber{#1}\relax \advance\tempnum by 1 \expandafter\xdef\csname#1\endcsname{\the\tempnum}} % % #1 is the section text, which is what will be displayed in the % outline by the pdf viewer. #2 is the pdf expression for the number % of subentries (or empty, for subsubsections). #3 is the node text, % which might be empty if this toc entry had no corresponding node. % #4 is the page number % \def\dopdfoutline#1#2#3#4{% % Generate a link to the node text if that exists; else, use the % page number. We could generate a destination for the section % text in the case where a section has no node, but it doesn't % seem worth the trouble, since most documents are normally structured. \def\pdfoutlinedest{#3}% \ifx\pdfoutlinedest\empty \def\pdfoutlinedest{#4}% \else % Doubled backslashes in the name. {\activebackslashdouble \xdef\pdfoutlinedest{#3}% \backslashparens\pdfoutlinedest}% \fi % % Also double the backslashes in the display string. {\activebackslashdouble \xdef\pdfoutlinetext{#1}% \backslashparens\pdfoutlinetext}% % \pdfoutline goto name{\pdfmkpgn{\pdfoutlinedest}}#2{\pdfoutlinetext}% } % \def\pdfmakeoutlines{% \begingroup % Thanh's hack / proper braces in bookmarks \edef\mylbrace{\iftrue \string{\else}\fi}\let\{=\mylbrace \edef\myrbrace{\iffalse{\else\string}\fi}\let\}=\myrbrace % % Read toc silently, to get counts of subentries for \pdfoutline. \def\numchapentry##1##2##3##4{% \def\thischapnum{##2}% \def\thissecnum{0}% \def\thissubsecnum{0}% }% \def\numsecentry##1##2##3##4{% \advancenumber{chap\thischapnum}% \def\thissecnum{##2}% \def\thissubsecnum{0}% }% \def\numsubsecentry##1##2##3##4{% \advancenumber{sec\thissecnum}% \def\thissubsecnum{##2}% }% \def\numsubsubsecentry##1##2##3##4{% \advancenumber{subsec\thissubsecnum}% }% \def\thischapnum{0}% \def\thissecnum{0}% \def\thissubsecnum{0}% % % use \def rather than \let here because we redefine \chapentry et % al. a second time, below. \def\appentry{\numchapentry}% \def\appsecentry{\numsecentry}% \def\appsubsecentry{\numsubsecentry}% \def\appsubsubsecentry{\numsubsubsecentry}% \def\unnchapentry{\numchapentry}% \def\unnsecentry{\numsecentry}% \def\unnsubsecentry{\numsubsecentry}% \def\unnsubsubsecentry{\numsubsubsecentry}% \readdatafile{toc}% % % Read toc second time, this time actually producing the outlines. % The `-' means take the \expnumber as the absolute number of % subentries, which we calculated on our first read of the .toc above. % % We use the node names as the destinations. \def\numchapentry##1##2##3##4{% \dopdfoutline{##1}{count-\expnumber{chap##2}}{##3}{##4}}% \def\numsecentry##1##2##3##4{% \dopdfoutline{##1}{count-\expnumber{sec##2}}{##3}{##4}}% \def\numsubsecentry##1##2##3##4{% \dopdfoutline{##1}{count-\expnumber{subsec##2}}{##3}{##4}}% \def\numsubsubsecentry##1##2##3##4{% count is always zero \dopdfoutline{##1}{}{##3}{##4}}% % % PDF outlines are displayed using system fonts, instead of % document fonts. Therefore we cannot use special characters, % since the encoding is unknown. For example, the eogonek from % Latin 2 (0xea) gets translated to a | character. Info from % Staszek Wawrykiewicz, 19 Jan 2004 04:09:24 +0100. % % xx to do this right, we have to translate 8-bit characters to % their "best" equivalent, based on the @documentencoding. Right % now, I guess we'll just let the pdf reader have its way. \indexnofonts \setupdatafile \catcode`\\=\active \otherbackslash \input \jobname.toc \endgroup } % \def\skipspaces#1{\def\PP{#1}\def\D{|}% \ifx\PP\D\let\nextsp\relax \else\let\nextsp\skipspaces \ifx\p\space\else\addtokens{\filename}{\PP}% \advance\filenamelength by 1 \fi \fi \nextsp} \def\getfilename#1{\filenamelength=0\expandafter\skipspaces#1|\relax} \ifnum\pdftexversion < 14 \let \startlink \pdfannotlink \else \let \startlink \pdfstartlink \fi % make a live url in pdf output. \def\pdfurl#1{% \begingroup % it seems we really need yet another set of dummies; have not % tried to figure out what each command should do in the context % of @url. for now, just make @/ a no-op, that's the only one % people have actually reported a problem with. % \normalturnoffactive \def\@{@}% \let\/=\empty \makevalueexpandable \leavevmode\Red \startlink attr{/Border [0 0 0]}% user{/Subtype /Link /A << /S /URI /URI (#1) >>}% \endgroup} \def\pdfgettoks#1.{\setbox\boxA=\hbox{\toksA={#1.}\toksB={}\maketoks}} \def\addtokens#1#2{\edef\addtoks{\noexpand#1={\the#1#2}}\addtoks} \def\adn#1{\addtokens{\toksC}{#1}\global\countA=1\let\next=\maketoks} \def\poptoks#1#2|ENDTOKS|{\let\first=#1\toksD={#1}\toksA={#2}} \def\maketoks{% \expandafter\poptoks\the\toksA|ENDTOKS|\relax \ifx\first0\adn0 \else\ifx\first1\adn1 \else\ifx\first2\adn2 \else\ifx\first3\adn3 \else\ifx\first4\adn4 \else\ifx\first5\adn5 \else\ifx\first6\adn6 \else\ifx\first7\adn7 \else\ifx\first8\adn8 \else\ifx\first9\adn9 \else \ifnum0=\countA\else\makelink\fi \ifx\first.\let\next=\done\else \let\next=\maketoks \addtokens{\toksB}{\the\toksD} \ifx\first,\addtokens{\toksB}{\space}\fi \fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \next} \def\makelink{\addtokens{\toksB}% {\noexpand\pdflink{\the\toksC}}\toksC={}\global\countA=0} \def\pdflink#1{% \startlink attr{/Border [0 0 0]} goto name{\pdfmkpgn{#1}} \linkcolor #1\endlink} \def\done{\edef\st{\global\noexpand\toksA={\the\toksB}}\st} \else \let\pdfmkdest = \gobble \let\pdfurl = \gobble \let\endlink = \relax \let\linkcolor = \relax \let\pdfmakeoutlines = \relax \fi % \ifx\pdfoutput \message{fonts,} % Change the current font style to #1, remembering it in \curfontstyle. % For now, we do not accumulate font styles: @b{@i{foo}} prints foo in % italics, not bold italics. % \def\setfontstyle#1{% \def\curfontstyle{#1}% not as a control sequence, because we are \edef'd. \csname ten#1\endcsname % change the current font } % Select #1 fonts with the current style. % \def\selectfonts#1{\csname #1fonts\endcsname \csname\curfontstyle\endcsname} \def\rm{\fam=0 \setfontstyle{rm}} \def\it{\fam=\itfam \setfontstyle{it}} \def\sl{\fam=\slfam \setfontstyle{sl}} \def\bf{\fam=\bffam \setfontstyle{bf}}\def\bfstylename{bf} \def\tt{\fam=\ttfam \setfontstyle{tt}} % Texinfo sort of supports the sans serif font style, which plain TeX does not. % So we set up a \sf. \newfam\sffam \def\sf{\fam=\sffam \setfontstyle{sf}} \let\li = \sf % Sometimes we call it \li, not \sf. % We don't need math for this font style. \def\ttsl{\setfontstyle{ttsl}} % Default leading. \newdimen\textleading \textleading = 13.2pt % Set the baselineskip to #1, and the lineskip and strut size % correspondingly. There is no deep meaning behind these magic numbers % used as factors; they just match (closely enough) what Knuth defined. % \def\lineskipfactor{.08333} \def\strutheightpercent{.70833} \def\strutdepthpercent {.29167} % \def\setleading#1{% \normalbaselineskip = #1\relax \normallineskip = \lineskipfactor\normalbaselineskip \normalbaselines \setbox\strutbox =\hbox{% \vrule width0pt height\strutheightpercent\baselineskip depth \strutdepthpercent \baselineskip }% } % Set the font macro #1 to the font named #2, adding on the % specified font prefix (normally `cm'). % #3 is the font's design size, #4 is a scale factor \def\setfont#1#2#3#4{\font#1=\fontprefix#2#3 scaled #4} % Use cm as the default font prefix. % To specify the font prefix, you must define \fontprefix % before you read in texinfo.tex. \ifx\fontprefix\undefined \def\fontprefix{cm} \fi % Support font families that don't use the same naming scheme as CM. \def\rmshape{r} \def\rmbshape{bx} %where the normal face is bold \def\bfshape{b} \def\bxshape{bx} \def\ttshape{tt} \def\ttbshape{tt} \def\ttslshape{sltt} \def\itshape{ti} \def\itbshape{bxti} \def\slshape{sl} \def\slbshape{bxsl} \def\sfshape{ss} \def\sfbshape{ss} \def\scshape{csc} \def\scbshape{csc} % Text fonts (11.2pt, magstep1). \def\textnominalsize{11pt} \edef\mainmagstep{\magstephalf} \setfont\textrm\rmshape{10}{\mainmagstep} \setfont\texttt\ttshape{10}{\mainmagstep} \setfont\textbf\bfshape{10}{\mainmagstep} \setfont\textit\itshape{10}{\mainmagstep} \setfont\textsl\slshape{10}{\mainmagstep} \setfont\textsf\sfshape{10}{\mainmagstep} \setfont\textsc\scshape{10}{\mainmagstep} \setfont\textttsl\ttslshape{10}{\mainmagstep} \font\texti=cmmi10 scaled \mainmagstep \font\textsy=cmsy10 scaled \mainmagstep % A few fonts for @defun names and args. \setfont\defbf\bfshape{10}{\magstep1} \setfont\deftt\ttshape{10}{\magstep1} \setfont\defttsl\ttslshape{10}{\magstep1} \def\df{\let\tentt=\deftt \let\tenbf = \defbf \let\tenttsl=\defttsl \bf} % Fonts for indices, footnotes, small examples (9pt). \def\smallnominalsize{9pt} \setfont\smallrm\rmshape{9}{1000} \setfont\smalltt\ttshape{9}{1000} \setfont\smallbf\bfshape{10}{900} \setfont\smallit\itshape{9}{1000} \setfont\smallsl\slshape{9}{1000} \setfont\smallsf\sfshape{9}{1000} \setfont\smallsc\scshape{10}{900} \setfont\smallttsl\ttslshape{10}{900} \font\smalli=cmmi9 \font\smallsy=cmsy9 % Fonts for small examples (8pt). \def\smallernominalsize{8pt} \setfont\smallerrm\rmshape{8}{1000} \setfont\smallertt\ttshape{8}{1000} \setfont\smallerbf\bfshape{10}{800} \setfont\smallerit\itshape{8}{1000} \setfont\smallersl\slshape{8}{1000} \setfont\smallersf\sfshape{8}{1000} \setfont\smallersc\scshape{10}{800} \setfont\smallerttsl\ttslshape{10}{800} \font\smalleri=cmmi8 \font\smallersy=cmsy8 % Fonts for title page (20.4pt): \def\titlenominalsize{20pt} \setfont\titlerm\rmbshape{12}{\magstep3} \setfont\titleit\itbshape{10}{\magstep4} \setfont\titlesl\slbshape{10}{\magstep4} \setfont\titlett\ttbshape{12}{\magstep3} \setfont\titlettsl\ttslshape{10}{\magstep4} \setfont\titlesf\sfbshape{17}{\magstep1} \let\titlebf=\titlerm \setfont\titlesc\scbshape{10}{\magstep4} \font\titlei=cmmi12 scaled \magstep3 \font\titlesy=cmsy10 scaled \magstep4 \def\authorrm{\secrm} \def\authortt{\sectt} % Chapter (and unnumbered) fonts (17.28pt). \def\chapnominalsize{17pt} \setfont\chaprm\rmbshape{12}{\magstep2} \setfont\chapit\itbshape{10}{\magstep3} \setfont\chapsl\slbshape{10}{\magstep3} \setfont\chaptt\ttbshape{12}{\magstep2} \setfont\chapttsl\ttslshape{10}{\magstep3} \setfont\chapsf\sfbshape{17}{1000} \let\chapbf=\chaprm \setfont\chapsc\scbshape{10}{\magstep3} \font\chapi=cmmi12 scaled \magstep2 \font\chapsy=cmsy10 scaled \magstep3 % Section fonts (14.4pt). \def\secnominalsize{14pt} \setfont\secrm\rmbshape{12}{\magstep1} \setfont\secit\itbshape{10}{\magstep2} \setfont\secsl\slbshape{10}{\magstep2} \setfont\sectt\ttbshape{12}{\magstep1} \setfont\secttsl\ttslshape{10}{\magstep2} \setfont\secsf\sfbshape{12}{\magstep1} \let\secbf\secrm \setfont\secsc\scbshape{10}{\magstep2} \font\seci=cmmi12 scaled \magstep1 \font\secsy=cmsy10 scaled \magstep2 % Subsection fonts (13.15pt). \def\ssecnominalsize{13pt} \setfont\ssecrm\rmbshape{12}{\magstephalf} \setfont\ssecit\itbshape{10}{1315} \setfont\ssecsl\slbshape{10}{1315} \setfont\ssectt\ttbshape{12}{\magstephalf} \setfont\ssecttsl\ttslshape{10}{1315} \setfont\ssecsf\sfbshape{12}{\magstephalf} \let\ssecbf\ssecrm \setfont\ssecsc\scbshape{10}{1315} \font\sseci=cmmi12 scaled \magstephalf \font\ssecsy=cmsy10 scaled 1315 % Reduced fonts for @acro in text (10pt). \def\reducednominalsize{10pt} \setfont\reducedrm\rmshape{10}{1000} \setfont\reducedtt\ttshape{10}{1000} \setfont\reducedbf\bfshape{10}{1000} \setfont\reducedit\itshape{10}{1000} \setfont\reducedsl\slshape{10}{1000} \setfont\reducedsf\sfshape{10}{1000} \setfont\reducedsc\scshape{10}{1000} \setfont\reducedttsl\ttslshape{10}{1000} \font\reducedi=cmmi10 \font\reducedsy=cmsy10 % In order for the font changes to affect most math symbols and letters, % we have to define the \textfont of the standard families. Since % texinfo doesn't allow for producing subscripts and superscripts except % in the main text, we don't bother to reset \scriptfont and % \scriptscriptfont (which would also require loading a lot more fonts). % \def\resetmathfonts{% \textfont0=\tenrm \textfont1=\teni \textfont2=\tensy \textfont\itfam=\tenit \textfont\slfam=\tensl \textfont\bffam=\tenbf \textfont\ttfam=\tentt \textfont\sffam=\tensf } % The font-changing commands redefine the meanings of \tenSTYLE, instead % of just \STYLE. We do this because \STYLE needs to also set the % current \fam for math mode. Our \STYLE (e.g., \rm) commands hardwire % \tenSTYLE to set the current font. % % Each font-changing command also sets the names \lsize (one size lower) % and \lllsize (three sizes lower). These relative commands are used in % the LaTeX logo and acronyms. % % This all needs generalizing, badly. % \def\textfonts{% \let\tenrm=\textrm \let\tenit=\textit \let\tensl=\textsl \let\tenbf=\textbf \let\tentt=\texttt \let\smallcaps=\textsc \let\tensf=\textsf \let\teni=\texti \let\tensy=\textsy \let\tenttsl=\textttsl \def\curfontsize{text}% \def\lsize{reduced}\def\lllsize{smaller}% \resetmathfonts \setleading{\textleading}} \def\titlefonts{% \let\tenrm=\titlerm \let\tenit=\titleit \let\tensl=\titlesl \let\tenbf=\titlebf \let\tentt=\titlett \let\smallcaps=\titlesc \let\tensf=\titlesf \let\teni=\titlei \let\tensy=\titlesy \let\tenttsl=\titlettsl \def\curfontsize{title}% \def\lsize{chap}\def\lllsize{subsec}% \resetmathfonts \setleading{25pt}} \def\titlefont#1{{\titlefonts\rm #1}} \def\chapfonts{% \let\tenrm=\chaprm \let\tenit=\chapit \let\tensl=\chapsl \let\tenbf=\chapbf \let\tentt=\chaptt \let\smallcaps=\chapsc \let\tensf=\chapsf \let\teni=\chapi \let\tensy=\chapsy \let\tenttsl=\chapttsl \def\curfontsize{chap}% \def\lsize{sec}\def\lllsize{text}% \resetmathfonts \setleading{19pt}} \def\secfonts{% \let\tenrm=\secrm \let\tenit=\secit \let\tensl=\secsl \let\tenbf=\secbf \let\tentt=\sectt \let\smallcaps=\secsc \let\tensf=\secsf \let\teni=\seci \let\tensy=\secsy \let\tenttsl=\secttsl \def\curfontsize{sec}% \def\lsize{subsec}\def\lllsize{reduced}% \resetmathfonts \setleading{16pt}} \def\subsecfonts{% \let\tenrm=\ssecrm \let\tenit=\ssecit \let\tensl=\ssecsl \let\tenbf=\ssecbf \let\tentt=\ssectt \let\smallcaps=\ssecsc \let\tensf=\ssecsf \let\teni=\sseci \let\tensy=\ssecsy \let\tenttsl=\ssecttsl \def\curfontsize{ssec}% \def\lsize{text}\def\lllsize{small}% \resetmathfonts \setleading{15pt}} \let\subsubsecfonts = \subsecfonts \def\reducedfonts{% \let\tenrm=\reducedrm \let\tenit=\reducedit \let\tensl=\reducedsl \let\tenbf=\reducedbf \let\tentt=\reducedtt \let\reducedcaps=\reducedsc \let\tensf=\reducedsf \let\teni=\reducedi \let\tensy=\reducedsy \let\tenttsl=\reducedttsl \def\curfontsize{reduced}% \def\lsize{small}\def\lllsize{smaller}% \resetmathfonts \setleading{10.5pt}} \def\smallfonts{% \let\tenrm=\smallrm \let\tenit=\smallit \let\tensl=\smallsl \let\tenbf=\smallbf \let\tentt=\smalltt \let\smallcaps=\smallsc \let\tensf=\smallsf \let\teni=\smalli \let\tensy=\smallsy \let\tenttsl=\smallttsl \def\curfontsize{small}% \def\lsize{smaller}\def\lllsize{smaller}% \resetmathfonts \setleading{10.5pt}} \def\smallerfonts{% \let\tenrm=\smallerrm \let\tenit=\smallerit \let\tensl=\smallersl \let\tenbf=\smallerbf \let\tentt=\smallertt \let\smallcaps=\smallersc \let\tensf=\smallersf \let\teni=\smalleri \let\tensy=\smallersy \let\tenttsl=\smallerttsl \def\curfontsize{smaller}% \def\lsize{smaller}\def\lllsize{smaller}% \resetmathfonts \setleading{9.5pt}} % Set the fonts to use with the @small... environments. \let\smallexamplefonts = \smallfonts % About \smallexamplefonts. If we use \smallfonts (9pt), @smallexample % can fit this many characters: % 8.5x11=86 smallbook=72 a4=90 a5=69 % If we use \scriptfonts (8pt), then we can fit this many characters: % 8.5x11=90+ smallbook=80 a4=90+ a5=77 % For me, subjectively, the few extra characters that fit aren't worth % the additional smallness of 8pt. So I'm making the default 9pt. % % By the way, for comparison, here's what fits with @example (10pt): % 8.5x11=71 smallbook=60 a4=75 a5=58 % % I wish the USA used A4 paper. % --karl, 24jan03. % Set up the default fonts, so we can use them for creating boxes. % \textfonts \rm % Define these so they can be easily changed for other fonts. \def\angleleft{$\langle$} \def\angleright{$\rangle$} % Count depth in font-changes, for error checks \newcount\fontdepth \fontdepth=0 % Fonts for short table of contents. \setfont\shortcontrm\rmshape{12}{1000} \setfont\shortcontbf\bfshape{10}{\magstep1} % no cmb12 \setfont\shortcontsl\slshape{12}{1000} \setfont\shortconttt\ttshape{12}{1000} %% Add scribe-like font environments, plus @l for inline lisp (usually sans %% serif) and @ii for TeX italic % \smartitalic{ARG} outputs arg in italics, followed by an italic correction % unless the following character is such as not to need one. \def\smartitalicx{\ifx\next,\else\ifx\next-\else\ifx\next.\else \ptexslash\fi\fi\fi} \def\smartslanted#1{{\ifusingtt\ttsl\sl #1}\futurelet\next\smartitalicx} \def\smartitalic#1{{\ifusingtt\ttsl\it #1}\futurelet\next\smartitalicx} % like \smartslanted except unconditionally uses \ttsl. % @var is set to this for defun arguments. \def\ttslanted#1{{\ttsl #1}\futurelet\next\smartitalicx} % like \smartslanted except unconditionally use \sl. We never want % ttsl for book titles, do we? \def\cite#1{{\sl #1}\futurelet\next\smartitalicx} \let\i=\smartitalic \let\slanted=\smartslanted \let\var=\smartslanted \let\dfn=\smartslanted \let\emph=\smartitalic % @b, explicit bold. \def\b#1{{\bf #1}} \let\strong=\b % @sansserif, explicit sans. \def\sansserif#1{{\sf #1}} % We can't just use \exhyphenpenalty, because that only has effect at % the end of a paragraph. Restore normal hyphenation at the end of the % group within which \nohyphenation is presumably called. % \def\nohyphenation{\hyphenchar\font = -1 \aftergroup\restorehyphenation} \def\restorehyphenation{\hyphenchar\font = `- } % Set sfcode to normal for the chars that usually have another value. % Can't use plain's \frenchspacing because it uses the `\x notation, and % sometimes \x has an active definition that messes things up. % \chardef\colonChar = `\: \chardef\commaChar = `\, \chardef\dotChar = `\. \chardef\exclamChar= `\! \chardef\questChar = `\? \chardef\semiChar = `\; % \catcode`@=11 \def\plainfrenchspacing{% \sfcode\dotChar =\@m \sfcode\questChar=\@m \sfcode\exclamChar=\@m \sfcode\colonChar=\@m \sfcode\semiChar =\@m \sfcode\commaChar =\@m \def\endofsentencespacefactor{1000}% for @. and friends } \def\plainnonfrenchspacing{% \sfcode`\.3000\sfcode`\?3000\sfcode`\!3000 \sfcode`\:2000\sfcode`\;1500\sfcode`\,1250 \def\endofsentencespacefactor{3000}% for @. and friends } \catcode`@=\other \def\endofsentencespacefactor{3000}% default \def\t#1{% {\tt \rawbackslash \plainfrenchspacing #1}% \null } \def\samp#1{`\tclose{#1}'\null} \setfont\keyrm\rmshape{8}{1000} \font\keysy=cmsy9 \def\key#1{{\keyrm\textfont2=\keysy \leavevmode\hbox{% \raise0.4pt\hbox{\angleleft}\kern-.08em\vtop{% \vbox{\hrule\kern-0.4pt \hbox{\raise0.4pt\hbox{\vphantom{\angleleft}}#1}}% \kern-0.4pt\hrule}% \kern-.06em\raise0.4pt\hbox{\angleright}}}} % The old definition, with no lozenge: %\def\key #1{{\ttsl \nohyphenation \uppercase{#1}}\null} \def\ctrl #1{{\tt \rawbackslash \hat}#1} % @file, @option are the same as @samp. \let\file=\samp \let\option=\samp % @code is a modification of @t, % which makes spaces the same size as normal in the surrounding text. \def\tclose#1{% {% % Change normal interword space to be same as for the current font. \spaceskip = \fontdimen2\font % % Switch to typewriter. \tt % % But `\ ' produces the large typewriter interword space. \def\ {{\spaceskip = 0pt{} }}% % % Turn off hyphenation. \nohyphenation % \rawbackslash \plainfrenchspacing #1% }% \null } % We *must* turn on hyphenation at `-' and `_' in @code. % Otherwise, it is too hard to avoid overfull hboxes % in the Emacs manual, the Library manual, etc. % Unfortunately, TeX uses one parameter (\hyphenchar) to control % both hyphenation at - and hyphenation within words. % We must therefore turn them both off (\tclose does that) % and arrange explicitly to hyphenate at a dash. % -- rms. { \catcode`\-=\active \catcode`\_=\active % \global\def\code{\begingroup \catcode`\-=\active \catcode`\_=\active \ifallowcodebreaks \let-\codedash \let_\codeunder \else \let-\realdash \let_\realunder \fi \codex } } \def\realdash{-} \def\codedash{-\discretionary{}{}{}} \def\codeunder{% % this is all so @math{@code{var_name}+1} can work. In math mode, _ % is "active" (mathcode"8000) and \normalunderscore (or \char95, etc.) % will therefore expand the active definition of _, which is us % (inside @code that is), therefore an endless loop. \ifusingtt{\ifmmode \mathchar"075F % class 0=ordinary, family 7=ttfam, pos 0x5F=_. \else\normalunderscore \fi \discretionary{}{}{}}% {\_}% } \def\codex #1{\tclose{#1}\endgroup} % An additional complication: the above will allow breaks after, e.g., % each of the four underscores in __typeof__. This is undesirable in % some manuals, especially if they don't have long identifiers in % general. @allowcodebreaks provides a way to control this. % \newif\ifallowcodebreaks \allowcodebreakstrue \def\keywordtrue{true} \def\keywordfalse{false} \parseargdef\allowcodebreaks{% \def\txiarg{#1}% \ifx\txiarg\keywordtrue \allowcodebreakstrue \else\ifx\txiarg\keywordfalse \allowcodebreaksfalse \else \errhelp = \EMsimple \errmessage{Unknown @allowcodebreaks option `\txiarg'}% \fi\fi } % @kbd is like @code, except that if the argument is just one @key command, % then @kbd has no effect. % @kbdinputstyle -- arg is `distinct' (@kbd uses slanted tty font always), % `example' (@kbd uses ttsl only inside of @example and friends), % or `code' (@kbd uses normal tty font always). \parseargdef\kbdinputstyle{% \def\txiarg{#1}% \ifx\txiarg\worddistinct \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\ttsl}% \else\ifx\txiarg\wordexample \gdef\kbdexamplefont{\ttsl}\gdef\kbdfont{\tt}% \else\ifx\txiarg\wordcode \gdef\kbdexamplefont{\tt}\gdef\kbdfont{\tt}% \else \errhelp = \EMsimple \errmessage{Unknown @kbdinputstyle option `\txiarg'}% \fi\fi\fi } \def\worddistinct{distinct} \def\wordexample{example} \def\wordcode{code} % Default is `distinct.' \kbdinputstyle distinct \def\xkey{\key} \def\kbdfoo#1#2#3\par{\def\one{#1}\def\three{#3}\def\threex{??}% \ifx\one\xkey\ifx\threex\three \key{#2}% \else{\tclose{\kbdfont\look}}\fi \else{\tclose{\kbdfont\look}}\fi} % For @indicateurl, @env, @command quotes seem unnecessary, so use \code. \let\indicateurl=\code \let\env=\code \let\command=\code % @uref (abbreviation for `urlref') takes an optional (comma-separated) % second argument specifying the text to display and an optional third % arg as text to display instead of (rather than in addition to) the url % itself. First (mandatory) arg is the url. Perhaps eventually put in % a hypertex \special here. % \def\uref#1{\douref #1,,,\finish} \def\douref#1,#2,#3,#4\finish{\begingroup \unsepspaces \pdfurl{#1}% \setbox0 = \hbox{\ignorespaces #3}% \ifdim\wd0 > 0pt \unhbox0 % third arg given, show only that \else \setbox0 = \hbox{\ignorespaces #2}% \ifdim\wd0 > 0pt \ifpdf \unhbox0 % PDF: 2nd arg given, show only it \else \unhbox0\ (\code{#1})% DVI: 2nd arg given, show both it and url \fi \else \code{#1}% only url given, so show it \fi \fi \endlink \endgroup} % @url synonym for @uref, since that's how everyone uses it. % \let\url=\uref % rms does not like angle brackets --karl, 17may97. % So now @email is just like @uref, unless we are pdf. % %\def\email#1{\angleleft{\tt #1}\angleright} \ifpdf \def\email#1{\doemail#1,,\finish} \def\doemail#1,#2,#3\finish{\begingroup \unsepspaces \pdfurl{mailto:#1}% \setbox0 = \hbox{\ignorespaces #2}% \ifdim\wd0>0pt\unhbox0\else\code{#1}\fi \endlink \endgroup} \else \let\email=\uref \fi % Check if we are currently using a typewriter font. Since all the % Computer Modern typewriter fonts have zero interword stretch (and % shrink), and it is reasonable to expect all typewriter fonts to have % this property, we can check that font parameter. % \def\ifmonospace{\ifdim\fontdimen3\font=0pt } % Typeset a dimension, e.g., `in' or `pt'. The only reason for the % argument is to make the input look right: @dmn{pt} instead of @dmn{}pt. % \def\dmn#1{\thinspace #1} \def\kbd#1{\def\look{#1}\expandafter\kbdfoo\look??\par} % @l was never documented to mean ``switch to the Lisp font'', % and it is not used as such in any manual I can find. We need it for % Polish suppressed-l. --karl, 22sep96. %\def\l#1{{\li #1}\null} % Explicit font changes: @r, @sc, undocumented @ii. \def\r#1{{\rm #1}} % roman font \def\sc#1{{\smallcaps#1}} % smallcaps font \def\ii#1{{\it #1}} % italic font % @acronym for "FBI", "NATO", and the like. % We print this one point size smaller, since it's intended for % all-uppercase. % \def\acronym#1{\doacronym #1,,\finish} \def\doacronym#1,#2,#3\finish{% {\selectfonts\lsize #1}% \def\temp{#2}% \ifx\temp\empty \else \space ({\unsepspaces \ignorespaces \temp \unskip})% \fi } % @abbr for "Comput. J." and the like. % No font change, but don't do end-of-sentence spacing. % \def\abbr#1{\doabbr #1,,\finish} \def\doabbr#1,#2,#3\finish{% {\plainfrenchspacing #1}% \def\temp{#2}% \ifx\temp\empty \else \space ({\unsepspaces \ignorespaces \temp \unskip})% \fi } % @pounds{} is a sterling sign, which Knuth put in the CM italic font. % \def\pounds{{\it\$}} % @euro{} comes from a separate font, depending on the current style. % We use the free feym* fonts from the eurosym package by Henrik % Theiling, which support regular, slanted, bold and bold slanted (and % "outlined" (blackboard board, sort of) versions, which we don't need). % It is available from http://www.ctan.org/tex-archive/fonts/eurosym. % % Although only regular is the truly official Euro symbol, we ignore % that. The Euro is designed to be slightly taller than the regular % font height. % % feymr - regular % feymo - slanted % feybr - bold % feybo - bold slanted % % There is no good (free) typewriter version, to my knowledge. % A feymr10 euro is ~7.3pt wide, while a normal cmtt10 char is ~5.25pt wide. % Hmm. % % Also doesn't work in math. Do we need to do math with euro symbols? % Hope not. % % \def\euro{{\eurofont e}} \def\eurofont{% % We set the font at each command, rather than predefining it in % \textfonts and the other font-switching commands, so that % installations which never need the symbol don't have to have the % font installed. % % There is only one designed size (nominal 10pt), so we always scale % that to the current nominal size. % % By the way, simply using "at 1em" works for cmr10 and the like, but % does not work for cmbx10 and other extended/shrunken fonts. % \def\eurosize{\csname\curfontsize nominalsize\endcsname}% % \ifx\curfontstyle\bfstylename % bold: \font\thiseurofont = \ifusingit{feybo10}{feybr10} at \eurosize \else % regular: \font\thiseurofont = \ifusingit{feymo10}{feymr10} at \eurosize \fi \thiseurofont } % @registeredsymbol - R in a circle. The font for the R should really % be smaller yet, but lllsize is the best we can do for now. % Adapted from the plain.tex definition of \copyright. % \def\registeredsymbol{% $^{{\ooalign{\hfil\raise.07ex\hbox{\selectfonts\lllsize R}% \hfil\crcr\Orb}}% }$% } % Laurent Siebenmann reports \Orb undefined with: % Textures 1.7.7 (preloaded format=plain 93.10.14) (68K) 16 APR 2004 02:38 % so we'll define it if necessary. % \ifx\Orb\undefined \def\Orb{\mathhexbox20D} \fi \message{page headings,} \newskip\titlepagetopglue \titlepagetopglue = 1.5in \newskip\titlepagebottomglue \titlepagebottomglue = 2pc % First the title page. Must do @settitle before @titlepage. \newif\ifseenauthor \newif\iffinishedtitlepage % Do an implicit @contents or @shortcontents after @end titlepage if the % user says @setcontentsaftertitlepage or @setshortcontentsaftertitlepage. % \newif\ifsetcontentsaftertitlepage \let\setcontentsaftertitlepage = \setcontentsaftertitlepagetrue \newif\ifsetshortcontentsaftertitlepage \let\setshortcontentsaftertitlepage = \setshortcontentsaftertitlepagetrue \parseargdef\shorttitlepage{\begingroup\hbox{}\vskip 1.5in \chaprm \centerline{#1}% \endgroup\page\hbox{}\page} \envdef\titlepage{% % Open one extra group, as we want to close it in the middle of \Etitlepage. \begingroup \parindent=0pt \textfonts % Leave some space at the very top of the page. \vglue\titlepagetopglue % No rule at page bottom unless we print one at the top with @title. \finishedtitlepagetrue % % Most title ``pages'' are actually two pages long, with space % at the top of the second. We don't want the ragged left on the second. \let\oldpage = \page \def\page{% \iffinishedtitlepage\else \finishtitlepage \fi \let\page = \oldpage \page \null }% } \def\Etitlepage{% \iffinishedtitlepage\else \finishtitlepage \fi % It is important to do the page break before ending the group, % because the headline and footline are only empty inside the group. % If we use the new definition of \page, we always get a blank page % after the title page, which we certainly don't want. \oldpage \endgroup % % Need this before the \...aftertitlepage checks so that if they are % in effect the toc pages will come out with page numbers. \HEADINGSon % % If they want short, they certainly want long too. \ifsetshortcontentsaftertitlepage \shortcontents \contents \global\let\shortcontents = \relax \global\let\contents = \relax \fi % \ifsetcontentsaftertitlepage \contents \global\let\contents = \relax \global\let\shortcontents = \relax \fi } \def\finishtitlepage{% \vskip4pt \hrule height 2pt width \hsize \vskip\titlepagebottomglue \finishedtitlepagetrue } %%% Macros to be used within @titlepage: \let\subtitlerm=\tenrm \def\subtitlefont{\subtitlerm \normalbaselineskip = 13pt \normalbaselines} \def\authorfont{\authorrm \normalbaselineskip = 16pt \normalbaselines \let\tt=\authortt} \parseargdef\title{% \checkenv\titlepage \leftline{\titlefonts\rm #1} % print a rule at the page bottom also. \finishedtitlepagefalse \vskip4pt \hrule height 4pt width \hsize \vskip4pt } \parseargdef\subtitle{% \checkenv\titlepage {\subtitlefont \rightline{#1}}% } % @author should come last, but may come many times. % It can also be used inside @quotation. % \parseargdef\author{% \def\temp{\quotation}% \ifx\thisenv\temp \def\quotationauthor{#1}% printed in \Equotation. \else \checkenv\titlepage \ifseenauthor\else \vskip 0pt plus 1filll \seenauthortrue \fi {\authorfont \leftline{#1}}% \fi } %%% Set up page headings and footings. \let\thispage=\folio \newtoks\evenheadline % headline on even pages \newtoks\oddheadline % headline on odd pages \newtoks\evenfootline % footline on even pages \newtoks\oddfootline % footline on odd pages % Now make TeX use those variables \headline={{\textfonts\rm \ifodd\pageno \the\oddheadline \else \the\evenheadline \fi}} \footline={{\textfonts\rm \ifodd\pageno \the\oddfootline \else \the\evenfootline \fi}\HEADINGShook} \let\HEADINGShook=\relax % Commands to set those variables. % For example, this is what @headings on does % @evenheading @thistitle|@thispage|@thischapter % @oddheading @thischapter|@thispage|@thistitle % @evenfooting @thisfile|| % @oddfooting ||@thisfile \def\evenheading{\parsearg\evenheadingxxx} \def\evenheadingxxx #1{\evenheadingyyy #1\|\|\|\|\finish} \def\evenheadingyyy #1\|#2\|#3\|#4\finish{% \global\evenheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} \def\oddheading{\parsearg\oddheadingxxx} \def\oddheadingxxx #1{\oddheadingyyy #1\|\|\|\|\finish} \def\oddheadingyyy #1\|#2\|#3\|#4\finish{% \global\oddheadline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} \parseargdef\everyheading{\oddheadingxxx{#1}\evenheadingxxx{#1}}% \def\evenfooting{\parsearg\evenfootingxxx} \def\evenfootingxxx #1{\evenfootingyyy #1\|\|\|\|\finish} \def\evenfootingyyy #1\|#2\|#3\|#4\finish{% \global\evenfootline={\rlap{\centerline{#2}}\line{#1\hfil#3}}} \def\oddfooting{\parsearg\oddfootingxxx} \def\oddfootingxxx #1{\oddfootingyyy #1\|\|\|\|\finish} \def\oddfootingyyy #1\|#2\|#3\|#4\finish{% \global\oddfootline = {\rlap{\centerline{#2}}\line{#1\hfil#3}}% % % Leave some space for the footline. Hopefully ok to assume % @evenfooting will not be used by itself. \global\advance\pageheight by -\baselineskip \global\advance\vsize by -\baselineskip } \parseargdef\everyfooting{\oddfootingxxx{#1}\evenfootingxxx{#1}} % @headings double turns headings on for double-sided printing. % @headings single turns headings on for single-sided printing. % @headings off turns them off. % @headings on same as @headings double, retained for compatibility. % @headings after turns on double-sided headings after this page. % @headings doubleafter turns on double-sided headings after this page. % @headings singleafter turns on single-sided headings after this page. % By default, they are off at the start of a document, % and turned `on' after @end titlepage. \def\headings #1 {\csname HEADINGS#1\endcsname} \def\HEADINGSoff{% \global\evenheadline={\hfil} \global\evenfootline={\hfil} \global\oddheadline={\hfil} \global\oddfootline={\hfil}} \HEADINGSoff % When we turn headings on, set the page number to 1. % For double-sided printing, put current file name in lower left corner, % chapter name on inside top of right hand pages, document % title on inside top of left hand pages, and page numbers on outside top % edge of all pages. \def\HEADINGSdouble{% \global\pageno=1 \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\folio\hfil\thistitle}} \global\oddheadline={\line{\thischapter\hfil\folio}} \global\let\contentsalignmacro = \chapoddpage } \let\contentsalignmacro = \chappager % For single-sided printing, chapter title goes across top left of page, % page number on top right. \def\HEADINGSsingle{% \global\pageno=1 \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\thischapter\hfil\folio}} \global\oddheadline={\line{\thischapter\hfil\folio}} \global\let\contentsalignmacro = \chappager } \def\HEADINGSon{\HEADINGSdouble} \def\HEADINGSafter{\let\HEADINGShook=\HEADINGSdoublex} \let\HEADINGSdoubleafter=\HEADINGSafter \def\HEADINGSdoublex{% \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\folio\hfil\thistitle}} \global\oddheadline={\line{\thischapter\hfil\folio}} \global\let\contentsalignmacro = \chapoddpage } \def\HEADINGSsingleafter{\let\HEADINGShook=\HEADINGSsinglex} \def\HEADINGSsinglex{% \global\evenfootline={\hfil} \global\oddfootline={\hfil} \global\evenheadline={\line{\thischapter\hfil\folio}} \global\oddheadline={\line{\thischapter\hfil\folio}} \global\let\contentsalignmacro = \chappager } % Subroutines used in generating headings % This produces Day Month Year style of output. % Only define if not already defined, in case a txi-??.tex file has set % up a different format (e.g., txi-cs.tex does this). \ifx\today\undefined \def\today{% \number\day\space \ifcase\month \or\putwordMJan\or\putwordMFeb\or\putwordMMar\or\putwordMApr \or\putwordMMay\or\putwordMJun\or\putwordMJul\or\putwordMAug \or\putwordMSep\or\putwordMOct\or\putwordMNov\or\putwordMDec \fi \space\number\year} \fi % @settitle line... specifies the title of the document, for headings. % It generates no output of its own. \def\thistitle{\putwordNoTitle} \def\settitle{\parsearg{\gdef\thistitle}} \message{tables,} % Tables -- @table, @ftable, @vtable, @item(x). % default indentation of table text \newdimen\tableindent \tableindent=.8in % default indentation of @itemize and @enumerate text \newdimen\itemindent \itemindent=.3in % margin between end of table item and start of table text. \newdimen\itemmargin \itemmargin=.1in % used internally for \itemindent minus \itemmargin \newdimen\itemmax % Note @table, @ftable, and @vtable define @item, @itemx, etc., with % these defs. % They also define \itemindex % to index the item name in whatever manner is desired (perhaps none). \newif\ifitemxneedsnegativevskip \def\itemxpar{\par\ifitemxneedsnegativevskip\nobreak\vskip-\parskip\nobreak\fi} \def\internalBitem{\smallbreak \parsearg\itemzzz} \def\internalBitemx{\itemxpar \parsearg\itemzzz} \def\itemzzz #1{\begingroup % \advance\hsize by -\rightskip \advance\hsize by -\tableindent \setbox0=\hbox{\itemindicate{#1}}% \itemindex{#1}% \nobreak % This prevents a break before @itemx. % % If the item text does not fit in the space we have, put it on a line % by itself, and do not allow a page break either before or after that % line. We do not start a paragraph here because then if the next % command is, e.g., @kindex, the whatsit would get put into the % horizontal list on a line by itself, resulting in extra blank space. \ifdim \wd0>\itemmax % % Make this a paragraph so we get the \parskip glue and wrapping, % but leave it ragged-right. \begingroup \advance\leftskip by-\tableindent \advance\hsize by\tableindent \advance\rightskip by0pt plus1fil \leavevmode\unhbox0\par \endgroup % % We're going to be starting a paragraph, but we don't want the % \parskip glue -- logically it's part of the @item we just started. \nobreak \vskip-\parskip % % Stop a page break at the \parskip glue coming up. However, if % what follows is an environment such as @example, there will be no % \parskip glue; then the negative vskip we just inserted would % cause the example and the item to crash together. So we use this % bizarre value of 10001 as a signal to \aboveenvbreak to insert % \parskip glue after all. Section titles are handled this way also. % \penalty 10001 \endgroup \itemxneedsnegativevskipfalse \else % The item text fits into the space. Start a paragraph, so that the % following text (if any) will end up on the same line. \noindent % Do this with kerns and \unhbox so that if there is a footnote in % the item text, it can migrate to the main vertical list and % eventually be printed. \nobreak\kern-\tableindent \dimen0 = \itemmax \advance\dimen0 by \itemmargin \advance\dimen0 by -\wd0 \unhbox0 \nobreak\kern\dimen0 \endgroup \itemxneedsnegativevskiptrue \fi } \def\item{\errmessage{@item while not in a list environment}} \def\itemx{\errmessage{@itemx while not in a list environment}} % @table, @ftable, @vtable. \envdef\table{% \let\itemindex\gobble \tablecheck{table}% } \envdef\ftable{% \def\itemindex ##1{\doind {fn}{\code{##1}}}% \tablecheck{ftable}% } \envdef\vtable{% \def\itemindex ##1{\doind {vr}{\code{##1}}}% \tablecheck{vtable}% } \def\tablecheck#1{% \ifnum \the\catcode`\^^M=\active \endgroup \errmessage{This command won't work in this context; perhaps the problem is that we are \inenvironment\thisenv}% \def\next{\doignore{#1}}% \else \let\next\tablex \fi \next } \def\tablex#1{% \def\itemindicate{#1}% \parsearg\tabley } \def\tabley#1{% {% \makevalueexpandable \edef\temp{\noexpand\tablez #1\space\space\space}% \expandafter }\temp \endtablez } \def\tablez #1 #2 #3 #4\endtablez{% \aboveenvbreak \ifnum 0#1>0 \advance \leftskip by #1\mil \fi \ifnum 0#2>0 \tableindent=#2\mil \fi \ifnum 0#3>0 \advance \rightskip by #3\mil \fi \itemmax=\tableindent \advance \itemmax by -\itemmargin \advance \leftskip by \tableindent \exdentamount=\tableindent \parindent = 0pt \parskip = \smallskipamount \ifdim \parskip=0pt \parskip=2pt \fi \let\item = \internalBitem \let\itemx = \internalBitemx } \def\Etable{\endgraf\afterenvbreak} \let\Eftable\Etable \let\Evtable\Etable \let\Eitemize\Etable \let\Eenumerate\Etable % This is the counter used by @enumerate, which is really @itemize \newcount \itemno \envdef\itemize{\parsearg\doitemize} \def\doitemize#1{% \aboveenvbreak \itemmax=\itemindent \advance\itemmax by -\itemmargin \advance\leftskip by \itemindent \exdentamount=\itemindent \parindent=0pt \parskip=\smallskipamount \ifdim\parskip=0pt \parskip=2pt \fi \def\itemcontents{#1}% % @itemize with no arg is equivalent to @itemize @bullet. \ifx\itemcontents\empty\def\itemcontents{\bullet}\fi \let\item=\itemizeitem } % Definition of @item while inside @itemize and @enumerate. % \def\itemizeitem{% \advance\itemno by 1 % for enumerations {\let\par=\endgraf \smallbreak}% reasonable place to break {% % If the document has an @itemize directly after a section title, a % \nobreak will be last on the list, and \sectionheading will have % done a \vskip-\parskip. In that case, we don't want to zero % parskip, or the item text will crash with the heading. On the % other hand, when there is normal text preceding the item (as there % usually is), we do want to zero parskip, or there would be too much % space. In that case, we won't have a \nobreak before. At least % that's the theory. \ifnum\lastpenalty<10000 \parskip=0in \fi \noindent \hbox to 0pt{\hss \itemcontents \kern\itemmargin}% \vadjust{\penalty 1200}}% not good to break after first line of item. \flushcr } % \splitoff TOKENS\endmark defines \first to be the first token in % TOKENS, and \rest to be the remainder. % \def\splitoff#1#2\endmark{\def\first{#1}\def\rest{#2}}% % Allow an optional argument of an uppercase letter, lowercase letter, % or number, to specify the first label in the enumerated list. No % argument is the same as `1'. % \envparseargdef\enumerate{\enumeratey #1 \endenumeratey} \def\enumeratey #1 #2\endenumeratey{% % If we were given no argument, pretend we were given `1'. \def\thearg{#1}% \ifx\thearg\empty \def\thearg{1}\fi % % Detect if the argument is a single token. If so, it might be a % letter. Otherwise, the only valid thing it can be is a number. % (We will always have one token, because of the test we just made. % This is a good thing, since \splitoff doesn't work given nothing at % all -- the first parameter is undelimited.) \expandafter\splitoff\thearg\endmark \ifx\rest\empty % Only one token in the argument. It could still be anything. % A ``lowercase letter'' is one whose \lccode is nonzero. % An ``uppercase letter'' is one whose \lccode is both nonzero, and % not equal to itself. % Otherwise, we assume it's a number. % % We need the \relax at the end of the \ifnum lines to stop TeX from % continuing to look for a . % \ifnum\lccode\expandafter`\thearg=0\relax \numericenumerate % a number (we hope) \else % It's a letter. \ifnum\lccode\expandafter`\thearg=\expandafter`\thearg\relax \lowercaseenumerate % lowercase letter \else \uppercaseenumerate % uppercase letter \fi \fi \else % Multiple tokens in the argument. We hope it's a number. \numericenumerate \fi } % An @enumerate whose labels are integers. The starting integer is % given in \thearg. % \def\numericenumerate{% \itemno = \thearg \startenumeration{\the\itemno}% } % The starting (lowercase) letter is in \thearg. \def\lowercaseenumerate{% \itemno = \expandafter`\thearg \startenumeration{% % Be sure we're not beyond the end of the alphabet. \ifnum\itemno=0 \errmessage{No more lowercase letters in @enumerate; get a bigger alphabet}% \fi \char\lccode\itemno }% } % The starting (uppercase) letter is in \thearg. \def\uppercaseenumerate{% \itemno = \expandafter`\thearg \startenumeration{% % Be sure we're not beyond the end of the alphabet. \ifnum\itemno=0 \errmessage{No more uppercase letters in @enumerate; get a bigger alphabet} \fi \char\uccode\itemno }% } % Call \doitemize, adding a period to the first argument and supplying the % common last two arguments. Also subtract one from the initial value in % \itemno, since @item increments \itemno. % \def\startenumeration#1{% \advance\itemno by -1 \doitemize{#1.}\flushcr } % @alphaenumerate and @capsenumerate are abbreviations for giving an arg % to @enumerate. % \def\alphaenumerate{\enumerate{a}} \def\capsenumerate{\enumerate{A}} \def\Ealphaenumerate{\Eenumerate} \def\Ecapsenumerate{\Eenumerate} % @multitable macros % Amy Hendrickson, 8/18/94, 3/6/96 % % @multitable ... @end multitable will make as many columns as desired. % Contents of each column will wrap at width given in preamble. Width % can be specified either with sample text given in a template line, % or in percent of \hsize, the current width of text on page. % Table can continue over pages but will only break between lines. % To make preamble: % % Either define widths of columns in terms of percent of \hsize: % @multitable @columnfractions .25 .3 .45 % @item ... % % Numbers following @columnfractions are the percent of the total % current hsize to be used for each column. You may use as many % columns as desired. % Or use a template: % @multitable {Column 1 template} {Column 2 template} {Column 3 template} % @item ... % using the widest term desired in each column. % Each new table line starts with @item, each subsequent new column % starts with @tab. Empty columns may be produced by supplying @tab's % with nothing between them for as many times as empty columns are needed, % ie, @tab@tab@tab will produce two empty columns. % @item, @tab do not need to be on their own lines, but it will not hurt % if they are. % Sample multitable: % @multitable {Column 1 template} {Column 2 template} {Column 3 template} % @item first col stuff @tab second col stuff @tab third col % @item % first col stuff % @tab % second col stuff % @tab % third col % @item first col stuff @tab second col stuff % @tab Many paragraphs of text may be used in any column. % % They will wrap at the width determined by the template. % @item@tab@tab This will be in third column. % @end multitable % Default dimensions may be reset by user. % @multitableparskip is vertical space between paragraphs in table. % @multitableparindent is paragraph indent in table. % @multitablecolmargin is horizontal space to be left between columns. % @multitablelinespace is space to leave between table items, baseline % to baseline. % 0pt means it depends on current normal line spacing. % \newskip\multitableparskip \newskip\multitableparindent \newdimen\multitablecolspace \newskip\multitablelinespace \multitableparskip=0pt \multitableparindent=6pt \multitablecolspace=12pt \multitablelinespace=0pt % Macros used to set up halign preamble: % \let\endsetuptable\relax \def\xendsetuptable{\endsetuptable} \let\columnfractions\relax \def\xcolumnfractions{\columnfractions} \newif\ifsetpercent % #1 is the @columnfraction, usually a decimal number like .5, but might % be just 1. We just use it, whatever it is. % \def\pickupwholefraction#1 {% \global\advance\colcount by 1 \expandafter\xdef\csname col\the\colcount\endcsname{#1\hsize}% \setuptable } \newcount\colcount \def\setuptable#1{% \def\firstarg{#1}% \ifx\firstarg\xendsetuptable \let\go = \relax \else \ifx\firstarg\xcolumnfractions \global\setpercenttrue \else \ifsetpercent \let\go\pickupwholefraction \else \global\advance\colcount by 1 \setbox0=\hbox{#1\unskip\space}% Add a normal word space as a % separator; typically that is always in the input, anyway. \expandafter\xdef\csname col\the\colcount\endcsname{\the\wd0}% \fi \fi \ifx\go\pickupwholefraction % Put the argument back for the \pickupwholefraction call, so % we'll always have a period there to be parsed. \def\go{\pickupwholefraction#1}% \else \let\go = \setuptable \fi% \fi \go } % multitable-only commands. % % @headitem starts a heading row, which we typeset in bold. % Assignments have to be global since we are inside the implicit group % of an alignment entry. Note that \everycr resets \everytab. \def\headitem{\checkenv\multitable \crcr \global\everytab={\bf}\the\everytab}% % % A \tab used to include \hskip1sp. But then the space in a template % line is not enough. That is bad. So let's go back to just `&' until % we encounter the problem it was intended to solve again. % --karl, nathan@acm.org, 20apr99. \def\tab{\checkenv\multitable &\the\everytab}% % @multitable ... @end multitable definitions: % \newtoks\everytab % insert after every tab. % \envdef\multitable{% \vskip\parskip \startsavinginserts % % @item within a multitable starts a normal row. % We use \def instead of \let so that if one of the multitable entries % contains an @itemize, we don't choke on the \item (seen as \crcr aka % \endtemplate) expanding \doitemize. \def\item{\crcr}% % \tolerance=9500 \hbadness=9500 \setmultitablespacing \parskip=\multitableparskip \parindent=\multitableparindent \overfullrule=0pt \global\colcount=0 % \everycr = {% \noalign{% \global\everytab={}% \global\colcount=0 % Reset the column counter. % Check for saved footnotes, etc. \checkinserts % Keeps underfull box messages off when table breaks over pages. %\filbreak % Maybe so, but it also creates really weird page breaks when the % table breaks over pages. Wouldn't \vfil be better? Wait until the % problem manifests itself, so it can be fixed for real --karl. }% }% % \parsearg\domultitable } \def\domultitable#1{% % To parse everything between @multitable and @item: \setuptable#1 \endsetuptable % % This preamble sets up a generic column definition, which will % be used as many times as user calls for columns. % \vtop will set a single line and will also let text wrap and % continue for many paragraphs if desired. \halign\bgroup &% \global\advance\colcount by 1 \multistrut \vtop{% % Use the current \colcount to find the correct column width: \hsize=\expandafter\csname col\the\colcount\endcsname % % In order to keep entries from bumping into each other % we will add a \leftskip of \multitablecolspace to all columns after % the first one. % % If a template has been used, we will add \multitablecolspace % to the width of each template entry. % % If the user has set preamble in terms of percent of \hsize we will % use that dimension as the width of the column, and the \leftskip % will keep entries from bumping into each other. Table will start at % left margin and final column will justify at right margin. % % Make sure we don't inherit \rightskip from the outer environment. \rightskip=0pt \ifnum\colcount=1 % The first column will be indented with the surrounding text. \advance\hsize by\leftskip \else \ifsetpercent \else % If user has not set preamble in terms of percent of \hsize % we will advance \hsize by \multitablecolspace. \advance\hsize by \multitablecolspace \fi % In either case we will make \leftskip=\multitablecolspace: \leftskip=\multitablecolspace \fi % Ignoring space at the beginning and end avoids an occasional spurious % blank line, when TeX decides to break the line at the space before the % box from the multistrut, so the strut ends up on a line by itself. % For example: % @multitable @columnfractions .11 .89 % @item @code{#} % @tab Legal holiday which is valid in major parts of the whole country. % Is automatically provided with highlighting sequences respectively % marking characters. \noindent\ignorespaces##\unskip\multistrut }\cr } \def\Emultitable{% \crcr \egroup % end the \halign \global\setpercentfalse } \def\setmultitablespacing{% \def\multistrut{\strut}% just use the standard line spacing % % Compute \multitablelinespace (if not defined by user) for use in % \multitableparskip calculation. We used define \multistrut based on % this, but (ironically) that caused the spacing to be off. % See bug-texinfo report from Werner Lemberg, 31 Oct 2004 12:52:20 +0100. \ifdim\multitablelinespace=0pt \setbox0=\vbox{X}\global\multitablelinespace=\the\baselineskip \global\advance\multitablelinespace by-\ht0 \fi %% Test to see if parskip is larger than space between lines of %% table. If not, do nothing. %% If so, set to same dimension as multitablelinespace. \ifdim\multitableparskip>\multitablelinespace \global\multitableparskip=\multitablelinespace \global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller %% than skip between lines in the table. \fi% \ifdim\multitableparskip=0pt \global\multitableparskip=\multitablelinespace \global\advance\multitableparskip-7pt %% to keep parskip somewhat smaller %% than skip between lines in the table. \fi} \message{conditionals,} % @iftex, @ifnotdocbook, @ifnothtml, @ifnotinfo, @ifnotplaintext, % @ifnotxml always succeed. They currently do nothing; we don't % attempt to check whether the conditionals are properly nested. But we % have to remember that they are conditionals, so that @end doesn't % attempt to close an environment group. % \def\makecond#1{% \expandafter\let\csname #1\endcsname = \relax \expandafter\let\csname iscond.#1\endcsname = 1 } \makecond{iftex} \makecond{ifnotdocbook} \makecond{ifnothtml} \makecond{ifnotinfo} \makecond{ifnotplaintext} \makecond{ifnotxml} % Ignore @ignore, @ifhtml, @ifinfo, and the like. % \def\direntry{\doignore{direntry}} \def\documentdescription{\doignore{documentdescription}} \def\docbook{\doignore{docbook}} \def\html{\doignore{html}} \def\ifdocbook{\doignore{ifdocbook}} \def\ifhtml{\doignore{ifhtml}} \def\ifinfo{\doignore{ifinfo}} \def\ifnottex{\doignore{ifnottex}} \def\ifplaintext{\doignore{ifplaintext}} \def\ifxml{\doignore{ifxml}} \def\ignore{\doignore{ignore}} \def\menu{\doignore{menu}} \def\xml{\doignore{xml}} % Ignore text until a line `@end #1', keeping track of nested conditionals. % % A count to remember the depth of nesting. \newcount\doignorecount \def\doignore#1{\begingroup % Scan in ``verbatim'' mode: \obeylines \catcode`\@ = \other \catcode`\{ = \other \catcode`\} = \other % % Make sure that spaces turn into tokens that match what \doignoretext wants. \spaceisspace % % Count number of #1's that we've seen. \doignorecount = 0 % % Swallow text until we reach the matching `@end #1'. \dodoignore{#1}% } { \catcode`_=11 % We want to use \_STOP_ which cannot appear in texinfo source. \obeylines % % \gdef\dodoignore#1{% % #1 contains the command name as a string, e.g., `ifinfo'. % % Define a command to find the next `@end #1'. \long\def\doignoretext##1^^M@end #1{% \doignoretextyyy##1^^M@#1\_STOP_}% % % And this command to find another #1 command, at the beginning of a % line. (Otherwise, we would consider a line `@c @ifset', for % example, to count as an @ifset for nesting.) \long\def\doignoretextyyy##1^^M@#1##2\_STOP_{\doignoreyyy{##2}\_STOP_}% % % And now expand that command. \doignoretext ^^M% }% } \def\doignoreyyy#1{% \def\temp{#1}% \ifx\temp\empty % Nothing found. \let\next\doignoretextzzz \else % Found a nested condition, ... \advance\doignorecount by 1 \let\next\doignoretextyyy % ..., look for another. % If we're here, #1 ends with ^^M\ifinfo (for example). \fi \next #1% the token \_STOP_ is present just after this macro. } % We have to swallow the remaining "\_STOP_". % \def\doignoretextzzz#1{% \ifnum\doignorecount = 0 % We have just found the outermost @end. \let\next\enddoignore \else % Still inside a nested condition. \advance\doignorecount by -1 \let\next\doignoretext % Look for the next @end. \fi \next } % Finish off ignored text. { \obeylines% % Ignore anything after the last `@end #1'; this matters in verbatim % environments, where otherwise the newline after an ignored conditional % would result in a blank line in the output. \gdef\enddoignore#1^^M{\endgroup\ignorespaces}% } % @set VAR sets the variable VAR to an empty value. % @set VAR REST-OF-LINE sets VAR to the value REST-OF-LINE. % % Since we want to separate VAR from REST-OF-LINE (which might be % empty), we can't just use \parsearg; we have to insert a space of our % own to delimit the rest of the line, and then take it out again if we % didn't need it. % We rely on the fact that \parsearg sets \catcode`\ =10. % \parseargdef\set{\setyyy#1 \endsetyyy} \def\setyyy#1 #2\endsetyyy{% {% \makevalueexpandable \def\temp{#2}% \edef\next{\gdef\makecsname{SET#1}}% \ifx\temp\empty \next{}% \else \setzzz#2\endsetzzz \fi }% } % Remove the trailing space \setxxx inserted. \def\setzzz#1 \endsetzzz{\next{#1}} % @clear VAR clears (i.e., unsets) the variable VAR. % \parseargdef\clear{% {% \makevalueexpandable \global\expandafter\let\csname SET#1\endcsname=\relax }% } % @value{foo} gets the text saved in variable foo. \def\value{\begingroup\makevalueexpandable\valuexxx} \def\valuexxx#1{\expandablevalue{#1}\endgroup} { \catcode`\- = \active \catcode`\_ = \active % \gdef\makevalueexpandable{% \let\value = \expandablevalue % We don't want these characters active, ... \catcode`\-=\other \catcode`\_=\other % ..., but we might end up with active ones in the argument if % we're called from @code, as @code{@value{foo-bar_}}, though. % So \let them to their normal equivalents. \let-\realdash \let_\normalunderscore } } % We have this subroutine so that we can handle at least some @value's % properly in indexes (we call \makevalueexpandable in \indexdummies). % The command has to be fully expandable (if the variable is set), since % the result winds up in the index file. This means that if the % variable's value contains other Texinfo commands, it's almost certain % it will fail (although perhaps we could fix that with sufficient work % to do a one-level expansion on the result, instead of complete). % \def\expandablevalue#1{% \expandafter\ifx\csname SET#1\endcsname\relax {[No value for ``#1'']}% \message{Variable `#1', used in @value, is not set.}% \else \csname SET#1\endcsname \fi } % @ifset VAR ... @end ifset reads the `...' iff VAR has been defined % with @set. % % To get special treatment of `@end ifset,' call \makeond and the redefine. % \makecond{ifset} \def\ifset{\parsearg{\doifset{\let\next=\ifsetfail}}} \def\doifset#1#2{% {% \makevalueexpandable \let\next=\empty \expandafter\ifx\csname SET#2\endcsname\relax #1% If not set, redefine \next. \fi \expandafter }\next } \def\ifsetfail{\doignore{ifset}} % @ifclear VAR ... @end ifclear reads the `...' iff VAR has never been % defined with @set, or has been undefined with @clear. % % The `\else' inside the `\doifset' parameter is a trick to reuse the % above code: if the variable is not set, do nothing, if it is set, % then redefine \next to \ifclearfail. % \makecond{ifclear} \def\ifclear{\parsearg{\doifset{\else \let\next=\ifclearfail}}} \def\ifclearfail{\doignore{ifclear}} % @dircategory CATEGORY -- specify a category of the dir file % which this file should belong to. Ignore this in TeX. \let\dircategory=\comment % @defininfoenclose. \let\definfoenclose=\comment \message{indexing,} % Index generation facilities % Define \newwrite to be identical to plain tex's \newwrite % except not \outer, so it can be used within macros and \if's. \edef\newwrite{\makecsname{ptexnewwrite}} % \newindex {foo} defines an index named foo. % It automatically defines \fooindex such that % \fooindex ...rest of line... puts an entry in the index foo. % It also defines \fooindfile to be the number of the output channel for % the file that accumulates this index. The file's extension is foo. % The name of an index should be no more than 2 characters long % for the sake of vms. % \def\newindex#1{% \iflinks \expandafter\newwrite \csname#1indfile\endcsname \openout \csname#1indfile\endcsname \jobname.#1 % Open the file \fi \expandafter\xdef\csname#1index\endcsname{% % Define @#1index \noexpand\doindex{#1}} } % @defindex foo == \newindex{foo} % \def\defindex{\parsearg\newindex} % Define @defcodeindex, like @defindex except put all entries in @code. % \def\defcodeindex{\parsearg\newcodeindex} % \def\newcodeindex#1{% \iflinks \expandafter\newwrite \csname#1indfile\endcsname \openout \csname#1indfile\endcsname \jobname.#1 \fi \expandafter\xdef\csname#1index\endcsname{% \noexpand\docodeindex{#1}}% } % @synindex foo bar makes index foo feed into index bar. % Do this instead of @defindex foo if you don't want it as a separate index. % % @syncodeindex foo bar similar, but put all entries made for index foo % inside @code. % \def\synindex#1 #2 {\dosynindex\doindex{#1}{#2}} \def\syncodeindex#1 #2 {\dosynindex\docodeindex{#1}{#2}} % #1 is \doindex or \docodeindex, #2 the index getting redefined (foo), % #3 the target index (bar). \def\dosynindex#1#2#3{% % Only do \closeout if we haven't already done it, else we'll end up % closing the target index. \expandafter \ifx\csname donesynindex#2\endcsname \undefined % The \closeout helps reduce unnecessary open files; the limit on the % Acorn RISC OS is a mere 16 files. \expandafter\closeout\csname#2indfile\endcsname \expandafter\let\csname\donesynindex#2\endcsname = 1 \fi % redefine \fooindfile: \expandafter\let\expandafter\temp\expandafter=\csname#3indfile\endcsname \expandafter\let\csname#2indfile\endcsname=\temp % redefine \fooindex: \expandafter\xdef\csname#2index\endcsname{\noexpand#1{#3}}% } % Define \doindex, the driver for all \fooindex macros. % Argument #1 is generated by the calling \fooindex macro, % and it is "foo", the name of the index. % \doindex just uses \parsearg; it calls \doind for the actual work. % This is because \doind is more useful to call from other macros. % There is also \dosubind {index}{topic}{subtopic} % which makes an entry in a two-level index such as the operation index. \def\doindex#1{\edef\indexname{#1}\parsearg\singleindexer} \def\singleindexer #1{\doind{\indexname}{#1}} % like the previous two, but they put @code around the argument. \def\docodeindex#1{\edef\indexname{#1}\parsearg\singlecodeindexer} \def\singlecodeindexer #1{\doind{\indexname}{\code{#1}}} % Take care of Texinfo commands that can appear in an index entry. % Since there are some commands we want to expand, and others we don't, % we have to laboriously prevent expansion for those that we don't. % \def\indexdummies{% \escapechar = `\\ % use backslash in output files. \def\@{@}% change to @@ when we switch to @ as escape char in index files. \def\ {\realbackslash\space }% % Need these in case \tex is in effect and \{ is a \delimiter again. % But can't use \lbracecmd and \rbracecmd because texindex assumes % braces and backslashes are used only as delimiters. \let\{ = \mylbrace \let\} = \myrbrace % % Do the redefinitions. \commondummies } % For the aux and toc files, @ is the escape character. So we want to % redefine everything using @ as the escape character (instead of % \realbackslash, still used for index files). When everything uses @, % this will be simpler. % \def\atdummies{% \def\@{@@}% \def\ {@ }% \let\{ = \lbraceatcmd \let\} = \rbraceatcmd % % Do the redefinitions. \commondummies \otherbackslash } % Called from \indexdummies and \atdummies. % \def\commondummies{% % % \definedummyword defines \#1 as \string\#1\space, thus effectively % preventing its expansion. This is used only for control% words, % not control letters, because the \space would be incorrect for % control characters, but is needed to separate the control word % from whatever follows. % % For control letters, we have \definedummyletter, which omits the % space. % % These can be used both for control words that take an argument and % those that do not. If it is followed by {arg} in the input, then % that will dutifully get written to the index (or wherever). % \def\definedummyword ##1{\def##1{\string##1\space}}% \def\definedummyletter##1{\def##1{\string##1}}% \let\definedummyaccent\definedummyletter % \commondummiesnofonts % \definedummyletter\_% % % Non-English letters. \definedummyword\AA \definedummyword\AE \definedummyword\L \definedummyword\OE \definedummyword\O \definedummyword\aa \definedummyword\ae \definedummyword\l \definedummyword\oe \definedummyword\o \definedummyword\ss \definedummyword\exclamdown \definedummyword\questiondown \definedummyword\ordf \definedummyword\ordm % % Although these internal commands shouldn't show up, sometimes they do. \definedummyword\bf \definedummyword\gtr \definedummyword\hat \definedummyword\less \definedummyword\sf \definedummyword\sl \definedummyword\tclose \definedummyword\tt % \definedummyword\LaTeX \definedummyword\TeX % % Assorted special characters. \definedummyword\bullet \definedummyword\comma \definedummyword\copyright \definedummyword\registeredsymbol \definedummyword\dots \definedummyword\enddots \definedummyword\equiv \definedummyword\error \definedummyword\euro \definedummyword\expansion \definedummyword\minus \definedummyword\pounds \definedummyword\point \definedummyword\print \definedummyword\result % % We want to disable all macros so that they are not expanded by \write. \macrolist % \normalturnoffactive % % Handle some cases of @value -- where it does not contain any % (non-fully-expandable) commands. \makevalueexpandable } % \commondummiesnofonts: common to \commondummies and \indexnofonts. % \def\commondummiesnofonts{% % Control letters and accents. \definedummyletter\!% \definedummyaccent\"% \definedummyaccent\'% \definedummyletter\*% \definedummyaccent\,% \definedummyletter\.% \definedummyletter\/% \definedummyletter\:% \definedummyaccent\=% \definedummyletter\?% \definedummyaccent\^% \definedummyaccent\`% \definedummyaccent\~% \definedummyword\u \definedummyword\v \definedummyword\H \definedummyword\dotaccent \definedummyword\ringaccent \definedummyword\tieaccent \definedummyword\ubaraccent \definedummyword\udotaccent \definedummyword\dotless % % Texinfo font commands. \definedummyword\b \definedummyword\i \definedummyword\r \definedummyword\sc \definedummyword\t % % Commands that take arguments. \definedummyword\acronym \definedummyword\cite \definedummyword\code \definedummyword\command \definedummyword\dfn \definedummyword\emph \definedummyword\env \definedummyword\file \definedummyword\kbd \definedummyword\key \definedummyword\math \definedummyword\option \definedummyword\pxref \definedummyword\ref \definedummyword\samp \definedummyword\strong \definedummyword\tie \definedummyword\uref \definedummyword\url \definedummyword\var \definedummyword\verb \definedummyword\w \definedummyword\xref } % \indexnofonts is used when outputting the strings to sort the index % by, and when constructing control sequence names. It eliminates all % control sequences and just writes whatever the best ASCII sort string % would be for a given command (usually its argument). % \def\indexnofonts{% % Accent commands should become @asis. \def\definedummyaccent##1{\let##1\asis}% % We can just ignore other control letters. \def\definedummyletter##1{\let##1\empty}% % Hopefully, all control words can become @asis. \let\definedummyword\definedummyaccent % \commondummiesnofonts % % Don't no-op \tt, since it isn't a user-level command % and is used in the definitions of the active chars like <, >, |, etc. % Likewise with the other plain tex font commands. %\let\tt=\asis % \def\ { }% \def\@{@}% % how to handle braces? \def\_{\normalunderscore}% % % Non-English letters. \def\AA{AA}% \def\AE{AE}% \def\L{L}% \def\OE{OE}% \def\O{O}% \def\aa{aa}% \def\ae{ae}% \def\l{l}% \def\oe{oe}% \def\o{o}% \def\ss{ss}% \def\exclamdown{!}% \def\questiondown{?}% \def\ordf{a}% \def\ordm{o}% % \def\LaTeX{LaTeX}% \def\TeX{TeX}% % % Assorted special characters. % (The following {} will end up in the sort string, but that's ok.) \def\bullet{bullet}% \def\comma{,}% \def\copyright{copyright}% \def\registeredsymbol{R}% \def\dots{...}% \def\enddots{...}% \def\equiv{==}% \def\error{error}% \def\euro{euro}% \def\expansion{==>}% \def\minus{-}% \def\pounds{pounds}% \def\point{.}% \def\print{-|}% \def\result{=>}% % % We need to get rid of all macros, leaving only the arguments (if present). % Of course this is not nearly correct, but it is the best we can do for now. % makeinfo does not expand macros in the argument to @deffn, which ends up % writing an index entry, and texindex isn't prepared for an index sort entry % that starts with \. % % Since macro invocations are followed by braces, we can just redefine them % to take a single TeX argument. The case of a macro invocation that % goes to end-of-line is not handled. % \macrolist } \let\indexbackslash=0 %overridden during \printindex. \let\SETmarginindex=\relax % put index entries in margin (undocumented)? % Most index entries go through here, but \dosubind is the general case. % #1 is the index name, #2 is the entry text. \def\doind#1#2{\dosubind{#1}{#2}{}} % Workhorse for all \fooindexes. % #1 is name of index, #2 is stuff to put there, #3 is subentry -- % empty if called from \doind, as we usually are (the main exception % is with most defuns, which call us directly). % \def\dosubind#1#2#3{% \iflinks {% % Store the main index entry text (including the third arg). \toks0 = {#2}% % If third arg is present, precede it with a space. \def\thirdarg{#3}% \ifx\thirdarg\empty \else \toks0 = \expandafter{\the\toks0 \space #3}% \fi % \edef\writeto{\csname#1indfile\endcsname}% % \ifvmode \dosubindsanitize \else \dosubindwrite \fi }% \fi } % Write the entry in \toks0 to the index file: % \def\dosubindwrite{% % Put the index entry in the margin if desired. \ifx\SETmarginindex\relax\else \insert\margin{\hbox{\vrule height8pt depth3pt width0pt \the\toks0}}% \fi % % Remember, we are within a group. \indexdummies % Must do this here, since \bf, etc expand at this stage \def\backslashcurfont{\indexbackslash}% \indexbackslash isn't defined now % so it will be output as is; and it will print as backslash. % % Process the index entry with all font commands turned off, to % get the string to sort by. {\indexnofonts \edef\temp{\the\toks0}% need full expansion \xdef\indexsorttmp{\temp}% }% % % Set up the complete index entry, with both the sort key and % the original text, including any font commands. We write % three arguments to \entry to the .?? file (four in the % subentry case), texindex reduces to two when writing the .??s % sorted result. \edef\temp{% \write\writeto{% \string\entry{\indexsorttmp}{\noexpand\folio}{\the\toks0}}% }% \temp } % Take care of unwanted page breaks: % % If a skip is the last thing on the list now, preserve it % by backing up by \lastskip, doing the \write, then inserting % the skip again. Otherwise, the whatsit generated by the % \write will make \lastskip zero. The result is that sequences % like this: % @end defun % @tindex whatever % @defun ... % will have extra space inserted, because the \medbreak in the % start of the @defun won't see the skip inserted by the @end of % the previous defun. % % But don't do any of this if we're not in vertical mode. We % don't want to do a \vskip and prematurely end a paragraph. % % Avoid page breaks due to these extra skips, too. % % But wait, there is a catch there: % We'll have to check whether \lastskip is zero skip. \ifdim is not % sufficient for this purpose, as it ignores stretch and shrink parts % of the skip. The only way seems to be to check the textual % representation of the skip. % % The following is almost like \def\zeroskipmacro{0.0pt} except that % the ``p'' and ``t'' characters have catcode \other, not 11 (letter). % \edef\zeroskipmacro{\expandafter\the\csname z@skip\endcsname} % % ..., ready, GO: % \def\dosubindsanitize{% % \lastskip and \lastpenalty cannot both be nonzero simultaneously. \skip0 = \lastskip \edef\lastskipmacro{\the\lastskip}% \count255 = \lastpenalty % % If \lastskip is nonzero, that means the last item was a % skip. And since a skip is discardable, that means this % -\skip0 glue we're inserting is preceded by a % non-discardable item, therefore it is not a potential % breakpoint, therefore no \nobreak needed. \ifx\lastskipmacro\zeroskipmacro \else \vskip-\skip0 \fi % \dosubindwrite % \ifx\lastskipmacro\zeroskipmacro % If \lastskip was zero, perhaps the last item was a penalty, and % perhaps it was >=10000, e.g., a \nobreak. In that case, we want % to re-insert the same penalty (values >10000 are used for various % signals); since we just inserted a non-discardable item, any % following glue (such as a \parskip) would be a breakpoint. For example: % % @deffn deffn-whatever % @vindex index-whatever % Description. % would allow a break between the index-whatever whatsit % and the "Description." paragraph. \ifnum\count255>9999 \penalty\count255 \fi \else % On the other hand, if we had a nonzero \lastskip, % this make-up glue would be preceded by a non-discardable item % (the whatsit from the \write), so we must insert a \nobreak. \nobreak\vskip\skip0 \fi } % The index entry written in the file actually looks like % \entry {sortstring}{page}{topic} % or % \entry {sortstring}{page}{topic}{subtopic} % The texindex program reads in these files and writes files % containing these kinds of lines: % \initial {c} % before the first topic whose initial is c % \entry {topic}{pagelist} % for a topic that is used without subtopics % \primary {topic} % for the beginning of a topic that is used with subtopics % \secondary {subtopic}{pagelist} % for each subtopic. % Define the user-accessible indexing commands % @findex, @vindex, @kindex, @cindex. \def\findex {\fnindex} \def\kindex {\kyindex} \def\cindex {\cpindex} \def\vindex {\vrindex} \def\tindex {\tpindex} \def\pindex {\pgindex} \def\cindexsub {\begingroup\obeylines\cindexsub} {\obeylines % \gdef\cindexsub "#1" #2^^M{\endgroup % \dosubind{cp}{#2}{#1}}} % Define the macros used in formatting output of the sorted index material. % @printindex causes a particular index (the ??s file) to get printed. % It does not print any chapter heading (usually an @unnumbered). % \parseargdef\printindex{\begingroup \dobreak \chapheadingskip{10000}% % \smallfonts \rm \tolerance = 9500 \everypar = {}% don't want the \kern\-parindent from indentation suppression. % % See if the index file exists and is nonempty. % Change catcode of @ here so that if the index file contains % \initial {@} % as its first line, TeX doesn't complain about mismatched braces % (because it thinks @} is a control sequence). \catcode`\@ = 11 \openin 1 \jobname.#1s \ifeof 1 % \enddoublecolumns gets confused if there is no text in the index, % and it loses the chapter title and the aux file entries for the % index. The easiest way to prevent this problem is to make sure % there is some text. \putwordIndexNonexistent \else % % If the index file exists but is empty, then \openin leaves \ifeof % false. We have to make TeX try to read something from the file, so % it can discover if there is anything in it. \read 1 to \temp \ifeof 1 \putwordIndexIsEmpty \else % Index files are almost Texinfo source, but we use \ as the escape % character. It would be better to use @, but that's too big a change % to make right now. \def\indexbackslash{\backslashcurfont}% \catcode`\\ = 0 \escapechar = `\\ \begindoublecolumns \input \jobname.#1s \enddoublecolumns \fi \fi \closein 1 \endgroup} % These macros are used by the sorted index file itself. % Change them to control the appearance of the index. \def\initial#1{{% % Some minor font changes for the special characters. \let\tentt=\sectt \let\tt=\sectt \let\sf=\sectt % % Remove any glue we may have, we'll be inserting our own. \removelastskip % % We like breaks before the index initials, so insert a bonus. \nobreak \vskip 0pt plus 3\baselineskip \penalty 0 \vskip 0pt plus -3\baselineskip % % Typeset the initial. Making this add up to a whole number of % baselineskips increases the chance of the dots lining up from column % to column. It still won't often be perfect, because of the stretch % we need before each entry, but it's better. % % No shrink because it confuses \balancecolumns. \vskip 1.67\baselineskip plus .5\baselineskip \leftline{\secbf #1}% % Do our best not to break after the initial. \nobreak \vskip .33\baselineskip plus .1\baselineskip }} % \entry typesets a paragraph consisting of the text (#1), dot leaders, and % then page number (#2) flushed to the right margin. It is used for index % and table of contents entries. The paragraph is indented by \leftskip. % % A straightforward implementation would start like this: % \def\entry#1#2{... % But this frozes the catcodes in the argument, and can cause problems to % @code, which sets - active. This problem was fixed by a kludge--- % ``-'' was active throughout whole index, but this isn't really right. % % The right solution is to prevent \entry from swallowing the whole text. % --kasal, 21nov03 \def\entry{% \begingroup % % Start a new paragraph if necessary, so our assignments below can't % affect previous text. \par % % Do not fill out the last line with white space. \parfillskip = 0in % % No extra space above this paragraph. \parskip = 0in % % Do not prefer a separate line ending with a hyphen to fewer lines. \finalhyphendemerits = 0 % % \hangindent is only relevant when the entry text and page number % don't both fit on one line. In that case, bob suggests starting the % dots pretty far over on the line. Unfortunately, a large % indentation looks wrong when the entry text itself is broken across % lines. So we use a small indentation and put up with long leaders. % % \hangafter is reset to 1 (which is the value we want) at the start % of each paragraph, so we need not do anything with that. \hangindent = 2em % % When the entry text needs to be broken, just fill out the first line % with blank space. \rightskip = 0pt plus1fil % % A bit of stretch before each entry for the benefit of balancing % columns. \vskip 0pt plus1pt % % Swallow the left brace of the text (first parameter): \afterassignment\doentry \let\temp = } \def\doentry{% \bgroup % Instead of the swallowed brace. \noindent \aftergroup\finishentry % And now comes the text of the entry. } \def\finishentry#1{% % #1 is the page number. % % The following is kludged to not output a line of dots in the index if % there are no page numbers. The next person who breaks this will be % cursed by a Unix daemon. \def\tempa{{\rm }}% \def\tempb{#1}% \edef\tempc{\tempa}% \edef\tempd{\tempb}% \ifx\tempc\tempd \ % \else % % If we must, put the page number on a line of its own, and fill out % this line with blank space. (The \hfil is overwhelmed with the % fill leaders glue in \indexdotfill if the page number does fit.) \hfil\penalty50 \null\nobreak\indexdotfill % Have leaders before the page number. % % The `\ ' here is removed by the implicit \unskip that TeX does as % part of (the primitive) \par. Without it, a spurious underfull % \hbox ensues. \ifpdf \pdfgettoks#1.% \ \the\toksA \else \ #1% \fi \fi \par \endgroup } % Like \dotfill except takes at least 1 em. \def\indexdotfill{\cleaders \hbox{$\mathsurround=0pt \mkern1.5mu ${\it .}$ \mkern1.5mu$}\hskip 1em plus 1fill} \def\primary #1{\line{#1\hfil}} \newskip\secondaryindent \secondaryindent=0.5cm \def\secondary#1#2{{% \parfillskip=0in \parskip=0in \hangindent=1in \hangafter=1 \noindent\hskip\secondaryindent\hbox{#1}\indexdotfill \ifpdf \pdfgettoks#2.\ \the\toksA % The page number ends the paragraph. \else #2 \fi \par }} % Define two-column mode, which we use to typeset indexes. % Adapted from the TeXbook, page 416, which is to say, % the manmac.tex format used to print the TeXbook itself. \catcode`\@=11 \newbox\partialpage \newdimen\doublecolumnhsize \def\begindoublecolumns{\begingroup % ended by \enddoublecolumns % Grab any single-column material above us. \output = {% % % Here is a possibility not foreseen in manmac: if we accumulate a % whole lot of material, we might end up calling this \output % routine twice in a row (see the doublecol-lose test, which is % essentially a couple of indexes with @setchapternewpage off). In % that case we just ship out what is in \partialpage with the normal % output routine. Generally, \partialpage will be empty when this % runs and this will be a no-op. See the indexspread.tex test case. \ifvoid\partialpage \else \onepageout{\pagecontents\partialpage}% \fi % \global\setbox\partialpage = \vbox{% % Unvbox the main output page. \unvbox\PAGE \kern-\topskip \kern\baselineskip }% }% \eject % run that output routine to set \partialpage % % Use the double-column output routine for subsequent pages. \output = {\doublecolumnout}% % % Change the page size parameters. We could do this once outside this % routine, in each of @smallbook, @afourpaper, and the default 8.5x11 % format, but then we repeat the same computation. Repeating a couple % of assignments once per index is clearly meaningless for the % execution time, so we may as well do it in one place. % % First we halve the line length, less a little for the gutter between % the columns. We compute the gutter based on the line length, so it % changes automatically with the paper format. The magic constant % below is chosen so that the gutter has the same value (well, +-<1pt) % as it did when we hard-coded it. % % We put the result in a separate register, \doublecolumhsize, so we % can restore it in \pagesofar, after \hsize itself has (potentially) % been clobbered. % \doublecolumnhsize = \hsize \advance\doublecolumnhsize by -.04154\hsize \divide\doublecolumnhsize by 2 \hsize = \doublecolumnhsize % % Double the \vsize as well. (We don't need a separate register here, % since nobody clobbers \vsize.) \vsize = 2\vsize } % The double-column output routine for all double-column pages except % the last. % \def\doublecolumnout{% \splittopskip=\topskip \splitmaxdepth=\maxdepth % Get the available space for the double columns -- the normal % (undoubled) page height minus any material left over from the % previous page. \dimen@ = \vsize \divide\dimen@ by 2 \advance\dimen@ by -\ht\partialpage % % box0 will be the left-hand column, box2 the right. \setbox0=\vsplit255 to\dimen@ \setbox2=\vsplit255 to\dimen@ \onepageout\pagesofar \unvbox255 \penalty\outputpenalty } % % Re-output the contents of the output page -- any previous material, % followed by the two boxes we just split, in box0 and box2. \def\pagesofar{% \unvbox\partialpage % \hsize = \doublecolumnhsize \wd0=\hsize \wd2=\hsize \hbox to\pagewidth{\box0\hfil\box2}% } % % All done with double columns. \def\enddoublecolumns{% \output = {% % Split the last of the double-column material. Leave it on the % current page, no automatic page break. \balancecolumns % % If we end up splitting too much material for the current page, % though, there will be another page break right after this \output % invocation ends. Having called \balancecolumns once, we do not % want to call it again. Therefore, reset \output to its normal % definition right away. (We hope \balancecolumns will never be % called on to balance too much material, but if it is, this makes % the output somewhat more palatable.) \global\output = {\onepageout{\pagecontents\PAGE}}% }% \eject \endgroup % started in \begindoublecolumns % % \pagegoal was set to the doubled \vsize above, since we restarted % the current page. We're now back to normal single-column % typesetting, so reset \pagegoal to the normal \vsize (after the % \endgroup where \vsize got restored). \pagegoal = \vsize } % % Called at the end of the double column material. \def\balancecolumns{% \setbox0 = \vbox{\unvbox255}% like \box255 but more efficient, see p.120. \dimen@ = \ht0 \advance\dimen@ by \topskip \advance\dimen@ by-\baselineskip \divide\dimen@ by 2 % target to split to %debug\message{final 2-column material height=\the\ht0, target=\the\dimen@.}% \splittopskip = \topskip % Loop until we get a decent breakpoint. {% \vbadness = 10000 \loop \global\setbox3 = \copy0 \global\setbox1 = \vsplit3 to \dimen@ \ifdim\ht3>\dimen@ \global\advance\dimen@ by 1pt \repeat }% %debug\message{split to \the\dimen@, column heights: \the\ht1, \the\ht3.}% \setbox0=\vbox to\dimen@{\unvbox1}% \setbox2=\vbox to\dimen@{\unvbox3}% % \pagesofar } \catcode`\@ = \other \message{sectioning,} % Chapters, sections, etc. % \unnumberedno is an oxymoron, of course. But we count the unnumbered % sections so that we can refer to them unambiguously in the pdf % outlines by their "section number". We avoid collisions with chapter % numbers by starting them at 10000. (If a document ever has 10000 % chapters, we're in trouble anyway, I'm sure.) \newcount\unnumberedno \unnumberedno = 10000 \newcount\chapno \newcount\secno \secno=0 \newcount\subsecno \subsecno=0 \newcount\subsubsecno \subsubsecno=0 % This counter is funny since it counts through charcodes of letters A, B, ... \newcount\appendixno \appendixno = `\@ % % \def\appendixletter{\char\the\appendixno} % We do the following ugly conditional instead of the above simple % construct for the sake of pdftex, which needs the actual % letter in the expansion, not just typeset. % \def\appendixletter{% \ifnum\appendixno=`A A% \else\ifnum\appendixno=`B B% \else\ifnum\appendixno=`C C% \else\ifnum\appendixno=`D D% \else\ifnum\appendixno=`E E% \else\ifnum\appendixno=`F F% \else\ifnum\appendixno=`G G% \else\ifnum\appendixno=`H H% \else\ifnum\appendixno=`I I% \else\ifnum\appendixno=`J J% \else\ifnum\appendixno=`K K% \else\ifnum\appendixno=`L L% \else\ifnum\appendixno=`M M% \else\ifnum\appendixno=`N N% \else\ifnum\appendixno=`O O% \else\ifnum\appendixno=`P P% \else\ifnum\appendixno=`Q Q% \else\ifnum\appendixno=`R R% \else\ifnum\appendixno=`S S% \else\ifnum\appendixno=`T T% \else\ifnum\appendixno=`U U% \else\ifnum\appendixno=`V V% \else\ifnum\appendixno=`W W% \else\ifnum\appendixno=`X X% \else\ifnum\appendixno=`Y Y% \else\ifnum\appendixno=`Z Z% % The \the is necessary, despite appearances, because \appendixletter is % expanded while writing the .toc file. \char\appendixno is not % expandable, thus it is written literally, thus all appendixes come out % with the same letter (or @) in the toc without it. \else\char\the\appendixno \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi} % Each @chapter defines this as the name of the chapter. % page headings and footings can use it. @section does likewise. % However, they are not reliable, because we don't use marks. \def\thischapter{} \def\thissection{} \newcount\absseclevel % used to calculate proper heading level \newcount\secbase\secbase=0 % @raisesections/@lowersections modify this count % @raisesections: treat @section as chapter, @subsection as section, etc. \def\raisesections{\global\advance\secbase by -1} \let\up=\raisesections % original BFox name % @lowersections: treat @chapter as section, @section as subsection, etc. \def\lowersections{\global\advance\secbase by 1} \let\down=\lowersections % original BFox name % we only have subsub. \chardef\maxseclevel = 3 % % A numbered section within an unnumbered changes to unnumbered too. % To achive this, remember the "biggest" unnum. sec. we are currently in: \chardef\unmlevel = \maxseclevel % % Trace whether the current chapter is an appendix or not: % \chapheadtype is "N" or "A", unnumbered chapters are ignored. \def\chapheadtype{N} % Choose a heading macro % #1 is heading type % #2 is heading level % #3 is text for heading \def\genhead#1#2#3{% % Compute the abs. sec. level: \absseclevel=#2 \advance\absseclevel by \secbase % Make sure \absseclevel doesn't fall outside the range: \ifnum \absseclevel < 0 \absseclevel = 0 \else \ifnum \absseclevel > 3 \absseclevel = 3 \fi \fi % The heading type: \def\headtype{#1}% \if \headtype U% \ifnum \absseclevel < \unmlevel \chardef\unmlevel = \absseclevel \fi \else % Check for appendix sections: \ifnum \absseclevel = 0 \edef\chapheadtype{\headtype}% \else \if \headtype A\if \chapheadtype N% \errmessage{@appendix... within a non-appendix chapter}% \fi\fi \fi % Check for numbered within unnumbered: \ifnum \absseclevel > \unmlevel \def\headtype{U}% \else \chardef\unmlevel = 3 \fi \fi % Now print the heading: \if \headtype U% \ifcase\absseclevel \unnumberedzzz{#3}% \or \unnumberedseczzz{#3}% \or \unnumberedsubseczzz{#3}% \or \unnumberedsubsubseczzz{#3}% \fi \else \if \headtype A% \ifcase\absseclevel \appendixzzz{#3}% \or \appendixsectionzzz{#3}% \or \appendixsubseczzz{#3}% \or \appendixsubsubseczzz{#3}% \fi \else \ifcase\absseclevel \chapterzzz{#3}% \or \seczzz{#3}% \or \numberedsubseczzz{#3}% \or \numberedsubsubseczzz{#3}% \fi \fi \fi \suppressfirstparagraphindent } % an interface: \def\numhead{\genhead N} \def\apphead{\genhead A} \def\unnmhead{\genhead U} % @chapter, @appendix, @unnumbered. Increment top-level counter, reset % all lower-level sectioning counters to zero. % % Also set \chaplevelprefix, which we prepend to @float sequence numbers % (e.g., figures), q.v. By default (before any chapter), that is empty. \let\chaplevelprefix = \empty % \outer\parseargdef\chapter{\numhead0{#1}} % normally numhead0 calls chapterzzz \def\chapterzzz#1{% % section resetting is \global in case the chapter is in a group, such % as an @include file. \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 \global\advance\chapno by 1 % % Used for \float. \gdef\chaplevelprefix{\the\chapno.}% \resetallfloatnos % \message{\putwordChapter\space \the\chapno}% % % Write the actual heading. \chapmacro{#1}{Ynumbered}{\the\chapno}% % % So @section and the like are numbered underneath this chapter. \global\let\section = \numberedsec \global\let\subsection = \numberedsubsec \global\let\subsubsection = \numberedsubsubsec } \outer\parseargdef\appendix{\apphead0{#1}} % normally apphead0 calls appendixzzz \def\appendixzzz#1{% \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 \global\advance\appendixno by 1 \gdef\chaplevelprefix{\appendixletter.}% \resetallfloatnos % \def\appendixnum{\putwordAppendix\space \appendixletter}% \message{\appendixnum}% % \chapmacro{#1}{Yappendix}{\appendixletter}% % \global\let\section = \appendixsec \global\let\subsection = \appendixsubsec \global\let\subsubsection = \appendixsubsubsec } \outer\parseargdef\unnumbered{\unnmhead0{#1}} % normally unnmhead0 calls unnumberedzzz \def\unnumberedzzz#1{% \global\secno=0 \global\subsecno=0 \global\subsubsecno=0 \global\advance\unnumberedno by 1 % % Since an unnumbered has no number, no prefix for figures. \global\let\chaplevelprefix = \empty \resetallfloatnos % % This used to be simply \message{#1}, but TeX fully expands the % argument to \message. Therefore, if #1 contained @-commands, TeX % expanded them. For example, in `@unnumbered The @cite{Book}', TeX % expanded @cite (which turns out to cause errors because \cite is meant % to be executed, not expanded). % % Anyway, we don't want the fully-expanded definition of @cite to appear % as a result of the \message, we just want `@cite' itself. We use % \the to achieve this: TeX expands \the only once, % simply yielding the contents of . (We also do this for % the toc entries.) \toks0 = {#1}% \message{(\the\toks0)}% % \chapmacro{#1}{Ynothing}{\the\unnumberedno}% % \global\let\section = \unnumberedsec \global\let\subsection = \unnumberedsubsec \global\let\subsubsection = \unnumberedsubsubsec } % @centerchap is like @unnumbered, but the heading is centered. \outer\parseargdef\centerchap{% % Well, we could do the following in a group, but that would break % an assumption that \chapmacro is called at the outermost level. % Thus we are safer this way: --kasal, 24feb04 \let\centerparametersmaybe = \centerparameters \unnmhead0{#1}% \let\centerparametersmaybe = \relax } % @top is like @unnumbered. \let\top\unnumbered % Sections. \outer\parseargdef\numberedsec{\numhead1{#1}} % normally calls seczzz \def\seczzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Ynumbered}{\the\chapno.\the\secno}% } \outer\parseargdef\appendixsection{\apphead1{#1}} % normally calls appendixsectionzzz \def\appendixsectionzzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Yappendix}{\appendixletter.\the\secno}% } \let\appendixsec\appendixsection \outer\parseargdef\unnumberedsec{\unnmhead1{#1}} % normally calls unnumberedseczzz \def\unnumberedseczzz#1{% \global\subsecno=0 \global\subsubsecno=0 \global\advance\secno by 1 \sectionheading{#1}{sec}{Ynothing}{\the\unnumberedno.\the\secno}% } % Subsections. \outer\parseargdef\numberedsubsec{\numhead2{#1}} % normally calls numberedsubseczzz \def\numberedsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Ynumbered}{\the\chapno.\the\secno.\the\subsecno}% } \outer\parseargdef\appendixsubsec{\apphead2{#1}} % normally calls appendixsubseczzz \def\appendixsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Yappendix}% {\appendixletter.\the\secno.\the\subsecno}% } \outer\parseargdef\unnumberedsubsec{\unnmhead2{#1}} %normally calls unnumberedsubseczzz \def\unnumberedsubseczzz#1{% \global\subsubsecno=0 \global\advance\subsecno by 1 \sectionheading{#1}{subsec}{Ynothing}% {\the\unnumberedno.\the\secno.\the\subsecno}% } % Subsubsections. \outer\parseargdef\numberedsubsubsec{\numhead3{#1}} % normally numberedsubsubseczzz \def\numberedsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Ynumbered}% {\the\chapno.\the\secno.\the\subsecno.\the\subsubsecno}% } \outer\parseargdef\appendixsubsubsec{\apphead3{#1}} % normally appendixsubsubseczzz \def\appendixsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Yappendix}% {\appendixletter.\the\secno.\the\subsecno.\the\subsubsecno}% } \outer\parseargdef\unnumberedsubsubsec{\unnmhead3{#1}} %normally unnumberedsubsubseczzz \def\unnumberedsubsubseczzz#1{% \global\advance\subsubsecno by 1 \sectionheading{#1}{subsubsec}{Ynothing}% {\the\unnumberedno.\the\secno.\the\subsecno.\the\subsubsecno}% } % These macros control what the section commands do, according % to what kind of chapter we are in (ordinary, appendix, or unnumbered). % Define them by default for a numbered chapter. \let\section = \numberedsec \let\subsection = \numberedsubsec \let\subsubsection = \numberedsubsubsec % Define @majorheading, @heading and @subheading % NOTE on use of \vbox for chapter headings, section headings, and such: % 1) We use \vbox rather than the earlier \line to permit % overlong headings to fold. % 2) \hyphenpenalty is set to 10000 because hyphenation in a % heading is obnoxious; this forbids it. % 3) Likewise, headings look best if no \parindent is used, and % if justification is not attempted. Hence \raggedright. \def\majorheading{% {\advance\chapheadingskip by 10pt \chapbreak }% \parsearg\chapheadingzzz } \def\chapheading{\chapbreak \parsearg\chapheadingzzz} \def\chapheadingzzz#1{% {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 \parindent=0pt\raggedright \rm #1\hfill}}% \bigskip \par\penalty 200\relax \suppressfirstparagraphindent } % @heading, @subheading, @subsubheading. \parseargdef\heading{\sectionheading{#1}{sec}{Yomitfromtoc}{} \suppressfirstparagraphindent} \parseargdef\subheading{\sectionheading{#1}{subsec}{Yomitfromtoc}{} \suppressfirstparagraphindent} \parseargdef\subsubheading{\sectionheading{#1}{subsubsec}{Yomitfromtoc}{} \suppressfirstparagraphindent} % These macros generate a chapter, section, etc. heading only % (including whitespace, linebreaking, etc. around it), % given all the information in convenient, parsed form. %%% Args are the skip and penalty (usually negative) \def\dobreak#1#2{\par\ifdim\lastskip<#1\removelastskip\penalty#2\vskip#1\fi} %%% Define plain chapter starts, and page on/off switching for it % Parameter controlling skip before chapter headings (if needed) \newskip\chapheadingskip \def\chapbreak{\dobreak \chapheadingskip {-4000}} \def\chappager{\par\vfill\supereject} \def\chapoddpage{\chappager \ifodd\pageno \else \hbox to 0pt{} \chappager\fi} \def\setchapternewpage #1 {\csname CHAPPAG#1\endcsname} \def\CHAPPAGoff{% \global\let\contentsalignmacro = \chappager \global\let\pchapsepmacro=\chapbreak \global\let\pagealignmacro=\chappager} \def\CHAPPAGon{% \global\let\contentsalignmacro = \chappager \global\let\pchapsepmacro=\chappager \global\let\pagealignmacro=\chappager \global\def\HEADINGSon{\HEADINGSsingle}} \def\CHAPPAGodd{% \global\let\contentsalignmacro = \chapoddpage \global\let\pchapsepmacro=\chapoddpage \global\let\pagealignmacro=\chapoddpage \global\def\HEADINGSon{\HEADINGSdouble}} \CHAPPAGon % Chapter opening. % % #1 is the text, #2 is the section type (Ynumbered, Ynothing, % Yappendix, Yomitfromtoc), #3 the chapter number. % % To test against our argument. \def\Ynothingkeyword{Ynothing} \def\Yomitfromtockeyword{Yomitfromtoc} \def\Yappendixkeyword{Yappendix} % \def\chapmacro#1#2#3{% \pchapsepmacro {% \chapfonts \rm % % Have to define \thissection before calling \donoderef, because the % xref code eventually uses it. On the other hand, it has to be called % after \pchapsepmacro, or the headline will change too soon. \gdef\thissection{#1}% \gdef\thischaptername{#1}% % % Only insert the separating space if we have a chapter/appendix % number, and don't print the unnumbered ``number''. \def\temptype{#2}% \ifx\temptype\Ynothingkeyword \setbox0 = \hbox{}% \def\toctype{unnchap}% \gdef\thischapter{#1}% \else\ifx\temptype\Yomitfromtockeyword \setbox0 = \hbox{}% contents like unnumbered, but no toc entry \def\toctype{omit}% \gdef\thischapter{}% \else\ifx\temptype\Yappendixkeyword \setbox0 = \hbox{\putwordAppendix{} #3\enspace}% \def\toctype{app}% % We don't substitute the actual chapter name into \thischapter % because we don't want its macros evaluated now. And we don't % use \thissection because that changes with each section. % \xdef\thischapter{\putwordAppendix{} \appendixletter: \noexpand\thischaptername}% \else \setbox0 = \hbox{#3\enspace}% \def\toctype{numchap}% \xdef\thischapter{\putwordChapter{} \the\chapno: \noexpand\thischaptername}% \fi\fi\fi % % Write the toc entry for this chapter. Must come before the % \donoderef, because we include the current node name in the toc % entry, and \donoderef resets it to empty. \writetocentry{\toctype}{#1}{#3}% % % For pdftex, we have to write out the node definition (aka, make % the pdfdest) after any page break, but before the actual text has % been typeset. If the destination for the pdf outline is after the % text, then jumping from the outline may wind up with the text not % being visible, for instance under high magnification. \donoderef{#2}% % % Typeset the actual heading. \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright \hangindent=\wd0 \centerparametersmaybe \unhbox0 #1\par}% }% \nobreak\bigskip % no page break after a chapter title \nobreak } % @centerchap -- centered and unnumbered. \let\centerparametersmaybe = \relax \def\centerparameters{% \advance\rightskip by 3\rightskip \leftskip = \rightskip \parfillskip = 0pt } % I don't think this chapter style is supported any more, so I'm not % updating it with the new noderef stuff. We'll see. --karl, 11aug03. % \def\setchapterstyle #1 {\csname CHAPF#1\endcsname} % \def\unnchfopen #1{% \chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 \parindent=0pt\raggedright \rm #1\hfill}}\bigskip \par\nobreak } \def\chfopen #1#2{\chapoddpage {\chapfonts \vbox to 3in{\vfil \hbox to\hsize{\hfil #2} \hbox to\hsize{\hfil #1} \vfil}}% \par\penalty 5000 % } \def\centerchfopen #1{% \chapoddpage {\chapfonts \vbox{\hyphenpenalty=10000\tolerance=5000 \parindent=0pt \hfill {\rm #1}\hfill}}\bigskip \par\nobreak } \def\CHAPFopen{% \global\let\chapmacro=\chfopen \global\let\centerchapmacro=\centerchfopen} % Section titles. These macros combine the section number parts and % call the generic \sectionheading to do the printing. % \newskip\secheadingskip \def\secheadingbreak{\dobreak \secheadingskip{-1000}} % Subsection titles. \newskip\subsecheadingskip \def\subsecheadingbreak{\dobreak \subsecheadingskip{-500}} % Subsubsection titles. \def\subsubsecheadingskip{\subsecheadingskip} \def\subsubsecheadingbreak{\subsecheadingbreak} % Print any size, any type, section title. % % #1 is the text, #2 is the section level (sec/subsec/subsubsec), #3 is % the section type for xrefs (Ynumbered, Ynothing, Yappendix), #4 is the % section number. % \def\sectionheading#1#2#3#4{% {% % Switch to the right set of fonts. \csname #2fonts\endcsname \rm % % Insert space above the heading. \csname #2headingbreak\endcsname % % Only insert the space after the number if we have a section number. \def\sectionlevel{#2}% \def\temptype{#3}% % \ifx\temptype\Ynothingkeyword \setbox0 = \hbox{}% \def\toctype{unn}% \gdef\thissection{#1}% \else\ifx\temptype\Yomitfromtockeyword % for @headings -- no section number, don't include in toc, % and don't redefine \thissection. \setbox0 = \hbox{}% \def\toctype{omit}% \let\sectionlevel=\empty \else\ifx\temptype\Yappendixkeyword \setbox0 = \hbox{#4\enspace}% \def\toctype{app}% \gdef\thissection{#1}% \else \setbox0 = \hbox{#4\enspace}% \def\toctype{num}% \gdef\thissection{#1}% \fi\fi\fi % % Write the toc entry (before \donoderef). See comments in \chapmacro. \writetocentry{\toctype\sectionlevel}{#1}{#4}% % % Write the node reference (= pdf destination for pdftex). % Again, see comments in \chapmacro. \donoderef{#3}% % % Interline glue will be inserted when the vbox is completed. % That glue will be a valid breakpoint for the page, since it'll be % preceded by a whatsit (usually from the \donoderef, or from the % \writetocentry if there was no node). We don't want to allow that % break, since then the whatsits could end up on page n while the % section is on page n+1, thus toc/etc. are wrong. Debian bug 276000. \nobreak % % Output the actual section heading. \vbox{\hyphenpenalty=10000 \tolerance=5000 \parindent=0pt \raggedright \hangindent=\wd0 % zero if no section number \unhbox0 #1}% }% % Add extra space after the heading -- half of whatever came above it. % Don't allow stretch, though. \kern .5 \csname #2headingskip\endcsname % % Do not let the kern be a potential breakpoint, as it would be if it % was followed by glue. \nobreak % % We'll almost certainly start a paragraph next, so don't let that % glue accumulate. (Not a breakpoint because it's preceded by a % discardable item.) \vskip-\parskip % % This is purely so the last item on the list is a known \penalty > % 10000. This is so \startdefun can avoid allowing breakpoints after % section headings. Otherwise, it would insert a valid breakpoint between: % % @section sec-whatever % @deffn def-whatever \penalty 10001 } \message{toc,} % Table of contents. \newwrite\tocfile % Write an entry to the toc file, opening it if necessary. % Called from @chapter, etc. % % Example usage: \writetocentry{sec}{Section Name}{\the\chapno.\the\secno} % We append the current node name (if any) and page number as additional % arguments for the \{chap,sec,...}entry macros which will eventually % read this. The node name is used in the pdf outlines as the % destination to jump to. % % We open the .toc file for writing here instead of at @setfilename (or % any other fixed time) so that @contents can be anywhere in the document. % But if #1 is `omit', then we don't do anything. This is used for the % table of contents chapter openings themselves. % \newif\iftocfileopened \def\omitkeyword{omit}% % \def\writetocentry#1#2#3{% \edef\writetoctype{#1}% \ifx\writetoctype\omitkeyword \else \iftocfileopened\else \immediate\openout\tocfile = \jobname.toc \global\tocfileopenedtrue \fi % \iflinks {\atdummies \edef\temp{% \write\tocfile{@#1entry{#2}{#3}{\lastnode}{\noexpand\folio}}}% \temp }% \fi \fi % % Tell \shipout to create a pdf destination on each page, if we're % writing pdf. These are used in the table of contents. We can't % just write one on every page because the title pages are numbered % 1 and 2 (the page numbers aren't printed), and so are the first % two pages of the document. Thus, we'd have two destinations named % `1', and two named `2'. \ifpdf \global\pdfmakepagedesttrue \fi } % These characters do not print properly in the Computer Modern roman % fonts, so we must take special care. This is more or less redundant % with the Texinfo input format setup at the end of this file. % \def\activecatcodes{% \catcode`\"=\active \catcode`\$=\active \catcode`\<=\active \catcode`\>=\active \catcode`\\=\active \catcode`\^=\active \catcode`\_=\active \catcode`\|=\active \catcode`\~=\active } % Read the toc file, which is essentially Texinfo input. \def\readtocfile{% \setupdatafile \activecatcodes \input \jobname.toc } \newskip\contentsrightmargin \contentsrightmargin=1in \newcount\savepageno \newcount\lastnegativepageno \lastnegativepageno = -1 % Prepare to read what we've written to \tocfile. % \def\startcontents#1{% % If @setchapternewpage on, and @headings double, the contents should % start on an odd page, unlike chapters. Thus, we maintain % \contentsalignmacro in parallel with \pagealignmacro. % From: Torbjorn Granlund \contentsalignmacro \immediate\closeout\tocfile % % Don't need to put `Contents' or `Short Contents' in the headline. % It is abundantly clear what they are. \def\thischapter{}% \chapmacro{#1}{Yomitfromtoc}{}% % \savepageno = \pageno \begingroup % Set up to handle contents files properly. \raggedbottom % Worry more about breakpoints than the bottom. \advance\hsize by -\contentsrightmargin % Don't use the full line length. % % Roman numerals for page numbers. \ifnum \pageno>0 \global\pageno = \lastnegativepageno \fi } % Normal (long) toc. \def\contents{% \startcontents{\putwordTOC}% \openin 1 \jobname.toc \ifeof 1 \else \readtocfile \fi \vfill \eject \contentsalignmacro % in case @setchapternewpage odd is in effect \ifeof 1 \else \pdfmakeoutlines \fi \closein 1 \endgroup \lastnegativepageno = \pageno \global\pageno = \savepageno } % And just the chapters. \def\summarycontents{% \startcontents{\putwordShortTOC}% % \let\numchapentry = \shortchapentry \let\appentry = \shortchapentry \let\unnchapentry = \shortunnchapentry % We want a true roman here for the page numbers. \secfonts \let\rm=\shortcontrm \let\bf=\shortcontbf \let\sl=\shortcontsl \let\tt=\shortconttt \rm \hyphenpenalty = 10000 \advance\baselineskip by 1pt % Open it up a little. \def\numsecentry##1##2##3##4{} \let\appsecentry = \numsecentry \let\unnsecentry = \numsecentry \let\numsubsecentry = \numsecentry \let\appsubsecentry = \numsecentry \let\unnsubsecentry = \numsecentry \let\numsubsubsecentry = \numsecentry \let\appsubsubsecentry = \numsecentry \let\unnsubsubsecentry = \numsecentry \openin 1 \jobname.toc \ifeof 1 \else \readtocfile \fi \closein 1 \vfill \eject \contentsalignmacro % in case @setchapternewpage odd is in effect \endgroup \lastnegativepageno = \pageno \global\pageno = \savepageno } \let\shortcontents = \summarycontents % Typeset the label for a chapter or appendix for the short contents. % The arg is, e.g., `A' for an appendix, or `3' for a chapter. % \def\shortchaplabel#1{% % This space should be enough, since a single number is .5em, and the % widest letter (M) is 1em, at least in the Computer Modern fonts. % But use \hss just in case. % (This space doesn't include the extra space that gets added after % the label; that gets put in by \shortchapentry above.) % % We'd like to right-justify chapter numbers, but that looks strange % with appendix letters. And right-justifying numbers and % left-justifying letters looks strange when there is less than 10 % chapters. Have to read the whole toc once to know how many chapters % there are before deciding ... \hbox to 1em{#1\hss}% } % These macros generate individual entries in the table of contents. % The first argument is the chapter or section name. % The last argument is the page number. % The arguments in between are the chapter number, section number, ... % Chapters, in the main contents. \def\numchapentry#1#2#3#4{\dochapentry{#2\labelspace#1}{#4}} % % Chapters, in the short toc. % See comments in \dochapentry re vbox and related settings. \def\shortchapentry#1#2#3#4{% \tocentry{\shortchaplabel{#2}\labelspace #1}{\doshortpageno\bgroup#4\egroup}% } % Appendices, in the main contents. % Need the word Appendix, and a fixed-size box. % \def\appendixbox#1{% % We use M since it's probably the widest letter. \setbox0 = \hbox{\putwordAppendix{} M}% \hbox to \wd0{\putwordAppendix{} #1\hss}} % \def\appentry#1#2#3#4{\dochapentry{\appendixbox{#2}\labelspace#1}{#4}} % Unnumbered chapters. \def\unnchapentry#1#2#3#4{\dochapentry{#1}{#4}} \def\shortunnchapentry#1#2#3#4{\tocentry{#1}{\doshortpageno\bgroup#4\egroup}} % Sections. \def\numsecentry#1#2#3#4{\dosecentry{#2\labelspace#1}{#4}} \let\appsecentry=\numsecentry \def\unnsecentry#1#2#3#4{\dosecentry{#1}{#4}} % Subsections. \def\numsubsecentry#1#2#3#4{\dosubsecentry{#2\labelspace#1}{#4}} \let\appsubsecentry=\numsubsecentry \def\unnsubsecentry#1#2#3#4{\dosubsecentry{#1}{#4}} % And subsubsections. \def\numsubsubsecentry#1#2#3#4{\dosubsubsecentry{#2\labelspace#1}{#4}} \let\appsubsubsecentry=\numsubsubsecentry \def\unnsubsubsecentry#1#2#3#4{\dosubsubsecentry{#1}{#4}} % This parameter controls the indentation of the various levels. % Same as \defaultparindent. \newdimen\tocindent \tocindent = 15pt % Now for the actual typesetting. In all these, #1 is the text and #2 is the % page number. % % If the toc has to be broken over pages, we want it to be at chapters % if at all possible; hence the \penalty. \def\dochapentry#1#2{% \penalty-300 \vskip1\baselineskip plus.33\baselineskip minus.25\baselineskip \begingroup \chapentryfonts \tocentry{#1}{\dopageno\bgroup#2\egroup}% \endgroup \nobreak\vskip .25\baselineskip plus.1\baselineskip } \def\dosecentry#1#2{\begingroup \secentryfonts \leftskip=\tocindent \tocentry{#1}{\dopageno\bgroup#2\egroup}% \endgroup} \def\dosubsecentry#1#2{\begingroup \subsecentryfonts \leftskip=2\tocindent \tocentry{#1}{\dopageno\bgroup#2\egroup}% \endgroup} \def\dosubsubsecentry#1#2{\begingroup \subsubsecentryfonts \leftskip=3\tocindent \tocentry{#1}{\dopageno\bgroup#2\egroup}% \endgroup} % We use the same \entry macro as for the index entries. \let\tocentry = \entry % Space between chapter (or whatever) number and the title. \def\labelspace{\hskip1em \relax} \def\dopageno#1{{\rm #1}} \def\doshortpageno#1{{\rm #1}} \def\chapentryfonts{\secfonts \rm} \def\secentryfonts{\textfonts} \def\subsecentryfonts{\textfonts} \def\subsubsecentryfonts{\textfonts} \message{environments,} % @foo ... @end foo. % @point{}, @result{}, @expansion{}, @print{}, @equiv{}. % % Since these characters are used in examples, it should be an even number of % \tt widths. Each \tt character is 1en, so two makes it 1em. % \def\point{$\star$} \def\result{\leavevmode\raise.15ex\hbox to 1em{\hfil$\Rightarrow$\hfil}} \def\expansion{\leavevmode\raise.1ex\hbox to 1em{\hfil$\mapsto$\hfil}} \def\print{\leavevmode\lower.1ex\hbox to 1em{\hfil$\dashv$\hfil}} \def\equiv{\leavevmode\lower.1ex\hbox to 1em{\hfil$\ptexequiv$\hfil}} % The @error{} command. % Adapted from the TeXbook's \boxit. % \newbox\errorbox % {\tentt \global\dimen0 = 3em}% Width of the box. \dimen2 = .55pt % Thickness of rules % The text. (`r' is open on the right, `e' somewhat less so on the left.) \setbox0 = \hbox{\kern-.75pt \tensf error\kern-1.5pt} % \setbox\errorbox=\hbox to \dimen0{\hfil \hsize = \dimen0 \advance\hsize by -5.8pt % Space to left+right. \advance\hsize by -2\dimen2 % Rules. \vbox{% \hrule height\dimen2 \hbox{\vrule width\dimen2 \kern3pt % Space to left of text. \vtop{\kern2.4pt \box0 \kern2.4pt}% Space above/below. \kern3pt\vrule width\dimen2}% Space to right. \hrule height\dimen2} \hfil} % \def\error{\leavevmode\lower.7ex\copy\errorbox} % @tex ... @end tex escapes into raw Tex temporarily. % One exception: @ is still an escape character, so that @end tex works. % But \@ or @@ will get a plain tex @ character. \envdef\tex{% \catcode `\\=0 \catcode `\{=1 \catcode `\}=2 \catcode `\$=3 \catcode `\&=4 \catcode `\#=6 \catcode `\^=7 \catcode `\_=8 \catcode `\~=\active \let~=\tie \catcode `\%=14 \catcode `\+=\other \catcode `\"=\other \catcode `\|=\other \catcode `\<=\other \catcode `\>=\other \escapechar=`\\ % \let\b=\ptexb \let\bullet=\ptexbullet \let\c=\ptexc \let\,=\ptexcomma \let\.=\ptexdot \let\dots=\ptexdots \let\equiv=\ptexequiv \let\!=\ptexexclam \let\i=\ptexi \let\indent=\ptexindent \let\noindent=\ptexnoindent \let\{=\ptexlbrace \let\+=\tabalign \let\}=\ptexrbrace \let\/=\ptexslash \let\*=\ptexstar \let\t=\ptext \let\frenchspacing=\plainfrenchspacing % \def\endldots{\mathinner{\ldots\ldots\ldots\ldots}}% \def\enddots{\relax\ifmmode\endldots\else$\mathsurround=0pt \endldots\,$\fi}% \def\@{@}% } % There is no need to define \Etex. % Define @lisp ... @end lisp. % @lisp environment forms a group so it can rebind things, % including the definition of @end lisp (which normally is erroneous). % Amount to narrow the margins by for @lisp. \newskip\lispnarrowing \lispnarrowing=0.4in % This is the definition that ^^M gets inside @lisp, @example, and other % such environments. \null is better than a space, since it doesn't % have any width. \def\lisppar{\null\endgraf} % This space is always present above and below environments. \newskip\envskipamount \envskipamount = 0pt % Make spacing and below environment symmetrical. We use \parskip here % to help in doing that, since in @example-like environments \parskip % is reset to zero; thus the \afterenvbreak inserts no space -- but the % start of the next paragraph will insert \parskip. % \def\aboveenvbreak{{% % =10000 instead of <10000 because of a special case in \itemzzz and % \sectionheading, q.v. \ifnum \lastpenalty=10000 \else \advance\envskipamount by \parskip \endgraf \ifdim\lastskip<\envskipamount \removelastskip % it's not a good place to break if the last penalty was \nobreak % or better ... \ifnum\lastpenalty<10000 \penalty-50 \fi \vskip\envskipamount \fi \fi }} \let\afterenvbreak = \aboveenvbreak % \nonarrowing is a flag. If "set", @lisp etc don't narrow margins; it will % also clear it, so that its embedded environments do the narrowing again. \let\nonarrowing=\relax % @cartouche ... @end cartouche: draw rectangle w/rounded corners around % environment contents. \font\circle=lcircle10 \newdimen\circthick \newdimen\cartouter\newdimen\cartinner \newskip\normbskip\newskip\normpskip\newskip\normlskip \circthick=\fontdimen8\circle % \def\ctl{{\circle\char'013\hskip -6pt}}% 6pt from pl file: 1/2charwidth \def\ctr{{\hskip 6pt\circle\char'010}} \def\cbl{{\circle\char'012\hskip -6pt}} \def\cbr{{\hskip 6pt\circle\char'011}} \def\carttop{\hbox to \cartouter{\hskip\lskip \ctl\leaders\hrule height\circthick\hfil\ctr \hskip\rskip}} \def\cartbot{\hbox to \cartouter{\hskip\lskip \cbl\leaders\hrule height\circthick\hfil\cbr \hskip\rskip}} % \newskip\lskip\newskip\rskip \envdef\cartouche{% \ifhmode\par\fi % can't be in the midst of a paragraph. \startsavinginserts \lskip=\leftskip \rskip=\rightskip \leftskip=0pt\rightskip=0pt % we want these *outside*. \cartinner=\hsize \advance\cartinner by-\lskip \advance\cartinner by-\rskip \cartouter=\hsize \advance\cartouter by 18.4pt % allow for 3pt kerns on either % side, and for 6pt waste from % each corner char, and rule thickness \normbskip=\baselineskip \normpskip=\parskip \normlskip=\lineskip % Flag to tell @lisp, etc., not to narrow margin. \let\nonarrowing = t% \vbox\bgroup \baselineskip=0pt\parskip=0pt\lineskip=0pt \carttop \hbox\bgroup \hskip\lskip \vrule\kern3pt \vbox\bgroup \kern3pt \hsize=\cartinner \baselineskip=\normbskip \lineskip=\normlskip \parskip=\normpskip \vskip -\parskip \comment % For explanation, see the end of \def\group. } \def\Ecartouche{% \ifhmode\par\fi \kern3pt \egroup \kern3pt\vrule \hskip\rskip \egroup \cartbot \egroup \checkinserts } % This macro is called at the beginning of all the @example variants, % inside a group. \def\nonfillstart{% \aboveenvbreak \hfuzz = 12pt % Don't be fussy \sepspaces % Make spaces be word-separators rather than space tokens. \let\par = \lisppar % don't ignore blank lines \obeylines % each line of input is a line of output \parskip = 0pt \parindent = 0pt \emergencystretch = 0pt % don't try to avoid overfull boxes \ifx\nonarrowing\relax \advance \leftskip by \lispnarrowing \exdentamount=\lispnarrowing \else \let\nonarrowing = \relax \fi \let\exdent=\nofillexdent } % If you want all examples etc. small: @set dispenvsize small. % If you want even small examples the full size: @set dispenvsize nosmall. % This affects the following displayed environments: % @example, @display, @format, @lisp % \def\smallword{small} \def\nosmallword{nosmall} \let\SETdispenvsize\relax \def\setnormaldispenv{% \ifx\SETdispenvsize\smallword \smallexamplefonts \rm \fi } \def\setsmalldispenv{% \ifx\SETdispenvsize\nosmallword \else \smallexamplefonts \rm \fi } % We often define two environments, @foo and @smallfoo. % Let's do it by one command: \def\makedispenv #1#2{ \expandafter\envdef\csname#1\endcsname {\setnormaldispenv #2} \expandafter\envdef\csname small#1\endcsname {\setsmalldispenv #2} \expandafter\let\csname E#1\endcsname \afterenvbreak \expandafter\let\csname Esmall#1\endcsname \afterenvbreak } % Define two synonyms: \def\maketwodispenvs #1#2#3{ \makedispenv{#1}{#3} \makedispenv{#2}{#3} } % @lisp: indented, narrowed, typewriter font; @example: same as @lisp. % % @smallexample and @smalllisp: use smaller fonts. % Originally contributed by Pavel@xerox. % \maketwodispenvs {lisp}{example}{% \nonfillstart \tt \let\kbdfont = \kbdexamplefont % Allow @kbd to do something special. \gobble % eat return } % @display/@smalldisplay: same as @lisp except keep current font. % \makedispenv {display}{% \nonfillstart \gobble } % @format/@smallformat: same as @display except don't narrow margins. % \makedispenv{format}{% \let\nonarrowing = t% \nonfillstart \gobble } % @flushleft: same as @format, but doesn't obey \SETdispenvsize. \envdef\flushleft{% \let\nonarrowing = t% \nonfillstart \gobble } \let\Eflushleft = \afterenvbreak % @flushright. % \envdef\flushright{% \let\nonarrowing = t% \nonfillstart \advance\leftskip by 0pt plus 1fill \gobble } \let\Eflushright = \afterenvbreak % @quotation does normal linebreaking (hence we can't use \nonfillstart) % and narrows the margins. We keep \parskip nonzero in general, since % we're doing normal filling. So, when using \aboveenvbreak and % \afterenvbreak, temporarily make \parskip 0. % \envdef\quotation{% {\parskip=0pt \aboveenvbreak}% because \aboveenvbreak inserts \parskip \parindent=0pt % % @cartouche defines \nonarrowing to inhibit narrowing at next level down. \ifx\nonarrowing\relax \advance\leftskip by \lispnarrowing \advance\rightskip by \lispnarrowing \exdentamount = \lispnarrowing \else \let\nonarrowing = \relax \fi \parsearg\quotationlabel } % We have retained a nonzero parskip for the environment, since we're % doing normal filling. % \def\Equotation{% \par \ifx\quotationauthor\undefined\else % indent a bit. \leftline{\kern 2\leftskip \sl ---\quotationauthor}% \fi {\parskip=0pt \afterenvbreak}% } % If we're given an argument, typeset it in bold with a colon after. \def\quotationlabel#1{% \def\temp{#1}% \ifx\temp\empty \else {\bf #1: }% \fi } % LaTeX-like @verbatim...@end verbatim and @verb{...} % If we want to allow any as delimiter, % we need the curly braces so that makeinfo sees the @verb command, eg: % `@verbx...x' would look like the '@verbx' command. --janneke@gnu.org % % [Knuth]: Donald Ervin Knuth, 1996. The TeXbook. % % [Knuth] p.344; only we need to do the other characters Texinfo sets % active too. Otherwise, they get lost as the first character on a % verbatim line. \def\dospecials{% \do\ \do\\\do\{\do\}\do\$\do\&% \do\#\do\^\do\^^K\do\_\do\^^A\do\%\do\~% \do\<\do\>\do\|\do\@\do+\do\"% } % % [Knuth] p. 380 \def\uncatcodespecials{% \def\do##1{\catcode`##1=\other}\dospecials} % % [Knuth] pp. 380,381,391 % Disable Spanish ligatures ?` and !` of \tt font \begingroup \catcode`\`=\active\gdef`{\relax\lq} \endgroup % % Setup for the @verb command. % % Eight spaces for a tab \begingroup \catcode`\^^I=\active \gdef\tabeightspaces{\catcode`\^^I=\active\def^^I{\ \ \ \ \ \ \ \ }} \endgroup % \def\setupverb{% \tt % easiest (and conventionally used) font for verbatim \def\par{\leavevmode\endgraf}% \catcode`\`=\active \tabeightspaces % Respect line breaks, % print special symbols as themselves, and % make each space count % must do in this order: \obeylines \uncatcodespecials \sepspaces } % Setup for the @verbatim environment % % Real tab expansion \newdimen\tabw \setbox0=\hbox{\tt\space} \tabw=8\wd0 % tab amount % \def\starttabbox{\setbox0=\hbox\bgroup} \begingroup \catcode`\^^I=\active \gdef\tabexpand{% \catcode`\^^I=\active \def^^I{\leavevmode\egroup \dimen0=\wd0 % the width so far, or since the previous tab \divide\dimen0 by\tabw \multiply\dimen0 by\tabw % compute previous multiple of \tabw \advance\dimen0 by\tabw % advance to next multiple of \tabw \wd0=\dimen0 \box0 \starttabbox }% } \endgroup \def\setupverbatim{% \let\nonarrowing = t% \nonfillstart % Easiest (and conventionally used) font for verbatim \tt \def\par{\leavevmode\egroup\box0\endgraf}% \catcode`\`=\active \tabexpand % Respect line breaks, % print special symbols as themselves, and % make each space count % must do in this order: \obeylines \uncatcodespecials \sepspaces \everypar{\starttabbox}% } % Do the @verb magic: verbatim text is quoted by unique % delimiter characters. Before first delimiter expect a % right brace, after last delimiter expect closing brace: % % \def\doverb'{'#1'}'{#1} % % [Knuth] p. 382; only eat outer {} \begingroup \catcode`[=1\catcode`]=2\catcode`\{=\other\catcode`\}=\other \gdef\doverb{#1[\def\next##1#1}[##1\endgroup]\next] \endgroup % \def\verb{\begingroup\setupverb\doverb} % % % Do the @verbatim magic: define the macro \doverbatim so that % the (first) argument ends when '@end verbatim' is reached, ie: % % \def\doverbatim#1@end verbatim{#1} % % For Texinfo it's a lot easier than for LaTeX, % because texinfo's \verbatim doesn't stop at '\end{verbatim}': % we need not redefine '\', '{' and '}'. % % Inspired by LaTeX's verbatim command set [latex.ltx] % \begingroup \catcode`\ =\active \obeylines % % ignore everything up to the first ^^M, that's the newline at the end % of the @verbatim input line itself. Otherwise we get an extra blank % line in the output. \xdef\doverbatim#1^^M#2@end verbatim{#2\noexpand\end\gobble verbatim}% % We really want {...\end verbatim} in the body of the macro, but % without the active space; thus we have to use \xdef and \gobble. \endgroup % \envdef\verbatim{% \setupverbatim\doverbatim } \let\Everbatim = \afterenvbreak % @verbatiminclude FILE - insert text of file in verbatim environment. % \def\verbatiminclude{\parseargusing\filenamecatcodes\doverbatiminclude} % \def\doverbatiminclude#1{% {% \makevalueexpandable \setupverbatim \input #1 \afterenvbreak }% } % @copying ... @end copying. % Save the text away for @insertcopying later. % % We save the uninterpreted tokens, rather than creating a box. % Saving the text in a box would be much easier, but then all the % typesetting commands (@smallbook, font changes, etc.) have to be done % beforehand -- and a) we want @copying to be done first in the source % file; b) letting users define the frontmatter in as flexible order as % possible is very desirable. % \def\copying{\checkenv{}\begingroup\scanargctxt\docopying} \def\docopying#1@end copying{\endgroup\def\copyingtext{#1}} % \def\insertcopying{% \begingroup \parindent = 0pt % paragraph indentation looks wrong on title page \scanexp\copyingtext \endgroup } \message{defuns,} % @defun etc. \newskip\defbodyindent \defbodyindent=.4in \newskip\defargsindent \defargsindent=50pt \newskip\deflastargmargin \deflastargmargin=18pt % Start the processing of @deffn: \def\startdefun{% \ifnum\lastpenalty<10000 \medbreak \else % If there are two @def commands in a row, we'll have a \nobreak, % which is there to keep the function description together with its % header. But if there's nothing but headers, we need to allow a % break somewhere. Check specifically for penalty 10002, inserted % by \defargscommonending, instead of 10000, since the sectioning % commands also insert a nobreak penalty, and we don't want to allow % a break between a section heading and a defun. % \ifnum\lastpenalty=10002 \penalty2000 \fi % % Similarly, after a section heading, do not allow a break. % But do insert the glue. \medskip % preceded by discardable penalty, so not a breakpoint \fi % \parindent=0in \advance\leftskip by \defbodyindent \exdentamount=\defbodyindent } \def\dodefunx#1{% % First, check whether we are in the right environment: \checkenv#1% % % As above, allow line break if we have multiple x headers in a row. % It's not a great place, though. \ifnum\lastpenalty=10002 \penalty3000 \fi % % And now, it's time to reuse the body of the original defun: \expandafter\gobbledefun#1% } \def\gobbledefun#1\startdefun{} % \printdefunline \deffnheader{text} % \def\printdefunline#1#2{% \begingroup % call \deffnheader: #1#2 \endheader % common ending: \interlinepenalty = 10000 \advance\rightskip by 0pt plus 1fil \endgraf \nobreak\vskip -\parskip \penalty 10002 % signal to \startdefun and \dodefunx % Some of the @defun-type tags do not enable magic parentheses, % rendering the following check redundant. But we don't optimize. \checkparencounts \endgroup } \def\Edefun{\endgraf\medbreak} % \makedefun{deffn} creates \deffn, \deffnx and \Edeffn; % the only thing remainnig is to define \deffnheader. % \def\makedefun#1{% \expandafter\let\csname E#1\endcsname = \Edefun \edef\temp{\noexpand\domakedefun \makecsname{#1}\makecsname{#1x}\makecsname{#1header}}% \temp } % \domakedefun \deffn \deffnx \deffnheader % % Define \deffn and \deffnx, without parameters. % \deffnheader has to be defined explicitly. % \def\domakedefun#1#2#3{% \envdef#1{% \startdefun \parseargusing\activeparens{\printdefunline#3}% }% \def#2{\dodefunx#1}% \def#3% } %%% Untyped functions: % @deffn category name args \makedefun{deffn}{\deffngeneral{}} % @deffn category class name args \makedefun{defop}#1 {\defopon{#1\ \putwordon}} % \defopon {category on}class name args \def\defopon#1#2 {\deffngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } % \deffngeneral {subind}category name args % \def\deffngeneral#1#2 #3 #4\endheader{% % Remember that \dosubind{fn}{foo}{} is equivalent to \doind{fn}{foo}. \dosubind{fn}{\code{#3}}{#1}% \defname{#2}{}{#3}\magicamp\defunargs{#4\unskip}% } %%% Typed functions: % @deftypefn category type name args \makedefun{deftypefn}{\deftypefngeneral{}} % @deftypeop category class type name args \makedefun{deftypeop}#1 {\deftypeopon{#1\ \putwordon}} % \deftypeopon {category on}class type name args \def\deftypeopon#1#2 {\deftypefngeneral{\putwordon\ \code{#2}}{#1\ \code{#2}} } % \deftypefngeneral {subind}category type name args % \def\deftypefngeneral#1#2 #3 #4 #5\endheader{% \dosubind{fn}{\code{#4}}{#1}% \defname{#2}{#3}{#4}\defunargs{#5\unskip}% } %%% Typed variables: % @deftypevr category type var args \makedefun{deftypevr}{\deftypecvgeneral{}} % @deftypecv category class type var args \makedefun{deftypecv}#1 {\deftypecvof{#1\ \putwordof}} % \deftypecvof {category of}class type var args \def\deftypecvof#1#2 {\deftypecvgeneral{\putwordof\ \code{#2}}{#1\ \code{#2}} } % \deftypecvgeneral {subind}category type var args % \def\deftypecvgeneral#1#2 #3 #4 #5\endheader{% \dosubind{vr}{\code{#4}}{#1}% \defname{#2}{#3}{#4}\defunargs{#5\unskip}% } %%% Untyped variables: % @defvr category var args \makedefun{defvr}#1 {\deftypevrheader{#1} {} } % @defcv category class var args \makedefun{defcv}#1 {\defcvof{#1\ \putwordof}} % \defcvof {category of}class var args \def\defcvof#1#2 {\deftypecvof{#1}#2 {} } %%% Type: % @deftp category name args \makedefun{deftp}#1 #2 #3\endheader{% \doind{tp}{\code{#2}}% \defname{#1}{}{#2}\defunargs{#3\unskip}% } % Remaining @defun-like shortcuts: \makedefun{defun}{\deffnheader{\putwordDeffunc} } \makedefun{defmac}{\deffnheader{\putwordDefmac} } \makedefun{defspec}{\deffnheader{\putwordDefspec} } \makedefun{deftypefun}{\deftypefnheader{\putwordDeffunc} } \makedefun{defvar}{\defvrheader{\putwordDefvar} } \makedefun{defopt}{\defvrheader{\putwordDefopt} } \makedefun{deftypevar}{\deftypevrheader{\putwordDefvar} } \makedefun{defmethod}{\defopon\putwordMethodon} \makedefun{deftypemethod}{\deftypeopon\putwordMethodon} \makedefun{defivar}{\defcvof\putwordInstanceVariableof} \makedefun{deftypeivar}{\deftypecvof\putwordInstanceVariableof} % \defname, which formats the name of the @def (not the args). % #1 is the category, such as "Function". % #2 is the return type, if any. % #3 is the function name. % % We are followed by (but not passed) the arguments, if any. % \def\defname#1#2#3{% % Get the values of \leftskip and \rightskip as they were outside the @def... \advance\leftskip by -\defbodyindent % % How we'll format the type name. Putting it in brackets helps % distinguish it from the body text that may end up on the next line % just below it. \def\temp{#1}% \setbox0=\hbox{\kern\deflastargmargin \ifx\temp\empty\else [\rm\temp]\fi} % % Figure out line sizes for the paragraph shape. % The first line needs space for \box0; but if \rightskip is nonzero, % we need only space for the part of \box0 which exceeds it: \dimen0=\hsize \advance\dimen0 by -\wd0 \advance\dimen0 by \rightskip % The continuations: \dimen2=\hsize \advance\dimen2 by -\defargsindent % (plain.tex says that \dimen1 should be used only as global.) \parshape 2 0in \dimen0 \defargsindent \dimen2 % % Put the type name to the right margin. \noindent \hbox to 0pt{% \hfil\box0 \kern-\hsize % \hsize has to be shortened this way: \kern\leftskip % Intentionally do not respect \rightskip, since we need the space. }% % % Allow all lines to be underfull without complaint: \tolerance=10000 \hbadness=10000 \exdentamount=\defbodyindent {% % defun fonts. We use typewriter by default (used to be bold) because: % . we're printing identifiers, they should be in tt in principle. % . in languages with many accents, such as Czech or French, it's % common to leave accents off identifiers. The result looks ok in % tt, but exceedingly strange in rm. % . we don't want -- and --- to be treated as ligatures. % . this still does not fix the ?` and !` ligatures, but so far no % one has made identifiers using them :). \df \tt \def\temp{#2}% return value type \ifx\temp\empty\else \tclose{\temp} \fi #3% output function name }% {\rm\enskip}% hskip 0.5 em of \tenrm % \boldbrax % arguments will be output next, if any. } % Print arguments in slanted roman (not ttsl), inconsistently with using % tt for the name. This is because literal text is sometimes needed in % the argument list (groff manual), and ttsl and tt are not very % distinguishable. Prevent hyphenation at `-' chars. % \def\defunargs#1{% % use sl by default (not ttsl), % tt for the names. \df \sl \hyphenchar\font=0 % % On the other hand, if an argument has two dashes (for instance), we % want a way to get ttsl. Let's try @var for that. \let\var=\ttslanted #1% \sl\hyphenchar\font=45 } % We want ()&[] to print specially on the defun line. % \def\activeparens{% \catcode`\(=\active \catcode`\)=\active \catcode`\[=\active \catcode`\]=\active \catcode`\&=\active } % Make control sequences which act like normal parenthesis chars. \let\lparen = ( \let\rparen = ) % Be sure that we always have a definition for `(', etc. For example, % if the fn name has parens in it, \boldbrax will not be in effect yet, % so TeX would otherwise complain about undefined control sequence. { \activeparens \global\let(=\lparen \global\let)=\rparen \global\let[=\lbrack \global\let]=\rbrack \global\let& = \& \gdef\boldbrax{\let(=\opnr\let)=\clnr\let[=\lbrb\let]=\rbrb} \gdef\magicamp{\let&=\amprm} } \newcount\parencount % If we encounter &foo, then turn on ()-hacking afterwards \newif\ifampseen \def\amprm#1 {\ampseentrue{\bf\ }} \def\parenfont{% \ifampseen % At the first level, print parens in roman, % otherwise use the default font. \ifnum \parencount=1 \rm \fi \else % The \sf parens (in \boldbrax) actually are a little bolder than % the contained text. This is especially needed for [ and ] . \sf \fi } \def\infirstlevel#1{% \ifampseen \ifnum\parencount=1 #1% \fi \fi } \def\bfafterword#1 {#1 \bf} \def\opnr{% \global\advance\parencount by 1 {\parenfont(}% \infirstlevel \bfafterword } \def\clnr{% {\parenfont)}% \infirstlevel \sl \global\advance\parencount by -1 } \newcount\brackcount \def\lbrb{% \global\advance\brackcount by 1 {\bf[}% } \def\rbrb{% {\bf]}% \global\advance\brackcount by -1 } \def\checkparencounts{% \ifnum\parencount=0 \else \badparencount \fi \ifnum\brackcount=0 \else \badbrackcount \fi } \def\badparencount{% \errmessage{Unbalanced parentheses in @def}% \global\parencount=0 } \def\badbrackcount{% \errmessage{Unbalanced square braces in @def}% \global\brackcount=0 } \message{macros,} % @macro. % To do this right we need a feature of e-TeX, \scantokens, % which we arrange to emulate with a temporary file in ordinary TeX. \ifx\eTeXversion\undefined \newwrite\macscribble \def\scantokens#1{% \toks0={#1}% \immediate\openout\macscribble=\jobname.tmp \immediate\write\macscribble{\the\toks0}% \immediate\closeout\macscribble \input \jobname.tmp } \fi \def\scanmacro#1{% \begingroup \newlinechar`\^^M \let\xeatspaces\eatspaces % Undo catcode changes of \startcontents and \doprintindex % When called from @insertcopying or (short)caption, we need active % backslash to get it printed correctly. Previously, we had % \catcode`\\=\other instead. We'll see whether a problem appears % with macro expansion. --kasal, 19aug04 \catcode`\@=0 \catcode`\\=\active \escapechar=`\@ % ... and \example \spaceisspace % % Append \endinput to make sure that TeX does not see the ending newline. % % I've verified that it is necessary both for e-TeX and for ordinary TeX % --kasal, 29nov03 \scantokens{#1\endinput}% \endgroup } \def\scanexp#1{% \edef\temp{\noexpand\scanmacro{#1}}% \temp } \newcount\paramno % Count of parameters \newtoks\macname % Macro name \newif\ifrecursive % Is it recursive? % List of all defined macros in the form % \definedummyword\macro1\definedummyword\macro2... % Currently is also contains all @aliases; the list can be split % if there is a need. \def\macrolist{} % Add the macro to \macrolist \def\addtomacrolist#1{\expandafter \addtomacrolistxxx \csname#1\endcsname} \def\addtomacrolistxxx#1{% \toks0 = \expandafter{\macrolist\definedummyword#1}% \xdef\macrolist{\the\toks0}% } % Utility routines. % This does \let #1 = #2, with \csnames; that is, % \let \csname#1\endcsname = \csname#2\endcsname % (except of course we have to play expansion games). % \def\cslet#1#2{% \expandafter\let \csname#1\expandafter\endcsname \csname#2\endcsname } % Trim leading and trailing spaces off a string. % Concepts from aro-bend problem 15 (see CTAN). {\catcode`\@=11 \gdef\eatspaces #1{\expandafter\trim@\expandafter{#1 }} \gdef\trim@ #1{\trim@@ @#1 @ #1 @ @@} \gdef\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @} \def\unbrace#1{#1} \unbrace{\gdef\trim@@@ #1 } #2@{#1} } % Trim a single trailing ^^M off a string. {\catcode`\^^M=\other \catcode`\Q=3% \gdef\eatcr #1{\eatcra #1Q^^MQ}% \gdef\eatcra#1^^MQ{\eatcrb#1Q}% \gdef\eatcrb#1Q#2Q{#1}% } % Macro bodies are absorbed as an argument in a context where % all characters are catcode 10, 11 or 12, except \ which is active % (as in normal texinfo). It is necessary to change the definition of \. % It's necessary to have hard CRs when the macro is executed. This is % done by making ^^M (\endlinechar) catcode 12 when reading the macro % body, and then making it the \newlinechar in \scanmacro. \def\scanctxt{% \catcode`\"=\other \catcode`\+=\other \catcode`\<=\other \catcode`\>=\other \catcode`\@=\other \catcode`\^=\other \catcode`\_=\other \catcode`\|=\other \catcode`\~=\other } \def\scanargctxt{% \scanctxt \catcode`\\=\other \catcode`\^^M=\other } \def\macrobodyctxt{% \scanctxt \catcode`\{=\other \catcode`\}=\other \catcode`\^^M=\other \usembodybackslash } \def\macroargctxt{% \scanctxt \catcode`\\=\other } % \mbodybackslash is the definition of \ in @macro bodies. % It maps \foo\ => \csname macarg.foo\endcsname => #N % where N is the macro parameter number. % We define \csname macarg.\endcsname to be \realbackslash, so % \\ in macro replacement text gets you a backslash. {\catcode`@=0 @catcode`@\=@active @gdef@usembodybackslash{@let\=@mbodybackslash} @gdef@mbodybackslash#1\{@csname macarg.#1@endcsname} } \expandafter\def\csname macarg.\endcsname{\realbackslash} \def\macro{\recursivefalse\parsearg\macroxxx} \def\rmacro{\recursivetrue\parsearg\macroxxx} \def\macroxxx#1{% \getargs{#1}% now \macname is the macname and \argl the arglist \ifx\argl\empty % no arguments \paramno=0% \else \expandafter\parsemargdef \argl;% \fi \if1\csname ismacro.\the\macname\endcsname \message{Warning: redefining \the\macname}% \else \expandafter\ifx\csname \the\macname\endcsname \relax \else \errmessage{Macro name \the\macname\space already defined}\fi \global\cslet{macsave.\the\macname}{\the\macname}% \global\expandafter\let\csname ismacro.\the\macname\endcsname=1% \addtomacrolist{\the\macname}% \fi \begingroup \macrobodyctxt \ifrecursive \expandafter\parsermacbody \else \expandafter\parsemacbody \fi} \parseargdef\unmacro{% \if1\csname ismacro.#1\endcsname \global\cslet{#1}{macsave.#1}% \global\expandafter\let \csname ismacro.#1\endcsname=0% % Remove the macro name from \macrolist: \begingroup \expandafter\let\csname#1\endcsname \relax \let\definedummyword\unmacrodo \xdef\macrolist{\macrolist}% \endgroup \else \errmessage{Macro #1 not defined}% \fi } % Called by \do from \dounmacro on each macro. The idea is to omit any % macro definitions that have been changed to \relax. % \def\unmacrodo#1{% \ifx #1\relax % remove this \else \noexpand\definedummyword \noexpand#1% \fi } % This makes use of the obscure feature that if the last token of a % is #, then the preceding argument is delimited by % an opening brace, and that opening brace is not consumed. \def\getargs#1{\getargsxxx#1{}} \def\getargsxxx#1#{\getmacname #1 \relax\getmacargs} \def\getmacname #1 #2\relax{\macname={#1}} \def\getmacargs#1{\def\argl{#1}} % Parse the optional {params} list. Set up \paramno and \paramlist % so \defmacro knows what to do. Define \macarg.blah for each blah % in the params list, to be ##N where N is the position in that list. % That gets used by \mbodybackslash (above). % We need to get `macro parameter char #' into several definitions. % The technique used is stolen from LaTeX: let \hash be something % unexpandable, insert that wherever you need a #, and then redefine % it to # just before using the token list produced. % % The same technique is used to protect \eatspaces till just before % the macro is used. \def\parsemargdef#1;{\paramno=0\def\paramlist{}% \let\hash\relax\let\xeatspaces\relax\parsemargdefxxx#1,;,} \def\parsemargdefxxx#1,{% \if#1;\let\next=\relax \else \let\next=\parsemargdefxxx \advance\paramno by 1% \expandafter\edef\csname macarg.\eatspaces{#1}\endcsname {\xeatspaces{\hash\the\paramno}}% \edef\paramlist{\paramlist\hash\the\paramno,}% \fi\next} % These two commands read recursive and nonrecursive macro bodies. % (They're different since rec and nonrec macros end differently.) \long\def\parsemacbody#1@end macro% {\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% \long\def\parsermacbody#1@end rmacro% {\xdef\temp{\eatcr{#1}}\endgroup\defmacro}% % This defines the macro itself. There are six cases: recursive and % nonrecursive macros of zero, one, and many arguments. % Much magic with \expandafter here. % \xdef is used so that macro definitions will survive the file % they're defined in; @include reads the file inside a group. \def\defmacro{% \let\hash=##% convert placeholders to macro parameter chars \ifrecursive \ifcase\paramno % 0 \expandafter\xdef\csname\the\macname\endcsname{% \noexpand\scanmacro{\temp}}% \or % 1 \expandafter\xdef\csname\the\macname\endcsname{% \bgroup\noexpand\macroargctxt \noexpand\braceorline \expandafter\noexpand\csname\the\macname xxx\endcsname}% \expandafter\xdef\csname\the\macname xxx\endcsname##1{% \egroup\noexpand\scanmacro{\temp}}% \else % many \expandafter\xdef\csname\the\macname\endcsname{% \bgroup\noexpand\macroargctxt \noexpand\csname\the\macname xx\endcsname}% \expandafter\xdef\csname\the\macname xx\endcsname##1{% \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% \expandafter\expandafter \expandafter\xdef \expandafter\expandafter \csname\the\macname xxx\endcsname \paramlist{\egroup\noexpand\scanmacro{\temp}}% \fi \else \ifcase\paramno % 0 \expandafter\xdef\csname\the\macname\endcsname{% \noexpand\norecurse{\the\macname}% \noexpand\scanmacro{\temp}\egroup}% \or % 1 \expandafter\xdef\csname\the\macname\endcsname{% \bgroup\noexpand\macroargctxt \noexpand\braceorline \expandafter\noexpand\csname\the\macname xxx\endcsname}% \expandafter\xdef\csname\the\macname xxx\endcsname##1{% \egroup \noexpand\norecurse{\the\macname}% \noexpand\scanmacro{\temp}\egroup}% \else % many \expandafter\xdef\csname\the\macname\endcsname{% \bgroup\noexpand\macroargctxt \expandafter\noexpand\csname\the\macname xx\endcsname}% \expandafter\xdef\csname\the\macname xx\endcsname##1{% \expandafter\noexpand\csname\the\macname xxx\endcsname ##1,}% \expandafter\expandafter \expandafter\xdef \expandafter\expandafter \csname\the\macname xxx\endcsname \paramlist{% \egroup \noexpand\norecurse{\the\macname}% \noexpand\scanmacro{\temp}\egroup}% \fi \fi} \def\norecurse#1{\bgroup\cslet{#1}{macsave.#1}} % \braceorline decides whether the next nonwhitespace character is a % {. If so it reads up to the closing }, if not, it reads the whole % line. Whatever was read is then fed to the next control sequence % as an argument (by \parsebrace or \parsearg) \def\braceorline#1{\let\macnamexxx=#1\futurelet\nchar\braceorlinexxx} \def\braceorlinexxx{% \ifx\nchar\bgroup\else \expandafter\parsearg \fi \macnamexxx} % @alias. % We need some trickery to remove the optional spaces around the equal % sign. Just make them active and then expand them all to nothing. \def\alias{\parseargusing\obeyspaces\aliasxxx} \def\aliasxxx #1{\aliasyyy#1\relax} \def\aliasyyy #1=#2\relax{% {% \expandafter\let\obeyedspace=\empty \addtomacrolist{#1}% \xdef\next{\global\let\makecsname{#1}=\makecsname{#2}}% }% \next } \message{cross references,} \newwrite\auxfile \newif\ifhavexrefs % True if xref values are known. \newif\ifwarnedxrefs % True if we warned once that they aren't known. % @inforef is relatively simple. \def\inforef #1{\inforefzzz #1,,,,**} \def\inforefzzz #1,#2,#3,#4**{\putwordSee{} \putwordInfo{} \putwordfile{} \file{\ignorespaces #3{}}, node \samp{\ignorespaces#1{}}} % @node's only job in TeX is to define \lastnode, which is used in % cross-references. The @node line might or might not have commas, and % might or might not have spaces before the first comma, like: % @node foo , bar , ... % We don't want such trailing spaces in the node name. % \parseargdef\node{\checkenv{}\donode #1 ,\finishnodeparse} % % also remove a trailing comma, in case of something like this: % @node Help-Cross, , , Cross-refs \def\donode#1 ,#2\finishnodeparse{\dodonode #1,\finishnodeparse} \def\dodonode#1,#2\finishnodeparse{\gdef\lastnode{#1}} \let\nwnode=\node \let\lastnode=\empty % Write a cross-reference definition for the current node. #1 is the % type (Ynumbered, Yappendix, Ynothing). % \def\donoderef#1{% \ifx\lastnode\empty\else \setref{\lastnode}{#1}% \global\let\lastnode=\empty \fi } % @anchor{NAME} -- define xref target at arbitrary point. % \newcount\savesfregister % \def\savesf{\relax \ifhmode \savesfregister=\spacefactor \fi} \def\restoresf{\relax \ifhmode \spacefactor=\savesfregister \fi} \def\anchor#1{\savesf \setref{#1}{Ynothing}\restoresf \ignorespaces} % \setref{NAME}{SNT} defines a cross-reference point NAME (a node or an % anchor), which consists of three parts: % 1) NAME-title - the current sectioning name taken from \thissection, % or the anchor name. % 2) NAME-snt - section number and type, passed as the SNT arg, or % empty for anchors. % 3) NAME-pg - the page number. % % This is called from \donoderef, \anchor, and \dofloat. In the case of % floats, there is an additional part, which is not written here: % 4) NAME-lof - the text as it should appear in a @listoffloats. % \def\setref#1#2{% \pdfmkdest{#1}% \iflinks {% \atdummies % preserve commands, but don't expand them \edef\writexrdef##1##2{% \write\auxfile{@xrdef{#1-% #1 of \setref, expanded by the \edef ##1}{##2}}% these are parameters of \writexrdef }% \toks0 = \expandafter{\thissection}% \immediate \writexrdef{title}{\the\toks0 }% \immediate \writexrdef{snt}{\csname #2\endcsname}% \Ynumbered etc. \writexrdef{pg}{\folio}% will be written later, during \shipout }% \fi } % @xref, @pxref, and @ref generate cross-references. For \xrefX, #1 is % the node name, #2 the name of the Info cross-reference, #3 the printed % node name, #4 the name of the Info file, #5 the name of the printed % manual. All but the node name can be omitted. % \def\pxref#1{\putwordsee{} \xrefX[#1,,,,,,,]} \def\xref#1{\putwordSee{} \xrefX[#1,,,,,,,]} \def\ref#1{\xrefX[#1,,,,,,,]} \def\xrefX[#1,#2,#3,#4,#5,#6]{\begingroup \unsepspaces \def\printedmanual{\ignorespaces #5}% \def\printedrefname{\ignorespaces #3}% \setbox1=\hbox{\printedmanual\unskip}% \setbox0=\hbox{\printedrefname\unskip}% \ifdim \wd0 = 0pt % No printed node name was explicitly given. \expandafter\ifx\csname SETxref-automatic-section-title\endcsname\relax % Use the node name inside the square brackets. \def\printedrefname{\ignorespaces #1}% \else % Use the actual chapter/section title appear inside % the square brackets. Use the real section title if we have it. \ifdim \wd1 > 0pt % It is in another manual, so we don't have it. \def\printedrefname{\ignorespaces #1}% \else \ifhavexrefs % We know the real title if we have the xref values. \def\printedrefname{\refx{#1-title}{}}% \else % Otherwise just copy the Info node name. \def\printedrefname{\ignorespaces #1}% \fi% \fi \fi \fi % % Make link in pdf output. \ifpdf \leavevmode \getfilename{#4}% {\turnoffactive % See comments at \activebackslashdouble. {\activebackslashdouble \xdef\pdfxrefdest{#1}% \backslashparens\pdfxrefdest}% % \ifnum\filenamelength>0 \startlink attr{/Border [0 0 0]}% goto file{\the\filename.pdf} name{\pdfxrefdest}% \else \startlink attr{/Border [0 0 0]}% goto name{\pdfmkpgn{\pdfxrefdest}}% \fi }% \linkcolor \fi % % Float references are printed completely differently: "Figure 1.2" % instead of "[somenode], p.3". We distinguish them by the % LABEL-title being set to a magic string. {% % Have to otherify everything special to allow the \csname to % include an _ in the xref name, etc. \indexnofonts \turnoffactive \expandafter\global\expandafter\let\expandafter\Xthisreftitle \csname XR#1-title\endcsname }% \iffloat\Xthisreftitle % If the user specified the print name (third arg) to the ref, % print it instead of our usual "Figure 1.2". \ifdim\wd0 = 0pt \refx{#1-snt}{}% \else \printedrefname \fi % % if the user also gave the printed manual name (fifth arg), append % "in MANUALNAME". \ifdim \wd1 > 0pt \space \putwordin{} \cite{\printedmanual}% \fi \else % node/anchor (non-float) references. % % If we use \unhbox0 and \unhbox1 to print the node names, TeX does not % insert empty discretionaries after hyphens, which means that it will % not find a line break at a hyphen in a node names. Since some manuals % are best written with fairly long node names, containing hyphens, this % is a loss. Therefore, we give the text of the node name again, so it % is as if TeX is seeing it for the first time. \ifdim \wd1 > 0pt \putwordsection{} ``\printedrefname'' \putwordin{} \cite{\printedmanual}% \else % _ (for example) has to be the character _ for the purposes of the % control sequence corresponding to the node, but it has to expand % into the usual \leavevmode...\vrule stuff for purposes of % printing. So we \turnoffactive for the \refx-snt, back on for the % printing, back off for the \refx-pg. {\turnoffactive % Only output a following space if the -snt ref is nonempty; for % @unnumbered and @anchor, it won't be. \setbox2 = \hbox{\ignorespaces \refx{#1-snt}{}}% \ifdim \wd2 > 0pt \refx{#1-snt}\space\fi }% % output the `[mynode]' via a macro so it can be overridden. \xrefprintnodename\printedrefname % % But we always want a comma and a space: ,\space % % output the `page 3'. \turnoffactive \putwordpage\tie\refx{#1-pg}{}% \fi \fi \endlink \endgroup} % This macro is called from \xrefX for the `[nodename]' part of xref % output. It's a separate macro only so it can be changed more easily, % since square brackets don't work well in some documents. Particularly % one that Bob is working on :). % \def\xrefprintnodename#1{[#1]} % Things referred to by \setref. % \def\Ynothing{} \def\Yomitfromtoc{} \def\Ynumbered{% \ifnum\secno=0 \putwordChapter@tie \the\chapno \else \ifnum\subsecno=0 \putwordSection@tie \the\chapno.\the\secno \else \ifnum\subsubsecno=0 \putwordSection@tie \the\chapno.\the\secno.\the\subsecno \else \putwordSection@tie \the\chapno.\the\secno.\the\subsecno.\the\subsubsecno \fi\fi\fi } \def\Yappendix{% \ifnum\secno=0 \putwordAppendix@tie @char\the\appendixno{}% \else \ifnum\subsecno=0 \putwordSection@tie @char\the\appendixno.\the\secno \else \ifnum\subsubsecno=0 \putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno \else \putwordSection@tie @char\the\appendixno.\the\secno.\the\subsecno.\the\subsubsecno \fi\fi\fi } % Define \refx{NAME}{SUFFIX} to reference a cross-reference string named NAME. % If its value is nonempty, SUFFIX is output afterward. % \def\refx#1#2{% {% \indexnofonts \otherbackslash \expandafter\global\expandafter\let\expandafter\thisrefX \csname XR#1\endcsname }% \ifx\thisrefX\relax % If not defined, say something at least. \angleleft un\-de\-fined\angleright \iflinks \ifhavexrefs \message{\linenumber Undefined cross reference `#1'.}% \else \ifwarnedxrefs\else \global\warnedxrefstrue \message{Cross reference values unknown; you must run TeX again.}% \fi \fi \fi \else % It's defined, so just use it. \thisrefX \fi #2% Output the suffix in any case. } % This is the macro invoked by entries in the aux file. Usually it's % just a \def (we prepend XR to the control sequence name to avoid % collisions). But if this is a float type, we have more work to do. % \def\xrdef#1#2{% \expandafter\gdef\csname XR#1\endcsname{#2}% remember this xref value. % % Was that xref control sequence that we just defined for a float? \expandafter\iffloat\csname XR#1\endcsname % it was a float, and we have the (safe) float type in \iffloattype. \expandafter\let\expandafter\floatlist \csname floatlist\iffloattype\endcsname % % Is this the first time we've seen this float type? \expandafter\ifx\floatlist\relax \toks0 = {\do}% yes, so just \do \else % had it before, so preserve previous elements in list. \toks0 = \expandafter{\floatlist\do}% \fi % % Remember this xref in the control sequence \floatlistFLOATTYPE, % for later use in \listoffloats. \expandafter\xdef\csname floatlist\iffloattype\endcsname{\the\toks0{#1}}% \fi } % Read the last existing aux file, if any. No error if none exists. % \def\tryauxfile{% \openin 1 \jobname.aux \ifeof 1 \else \readdatafile{aux}% \global\havexrefstrue \fi \closein 1 } \def\setupdatafile{% \catcode`\^^@=\other \catcode`\^^A=\other \catcode`\^^B=\other \catcode`\^^C=\other \catcode`\^^D=\other \catcode`\^^E=\other \catcode`\^^F=\other \catcode`\^^G=\other \catcode`\^^H=\other \catcode`\^^K=\other \catcode`\^^L=\other \catcode`\^^N=\other \catcode`\^^P=\other \catcode`\^^Q=\other \catcode`\^^R=\other \catcode`\^^S=\other \catcode`\^^T=\other \catcode`\^^U=\other \catcode`\^^V=\other \catcode`\^^W=\other \catcode`\^^X=\other \catcode`\^^Z=\other \catcode`\^^[=\other \catcode`\^^\=\other \catcode`\^^]=\other \catcode`\^^^=\other \catcode`\^^_=\other % It was suggested to set the catcode of ^ to 7, which would allow ^^e4 etc. % in xref tags, i.e., node names. But since ^^e4 notation isn't % supported in the main text, it doesn't seem desirable. Furthermore, % that is not enough: for node names that actually contain a ^ % character, we would end up writing a line like this: 'xrdef {'hat % b-title}{'hat b} and \xrdef does a \csname...\endcsname on the first % argument, and \hat is not an expandable control sequence. It could % all be worked out, but why? Either we support ^^ or we don't. % % The other change necessary for this was to define \auxhat: % \def\auxhat{\def^{'hat }}% extra space so ok if followed by letter % and then to call \auxhat in \setq. % \catcode`\^=\other % % Special characters. Should be turned off anyway, but... \catcode`\~=\other \catcode`\[=\other \catcode`\]=\other \catcode`\"=\other \catcode`\_=\other \catcode`\|=\other \catcode`\<=\other \catcode`\>=\other \catcode`\$=\other \catcode`\#=\other \catcode`\&=\other \catcode`\%=\other \catcode`+=\other % avoid \+ for paranoia even though we've turned it off % % This is to support \ in node names and titles, since the \ % characters end up in a \csname. It's easier than % leaving it active and making its active definition an actual \ % character. What I don't understand is why it works in the *value* % of the xrdef. Seems like it should be a catcode12 \, and that % should not typeset properly. But it works, so I'm moving on for % now. --karl, 15jan04. \catcode`\\=\other % % Make the characters 128-255 be printing characters. {% \count1=128 \def\loop{% \catcode\count1=\other \advance\count1 by 1 \ifnum \count1<256 \loop \fi }% }% % % @ is our escape character in .aux files, and we need braces. \catcode`\{=1 \catcode`\}=2 \catcode`\@=0 } \def\readdatafile#1{% \begingroup \setupdatafile \input\jobname.#1 \endgroup} \message{insertions,} % including footnotes. \newcount \footnoteno % The trailing space in the following definition for supereject is % vital for proper filling; pages come out unaligned when you do a % pagealignmacro call if that space before the closing brace is % removed. (Generally, numeric constants should always be followed by a % space to prevent strange expansion errors.) \def\supereject{\par\penalty -20000\footnoteno =0 } % @footnotestyle is meaningful for info output only. \let\footnotestyle=\comment {\catcode `\@=11 % % Auto-number footnotes. Otherwise like plain. \gdef\footnote{% \let\indent=\ptexindent \let\noindent=\ptexnoindent \global\advance\footnoteno by \@ne \edef\thisfootno{$^{\the\footnoteno}$}% % % In case the footnote comes at the end of a sentence, preserve the % extra spacing after we do the footnote number. \let\@sf\empty \ifhmode\edef\@sf{\spacefactor\the\spacefactor}\ptexslash\fi % % Remove inadvertent blank space before typesetting the footnote number. \unskip \thisfootno\@sf \dofootnote }% % Don't bother with the trickery in plain.tex to not require the % footnote text as a parameter. Our footnotes don't need to be so general. % % Oh yes, they do; otherwise, @ifset (and anything else that uses % \parseargline) fails inside footnotes because the tokens are fixed when % the footnote is read. --karl, 16nov96. % \gdef\dofootnote{% \insert\footins\bgroup % We want to typeset this text as a normal paragraph, even if the % footnote reference occurs in (for example) a display environment. % So reset some parameters. \hsize=\pagewidth \interlinepenalty\interfootnotelinepenalty \splittopskip\ht\strutbox % top baseline for broken footnotes \splitmaxdepth\dp\strutbox \floatingpenalty\@MM \leftskip\z@skip \rightskip\z@skip \spaceskip\z@skip \xspaceskip\z@skip \parindent\defaultparindent % \smallfonts \rm % % Because we use hanging indentation in footnotes, a @noindent appears % to exdent this text, so make it be a no-op. makeinfo does not use % hanging indentation so @noindent can still be needed within footnote % text after an @example or the like (not that this is good style). \let\noindent = \relax % % Hang the footnote text off the number. Use \everypar in case the % footnote extends for more than one paragraph. \everypar = {\hang}% \textindent{\thisfootno}% % % Don't crash into the line above the footnote text. Since this % expands into a box, it must come within the paragraph, lest it % provide a place where TeX can split the footnote. \footstrut \futurelet\next\fo@t } }%end \catcode `\@=11 % In case a @footnote appears in a vbox, save the footnote text and create % the real \insert just after the vbox finished. Otherwise, the insertion % would be lost. % Similarily, if a @footnote appears inside an alignment, save the footnote % text to a box and make the \insert when a row of the table is finished. % And the same can be done for other insert classes. --kasal, 16nov03. % Replace the \insert primitive by a cheating macro. % Deeper inside, just make sure that the saved insertions are not spilled % out prematurely. % \def\startsavinginserts{% \ifx \insert\ptexinsert \let\insert\saveinsert \else \let\checkinserts\relax \fi } % This \insert replacement works for both \insert\footins{foo} and % \insert\footins\bgroup foo\egroup, but it doesn't work for \insert27{foo}. % \def\saveinsert#1{% \edef\next{\noexpand\savetobox \makeSAVEname#1}% \afterassignment\next % swallow the left brace \let\temp = } \def\makeSAVEname#1{\makecsname{SAVE\expandafter\gobble\string#1}} \def\savetobox#1{\global\setbox#1 = \vbox\bgroup \unvbox#1} \def\checksaveins#1{\ifvoid#1\else \placesaveins#1\fi} \def\placesaveins#1{% \ptexinsert \csname\expandafter\gobblesave\string#1\endcsname {\box#1}% } % eat @SAVE -- beware, all of them have catcode \other: { \def\dospecials{\do S\do A\do V\do E} \uncatcodespecials % ;-) \gdef\gobblesave @SAVE{} } % initialization: \def\newsaveins #1{% \edef\next{\noexpand\newsaveinsX \makeSAVEname#1}% \next } \def\newsaveinsX #1{% \csname newbox\endcsname #1% \expandafter\def\expandafter\checkinserts\expandafter{\checkinserts \checksaveins #1}% } % initialize: \let\checkinserts\empty \newsaveins\footins \newsaveins\margin % @image. We use the macros from epsf.tex to support this. % If epsf.tex is not installed and @image is used, we complain. % % Check for and read epsf.tex up front. If we read it only at @image % time, we might be inside a group, and then its definitions would get % undone and the next image would fail. \openin 1 = epsf.tex \ifeof 1 \else % Do not bother showing banner with epsf.tex v2.7k (available in % doc/epsf.tex and on ctan). \def\epsfannounce{\toks0 = }% \input epsf.tex \fi \closein 1 % % We will only complain once about lack of epsf.tex. \newif\ifwarnednoepsf \newhelp\noepsfhelp{epsf.tex must be installed for images to work. It is also included in the Texinfo distribution, or you can get it from ftp://tug.org/tex/epsf.tex.} % \def\image#1{% \ifx\epsfbox\undefined \ifwarnednoepsf \else \errhelp = \noepsfhelp \errmessage{epsf.tex not found, images will be ignored}% \global\warnednoepsftrue \fi \else \imagexxx #1,,,,,\finish \fi } % % Arguments to @image: % #1 is (mandatory) image filename; we tack on .eps extension. % #2 is (optional) width, #3 is (optional) height. % #4 is (ignored optional) html alt text. % #5 is (ignored optional) extension. % #6 is just the usual extra ignored arg for parsing this stuff. \newif\ifimagevmode \def\imagexxx#1,#2,#3,#4,#5,#6\finish{\begingroup \catcode`\^^M = 5 % in case we're inside an example \normalturnoffactive % allow _ et al. in names % If the image is by itself, center it. \ifvmode \imagevmodetrue \nobreak\bigskip % Usually we'll have text after the image which will insert % \parskip glue, so insert it here too to equalize the space % above and below. \nobreak\vskip\parskip \nobreak \line\bgroup \fi % % Output the image. \ifpdf \dopdfimage{#1}{#2}{#3}% \else % \epsfbox itself resets \epsf?size at each figure. \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \epsfxsize=#2\relax \fi \setbox0 = \hbox{\ignorespaces #3}\ifdim\wd0 > 0pt \epsfysize=#3\relax \fi \epsfbox{#1.eps}% \fi % \ifimagevmode \egroup \bigbreak \fi % space after the image \endgroup} % @float FLOATTYPE,LABEL,LOC ... @end float for displayed figures, tables, % etc. We don't actually implement floating yet, we always include the % float "here". But it seemed the best name for the future. % \envparseargdef\float{\eatcommaspace\eatcommaspace\dofloat#1, , ,\finish} % There may be a space before second and/or third parameter; delete it. \def\eatcommaspace#1, {#1,} % #1 is the optional FLOATTYPE, the text label for this float, typically % "Figure", "Table", "Example", etc. Can't contain commas. If omitted, % this float will not be numbered and cannot be referred to. % % #2 is the optional xref label. Also must be present for the float to % be referable. % % #3 is the optional positioning argument; for now, it is ignored. It % will somehow specify the positions allowed to float to (here, top, bottom). % % We keep a separate counter for each FLOATTYPE, which we reset at each % chapter-level command. \let\resetallfloatnos=\empty % \def\dofloat#1,#2,#3,#4\finish{% \let\thiscaption=\empty \let\thisshortcaption=\empty % % don't lose footnotes inside @float. % % BEWARE: when the floats start float, we have to issue warning whenever an % insert appears inside a float which could possibly float. --kasal, 26may04 % \startsavinginserts % % We can't be used inside a paragraph. \par % \vtop\bgroup \def\floattype{#1}% \def\floatlabel{#2}% \def\floatloc{#3}% we do nothing with this yet. % \ifx\floattype\empty \let\safefloattype=\empty \else {% % the floattype might have accents or other special characters, % but we need to use it in a control sequence name. \indexnofonts \turnoffactive \xdef\safefloattype{\floattype}% }% \fi % % If label is given but no type, we handle that as the empty type. \ifx\floatlabel\empty \else % We want each FLOATTYPE to be numbered separately (Figure 1, % Table 1, Figure 2, ...). (And if no label, no number.) % \expandafter\getfloatno\csname\safefloattype floatno\endcsname \global\advance\floatno by 1 % {% % This magic value for \thissection is output by \setref as the % XREFLABEL-title value. \xrefX uses it to distinguish float % labels (which have a completely different output format) from % node and anchor labels. And \xrdef uses it to construct the % lists of floats. % \edef\thissection{\floatmagic=\safefloattype}% \setref{\floatlabel}{Yfloat}% }% \fi % % start with \parskip glue, I guess. \vskip\parskip % % Don't suppress indentation if a float happens to start a section. \restorefirstparagraphindent } % we have these possibilities: % @float Foo,lbl & @caption{Cap}: Foo 1.1: Cap % @float Foo,lbl & no caption: Foo 1.1 % @float Foo & @caption{Cap}: Foo: Cap % @float Foo & no caption: Foo % @float ,lbl & Caption{Cap}: 1.1: Cap % @float ,lbl & no caption: 1.1 % @float & @caption{Cap}: Cap % @float & no caption: % \def\Efloat{% \let\floatident = \empty % % In all cases, if we have a float type, it comes first. \ifx\floattype\empty \else \def\floatident{\floattype}\fi % % If we have an xref label, the number comes next. \ifx\floatlabel\empty \else \ifx\floattype\empty \else % if also had float type, need tie first. \appendtomacro\floatident{\tie}% \fi % the number. \appendtomacro\floatident{\chaplevelprefix\the\floatno}% \fi % % Start the printed caption with what we've constructed in % \floatident, but keep it separate; we need \floatident again. \let\captionline = \floatident % \ifx\thiscaption\empty \else \ifx\floatident\empty \else \appendtomacro\captionline{: }% had ident, so need a colon between \fi % % caption text. \appendtomacro\captionline{\scanexp\thiscaption}% \fi % % If we have anything to print, print it, with space before. % Eventually this needs to become an \insert. \ifx\captionline\empty \else \vskip.5\parskip \captionline % % Space below caption. \vskip\parskip \fi % % If have an xref label, write the list of floats info. Do this % after the caption, to avoid chance of it being a breakpoint. \ifx\floatlabel\empty \else % Write the text that goes in the lof to the aux file as % \floatlabel-lof. Besides \floatident, we include the short % caption if specified, else the full caption if specified, else nothing. {% \atdummies % % since we read the caption text in the macro world, where ^^M % is turned into a normal character, we have to scan it back, so % we don't write the literal three characters "^^M" into the aux file. \scanexp{% \xdef\noexpand\gtemp{% \ifx\thisshortcaption\empty \thiscaption \else \thisshortcaption \fi }% }% \immediate\write\auxfile{@xrdef{\floatlabel-lof}{\floatident \ifx\gtemp\empty \else : \gtemp \fi}}% }% \fi \egroup % end of \vtop % % place the captured inserts % % BEWARE: when the floats start floating, we have to issue warning % whenever an insert appears inside a float which could possibly % float. --kasal, 26may04 % \checkinserts } % Append the tokens #2 to the definition of macro #1, not expanding either. % \def\appendtomacro#1#2{% \expandafter\def\expandafter#1\expandafter{#1#2}% } % @caption, @shortcaption % \def\caption{\docaption\thiscaption} \def\shortcaption{\docaption\thisshortcaption} \def\docaption{\checkenv\float \bgroup\scanargctxt\defcaption} \def\defcaption#1#2{\egroup \def#1{#2}} % The parameter is the control sequence identifying the counter we are % going to use. Create it if it doesn't exist and assign it to \floatno. \def\getfloatno#1{% \ifx#1\relax % Haven't seen this figure type before. \csname newcount\endcsname #1% % % Remember to reset this floatno at the next chap. \expandafter\gdef\expandafter\resetallfloatnos \expandafter{\resetallfloatnos #1=0 }% \fi \let\floatno#1% } % \setref calls this to get the XREFLABEL-snt value. We want an @xref % to the FLOATLABEL to expand to "Figure 3.1". We call \setref when we % first read the @float command. % \def\Yfloat{\floattype@tie \chaplevelprefix\the\floatno}% % Magic string used for the XREFLABEL-title value, so \xrefX can % distinguish floats from other xref types. \def\floatmagic{!!float!!} % #1 is the control sequence we are passed; we expand into a conditional % which is true if #1 represents a float ref. That is, the magic % \thissection value which we \setref above. % \def\iffloat#1{\expandafter\doiffloat#1==\finish} % % #1 is (maybe) the \floatmagic string. If so, #2 will be the % (safe) float type for this float. We set \iffloattype to #2. % \def\doiffloat#1=#2=#3\finish{% \def\temp{#1}% \def\iffloattype{#2}% \ifx\temp\floatmagic } % @listoffloats FLOATTYPE - print a list of floats like a table of contents. % \parseargdef\listoffloats{% \def\floattype{#1}% floattype {% % the floattype might have accents or other special characters, % but we need to use it in a control sequence name. \indexnofonts \turnoffactive \xdef\safefloattype{\floattype}% }% % % \xrdef saves the floats as a \do-list in \floatlistSAFEFLOATTYPE. \expandafter\ifx\csname floatlist\safefloattype\endcsname \relax \ifhavexrefs % if the user said @listoffloats foo but never @float foo. \message{\linenumber No `\safefloattype' floats to list.}% \fi \else \begingroup \leftskip=\tocindent % indent these entries like a toc \let\do=\listoffloatsdo \csname floatlist\safefloattype\endcsname \endgroup \fi } % This is called on each entry in a list of floats. We're passed the % xref label, in the form LABEL-title, which is how we save it in the % aux file. We strip off the -title and look up \XRLABEL-lof, which % has the text we're supposed to typeset here. % % Figures without xref labels will not be included in the list (since % they won't appear in the aux file). % \def\listoffloatsdo#1{\listoffloatsdoentry#1\finish} \def\listoffloatsdoentry#1-title\finish{{% % Can't fully expand XR#1-lof because it can contain anything. Just % pass the control sequence. On the other hand, XR#1-pg is just the % page number, and we want to fully expand that so we can get a link % in pdf output. \toksA = \expandafter{\csname XR#1-lof\endcsname}% % % use the same \entry macro we use to generate the TOC and index. \edef\writeentry{\noexpand\entry{\the\toksA}{\csname XR#1-pg\endcsname}}% \writeentry }} \message{localization,} % and i18n. % @documentlanguage is usually given very early, just after % @setfilename. If done too late, it may not override everything % properly. Single argument is the language abbreviation. % It would be nice if we could set up a hyphenation file here. % \parseargdef\documentlanguage{% \tex % read txi-??.tex file in plain TeX. % Read the file if it exists. \openin 1 txi-#1.tex \ifeof 1 \errhelp = \nolanghelp \errmessage{Cannot read language file txi-#1.tex}% \else \input txi-#1.tex \fi \closein 1 \endgroup } \newhelp\nolanghelp{The given language definition file cannot be found or is empty. Maybe you need to install it? In the current directory should work if nowhere else does.} % @documentencoding should change something in TeX eventually, most % likely, but for now just recognize it. \let\documentencoding = \comment % Page size parameters. % \newdimen\defaultparindent \defaultparindent = 15pt \chapheadingskip = 15pt plus 4pt minus 2pt \secheadingskip = 12pt plus 3pt minus 2pt \subsecheadingskip = 9pt plus 2pt minus 2pt % Prevent underfull vbox error messages. \vbadness = 10000 % Don't be so finicky about underfull hboxes, either. \hbadness = 2000 % Following George Bush, just get rid of widows and orphans. \widowpenalty=10000 \clubpenalty=10000 % Use TeX 3.0's \emergencystretch to help line breaking, but if we're % using an old version of TeX, don't do anything. We want the amount of % stretch added to depend on the line length, hence the dependence on % \hsize. We call this whenever the paper size is set. % \def\setemergencystretch{% \ifx\emergencystretch\thisisundefined % Allow us to assign to \emergencystretch anyway. \def\emergencystretch{\dimen0}% \else \emergencystretch = .15\hsize \fi } % Parameters in order: 1) textheight; 2) textwidth; % 3) voffset; 4) hoffset; 5) binding offset; 6) topskip; % 7) physical page height; 8) physical page width. % % We also call \setleading{\textleading}, so the caller should define % \textleading. The caller should also set \parskip. % \def\internalpagesizes#1#2#3#4#5#6#7#8{% \voffset = #3\relax \topskip = #6\relax \splittopskip = \topskip % \vsize = #1\relax \advance\vsize by \topskip \outervsize = \vsize \advance\outervsize by 2\topandbottommargin \pageheight = \vsize % \hsize = #2\relax \outerhsize = \hsize \advance\outerhsize by 0.5in \pagewidth = \hsize % \normaloffset = #4\relax \bindingoffset = #5\relax % \ifpdf \pdfpageheight #7\relax \pdfpagewidth #8\relax \fi % \setleading{\textleading} % \parindent = \defaultparindent \setemergencystretch } % @letterpaper (the default). \def\letterpaper{{\globaldefs = 1 \parskip = 3pt plus 2pt minus 1pt \textleading = 13.2pt % % If page is nothing but text, make it come out even. \internalpagesizes{46\baselineskip}{6in}% {\voffset}{.25in}% {\bindingoffset}{36pt}% {11in}{8.5in}% }} % Use @smallbook to reset parameters for 7x9.25 trim size. \def\smallbook{{\globaldefs = 1 \parskip = 2pt plus 1pt \textleading = 12pt % \internalpagesizes{7.5in}{5in}% {\voffset}{.25in}% {\bindingoffset}{16pt}% {9.25in}{7in}% % \lispnarrowing = 0.3in \tolerance = 700 \hfuzz = 1pt \contentsrightmargin = 0pt \defbodyindent = .5cm }} % Use @smallerbook to reset parameters for 6x9 trim size. % (Just testing, parameters still in flux.) \def\smallerbook{{\globaldefs = 1 \parskip = 1.5pt plus 1pt \textleading = 12pt % \internalpagesizes{7.4in}{4.8in}% {-.2in}{-.4in}% {0pt}{14pt}% {9in}{6in}% % \lispnarrowing = 0.25in \tolerance = 700 \hfuzz = 1pt \contentsrightmargin = 0pt \defbodyindent = .4cm }} % Use @afourpaper to print on European A4 paper. \def\afourpaper{{\globaldefs = 1 \parskip = 3pt plus 2pt minus 1pt \textleading = 13.2pt % % Double-side printing via postscript on Laserjet 4050 % prints double-sided nicely when \bindingoffset=10mm and \hoffset=-6mm. % To change the settings for a different printer or situation, adjust % \normaloffset until the front-side and back-side texts align. Then % do the same for \bindingoffset. You can set these for testing in % your texinfo source file like this: % @tex % \global\normaloffset = -6mm % \global\bindingoffset = 10mm % @end tex \internalpagesizes{51\baselineskip}{160mm} {\voffset}{\hoffset}% {\bindingoffset}{44pt}% {297mm}{210mm}% % \tolerance = 700 \hfuzz = 1pt \contentsrightmargin = 0pt \defbodyindent = 5mm }} % Use @afivepaper to print on European A5 paper. % From romildo@urano.iceb.ufop.br, 2 July 2000. % He also recommends making @example and @lisp be small. \def\afivepaper{{\globaldefs = 1 \parskip = 2pt plus 1pt minus 0.1pt \textleading = 12.5pt % \internalpagesizes{160mm}{120mm}% {\voffset}{\hoffset}% {\bindingoffset}{8pt}% {210mm}{148mm}% % \lispnarrowing = 0.2in \tolerance = 800 \hfuzz = 1.2pt \contentsrightmargin = 0pt \defbodyindent = 2mm \tableindent = 12mm }} % A specific text layout, 24x15cm overall, intended for A4 paper. \def\afourlatex{{\globaldefs = 1 \afourpaper \internalpagesizes{237mm}{150mm}% {\voffset}{4.6mm}% {\bindingoffset}{7mm}% {297mm}{210mm}% % % Must explicitly reset to 0 because we call \afourpaper. \globaldefs = 0 }} % Use @afourwide to print on A4 paper in landscape format. \def\afourwide{{\globaldefs = 1 \afourpaper \internalpagesizes{241mm}{165mm}% {\voffset}{-2.95mm}% {\bindingoffset}{7mm}% {297mm}{210mm}% \globaldefs = 0 }} % @pagesizes TEXTHEIGHT[,TEXTWIDTH] % Perhaps we should allow setting the margins, \topskip, \parskip, % and/or leading, also. Or perhaps we should compute them somehow. % \parseargdef\pagesizes{\pagesizesyyy #1,,\finish} \def\pagesizesyyy#1,#2,#3\finish{{% \setbox0 = \hbox{\ignorespaces #2}\ifdim\wd0 > 0pt \hsize=#2\relax \fi \globaldefs = 1 % \parskip = 3pt plus 2pt minus 1pt \setleading{\textleading}% % \dimen0 = #1 \advance\dimen0 by \voffset % \dimen2 = \hsize \advance\dimen2 by \normaloffset % \internalpagesizes{#1}{\hsize}% {\voffset}{\normaloffset}% {\bindingoffset}{44pt}% {\dimen0}{\dimen2}% }} % Set default to letter. % \letterpaper \message{and turning on texinfo input format.} % Define macros to output various characters with catcode for normal text. \catcode`\"=\other \catcode`\~=\other \catcode`\^=\other \catcode`\_=\other \catcode`\|=\other \catcode`\<=\other \catcode`\>=\other \catcode`\+=\other \catcode`\$=\other \def\normaldoublequote{"} \def\normaltilde{~} \def\normalcaret{^} \def\normalunderscore{_} \def\normalverticalbar{|} \def\normalless{<} \def\normalgreater{>} \def\normalplus{+} \def\normaldollar{$}%$ font-lock fix % This macro is used to make a character print one way in \tt % (where it can probably be output as-is), and another way in other fonts, % where something hairier probably needs to be done. % % #1 is what to print if we are indeed using \tt; #2 is what to print % otherwise. Since all the Computer Modern typewriter fonts have zero % interword stretch (and shrink), and it is reasonable to expect all % typewriter fonts to have this, we can check that font parameter. % \def\ifusingtt#1#2{\ifdim \fontdimen3\font=0pt #1\else #2\fi} % Same as above, but check for italic font. Actually this also catches % non-italic slanted fonts since it is impossible to distinguish them from % italic fonts. But since this is only used by $ and it uses \sl anyway % this is not a problem. \def\ifusingit#1#2{\ifdim \fontdimen1\font>0pt #1\else #2\fi} % Turn off all special characters except @ % (and those which the user can use as if they were ordinary). % Most of these we simply print from the \tt font, but for some, we can % use math or other variants that look better in normal text. \catcode`\"=\active \def\activedoublequote{{\tt\char34}} \let"=\activedoublequote \catcode`\~=\active \def~{{\tt\char126}} \chardef\hat=`\^ \catcode`\^=\active \def^{{\tt \hat}} \catcode`\_=\active \def_{\ifusingtt\normalunderscore\_} \let\realunder=_ % Subroutine for the previous macro. \def\_{\leavevmode \kern.07em \vbox{\hrule width.3em height.1ex}\kern .07em } \catcode`\|=\active \def|{{\tt\char124}} \chardef \less=`\< \catcode`\<=\active \def<{{\tt \less}} \chardef \gtr=`\> \catcode`\>=\active \def>{{\tt \gtr}} \catcode`\+=\active \def+{{\tt \char 43}} \catcode`\$=\active \def${\ifusingit{{\sl\$}}\normaldollar}%$ font-lock fix % If a .fmt file is being used, characters that might appear in a file % name cannot be active until we have parsed the command line. % So turn them off again, and have \everyjob (or @setfilename) turn them on. % \otherifyactive is called near the end of this file. \def\otherifyactive{\catcode`+=\other \catcode`\_=\other} % Used sometimes to turn off (effectively) the active characters even after % parsing them. \def\turnoffactive{% \normalturnoffactive \otherbackslash } \catcode`\@=0 % \backslashcurfont outputs one backslash character in current font, % as in \char`\\. \global\chardef\backslashcurfont=`\\ \global\let\rawbackslashxx=\backslashcurfont % let existing .??s files work % \realbackslash is an actual character `\' with catcode other, and % \doublebackslash is two of them (for the pdf outlines). {\catcode`\\=\other @gdef@realbackslash{\} @gdef@doublebackslash{\\}} % In texinfo, backslash is an active character; it prints the backslash % in fixed width font. \catcode`\\=\active @def@normalbackslash{{@tt@backslashcurfont}} % On startup, @fixbackslash assigns: % @let \ = @normalbackslash % \rawbackslash defines an active \ to do \backslashcurfont. % \otherbackslash defines an active \ to be a literal `\' character with % catcode other. @gdef@rawbackslash{@let\=@backslashcurfont} @gdef@otherbackslash{@let\=@realbackslash} % Same as @turnoffactive except outputs \ as {\tt\char`\\} instead of % the literal character `\'. % @def@normalturnoffactive{% @let\=@normalbackslash @let"=@normaldoublequote @let~=@normaltilde @let^=@normalcaret @let_=@normalunderscore @let|=@normalverticalbar @let<=@normalless @let>=@normalgreater @let+=@normalplus @let$=@normaldollar %$ font-lock fix @unsepspaces } % Make _ and + \other characters, temporarily. % This is canceled by @fixbackslash. @otherifyactive % If a .fmt file is being used, we don't want the `\input texinfo' to show up. % That is what \eatinput is for; after that, the `\' should revert to printing % a backslash. % @gdef@eatinput input texinfo{@fixbackslash} @global@let\ = @eatinput % On the other hand, perhaps the file did not have a `\input texinfo'. Then % the first `\' in the file would cause an error. This macro tries to fix % that, assuming it is called before the first `\' could plausibly occur. % Also turn back on active characters that might appear in the input % file name, in case not using a pre-dumped format. % @gdef@fixbackslash{% @ifx\@eatinput @let\ = @normalbackslash @fi @catcode`+=@active @catcode`@_=@active } % Say @foo, not \foo, in error messages. @escapechar = `@@ % These look ok in all fonts, so just make them not special. @catcode`@& = @other @catcode`@# = @other @catcode`@% = @other @c Local variables: @c eval: (add-hook 'write-file-hooks 'time-stamp) @c page-delimiter: "^\\\\message" @c time-stamp-start: "def\\\\texinfoversion{" @c time-stamp-format: "%:y-%02m-%02d.%02H" @c time-stamp-end: "}" @c End: @c vim:sw=2: @ignore arch-tag: e1b36e32-c96e-4135-a41a-0b2efa2ea115 @end ignore make-dfsg-3.81.orig/config/uintmax_t.m40000644000175000017500000000235010416553102020230 0ustar srivastasrivasta# uintmax_t.m4 serial 7 (gettext-0.12) dnl Copyright (C) 1997-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. AC_PREREQ(2.13) # Define uintmax_t to 'unsigned long' or 'unsigned long long' # if it is not already defined in or . AC_DEFUN([jm_AC_TYPE_UINTMAX_T], [ AC_REQUIRE([jm_AC_HEADER_INTTYPES_H]) AC_REQUIRE([jm_AC_HEADER_STDINT_H]) if test $jm_ac_cv_header_inttypes_h = no && test $jm_ac_cv_header_stdint_h = no; then AC_REQUIRE([jm_AC_TYPE_UNSIGNED_LONG_LONG]) test $ac_cv_type_unsigned_long_long = yes \ && ac_type='unsigned long long' \ || ac_type='unsigned long' AC_DEFINE_UNQUOTED(uintmax_t, $ac_type, [Define to unsigned long or unsigned long long if and don't define.]) else AC_DEFINE(HAVE_UINTMAX_T, 1, [Define if you have the 'uintmax_t' type in or .]) fi ]) make-dfsg-3.81.orig/config/ulonglong.m40000644000175000017500000000204210416553102020222 0ustar srivastasrivasta# ulonglong.m4 serial 3 dnl Copyright (C) 1999-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Paul Eggert. # Define HAVE_UNSIGNED_LONG_LONG if 'unsigned long long' works. AC_DEFUN([jm_AC_TYPE_UNSIGNED_LONG_LONG], [ AC_CACHE_CHECK([for unsigned long long], ac_cv_type_unsigned_long_long, [AC_TRY_LINK([unsigned long long ull = 1ULL; int i = 63;], [unsigned long long ullmax = (unsigned long long) -1; return ull << i | ull >> i | ullmax / ull | ullmax % ull;], ac_cv_type_unsigned_long_long=yes, ac_cv_type_unsigned_long_long=no)]) if test $ac_cv_type_unsigned_long_long = yes; then AC_DEFINE(HAVE_UNSIGNED_LONG_LONG, 1, [Define if you have the 'unsigned long long' type.]) fi ]) make-dfsg-3.81.orig/config/wchar_t.m40000644000175000017500000000155310416553102017653 0ustar srivastasrivasta# wchar_t.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2002-2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl Test whether has the 'wchar_t' type. dnl Prerequisite: AC_PROG_CC AC_DEFUN([gt_TYPE_WCHAR_T], [ AC_CACHE_CHECK([for wchar_t], gt_cv_c_wchar_t, [AC_TRY_COMPILE([#include wchar_t foo = (wchar_t)'\0';], , gt_cv_c_wchar_t=yes, gt_cv_c_wchar_t=no)]) if test $gt_cv_c_wchar_t = yes; then AC_DEFINE(HAVE_WCHAR_T, 1, [Define if you have the 'wchar_t' type.]) fi ]) make-dfsg-3.81.orig/config/wint_t.m40000644000175000017500000000153110416553102017524 0ustar srivastasrivasta# wint_t.m4 serial 1 (gettext-0.12) dnl Copyright (C) 2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. dnl From Bruno Haible. dnl Test whether has the 'wint_t' type. dnl Prerequisite: AC_PROG_CC AC_DEFUN([gt_TYPE_WINT_T], [ AC_CACHE_CHECK([for wint_t], gt_cv_c_wint_t, [AC_TRY_COMPILE([#include wint_t foo = (wchar_t)'\0';], , gt_cv_c_wint_t=yes, gt_cv_c_wint_t=no)]) if test $gt_cv_c_wint_t = yes; then AC_DEFINE(HAVE_WINT_T, 1, [Define if you have the 'wint_t' type.]) fi ]) make-dfsg-3.81.orig/config/xsize.m40000644000175000017500000000103110416553102017355 0ustar srivastasrivasta# xsize.m4 serial 2 dnl Copyright (C) 2003 Free Software Foundation, Inc. dnl This file is free software, distributed under the terms of the GNU dnl General Public License. As a special exception to the GNU General dnl Public License, this file may be distributed as part of a program dnl that contains a configuration script generated by Autoconf, under dnl the same distribution terms as the rest of that program. AC_DEFUN([gl_XSIZE], [ dnl Prerequisites of lib/xsize.h. AC_REQUIRE([gl_SIZE_MAX]) AC_CHECK_HEADERS(stdint.h) ]) make-dfsg-3.81.orig/config.ami0000444000175000017500000002322610416553102016451 0ustar srivastasrivasta/* config.h -- hand-massaged for Amiga -*-C-*- Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Define if on AIX 3. System headers sometimes define this. We just want to avoid a redefinition error message. */ #ifndef _ALL_SOURCE /* #undef _ALL_SOURCE */ #endif /* Define if using alloca.c. */ #define C_ALLOCA /* Define if the closedir function returns void instead of int. */ /* #undef CLOSEDIR_VOID */ /* Define to empty if the keyword does not work. */ /* #undef const */ /* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems. This function is required for alloca.c support on those systems. */ /* #undef CRAY_STACKSEG_END */ /* Define for DGUX with . */ /* #undef DGUX */ /* Define if the `getloadavg' function needs to be run setuid or setgid. */ /* #undef GETLOADAVG_PRIVILEGED */ /* Define to `unsigned long' or `unsigned long long' if doesn't define. */ #define uintmax_t unsigned long /* Define to `int' if doesn't define. */ #define gid_t int /* Define if you have alloca, as a function or macro. */ /* #undef HAVE_ALLOCA */ /* Define if you have and it should be used (not on Ultrix). */ /* #undef HAVE_ALLOCA_H */ /* Define if you don't have vprintf but do have _doprnt. */ /* #undef HAVE_DOPRNT */ /* Define if your system has a working fnmatch function. */ /* #undef HAVE_FNMATCH */ /* Define if your system has its own `getloadavg' function. */ /* #undef HAVE_GETLOADAVG */ /* Define if you have the getmntent function. */ /* #undef HAVE_GETMNTENT */ /* Define if the `long double' type works. */ /* #undef HAVE_LONG_DOUBLE */ /* Define if you support file names longer than 14 characters. */ #define HAVE_LONG_FILE_NAMES 1 /* Define if you have a working `mmap' system call. */ /* #undef HAVE_MMAP */ /* Define if system calls automatically restart after interruption by a signal. */ /* #undef HAVE_RESTARTABLE_SYSCALLS */ /* Define if your struct stat has st_blksize. */ /* #undef HAVE_ST_BLKSIZE */ /* Define if your struct stat has st_blocks. */ /* #undef HAVE_ST_BLOCKS */ /* Define if you have the strcoll function and it is properly defined. */ #define HAVE_STRCOLL 1 /* Define if your struct stat has st_rdev. */ #define HAVE_ST_RDEV 1 /* Define if you have the strftime function. */ #define HAVE_STRFTIME 1 /* Define if you have that is POSIX.1 compatible. */ /* #undef HAVE_SYS_WAIT_H */ /* Define if your struct tm has tm_zone. */ /* #undef HAVE_TM_ZONE */ /* Define if you don't have tm_zone but do have the external array tzname. */ #define HAVE_TZNAME 1 /* Define if you have . */ #define HAVE_UNISTD_H 1 /* Define if utime(file, NULL) sets file's timestamp to the present. */ /* #undef HAVE_UTIME_NULL */ /* Define if you have . */ /* #undef HAVE_VFORK_H */ /* Define if you have the vprintf function. */ #define HAVE_VPRINTF 1 /* Define if you have the wait3 system call. */ /* #undef HAVE_WAIT3 */ /* Define if on MINIX. */ /* #undef _MINIX */ /* Define if your struct nlist has an n_un member. */ /* #undef NLIST_NAME_UNION */ /* Define if you have . */ /* #undef NLIST_STRUCT */ /* Define if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* Define to `int' if doesn't define. */ #define pid_t int /* Define if the system does not provide POSIX.1 features except with this defined. */ /* #undef _POSIX_1_SOURCE */ /* Define if you need to in order for stat and other things to work. */ /* #undef _POSIX_SOURCE */ /* Define as the return type of signal handlers (int or void). */ #define RETSIGTYPE void /* Define if the setvbuf function takes the buffering type as its second argument and the buffer pointer as the third, as on System V before release 3. */ /* #undef SETVBUF_REVERSED */ /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ #define STACK_DIRECTION -1 /* Define if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ /* Define if your compiler conforms to the ANSI C standard. */ #define HAVE_ANSI_COMPILER 1 /* Define if you have the ANSI C header files. */ #define STDC_HEADERS /* Define on System V Release 4. */ /* #undef SVR4 */ /* Define if `sys_siglist' is declared by . */ /* #undef SYS_SIGLIST_DECLARED */ /* Define to `int' if doesn't define. */ #define uid_t int /* Define for Encore UMAX. */ /* #undef UMAX */ /* Define for Encore UMAX 4.3 that has instead of . */ /* #undef UMAX4_3 */ /* Define vfork as fork if vfork does not work. */ /* #undef vfork */ /* Name of this package (needed by automake) */ #define PACKAGE "make" /* Version of this package (needed by automake) */ #define VERSION "3.81" /* Define to the name of the SCCS `get' command. */ #define SCCS_GET "get" /* Define this if the SCCS `get' command understands the `-G' option. */ /* #undef SCCS_GET_MINUS_G */ /* Define this to enable job server support in GNU make. */ /* #undef MAKE_JOBSERVER */ /* Define to be the nanoseconds member of struct stat's st_mtim, if it exists. */ /* #undef ST_MTIM_NSEC */ /* Define this if the C library defines the variable `sys_siglist'. */ /* #undef HAVE_SYS_SIGLIST */ /* Define this if the C library defines the variable `_sys_siglist'. */ /* #undef HAVE__SYS_SIGLIST */ /* Define this if you have the `union wait' type in . */ /* #undef HAVE_UNION_WAIT */ /* Define if you have the dup2 function. */ /* #undef HAVE_DUP2 */ /* Define if you have the getcwd function. */ #define HAVE_GETCWD 1 /* Define if you have the getgroups function. */ /* #undef HAVE_GETGROUPS */ /* Define if you have the gethostbyname function. */ /* #undef HAVE_GETHOSTBYNAME */ /* Define if you have the gethostname function. */ /* #undef HAVE_GETHOSTNAME */ /* Define if you have the memmove function. */ #define HAVE_MEMMOVE 1 /* Define if you have the mktemp function. */ #define HAVE_MKTEMP 1 /* Define if you have the psignal function. */ /* #undef HAVE_PSIGNAL */ /* Define if you have the pstat_getdynamic function. */ /* #undef HAVE_PSTAT_GETDYNAMIC */ /* Define if you have the setegid function. */ /* #undef HAVE_SETEGID */ /* Define if you have the seteuid function. */ /* #undef HAVE_SETEUID */ /* Define if you have the setlinebuf function. */ /* #undef HAVE_SETLINEBUF */ /* Define if you have the setregid function. */ /* #undef HAVE_SETREGID */ /* Define if you have the setreuid function. */ /* #undef HAVE_SETREUID */ /* Define if you have the sigsetmask function. */ /* #undef HAVE_SIGSETMASK */ /* Define if you have the socket function. */ /* #undef HAVE_SOCKET */ /* Define if you have the strcasecmp function. */ /* #undef HAVE_STRCASECMP */ /* Define if you have the strerror function. */ #define HAVE_STRERROR 1 /* Define if you have the strsignal function. */ /* #undef HAVE_STRSIGNAL */ /* Define if you have the wait3 function. */ /* #undef HAVE_WAIT3 */ /* Define if you have the waitpid function. */ /* #undef HAVE_WAITPID */ /* Define if you have the header file. */ #define HAVE_DIRENT_H 1 /* Define if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define if you have the header file. */ /* #undef HAVE_MACH_MACH_H */ /* Define if you have the header file. */ /* #undef HAVE_MEMORY_H */ /* Define if you have the header file. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define if you have the header file. */ /* #undef HAVE_STDLIB_H */ /* Define if you have the header file. */ #define HAVE_STRING_H 1 /* Define if you have the header file. */ #define HAVE_SYS_DIR_H 1 /* Define if you have the header file. */ /* #undef HAVE_SYS_NDIR_H */ /* Define if you have the header file. */ /* #undef HAVE_SYS_PARAM_H */ /* Define if you have the header file. */ /* #undef HAVE_SYS_TIMEB_H */ /* Define if you have the header file. */ /* #undef HAVE_SYS_WAIT_H */ /* Define if you have the header file. */ #define HAVE_UNISTD_H 1 /* Define if you have the dgc library (-ldgc). */ /* #undef HAVE_LIBDGC */ /* Define if you have the kstat library (-lkstat). */ /* #undef HAVE_LIBKSTAT */ /* Define if you have the sun library (-lsun). */ /* #undef HAVE_LIBSUN */ /* Define for Case Insensitve behavior */ #define HAVE_CASE_INSENSITIVE_FS /* Build host information. */ #define MAKE_HOST "Amiga" make-dfsg-3.81.orig/config.h-vms0000444000175000017500000003003310416553102016727 0ustar srivastasrivasta/* config.h-vms. Generated by hand by Klaus Kämpf -*-C-*- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* config.h. Generated automatically by configure. */ /* config.h.in. Generated automatically from configure.in by autoheader. */ /* Define if on AIX 3. System headers sometimes define this. We just want to avoid a redefinition error message. */ #ifndef _ALL_SOURCE /* #undef _ALL_SOURCE */ #endif /* Define to 1 if NLS is requested. */ /* #undef ENABLE_NLS */ /* Define as 1 if you have dcgettext. */ /* #undef HAVE_DCGETTEXT */ /* Define as 1 if you have gettext and don't want to use GNU gettext. */ /* #undef HAVE_GETTEXT */ /* Define if your locale.h file contains LC_MESSAGES. */ /* #undef HAVE_LC_MESSAGES */ /* Define to the installation directory for locales. */ #define LOCALEDIR "" /* Define as 1 if you have the stpcpy function. */ /* #undef HAVE_STPCPY */ /* Define if the closedir function returns void instead of int. */ /* #undef CLOSEDIR_VOID */ /* Define to empty if the keyword does not work. */ /* #undef const */ /* Define to one of _getb67, GETB67, getb67 for Cray-2 and Cray-YMP systems. This function is required for alloca.c support on those systems. */ /* #undef CRAY_STACKSEG_END */ /* Define for DGUX with . */ /* #undef DGUX */ /* Define if the `getloadavg' function needs to be run setuid or setgid. */ /* #undef GETLOADAVG_PRIVILEGED */ /* Define to `unsigned long' or `unsigned long long' if doesn't define. */ #define uintmax_t unsigned long /* Define to `int' if doesn't define. */ /* #undef gid_t */ /* Define if you have alloca, as a function or macro. */ #define HAVE_ALLOCA 1 /* Define if you have and it should be used (not on Ultrix). */ /* #undef HAVE_ALLOCA_H */ /* Define if you don't have vprintf but do have _doprnt. */ /* #undef HAVE_DOPRNT */ /* Define if your system has a working fnmatch function. */ /* #undef HAVE_FNMATCH */ /* Define if your system has its own `getloadavg' function. */ /* #undef HAVE_GETLOADAVG */ /* Define if you have the getmntent function. */ /* #undef HAVE_GETMNTENT */ /* Define if the `long double' type works. */ /* #undef HAVE_LONG_DOUBLE */ /* Define if you support file names longer than 14 characters. */ #define HAVE_LONG_FILE_NAMES 1 /* Define if you have a working `mmap' system call. */ /* #undef HAVE_MMAP */ /* Define if system calls automatically restart after interruption by a signal. */ /* #undef HAVE_RESTARTABLE_SYSCALLS */ /* Define if your struct stat has st_blksize. */ /* #undef HAVE_ST_BLKSIZE */ /* Define if your struct stat has st_blocks. */ /* #undef HAVE_ST_BLOCKS */ /* Define if you have the strcoll function and it is properly defined. */ /* #undef HAVE_STRCOLL */ /* Define if your struct stat has st_rdev. */ /* #undef HAVE_ST_RDEV */ /* Define if you have the strftime function. */ /* #undef HAVE_STRFTIME */ /* Define if you have that is POSIX.1 compatible. */ /* #undef HAVE_SYS_WAIT_H */ /* Define if your struct tm has tm_zone. */ /* #undef HAVE_TM_ZONE */ /* Define if you don't have tm_zone but do have the external array tzname. */ /* #undef HAVE_TZNAME */ /* Define if you have . */ #ifdef __DECC #define HAVE_UNISTD_H 1 #endif /* Define if utime(file, NULL) sets file's timestamp to the present. */ /* #undef HAVE_UTIME_NULL */ /* Define if you have . */ /* #undef HAVE_VFORK_H */ /* Define if you have the vprintf function. */ #define HAVE_VPRINTF 1 /* Define if you have the wait3 system call. */ /* #undef HAVE_WAIT3 */ /* Define if on MINIX. */ /* #undef _MINIX */ /* Define if your struct nlist has an n_un member. */ /* #undef NLIST_NAME_UNION */ /* Define if you have . */ /* #undef NLIST_STRUCT */ /* Define if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* Define to `int' if doesn't define. */ /* I assume types.h is available for all 5.0 cc/cxx compilers */ #if __DECC_VER < 50090000 #define pid_t int #endif /* Define if the system does not provide POSIX.1 features except with this defined. */ /* #undef _POSIX_1_SOURCE */ /* Define if you need to in order for stat and other things to work. */ /* #undef _POSIX_SOURCE */ /* Define as the return type of signal handlers (int or void). */ #define RETSIGTYPE void /* Define if the setvbuf function takes the buffering type as its second argument and the buffer pointer as the third, as on System V before release 3. */ /* #undef SETVBUF_REVERSED */ /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ /* #undef STACK_DIRECTION */ /* Define if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ /* Define if you have the ANSI C header files. */ /* #undef STDC_HEADERS */ /* Define on System V Release 4. */ /* #undef SVR4 */ /* Define if `sys_siglist' is declared by . */ /* #undef SYS_SIGLIST_DECLARED */ /* Define to `int' if doesn't define. */ #if __DECC_VER < 50090000 #define uid_t int #endif /* Define for Encore UMAX. */ /* #undef UMAX */ /* Define for Encore UMAX 4.3 that has instead of . */ /* #undef UMAX4_3 */ /* Define vfork as fork if vfork does not work. */ /* #undef vfork */ /* Name of this package (needed by automake) */ #define PACKAGE "make" /* Version of this package (needed by automake) */ #define VERSION "3.81" /* Define to the name of the SCCS `get' command. */ /* #undef SCCS_GET */ /* Define this if the SCCS `get' command understands the `-G' option. */ /* #undef SCCS_GET_MINUS_G */ /* Define this to enable job server support in GNU make. */ /* #undef MAKE_JOBSERVER */ /* Define to be the nanoseconds member of struct stat's st_mtim, if it exists. */ /* #undef ST_MTIM_NSEC */ /* Define this if the C library defines the variable `sys_siglist'. */ /* #undefine HAVE_SYS_SIGLIST */ /* Define this if the C library defines the variable `_sys_siglist'. */ /* #undef HAVE__SYS_SIGLIST */ /* Define this if you have the `union wait' type in . */ /* #undef HAVE_UNION_WAIT */ /* Define if you have the dup2 function. */ #define HAVE_DUP2 1 /* Define if you have the getcwd function. */ #define HAVE_GETCWD 1 /* Define if you have the getgroups function. */ /* #undef HAVE_GETGROUPS */ /* Define if you have the gethostbyname function. */ /* #undef HAVE_GETHOSTBYNAME */ /* Define if you have the gethostname function. */ /* #undef HAVE_GETHOSTNAME */ /* Define if you have the getloadavg function. */ /* #undef HAVE_GETLOADAVG */ /* Define if you have the memmove function. */ #define HAVE_MEMMOVE 1 /* Define if you have the mktemp function. */ #define HAVE_MKTEMP 1 /* Define if you have the psignal function. */ /* #undef HAVE_PSIGNAL */ /* Define if you have the pstat_getdynamic function. */ /* #undef HAVE_PSTAT_GETDYNAMIC */ /* Define if you have the setegid function. */ /* #undef HAVE_SETEGID */ /* Define if you have the seteuid function. */ /* #undef HAVE_SETEUID */ /* Define if you have the setlinebuf function. */ /* #undef HAVE_SETLINEBUF */ /* Define if you have the setregid function. */ /* #undefine HAVE_SETREGID */ /* Define if you have the setreuid function. */ /* #define HAVE_SETREUID */ /* Define if you have the sigsetmask function. */ #define HAVE_SIGSETMASK 1 /* Define if you have the socket function. */ /* #undef HAVE_SOCKET */ /* Define if you have the strcasecmp function. */ /* #undef HAVE_STRCASECMP */ /* Define if you have the strerror function. */ #define HAVE_STRERROR 1 /* Define if you have the strsignal function. */ /* #undef HAVE_STRSIGNAL */ /* Define if you have the wait3 function. */ /* #undef HAVE_WAIT3 */ /* Define if you have the waitpid function. */ /* #undef HAVE_WAITPID */ /* Define if you have the header file. */ #define HAVE_DIRENT_H 1 /* Define if you have the header file. */ #ifdef __DECC #define HAVE_FCNTL_H 1 #endif /* Define if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define if you have the header file. */ /* #undef HAVE_MACH_MACH_H */ /* Define if you have the header file. */ /* #undef HAVE_MEMORY_H */ /* Define if you have the header file. */ /* #undef HAVE_NDIR_H */ /* Define if your compiler conforms to the ANSI C standard. */ #define HAVE_ANSI_COMPILER 1 /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define if you have the header file. */ #define HAVE_STRING_H 1 /* Define if you have the header file. */ /* #undef HAVE_SYS_DIR_H */ /* Define if you have the header file. */ /* #undef HAVE_SYS_NDIR_H */ /* Define if you have the header file. */ /* #undef HAVE_SYS_PARAM_H */ /* Define if you have the header file. */ #ifndef __GNUC__ #define HAVE_SYS_TIMEB_H 1 #endif /* Define if you have the header file. */ /* #undef HAVE_SYS_WAIT_H */ /* Define if you have the dgc library (-ldgc). */ /* #undef HAVE_LIBDGC */ /* Define if you have the kstat library (-lkstat). */ /* #undef HAVE_LIBKSTAT * /* Define if you have the sun library (-lsun). */ /* #undef HAVE_LIBSUN */ /* Use high resolution file timestamps if nonzero. */ #define FILE_TIMESTAMP_HI_RES 0 /* Define for case insensitve filenames */ #define HAVE_CASE_INSENSITIVE_FS 1 /* VMS specific, define it if you want to use case sensitive targets */ /* #undef WANT_CASE_SENSITIVE_TARGETS */ /* VMS specific, V7.0 has opendir() and friends, so it's undefined */ /* If you want to use non-VMS code for opendir() etc. on V7.0 and greater define the first or both macros AND change the compile command to get the non-VMS versions linked: (prefix=(all,except=(opendir,... */ /* #undef HAVE_VMSDIR_H */ /* #undef _DIRENT_HAVE_D_NAMLEN */ /* On older systems without 7.0 backport of CRTL the first one is defined */ #ifdef __CRTL_VER # if __CRTL_VER < 70000000 # define HAVE_VMSDIR_H 1 # endif #else # if __VMS_VER < 70000000 # define HAVE_VMSDIR_H 1 # endif #endif #if defined(HAVE_VMSDIR_H) && defined(HAVE_DIRENT_H) #undef HAVE_DIRENT_H #endif #define HAVE_STDLIB_H 1 #define INCLUDEDIR "sys$sysroot:[syslib]" #define LIBDIR "sys$sysroot:[syslib]" /* Don't use RTL functions of OpenVMS */ #ifdef __DECC #include #include #define getopt gnu_getopt #define optarg gnu_optarg #define optopt gnu_optopt #define optind gnu_optind #define opterr gnu_opterr #define globfree gnu_globfree #define glob gnu_glob #endif #if defined (__cplusplus) || (defined (__STDC__) && __STDC__) #undef PARAMS #define PARAMS(protos) protos #else /* Not C++ or ANSI C. */ #undef PARAMS #define PARAMS(protos) () #endif /* C++ or ANSI C. */ /* Define if using alloca.c. */ /* #undef C_ALLOCA */ /* maybe this should be placed into make.h */ #if defined(__VAX) && defined(__DECC) #define alloca(n) __ALLOCA(n) #endif /* Build host information. */ #define MAKE_HOST "VMS" make-dfsg-3.81.orig/config.h.W320000444000175000017500000003412510416553102016504 0ustar srivastasrivasta/* config.h.W32 -- hand-massaged config.h file for Windows builds -*-C-*- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Suppress some Visual C++ warnings. Maybe after the code cleanup for ISO C we can remove some/all of these. */ #if _MSC_VER > 1000 # pragma warning(disable:4100) /* unreferenced formal parameter */ # pragma warning(disable:4102) /* unreferenced label */ # pragma warning(disable:4127) /* conditional expression is constant */ # pragma warning(disable:4131) /* uses old-style declarator */ # pragma warning(disable:4702) /* unreachable code */ #endif /* Define to 1 if the `closedir' function returns void instead of `int'. */ /* #undef CLOSEDIR_VOID */ /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP systems. This function is required for `alloca.c' support on those systems. */ /* #undef CRAY_STACKSEG_END */ /* Define to 1 if using `alloca.c'. */ /* #undef C_ALLOCA */ /* Define to 1 if using `getloadavg.c'. */ /*#define C_GETLOADAVG 1*/ /* Define to 1 for DGUX with . */ /* #undef DGUX */ /* Define to 1 if translation of program messages to the user's native language is requested. */ /* #undef ENABLE_NLS */ /* Use high resolution file timestamps if nonzero. */ #define FILE_TIMESTAMP_HI_RES 0 /* Define to 1 if the `getloadavg' function needs to be run setuid or setgid. */ /* #undef GETLOADAVG_PRIVILEGED */ /* Define to 1 if you have `alloca', as a function or macro. */ #define HAVE_ALLOCA 1 /* Define to 1 if you have and it should be used (not on Ultrix). */ /* #undef HAVE_ALLOCA_H */ /* Define if your compiler conforms to the ANSI C standard. */ #define HAVE_ANSI_COMPILER 1 /* Define to 1 if you have the `bsd_signal' function. */ /* #undef HAVE_BSD_SIGNAL */ /* Use case insensitive file names */ /* #undef HAVE_CASE_INSENSITIVE_FS */ /* Define if you have the clock_gettime function. */ /* #undef HAVE_CLOCK_GETTIME */ /* Define if the GNU dcgettext() function is already present or preinstalled. */ /* #undef HAVE_DCGETTEXT */ /* Define to 1 if you have the header file, and it defines `DIR'. */ #define HAVE_DIRENT_H 1 /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ /* #undef HAVE_DOPRNT */ /* Use platform specific coding */ #define HAVE_DOS_PATHS 1 /* Define to 1 if you have the `dup2' function. */ #define HAVE_DUP2 1 /* Define to 1 if you have the header file. */ #define HAVE_FCNTL_H 1 /* Define to 1 if you have the `fdopen' function. */ /*#define HAVE_FDOPEN 1*/ /* Define to 1 if you have the `fork' function. */ /* #undef HAVE_FORK */ /* Define to 1 if you have the `getcwd' function. */ #define HAVE_GETCWD 1 /* Define to 1 if you have the `getgroups' function. */ /* #undef HAVE_GETGROUPS */ /* Define to 1 if you have the `gethostbyname' function. */ /* #undef HAVE_GETHOSTBYNAME */ /* Define to 1 if you have the `gethostname' function. */ /* #undef HAVE_GETHOSTNAME */ /* Define to 1 if you have the `getloadavg' function. */ /* #undef HAVE_GETLOADAVG */ /* Define to 1 if you have the `getrlimit' function. */ /* #undef HAVE_GETRLIMIT */ /* Define if the GNU gettext() function is already present or preinstalled. */ /* #undef HAVE_GETTEXT */ /* Define if you have a standard gettimeofday function */ /* #undef HAVE_GETTIMEOFDAY */ /* Define if you have the iconv() function. */ /* #undef HAVE_ICONV */ /* Define to 1 if you have the header file. */ /*#define HAVE_INTTYPES_H 1*/ /* Define to 1 if you have the `dgc' library (-ldgc). */ /* #undef HAVE_LIBDGC */ /* Define to 1 if you have the `kstat' library (-lkstat). */ /* #undef HAVE_LIBKSTAT */ /* Define to 1 if you have the header file. */ #define HAVE_LIMITS_H 1 /* Define to 1 if you have the header file. */ /*#define HAVE_LOCALE_H 1*/ /* Define to 1 if you have the header file. */ /* #undef HAVE_MACH_MACH_H */ /* Define to 1 if you have the `memmove' function. */ #define HAVE_MEMMOVE 1 /* Define to 1 if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define to 1 if you have the `mkstemp' function. */ /* #undef HAVE_MKSTEMP */ /* Define to 1 if you have the `mktemp' function. */ #define HAVE_MKTEMP 1 /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_NDIR_H */ /* Define to 1 if you have the header file. */ /* #undef HAVE_NLIST_H */ /* Define to 1 if you have the `pipe' function. */ /* #undef HAVE_PIPE */ /* Define to 1 if you have the `pstat_getdynamic' function. */ /* #undef HAVE_PSTAT_GETDYNAMIC */ /* Define to 1 if you have the `realpath' function. */ /* #undef HAVE_REALPATH */ /* Define if defines the SA_RESTART constant. */ /* #undef HAVE_SA_RESTART */ /* Define to 1 if you have the `setegid' function. */ /* #undef HAVE_SETEGID */ /* Define to 1 if you have the `seteuid' function. */ /* #undef HAVE_SETEUID */ /* Define to 1 if you have the `setlinebuf' function. */ /* #undef HAVE_SETLINEBUF */ /* Define to 1 if you have the `setlocale' function. */ /*#define HAVE_SETLOCALE 1*/ /* Define to 1 if you have the `setregid' function. */ /* #undef HAVE_SETREGID */ /* Define to 1 if you have the `setreuid' function. */ /* #undef HAVE_SETREUID */ /* Define to 1 if you have the `setrlimit' function. */ /* #undef HAVE_SETRLIMIT */ /* Define to 1 if you have the `setvbuf' function. */ /*#define HAVE_SETVBUF 1 */ /* Define to 1 if you have the `sigaction' function. */ /* #undef HAVE_SIGACTION */ /* Define to 1 if you have the `sigsetmask' function. */ /* #undef HAVE_SIGSETMASK */ /* Define to 1 if you have the `socket' function. */ /* #undef HAVE_SOCKET */ /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define to 1 if you have the header file. */ /*#define HAVE_STDINT_H 1*/ /* Define to 1 if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define to 1 if you have the `strcasecmp' function. */ /* #undef HAVE_STRCASECMP */ /* Define to 1 if you have the `strchr' function. */ #define HAVE_STRCHR 1 /* Define to 1 if you have the `strcoll' function and it is properly defined. */ #define HAVE_STRCOLL 1 /* Define to 1 if you have the `strdup' function. */ /* #define HAVE_STRDUP 1*/ /* Define to 1 if you have the `strerror' function. */ #define HAVE_STRERROR 1 /* Define to 1 if you have the header file. */ /* #define HAVE_STRINGS_H 1 */ /* Define to 1 if you have the header file. */ #define HAVE_STRING_H 1 /* Define to 1 if you have the `strsignal' function. */ /* #undef HAVE_STRSIGNAL */ /* Define to 1 if `n_un.n_name' is member of `struct nlist'. */ /* #undef HAVE_STRUCT_NLIST_N_UN_N_NAME */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_DIR_H */ /* Define to 1 if you have the header file, and it defines `DIR'. */ /* #undef HAVE_SYS_NDIR_H */ /* Define to 1 if you have the header file. */ /* #define HAVE_SYS_PARAM_H 1 */ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_RESOURCE_H */ /* Define to 1 if you have the header file. */ /* #define HAVE_SYS_STAT_H 1 */ /* Define to 1 if you have the header file. */ /*#define HAVE_SYS_TIMEB_H 1*/ /* Define to 1 if you have the header file. */ /*#define HAVE_SYS_TIME_H 1*/ /* Define to 1 if you have the header file. */ /*#define HAVE_SYS_TYPES_H 1*/ /* Define to 1 if you have the header file. */ /* #undef HAVE_SYS_WAIT_H */ /* Define this if you have the \`union wait' type in . */ /* #undef HAVE_UNION_WAIT */ /* Define to 1 if you have the header file. */ /* #define HAVE_UNISTD_H 1*/ /* Define to 1 if you have the header file. */ /* #undef HAVE_VARARGS_H */ /* Define to 1 if you have the `vfork' function. */ /* #undef HAVE_VFORK */ /* Define to 1 if you have the header file. */ /* #undef HAVE_VFORK_H */ /* Define to 1 if you have the `vprintf' function. */ #define HAVE_VPRINTF 1 /* Define to 1 if you have the `wait3' function. */ /* #undef HAVE_WAIT3 */ /* Define to 1 if you have the `waitpid' function. */ /* #undef HAVE_WAITPID */ /* Define to 1 if `fork' works. */ /* #undef HAVE_WORKING_FORK */ /* Define to 1 if `vfork' works. */ /* #undef HAVE_WORKING_VFORK */ /* Build host information. */ #define MAKE_HOST "Windows32" /* Define this to enable job server support in GNU make. */ /* #undef MAKE_JOBSERVER */ /* Define to 1 if your `struct nlist' has an `n_un' member. Obsolete, depend on `HAVE_STRUCT_NLIST_N_UN_N_NAME */ /* #undef NLIST_NAME_UNION */ /* Define if struct nlist.n_name is a pointer rather than an array. */ /* #undef NLIST_STRUCT */ /* Define to 1 if your C compiler doesn't accept -c and -o together. */ /* #undef NO_MINUS_C_MINUS_O */ /* Name of this package (needed by automake) */ #define PACKAGE "make" /* Define to 1 if the C compiler supports function prototypes. */ #define PROTOTYPES 1 /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void /* Define to the name of the SCCS 'get' command. */ #define SCCS_GET "echo no sccs get" /* Define this if the SCCS 'get' command understands the '-G' option. */ /* #undef SCCS_GET_MINUS_G */ /* Define to 1 if the `setvbuf' function takes the buffering type as its second argument and the buffer pointer as the third, as on System V before release 3. */ /* #undef SETVBUF_REVERSED */ /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ /* #undef STACK_DIRECTION */ /* Define to 1 if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ /* Define to 1 if you have the ANSI C header files. */ #define STDC_HEADERS 1 /* Define if struct stat contains a nanoseconds field */ /* #undef ST_MTIM_NSEC */ /* Define to 1 on System V Release 4. */ /* #undef SVR4 */ /* Define to 1 if you can safely include both and . */ /* #define TIME_WITH_SYS_TIME 1 */ /* Define to 1 for Encore UMAX. */ /* #undef UMAX */ /* Define to 1 for Encore UMAX 4.3 that has instead of . */ /* #undef UMAX4_3 */ /* Version number of package */ #define VERSION "3.81" /* Define if using the dmalloc debugging malloc package */ /* #undef WITH_DMALLOC */ /* Define to 1 if on AIX 3. System headers sometimes define this. We just want to avoid a redefinition error message. */ #ifndef _ALL_SOURCE /* # undef _ALL_SOURCE */ #endif /* Number of bits in a file offset, on hosts where this is settable. */ /* #undef _FILE_OFFSET_BITS */ /* Define for large files, on AIX-style hosts. */ /* #undef _LARGE_FILES */ /* Define to 1 if on MINIX. */ /* #undef _MINIX */ /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ /* #undef _POSIX_1_SOURCE */ /* Define to 1 if you need to in order for `stat' and other things to work. */ #define _POSIX_SOURCE 1 /* Define like PROTOTYPES; this can be used by system headers. */ /*#define __PROTOTYPES 1*/ /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ /* Define to `int' if doesn't define. */ #define gid_t int /* Define to `int' if does not define. */ #define pid_t int /* Define to `int' if doesn't define. */ #define uid_t int /* Define uintmax_t if not defined in or . */ #define uintmax_t unsigned long /* Define as `fork' if `vfork' does not work. */ /*#define vfork fork*/ /* Define to `unsigned long' or `unsigned long long' if doesn't define. */ #define uintmax_t unsigned long /* Define if you support file names longer than 14 characters. */ #define HAVE_LONG_FILE_NAMES 1 /* Define if your struct stat has st_rdev. */ #undef HAVE_ST_RDEV #define HAVE_ST_RDEV 1 /* Define if you have the strftime function. */ #undef HAVE_STRFTIME #define HAVE_STRFTIME 1 /* Define if you have that is POSIX.1 compatible. */ /* #undef HAVE_SYS_WAIT_H */ /* Define if your struct tm has tm_zone. */ /* #undef HAVE_TM_ZONE */ /* Define if you don't have tm_zone but do have the external array tzname. */ #undef HAVE_TZNAME #define HAVE_TZNAME 1 /* Define if utime(file, NULL) sets file's timestamp to the present. */ #undef HAVE_UTIME_NULL #define HAVE_UTIME_NULL 1 /* Define to the installation directory for locales. */ #define LOCALEDIR "" /* * Refer to README.W32 for info on the following settings */ /* * If you have a shell that does not grok 'sh -c quoted-command-line' * correctly, you need this setting. Please see below for specific * shell support. */ /*#define BATCH_MODE_ONLY_SHELL 1 */ /* * Define if you have the Cygnus "Cygwin" GNU Windows32 tool set. * Do NOT define BATCH_MODE_ONLY_SHELL if you define HAVE_CYGWIN_SHELL */ /*#define HAVE_CYGWIN_SHELL 1 */ /* * Define if you have the MKS tool set or shell. Do NOT define * BATCH_MODE_ONLY_SHELL if you define HAVE_MKS_SHELL */ /*#define HAVE_MKS_SHELL 1 */ /* * Enforce the mutual exclusivity restriction. */ #ifdef HAVE_MKS_SHELL #undef BATCH_MODE_ONLY_SHELL #endif #ifdef HAVE_CYGWIN_SHELL #undef BATCH_MODE_ONLY_SHELL #endif make-dfsg-3.81.orig/config.h.in0000644000175000017500000002716210416553102016544 0ustar srivastasrivasta/* config.h.in. Generated from configure.in by autoheader. */ /* Define to 1 if the `closedir' function returns void instead of `int'. */ #undef CLOSEDIR_VOID /* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP systems. This function is required for `alloca.c' support on those systems. */ #undef CRAY_STACKSEG_END /* Define to 1 if using `alloca.c'. */ #undef C_ALLOCA /* Define to 1 if using `getloadavg.c'. */ #undef C_GETLOADAVG /* Define to 1 for DGUX with . */ #undef DGUX /* Define to 1 if translation of program messages to the user's native language is requested. */ #undef ENABLE_NLS /* Use high resolution file timestamps if nonzero. */ #undef FILE_TIMESTAMP_HI_RES /* Define to 1 if the `getloadavg' function needs to be run setuid or setgid. */ #undef GETLOADAVG_PRIVILEGED /* Define to 1 if you have `alloca', as a function or macro. */ #undef HAVE_ALLOCA /* Define to 1 if you have and it should be used (not on Ultrix). */ #undef HAVE_ALLOCA_H /* Define if your compiler conforms to the ANSI C standard. */ #undef HAVE_ANSI_COMPILER /* Define to 1 if you have the `atexit' function. */ #undef HAVE_ATEXIT /* Define to 1 if you have the `bsd_signal' function. */ #undef HAVE_BSD_SIGNAL /* Use case insensitive file names */ #undef HAVE_CASE_INSENSITIVE_FS /* Define if you have the clock_gettime function. */ #undef HAVE_CLOCK_GETTIME /* Define if the GNU dcgettext() function is already present or preinstalled. */ #undef HAVE_DCGETTEXT /* Define to 1 if you have the declaration of `sys_siglist', and to 0 if you don't. */ #undef HAVE_DECL_SYS_SIGLIST /* Define to 1 if you have the declaration of `_sys_siglist', and to 0 if you don't. */ #undef HAVE_DECL__SYS_SIGLIST /* Define to 1 if you have the declaration of `__sys_siglist', and to 0 if you don't. */ #undef HAVE_DECL___SYS_SIGLIST /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_DIRENT_H /* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */ #undef HAVE_DOPRNT /* Use platform specific coding */ #undef HAVE_DOS_PATHS /* Define to 1 if you have the `dup2' function. */ #undef HAVE_DUP2 /* Define to 1 if you have the header file. */ #undef HAVE_FCNTL_H /* Define to 1 if you have the `fdopen' function. */ #undef HAVE_FDOPEN /* Define to 1 if you have the `fork' function. */ #undef HAVE_FORK /* Define to 1 if you have the `getcwd' function. */ #undef HAVE_GETCWD /* Define to 1 if you have the `getgroups' function. */ #undef HAVE_GETGROUPS /* Define to 1 if you have the `gethostbyname' function. */ #undef HAVE_GETHOSTBYNAME /* Define to 1 if you have the `gethostname' function. */ #undef HAVE_GETHOSTNAME /* Define to 1 if you have the `getloadavg' function. */ #undef HAVE_GETLOADAVG /* Define to 1 if you have the `getrlimit' function. */ #undef HAVE_GETRLIMIT /* Define if the GNU gettext() function is already present or preinstalled. */ #undef HAVE_GETTEXT /* Define if you have a standard gettimeofday function */ #undef HAVE_GETTIMEOFDAY /* Define if you have the iconv() function. */ #undef HAVE_ICONV /* Define to 1 if you have the header file. */ #undef HAVE_INTTYPES_H /* Define to 1 if you have the `dgc' library (-ldgc). */ #undef HAVE_LIBDGC /* Define to 1 if you have the `kstat' library (-lkstat). */ #undef HAVE_LIBKSTAT /* Define to 1 if you have the header file. */ #undef HAVE_LIMITS_H /* Define to 1 if you have the header file. */ #undef HAVE_LOCALE_H /* Define to 1 if you have the `lstat' function. */ #undef HAVE_LSTAT /* Define to 1 if you have the header file. */ #undef HAVE_MACH_MACH_H /* Define to 1 if you have the `memcpy' function. */ #undef HAVE_MEMCPY /* Define to 1 if you have the `memmove' function. */ #undef HAVE_MEMMOVE /* Define to 1 if you have the header file. */ #undef HAVE_MEMORY_H /* Define to 1 if you have the `mkstemp' function. */ #undef HAVE_MKSTEMP /* Define to 1 if you have the `mktemp' function. */ #undef HAVE_MKTEMP /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_NDIR_H /* Define to 1 if you have the header file. */ #undef HAVE_NLIST_H /* Define to 1 if you have the `pipe' function. */ #undef HAVE_PIPE /* Define to 1 if you have the `pstat_getdynamic' function. */ #undef HAVE_PSTAT_GETDYNAMIC /* Define to 1 if you have the `readlink' function. */ #undef HAVE_READLINK /* Define to 1 if you have the `realpath' function. */ #undef HAVE_REALPATH /* Define if defines the SA_RESTART constant. */ #undef HAVE_SA_RESTART /* Define to 1 if you have the `setegid' function. */ #undef HAVE_SETEGID /* Define to 1 if you have the `seteuid' function. */ #undef HAVE_SETEUID /* Define to 1 if you have the `setlinebuf' function. */ #undef HAVE_SETLINEBUF /* Define to 1 if you have the `setlocale' function. */ #undef HAVE_SETLOCALE /* Define to 1 if you have the `setregid' function. */ #undef HAVE_SETREGID /* Define to 1 if you have the `setreuid' function. */ #undef HAVE_SETREUID /* Define to 1 if you have the `setrlimit' function. */ #undef HAVE_SETRLIMIT /* Define to 1 if you have the `setvbuf' function. */ #undef HAVE_SETVBUF /* Define to 1 if you have the `sigaction' function. */ #undef HAVE_SIGACTION /* Define to 1 if you have the `sigsetmask' function. */ #undef HAVE_SIGSETMASK /* Define to 1 if you have the `socket' function. */ #undef HAVE_SOCKET /* Define to 1 if you have the header file. */ #undef HAVE_STDARG_H /* Define to 1 if you have the header file. */ #undef HAVE_STDINT_H /* Define to 1 if you have the header file. */ #undef HAVE_STDLIB_H /* Define to 1 if you have the `strcasecmp' function. */ #undef HAVE_STRCASECMP /* Define to 1 if you have the `strchr' function. */ #undef HAVE_STRCHR /* Define to 1 if you have the `strcoll' function and it is properly defined. */ #undef HAVE_STRCOLL /* Define to 1 if you have the `strdup' function. */ #undef HAVE_STRDUP /* Define to 1 if you have the `strerror' function. */ #undef HAVE_STRERROR /* Define to 1 if you have the header file. */ #undef HAVE_STRINGS_H /* Define to 1 if you have the header file. */ #undef HAVE_STRING_H /* Define to 1 if you have the `strsignal' function. */ #undef HAVE_STRSIGNAL /* Define to 1 if `n_un.n_name' is member of `struct nlist'. */ #undef HAVE_STRUCT_NLIST_N_UN_N_NAME /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_SYS_DIR_H /* Define to 1 if you have the header file, and it defines `DIR'. */ #undef HAVE_SYS_NDIR_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_PARAM_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_RESOURCE_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_STAT_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TIMEB_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TIME_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_TYPES_H /* Define to 1 if you have the header file. */ #undef HAVE_SYS_WAIT_H /* Define this if you have the \`union wait' type in . */ #undef HAVE_UNION_WAIT /* Define to 1 if you have the header file. */ #undef HAVE_UNISTD_H /* Define to 1 if you have the header file. */ #undef HAVE_VARARGS_H /* Define to 1 if you have the `vfork' function. */ #undef HAVE_VFORK /* Define to 1 if you have the header file. */ #undef HAVE_VFORK_H /* Define to 1 if you have the `vprintf' function. */ #undef HAVE_VPRINTF /* Define to 1 if you have the `wait3' function. */ #undef HAVE_WAIT3 /* Define to 1 if you have the `waitpid' function. */ #undef HAVE_WAITPID /* Define to 1 if `fork' works. */ #undef HAVE_WORKING_FORK /* Define to 1 if `vfork' works. */ #undef HAVE_WORKING_VFORK /* Build host information. */ #undef MAKE_HOST /* Define this to enable job server support in GNU make. */ #undef MAKE_JOBSERVER /* Define this to enable symbolic link timestamp checking. */ #undef MAKE_SYMLINKS /* Define to 1 if your `struct nlist' has an `n_un' member. Obsolete, depend on `HAVE_STRUCT_NLIST_N_UN_N_NAME */ #undef NLIST_NAME_UNION /* Define if struct nlist.n_name is a pointer rather than an array. */ #undef NLIST_STRUCT /* Define to 1 if your C compiler doesn't accept -c and -o together. */ #undef NO_MINUS_C_MINUS_O /* Name of package */ #undef PACKAGE /* Define to the address where bug reports for this package should be sent. */ #undef PACKAGE_BUGREPORT /* Define to the full name of this package. */ #undef PACKAGE_NAME /* Define to the full name and version of this package. */ #undef PACKAGE_STRING /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME /* Define to the version of this package. */ #undef PACKAGE_VERSION /* Define to 1 if the C compiler supports function prototypes. */ #undef PROTOTYPES /* Define as the return type of signal handlers (`int' or `void'). */ #undef RETSIGTYPE /* Define to the name of the SCCS 'get' command. */ #undef SCCS_GET /* Define this if the SCCS 'get' command understands the '-G' option. */ #undef SCCS_GET_MINUS_G /* Define to 1 if the `setvbuf' function takes the buffering type as its second argument and the buffer pointer as the third, as on System V before release 3. */ #undef SETVBUF_REVERSED /* If using the C implementation of alloca, define if you know the direction of stack growth for your system; otherwise it will be automatically deduced at run-time. STACK_DIRECTION > 0 => grows toward higher addresses STACK_DIRECTION < 0 => grows toward lower addresses STACK_DIRECTION = 0 => direction of growth unknown */ #undef STACK_DIRECTION /* Define to 1 if the `S_IS*' macros in do not work properly. */ #undef STAT_MACROS_BROKEN /* Define to 1 if you have the ANSI C header files. */ #undef STDC_HEADERS /* Define if struct stat contains a nanoseconds field */ #undef ST_MTIM_NSEC /* Define to 1 on System V Release 4. */ #undef SVR4 /* Define to 1 if you can safely include both and . */ #undef TIME_WITH_SYS_TIME /* Define to 1 for Encore UMAX. */ #undef UMAX /* Define to 1 for Encore UMAX 4.3 that has instead of . */ #undef UMAX4_3 /* Version number of package */ #undef VERSION /* Use platform specific coding */ #undef WINDOWS32 /* Define if using the dmalloc debugging malloc package */ #undef WITH_DMALLOC /* Define to 1 if on AIX 3. System headers sometimes define this. We just want to avoid a redefinition error message. */ #ifndef _ALL_SOURCE # undef _ALL_SOURCE #endif /* Number of bits in a file offset, on hosts where this is settable. */ #undef _FILE_OFFSET_BITS /* Define for large files, on AIX-style hosts. */ #undef _LARGE_FILES /* Define to 1 if on MINIX. */ #undef _MINIX /* Define to 2 if the system does not provide POSIX.1 features except with this defined. */ #undef _POSIX_1_SOURCE /* Define to 1 if you need to in order for `stat' and other things to work. */ #undef _POSIX_SOURCE /* Define like PROTOTYPES; this can be used by system headers. */ #undef __PROTOTYPES /* Define to empty if `const' does not conform to ANSI C. */ #undef const /* Define to `int' if doesn't define. */ #undef gid_t /* Define to `int' if does not define. */ #undef pid_t /* Define to `int' if doesn't define. */ #undef uid_t /* Define uintmax_t if not defined in or . */ #undef uintmax_t /* Define as `fork' if `vfork' does not work. */ #undef vfork make-dfsg-3.81.orig/configh.dos0000444000175000017500000000670310416553102016641 0ustar srivastasrivasta/* configh.dos -- hand-massaged config.h file for MS-DOS builds -*-C-*- Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Many things are defined already by a system header. */ #include #if __DJGPP__ > 2 || __DJGPP_MINOR__ > 1 /* Define if `sys_siglist' is declared by . */ # define SYS_SIGLIST_DECLARED 1 /* Define this if the C library defines the variable `_sys_siglist'. */ # define HAVE_SYS_SIGLIST 1 #else /* Define NSIG. */ # define NSIG SIGMAX #endif /* Use high resolution file timestamps if nonzero. */ #define FILE_TIMESTAMP_HI_RES 0 /* Define to 1 if you have `alloca', as a function or macro. */ #define HAVE_ALLOCA 1 /* Define if you have the fdopen function. */ #define HAVE_FDOPEN 1 /* Define to 1 if you have the `getgroups' function. */ #define HAVE_GETGROUPS 1 /* Define if you have the header file. */ #define HAVE_MEMORY_H 1 /* Define if you have the mkstemp function. */ #define HAVE_MKSTEMP 1 /* Define to 1 if you have the `mktemp' function. */ #define HAVE_MKTEMP 1 /* Define to 1 if you have the `setlinebuf' function. */ #define HAVE_SETLINEBUF 1 /* Define to 1 if you have the `setvbuf' function. */ #define HAVE_SETVBUF 1 #define SCCS_GET "get" /* Define to `unsigned long' or `unsigned long long' if doesn't define. */ #define uintmax_t unsigned long long /* Define the type of the first arg to select(). */ #define fd_set_size_t int /* Define if you have the select function. */ #define HAVE_SELECT 1 /* Define if your compiler conforms to the ANSI C standard. */ #define HAVE_ANSI_COMPILER 1 /* Define to 1 if you have the header file. */ #define HAVE_STDARG_H 1 /* Define if you have the vprintf library function. */ #undef HAVE_VPRINTF #define HAVE_VPRINTF 1 /* Name of the package */ #define PACKAGE "make" /* Define to the address where bug reports for this package should be sent. */ #define PACKAGE_BUGREPORT "bug-make@gnu.org" /* Define to the full name of this package. */ #define PACKAGE_NAME "GNU make" /* Define to the full name and version of this package. */ #define PACKAGE_STRING "GNU make 3.81" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "make" /* Define to the version of this package. */ #define PACKAGE_VERSION "3.81" /* Define to 1 if the C compiler supports function prototypes. */ #define PROTOTYPES 1 /* Define to 1 if `sys_siglist' is declared by or . */ #define SYS_SIGLIST_DECLARED 1 /* Version number of package */ #define VERSION "3.81" /* Build host information. */ #define MAKE_HOST "i386-pc-msdosdjgpp" /* Grok DOS paths (drive specs and backslash path element separators) */ #define HAVE_DOS_PATHS make-dfsg-3.81.orig/configure0000755000175000017500000160062510416553102016432 0ustar srivastasrivasta#! /bin/sh # From configure.in Id: configure.in,v 1.142 2006/04/01 06:36:40 psmith Exp . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59 for GNU make 3.81. # # Report bugs to . # # Copyright (C) 2003 Free Software Foundation, Inc. # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2 { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH # Name of the host. # hostname on some systems (SVR3.2, Linux) returns a bogus exit status, # so uname gets run too. ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` exec 6>&1 # # Initializations. # ac_default_prefix=/usr/local ac_config_libobj_dir=. cross_compiling=no subdirs= MFLAGS= MAKEFLAGS= SHELL=${CONFIG_SHELL-/bin/sh} # Maximum number of lines to put in a shell here document. # This variable seems obsolete. It should probably be removed, and # only ac_max_sed_lines should be used. : ${ac_max_here_lines=38} # Identity of this package. PACKAGE_NAME='GNU make' PACKAGE_TARNAME='make' PACKAGE_VERSION='3.81' PACKAGE_STRING='GNU make 3.81' PACKAGE_BUGREPORT='bug-make@gnu.org' ac_unique_file="vpath.c" # Factoring default headers for most tests. ac_includes_default="\ #include #if HAVE_SYS_TYPES_H # include #endif #if HAVE_SYS_STAT_H # include #endif #if STDC_HEADERS # include # include #else # if HAVE_STDLIB_H # include # endif #endif #if HAVE_STRING_H # if !STDC_HEADERS && HAVE_MEMORY_H # include # endif # include #endif #if HAVE_STRINGS_H # include #endif #if HAVE_INTTYPES_H # include #else # if HAVE_STDINT_H # include # endif #endif #if HAVE_UNISTD_H # include #endif" ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE RANLIB ac_ct_RANLIB CPP AR PERL build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP U ANSI2KNR MKINSTALLDIRS USE_NLS MSGFMT GMSGFMT XGETTEXT MSGMERGE LIBICONV LTLIBICONV INTLLIBS LIBINTL LTLIBINTL POSUB ALLOCA LIBOBJS NEED_SETGID KMEM_GROUP GETLOADAVG_LIBS REMOTE USE_CUSTOMS_TRUE USE_CUSTOMS_FALSE GLOBINC GLOBLIB USE_LOCAL_GLOB_TRUE USE_LOCAL_GLOB_FALSE MAKE_HOST WINDOWSENV_TRUE WINDOWSENV_FALSE LTLIBOBJS' ac_subst_files='MAINT_MAKEFILE' # Initialize some variables set by options. ac_init_help= ac_init_version=false # The variables have the same names as the options, with # dashes changed to underlines. cache_file=/dev/null exec_prefix=NONE no_create= no_recursion= prefix=NONE program_prefix=NONE program_suffix=NONE program_transform_name=s,x,x, silent= site= srcdir= verbose= x_includes=NONE x_libraries=NONE # Installation directory options. # These are left unexpanded so users can "make install exec_prefix=/foo" # and all the variables that are supposed to be based on exec_prefix # by default will actually change. # Use braces instead of parens because sh, perl, etc. also accept them. bindir='${exec_prefix}/bin' sbindir='${exec_prefix}/sbin' libexecdir='${exec_prefix}/libexec' datadir='${prefix}/share' sysconfdir='${prefix}/etc' sharedstatedir='${prefix}/com' localstatedir='${prefix}/var' libdir='${exec_prefix}/lib' includedir='${prefix}/include' oldincludedir='/usr/include' infodir='${prefix}/info' mandir='${prefix}/man' ac_prev= for ac_option do # If the previous option needs an argument, assign it. if test -n "$ac_prev"; then eval "$ac_prev=\$ac_option" ac_prev= continue fi ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'` # Accept the important Cygnus configure options, so we can diagnose typos. case $ac_option in -bindir | --bindir | --bindi | --bind | --bin | --bi) ac_prev=bindir ;; -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*) bindir=$ac_optarg ;; -build | --build | --buil | --bui | --bu) ac_prev=build_alias ;; -build=* | --build=* | --buil=* | --bui=* | --bu=*) build_alias=$ac_optarg ;; -cache-file | --cache-file | --cache-fil | --cache-fi \ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c) ac_prev=cache_file ;; -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*) cache_file=$ac_optarg ;; --config-cache | -C) cache_file=config.cache ;; -datadir | --datadir | --datadi | --datad | --data | --dat | --da) ac_prev=datadir ;; -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \ | --da=*) datadir=$ac_optarg ;; -disable-* | --disable-*) ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` eval "enable_$ac_feature=no" ;; -enable-* | --enable-*) ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid feature name: $ac_feature" >&2 { (exit 1); exit 1; }; } ac_feature=`echo $ac_feature | sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "enable_$ac_feature='$ac_optarg'" ;; -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \ | --exec | --exe | --ex) ac_prev=exec_prefix ;; -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \ | --exec=* | --exe=* | --ex=*) exec_prefix=$ac_optarg ;; -gas | --gas | --ga | --g) # Obsolete; use --with-gas. with_gas=yes ;; -help | --help | --hel | --he | -h) ac_init_help=long ;; -help=r* | --help=r* | --hel=r* | --he=r* | -hr*) ac_init_help=recursive ;; -help=s* | --help=s* | --hel=s* | --he=s* | -hs*) ac_init_help=short ;; -host | --host | --hos | --ho) ac_prev=host_alias ;; -host=* | --host=* | --hos=* | --ho=*) host_alias=$ac_optarg ;; -includedir | --includedir | --includedi | --included | --include \ | --includ | --inclu | --incl | --inc) ac_prev=includedir ;; -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \ | --includ=* | --inclu=* | --incl=* | --inc=*) includedir=$ac_optarg ;; -infodir | --infodir | --infodi | --infod | --info | --inf) ac_prev=infodir ;; -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*) infodir=$ac_optarg ;; -libdir | --libdir | --libdi | --libd) ac_prev=libdir ;; -libdir=* | --libdir=* | --libdi=* | --libd=*) libdir=$ac_optarg ;; -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \ | --libexe | --libex | --libe) ac_prev=libexecdir ;; -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \ | --libexe=* | --libex=* | --libe=*) libexecdir=$ac_optarg ;; -localstatedir | --localstatedir | --localstatedi | --localstated \ | --localstate | --localstat | --localsta | --localst \ | --locals | --local | --loca | --loc | --lo) ac_prev=localstatedir ;; -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ | --localstate=* | --localstat=* | --localsta=* | --localst=* \ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*) localstatedir=$ac_optarg ;; -mandir | --mandir | --mandi | --mand | --man | --ma | --m) ac_prev=mandir ;; -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*) mandir=$ac_optarg ;; -nfp | --nfp | --nf) # Obsolete; use --without-fp. with_fp=no ;; -no-create | --no-create | --no-creat | --no-crea | --no-cre \ | --no-cr | --no-c | -n) no_create=yes ;; -no-recursion | --no-recursion | --no-recursio | --no-recursi \ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r) no_recursion=yes ;; -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \ | --oldin | --oldi | --old | --ol | --o) ac_prev=oldincludedir ;; -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*) oldincludedir=$ac_optarg ;; -prefix | --prefix | --prefi | --pref | --pre | --pr | --p) ac_prev=prefix ;; -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*) prefix=$ac_optarg ;; -program-prefix | --program-prefix | --program-prefi | --program-pref \ | --program-pre | --program-pr | --program-p) ac_prev=program_prefix ;; -program-prefix=* | --program-prefix=* | --program-prefi=* \ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*) program_prefix=$ac_optarg ;; -program-suffix | --program-suffix | --program-suffi | --program-suff \ | --program-suf | --program-su | --program-s) ac_prev=program_suffix ;; -program-suffix=* | --program-suffix=* | --program-suffi=* \ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*) program_suffix=$ac_optarg ;; -program-transform-name | --program-transform-name \ | --program-transform-nam | --program-transform-na \ | --program-transform-n | --program-transform- \ | --program-transform | --program-transfor \ | --program-transfo | --program-transf \ | --program-trans | --program-tran \ | --progr-tra | --program-tr | --program-t) ac_prev=program_transform_name ;; -program-transform-name=* | --program-transform-name=* \ | --program-transform-nam=* | --program-transform-na=* \ | --program-transform-n=* | --program-transform-=* \ | --program-transform=* | --program-transfor=* \ | --program-transfo=* | --program-transf=* \ | --program-trans=* | --program-tran=* \ | --progr-tra=* | --program-tr=* | --program-t=*) program_transform_name=$ac_optarg ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) silent=yes ;; -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb) ac_prev=sbindir ;; -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \ | --sbi=* | --sb=*) sbindir=$ac_optarg ;; -sharedstatedir | --sharedstatedir | --sharedstatedi \ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \ | --sharedst | --shareds | --shared | --share | --shar \ | --sha | --sh) ac_prev=sharedstatedir ;; -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \ | --sha=* | --sh=*) sharedstatedir=$ac_optarg ;; -site | --site | --sit) ac_prev=site ;; -site=* | --site=* | --sit=*) site=$ac_optarg ;; -srcdir | --srcdir | --srcdi | --srcd | --src | --sr) ac_prev=srcdir ;; -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*) srcdir=$ac_optarg ;; -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \ | --syscon | --sysco | --sysc | --sys | --sy) ac_prev=sysconfdir ;; -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*) sysconfdir=$ac_optarg ;; -target | --target | --targe | --targ | --tar | --ta | --t) ac_prev=target_alias ;; -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*) target_alias=$ac_optarg ;; -v | -verbose | --verbose | --verbos | --verbo | --verb) verbose=yes ;; -version | --version | --versio | --versi | --vers | -V) ac_init_version=: ;; -with-* | --with-*) ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package| sed 's/-/_/g'` case $ac_option in *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;; *) ac_optarg=yes ;; esac eval "with_$ac_package='$ac_optarg'" ;; -without-* | --without-*) ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid package name: $ac_package" >&2 { (exit 1); exit 1; }; } ac_package=`echo $ac_package | sed 's/-/_/g'` eval "with_$ac_package=no" ;; --x) # Obsolete; use --with-x. with_x=yes ;; -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \ | --x-incl | --x-inc | --x-in | --x-i) ac_prev=x_includes ;; -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*) x_includes=$ac_optarg ;; -x-libraries | --x-libraries | --x-librarie | --x-librari \ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l) ac_prev=x_libraries ;; -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; -*) { echo "$as_me: error: unrecognized option: $ac_option Try \`$0 --help' for more information." >&2 { (exit 1); exit 1; }; } ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && { echo "$as_me: error: invalid variable name: $ac_envvar" >&2 { (exit 1); exit 1; }; } ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` eval "$ac_envvar='$ac_optarg'" export $ac_envvar ;; *) # FIXME: should be removed in autoconf 3.0. echo "$as_me: WARNING: you should use --build, --host, --target" >&2 expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && echo "$as_me: WARNING: invalid host type: $ac_option" >&2 : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option} ;; esac done if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` { echo "$as_me: error: missing argument to $ac_option" >&2 { (exit 1); exit 1; }; } fi # Be sure to have absolute paths. for ac_var in exec_prefix prefix do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* | NONE | '' ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # Be sure to have absolute paths. for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \ localstatedir libdir includedir oldincludedir infodir mandir do eval ac_val=$`echo $ac_var` case $ac_val in [\\/$]* | ?:[\\/]* ) ;; *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 { (exit 1); exit 1; }; };; esac done # There might be people who depend on the old broken behavior: `$host' # used to hold the argument of --host etc. # FIXME: To remove some day. build=$build_alias host=$host_alias target=$target_alias # FIXME: To remove some day. if test "x$host_alias" != x; then if test "x$build_alias" = x; then cross_compiling=maybe echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host. If a cross compiler is detected then cross compile mode will be used." >&2 elif test "x$build_alias" != "x$host_alias"; then cross_compiling=yes fi fi ac_tool_prefix= test -n "$host_alias" && ac_tool_prefix=$host_alias- test "$silent" = yes && exec 6>/dev/null # Find the source files, if location was not specified. if test -z "$srcdir"; then ac_srcdir_defaulted=yes # Try the directory containing this script, then its parent. ac_confdir=`(dirname "$0") 2>/dev/null || $as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$0" : 'X\(//\)[^/]' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$0" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` srcdir=$ac_confdir if test ! -r $srcdir/$ac_unique_file; then srcdir=.. fi else ac_srcdir_defaulted=no fi if test ! -r $srcdir/$ac_unique_file; then if test "$ac_srcdir_defaulted" = yes; then { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2 { (exit 1); exit 1; }; } else { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 { (exit 1); exit 1; }; } fi fi (cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null || { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2 { (exit 1); exit 1; }; } srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'` ac_env_build_alias_set=${build_alias+set} ac_env_build_alias_value=$build_alias ac_cv_env_build_alias_set=${build_alias+set} ac_cv_env_build_alias_value=$build_alias ac_env_host_alias_set=${host_alias+set} ac_env_host_alias_value=$host_alias ac_cv_env_host_alias_set=${host_alias+set} ac_cv_env_host_alias_value=$host_alias ac_env_target_alias_set=${target_alias+set} ac_env_target_alias_value=$target_alias ac_cv_env_target_alias_set=${target_alias+set} ac_cv_env_target_alias_value=$target_alias ac_env_CC_set=${CC+set} ac_env_CC_value=$CC ac_cv_env_CC_set=${CC+set} ac_cv_env_CC_value=$CC ac_env_CFLAGS_set=${CFLAGS+set} ac_env_CFLAGS_value=$CFLAGS ac_cv_env_CFLAGS_set=${CFLAGS+set} ac_cv_env_CFLAGS_value=$CFLAGS ac_env_LDFLAGS_set=${LDFLAGS+set} ac_env_LDFLAGS_value=$LDFLAGS ac_cv_env_LDFLAGS_set=${LDFLAGS+set} ac_cv_env_LDFLAGS_value=$LDFLAGS ac_env_CPPFLAGS_set=${CPPFLAGS+set} ac_env_CPPFLAGS_value=$CPPFLAGS ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set} ac_cv_env_CPPFLAGS_value=$CPPFLAGS ac_env_CPP_set=${CPP+set} ac_env_CPP_value=$CPP ac_cv_env_CPP_set=${CPP+set} ac_cv_env_CPP_value=$CPP # # Report the --help message. # if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF \`configure' configures GNU make 3.81 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit -q, --quiet, --silent do not print \`checking...' messages --cache-file=FILE cache test results in FILE [disabled] -C, --config-cache alias for \`--cache-file=config.cache' -n, --no-create do not create output files --srcdir=DIR find the sources in DIR [configure dir or \`..'] _ACEOF cat <<_ACEOF Installation directories: --prefix=PREFIX install architecture-independent files in PREFIX [$ac_default_prefix] --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX [PREFIX] By default, \`make install' will install all the files in \`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify an installation prefix other than \`$ac_default_prefix' using \`--prefix', for instance \`--prefix=\$HOME'. For better control, use the options below. Fine tuning of the installation directories: --bindir=DIR user executables [EPREFIX/bin] --sbindir=DIR system admin executables [EPREFIX/sbin] --libexecdir=DIR program executables [EPREFIX/libexec] --datadir=DIR read-only architecture-independent data [PREFIX/share] --sysconfdir=DIR read-only single-machine data [PREFIX/etc] --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com] --localstatedir=DIR modifiable single-machine data [PREFIX/var] --libdir=DIR object code libraries [EPREFIX/lib] --includedir=DIR C header files [PREFIX/include] --oldincludedir=DIR C header files for non-gcc [/usr/include] --infodir=DIR info documentation [PREFIX/info] --mandir=DIR man documentation [PREFIX/man] _ACEOF cat <<\_ACEOF Program names: --program-prefix=PREFIX prepend PREFIX to installed program names --program-suffix=SUFFIX append SUFFIX to installed program names --program-transform-name=PROGRAM run sed PROGRAM on installed program names System types: --build=BUILD configure for building on BUILD [guessed] --host=HOST cross-compile to build programs to run on HOST [BUILD] _ACEOF fi if test -n "$ac_init_help"; then case $ac_init_help in short | recursive ) echo "Configuration of GNU make 3.81:";; esac cat <<\_ACEOF Optional Features: --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) --enable-FEATURE[=ARG] include FEATURE [ARG=yes] --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors --disable-nls do not use Native Language Support --disable-rpath do not hardcode runtime library paths --disable-largefile omit support for large files --enable-case-insensitive-file-system enable case insensitive file system support --disable-job-server disallow recursive make communication during -jN Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) --with-gnu-ld assume the C compiler uses GNU ld default=no --with-libiconv-prefix[=DIR] search for libiconv in DIR/include and DIR/lib --without-libiconv-prefix don't search for libiconv in includedir and libdir --with-libintl-prefix[=DIR] search for libintl in DIR/include and DIR/lib --without-libintl-prefix don't search for libintl in includedir and libdir --with-customs=DIR enable remote jobs via Customs--see README.customs --with-dmalloc use dmalloc, as in http://www.dmalloc.com/dmalloc.tar.gz Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L if you have libraries in a nonstandard directory CPPFLAGS C/C++ preprocessor flags, e.g. -I if you have headers in a nonstandard directory CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. Report bugs to . _ACEOF fi if test "$ac_init_help" = "recursive"; then # If there are subdirs, report their specific --help. ac_popdir=`pwd` for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue test -d $ac_dir || continue ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac cd $ac_dir # Check for guested configure; otherwise get Cygnus style configure. if test -f $ac_srcdir/configure.gnu; then echo $SHELL $ac_srcdir/configure.gnu --help=recursive elif test -f $ac_srcdir/configure; then echo $SHELL $ac_srcdir/configure --help=recursive elif test -f $ac_srcdir/configure.ac || test -f $ac_srcdir/configure.in; then echo $ac_configure --help else echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 fi cd "$ac_popdir" done fi test -n "$ac_init_help" && exit 0 if $ac_init_version; then cat <<\_ACEOF GNU make configure 3.81 generated by GNU Autoconf 2.59 Copyright (C) 2003 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. _ACEOF exit 0 fi exec 5>config.log cat >&5 <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. It was created by GNU make $as_me 3.81, which was generated by GNU Autoconf 2.59. Invocation command line was $ $0 $@ _ACEOF { cat <<_ASUNAME ## --------- ## ## Platform. ## ## --------- ## hostname = `(hostname || uname -n) 2>/dev/null | sed 1q` uname -m = `(uname -m) 2>/dev/null || echo unknown` uname -r = `(uname -r) 2>/dev/null || echo unknown` uname -s = `(uname -s) 2>/dev/null || echo unknown` uname -v = `(uname -v) 2>/dev/null || echo unknown` /usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown` /bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown` /bin/arch = `(/bin/arch) 2>/dev/null || echo unknown` /usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown` /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown` hostinfo = `(hostinfo) 2>/dev/null || echo unknown` /bin/machine = `(/bin/machine) 2>/dev/null || echo unknown` /usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown` /bin/universe = `(/bin/universe) 2>/dev/null || echo unknown` _ASUNAME as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. echo "PATH: $as_dir" done } >&5 cat >&5 <<_ACEOF ## ----------- ## ## Core tests. ## ## ----------- ## _ACEOF # Keep a trace of the command line. # Strip out --no-create and --no-recursion so they do not pile up. # Strip out --silent because we don't want to record it for future runs. # Also quote any args containing shell meta-characters. # Make two passes to allow for proper duplicate-argument suppression. ac_configure_args= ac_configure_args0= ac_configure_args1= ac_sep= ac_must_keep_next=false for ac_pass in 1 2 do for ac_arg do case $ac_arg in -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil) continue ;; *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; 2) ac_configure_args1="$ac_configure_args1 '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else case $ac_arg in *=* | --config-cache | -C | -disable-* | --disable-* \ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \ | -with-* | --with-* | -without-* | --without-* | --x) case "$ac_configure_args0 " in "$ac_configure_args1"*" '$ac_arg' "* ) continue ;; esac ;; -* ) ac_must_keep_next=true ;; esac fi ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'" # Get rid of the leading space. ac_sep=" " ;; esac done done $as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } $as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there # would cause problems or look ugly. # WARNING: Be sure not to use single quotes in there, as some shells, # such as our DU 5.0 friend, will then `close' the trap. trap 'exit_status=$? # Save into config.log some information that might help in debugging. { echo cat <<\_ASBOX ## ---------------- ## ## Cache variables. ## ## ---------------- ## _ASBOX echo # The following way of writing the cache mishandles newlines in values, { (set) 2>&1 | case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in *ac_space=\ *) sed -n \ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p" ;; *) sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } echo cat <<\_ASBOX ## ----------------- ## ## Output variables. ## ## ----------------- ## _ASBOX echo for ac_var in $ac_subst_vars do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo if test -n "$ac_subst_files"; then cat <<\_ASBOX ## ------------- ## ## Output files. ## ## ------------- ## _ASBOX echo for ac_var in $ac_subst_files do eval ac_val=$`echo $ac_var` echo "$ac_var='"'"'$ac_val'"'"'" done | sort echo fi if test -s confdefs.h; then cat <<\_ASBOX ## ----------- ## ## confdefs.h. ## ## ----------- ## _ASBOX echo sed "/^$/d" confdefs.h | sort echo fi test "$ac_signal" != 0 && echo "$as_me: caught signal $ac_signal" echo "$as_me: exit $exit_status" } >&5 rm -f core *.core && rm -rf conftest* confdefs* conf$$* $ac_clean_files && exit $exit_status ' 0 for ac_signal in 1 2 13 15; do trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -rf conftest* confdefs.h # AIX cpp loses on an empty file, so make sure it contains at least a newline. echo >confdefs.h # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF # Let the site file select an alternate cache file if it wants to. # Prefer explicitly selected file to automatically selected ones. if test -z "$CONFIG_SITE"; then if test "x$prefix" != xNONE; then CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site" else CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site" fi fi for ac_site_file in $CONFIG_SITE; do if test -r "$ac_site_file"; then { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" fi done if test -r "$cache_file"; then # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then { echo "$as_me:$LINENO: loading cache $cache_file" >&5 echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . $cache_file;; *) . ./$cache_file;; esac fi else { echo "$as_me:$LINENO: creating cache $cache_file" >&5 echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi # Check that the precious variables saved in the cache have kept the same # value. ac_cache_corrupted=false for ac_var in `(set) 2>&1 | sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do eval ac_old_set=\$ac_cv_env_${ac_var}_set eval ac_new_set=\$ac_env_${ac_var}_set eval ac_old_val="\$ac_cv_env_${ac_var}_value" eval ac_new_val="\$ac_env_${ac_var}_value" case $ac_old_set,$ac_new_set in set,) { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; *) if test "x$ac_old_val" != "x$ac_new_val"; then { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} { echo "$as_me:$LINENO: former value: $ac_old_val" >&5 echo "$as_me: former value: $ac_old_val" >&2;} { echo "$as_me:$LINENO: current value: $ac_new_val" >&5 echo "$as_me: current value: $ac_new_val" >&2;} ac_cache_corrupted=: fi;; esac # Pass precious variables to config.status. if test "$ac_new_set" = set; then case $ac_new_val in *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*) ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;; *) ac_arg=$ac_var=$ac_new_val ;; esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 echo "$as_me: error: changes in the environment can compromise the build" >&2;} { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Autoconf setup ac_aux_dir= for ac_dir in config $srcdir/config; do if test -f $ac_dir/install-sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install-sh -c" break elif test -f $ac_dir/install.sh; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/install.sh -c" break elif test -f $ac_dir/shtool; then ac_aux_dir=$ac_dir ac_install_sh="$ac_aux_dir/shtool install -c" break fi done if test -z "$ac_aux_dir"; then { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in config $srcdir/config" >&5 echo "$as_me: error: cannot find install-sh or install.sh in config $srcdir/config" >&2;} { (exit 1); exit 1; }; } fi ac_config_guess="$SHELL $ac_aux_dir/config.guess" ac_config_sub="$SHELL $ac_aux_dir/config.sub" ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure. ac_config_headers="$ac_config_headers config.h" # Automake setup am__api_version="1.9" # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi done done ;; esac done fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. We don't cache a # path for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the path is relative. INSTALL=$ac_install_sh fi fi echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$INSTALL" >&6 # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' echo "$as_me:$LINENO: checking whether build environment is sane" >&5 echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6 # Just in case sleep 1 echo timestamp > conftest.file # Do `set' in a subshell so we don't clobber the current shell's # arguments. Must try -L first in case configure is actually a # symlink; some systems play weird games with the mod time of symlinks # (eg FreeBSD returns the mod time of the symlink's containing # directory). if ( set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null` if test "$*" = "X"; then # -L didn't work. set X `ls -t $srcdir/configure conftest.file` fi rm -f conftest.file if test "$*" != "X $srcdir/configure conftest.file" \ && test "$*" != "X conftest.file $srcdir/configure"; then # If neither matched, then we have a broken ls. This can happen # if, for instance, CONFIG_SHELL is bash and it inherits a # broken ls alias from the environment. This has actually # happened. Such a system could not be considered "sane". { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&5 echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken alias in your environment" >&2;} { (exit 1); exit 1; }; } fi test "$2" = conftest.file ) then # Ok. : else { { echo "$as_me:$LINENO: error: newly created file is older than distributed files! Check your system clock" >&5 echo "$as_me: error: newly created file is older than distributed files! Check your system clock" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 test "$program_prefix" != NONE && program_transform_name="s,^,$program_prefix,;$program_transform_name" # Use a double $ so make ignores it. test "$program_suffix" != NONE && program_transform_name="s,\$,$program_suffix,;$program_transform_name" # Double any \ or $. echo might interpret backslashes. # By default was `s,x,x', remove it if useless. cat <<\_ACEOF >conftest.sed s/[\\$]/&&/g;s/;s,x,x,$// _ACEOF program_transform_name=`echo $program_transform_name | sed -f conftest.sed` rm conftest.sed # expand $ac_aux_dir to an absolute path am_aux_dir=`cd $ac_aux_dir && pwd` test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing" # Use eval to expand $SHELL if eval "$MISSING --run true"; then am_missing_run="$MISSING --run " else am_missing_run= { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5 echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;} fi if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then # We used to keeping the `.' as first argument, in order to # allow $(mkdir_p) to be used without argument. As in # $(mkdir_p) $(somedir) # where $(somedir) is conditionally defined. However this is wrong # for two reasons: # 1. if the package is installed by a user who cannot write `.' # make install will fail, # 2. the above comment should most certainly read # $(mkdir_p) $(DESTDIR)$(somedir) # so it does not work when $(somedir) is undefined and # $(DESTDIR) is not. # To support the latter case, we have to write # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir), # so the `.' trick is pointless. mkdir_p='mkdir -p --' else # On NextStep and OpenStep, the `mkdir' command does not # recognize any option. It will interpret all options as # directories to create, and then abort because `.' already # exists. for d in ./-p ./--version; do test -d $d && rmdir $d done # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists. if test -f "$ac_aux_dir/mkinstalldirs"; then mkdir_p='$(mkinstalldirs)' else mkdir_p='$(install_sh) -d' fi fi for ac_prog in gawk mawk nawk awk do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_AWK+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$AWK"; then ac_cv_prog_AWK="$AWK" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AWK="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi AWK=$ac_cv_prog_AWK if test -n "$AWK"; then echo "$as_me:$LINENO: result: $AWK" >&5 echo "${ECHO_T}$AWK" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$AWK" && break done echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5 echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6 set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'` if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.make <<\_ACEOF all: @echo 'ac_maketemp="$(MAKE)"' _ACEOF # GNU make sometimes prints "make[1]: Entering...", which would confuse us. eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=` if test -n "$ac_maketemp"; then eval ac_cv_prog_make_${ac_make}_set=yes else eval ac_cv_prog_make_${ac_make}_set=no fi rm -f conftest.make fi if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 SET_MAKE= else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 SET_MAKE="MAKE=${MAKE-make}" fi rm -rf .tst 2>/dev/null mkdir .tst 2>/dev/null if test -d .tst; then am__leading_dot=. else am__leading_dot=_ fi rmdir .tst 2>/dev/null # test to see if srcdir already configured if test "`cd $srcdir && pwd`" != "`pwd`" && test -f $srcdir/config.status; then { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5 echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;} { (exit 1); exit 1; }; } fi # test whether we have cygpath if test -z "$CYGPATH_W"; then if (cygpath --version) >/dev/null 2>/dev/null; then CYGPATH_W='cygpath -w' else CYGPATH_W=echo fi fi # Define the identity of the package. PACKAGE='make' VERSION='3.81' cat >>confdefs.h <<_ACEOF #define PACKAGE "$PACKAGE" _ACEOF cat >>confdefs.h <<_ACEOF #define VERSION "$VERSION" _ACEOF # Some tools Automake needs. ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"} AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"} AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"} AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"} MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"} install_sh=${install_sh-"$am_aux_dir/install-sh"} # Installed binaries are usually stripped using `strip' when the user # run `make install-strip'. However `strip' might not be the right # tool to use in cross-compilation environments, therefore Automake # will honor the `STRIP' environment variable to overrule this program. if test "$cross_compiling" != no; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args. set dummy ${ac_tool_prefix}strip; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$STRIP"; then ac_cv_prog_STRIP="$STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_STRIP="${ac_tool_prefix}strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi STRIP=$ac_cv_prog_STRIP if test -n "$STRIP"; then echo "$as_me:$LINENO: result: $STRIP" >&5 echo "${ECHO_T}$STRIP" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_STRIP"; then ac_ct_STRIP=$STRIP # Extract the first word of "strip", so it can be a program name with args. set dummy strip; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_STRIP"; then ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_STRIP="strip" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":" fi fi ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP if test -n "$ac_ct_STRIP"; then echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5 echo "${ECHO_T}$ac_ct_STRIP" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi STRIP=$ac_ct_STRIP else STRIP="$ac_cv_prog_STRIP" fi fi INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s" # We need awk for the "check" target. The system "awk" is bad on # some platforms. # Always define AMTAR for backward compatibility. AMTAR=${AMTAR-"${am_missing_run}tar"} am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -' # Checks for programs. ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="gcc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="${ac_tool_prefix}cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_CC"; then ac_ct_CC=$CC # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi CC=$ac_ct_CC else CC="$ac_cv_prog_CC" fi fi if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else ac_prog_rejected=no as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done if test $ac_prog_rejected = yes; then # We found a bogon in the path, so make sure we never use it. set dummy $ac_cv_prog_CC shift if test $# != 0; then # We chose a different compiler from the bogus one. # However, it has the same basename, so the bogon will be chosen # first if we set CC to just the basename; use the full file name. shift ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@" fi fi fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$CC"; then if test -n "$ac_tool_prefix"; then for ac_prog in cl do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$CC"; then ac_cv_prog_CC="$CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then echo "$as_me:$LINENO: result: $CC" >&5 echo "${ECHO_T}$CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$CC" && break done fi if test -z "$CC"; then ac_ct_CC=$CC for ac_prog in cl do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_CC"; then ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_CC="$ac_prog" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 echo "${ECHO_T}$ac_ct_CC" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -n "$ac_ct_CC" && break done CC=$ac_ct_CC fi fi test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&5 echo "$as_me: error: no acceptable C compiler found in \$PATH See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } # Provide some information about the compiler. echo "$as_me:$LINENO:" \ "checking for C compiler version" >&5 ac_compiler=`set X $ac_compile; echo $2` { (eval echo "$as_me:$LINENO: \"$ac_compiler --version &5\"") >&5 (eval $ac_compiler --version &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -v &5\"") >&5 (eval $ac_compiler -v &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } { (eval echo "$as_me:$LINENO: \"$ac_compiler -V &5\"") >&5 (eval $ac_compiler -V &5) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files a.out a.exe b.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 echo $ECHO_N "checking for C compiler default output file name... $ECHO_C" >&6 ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5 (eval $ac_link_default) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # Find the output, starting from the most likely. This scheme is # not robust to junk in `.', hence go to wildcards (a.*) only as a last # resort. # Be careful to initialize this variable, since it used to be cached. # Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile. ac_cv_exeext= # b.out is created by i960 compilers. for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; conftest.$ac_ext ) # This is the source file. ;; [ab].out ) # We found the default executable, but exeext='' is most # certainly right. break;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` # FIXME: I believe we export ac_cv_exeext for Libtool, # but it would be cool to find out if it's true. Does anybody # maintain Libtool? --akim. export ac_cv_exeext break;; * ) break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: C compiler cannot create executables See \`config.log' for more details." >&5 echo "$as_me: error: C compiler cannot create executables See \`config.log' for more details." >&2;} { (exit 77); exit 77; }; } fi ac_exeext=$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_file" >&5 echo "${ECHO_T}$ac_file" >&6 # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether the C compiler works" >&5 echo $ECHO_N "checking whether the C compiler works... $ECHO_C" >&6 # FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else { { echo "$as_me:$LINENO: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&5 echo "$as_me: error: cannot run C compiled programs. If you meant to cross compile, use \`--host'. See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi fi fi echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 rm -f a.out a.exe conftest$ac_cv_exeext b.out ac_clean_files=$ac_clean_files_save # Check the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $cross_compiling" >&5 echo "${ECHO_T}$cross_compiling" >&6 echo "$as_me:$LINENO: checking for suffix of executables" >&5 echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6 if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with # `rm'. for ac_file in conftest.exe conftest conftest.*; do test -f "$ac_file" || continue case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;; *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` export ac_cv_exeext break;; * ) break;; esac done else { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of executables: cannot compile and link See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest$ac_cv_exeext echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 echo "${ECHO_T}$ac_cv_exeext" >&6 rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT echo "$as_me:$LINENO: checking for suffix of object files" >&5 echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6 if test "${ac_cv_objext+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.o conftest.obj if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do case $ac_file in *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;; *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` break;; esac done else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 { { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&5 echo "$as_me: error: cannot compute suffix of object files: cannot compile See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi rm -f conftest.$ac_cv_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 echo "${ECHO_T}$ac_cv_objext" >&6 OBJEXT=$ac_cv_objext ac_objext=$OBJEXT echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6 if test "${ac_cv_c_compiler_gnu+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { #ifndef __GNUC__ choke me #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_compiler_gnu=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_compiler_gnu=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6 GCC=`test $ac_compiler_gnu = yes && echo yes` ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS CFLAGS="-g" echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6 if test "${ac_cv_prog_cc_g+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_g=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_prog_cc_g=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 echo "${ECHO_T}$ac_cv_prog_cc_g" >&6 if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS elif test $ac_cv_prog_cc_g = yes; then if test "$GCC" = yes; then CFLAGS="-g -O2" else CFLAGS="-g" fi else if test "$GCC" = yes; then CFLAGS="-O2" else CFLAGS= fi fi echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5 echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6 if test "${ac_cv_prog_cc_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_prog_cc_stdc=no ac_save_CC=$CC cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include /* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */ struct buf { int x; }; FILE * (*rcsopen) (struct buf *, struct stat *, int); static char *e (p, i) char **p; int i; { return p[i]; } static char *f (char * (*g) (char **, int), char **p, ...) { char *s; va_list v; va_start (v,p); s = g (p, va_arg (v,int)); va_end (v); return s; } /* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has function prototypes and stuff, but not '\xHH' hex character constants. These don't provoke an error unfortunately, instead are silently treated as 'x'. The following induces an error, until -std1 is added to get proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an array size at least. It's necessary to write '\x00'==0 to get something that's true only with -std1. */ int osf4_cc_array ['\x00' == 0 ? 1 : -1]; int test (int i, double x); struct s1 {int (*f) (int a);}; struct s2 {int (*f) (double a);}; int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int); int argc; char **argv; int main () { return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]; ; return 0; } _ACEOF # Don't try gcc -ansi; that turns off useful extensions and # breaks some systems' header files. # AIX -qlanglvl=ansi # Ultrix and OSF/1 -std1 # HP-UX 10.20 and later -Ae # HP-UX older versions -Aa -D_HPUX_SOURCE # SVR4 -Xc -D__EXTENSIONS__ for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_prog_cc_stdc=$ac_arg break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext done rm -f conftest.$ac_ext conftest.$ac_objext CC=$ac_save_CC fi case "x$ac_cv_prog_cc_stdc" in x|xno) echo "$as_me:$LINENO: result: none needed" >&5 echo "${ECHO_T}none needed" >&6 ;; *) echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5 echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6 CC="$CC $ac_cv_prog_cc_stdc" ;; esac # Some people use a C++ compiler to compile C. Since we use `exit', # in C++ we need to declare it. In case someone uses the same compiler # for both compiling C and C++ we need to have the C++ compiler decide # the declaration of exit, since it's the most demanding environment. cat >conftest.$ac_ext <<_ACEOF #ifndef __cplusplus choke me #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then for ac_declaration in \ '' \ 'extern "C" void std::exit (int) throw (); using std::exit;' \ 'extern "C" void std::exit (int); using std::exit;' \ 'extern "C" void exit (int) throw ();' \ 'extern "C" void exit (int);' \ 'void exit (int);' do cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration #include int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 continue fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_declaration int main () { exit (42); ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done rm -f conftest* if test -n "$ac_declaration"; then echo '#ifdef __cplusplus' >>confdefs.h echo $ac_declaration >>confdefs.h echo '#endif' >>confdefs.h fi else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu DEPDIR="${am__leading_dot}deps" ac_config_commands="$ac_config_commands depfiles" am_make=${MAKE-make} cat > confinc << 'END' am__doit: @echo done .PHONY: am__doit END # If we don't find an include directive, just comment out the code. echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5 echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6 am__include="#" am__quote= _am_result=none # First try GNU make style include. echo "include confinc" > confmf # We grep out `Entering directory' and `Leaving directory' # messages which can occur if `w' ends up in MAKEFLAGS. # In particular we don't look at `^make:' because GNU make might # be invoked under some other name (usually "gmake"), in which # case it prints its new name instead of `make'. if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then am__include=include am__quote= _am_result=GNU fi # Now try BSD make style include. if test "$am__include" = "#"; then echo '.include "confinc"' > confmf if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then am__include=.include am__quote="\"" _am_result=BSD fi fi echo "$as_me:$LINENO: result: $_am_result" >&5 echo "${ECHO_T}$_am_result" >&6 rm -f confinc confmf # Check whether --enable-dependency-tracking or --disable-dependency-tracking was given. if test "${enable_dependency_tracking+set}" = set; then enableval="$enable_dependency_tracking" fi; if test "x$enable_dependency_tracking" != xno; then am_depcomp="$ac_aux_dir/depcomp" AMDEPBACKSLASH='\' fi if test "x$enable_dependency_tracking" != xno; then AMDEP_TRUE= AMDEP_FALSE='#' else AMDEP_TRUE='#' AMDEP_FALSE= fi depcc="$CC" am_compiler_list= echo "$as_me:$LINENO: checking dependency style of $depcc" >&5 echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6 if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then # We make a subdir and do the tests there. Otherwise we can end up # making bogus files that we don't know about and never remove. For # instance it was reported that on HP-UX the gcc test will end up # making a dummy file named `D' -- because `-MD' means `put the output # in D'. mkdir conftest.dir # Copy depcomp to subdir because otherwise we won't find it if we're # using a relative directory. cp "$am_depcomp" conftest.dir cd conftest.dir # We will build objects and dependencies in a subdirectory because # it helps to detect inapplicable dependency modes. For instance # both Tru64's cc and ICC support -MD to output dependencies as a # side effect of compilation, but ICC will put the dependencies in # the current directory while Tru64 will put them in the object # directory. mkdir sub am_cv_CC_dependencies_compiler_type=none if test "$am_compiler_list" = ""; then am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp` fi for depmode in $am_compiler_list; do # Setup a source with many dependencies, because some compilers # like to wrap large dependency lists on column 80 (with \), and # we should not choose a depcomp mode which is confused by this. # # We need to recreate these files for each test, as the compiler may # overwrite some of them when testing with obscure command lines. # This happens at least with the AIX C compiler. : > sub/conftest.c for i in 1 2 3 4 5 6; do echo '#include "conftst'$i'.h"' >> sub/conftest.c # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with # Solaris 8's {/usr,}/bin/sh. touch sub/conftst$i.h done echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf case $depmode in nosideeffect) # after this tag, mechanisms are not by side-effect, so they'll # only be used when explicitly requested if test "x$enable_dependency_tracking" = xyes; then continue else break fi ;; none) break ;; esac # We check with `-c' and `-o' for the sake of the "dashmstdout" # mode. It turns out that the SunPro C++ compiler does not properly # handle `-M -o', and we need to detect this. if depmode=$depmode \ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \ >/dev/null 2>conftest.err && grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 && ${MAKE-make} -s -f confmf > /dev/null 2>&1; then # icc doesn't choke on unknown options, it will just issue warnings # or remarks (even with -Werror). So we grep stderr for any message # that says an option was ignored or not supported. # When given -MP, icc 7.0 and 7.1 complain thusly: # icc: Command line warning: ignoring option '-M'; no argument required # The diagnosis changed in icc 8.0: # icc: Command line remark: option '-MP' not supported if (grep 'ignoring option' conftest.err || grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else am_cv_CC_dependencies_compiler_type=$depmode break fi fi done cd .. rm -rf conftest.dir else am_cv_CC_dependencies_compiler_type=none fi fi echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5 echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type if test "x$enable_dependency_tracking" != xno \ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then am__fastdepCC_TRUE= am__fastdepCC_FALSE='#' else am__fastdepCC_TRUE='#' am__fastdepCC_FALSE= fi # Find a good install program. We prefer a C program (faster), # so one script is as good as another. But avoid the broken or # incompatible versions: # SysV /etc/install, /usr/sbin/install # SunOS /usr/etc/install # IRIX /sbin/install # AIX /bin/install # AmigaOS /C/install, which installs bootblocks on floppy discs # AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag # AFS /usr/afsws/bin/install, which mishandles nonexistent args # SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff" # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6 if test -z "$INSTALL"; then if test "${ac_cv_path_install+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. # Account for people who put trailing slashes in PATH elements. case $as_dir/ in ./ | .// | /cC/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. # Don't use installbsd from OSF since it installs stuff as root # by default. for ac_prog in ginstall scoinst install; do for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then if test $ac_prog = install && grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # AIX install. It has an incompatible calling convention. : elif test $ac_prog = install && grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then # program-specific install script used by HP pwplus--don't use. : else ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" break 3 fi fi done done ;; esac done fi if test "${ac_cv_path_install+set}" = set; then INSTALL=$ac_cv_path_install else # As a last resort, use the slow shell script. We don't cache a # path for INSTALL within a source directory, because that will # break other packages using the cache if that directory is # removed, or if the path is relative. INSTALL=$ac_install_sh fi fi echo "$as_me:$LINENO: result: $INSTALL" >&5 echo "${ECHO_T}$INSTALL" >&6 # Use test -z because SunOS4 sh mishandles braces in ${var-val}. # It thinks the first close brace ends the variable substitution. test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}' test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}' test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644' if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$RANLIB"; then ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then echo "$as_me:$LINENO: result: $RANLIB" >&5 echo "${ECHO_T}$RANLIB" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi fi if test -z "$ac_cv_prog_RANLIB"; then ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$ac_ct_RANLIB"; then ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_ac_ct_RANLIB="ranlib" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_ac_ct_RANLIB" && ac_cv_prog_ac_ct_RANLIB=":" fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 echo "${ECHO_T}$ac_ct_RANLIB" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi RANLIB=$ac_ct_RANLIB else RANLIB="$ac_cv_prog_RANLIB" fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6 # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then if test "${ac_cv_prog_CPP+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # Double quotes because CPP needs to be expanded for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp" do ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then break fi done ac_cv_prog_CPP=$CPP fi CPP=$ac_cv_prog_CPP else ac_cv_prog_CPP=$CPP fi echo "$as_me:$LINENO: result: $CPP" >&5 echo "${ECHO_T}$CPP" >&6 ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes do # Use a header file that comes with gcc, so configuring glibc # with a fresh cross-compiler works. # Prefer to if __STDC__ is defined, since # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __STDC__ # include #else # include #endif Syntax error _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then : else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Broken: fails on valid input. continue fi rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether non-existent headers # can be detected and how. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then # Broken: success on invalid input. continue else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 # Passes both tests. ac_preproc_ok=: break fi rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext if $ac_preproc_ok; then : else { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&5 echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check See \`config.log' for more details." >&2;} { (exit 1); exit 1; }; } fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu # Extract the first word of "ar", so it can be a program name with args. set dummy ar; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_AR+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$AR"; then ac_cv_prog_AR="$AR" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_AR="ar" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_AR" && ac_cv_prog_AR="ar" fi fi AR=$ac_cv_prog_AR if test -n "$AR"; then echo "$as_me:$LINENO: result: $AR" >&5 echo "${ECHO_T}$AR" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Perl is needed for the test suite (only) # Extract the first word of "perl", so it can be a program name with args. set dummy perl; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_prog_PERL+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -n "$PERL"; then ac_cv_prog_PERL="$PERL" # Let the user override the test. else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_prog_PERL="perl" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_prog_PERL" && ac_cv_prog_PERL="perl" fi fi PERL=$ac_cv_prog_PERL if test -n "$PERL"; then echo "$as_me:$LINENO: result: $PERL" >&5 echo "${ECHO_T}$PERL" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Specialized system macros # Make sure we can run config.sub. $ac_config_sub sun4 >/dev/null 2>&1 || { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5 echo "$as_me: error: cannot run $ac_config_sub" >&2;} { (exit 1); exit 1; }; } echo "$as_me:$LINENO: checking build system type" >&5 echo $ECHO_N "checking build system type... $ECHO_C" >&6 if test "${ac_cv_build+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_build_alias=$build_alias test -z "$ac_cv_build_alias" && ac_cv_build_alias=`$ac_config_guess` test -z "$ac_cv_build_alias" && { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 echo "$as_me: error: cannot guess build type; you must specify one" >&2;} { (exit 1); exit 1; }; } ac_cv_build=`$ac_config_sub $ac_cv_build_alias` || { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5 echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: $ac_cv_build" >&5 echo "${ECHO_T}$ac_cv_build" >&6 build=$ac_cv_build build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$as_me:$LINENO: checking host system type" >&5 echo $ECHO_N "checking host system type... $ECHO_C" >&6 if test "${ac_cv_host+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_host_alias=$host_alias test -z "$ac_cv_host_alias" && ac_cv_host_alias=$ac_cv_build_alias ac_cv_host=`$ac_config_sub $ac_cv_host_alias` || { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5 echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;} { (exit 1); exit 1; }; } fi echo "$as_me:$LINENO: result: $ac_cv_host" >&5 echo "${ECHO_T}$ac_cv_host" >&6 host=$ac_cv_host host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'` host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'` host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'` echo "$as_me:$LINENO: checking for egrep" >&5 echo $ECHO_N "checking for egrep... $ECHO_C" >&6 if test "${ac_cv_prog_egrep+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if echo a | (grep -E '(a|b)') >/dev/null 2>&1 then ac_cv_prog_egrep='grep -E' else ac_cv_prog_egrep='egrep' fi fi echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5 echo "${ECHO_T}$ac_cv_prog_egrep" >&6 EGREP=$ac_cv_prog_egrep echo "$as_me:$LINENO: checking for AIX" >&5 echo $ECHO_N "checking for AIX... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef _AIX yes #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "yes" >/dev/null 2>&1; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 cat >>confdefs.h <<\_ACEOF #define _ALL_SOURCE 1 _ACEOF else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi rm -f conftest* echo "$as_me:$LINENO: checking for library containing strerror" >&5 echo $ECHO_N "checking for library containing strerror... $ECHO_C" >&6 if test "${ac_cv_search_strerror+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_strerror=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char strerror (); int main () { strerror (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_strerror="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_strerror" = no; then for ac_lib in cposix; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char strerror (); int main () { strerror (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_strerror="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_strerror" >&5 echo "${ECHO_T}$ac_cv_search_strerror" >&6 if test "$ac_cv_search_strerror" != no; then test "$ac_cv_search_strerror" = "none required" || LIBS="$ac_cv_search_strerror $LIBS" fi echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done if test "${ac_cv_header_minix_config_h+set}" = set; then echo "$as_me:$LINENO: checking for minix/config.h" >&5 echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6 if test "${ac_cv_header_minix_config_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5 echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking minix/config.h usability" >&5 echo $ECHO_N "checking minix/config.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking minix/config.h presence" >&5 echo $ECHO_N "checking minix/config.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: minix/config.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: minix/config.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: minix/config.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: minix/config.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: minix/config.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: minix/config.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: minix/config.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: minix/config.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: minix/config.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: minix/config.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for minix/config.h" >&5 echo $ECHO_N "checking for minix/config.h... $ECHO_C" >&6 if test "${ac_cv_header_minix_config_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_minix_config_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_minix_config_h" >&5 echo "${ECHO_T}$ac_cv_header_minix_config_h" >&6 fi if test $ac_cv_header_minix_config_h = yes; then MINIX=yes else MINIX= fi if test "$MINIX" = yes; then cat >>confdefs.h <<\_ACEOF #define _POSIX_SOURCE 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define _POSIX_1_SOURCE 2 _ACEOF cat >>confdefs.h <<\_ACEOF #define _MINIX 1 _ACEOF fi # Needed for ansi2knr echo "$as_me:$LINENO: checking for function prototypes" >&5 echo $ECHO_N "checking for function prototypes... $ECHO_C" >&6 if test "$ac_cv_prog_cc_stdc" != no; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 cat >>confdefs.h <<\_ACEOF #define PROTOTYPES 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define __PROTOTYPES 1 _ACEOF else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test "$ac_cv_prog_cc_stdc" != no; then U= ANSI2KNR= else U=_ ANSI2KNR=./ansi2knr fi # Ensure some checks needed by ansi2knr itself. for ac_header in string.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # Enable gettext, in "external" mode. MKINSTALLDIRS= if test -n "$ac_aux_dir"; then case "$ac_aux_dir" in /*) MKINSTALLDIRS="$ac_aux_dir/mkinstalldirs" ;; *) MKINSTALLDIRS="\$(top_builddir)/$ac_aux_dir/mkinstalldirs" ;; esac fi if test -z "$MKINSTALLDIRS"; then MKINSTALLDIRS="\$(top_srcdir)/mkinstalldirs" fi echo "$as_me:$LINENO: checking whether NLS is requested" >&5 echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" USE_NLS=$enableval else USE_NLS=yes fi; echo "$as_me:$LINENO: result: $USE_NLS" >&5 echo "${ECHO_T}$USE_NLS" >&6 # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_MSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$MSGFMT" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGFMT="$MSGFMT" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then if $ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1 && (if $ac_dir/$ac_word --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_MSGFMT="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGFMT" && ac_cv_path_MSGFMT=":" ;; esac fi MSGFMT="$ac_cv_path_MSGFMT" if test "$MSGFMT" != ":"; then echo "$as_me:$LINENO: result: $MSGFMT" >&5 echo "${ECHO_T}$MSGFMT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Extract the first word of "gmsgfmt", so it can be a program name with args. set dummy gmsgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_GMSGFMT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case $GMSGFMT in [\\/]* | ?:[\\/]*) ac_cv_path_GMSGFMT="$GMSGFMT" # Let the user override the test with a path. ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done done test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" ;; esac fi GMSGFMT=$ac_cv_path_GMSGFMT if test -n "$GMSGFMT"; then echo "$as_me:$LINENO: result: $GMSGFMT" >&5 echo "${ECHO_T}$GMSGFMT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "xgettext", so it can be a program name with args. set dummy xgettext; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_XGETTEXT+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$XGETTEXT" in [\\/]* | ?:[\\/]*) ac_cv_path_XGETTEXT="$XGETTEXT" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && (if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then ac_cv_path_XGETTEXT="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_XGETTEXT" && ac_cv_path_XGETTEXT=":" ;; esac fi XGETTEXT="$ac_cv_path_XGETTEXT" if test "$XGETTEXT" != ":"; then echo "$as_me:$LINENO: result: $XGETTEXT" >&5 echo "${ECHO_T}$XGETTEXT" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi rm -f messages.po # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi # Find out how to test for executable files. Don't use a zero-byte file, # as systems may use methods other than mode bits to determine executability. cat >conf$$.file <<_ASEOF #! /bin/sh exit 0 _ASEOF chmod +x conf$$.file if test -x conf$$.file >/dev/null 2>&1; then ac_executable_p="test -x" else ac_executable_p="test -f" fi rm -f conf$$.file # Extract the first word of "msgmerge", so it can be a program name with args. set dummy msgmerge; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6 if test "${ac_cv_path_MSGMERGE+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else case "$MSGMERGE" in [\\/]* | ?:[\\/]*) ac_cv_path_MSGMERGE="$MSGMERGE" # Let the user override the test with a path. ;; *) ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR for ac_dir in $PATH; do IFS="$ac_save_IFS" test -z "$ac_dir" && ac_dir=. for ac_exec_ext in '' $ac_executable_extensions; do if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then if $ac_dir/$ac_word --update -q /dev/null /dev/null >/dev/null 2>&1; then ac_cv_path_MSGMERGE="$ac_dir/$ac_word$ac_exec_ext" break 2 fi fi done done IFS="$ac_save_IFS" test -z "$ac_cv_path_MSGMERGE" && ac_cv_path_MSGMERGE=":" ;; esac fi MSGMERGE="$ac_cv_path_MSGMERGE" if test "$MSGMERGE" != ":"; then echo "$as_me:$LINENO: result: $MSGMERGE" >&5 echo "${ECHO_T}$MSGMERGE" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi if test "$GMSGFMT" != ":"; then if $GMSGFMT --statistics /dev/null >/dev/null 2>&1 && (if $GMSGFMT --statistics /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then : ; else GMSGFMT=`echo "$GMSGFMT" | sed -e 's,^.*/,,'` echo "$as_me:$LINENO: result: found $GMSGFMT program is not GNU msgfmt; ignore it" >&5 echo "${ECHO_T}found $GMSGFMT program is not GNU msgfmt; ignore it" >&6 GMSGFMT=":" fi fi if test "$XGETTEXT" != ":"; then if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >/dev/null 2>&1 && (if $XGETTEXT --omit-header --copyright-holder= --msgid-bugs-address= /dev/null 2>&1 >/dev/null | grep usage >/dev/null; then exit 1; else exit 0; fi); then : ; else echo "$as_me:$LINENO: result: found xgettext program is not GNU xgettext; ignore it" >&5 echo "${ECHO_T}found xgettext program is not GNU xgettext; ignore it" >&6 XGETTEXT=":" fi rm -f messages.po fi ac_config_commands="$ac_config_commands default-1" if test "X$prefix" = "XNONE"; then acl_final_prefix="$ac_default_prefix" else acl_final_prefix="$prefix" fi if test "X$exec_prefix" = "XNONE"; then acl_final_exec_prefix='${prefix}' else acl_final_exec_prefix="$exec_prefix" fi acl_save_prefix="$prefix" prefix="$acl_final_prefix" eval acl_final_exec_prefix=\"$acl_final_exec_prefix\" prefix="$acl_save_prefix" # Check whether --with-gnu-ld or --without-gnu-ld was given. if test "${with_gnu_ld+set}" = set; then withval="$with_gnu_ld" test "$withval" = no || with_gnu_ld=yes else with_gnu_ld=no fi; # Prepare PATH_SEPARATOR. # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi ac_prog=ld if test "$GCC" = yes; then # Check if gcc -print-prog-name=ld gives a path. echo "$as_me:$LINENO: checking for ld used by GCC" >&5 echo $ECHO_N "checking for ld used by GCC... $ECHO_C" >&6 case $host in *-*-mingw*) # gcc leaves a trailing carriage return which upsets mingw ac_prog=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; *) ac_prog=`($CC -print-prog-name=ld) 2>&5` ;; esac case $ac_prog in # Accept absolute paths. [\\/]* | [A-Za-z]:[\\/]*) re_direlt='/[^/][^/]*/\.\./' # Canonicalize the path of ld ac_prog=`echo $ac_prog| sed 's%\\\\%/%g'` while echo $ac_prog | grep "$re_direlt" > /dev/null 2>&1; do ac_prog=`echo $ac_prog| sed "s%$re_direlt%/%"` done test -z "$LD" && LD="$ac_prog" ;; "") # If it fails, then pretend we aren't using GCC. ac_prog=ld ;; *) # If it is relative, then search for the first ld in PATH. with_gnu_ld=unknown ;; esac elif test "$with_gnu_ld" = yes; then echo "$as_me:$LINENO: checking for GNU ld" >&5 echo $ECHO_N "checking for GNU ld... $ECHO_C" >&6 else echo "$as_me:$LINENO: checking for non-GNU ld" >&5 echo $ECHO_N "checking for non-GNU ld... $ECHO_C" >&6 fi if test "${acl_cv_path_LD+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -z "$LD"; then IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR-:}" for ac_dir in $PATH; do test -z "$ac_dir" && ac_dir=. if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then acl_cv_path_LD="$ac_dir/$ac_prog" # Check to see if the program is GNU ld. I'd rather use --version, # but apparently some GNU ld's only accept -v. # Break only if it was the GNU/non-GNU ld that we prefer. case `"$acl_cv_path_LD" -v 2>&1 < /dev/null` in *GNU* | *'with BFD'*) test "$with_gnu_ld" != no && break ;; *) test "$with_gnu_ld" != yes && break ;; esac fi done IFS="$ac_save_ifs" else acl_cv_path_LD="$LD" # Let the user override the test with a path. fi fi LD="$acl_cv_path_LD" if test -n "$LD"; then echo "$as_me:$LINENO: result: $LD" >&5 echo "${ECHO_T}$LD" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi test -z "$LD" && { { echo "$as_me:$LINENO: error: no acceptable ld found in \$PATH" >&5 echo "$as_me: error: no acceptable ld found in \$PATH" >&2;} { (exit 1); exit 1; }; } echo "$as_me:$LINENO: checking if the linker ($LD) is GNU ld" >&5 echo $ECHO_N "checking if the linker ($LD) is GNU ld... $ECHO_C" >&6 if test "${acl_cv_prog_gnu_ld+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # I'd rather use --version here, but apparently some GNU ld's only accept -v. case `$LD -v 2>&1 &5 echo "${ECHO_T}$acl_cv_prog_gnu_ld" >&6 with_gnu_ld=$acl_cv_prog_gnu_ld echo "$as_me:$LINENO: checking for shared library run path origin" >&5 echo $ECHO_N "checking for shared library run path origin... $ECHO_C" >&6 if test "${acl_cv_rpath+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else CC="$CC" GCC="$GCC" LDFLAGS="$LDFLAGS" LD="$LD" with_gnu_ld="$with_gnu_ld" \ ${CONFIG_SHELL-/bin/sh} "$ac_aux_dir/config.rpath" "$host" > conftest.sh . ./conftest.sh rm -f ./conftest.sh acl_cv_rpath=done fi echo "$as_me:$LINENO: result: $acl_cv_rpath" >&5 echo "${ECHO_T}$acl_cv_rpath" >&6 wl="$acl_cv_wl" libext="$acl_cv_libext" shlibext="$acl_cv_shlibext" hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" hardcode_direct="$acl_cv_hardcode_direct" hardcode_minus_L="$acl_cv_hardcode_minus_L" # Check whether --enable-rpath or --disable-rpath was given. if test "${enable_rpath+set}" = set; then enableval="$enable_rpath" : else enable_rpath=yes fi; use_additional=yes acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" # Check whether --with-libiconv-prefix or --without-libiconv-prefix was given. if test "${with_libiconv_prefix+set}" = set; then withval="$with_libiconv_prefix" if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" else additional_includedir="$withval/include" additional_libdir="$withval/lib" fi fi fi; LIBICONV= LTLIBICONV= INCICONV= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='iconv ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIBICONV="${LIBICONV}${LIBICONV:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$value" else : fi else found_dir= found_la= found_so= found_a= if test $use_additional = yes; then if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi else if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi else if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$hardcode_direct" = yes; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else haveit= for x in $LDFLAGS $LIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" else LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then LIBICONV="${LIBICONV}${LIBICONV:+ }$found_a" else LIBICONV="${LIBICONV}${LIBICONV:+ }-L$found_dir -l$name" fi fi additional_includedir= case "$found_dir" in */lib | */lib/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INCICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then INCICONV="${INCICONV}${INCICONV:+ }-I$additional_includedir" fi fi fi fi fi if test -n "$found_la"; then save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` if test "X$additional_libdir" != "X/usr/lib"; then haveit= if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LIBICONV="${LIBICONV}${LIBICONV:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIBICONV; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) LIBICONV="${LIBICONV}${LIBICONV:+ }$dep" LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }$dep" ;; esac done fi else LIBICONV="${LIBICONV}${LIBICONV:+ }-l$name" LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$hardcode_libdir_separator"; then alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" done acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBICONV="${LIBICONV}${LIBICONV:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do LTLIBICONV="${LTLIBICONV}${LTLIBICONV:+ }-R$found_dir" done fi echo "$as_me:$LINENO: checking whether NLS is requested" >&5 echo $ECHO_N "checking whether NLS is requested... $ECHO_C" >&6 # Check whether --enable-nls or --disable-nls was given. if test "${enable_nls+set}" = set; then enableval="$enable_nls" USE_NLS=$enableval else USE_NLS=yes fi; echo "$as_me:$LINENO: result: $USE_NLS" >&5 echo "${ECHO_T}$USE_NLS" >&6 LIBINTL= LTLIBINTL= POSUB= if test "$USE_NLS" = "yes"; then gt_use_preinstalled_gnugettext=no echo "$as_me:$LINENO: checking for GNU gettext in libc" >&5 echo $ECHO_N "checking for GNU gettext in libc... $ECHO_C" >&6 if test "${gt_cv_func_gnugettext1_libc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include extern int _nl_msg_cat_cntr; extern int *_nl_domain_bindings; int main () { bindtextdomain ("", ""); return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_domain_bindings ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then gt_cv_func_gnugettext1_libc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_gnugettext1_libc=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libc" >&5 echo "${ECHO_T}$gt_cv_func_gnugettext1_libc" >&6 if test "$gt_cv_func_gnugettext1_libc" != "yes"; then am_save_CPPFLAGS="$CPPFLAGS" for element in $INCICONV; do haveit= for x in $CPPFLAGS; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" fi done echo "$as_me:$LINENO: checking for iconv" >&5 echo $ECHO_N "checking for iconv... $ECHO_C" >&6 if test "${am_cv_func_iconv+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else am_cv_func_iconv="no, consider installing GNU libiconv" am_cv_lib_iconv=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then am_cv_func_iconv=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$am_cv_func_iconv" != yes; then am_save_LIBS="$LIBS" LIBS="$LIBS $LIBICONV" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { iconv_t cd = iconv_open("",""); iconv(cd,NULL,NULL,NULL,NULL); iconv_close(cd); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then am_cv_lib_iconv=yes am_cv_func_iconv=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS="$am_save_LIBS" fi fi echo "$as_me:$LINENO: result: $am_cv_func_iconv" >&5 echo "${ECHO_T}$am_cv_func_iconv" >&6 if test "$am_cv_func_iconv" = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_ICONV 1 _ACEOF fi if test "$am_cv_lib_iconv" = yes; then echo "$as_me:$LINENO: checking how to link with libiconv" >&5 echo $ECHO_N "checking how to link with libiconv... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $LIBICONV" >&5 echo "${ECHO_T}$LIBICONV" >&6 else CPPFLAGS="$am_save_CPPFLAGS" LIBICONV= LTLIBICONV= fi use_additional=yes acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" # Check whether --with-libintl-prefix or --without-libintl-prefix was given. if test "${with_libintl_prefix+set}" = set; then withval="$with_libintl_prefix" if test "X$withval" = "Xno"; then use_additional=no else if test "X$withval" = "X"; then acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval additional_includedir=\"$includedir\" eval additional_libdir=\"$libdir\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" else additional_includedir="$withval/include" additional_libdir="$withval/lib" fi fi fi; LIBINTL= LTLIBINTL= INCINTL= rpathdirs= ltrpathdirs= names_already_handled= names_next_round='intl ' while test -n "$names_next_round"; do names_this_round="$names_next_round" names_next_round= for name in $names_this_round; do already_handled= for n in $names_already_handled; do if test "$n" = "$name"; then already_handled=yes break fi done if test -z "$already_handled"; then names_already_handled="$names_already_handled $name" uppername=`echo "$name" | sed -e 'y|abcdefghijklmnopqrstuvwxyz./-|ABCDEFGHIJKLMNOPQRSTUVWXYZ___|'` eval value=\"\$HAVE_LIB$uppername\" if test -n "$value"; then if test "$value" = yes; then eval value=\"\$LIB$uppername\" test -z "$value" || LIBINTL="${LIBINTL}${LIBINTL:+ }$value" eval value=\"\$LTLIB$uppername\" test -z "$value" || LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$value" else : fi else found_dir= found_la= found_so= found_a= if test $use_additional = yes; then if test -n "$shlibext" && test -f "$additional_libdir/lib$name.$shlibext"; then found_dir="$additional_libdir" found_so="$additional_libdir/lib$name.$shlibext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi else if test -f "$additional_libdir/lib$name.$libext"; then found_dir="$additional_libdir" found_a="$additional_libdir/lib$name.$libext" if test -f "$additional_libdir/lib$name.la"; then found_la="$additional_libdir/lib$name.la" fi fi fi fi if test "X$found_dir" = "X"; then for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" case "$x" in -L*) dir=`echo "X$x" | sed -e 's/^X-L//'` if test -n "$shlibext" && test -f "$dir/lib$name.$shlibext"; then found_dir="$dir" found_so="$dir/lib$name.$shlibext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi else if test -f "$dir/lib$name.$libext"; then found_dir="$dir" found_a="$dir/lib$name.$libext" if test -f "$dir/lib$name.la"; then found_la="$dir/lib$name.la" fi fi fi ;; esac if test "X$found_dir" != "X"; then break fi done fi if test "X$found_dir" != "X"; then LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$found_dir -l$name" if test "X$found_so" != "X"; then if test "$enable_rpath" = no || test "X$found_dir" = "X/usr/lib"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else haveit= for x in $ltrpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $found_dir" fi if test "$hardcode_direct" = yes; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else if test -n "$hardcode_libdir_flag_spec" && test "$hardcode_minus_L" = no; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" haveit= for x in $rpathdirs; do if test "X$x" = "X$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $found_dir" fi else haveit= for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$found_dir"; then haveit=yes break fi done if test -z "$haveit"; then LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir" fi if test "$hardcode_minus_L" != no; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" else LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" fi fi fi fi else if test "X$found_a" != "X"; then LIBINTL="${LIBINTL}${LIBINTL:+ }$found_a" else LIBINTL="${LIBINTL}${LIBINTL:+ }-L$found_dir -l$name" fi fi additional_includedir= case "$found_dir" in */lib | */lib/) basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e 's,/lib/*$,,'` additional_includedir="$basedir/include" ;; esac if test "X$additional_includedir" != "X"; then if test "X$additional_includedir" != "X/usr/include"; then haveit= if test "X$additional_includedir" = "X/usr/local/include"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then for x in $CPPFLAGS $INCINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-I$additional_includedir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_includedir"; then INCINTL="${INCINTL}${INCINTL:+ }-I$additional_includedir" fi fi fi fi fi if test -n "$found_la"; then save_libdir="$libdir" case "$found_la" in */* | *\\*) . "$found_la" ;; *) . "./$found_la" ;; esac libdir="$save_libdir" for dep in $dependency_libs; do case "$dep" in -L*) additional_libdir=`echo "X$dep" | sed -e 's/^X-L//'` if test "X$additional_libdir" != "X/usr/lib"; then haveit= if test "X$additional_libdir" = "X/usr/local/lib"; then if test -n "$GCC"; then case $host_os in linux*) haveit=yes;; esac fi fi if test -z "$haveit"; then haveit= for x in $LDFLAGS $LIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LIBINTL="${LIBINTL}${LIBINTL:+ }-L$additional_libdir" fi fi haveit= for x in $LDFLAGS $LTLIBINTL; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X-L$additional_libdir"; then haveit=yes break fi done if test -z "$haveit"; then if test -d "$additional_libdir"; then LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-L$additional_libdir" fi fi fi fi ;; -R*) dir=`echo "X$dep" | sed -e 's/^X-R//'` if test "$enable_rpath" != no; then haveit= for x in $rpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then rpathdirs="$rpathdirs $dir" fi haveit= for x in $ltrpathdirs; do if test "X$x" = "X$dir"; then haveit=yes break fi done if test -z "$haveit"; then ltrpathdirs="$ltrpathdirs $dir" fi fi ;; -l*) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's/^X-l//'` ;; *.la) names_next_round="$names_next_round "`echo "X$dep" | sed -e 's,^X.*/,,' -e 's,^lib,,' -e 's,\.la$,,'` ;; *) LIBINTL="${LIBINTL}${LIBINTL:+ }$dep" LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }$dep" ;; esac done fi else LIBINTL="${LIBINTL}${LIBINTL:+ }-l$name" LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-l$name" fi fi fi done done if test "X$rpathdirs" != "X"; then if test -n "$hardcode_libdir_separator"; then alldirs= for found_dir in $rpathdirs; do alldirs="${alldirs}${alldirs:+$hardcode_libdir_separator}$found_dir" done acl_save_libdir="$libdir" libdir="$alldirs" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" else for found_dir in $rpathdirs; do acl_save_libdir="$libdir" libdir="$found_dir" eval flag=\"$hardcode_libdir_flag_spec\" libdir="$acl_save_libdir" LIBINTL="${LIBINTL}${LIBINTL:+ }$flag" done fi fi if test "X$ltrpathdirs" != "X"; then for found_dir in $ltrpathdirs; do LTLIBINTL="${LTLIBINTL}${LTLIBINTL:+ }-R$found_dir" done fi echo "$as_me:$LINENO: checking for GNU gettext in libintl" >&5 echo $ECHO_N "checking for GNU gettext in libintl... $ECHO_C" >&6 if test "${gt_cv_func_gnugettext1_libintl+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else gt_save_CPPFLAGS="$CPPFLAGS" CPPFLAGS="$CPPFLAGS $INCINTL" gt_save_LIBS="$LIBS" LIBS="$LIBS $LIBINTL" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (); int main () { bindtextdomain ("", ""); return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0) ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then gt_cv_func_gnugettext1_libintl=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 gt_cv_func_gnugettext1_libintl=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$gt_cv_func_gnugettext1_libintl" != yes && test -n "$LIBICONV"; then LIBS="$LIBS $LIBICONV" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include extern int _nl_msg_cat_cntr; extern #ifdef __cplusplus "C" #endif const char *_nl_expand_alias (); int main () { bindtextdomain ("", ""); return (int) gettext ("") + _nl_msg_cat_cntr + *_nl_expand_alias (0) ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then LIBINTL="$LIBINTL $LIBICONV" LTLIBINTL="$LTLIBINTL $LTLIBICONV" gt_cv_func_gnugettext1_libintl=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi CPPFLAGS="$gt_save_CPPFLAGS" LIBS="$gt_save_LIBS" fi echo "$as_me:$LINENO: result: $gt_cv_func_gnugettext1_libintl" >&5 echo "${ECHO_T}$gt_cv_func_gnugettext1_libintl" >&6 fi if test "$gt_cv_func_gnugettext1_libc" = "yes" \ || { test "$gt_cv_func_gnugettext1_libintl" = "yes" \ && test "$PACKAGE" != gettext-runtime \ && test "$PACKAGE" != gettext-tools; }; then gt_use_preinstalled_gnugettext=yes else LIBINTL= LTLIBINTL= INCINTL= fi if test "$gt_use_preinstalled_gnugettext" = "yes" \ || test "$nls_cv_use_gnu_gettext" = "yes"; then cat >>confdefs.h <<\_ACEOF #define ENABLE_NLS 1 _ACEOF else USE_NLS=no fi fi echo "$as_me:$LINENO: checking whether to use NLS" >&5 echo $ECHO_N "checking whether to use NLS... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $USE_NLS" >&5 echo "${ECHO_T}$USE_NLS" >&6 if test "$USE_NLS" = "yes"; then echo "$as_me:$LINENO: checking where the gettext function comes from" >&5 echo $ECHO_N "checking where the gettext function comes from... $ECHO_C" >&6 if test "$gt_use_preinstalled_gnugettext" = "yes"; then if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then gt_source="external libintl" else gt_source="libc" fi else gt_source="included intl directory" fi echo "$as_me:$LINENO: result: $gt_source" >&5 echo "${ECHO_T}$gt_source" >&6 fi if test "$USE_NLS" = "yes"; then if test "$gt_use_preinstalled_gnugettext" = "yes"; then if test "$gt_cv_func_gnugettext1_libintl" = "yes"; then echo "$as_me:$LINENO: checking how to link with libintl" >&5 echo $ECHO_N "checking how to link with libintl... $ECHO_C" >&6 echo "$as_me:$LINENO: result: $LIBINTL" >&5 echo "${ECHO_T}$LIBINTL" >&6 for element in $INCINTL; do haveit= for x in $CPPFLAGS; do acl_save_prefix="$prefix" prefix="$acl_final_prefix" acl_save_exec_prefix="$exec_prefix" exec_prefix="$acl_final_exec_prefix" eval x=\"$x\" exec_prefix="$acl_save_exec_prefix" prefix="$acl_save_prefix" if test "X$x" = "X$element"; then haveit=yes break fi done if test -z "$haveit"; then CPPFLAGS="${CPPFLAGS}${CPPFLAGS:+ }$element" fi done fi cat >>confdefs.h <<\_ACEOF #define HAVE_GETTEXT 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define HAVE_DCGETTEXT 1 _ACEOF fi POSUB=po fi INTLLIBS="$LIBINTL" # This test must come as early as possible after the compiler configuration # tests, because the choice of the file model can (in principle) affect # whether functions and headers are available, whether they work, etc. # Check whether --enable-largefile or --disable-largefile was given. if test "${enable_largefile+set}" = set; then enableval="$enable_largefile" fi; if test "$enable_largefile" != no; then echo "$as_me:$LINENO: checking for special C compiler options needed for large files" >&5 echo $ECHO_N "checking for special C compiler options needed for large files... $ECHO_C" >&6 if test "${ac_cv_sys_largefile_CC+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_sys_largefile_CC=no if test "$GCC" != yes; then ac_save_CC=$CC while :; do # IRIX 6.2 and later do not support large files by default, # so use the C compiler's -n32 option if that helps. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext CC="$CC -n32" rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_sys_largefile_CC=' -n32'; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext break done CC=$ac_save_CC rm -f conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_sys_largefile_CC" >&5 echo "${ECHO_T}$ac_cv_sys_largefile_CC" >&6 if test "$ac_cv_sys_largefile_CC" != no; then CC=$CC$ac_cv_sys_largefile_CC fi echo "$as_me:$LINENO: checking for _FILE_OFFSET_BITS value needed for large files" >&5 echo $ECHO_N "checking for _FILE_OFFSET_BITS value needed for large files... $ECHO_C" >&6 if test "${ac_cv_sys_file_offset_bits+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else while :; do ac_cv_sys_file_offset_bits=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #define _FILE_OFFSET_BITS 64 #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_sys_file_offset_bits=64; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext break done fi echo "$as_me:$LINENO: result: $ac_cv_sys_file_offset_bits" >&5 echo "${ECHO_T}$ac_cv_sys_file_offset_bits" >&6 if test "$ac_cv_sys_file_offset_bits" != no; then cat >>confdefs.h <<_ACEOF #define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits _ACEOF fi rm -f conftest* echo "$as_me:$LINENO: checking for _LARGE_FILES value needed for large files" >&5 echo $ECHO_N "checking for _LARGE_FILES value needed for large files... $ECHO_C" >&6 if test "${ac_cv_sys_large_files+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else while :; do ac_cv_sys_large_files=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #define _LARGE_FILES 1 #include /* Check that off_t can represent 2**63 - 1 correctly. We can't simply define LARGE_OFF_T to be 9223372036854775807, since some C++ compilers masquerading as C compilers incorrectly reject 9223372036854775807. */ #define LARGE_OFF_T (((off_t) 1 << 62) - 1 + ((off_t) 1 << 62)) int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721 && LARGE_OFF_T % 2147483647 == 1) ? 1 : -1]; int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_sys_large_files=1; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext break done fi echo "$as_me:$LINENO: result: $ac_cv_sys_large_files" >&5 echo "${ECHO_T}$ac_cv_sys_large_files" >&6 if test "$ac_cv_sys_large_files" != no; then cat >>confdefs.h <<_ACEOF #define _LARGE_FILES $ac_cv_sys_large_files _ACEOF fi rm -f conftest* fi # Checks for libraries. echo "$as_me:$LINENO: checking for library containing getpwnam" >&5 echo $ECHO_N "checking for library containing getpwnam... $ECHO_C" >&6 if test "${ac_cv_search_getpwnam+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_getpwnam=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char getpwnam (); int main () { getpwnam (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_getpwnam="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_getpwnam" = no; then for ac_lib in sun; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char getpwnam (); int main () { getpwnam (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_getpwnam="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_getpwnam" >&5 echo "${ECHO_T}$ac_cv_search_getpwnam" >&6 if test "$ac_cv_search_getpwnam" != no; then test "$ac_cv_search_getpwnam" = "none required" || LIBS="$ac_cv_search_getpwnam $LIBS" fi # Checks for header files. echo "$as_me:$LINENO: checking for ANSI C header files" >&5 echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6 if test "${ac_cv_header_stdc+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #include int main () { ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_stdc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_stdc=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "memchr" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "free" >/dev/null 2>&1; then : else ac_cv_header_stdc=no fi rm -f conftest* fi if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. if test "$cross_compiling" = yes; then : else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #if ((' ' & 0x0FF) == 0x020) # define ISLOWER(c) ('a' <= (c) && (c) <= 'z') # define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c)) #else # define ISLOWER(c) \ (('a' <= (c) && (c) <= 'i') \ || ('j' <= (c) && (c) <= 'r') \ || ('s' <= (c) && (c) <= 'z')) # define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c)) #endif #define XOR(e, f) (((e) && !(f)) || (!(e) && (f))) int main () { int i; for (i = 0; i < 256; i++) if (XOR (islower (i), ISLOWER (i)) || toupper (i) != TOUPPER (i)) exit(2); exit (0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then : else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_header_stdc=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi fi echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 echo "${ECHO_T}$ac_cv_header_stdc" >&6 if test $ac_cv_header_stdc = yes; then cat >>confdefs.h <<\_ACEOF #define STDC_HEADERS 1 _ACEOF fi ac_header_dirent=no for ac_hdr in dirent.h sys/ndir.h sys/dir.h ndir.h; do as_ac_Header=`echo "ac_cv_header_dirent_$ac_hdr" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_hdr that defines DIR" >&5 echo $ECHO_N "checking for $ac_hdr that defines DIR... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include <$ac_hdr> int main () { if ((DIR *) 0) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_Header=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_Header=no" fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_hdr" | $as_tr_cpp` 1 _ACEOF ac_header_dirent=$ac_hdr; break fi done # Two versions of opendir et al. are in -ldir and -lx on SCO Xenix. if test $ac_header_dirent = dirent.h; then echo "$as_me:$LINENO: checking for library containing opendir" >&5 echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6 if test "${ac_cv_search_opendir+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_opendir=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char opendir (); int main () { opendir (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_opendir="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_opendir" = no; then for ac_lib in dir; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char opendir (); int main () { opendir (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_opendir="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 echo "${ECHO_T}$ac_cv_search_opendir" >&6 if test "$ac_cv_search_opendir" != no; then test "$ac_cv_search_opendir" = "none required" || LIBS="$ac_cv_search_opendir $LIBS" fi else echo "$as_me:$LINENO: checking for library containing opendir" >&5 echo $ECHO_N "checking for library containing opendir... $ECHO_C" >&6 if test "${ac_cv_search_opendir+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_opendir=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char opendir (); int main () { opendir (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_opendir="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_opendir" = no; then for ac_lib in x; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char opendir (); int main () { opendir (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_opendir="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_opendir" >&5 echo "${ECHO_T}$ac_cv_search_opendir" >&6 if test "$ac_cv_search_opendir" != no; then test "$ac_cv_search_opendir" = "none required" || LIBS="$ac_cv_search_opendir $LIBS" fi fi echo "$as_me:$LINENO: checking whether stat file-mode macros are broken" >&5 echo $ECHO_N "checking whether stat file-mode macros are broken... $ECHO_C" >&6 if test "${ac_cv_header_stat_broken+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #if defined(S_ISBLK) && defined(S_IFDIR) # if S_ISBLK (S_IFDIR) You lose. # endif #endif #if defined(S_ISBLK) && defined(S_IFCHR) # if S_ISBLK (S_IFCHR) You lose. # endif #endif #if defined(S_ISLNK) && defined(S_IFREG) # if S_ISLNK (S_IFREG) You lose. # endif #endif #if defined(S_ISSOCK) && defined(S_IFREG) # if S_ISSOCK (S_IFREG) You lose. # endif #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "You lose" >/dev/null 2>&1; then ac_cv_header_stat_broken=yes else ac_cv_header_stat_broken=no fi rm -f conftest* fi echo "$as_me:$LINENO: result: $ac_cv_header_stat_broken" >&5 echo "${ECHO_T}$ac_cv_header_stat_broken" >&6 if test $ac_cv_header_stat_broken = yes; then cat >>confdefs.h <<\_ACEOF #define STAT_MACROS_BROKEN 1 _ACEOF fi echo "$as_me:$LINENO: checking whether time.h and sys/time.h may both be included" >&5 echo $ECHO_N "checking whether time.h and sys/time.h may both be included... $ECHO_C" >&6 if test "${ac_cv_header_time+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include int main () { if ((struct tm *) 0) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_header_time=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_header_time=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_header_time" >&5 echo "${ECHO_T}$ac_cv_header_time" >&6 if test $ac_cv_header_time = yes; then cat >>confdefs.h <<\_ACEOF #define TIME_WITH_SYS_TIME 1 _ACEOF fi for ac_header in stdlib.h locale.h unistd.h limits.h fcntl.h string.h \ memory.h sys/param.h sys/resource.h sys/time.h sys/timeb.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done # Set a flag if we have an ANSI C compiler if test "$ac_cv_prog_cc_stdc" != no; then cat >>confdefs.h <<\_ACEOF #define HAVE_ANSI_COMPILER 1 _ACEOF fi # Determine what kind of variadic function calls we support for ac_header in stdarg.h varargs.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF break fi done if test "x$CC" != xcc; then echo "$as_me:$LINENO: checking whether $CC and cc understand -c and -o together" >&5 echo $ECHO_N "checking whether $CC and cc understand -c and -o together... $ECHO_C" >&6 else echo "$as_me:$LINENO: checking whether cc understands -c and -o together" >&5 echo $ECHO_N "checking whether cc understands -c and -o together... $ECHO_C" >&6 fi set dummy $CC; ac_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` if eval "test \"\${ac_cv_prog_cc_${ac_cc}_c_o+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { ; return 0; } _ACEOF # Make sure it works both with $CC and with simple cc. # We do the test twice because some compilers refuse to overwrite an # existing .o file with -o, though they will create one. ac_try='$CC -c conftest.$ac_ext -o conftest.$ac_objext >&5' if { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && test -f conftest.$ac_objext && { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then eval ac_cv_prog_cc_${ac_cc}_c_o=yes if test "x$CC" != xcc; then # Test first that cc exists at all. if { ac_try='cc -c conftest.$ac_ext >&5' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_try='cc -c conftest.$ac_ext -o conftest.$ac_objext >&5' if { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && test -f conftest.$ac_objext && { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then # cc works too. : else # cc exists but doesn't like -o. eval ac_cv_prog_cc_${ac_cc}_c_o=no fi fi fi else eval ac_cv_prog_cc_${ac_cc}_c_o=no fi rm -f conftest* fi if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" = yes"; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 cat >>confdefs.h <<\_ACEOF #define NO_MINUS_C_MINUS_O 1 _ACEOF fi # FIXME: we rely on the cache variable name because # there is no other way. set dummy $CC ac_cc=`echo $2 | sed 's/[^a-zA-Z0-9_]/_/g;s/^[0-9]/_/'` if eval "test \"`echo '$ac_cv_prog_cc_'${ac_cc}_c_o`\" != yes"; then # Losing compiler, so override with the script. # FIXME: It is wrong to rewrite CC. # But if we don't then we get into trouble of one sort or another. # A longer-term fix would be to have automake use am__CC in this case, # and then we could set am__CC="\$(top_srcdir)/compile \$(CC)" CC="$am_aux_dir/compile $CC" fi echo "$as_me:$LINENO: checking for an ANSI C-conforming const" >&5 echo $ECHO_N "checking for an ANSI C-conforming const... $ECHO_C" >&6 if test "${ac_cv_c_const+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { /* FIXME: Include the comments suggested by Paul. */ #ifndef __cplusplus /* Ultrix mips cc rejects this. */ typedef int charset[2]; const charset x; /* SunOS 4.1.1 cc rejects this. */ char const *const *ccp; char **p; /* NEC SVR4.0.2 mips cc rejects this. */ struct point {int x, y;}; static struct point const zero = {0,0}; /* AIX XL C 1.02.0.0 rejects this. It does not let you subtract one const X* pointer from another in an arm of an if-expression whose if-part is not a constant expression */ const char *g = "string"; ccp = &g + (g ? g-g : 0); /* HPUX 7.0 cc rejects these. */ ++ccp; p = (char**) ccp; ccp = (char const *const *) p; { /* SCO 3.2v4 cc rejects this. */ char *t; char const *s = 0 ? (char *) 0 : (char const *) 0; *t++ = 0; } { /* Someone thinks the Sun supposedly-ANSI compiler will reject this. */ int x[] = {25, 17}; const int *foo = &x[0]; ++foo; } { /* Sun SC1.0 ANSI compiler rejects this -- but not the above. */ typedef const int *iptr; iptr p = 0; ++p; } { /* AIX XL C 1.02.0.0 rejects this saying "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */ struct s { int j; const int *ap[3]; }; struct s *b; b->j = 5; } { /* ULTRIX-32 V3.1 (Rev 9) vcc rejects this */ const int foo = 10; } #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_const=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_c_const=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_c_const" >&5 echo "${ECHO_T}$ac_cv_c_const" >&6 if test $ac_cv_c_const = no; then cat >>confdefs.h <<\_ACEOF #define const _ACEOF fi echo "$as_me:$LINENO: checking return type of signal handlers" >&5 echo $ECHO_N "checking return type of signal handlers... $ECHO_C" >&6 if test "${ac_cv_type_signal+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #ifdef signal # undef signal #endif #ifdef __cplusplus extern "C" void (*signal (int, void (*)(int)))(int); #else void (*signal ()) (); #endif int main () { int i; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_type_signal=void else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_type_signal=int fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_type_signal" >&5 echo "${ECHO_T}$ac_cv_type_signal" >&6 cat >>confdefs.h <<_ACEOF #define RETSIGTYPE $ac_cv_type_signal _ACEOF echo "$as_me:$LINENO: checking for uid_t in sys/types.h" >&5 echo $ECHO_N "checking for uid_t in sys/types.h... $ECHO_C" >&6 if test "${ac_cv_type_uid_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "uid_t" >/dev/null 2>&1; then ac_cv_type_uid_t=yes else ac_cv_type_uid_t=no fi rm -f conftest* fi echo "$as_me:$LINENO: result: $ac_cv_type_uid_t" >&5 echo "${ECHO_T}$ac_cv_type_uid_t" >&6 if test $ac_cv_type_uid_t = no; then cat >>confdefs.h <<\_ACEOF #define uid_t int _ACEOF cat >>confdefs.h <<\_ACEOF #define gid_t int _ACEOF fi echo "$as_me:$LINENO: checking for pid_t" >&5 echo $ECHO_N "checking for pid_t... $ECHO_C" >&6 if test "${ac_cv_type_pid_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { if ((pid_t *) 0) return 0; if (sizeof (pid_t)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_type_pid_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_type_pid_t=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 echo "${ECHO_T}$ac_cv_type_pid_t" >&6 if test $ac_cv_type_pid_t = yes; then : else cat >>confdefs.h <<_ACEOF #define pid_t int _ACEOF fi # Find some definition for uintmax_t echo "$as_me:$LINENO: checking for uintmax_t" >&5 echo $ECHO_N "checking for uintmax_t... $ECHO_C" >&6 if test "${ac_cv_type_uintmax_t+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { if ((uintmax_t *) 0) return 0; if (sizeof (uintmax_t)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_type_uintmax_t=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_type_uintmax_t=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_type_uintmax_t" >&5 echo "${ECHO_T}$ac_cv_type_uintmax_t" >&6 if test $ac_cv_type_uintmax_t = yes; then : else uintmax_t="unsigned long" echo "$as_me:$LINENO: checking for unsigned long long" >&5 echo $ECHO_N "checking for unsigned long long... $ECHO_C" >&6 if test "${ac_cv_type_unsigned_long_long+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { if ((unsigned long long *) 0) return 0; if (sizeof (unsigned long long)) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_type_unsigned_long_long=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_type_unsigned_long_long=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_type_unsigned_long_long" >&5 echo "${ECHO_T}$ac_cv_type_unsigned_long_long" >&6 if test $ac_cv_type_unsigned_long_long = yes; then uintmax_t="unsigned long long" fi cat >>confdefs.h <<_ACEOF #define uintmax_t $uintmax_t _ACEOF fi # Find out whether our struct stat returns nanosecond resolution timestamps. echo "$as_me:$LINENO: checking for nanoseconds field of struct stat.st_mtim" >&5 echo $ECHO_N "checking for nanoseconds field of struct stat.st_mtim... $ECHO_C" >&6 if test "${ac_cv_struct_st_mtim_nsec+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_save_CPPFLAGS="$CPPFLAGS" ac_cv_struct_st_mtim_nsec=no # tv_nsec -- the usual case # _tv_nsec -- Solaris 2.6, if # (defined _XOPEN_SOURCE && _XOPEN_SOURCE_EXTENDED == 1 # && !defined __EXTENSIONS__) # st__tim.tv_nsec -- UnixWare 2.1.2 for ac_val in tv_nsec _tv_nsec st__tim.tv_nsec; do CPPFLAGS="$ac_save_CPPFLAGS -DST_MTIM_NSEC=$ac_val" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { struct stat s; s.st_mtim.ST_MTIM_NSEC; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_struct_st_mtim_nsec=$ac_val; break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext done CPPFLAGS="$ac_save_CPPFLAGS" fi echo "$as_me:$LINENO: result: $ac_cv_struct_st_mtim_nsec" >&5 echo "${ECHO_T}$ac_cv_struct_st_mtim_nsec" >&6 if test $ac_cv_struct_st_mtim_nsec != no; then cat >>confdefs.h <<_ACEOF #define ST_MTIM_NSEC $ac_cv_struct_st_mtim_nsec _ACEOF fi echo "$as_me:$LINENO: checking whether to use high resolution file timestamps" >&5 echo $ECHO_N "checking whether to use high resolution file timestamps... $ECHO_C" >&6 if test "${make_cv_file_timestamp_hi_res+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else make_cv_file_timestamp_hi_res=no if test "$ac_cv_struct_st_mtim_nsec" != no; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ # if HAVE_INTTYPES_H # include # endif int main () { char a[0x7fffffff < (uintmax_t)-1 >> 30 ? 1 : -1]; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then make_cv_file_timestamp_hi_res=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $make_cv_file_timestamp_hi_res" >&5 echo "${ECHO_T}$make_cv_file_timestamp_hi_res" >&6 if test "$make_cv_file_timestamp_hi_res" = yes; then val=1 else val=0 fi cat >>confdefs.h <<_ACEOF #define FILE_TIMESTAMP_HI_RES $val _ACEOF if test "$make_cv_file_timestamp_hi_res" = yes; then # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. echo "$as_me:$LINENO: checking for library containing clock_gettime" >&5 echo $ECHO_N "checking for library containing clock_gettime... $ECHO_C" >&6 if test "${ac_cv_search_clock_gettime+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_func_search_save_LIBS=$LIBS ac_cv_search_clock_gettime=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char clock_gettime (); int main () { clock_gettime (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_clock_gettime="none required" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext if test "$ac_cv_search_clock_gettime" = no; then for ac_lib in rt posix4; do LIBS="-l$ac_lib $ac_func_search_save_LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char clock_gettime (); int main () { clock_gettime (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_search_clock_gettime="-l$ac_lib" break else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext done fi LIBS=$ac_func_search_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_search_clock_gettime" >&5 echo "${ECHO_T}$ac_cv_search_clock_gettime" >&6 if test "$ac_cv_search_clock_gettime" != no; then test "$ac_cv_search_clock_gettime" = "none required" || LIBS="$ac_cv_search_clock_gettime $LIBS" fi if test "$ac_cv_search_clock_gettime" != no; then cat >>confdefs.h <<\_ACEOF #define HAVE_CLOCK_GETTIME 1 _ACEOF fi fi # Check for DOS-style pathnames. echo "$as_me:$LINENO: checking whether system uses MSDOS-style paths" >&5 echo $ECHO_N "checking whether system uses MSDOS-style paths... $ECHO_C" >&6 if test "${ac_cv_dos_paths+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF #if !defined _WIN32 && !defined __WIN32__ && !defined __MSDOS__ && !defined __EMX__ && !defined __MSYS__ neither MSDOS nor Windows nor OS2 #endif _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_dos_paths=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_dos_paths=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_dos_paths" >&5 echo "${ECHO_T}$ac_cv_dos_paths" >&6 if test x"$ac_cv_dos_paths" = xyes; then cat >>confdefs.h <<_ACEOF #define HAVE_DOS_PATHS 1 _ACEOF fi # See if we have a standard version of gettimeofday(). Since actual # implementations can differ, just make sure we have the most common # one. echo "$as_me:$LINENO: checking for standard gettimeofday" >&5 echo $ECHO_N "checking for standard gettimeofday... $ECHO_C" >&6 if test "${ac_cv_func_gettimeofday+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_func_gettimeofday=no if test "$cross_compiling" = yes; then ac_cv_func_gettimeofday="no (cross-compiling)" else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { struct timeval t; t.tv_sec = -1; t.tv_usec = -1; exit (gettimeofday (&t, 0) != 0 || t.tv_sec < 0 || t.tv_usec < 0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_gettimeofday=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_func_gettimeofday=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_func_gettimeofday" >&5 echo "${ECHO_T}$ac_cv_func_gettimeofday" >&6 if test "$ac_cv_func_gettimeofday" = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_GETTIMEOFDAY 1 _ACEOF fi for ac_func in memcpy memmove strchr strdup mkstemp mktemp fdopen \ bsd_signal dup2 getcwd realpath sigsetmask sigaction \ getgroups seteuid setegid setlinebuf setreuid setregid \ getrlimit setrlimit setvbuf pipe strerror strsignal \ lstat readlink atexit do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done echo "$as_me:$LINENO: checking whether setvbuf arguments are reversed" >&5 echo $ECHO_N "checking whether setvbuf arguments are reversed... $ECHO_C" >&6 if test "${ac_cv_func_setvbuf_reversed+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_func_setvbuf_reversed=no cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include # if PROTOTYPES int (setvbuf) (FILE *, int, char *, size_t); # endif int main () { char buf; return setvbuf (stdout, _IOLBF, &buf, 1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include # if PROTOTYPES int (setvbuf) (FILE *, int, char *, size_t); # endif int main () { char buf; return setvbuf (stdout, &buf, _IOLBF, 1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then # It compiles and links either way, so it must not be declared # with a prototype and most likely this is a K&R C compiler. # Try running it. if test "$cross_compiling" = yes; then : # Assume setvbuf is not reversed when cross-compiling. else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { /* This call has the arguments reversed. A reversed system may check and see that the address of buf is not _IOLBF, _IONBF, or _IOFBF, and return nonzero. */ char buf; if (setvbuf (stdout, _IOLBF, &buf, 1) != 0) exit (1); putchar ('\r'); exit (0); /* Non-reversed systems SEGV here. */ ; return 0; } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_setvbuf_reversed=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) rm -f core *.core fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi ac_cv_func_setvbuf_reversed=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_setvbuf_reversed" >&5 echo "${ECHO_T}$ac_cv_func_setvbuf_reversed" >&6 if test $ac_cv_func_setvbuf_reversed = yes; then cat >>confdefs.h <<\_ACEOF #define SETVBUF_REVERSED 1 _ACEOF fi # strcoll() is used by the GNU glob library echo "$as_me:$LINENO: checking for working strcoll" >&5 echo $ECHO_N "checking for working strcoll... $ECHO_C" >&6 if test "${ac_cv_func_strcoll_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test "$cross_compiling" = yes; then ac_cv_func_strcoll_works=no else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { exit (strcoll ("abc", "def") >= 0 || strcoll ("ABC", "DEF") >= 0 || strcoll ("123", "456") >= 0) ; return 0; } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_strcoll_works=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_func_strcoll_works=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_func_strcoll_works" >&5 echo "${ECHO_T}$ac_cv_func_strcoll_works" >&6 if test $ac_cv_func_strcoll_works = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_STRCOLL 1 _ACEOF fi # The Ultrix 4.2 mips builtin alloca declared by alloca.h only works # for constant arguments. Useless! echo "$as_me:$LINENO: checking for working alloca.h" >&5 echo $ECHO_N "checking for working alloca.h... $ECHO_C" >&6 if test "${ac_cv_working_alloca_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { char *p = (char *) alloca (2 * sizeof (int)); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_working_alloca_h=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_working_alloca_h=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_working_alloca_h" >&5 echo "${ECHO_T}$ac_cv_working_alloca_h" >&6 if test $ac_cv_working_alloca_h = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_ALLOCA_H 1 _ACEOF fi echo "$as_me:$LINENO: checking for alloca" >&5 echo $ECHO_N "checking for alloca... $ECHO_C" >&6 if test "${ac_cv_func_alloca_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #ifdef __GNUC__ # define alloca __builtin_alloca #else # ifdef _MSC_VER # include # define alloca _alloca # else # if HAVE_ALLOCA_H # include # else # ifdef _AIX #pragma alloca # else # ifndef alloca /* predefined by HP cc +Olibcalls */ char *alloca (); # endif # endif # endif # endif #endif int main () { char *p = (char *) alloca (1); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_alloca_works=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_alloca_works=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_alloca_works" >&5 echo "${ECHO_T}$ac_cv_func_alloca_works" >&6 if test $ac_cv_func_alloca_works = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_ALLOCA 1 _ACEOF else # The SVR3 libPW and SVR4 libucb both contain incompatible functions # that cause trouble. Some versions do not even contain alloca or # contain a buggy version. If you still want to use their alloca, # use ar to extract alloca.o from them instead of compiling alloca.c. ALLOCA=alloca.$ac_objext cat >>confdefs.h <<\_ACEOF #define C_ALLOCA 1 _ACEOF echo "$as_me:$LINENO: checking whether \`alloca.c' needs Cray hooks" >&5 echo $ECHO_N "checking whether \`alloca.c' needs Cray hooks... $ECHO_C" >&6 if test "${ac_cv_os_cray+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #if defined(CRAY) && ! defined(CRAY2) webecray #else wenotbecray #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "webecray" >/dev/null 2>&1; then ac_cv_os_cray=yes else ac_cv_os_cray=no fi rm -f conftest* fi echo "$as_me:$LINENO: result: $ac_cv_os_cray" >&5 echo "${ECHO_T}$ac_cv_os_cray" >&6 if test $ac_cv_os_cray = yes; then for ac_func in _getb67 GETB67 getb67; do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define CRAY_STACKSEG_END $ac_func _ACEOF break fi done fi echo "$as_me:$LINENO: checking stack direction for C alloca" >&5 echo $ECHO_N "checking stack direction for C alloca... $ECHO_C" >&6 if test "${ac_cv_c_stack_direction+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test "$cross_compiling" = yes; then ac_cv_c_stack_direction=0 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int find_stack_direction () { static char *addr = 0; auto char dummy; if (addr == 0) { addr = &dummy; return find_stack_direction (); } else return (&dummy > addr) ? 1 : -1; } int main () { exit (find_stack_direction () < 0); } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_c_stack_direction=1 else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_c_stack_direction=-1 fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_c_stack_direction" >&5 echo "${ECHO_T}$ac_cv_c_stack_direction" >&6 cat >>confdefs.h <<_ACEOF #define STACK_DIRECTION $ac_cv_c_stack_direction _ACEOF fi for ac_header in unistd.h vfork.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_func in fork vfork do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done if test "x$ac_cv_func_fork" = xyes; then echo "$as_me:$LINENO: checking for working fork" >&5 echo $ECHO_N "checking for working fork... $ECHO_C" >&6 if test "${ac_cv_func_fork_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test "$cross_compiling" = yes; then ac_cv_func_fork_works=cross else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default int main () { /* By Ruediger Kuhlmann. */ if (fork() < 0) exit (1); exit (0); ; return 0; } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_fork_works=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_func_fork_works=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_func_fork_works" >&5 echo "${ECHO_T}$ac_cv_func_fork_works" >&6 else ac_cv_func_fork_works=$ac_cv_func_fork fi if test "x$ac_cv_func_fork_works" = xcross; then case $host in *-*-amigaos* | *-*-msdosdjgpp*) # Override, as these systems have only a dummy fork() stub ac_cv_func_fork_works=no ;; *) ac_cv_func_fork_works=yes ;; esac { echo "$as_me:$LINENO: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&5 echo "$as_me: WARNING: result $ac_cv_func_fork_works guessed because of cross compilation" >&2;} fi ac_cv_func_vfork_works=$ac_cv_func_vfork if test "x$ac_cv_func_vfork" = xyes; then echo "$as_me:$LINENO: checking for working vfork" >&5 echo $ECHO_N "checking for working vfork... $ECHO_C" >&6 if test "${ac_cv_func_vfork_works+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test "$cross_compiling" = yes; then ac_cv_func_vfork_works=cross else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Thanks to Paul Eggert for this test. */ #include #include #include #include #include #if HAVE_UNISTD_H # include #endif #if HAVE_VFORK_H # include #endif /* On some sparc systems, changes by the child to local and incoming argument registers are propagated back to the parent. The compiler is told about this with #include , but some compilers (e.g. gcc -O) don't grok . Test for this by using a static variable whose address is put into a register that is clobbered by the vfork. */ static void #ifdef __cplusplus sparc_address_test (int arg) # else sparc_address_test (arg) int arg; #endif { static pid_t child; if (!child) { child = vfork (); if (child < 0) { perror ("vfork"); _exit(2); } if (!child) { arg = getpid(); write(-1, "", 0); _exit (arg); } } } int main () { pid_t parent = getpid (); pid_t child; sparc_address_test (0); child = vfork (); if (child == 0) { /* Here is another test for sparc vfork register problems. This test uses lots of local variables, at least as many local variables as main has allocated so far including compiler temporaries. 4 locals are enough for gcc 1.40.3 on a Solaris 4.1.3 sparc, but we use 8 to be safe. A buggy compiler should reuse the register of parent for one of the local variables, since it will think that parent can't possibly be used any more in this routine. Assigning to the local variable will thus munge parent in the parent process. */ pid_t p = getpid(), p1 = getpid(), p2 = getpid(), p3 = getpid(), p4 = getpid(), p5 = getpid(), p6 = getpid(), p7 = getpid(); /* Convince the compiler that p..p7 are live; otherwise, it might use the same hardware register for all 8 local variables. */ if (p != p1 || p != p2 || p != p3 || p != p4 || p != p5 || p != p6 || p != p7) _exit(1); /* On some systems (e.g. IRIX 3.3), vfork doesn't separate parent from child file descriptors. If the child closes a descriptor before it execs or exits, this munges the parent's descriptor as well. Test for this by closing stdout in the child. */ _exit(close(fileno(stdout)) != 0); } else { int status; struct stat st; while (wait(&status) != child) ; exit( /* Was there some problem with vforking? */ child < 0 /* Did the child fail? (This shouldn't happen.) */ || status /* Did the vfork/compiler bug occur? */ || parent != getpid() /* Did the file descriptor bug occur? */ || fstat(fileno(stdout), &st) != 0 ); } } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_vfork_works=yes else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_func_vfork_works=no fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_func_vfork_works" >&5 echo "${ECHO_T}$ac_cv_func_vfork_works" >&6 fi; if test "x$ac_cv_func_fork_works" = xcross; then ac_cv_func_vfork_works=$ac_cv_func_vfork { echo "$as_me:$LINENO: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&5 echo "$as_me: WARNING: result $ac_cv_func_vfork_works guessed because of cross compilation" >&2;} fi if test "x$ac_cv_func_vfork_works" = xyes; then cat >>confdefs.h <<\_ACEOF #define HAVE_WORKING_VFORK 1 _ACEOF else cat >>confdefs.h <<\_ACEOF #define vfork fork _ACEOF fi if test "x$ac_cv_func_fork_works" = xyes; then cat >>confdefs.h <<\_ACEOF #define HAVE_WORKING_FORK 1 _ACEOF fi for ac_func in vprintf do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF echo "$as_me:$LINENO: checking for _doprnt" >&5 echo $ECHO_N "checking for _doprnt... $ECHO_C" >&6 if test "${ac_cv_func__doprnt+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define _doprnt to an innocuous variant, in case declares _doprnt. For example, HP-UX 11i declares gettimeofday. */ #define _doprnt innocuous__doprnt /* System header to define __stub macros and hopefully few prototypes, which can conflict with char _doprnt (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef _doprnt /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char _doprnt (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub__doprnt) || defined (__stub____doprnt) choke me #else char (*f) () = _doprnt; #endif #ifdef __cplusplus } #endif int main () { return f != _doprnt; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func__doprnt=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func__doprnt=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func__doprnt" >&5 echo "${ECHO_T}$ac_cv_func__doprnt" >&6 if test $ac_cv_func__doprnt = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_DOPRNT 1 _ACEOF fi fi done echo "$as_me:$LINENO: checking whether closedir returns void" >&5 echo $ECHO_N "checking whether closedir returns void... $ECHO_C" >&6 if test "${ac_cv_func_closedir_void+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test "$cross_compiling" = yes; then ac_cv_func_closedir_void=yes else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header_dirent> #ifndef __cplusplus int closedir (); #endif int main () { exit (closedir (opendir (".")) != 0); ; return 0; } _ACEOF rm -f conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='./conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_closedir_void=no else echo "$as_me: program exited with status $ac_status" >&5 echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ( exit $ac_status ) ac_cv_func_closedir_void=yes fi rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext fi fi echo "$as_me:$LINENO: result: $ac_cv_func_closedir_void" >&5 echo "${ECHO_T}$ac_cv_func_closedir_void" >&6 if test $ac_cv_func_closedir_void = yes; then cat >>confdefs.h <<\_ACEOF #define CLOSEDIR_VOID 1 _ACEOF fi ac_have_func=no # yes means we've found a way to get the load average. # Make sure getloadavg.c is where it belongs, at configure-time. test -f "$srcdir/$ac_config_libobj_dir/getloadavg.c" || { { echo "$as_me:$LINENO: error: $srcdir/$ac_config_libobj_dir/getloadavg.c is missing" >&5 echo "$as_me: error: $srcdir/$ac_config_libobj_dir/getloadavg.c is missing" >&2;} { (exit 1); exit 1; }; } ac_save_LIBS=$LIBS # Check for getloadavg, but be sure not to touch the cache variable. (echo "$as_me:$LINENO: checking for getloadavg" >&5 echo $ECHO_N "checking for getloadavg... $ECHO_C" >&6 if test "${ac_cv_func_getloadavg+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define getloadavg to an innocuous variant, in case declares getloadavg. For example, HP-UX 11i declares gettimeofday. */ #define getloadavg innocuous_getloadavg /* System header to define __stub macros and hopefully few prototypes, which can conflict with char getloadavg (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef getloadavg /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char getloadavg (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_getloadavg) || defined (__stub___getloadavg) choke me #else char (*f) () = getloadavg; #endif #ifdef __cplusplus } #endif int main () { return f != getloadavg; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_func_getloadavg=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_func_getloadavg=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_func_getloadavg" >&5 echo "${ECHO_T}$ac_cv_func_getloadavg" >&6 if test $ac_cv_func_getloadavg = yes; then exit 0 else exit 1 fi ) && ac_have_func=yes # On HPUX9, an unprivileged user can get load averages through this function. for ac_func in pstat_getdynamic do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done # Solaris has libkstat which does not require root. echo "$as_me:$LINENO: checking for kstat_open in -lkstat" >&5 echo $ECHO_N "checking for kstat_open in -lkstat... $ECHO_C" >&6 if test "${ac_cv_lib_kstat_kstat_open+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lkstat $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char kstat_open (); int main () { kstat_open (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_kstat_kstat_open=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_kstat_kstat_open=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_kstat_kstat_open" >&5 echo "${ECHO_T}$ac_cv_lib_kstat_kstat_open" >&6 if test $ac_cv_lib_kstat_kstat_open = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBKSTAT 1 _ACEOF LIBS="-lkstat $LIBS" fi test $ac_cv_lib_kstat_kstat_open = yes && ac_have_func=yes # Some systems with -lutil have (and need) -lkvm as well, some do not. # On Solaris, -lkvm requires nlist from -lelf, so check that first # to get the right answer into the cache. # For kstat on solaris, we need libelf to force the definition of SVR4 below. if test $ac_have_func = no; then echo "$as_me:$LINENO: checking for elf_begin in -lelf" >&5 echo $ECHO_N "checking for elf_begin in -lelf... $ECHO_C" >&6 if test "${ac_cv_lib_elf_elf_begin+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lelf $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char elf_begin (); int main () { elf_begin (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_elf_elf_begin=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_elf_elf_begin=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_elf_elf_begin" >&5 echo "${ECHO_T}$ac_cv_lib_elf_elf_begin" >&6 if test $ac_cv_lib_elf_elf_begin = yes; then LIBS="-lelf $LIBS" fi fi if test $ac_have_func = no; then echo "$as_me:$LINENO: checking for kvm_open in -lkvm" >&5 echo $ECHO_N "checking for kvm_open in -lkvm... $ECHO_C" >&6 if test "${ac_cv_lib_kvm_kvm_open+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lkvm $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char kvm_open (); int main () { kvm_open (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_kvm_kvm_open=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_kvm_kvm_open=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_kvm_kvm_open" >&5 echo "${ECHO_T}$ac_cv_lib_kvm_kvm_open" >&6 if test $ac_cv_lib_kvm_kvm_open = yes; then LIBS="-lkvm $LIBS" fi # Check for the 4.4BSD definition of getloadavg. echo "$as_me:$LINENO: checking for getloadavg in -lutil" >&5 echo $ECHO_N "checking for getloadavg in -lutil... $ECHO_C" >&6 if test "${ac_cv_lib_util_getloadavg+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lutil $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char getloadavg (); int main () { getloadavg (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_util_getloadavg=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_util_getloadavg=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_util_getloadavg" >&5 echo "${ECHO_T}$ac_cv_lib_util_getloadavg" >&6 if test $ac_cv_lib_util_getloadavg = yes; then LIBS="-lutil $LIBS" ac_have_func=yes ac_cv_func_getloadavg_setgid=yes fi fi if test $ac_have_func = no; then # There is a commonly available library for RS/6000 AIX. # Since it is not a standard part of AIX, it might be installed locally. ac_getloadavg_LIBS=$LIBS LIBS="-L/usr/local/lib $LIBS" echo "$as_me:$LINENO: checking for getloadavg in -lgetloadavg" >&5 echo $ECHO_N "checking for getloadavg in -lgetloadavg... $ECHO_C" >&6 if test "${ac_cv_lib_getloadavg_getloadavg+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lgetloadavg $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char getloadavg (); int main () { getloadavg (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_getloadavg_getloadavg=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_getloadavg_getloadavg=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_getloadavg_getloadavg" >&5 echo "${ECHO_T}$ac_cv_lib_getloadavg_getloadavg" >&6 if test $ac_cv_lib_getloadavg_getloadavg = yes; then LIBS="-lgetloadavg $LIBS" else LIBS=$ac_getloadavg_LIBS fi fi # Make sure it is really in the library, if we think we found it, # otherwise set up the replacement function. for ac_func in getloadavg do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else case $LIBOBJS in "getloadavg.$ac_objext" | \ *" getloadavg.$ac_objext" | \ "getloadavg.$ac_objext "* | \ *" getloadavg.$ac_objext "* ) ;; *) LIBOBJS="$LIBOBJS getloadavg.$ac_objext" ;; esac cat >>confdefs.h <<\_ACEOF #define C_GETLOADAVG 1 _ACEOF # Figure out what our getloadavg.c needs. ac_have_func=no if test "${ac_cv_header_sys_dg_sys_info_h+set}" = set; then echo "$as_me:$LINENO: checking for sys/dg_sys_info.h" >&5 echo $ECHO_N "checking for sys/dg_sys_info.h... $ECHO_C" >&6 if test "${ac_cv_header_sys_dg_sys_info_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_sys_dg_sys_info_h" >&5 echo "${ECHO_T}$ac_cv_header_sys_dg_sys_info_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking sys/dg_sys_info.h usability" >&5 echo $ECHO_N "checking sys/dg_sys_info.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking sys/dg_sys_info.h presence" >&5 echo $ECHO_N "checking sys/dg_sys_info.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: sys/dg_sys_info.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: sys/dg_sys_info.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for sys/dg_sys_info.h" >&5 echo $ECHO_N "checking for sys/dg_sys_info.h... $ECHO_C" >&6 if test "${ac_cv_header_sys_dg_sys_info_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_sys_dg_sys_info_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_sys_dg_sys_info_h" >&5 echo "${ECHO_T}$ac_cv_header_sys_dg_sys_info_h" >&6 fi if test $ac_cv_header_sys_dg_sys_info_h = yes; then ac_have_func=yes cat >>confdefs.h <<\_ACEOF #define DGUX 1 _ACEOF echo "$as_me:$LINENO: checking for dg_sys_info in -ldgc" >&5 echo $ECHO_N "checking for dg_sys_info in -ldgc... $ECHO_C" >&6 if test "${ac_cv_lib_dgc_dg_sys_info+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-ldgc $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char dg_sys_info (); int main () { dg_sys_info (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_dgc_dg_sys_info=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_dgc_dg_sys_info=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_dgc_dg_sys_info" >&5 echo "${ECHO_T}$ac_cv_lib_dgc_dg_sys_info" >&6 if test $ac_cv_lib_dgc_dg_sys_info = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_LIBDGC 1 _ACEOF LIBS="-ldgc $LIBS" fi fi if test "${ac_cv_header_locale_h+set}" = set; then echo "$as_me:$LINENO: checking for locale.h" >&5 echo $ECHO_N "checking for locale.h... $ECHO_C" >&6 if test "${ac_cv_header_locale_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_locale_h" >&5 echo "${ECHO_T}$ac_cv_header_locale_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking locale.h usability" >&5 echo $ECHO_N "checking locale.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking locale.h presence" >&5 echo $ECHO_N "checking locale.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: locale.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: locale.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: locale.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: locale.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: locale.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: locale.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: locale.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: locale.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: locale.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: locale.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: locale.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for locale.h" >&5 echo $ECHO_N "checking for locale.h... $ECHO_C" >&6 if test "${ac_cv_header_locale_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_locale_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_locale_h" >&5 echo "${ECHO_T}$ac_cv_header_locale_h" >&6 fi for ac_func in setlocale do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done # We cannot check for , because Solaris 2 does not use dwarf (it # uses stabs), but it is still SVR4. We cannot check for because # Irix 4.0.5F has the header but not the library. if test $ac_have_func = no && test "$ac_cv_lib_elf_elf_begin" = yes; then ac_have_func=yes cat >>confdefs.h <<\_ACEOF #define SVR4 1 _ACEOF fi if test $ac_have_func = no; then if test "${ac_cv_header_inq_stats_cpustats_h+set}" = set; then echo "$as_me:$LINENO: checking for inq_stats/cpustats.h" >&5 echo $ECHO_N "checking for inq_stats/cpustats.h... $ECHO_C" >&6 if test "${ac_cv_header_inq_stats_cpustats_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_inq_stats_cpustats_h" >&5 echo "${ECHO_T}$ac_cv_header_inq_stats_cpustats_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking inq_stats/cpustats.h usability" >&5 echo $ECHO_N "checking inq_stats/cpustats.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking inq_stats/cpustats.h presence" >&5 echo $ECHO_N "checking inq_stats/cpustats.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: inq_stats/cpustats.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: inq_stats/cpustats.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for inq_stats/cpustats.h" >&5 echo $ECHO_N "checking for inq_stats/cpustats.h... $ECHO_C" >&6 if test "${ac_cv_header_inq_stats_cpustats_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_inq_stats_cpustats_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_inq_stats_cpustats_h" >&5 echo "${ECHO_T}$ac_cv_header_inq_stats_cpustats_h" >&6 fi if test $ac_cv_header_inq_stats_cpustats_h = yes; then ac_have_func=yes cat >>confdefs.h <<\_ACEOF #define UMAX 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define UMAX4_3 1 _ACEOF fi fi if test $ac_have_func = no; then if test "${ac_cv_header_sys_cpustats_h+set}" = set; then echo "$as_me:$LINENO: checking for sys/cpustats.h" >&5 echo $ECHO_N "checking for sys/cpustats.h... $ECHO_C" >&6 if test "${ac_cv_header_sys_cpustats_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_sys_cpustats_h" >&5 echo "${ECHO_T}$ac_cv_header_sys_cpustats_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking sys/cpustats.h usability" >&5 echo $ECHO_N "checking sys/cpustats.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking sys/cpustats.h presence" >&5 echo $ECHO_N "checking sys/cpustats.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: sys/cpustats.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: sys/cpustats.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: sys/cpustats.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: sys/cpustats.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: sys/cpustats.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: sys/cpustats.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: sys/cpustats.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: sys/cpustats.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: sys/cpustats.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for sys/cpustats.h" >&5 echo $ECHO_N "checking for sys/cpustats.h... $ECHO_C" >&6 if test "${ac_cv_header_sys_cpustats_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_sys_cpustats_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_sys_cpustats_h" >&5 echo "${ECHO_T}$ac_cv_header_sys_cpustats_h" >&6 fi if test $ac_cv_header_sys_cpustats_h = yes; then ac_have_func=yes; cat >>confdefs.h <<\_ACEOF #define UMAX 1 _ACEOF fi fi if test $ac_have_func = no; then for ac_header in mach/mach.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done fi for ac_header in nlist.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF echo "$as_me:$LINENO: checking for struct nlist.n_un.n_name" >&5 echo $ECHO_N "checking for struct nlist.n_un.n_name... $ECHO_C" >&6 if test "${ac_cv_member_struct_nlist_n_un_n_name+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { static struct nlist ac_aggr; if (ac_aggr.n_un.n_name) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_member_struct_nlist_n_un_n_name=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { static struct nlist ac_aggr; if (sizeof ac_aggr.n_un.n_name) return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_member_struct_nlist_n_un_n_name=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_member_struct_nlist_n_un_n_name=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_member_struct_nlist_n_un_n_name" >&5 echo "${ECHO_T}$ac_cv_member_struct_nlist_n_un_n_name" >&6 if test $ac_cv_member_struct_nlist_n_un_n_name = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_STRUCT_NLIST_N_UN_N_NAME 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define NLIST_NAME_UNION 1 _ACEOF fi fi done fi done # Some definitions of getloadavg require that the program be installed setgid. echo "$as_me:$LINENO: checking whether getloadavg requires setgid" >&5 echo $ECHO_N "checking whether getloadavg requires setgid... $ECHO_C" >&6 if test "${ac_cv_func_getloadavg_setgid+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include "$srcdir/$ac_config_libobj_dir/getloadavg.c" #ifdef LDAV_PRIVILEGED Yowza Am I SETGID yet #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "Yowza Am I SETGID yet" >/dev/null 2>&1; then ac_cv_func_getloadavg_setgid=yes else ac_cv_func_getloadavg_setgid=no fi rm -f conftest* fi echo "$as_me:$LINENO: result: $ac_cv_func_getloadavg_setgid" >&5 echo "${ECHO_T}$ac_cv_func_getloadavg_setgid" >&6 if test $ac_cv_func_getloadavg_setgid = yes; then NEED_SETGID=true cat >>confdefs.h <<\_ACEOF #define GETLOADAVG_PRIVILEGED 1 _ACEOF else NEED_SETGID=false fi if test $ac_cv_func_getloadavg_setgid = yes; then echo "$as_me:$LINENO: checking group of /dev/kmem" >&5 echo $ECHO_N "checking group of /dev/kmem... $ECHO_C" >&6 if test "${ac_cv_group_kmem+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else # On Solaris, /dev/kmem is a symlink. Get info on the real file. ac_ls_output=`ls -lgL /dev/kmem 2>/dev/null` # If we got an error (system does not support symlinks), try without -L. test -z "$ac_ls_output" && ac_ls_output=`ls -lg /dev/kmem` ac_cv_group_kmem=`echo $ac_ls_output \ | sed -ne 's/[ ][ ]*/ /g; s/^.[sSrwx-]* *[0-9]* *\([^0-9]*\) *.*/\1/; / /s/.* //;p;'` fi echo "$as_me:$LINENO: result: $ac_cv_group_kmem" >&5 echo "${ECHO_T}$ac_cv_group_kmem" >&6 KMEM_GROUP=$ac_cv_group_kmem fi if test "x$ac_save_LIBS" = x; then GETLOADAVG_LIBS=$LIBS else GETLOADAVG_LIBS=`echo "$LIBS" | sed "s!$ac_save_LIBS!!"` fi LIBS=$ac_save_LIBS # AC_FUNC_GETLOADAVG is documented to set the NLIST_STRUCT value, but it # doesn't. So, we will. if test "$ac_cv_header_nlist_h" = yes; then cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { struct nlist nl; nl.n_name = "string"; return 0; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then make_cv_nlist_struct=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 make_cv_nlist_struct=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext if test "$make_cv_nlist_struct" = yes; then cat >>confdefs.h <<\_ACEOF #define NLIST_STRUCT 1 _ACEOF fi fi echo "$as_me:$LINENO: checking whether sys_siglist is declared" >&5 echo $ECHO_N "checking whether sys_siglist is declared... $ECHO_C" >&6 if test "${ac_cv_have_decl_sys_siglist+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include /* NetBSD declares sys_siglist in unistd.h. */ #if HAVE_UNISTD_H # include #endif int main () { #ifndef sys_siglist char *p = (char *) sys_siglist; #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_have_decl_sys_siglist=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_have_decl_sys_siglist=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_have_decl_sys_siglist" >&5 echo "${ECHO_T}$ac_cv_have_decl_sys_siglist" >&6 if test $ac_cv_have_decl_sys_siglist = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_DECL_SYS_SIGLIST 1 _ACEOF else cat >>confdefs.h <<_ACEOF #define HAVE_DECL_SYS_SIGLIST 0 _ACEOF fi echo "$as_me:$LINENO: checking whether _sys_siglist is declared" >&5 echo $ECHO_N "checking whether _sys_siglist is declared... $ECHO_C" >&6 if test "${ac_cv_have_decl__sys_siglist+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include /* NetBSD declares sys_siglist in unistd.h. */ #if HAVE_UNISTD_H # include #endif int main () { #ifndef _sys_siglist char *p = (char *) _sys_siglist; #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_have_decl__sys_siglist=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_have_decl__sys_siglist=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_have_decl__sys_siglist" >&5 echo "${ECHO_T}$ac_cv_have_decl__sys_siglist" >&6 if test $ac_cv_have_decl__sys_siglist = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_DECL__SYS_SIGLIST 1 _ACEOF else cat >>confdefs.h <<_ACEOF #define HAVE_DECL__SYS_SIGLIST 0 _ACEOF fi echo "$as_me:$LINENO: checking whether __sys_siglist is declared" >&5 echo $ECHO_N "checking whether __sys_siglist is declared... $ECHO_C" >&6 if test "${ac_cv_have_decl___sys_siglist+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include /* NetBSD declares sys_siglist in unistd.h. */ #if HAVE_UNISTD_H # include #endif int main () { #ifndef __sys_siglist char *p = (char *) __sys_siglist; #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_have_decl___sys_siglist=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_have_decl___sys_siglist=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $ac_cv_have_decl___sys_siglist" >&5 echo "${ECHO_T}$ac_cv_have_decl___sys_siglist" >&6 if test $ac_cv_have_decl___sys_siglist = yes; then cat >>confdefs.h <<_ACEOF #define HAVE_DECL___SYS_SIGLIST 1 _ACEOF else cat >>confdefs.h <<_ACEOF #define HAVE_DECL___SYS_SIGLIST 0 _ACEOF fi # Check out the wait reality. for ac_header in sys/wait.h do as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh` if eval "test \"\${$as_ac_Header+set}\" = set"; then echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking $ac_header usability" >&5 echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include <$ac_header> _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking $ac_header presence" >&5 echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include <$ac_header> _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5 echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5 echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for $ac_header" >&5 echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6 if eval "test \"\${$as_ac_Header+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else eval "$as_ac_Header=\$ac_header_preproc" fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6 fi if test `eval echo '${'$as_ac_Header'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF fi done for ac_func in waitpid wait3 do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF fi done echo "$as_me:$LINENO: checking for union wait" >&5 echo $ECHO_N "checking for union wait... $ECHO_C" >&6 if test "${make_cv_union_wait+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include int main () { union wait status; int pid; pid = wait (&status); #ifdef WEXITSTATUS /* Some POSIXoid systems have both the new-style macros and the old union wait type, and they do not work together. If union wait conflicts with WEXITSTATUS et al, we don't want to use it at all. */ if (WEXITSTATUS (status) != 0) pid = -1; #ifdef WTERMSIG /* If we have WEXITSTATUS and WTERMSIG, just use them on ints. */ -- blow chunks here -- #endif #endif #ifdef HAVE_WAITPID /* Make sure union wait works with waitpid. */ pid = waitpid (-1, &status, 0); #endif ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then make_cv_union_wait=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 make_cv_union_wait=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi if test "$make_cv_union_wait" = yes; then cat >>confdefs.h <<\_ACEOF #define HAVE_UNION_WAIT 1 _ACEOF fi echo "$as_me:$LINENO: result: $make_cv_union_wait" >&5 echo "${ECHO_T}$make_cv_union_wait" >&6 # If we're building on Windows/DOS/OS/2, add some support for DOS drive specs. if test "$PATH_SEPARATOR" = ';'; then cat >>confdefs.h <<\_ACEOF #define HAVE_DOS_PATHS 1 _ACEOF fi # See if the user wants to use pmake's "customs" distributed build capability REMOTE=stub use_customs=false # Check whether --with-customs or --without-customs was given. if test "${with_customs+set}" = set; then withval="$with_customs" case $withval in n|no) : ;; *) make_cppflags="$CPPFLAGS" case $withval in y|ye|yes) : ;; *) CPPFLAGS="$CPPFLAGS -I$with_customs/include/customs" make_ldflags="$LDFLAGS -L$with_customs/lib" ;; esac cf_test_netlibs=no echo "$as_me:$LINENO: checking for network libraries" >&5 echo $ECHO_N "checking for network libraries... $ECHO_C" >&6 if test "${cf_cv_netlibs+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else echo "$as_me:$LINENO: result: working..." >&5 echo "${ECHO_T}working..." >&6 cf_cv_netlibs="" cf_test_netlibs=yes for ac_func in gethostname do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else echo "$as_me:$LINENO: checking for gethostname in -lnsl" >&5 echo $ECHO_N "checking for gethostname in -lnsl... $ECHO_C" >&6 if test "${ac_cv_lib_nsl_gethostname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostname (); int main () { gethostname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_nsl_gethostname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_gethostname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostname" >&5 echo "${ECHO_T}$ac_cv_lib_nsl_gethostname" >&6 if test $ac_cv_lib_nsl_gethostname = yes; then cf_tr_func=`echo gethostname | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_gethostname=yes cf_cv_netlibs="-lnsl $cf_cv_netlibs" else ac_cv_func_gethostname=unknown unset ac_cv_func_gethostname 2>/dev/null echo "$as_me:$LINENO: checking for gethostname in -lsocket" >&5 echo $ECHO_N "checking for gethostname in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_gethostname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostname (); int main () { gethostname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_gethostname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_gethostname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_gethostname" >&5 echo "${ECHO_T}$ac_cv_lib_socket_gethostname" >&6 if test $ac_cv_lib_socket_gethostname = yes; then cf_tr_func=`echo gethostname | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_gethostname=yes cf_cv_netlibs="-lsocket $cf_cv_netlibs" else ac_cv_func_gethostname=unknown unset ac_cv_func_gethostname 2>/dev/null fi fi fi done # # FIXME: sequent needs this library (i.e., -lsocket -linet -lnsl), but # I don't know the entrypoints - 97/7/22 TD echo "$as_me:$LINENO: checking for main in -linet" >&5 echo $ECHO_N "checking for main in -linet... $ECHO_C" >&6 if test "${ac_cv_lib_inet_main+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-linet $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ int main () { main (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_inet_main=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_inet_main=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_inet_main" >&5 echo "${ECHO_T}$ac_cv_lib_inet_main" >&6 if test $ac_cv_lib_inet_main = yes; then cf_cv_netlibs="-linet $cf_cv_netlibs" fi # if test "$ac_cv_func_lsocket" != no ; then for ac_func in socket do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else echo "$as_me:$LINENO: checking for socket in -lsocket" >&5 echo $ECHO_N "checking for socket in -lsocket... $ECHO_C" >&6 if test "${ac_cv_lib_socket_socket+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lsocket $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char socket (); int main () { socket (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_socket_socket=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_socket_socket=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_socket_socket" >&5 echo "${ECHO_T}$ac_cv_lib_socket_socket" >&6 if test $ac_cv_lib_socket_socket = yes; then cf_tr_func=`echo socket | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_socket=yes cf_cv_netlibs="-lsocket $cf_cv_netlibs" else ac_cv_func_socket=unknown unset ac_cv_func_socket 2>/dev/null echo "$as_me:$LINENO: checking for socket in -lbsd" >&5 echo $ECHO_N "checking for socket in -lbsd... $ECHO_C" >&6 if test "${ac_cv_lib_bsd_socket+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lbsd $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char socket (); int main () { socket (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_bsd_socket=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_bsd_socket=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_bsd_socket" >&5 echo "${ECHO_T}$ac_cv_lib_bsd_socket" >&6 if test $ac_cv_lib_bsd_socket = yes; then cf_tr_func=`echo socket | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_socket=yes cf_cv_netlibs="-lbsd $cf_cv_netlibs" else ac_cv_func_socket=unknown unset ac_cv_func_socket 2>/dev/null fi fi fi done fi # for ac_func in gethostbyname do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else echo "$as_me:$LINENO: checking for gethostbyname in -lnsl" >&5 echo $ECHO_N "checking for gethostbyname in -lnsl... $ECHO_C" >&6 if test "${ac_cv_lib_nsl_gethostbyname+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lnsl $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char gethostbyname (); int main () { gethostbyname (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_nsl_gethostbyname=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_nsl_gethostbyname=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_nsl_gethostbyname" >&5 echo "${ECHO_T}$ac_cv_lib_nsl_gethostbyname" >&6 if test $ac_cv_lib_nsl_gethostbyname = yes; then cf_tr_func=`echo gethostbyname | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_gethostbyname=yes cf_cv_netlibs="-lnsl $cf_cv_netlibs" else ac_cv_func_gethostbyname=unknown unset ac_cv_func_gethostbyname 2>/dev/null fi fi done # for ac_func in strcasecmp do as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh` echo "$as_me:$LINENO: checking for $ac_func" >&5 echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6 if eval "test \"\${$as_ac_var+set}\" = set"; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Define $ac_func to an innocuous variant, in case declares $ac_func. For example, HP-UX 11i declares gettimeofday. */ #define $ac_func innocuous_$ac_func /* System header to define __stub macros and hopefully few prototypes, which can conflict with char $ac_func (); below. Prefer to if __STDC__ is defined, since exists even on freestanding compilers. */ #ifdef __STDC__ # include #else # include #endif #undef $ac_func /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" { #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char $ac_func (); /* The GNU C library defines this for functions which it implements to always fail with ENOSYS. Some functions are actually named something starting with __ and the normal name is an alias. */ #if defined (__stub_$ac_func) || defined (__stub___$ac_func) choke me #else char (*f) () = $ac_func; #endif #ifdef __cplusplus } #endif int main () { return f != $ac_func; ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then eval "$as_ac_var=yes" else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 eval "$as_ac_var=no" fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext fi echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5 echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6 if test `eval echo '${'$as_ac_var'}'` = yes; then cat >>confdefs.h <<_ACEOF #define `echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF else echo "$as_me:$LINENO: checking for strcasecmp in -lresolv" >&5 echo $ECHO_N "checking for strcasecmp in -lresolv... $ECHO_C" >&6 if test "${ac_cv_lib_resolv_strcasecmp+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lresolv $cf_cv_netlibs $LIBS" cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ /* Override any gcc2 internal prototype to avoid an error. */ #ifdef __cplusplus extern "C" #endif /* We use char because int might match the return type of a gcc2 builtin and then its argument prototype would still apply. */ char strcasecmp (); int main () { strcasecmp (); ; return 0; } _ACEOF rm -f conftest.$ac_objext conftest$ac_exeext if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 (eval $ac_link) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest$ac_exeext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_cv_lib_resolv_strcasecmp=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_cv_lib_resolv_strcasecmp=no fi rm -f conftest.err conftest.$ac_objext \ conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi echo "$as_me:$LINENO: result: $ac_cv_lib_resolv_strcasecmp" >&5 echo "${ECHO_T}$ac_cv_lib_resolv_strcasecmp" >&6 if test $ac_cv_lib_resolv_strcasecmp = yes; then cf_tr_func=`echo strcasecmp | tr '[a-z]' '[A-Z]'` cat >>confdefs.h <<_ACEOF #define HAVE_$cf_tr_func 1 _ACEOF ac_cv_func_strcasecmp=yes cf_cv_netlibs="-lresolv $cf_cv_netlibs" else ac_cv_func_strcasecmp=unknown unset ac_cv_func_strcasecmp 2>/dev/null fi fi done fi LIBS="$LIBS $cf_cv_netlibs" test $cf_test_netlibs = no && echo "$cf_cv_netlibs" >&6 if test "${ac_cv_header_customs_h+set}" = set; then echo "$as_me:$LINENO: checking for customs.h" >&5 echo $ECHO_N "checking for customs.h... $ECHO_C" >&6 if test "${ac_cv_header_customs_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 fi echo "$as_me:$LINENO: result: $ac_cv_header_customs_h" >&5 echo "${ECHO_T}$ac_cv_header_customs_h" >&6 else # Is the header compilable? echo "$as_me:$LINENO: checking customs.h usability" >&5 echo $ECHO_N "checking customs.h usability... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ $ac_includes_default #include _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then ac_header_compiler=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_compiler=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 echo "${ECHO_T}$ac_header_compiler" >&6 # Is the header present? echo "$as_me:$LINENO: checking customs.h presence" >&5 echo $ECHO_N "checking customs.h presence... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include _ACEOF if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5 (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } >/dev/null; then if test -s conftest.err; then ac_cpp_err=$ac_c_preproc_warn_flag ac_cpp_err=$ac_cpp_err$ac_c_werror_flag else ac_cpp_err= fi else ac_cpp_err=yes fi if test -z "$ac_cpp_err"; then ac_header_preproc=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 ac_header_preproc=no fi rm -f conftest.err conftest.$ac_ext echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 echo "${ECHO_T}$ac_header_preproc" >&6 # So? What about this header? case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in yes:no: ) { echo "$as_me:$LINENO: WARNING: customs.h: accepted by the compiler, rejected by the preprocessor!" >&5 echo "$as_me: WARNING: customs.h: accepted by the compiler, rejected by the preprocessor!" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: proceeding with the compiler's result" >&5 echo "$as_me: WARNING: customs.h: proceeding with the compiler's result" >&2;} ac_header_preproc=yes ;; no:yes:* ) { echo "$as_me:$LINENO: WARNING: customs.h: present but cannot be compiled" >&5 echo "$as_me: WARNING: customs.h: present but cannot be compiled" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: check for missing prerequisite headers?" >&5 echo "$as_me: WARNING: customs.h: check for missing prerequisite headers?" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: see the Autoconf documentation" >&5 echo "$as_me: WARNING: customs.h: see the Autoconf documentation" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: section \"Present But Cannot Be Compiled\"" >&5 echo "$as_me: WARNING: customs.h: section \"Present But Cannot Be Compiled\"" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: proceeding with the preprocessor's result" >&5 echo "$as_me: WARNING: customs.h: proceeding with the preprocessor's result" >&2;} { echo "$as_me:$LINENO: WARNING: customs.h: in the future, the compiler will take precedence" >&5 echo "$as_me: WARNING: customs.h: in the future, the compiler will take precedence" >&2;} ( cat <<\_ASBOX ## ------------------------------- ## ## Report this to bug-make@gnu.org ## ## ------------------------------- ## _ASBOX ) | sed "s/^/$as_me: WARNING: /" >&2 ;; esac echo "$as_me:$LINENO: checking for customs.h" >&5 echo $ECHO_N "checking for customs.h... $ECHO_C" >&6 if test "${ac_cv_header_customs_h+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else ac_cv_header_customs_h=$ac_header_preproc fi echo "$as_me:$LINENO: result: $ac_cv_header_customs_h" >&5 echo "${ECHO_T}$ac_cv_header_customs_h" >&6 fi if test $ac_cv_header_customs_h = yes; then use_customs=true REMOTE=cstms LIBS="$LIBS -lcustoms" LDFLAGS="$make_ldflags" else with_customs=no CPPFLAGS="$make_cppflags" make_badcust=yes fi ;; esac fi; # Tell automake about this, so it can include the right .c files. if test "$use_customs" = true; then USE_CUSTOMS_TRUE= USE_CUSTOMS_FALSE='#' else USE_CUSTOMS_TRUE='#' USE_CUSTOMS_FALSE= fi # See if the user asked to handle case insensitive file systems. # Check whether --enable-case-insensitive-file-system or --disable-case-insensitive-file-system was given. if test "${enable_case_insensitive_file_system+set}" = set; then enableval="$enable_case_insensitive_file_system" case_insensitive_fs="yes" cat >>confdefs.h <<\_ACEOF #define HAVE_CASE_INSENSITIVE_FS 1 _ACEOF else case_insensitive_fs="no" fi; # See if we can handle the job server feature, and if the user wants it. # Check whether --enable-job-server or --disable-job-server was given. if test "${enable_job_server+set}" = set; then enableval="$enable_job_server" make_cv_job_server="$enableval" user_job_server="$enableval" else make_cv_job_server="yes" fi; has_wait_nohang=yes case "$ac_cv_func_waitpid/$ac_cv_func_wait3" in no/no) has_wait_nohang=no ;; esac echo "$as_me:$LINENO: checking for SA_RESTART" >&5 echo $ECHO_N "checking for SA_RESTART... $ECHO_C" >&6 if test "${make_cv_sa_restart+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include int main () { return SA_RESTART; ; return 0; } _ACEOF rm -f conftest.$ac_objext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>conftest.er1 ac_status=$? grep -v '^ *+' conftest.er1 >conftest.err rm -f conftest.er1 cat conftest.err >&5 echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); } && { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; } && { ac_try='test -s conftest.$ac_objext' { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 (eval $ac_try) 2>&5 ac_status=$? echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; }; then make_cv_sa_restart=yes else echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 make_cv_sa_restart=no fi rm -f conftest.err conftest.$ac_objext conftest.$ac_ext fi echo "$as_me:$LINENO: result: $make_cv_sa_restart" >&5 echo "${ECHO_T}$make_cv_sa_restart" >&6 if test "$make_cv_sa_restart" != no; then cat >>confdefs.h <<\_ACEOF #define HAVE_SA_RESTART 1 _ACEOF fi # enable make_cv_sa_restart for OS/2 so that the jobserver will be enabled, # but do it after HAVE_SA_RESTART has been defined. case "$host_os" in os2*) make_cv_sa_restart=yes ;; esac case "$ac_cv_func_pipe/$ac_cv_func_sigaction/$make_cv_sa_restart/$has_wait_nohang/$make_cv_job_server" in yes/yes/yes/yes/yes) cat >>confdefs.h <<\_ACEOF #define MAKE_JOBSERVER 1 _ACEOF ;; esac # if we have both lstat() and readlink() then we can support symlink # timechecks. case "$ac_cv_func_lstat/$ac_cv_func_readlink" in yes/yes) cat >>confdefs.h <<\_ACEOF #define MAKE_SYMLINKS 1 _ACEOF ;; esac # Find the SCCS commands, so we can include them in our default rules. echo "$as_me:$LINENO: checking for location of SCCS get command" >&5 echo $ECHO_N "checking for location of SCCS get command... $ECHO_C" >&6 if test "${make_cv_path_sccs_get+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if test -f /usr/sccs/get; then make_cv_path_sccs_get=/usr/sccs/get else make_cv_path_sccs_get=get fi fi echo "$as_me:$LINENO: result: $make_cv_path_sccs_get" >&5 echo "${ECHO_T}$make_cv_path_sccs_get" >&6 cat >>confdefs.h <<_ACEOF #define SCCS_GET "$make_cv_path_sccs_get" _ACEOF ac_clean_files="$ac_clean_files s.conftest conftoast" # Remove these later. if ( /usr/sccs/admin -n s.conftest || admin -n s.conftest ) >/dev/null 2>&1 && test -f s.conftest; then # We successfully created an SCCS file. echo "$as_me:$LINENO: checking if SCCS get command understands -G" >&5 echo $ECHO_N "checking if SCCS get command understands -G... $ECHO_C" >&6 if test "${make_cv_sys_get_minus_G+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else if $make_cv_path_sccs_get -Gconftoast s.conftest >/dev/null 2>&1 && test -f conftoast; then make_cv_sys_get_minus_G=yes else make_cv_sys_get_minus_G=no fi fi echo "$as_me:$LINENO: result: $make_cv_sys_get_minus_G" >&5 echo "${ECHO_T}$make_cv_sys_get_minus_G" >&6 case "$make_cv_sys_get_minus_G" in yes) cat >>confdefs.h <<\_ACEOF #define SCCS_GET_MINUS_G 1 _ACEOF ;; esac fi rm -f s.conftest conftoast # Check the system to see if it provides GNU glob. If not, use our # local version. echo "$as_me:$LINENO: checking if system libc has GNU glob" >&5 echo $ECHO_N "checking if system libc has GNU glob... $ECHO_C" >&6 if test "${make_cv_sys_gnu_glob+set}" = set; then echo $ECHO_N "(cached) $ECHO_C" >&6 else cat >conftest.$ac_ext <<_ACEOF /* confdefs.h. */ _ACEOF cat confdefs.h >>conftest.$ac_ext cat >>conftest.$ac_ext <<_ACEOF /* end confdefs.h. */ #include #include #include #define GLOB_INTERFACE_VERSION 1 #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 # include # if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION gnu glob # endif #endif _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | $EGREP "gnu glob" >/dev/null 2>&1; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 make_cv_sys_gnu_glob=yes else echo "$as_me:$LINENO: result: no; using local copy" >&5 echo "${ECHO_T}no; using local copy" >&6 GLOBINC='-I$(srcdir)/glob' GLOBLIB=glob/libglob.a make_cv_sys_gnu_glob=no fi rm -f conftest* fi # Tell automake about this, so it can build the right .c files. if test "$make_cv_sys_gnu_glob" = no; then USE_LOCAL_GLOB_TRUE= USE_LOCAL_GLOB_FALSE='#' else USE_LOCAL_GLOB_TRUE='#' USE_LOCAL_GLOB_FALSE= fi # Let the makefile know what our build host is cat >>confdefs.h <<_ACEOF #define MAKE_HOST "$host" _ACEOF MAKE_HOST="$host" w32_target_env=no if false; then WINDOWSENV_TRUE= WINDOWSENV_FALSE='#' else WINDOWSENV_TRUE='#' WINDOWSENV_FALSE= fi case "$host" in *-*-mingw32) if true; then WINDOWSENV_TRUE= WINDOWSENV_FALSE='#' else WINDOWSENV_TRUE='#' WINDOWSENV_FALSE= fi w32_target_env=yes cat >>confdefs.h <<\_ACEOF #define WINDOWS32 1 _ACEOF cat >>confdefs.h <<\_ACEOF #define HAVE_DOS_PATHS 1 _ACEOF ;; esac # Include the Maintainer's Makefile section, if it's here. MAINT_MAKEFILE=/dev/null if test -r "$srcdir/maintMakefile"; then MAINT_MAKEFILE="$srcdir/maintMakefile" fi # Allow building with dmalloc echo "$as_me:$LINENO: checking if malloc debugging is wanted" >&5 echo $ECHO_N "checking if malloc debugging is wanted... $ECHO_C" >&6 # Check whether --with-dmalloc or --without-dmalloc was given. if test "${with_dmalloc+set}" = set; then withval="$with_dmalloc" if test "$withval" = yes; then echo "$as_me:$LINENO: result: yes" >&5 echo "${ECHO_T}yes" >&6 cat >>confdefs.h <<\_ACEOF #define WITH_DMALLOC 1 _ACEOF LIBS="$LIBS -ldmalloc" LDFLAGS="$LDFLAGS -g" else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi else echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 fi; # Forcibly disable SET_MAKE. If it's set it breaks things like the test # scripts, etc. SET_MAKE= # Sanity check and inform the user of what we found case "$make_badcust" in yes) echo echo "WARNING: --with-customs specified but no customs.h could be found;" echo " disabling Customs support." echo ;; esac case "$with_customs" in ""|n|no|y|ye|yes) ;; *) if test -f "$with_customs/lib/libcustoms.a"; then : else echo echo "WARNING: '$with_customs/lib' does not appear to contain the" echo " Customs library. You must build and install Customs" echo " before compiling GNU make." echo fi ;; esac case "$has_wait_nohang" in no) echo echo "WARNING: Your system has neither waitpid() nor wait3()." echo " Without one of these, signal handling is unreliable." echo " You should be aware that running GNU make with -j" echo " could result in erratic behavior." echo ;; esac case "$make_cv_job_server/$user_job_server" in no/yes) echo echo "WARNING: Make job server requires a POSIX-ish system that" echo " supports the pipe(), sigaction(), and either" echo " waitpid() or wait3() functions. Your system doesn't" echo " appear to provide one or more of those." echo " Disabling job server support." echo ;; esac # Specify what files are to be created. ac_config_files="$ac_config_files Makefile glob/Makefile po/Makefile.in config/Makefile w32/Makefile" # OK, do it! cat >confcache <<\_ACEOF # This file is a shell script that caches the results of configure # tests run on this system so they can be shared between configure # scripts and configure runs, see configure's option --config-cache. # It is not useful on other systems. If it contains results you don't # want to keep, you may remove or edit it. # # config.status only pays attention to the cache file if you give it # the --recheck option to rerun configure. # # `ac_cv_env_foo' variables (set or unset) will be overridden when # loading this file, other *unset* `ac_cv_foo' will be assigned the # following values. _ACEOF # The following way of writing the cache mishandles newlines in values, # but we know of no workaround that is simple, portable, and efficient. # So, don't put newlines in cache variables' values. # Ultrix sh set writes to stderr and can't be redirected directly, # and sets the high bit in the cache file unless we assign to the vars. { (set) 2>&1 | case `(ac_space=' '; set | grep ac_space) 2>&1` in *ac_space=\ *) # `set' does not quote correctly, so add quotes (double-quote # substitution turns \\\\ into \\, and sed turns \\ into \). sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" ;; *) # `set' quotes correctly as required by POSIX, so do not add quotes. sed -n \ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p" ;; esac; } | sed ' t clear : clear s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ t end /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ : end' >>confcache if diff $cache_file confcache >/dev/null 2>&1; then :; else if test -w $cache_file; then test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file" cat confcache >$cache_file else echo "not updating unwritable cache $cache_file" fi fi rm -f confcache test "x$prefix" = xNONE && prefix=$ac_default_prefix # Let make expand exec_prefix. test "x$exec_prefix" = xNONE && exec_prefix='${prefix}' # VPATH may cause trouble with some makes, so we remove $(srcdir), # ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and # trailing colons and then remove the whole line if VPATH becomes empty # (actually we leave an empty line to preserve line numbers). if test "x$srcdir" = x.; then ac_vpsub='/^[ ]*VPATH[ ]*=/{ s/:*\$(srcdir):*/:/; s/:*\${srcdir}:*/:/; s/:*@srcdir@:*/:/; s/^\([^=]*=[ ]*\):*/\1/; s/:*$//; s/^[^=]*=[ ]*$//; }' fi DEFS=-DHAVE_CONFIG_H ac_libobjs= ac_ltlibobjs= for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue # 1. Remove the extension, and $U if already installed. ac_i=`echo "$ac_i" | sed 's/\$U\././;s/\.o$//;s/\.obj$//'` # 2. Add them. ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext" ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo' done LIBOBJS=$ac_libobjs LTLIBOBJS=$ac_ltlibobjs if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"AMDEP\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${USE_CUSTOMS_TRUE}" && test -z "${USE_CUSTOMS_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"USE_CUSTOMS\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"USE_CUSTOMS\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${USE_LOCAL_GLOB_TRUE}" && test -z "${USE_LOCAL_GLOB_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"USE_LOCAL_GLOB\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"USE_LOCAL_GLOB\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${WINDOWSENV_TRUE}" && test -z "${WINDOWSENV_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"WINDOWSENV\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"WINDOWSENV\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi if test -z "${WINDOWSENV_TRUE}" && test -z "${WINDOWSENV_FALSE}"; then { { echo "$as_me:$LINENO: error: conditional \"WINDOWSENV\" was never defined. Usually this means the macro was only invoked conditionally." >&5 echo "$as_me: error: conditional \"WINDOWSENV\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi : ${CONFIG_STATUS=./config.status} ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" { echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 echo "$as_me: creating $CONFIG_STATUS" >&6;} cat >$CONFIG_STATUS <<_ACEOF #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. # Compiler output produced by configure, useful for debugging # configure, is in config.log if it exists. debug=false ac_cs_recheck=false ac_cs_silent=false SHELL=\${CONFIG_SHELL-$SHELL} _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF ## --------------------- ## ## M4sh Initialization. ## ## --------------------- ## # Be Bourne compatible if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then emulate sh NULLCMD=: # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which # is contrary to our usage. Disable this feature. alias -g '${1+"$@"}'='"$@"' elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then set -o posix fi DUALCASE=1; export DUALCASE # for MKS sh # Support unset when possible. if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then as_unset=unset else as_unset=false fi # Work around bugs in pre-3.0 UWIN ksh. $as_unset ENV MAIL MAILPATH PS1='$ ' PS2='> ' PS4='+ ' # NLS nuisances. for as_var in \ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \ LC_TELEPHONE LC_TIME do if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then eval $as_var=C; export $as_var else $as_unset $as_var fi done # Required to use basename. if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then as_basename=basename else as_basename=false fi # Name of the executable. as_me=`$as_basename "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ X"$0" : 'X\(/\)$' \| \ . : '\(.\)' 2>/dev/null || echo X/"$0" | sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; } /^X\/\(\/\/\)$/{ s//\1/; q; } /^X\/\(\/\).*/{ s//\1/; q; } s/.*/./; q'` # PATH needs CR, and LINENO needs CR and PATH. # Avoid depending upon Character Ranges. as_cr_letters='abcdefghijklmnopqrstuvwxyz' as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' as_cr_Letters=$as_cr_letters$as_cr_LETTERS as_cr_digits='0123456789' as_cr_alnum=$as_cr_Letters$as_cr_digits # The user is always right. if test "${PATH_SEPARATOR+set}" != set; then echo "#! /bin/sh" >conf$$.sh echo "exit 0" >>conf$$.sh chmod +x conf$$.sh if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then PATH_SEPARATOR=';' else PATH_SEPARATOR=: fi rm -f conf$$.sh fi as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" || { # Find who we are. Look in the path if we contain no path at all # relative or not. case $0 in *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break done ;; esac # We did not find ourselves, most probably we were run as `sh COMMAND' # in which case we are not to be found in the path. if test "x$as_myself" = x; then as_myself=$0 fi if test ! -f "$as_myself"; then { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5 echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;} { (exit 1); exit 1; }; } fi case $CONFIG_SHELL in '') as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. for as_base in sh bash ksh sh5; do case $as_dir in /*) if ("$as_dir/$as_base" -c ' as_lineno_1=$LINENO as_lineno_2=$LINENO as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null` test "x$as_lineno_1" != "x$as_lineno_2" && test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; } $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; } CONFIG_SHELL=$as_dir/$as_base export CONFIG_SHELL exec "$CONFIG_SHELL" "$0" ${1+"$@"} fi;; esac done done ;; esac # Create $as_me.lineno as a copy of $as_myself, but with $LINENO # uniformly replaced by the line number. The first 'sed' inserts a # line-number line before each line; the second 'sed' does the real # work. The second script uses 'N' to pair each line-number line # with the numbered line, and appends trailing '-' during # substitution so that $LINENO is not a special case at line end. # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-) sed '=' <$as_myself | sed ' N s,$,-, : loop s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3, t loop s,-$,, s,^['$as_cr_digits']*\n,, ' >$as_me.lineno && chmod +x $as_me.lineno || { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5 echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;} { (exit 1); exit 1; }; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the # original and so on. Autoconf is especially sensible to this). . ./$as_me.lineno # Exit status is that of the last command. exit } case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in *c*,-n*) ECHO_N= ECHO_C=' ' ECHO_T=' ' ;; *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;; *) ECHO_N= ECHO_C='\c' ECHO_T= ;; esac if expr a : '\(a\)' >/dev/null 2>&1; then as_expr=expr else as_expr=false fi rm -f conf$$ conf$$.exe conf$$.file echo >conf$$.file if ln -s conf$$.file conf$$ 2>/dev/null; then # We could just check for DJGPP; but this test a) works b) is more generic # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04). if test -f conf$$.exe; then # Don't use ln at all; we don't have any links as_ln_s='cp -p' else as_ln_s='ln -s' fi elif ln conf$$.file conf$$ 2>/dev/null; then as_ln_s=ln else as_ln_s='cp -p' fi rm -f conf$$ conf$$.exe conf$$.file if mkdir -p . 2>/dev/null; then as_mkdir_p=: else test -d ./-p && rmdir ./-p as_mkdir_p=false fi as_executable_p="test -f" # Sed expression to map a string onto a valid CPP name. as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'" # Sed expression to map a string onto a valid variable name. as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" # IFS # We need space, tab and new line, in precisely that order. as_nl=' ' IFS=" $as_nl" # CDPATH. $as_unset CDPATH exec 6>&1 # Open the log real soon, to keep \$[0] and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. Logging --version etc. is OK. exec 5>>config.log { echo sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX ## Running $as_me. ## _ASBOX } >&5 cat >&5 <<_CSEOF This file was extended by GNU make $as_me 3.81, which was generated by GNU Autoconf 2.59. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS CONFIG_LINKS = $CONFIG_LINKS CONFIG_COMMANDS = $CONFIG_COMMANDS $ $0 $@ _CSEOF echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5 echo >&5 _ACEOF # Files that config.status was made for. if test -n "$ac_config_files"; then echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS fi if test -n "$ac_config_headers"; then echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS fi if test -n "$ac_config_links"; then echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS fi if test -n "$ac_config_commands"; then echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS fi cat >>$CONFIG_STATUS <<\_ACEOF ac_cs_usage="\ \`$as_me' instantiates files from templates according to the current configuration. Usage: $0 [OPTIONS] [FILE]... -h, --help print this help, then exit -V, --version print version number, then exit -q, --quiet do not print progress messages -d, --debug don't remove temporary files --recheck update $as_me by reconfiguring in the same conditions --file=FILE[:TEMPLATE] instantiate the configuration file FILE --header=FILE[:TEMPLATE] instantiate the configuration header FILE Configuration files: $config_files Configuration headers: $config_headers Configuration commands: $config_commands Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF ac_cs_version="\\ GNU make config.status 3.81 configured by $0, generated by GNU Autoconf 2.59, with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\" Copyright (C) 2003 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." srcdir=$srcdir INSTALL="$INSTALL" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # If no file are specified by the user, then we need to provide default # value. By we need to know if files were specified by the user. ac_need_defaults=: while test $# != 0 do case $1 in --*=*) ac_option=`expr "x$1" : 'x\([^=]*\)='` ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'` ac_shift=: ;; -*) ac_option=$1 ac_optarg=$2 ac_shift=shift ;; *) # This is not an option, so the user has probably given explicit # arguments. ac_option=$1 ac_need_defaults=false;; esac case $ac_option in # Handling of the options. _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) ac_cs_recheck=: ;; --version | --vers* | -V ) echo "$ac_cs_version"; exit 0 ;; --he | --h) # Conflict between --help and --header { { echo "$as_me:$LINENO: error: ambiguous option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: ambiguous option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; };; --help | --hel | -h ) echo "$ac_cs_usage"; exit 0 ;; --debug | --d* | -d ) debug=: ;; --file | --fil | --fi | --f ) $ac_shift CONFIG_FILES="$CONFIG_FILES $ac_optarg" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg" ac_need_defaults=false;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ | -silent | --silent | --silen | --sile | --sil | --si | --s) ac_cs_silent=: ;; # This is an error. -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1 Try \`$0 --help' for more information." >&5 echo "$as_me: error: unrecognized option: $1 Try \`$0 --help' for more information." >&2;} { (exit 1); exit 1; }; } ;; *) ac_config_targets="$ac_config_targets $1" ;; esac shift done ac_configure_extra_args= if $ac_cs_silent; then exec 6>/dev/null ac_configure_extra_args="$ac_configure_extra_args --silent" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF if \$ac_cs_recheck; then echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6 exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # INIT-COMMANDS section. # AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" # Capture the value of obsolete ALL_LINGUAS because we need it to compute # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it # from automake. eval 'OBSOLETE_ALL_LINGUAS''="$ALL_LINGUAS"' # Capture the value of LINGUAS because we need it to compute CATALOGS. LINGUAS="${LINGUAS-%UNSET%}" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_config_target in $ac_config_targets do case "$ac_config_target" in # Handling of arguments. "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;; "glob/Makefile" ) CONFIG_FILES="$CONFIG_FILES glob/Makefile" ;; "po/Makefile.in" ) CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; "config/Makefile" ) CONFIG_FILES="$CONFIG_FILES config/Makefile" ;; "w32/Makefile" ) CONFIG_FILES="$CONFIG_FILES w32/Makefile" ;; "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; "default-1" ) CONFIG_COMMANDS="$CONFIG_COMMANDS default-1" ;; "config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 echo "$as_me: error: invalid argument: $ac_config_target" >&2;} { (exit 1); exit 1; }; };; esac done # If the user did not use the arguments to specify the items to instantiate, # then the envvar interface is used. Set only those that are not. # We use the long form for the default assignment because of an extremely # bizarre bug on SunOS 4.1.3. if $ac_need_defaults; then test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands fi # Have a temporary directory for convenience. Make it in the build tree # simply because there is no reason to put it here, and in addition, # creating and moving files from /tmp can sometimes cause problems. # Create a temporary directory, and hook for its removal unless debugging. $debug || { trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0 trap '{ (exit 1); exit 1; }' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. { tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" } || { tmp=./confstat$$-$RANDOM (umask 077 && mkdir $tmp) } || { echo "$me: cannot create a temporary directory in ." >&2 { (exit 1); exit 1; } } _ACEOF cat >>$CONFIG_STATUS <<_ACEOF # # CONFIG_FILES section. # # No need to generate the scripts if there are no CONFIG_FILES. # This happens for instance when ./config.status config.h if test -n "\$CONFIG_FILES"; then # Protect against being on the right side of a sed subst in config.status. sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g; s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF s,@SHELL@,$SHELL,;t t s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t s,@exec_prefix@,$exec_prefix,;t t s,@prefix@,$prefix,;t t s,@program_transform_name@,$program_transform_name,;t t s,@bindir@,$bindir,;t t s,@sbindir@,$sbindir,;t t s,@libexecdir@,$libexecdir,;t t s,@datadir@,$datadir,;t t s,@sysconfdir@,$sysconfdir,;t t s,@sharedstatedir@,$sharedstatedir,;t t s,@localstatedir@,$localstatedir,;t t s,@libdir@,$libdir,;t t s,@includedir@,$includedir,;t t s,@oldincludedir@,$oldincludedir,;t t s,@infodir@,$infodir,;t t s,@mandir@,$mandir,;t t s,@build_alias@,$build_alias,;t t s,@host_alias@,$host_alias,;t t s,@target_alias@,$target_alias,;t t s,@DEFS@,$DEFS,;t t s,@ECHO_C@,$ECHO_C,;t t s,@ECHO_N@,$ECHO_N,;t t s,@ECHO_T@,$ECHO_T,;t t s,@LIBS@,$LIBS,;t t s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t s,@INSTALL_DATA@,$INSTALL_DATA,;t t s,@CYGPATH_W@,$CYGPATH_W,;t t s,@PACKAGE@,$PACKAGE,;t t s,@VERSION@,$VERSION,;t t s,@ACLOCAL@,$ACLOCAL,;t t s,@AUTOCONF@,$AUTOCONF,;t t s,@AUTOMAKE@,$AUTOMAKE,;t t s,@AUTOHEADER@,$AUTOHEADER,;t t s,@MAKEINFO@,$MAKEINFO,;t t s,@install_sh@,$install_sh,;t t s,@STRIP@,$STRIP,;t t s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t s,@mkdir_p@,$mkdir_p,;t t s,@AWK@,$AWK,;t t s,@SET_MAKE@,$SET_MAKE,;t t s,@am__leading_dot@,$am__leading_dot,;t t s,@AMTAR@,$AMTAR,;t t s,@am__tar@,$am__tar,;t t s,@am__untar@,$am__untar,;t t s,@CC@,$CC,;t t s,@CFLAGS@,$CFLAGS,;t t s,@LDFLAGS@,$LDFLAGS,;t t s,@CPPFLAGS@,$CPPFLAGS,;t t s,@ac_ct_CC@,$ac_ct_CC,;t t s,@EXEEXT@,$EXEEXT,;t t s,@OBJEXT@,$OBJEXT,;t t s,@DEPDIR@,$DEPDIR,;t t s,@am__include@,$am__include,;t t s,@am__quote@,$am__quote,;t t s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t s,@CCDEPMODE@,$CCDEPMODE,;t t s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t s,@RANLIB@,$RANLIB,;t t s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t s,@CPP@,$CPP,;t t s,@AR@,$AR,;t t s,@PERL@,$PERL,;t t s,@build@,$build,;t t s,@build_cpu@,$build_cpu,;t t s,@build_vendor@,$build_vendor,;t t s,@build_os@,$build_os,;t t s,@host@,$host,;t t s,@host_cpu@,$host_cpu,;t t s,@host_vendor@,$host_vendor,;t t s,@host_os@,$host_os,;t t s,@EGREP@,$EGREP,;t t s,@U@,$U,;t t s,@ANSI2KNR@,$ANSI2KNR,;t t s,@MKINSTALLDIRS@,$MKINSTALLDIRS,;t t s,@USE_NLS@,$USE_NLS,;t t s,@MSGFMT@,$MSGFMT,;t t s,@GMSGFMT@,$GMSGFMT,;t t s,@XGETTEXT@,$XGETTEXT,;t t s,@MSGMERGE@,$MSGMERGE,;t t s,@LIBICONV@,$LIBICONV,;t t s,@LTLIBICONV@,$LTLIBICONV,;t t s,@INTLLIBS@,$INTLLIBS,;t t s,@LIBINTL@,$LIBINTL,;t t s,@LTLIBINTL@,$LTLIBINTL,;t t s,@POSUB@,$POSUB,;t t s,@ALLOCA@,$ALLOCA,;t t s,@LIBOBJS@,$LIBOBJS,;t t s,@NEED_SETGID@,$NEED_SETGID,;t t s,@KMEM_GROUP@,$KMEM_GROUP,;t t s,@GETLOADAVG_LIBS@,$GETLOADAVG_LIBS,;t t s,@REMOTE@,$REMOTE,;t t s,@USE_CUSTOMS_TRUE@,$USE_CUSTOMS_TRUE,;t t s,@USE_CUSTOMS_FALSE@,$USE_CUSTOMS_FALSE,;t t s,@GLOBINC@,$GLOBINC,;t t s,@GLOBLIB@,$GLOBLIB,;t t s,@USE_LOCAL_GLOB_TRUE@,$USE_LOCAL_GLOB_TRUE,;t t s,@USE_LOCAL_GLOB_FALSE@,$USE_LOCAL_GLOB_FALSE,;t t s,@MAKE_HOST@,$MAKE_HOST,;t t s,@WINDOWSENV_TRUE@,$WINDOWSENV_TRUE,;t t s,@WINDOWSENV_FALSE@,$WINDOWSENV_FALSE,;t t s,@LTLIBOBJS@,$LTLIBOBJS,;t t /@MAINT_MAKEFILE@/r $MAINT_MAKEFILE s,@MAINT_MAKEFILE@,,;t t CEOF _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # Split the substitutions into bite-sized pieces for seds with # small command number limits, like on Digital OSF/1 and HP-UX. ac_max_sed_lines=48 ac_sed_frag=1 # Number of current file. ac_beg=1 # First line for current file. ac_end=$ac_max_sed_lines # Line after last line for current file. ac_more_lines=: ac_sed_cmds= while $ac_more_lines; do if test $ac_beg -gt 1; then sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag else sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag fi if test ! -s $tmp/subs.frag; then ac_more_lines=false else # The purpose of the label and of the branching condition is to # speed up the sed processing (if there are no `@' at all, there # is no need to browse any of the substitutions). # These are the two extra sed commands mentioned above. (echo ':t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed if test -z "$ac_sed_cmds"; then ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed" else ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed" fi ac_sed_frag=`expr $ac_sed_frag + 1` ac_beg=$ac_end ac_end=`expr $ac_end + $ac_max_sed_lines` fi done if test -z "$ac_sed_cmds"; then ac_sed_cmds=cat fi fi # test -n "$CONFIG_FILES" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories. ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac case $INSTALL in [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; *) ac_INSTALL=$ac_top_builddir$INSTALL ;; esac # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then configure_input= else configure_input="$ac_file. " fi configure_input=$configure_input"Generated from `echo $ac_file_in | sed 's,.*/,,'` by configure." # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } if test x"$ac_file" != x-; then { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} rm -f "$ac_file" fi _ACEOF cat >>$CONFIG_STATUS <<_ACEOF sed "$ac_vpsub $extrasub _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF :t /@[a-zA-Z_][a-zA-Z_0-9]*@/!b s,@configure_input@,$configure_input,;t t s,@srcdir@,$ac_srcdir,;t t s,@abs_srcdir@,$ac_abs_srcdir,;t t s,@top_srcdir@,$ac_top_srcdir,;t t s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t s,@builddir@,$ac_builddir,;t t s,@abs_builddir@,$ac_abs_builddir,;t t s,@top_builddir@,$ac_top_builddir,;t t s,@abs_top_builddir@,$ac_abs_top_builddir,;t t s,@INSTALL@,$ac_INSTALL,;t t " $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out rm -f $tmp/stdin if test x"$ac_file" != x-; then mv $tmp/out $ac_file else cat $tmp/out rm -f $tmp/out fi done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_HEADER section. # # These sed commands are passed to sed as "A NAME B NAME C VALUE D", where # NAME is the cpp macro being defined and VALUE is the value it is being given. # # ac_d sets the value in "#define NAME VALUE" lines. ac_dA='s,^\([ ]*\)#\([ ]*define[ ][ ]*\)' ac_dB='[ ].*$,\1#\2' ac_dC=' ' ac_dD=',;t' # ac_u turns "#undef NAME" without trailing blanks into "#define NAME VALUE". ac_uA='s,^\([ ]*\)#\([ ]*\)undef\([ ][ ]*\)' ac_uB='$,\1#\2define\3' ac_uC=' ' ac_uD=',;t' for ac_file in : $CONFIG_HEADERS; do test "x$ac_file" = x: && continue # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in". case $ac_file in - | *:- | *:-:* ) # input from stdin cat >$tmp/stdin ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;; * ) ac_file_in=$ac_file.in ;; esac test x"$ac_file" != x- && { echo "$as_me:$LINENO: creating $ac_file" >&5 echo "$as_me: creating $ac_file" >&6;} # First look for the input files in the build tree, otherwise in the # src tree. ac_file_inputs=`IFS=: for f in $ac_file_in; do case $f in -) echo $tmp/stdin ;; [\\/$]*) # Absolute (can't be DOS-style, as IFS=:) test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } # Do quote $f, to prevent DOS paths from being IFS'd. echo "$f";; *) # Relative if test -f "$f"; then # Build tree echo "$f" elif test -f "$srcdir/$f"; then # Source tree echo "$srcdir/$f" else # /dev/null tree { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5 echo "$as_me: error: cannot find input file: $f" >&2;} { (exit 1); exit 1; }; } fi;; esac done` || { (exit 1); exit 1; } # Remove the trailing spaces. sed 's/[ ]*$//' $ac_file_inputs >$tmp/in _ACEOF # Transform confdefs.h into two sed scripts, `conftest.defines' and # `conftest.undefs', that substitutes the proper values into # config.h.in to produce config.h. The first handles `#define' # templates, and the second `#undef' templates. # And first: Protect against being on the right side of a sed subst in # config.status. Protect against being in an unquoted here document # in config.status. rm -f conftest.defines conftest.undefs # Using a here document instead of a string reduces the quoting nightmare. # Putting comments in sed scripts is not portable. # # `end' is used to avoid that the second main sed command (meant for # 0-ary CPP macros) applies to n-ary macro definitions. # See the Autoconf documentation for `clear'. cat >confdef2sed.sed <<\_ACEOF s/[\\&,]/\\&/g s,[\\$`],\\&,g t clear : clear s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*\)\(([^)]*)\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1\2${ac_dC}\3${ac_dD},gp t end s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\)$,${ac_dA}\1${ac_dB}\1${ac_dC}\2${ac_dD},gp : end _ACEOF # If some macros were called several times there might be several times # the same #defines, which is useless. Nevertheless, we may not want to # sort them, since we want the *last* AC-DEFINE to be honored. uniq confdefs.h | sed -n -f confdef2sed.sed >conftest.defines sed 's/ac_d/ac_u/g' conftest.defines >conftest.undefs rm -f confdef2sed.sed # This sed command replaces #undef with comments. This is necessary, for # example, in the case of _POSIX_SOURCE, which is predefined and required # on some systems where configure will not decide to define it. cat >>conftest.undefs <<\_ACEOF s,^[ ]*#[ ]*undef[ ][ ]*[a-zA-Z_][a-zA-Z_0-9]*,/* & */, _ACEOF # Break up conftest.defines because some shells have a limit on the size # of here documents, and old seds have small limits too (100 cmds). echo ' # Handle all the #define templates only if necessary.' >>$CONFIG_STATUS echo ' if grep "^[ ]*#[ ]*define" $tmp/in >/dev/null; then' >>$CONFIG_STATUS echo ' # If there are no defines, we may have an empty if/fi' >>$CONFIG_STATUS echo ' :' >>$CONFIG_STATUS rm -f conftest.tail while grep . conftest.defines >/dev/null do # Write a limited-size here document to $tmp/defines.sed. echo ' cat >$tmp/defines.sed <>$CONFIG_STATUS # Speed up: don't consider the non `#define' lines. echo '/^[ ]*#[ ]*define/!b' >>$CONFIG_STATUS # Work around the forget-to-reset-the-flag bug. echo 't clr' >>$CONFIG_STATUS echo ': clr' >>$CONFIG_STATUS sed ${ac_max_here_lines}q conftest.defines >>$CONFIG_STATUS echo 'CEOF sed -f $tmp/defines.sed $tmp/in >$tmp/out rm -f $tmp/in mv $tmp/out $tmp/in ' >>$CONFIG_STATUS sed 1,${ac_max_here_lines}d conftest.defines >conftest.tail rm -f conftest.defines mv conftest.tail conftest.defines done rm -f conftest.defines echo ' fi # grep' >>$CONFIG_STATUS echo >>$CONFIG_STATUS # Break up conftest.undefs because some shells have a limit on the size # of here documents, and old seds have small limits too (100 cmds). echo ' # Handle all the #undef templates' >>$CONFIG_STATUS rm -f conftest.tail while grep . conftest.undefs >/dev/null do # Write a limited-size here document to $tmp/undefs.sed. echo ' cat >$tmp/undefs.sed <>$CONFIG_STATUS # Speed up: don't consider the non `#undef' echo '/^[ ]*#[ ]*undef/!b' >>$CONFIG_STATUS # Work around the forget-to-reset-the-flag bug. echo 't clr' >>$CONFIG_STATUS echo ': clr' >>$CONFIG_STATUS sed ${ac_max_here_lines}q conftest.undefs >>$CONFIG_STATUS echo 'CEOF sed -f $tmp/undefs.sed $tmp/in >$tmp/out rm -f $tmp/in mv $tmp/out $tmp/in ' >>$CONFIG_STATUS sed 1,${ac_max_here_lines}d conftest.undefs >conftest.tail rm -f conftest.undefs mv conftest.tail conftest.undefs done rm -f conftest.undefs cat >>$CONFIG_STATUS <<\_ACEOF # Let's still pretend it is `configure' which instantiates (i.e., don't # use $as_me), people would be surprised to read: # /* config.h. Generated by config.status. */ if test x"$ac_file" = x-; then echo "/* Generated by configure. */" >$tmp/config.h else echo "/* $ac_file. Generated by configure. */" >$tmp/config.h fi cat $tmp/in >>$tmp/config.h rm -f $tmp/in if test x"$ac_file" != x-; then if diff $ac_file $tmp/config.h >/dev/null 2>&1; then { echo "$as_me:$LINENO: $ac_file is unchanged" >&5 echo "$as_me: $ac_file is unchanged" >&6;} else ac_dir=`(dirname "$ac_file") 2>/dev/null || $as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_file" : 'X\(//\)[^/]' \| \ X"$ac_file" : 'X\(//\)$' \| \ X"$ac_file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } rm -f $ac_file mv $tmp/config.h $ac_file fi else cat $tmp/config.h rm -f $tmp/config.h fi # Compute $ac_file's index in $config_headers. _am_stamp_count=1 for _am_header in $config_headers :; do case $_am_header in $ac_file | $ac_file:* ) break ;; * ) _am_stamp_count=`expr $_am_stamp_count + 1` ;; esac done echo "timestamp for $ac_file" >`(dirname $ac_file) 2>/dev/null || $as_expr X$ac_file : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X$ac_file : 'X\(//\)[^/]' \| \ X$ac_file : 'X\(//\)$' \| \ X$ac_file : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X$ac_file | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'`/stamp-h$_am_stamp_count done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF # # CONFIG_COMMANDS section. # for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue ac_dest=`echo "$ac_file" | sed 's,:.*,,'` ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'` ac_dir=`(dirname "$ac_dest") 2>/dev/null || $as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$ac_dest" : 'X\(//\)[^/]' \| \ X"$ac_dest" : 'X\(//\)$' \| \ X"$ac_dest" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$ac_dest" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p "$ac_dir" else as_dir="$ac_dir" as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5 echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;} { (exit 1); exit 1; }; }; } ac_builddir=. if test "$ac_dir" != .; then ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'` # A "../" for each directory in $ac_dir_suffix. ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'` else ac_dir_suffix= ac_top_builddir= fi case $srcdir in .) # No --srcdir option. We are building in place. ac_srcdir=. if test -z "$ac_top_builddir"; then ac_top_srcdir=. else ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'` fi ;; [\\/]* | ?:[\\/]* ) # Absolute path. ac_srcdir=$srcdir$ac_dir_suffix; ac_top_srcdir=$srcdir ;; *) # Relative path. ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix ac_top_srcdir=$ac_top_builddir$srcdir ;; esac # Do not use `cd foo && pwd` to compute absolute paths, because # the directories may not exist. case `pwd` in .) ac_abs_builddir="$ac_dir";; *) case "$ac_dir" in .) ac_abs_builddir=`pwd`;; [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";; *) ac_abs_builddir=`pwd`/"$ac_dir";; esac;; esac case $ac_abs_builddir in .) ac_abs_top_builddir=${ac_top_builddir}.;; *) case ${ac_top_builddir}. in .) ac_abs_top_builddir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;; *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;; esac;; esac case $ac_abs_builddir in .) ac_abs_srcdir=$ac_srcdir;; *) case $ac_srcdir in .) ac_abs_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;; *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;; esac;; esac case $ac_abs_builddir in .) ac_abs_top_srcdir=$ac_top_srcdir;; *) case $ac_top_srcdir in .) ac_abs_top_srcdir=$ac_abs_builddir;; [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;; *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;; esac;; esac { echo "$as_me:$LINENO: executing $ac_dest commands" >&5 echo "$as_me: executing $ac_dest commands" >&6;} case $ac_dest in depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do # Strip MF so we end up with the name of the file. mf=`echo "$mf" | sed -e 's/:.*$//'` # Check whether this is an Automake generated Makefile or not. # We used to match only the files named `Makefile.in', but # some people rename them; so instead we look at the file content. # Grep'ing the first line is not enough: some people post-process # each Makefile.in and add a new line on top of each file to say so. # So let's grep whole file. if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then dirpart=`(dirname "$mf") 2>/dev/null || $as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$mf" : 'X\(//\)[^/]' \| \ X"$mf" : 'X\(//\)$' \| \ X"$mf" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$mf" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` else continue fi # Extract the definition of DEPDIR, am__include, and am__quote # from the Makefile without running `make'. DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"` test -z "$DEPDIR" && continue am__include=`sed -n 's/^am__include = //p' < "$mf"` test -z "am__include" && continue am__quote=`sed -n 's/^am__quote = //p' < "$mf"` # When using ansi2knr, U may be empty or an underscore; expand it U=`sed -n 's/^U = //p' < "$mf"` # Find all dependency output files, they are included files with # $(DEPDIR) in their names. We invoke sed twice because it is the # simplest approach to changing $(DEPDIR) to its actual value in the # expansion. for file in `sed -n " s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do # Make sure the directory exists. test -f "$dirpart/$file" && continue fdir=`(dirname "$file") 2>/dev/null || $as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$file" : 'X\(//\)[^/]' \| \ X"$file" : 'X\(//\)$' \| \ X"$file" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$file" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` { if $as_mkdir_p; then mkdir -p $dirpart/$fdir else as_dir=$dirpart/$fdir as_dirs= while test ! -d "$as_dir"; do as_dirs="$as_dir $as_dirs" as_dir=`(dirname "$as_dir") 2>/dev/null || $as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ X"$as_dir" : 'X\(//\)[^/]' \| \ X"$as_dir" : 'X\(//\)$' \| \ X"$as_dir" : 'X\(/\)' \| \ . : '\(.\)' 2>/dev/null || echo X"$as_dir" | sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; } /^X\(\/\/\)[^/].*/{ s//\1/; q; } /^X\(\/\/\)$/{ s//\1/; q; } /^X\(\/\).*/{ s//\1/; q; } s/.*/./; q'` done test ! -n "$as_dirs" || mkdir $as_dirs fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5 echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;} { (exit 1); exit 1; }; }; } # echo "creating $dirpart/$file" echo '# dummy' > "$dirpart/$file" done done ;; default-1 ) for ac_file in $CONFIG_FILES; do # Support "outfile[:infile[:infile...]]" case "$ac_file" in *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; esac # PO directories have a Makefile.in generated from Makefile.in.in. case "$ac_file" in */Makefile.in) # Adjust a relative srcdir. ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` # In autoconf-2.13 it is called $ac_given_srcdir. # In autoconf-2.50 it is called $srcdir. test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" case "$ac_given_srcdir" in .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; /*) top_srcdir="$ac_given_srcdir" ;; *) top_srcdir="$ac_dots$ac_given_srcdir" ;; esac if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then rm -f "$ac_dir/POTFILES" test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," | sed -e "\$s/\(.*\) \\\\/\1/" > "$ac_dir/POTFILES" POMAKEFILEDEPS="POTFILES.in" # ALL_LINGUAS, POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES depend # on $ac_dir but don't depend on user-specified configuration # parameters. if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then # The LINGUAS file contains the set of available languages. if test -n "$OBSOLETE_ALL_LINGUAS"; then test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configure.in is obsolete" || echo "setting ALL_LINGUAS in configure.in is obsolete" fi ALL_LINGUAS_=`sed -e "/^#/d" "$ac_given_srcdir/$ac_dir/LINGUAS"` # Hide the ALL_LINGUAS assigment from automake. eval 'ALL_LINGUAS''=$ALL_LINGUAS_' POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" else # The set of available languages was given in configure.in. eval 'ALL_LINGUAS''=$OBSOLETE_ALL_LINGUAS' fi # Compute POFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) # Compute UPDATEPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).po-update) # Compute DUMMYPOFILES # as $(foreach lang, $(ALL_LINGUAS), $(lang).nop) # Compute GMOFILES # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) case "$ac_given_srcdir" in .) srcdirpre= ;; *) srcdirpre='$(srcdir)/' ;; esac POFILES= UPDATEPOFILES= DUMMYPOFILES= GMOFILES= for lang in $ALL_LINGUAS; do POFILES="$POFILES $srcdirpre$lang.po" UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" DUMMYPOFILES="$DUMMYPOFILES $lang.nop" GMOFILES="$GMOFILES $srcdirpre$lang.gmo" done # CATALOGS depends on both $ac_dir and the user's LINGUAS # environment variable. INST_LINGUAS= if test -n "$ALL_LINGUAS"; then for presentlang in $ALL_LINGUAS; do useit=no if test "%UNSET%" != "$LINGUAS"; then desiredlanguages="$LINGUAS" else desiredlanguages="$ALL_LINGUAS" fi for desiredlang in $desiredlanguages; do # Use the presentlang catalog if desiredlang is # a. equal to presentlang, or # b. a variant of presentlang (because in this case, # presentlang can be used as a fallback for messages # which are not translated in the desiredlang catalog). case "$desiredlang" in "$presentlang"*) useit=yes;; esac done if test $useit = yes; then INST_LINGUAS="$INST_LINGUAS $presentlang" fi done fi CATALOGS= if test -n "$INST_LINGUAS"; then for lang in $INST_LINGUAS; do CATALOGS="$CATALOGS $lang.gmo" done fi test -n "$as_me" && echo "$as_me: creating $ac_dir/Makefile" || echo "creating $ac_dir/Makefile" sed -e "/^POTFILES =/r $ac_dir/POTFILES" -e "/^# Makevars/r $ac_given_srcdir/$ac_dir/Makevars" -e "s|@POFILES@|$POFILES|g" -e "s|@UPDATEPOFILES@|$UPDATEPOFILES|g" -e "s|@DUMMYPOFILES@|$DUMMYPOFILES|g" -e "s|@GMOFILES@|$GMOFILES|g" -e "s|@CATALOGS@|$CATALOGS|g" -e "s|@POMAKEFILEDEPS@|$POMAKEFILEDEPS|g" "$ac_dir/Makefile.in" > "$ac_dir/Makefile" for f in "$ac_given_srcdir/$ac_dir"/Rules-*; do if test -f "$f"; then case "$f" in *.orig | *.bak | *~) ;; *) cat "$f" >> "$ac_dir/Makefile" ;; esac fi done fi ;; esac done ;; esac done _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF { (exit 0); exit 0; } _ACEOF chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save # configure is writing to config.log, and then calls config.status. # config.status does its own redirection, appending to config.log. # Unfortunately, on DOS this fails, as config.log is still kept open # by configure, so config.status won't be able to write to it; its # output is simply discarded. So we exec the FD to /dev/null, # effectively closing config.log, so it can be properly (re)opened and # appended to by config.status. When coming back to configure, we # need to make the FD available again. if test "$no_create" != yes; then ac_cs_success=: ac_config_status_args= test "$silent" = yes && ac_config_status_args="$ac_config_status_args --quiet" exec 5>/dev/null $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. $ac_cs_success || { (exit 1); exit 1; } fi # We only generate the build.sh if we have a build.sh.in; we won't have # one before we've created a distribution. if test -f "$srcdir/build.sh.in"; then ./config.status --file build.sh chmod +x build.sh fi make-dfsg-3.81.orig/configure.bat0000644000175000017500000000406310416553102017165 0ustar srivastasrivasta@echo off rem Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, rem 2004, 2005, 2006 Free Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under rem the terms of the GNU General Public License as published by the Free rem Software Foundation; either version 2, or (at your option) any later rem version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT rem ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or rem FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for rem more details. rem You should have received a copy of the GNU General Public License along rem with GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. echo Configuring MAKE for DJGPP rem The SmallEnv trick protects against too small environment block, rem in which case the values will be truncated and the whole thing rem goes awry. COMMAND.COM will say "Out of environment space", but rem many people don't care, so we force them to care by refusing to go. rem Where is the srcdir? set XSRC=. if not "%XSRC%"=="." goto SmallEnv if "%1%"=="" goto SrcDone set XSRC=%1 if not "%XSRC%"=="%1" goto SmallEnv :SrcDone update %XSRC%/configh.dos ./config.h rem Do they have Make? redir -o junk.$$$ -eo make -n -f NUL rem REDIR will return 1 if it cannot run Make. rem If it can run Make, it will usually return 2, rem but 0 is also OK with us. if errorlevel 2 goto MakeOk if not errorlevel 1 goto MakeOk if exist junk.$$$ del junk.$$$ echo No Make program found--use DOSBUILD.BAT to build Make. goto End rem They do have Make. Generate the Makefile. :MakeOk del junk.$$$ update %XSRC%/Makefile.DOS ./Makefile echo Done. if not "%XSRC%"=="." echo Invoke Make thus: "make srcdir=%XSRC%" goto End :SmallEnv echo Your environment is too small. Please enlarge it and run me again. :End set XRSC= make-dfsg-3.81.orig/configure.in0000644000175000017500000003424310416553102017030 0ustar srivastasrivasta# Process this file with autoconf to produce a configure script. # # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. AC_INIT([GNU make],[3.81],[bug-make@gnu.org]) AC_PREREQ(2.59) AC_REVISION([[$Id: configure.in,v 1.142 2006/04/01 06:36:40 psmith Exp $]]) # Autoconf setup AC_CONFIG_AUX_DIR(config) AC_CONFIG_SRCDIR(vpath.c) AC_CONFIG_HEADERS(config.h) # Automake setup AM_INIT_AUTOMAKE([1.9]) # Checks for programs. AC_PROG_CC AC_PROG_INSTALL AC_PROG_RANLIB AC_PROG_CPP AC_CHECK_PROG(AR, ar, ar, ar) # Perl is needed for the test suite (only) AC_CHECK_PROG(PERL, perl, perl, perl) # Specialized system macros AC_CANONICAL_HOST AC_AIX AC_ISC_POSIX AC_MINIX # Needed for ansi2knr AM_C_PROTOTYPES # Enable gettext, in "external" mode. AM_GNU_GETTEXT_VERSION(0.14.1) AM_GNU_GETTEXT([external]) # This test must come as early as possible after the compiler configuration # tests, because the choice of the file model can (in principle) affect # whether functions and headers are available, whether they work, etc. AC_SYS_LARGEFILE # Checks for libraries. AC_SEARCH_LIBS(getpwnam, [sun]) # Checks for header files. AC_HEADER_STDC AC_HEADER_DIRENT AC_HEADER_STAT AC_HEADER_TIME AC_CHECK_HEADERS(stdlib.h locale.h unistd.h limits.h fcntl.h string.h \ memory.h sys/param.h sys/resource.h sys/time.h sys/timeb.h) # Set a flag if we have an ANSI C compiler if test "$ac_cv_prog_cc_stdc" != no; then AC_DEFINE(HAVE_ANSI_COMPILER, 1, [Define if your compiler conforms to the ANSI C standard.]) fi # Determine what kind of variadic function calls we support AC_CHECK_HEADERS(stdarg.h varargs.h, break) AM_PROG_CC_C_O AC_C_CONST AC_TYPE_SIGNAL AC_TYPE_UID_T AC_TYPE_PID_T # Find some definition for uintmax_t AC_CHECK_TYPE(uintmax_t,,[ uintmax_t="unsigned long" AC_CHECK_TYPE(unsigned long long,[uintmax_t="unsigned long long"]) AC_DEFINE_UNQUOTED(uintmax_t,$uintmax_t, [Define uintmax_t if not defined in or .])]) # Find out whether our struct stat returns nanosecond resolution timestamps. AC_STRUCT_ST_MTIM_NSEC AC_MSG_CHECKING([whether to use high resolution file timestamps]) AC_CACHE_VAL(make_cv_file_timestamp_hi_res, [ make_cv_file_timestamp_hi_res=no if test "$ac_cv_struct_st_mtim_nsec" != no; then AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ # if HAVE_INTTYPES_H # include # endif]], [[char a[0x7fffffff < (uintmax_t)-1 >> 30 ? 1 : -1];]])], [make_cv_file_timestamp_hi_res=yes], []) fi]) AC_MSG_RESULT($make_cv_file_timestamp_hi_res) if test "$make_cv_file_timestamp_hi_res" = yes; then val=1 else val=0 fi AC_DEFINE_UNQUOTED(FILE_TIMESTAMP_HI_RES, $val, [Use high resolution file timestamps if nonzero.]) if test "$make_cv_file_timestamp_hi_res" = yes; then # Solaris 2.5.1 needs -lposix4 to get the clock_gettime function. # Solaris 7 prefers the library name -lrt to the obsolescent name -lposix4. AC_SEARCH_LIBS(clock_gettime, [rt posix4]) if test "$ac_cv_search_clock_gettime" != no; then AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [Define if you have the clock_gettime function.]) fi fi # Check for DOS-style pathnames. pds_AC_DOS_PATHS # See if we have a standard version of gettimeofday(). Since actual # implementations can differ, just make sure we have the most common # one. AC_CACHE_CHECK([for standard gettimeofday], ac_cv_func_gettimeofday, [ac_cv_func_gettimeofday=no AC_RUN_IFELSE([AC_LANG_SOURCE([[#include int main () { struct timeval t; t.tv_sec = -1; t.tv_usec = -1; exit (gettimeofday (&t, 0) != 0 || t.tv_sec < 0 || t.tv_usec < 0); }]])], [ac_cv_func_gettimeofday=yes], [ac_cv_func_gettimeofday=no], [ac_cv_func_gettimeofday="no (cross-compiling)"])]) if test "$ac_cv_func_gettimeofday" = yes; then AC_DEFINE(HAVE_GETTIMEOFDAY, 1, [Define if you have a standard gettimeofday function]) fi AC_CHECK_FUNCS( memcpy memmove strchr strdup mkstemp mktemp fdopen \ bsd_signal dup2 getcwd realpath sigsetmask sigaction \ getgroups seteuid setegid setlinebuf setreuid setregid \ getrlimit setrlimit setvbuf pipe strerror strsignal \ lstat readlink atexit) AC_FUNC_SETVBUF_REVERSED # strcoll() is used by the GNU glob library AC_FUNC_STRCOLL AC_FUNC_ALLOCA AC_FUNC_FORK([]) AC_FUNC_VPRINTF AC_FUNC_CLOSEDIR_VOID AC_FUNC_GETLOADAVG # AC_FUNC_GETLOADAVG is documented to set the NLIST_STRUCT value, but it # doesn't. So, we will. if test "$ac_cv_header_nlist_h" = yes; then AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[struct nlist nl; nl.n_name = "string"; return 0;]])], [make_cv_nlist_struct=yes], [make_cv_nlist_struct=no]) if test "$make_cv_nlist_struct" = yes; then AC_DEFINE(NLIST_STRUCT, 1, [Define if struct nlist.n_name is a pointer rather than an array.]) fi fi AC_CHECK_DECLS([sys_siglist, _sys_siglist, __sys_siglist], , , [AC_INCLUDES_DEFAULT #include /* NetBSD declares sys_siglist in unistd.h. */ #if HAVE_UNISTD_H # include #endif ]) # Check out the wait reality. AC_CHECK_HEADERS(sys/wait.h) AC_CHECK_FUNCS(waitpid wait3) AC_MSG_CHECKING(for union wait) AC_CACHE_VAL(make_cv_union_wait, [dnl AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include #include ]], [[union wait status; int pid; pid = wait (&status); #ifdef WEXITSTATUS /* Some POSIXoid systems have both the new-style macros and the old union wait type, and they do not work together. If union wait conflicts with WEXITSTATUS et al, we don't want to use it at all. */ if (WEXITSTATUS (status) != 0) pid = -1; #ifdef WTERMSIG /* If we have WEXITSTATUS and WTERMSIG, just use them on ints. */ -- blow chunks here -- #endif #endif #ifdef HAVE_WAITPID /* Make sure union wait works with waitpid. */ pid = waitpid (-1, &status, 0); #endif ]])], [make_cv_union_wait=yes], [make_cv_union_wait=no])]) if test "$make_cv_union_wait" = yes; then AC_DEFINE(HAVE_UNION_WAIT, 1, [Define this if you have the \`union wait' type in .]) fi AC_MSG_RESULT($make_cv_union_wait) # If we're building on Windows/DOS/OS/2, add some support for DOS drive specs. if test "$PATH_SEPARATOR" = ';'; then AC_DEFINE(HAVE_DOS_PATHS, 1, [Define this if your system requires backslashes or drive specs in pathnames.]) fi # See if the user wants to use pmake's "customs" distributed build capability AC_SUBST(REMOTE) REMOTE=stub use_customs=false AC_ARG_WITH(customs, AC_HELP_STRING([--with-customs=DIR], [enable remote jobs via Customs--see README.customs]), [case $withval in n|no) : ;; *) make_cppflags="$CPPFLAGS" case $withval in y|ye|yes) : ;; *) CPPFLAGS="$CPPFLAGS -I$with_customs/include/customs" make_ldflags="$LDFLAGS -L$with_customs/lib" ;; esac CF_NETLIBS AC_CHECK_HEADER(customs.h, [use_customs=true REMOTE=cstms LIBS="$LIBS -lcustoms" LDFLAGS="$make_ldflags"], [with_customs=no CPPFLAGS="$make_cppflags" make_badcust=yes]) ;; esac]) # Tell automake about this, so it can include the right .c files. AM_CONDITIONAL(USE_CUSTOMS, test "$use_customs" = true) # See if the user asked to handle case insensitive file systems. AH_TEMPLATE(HAVE_CASE_INSENSITIVE_FS, [Use case insensitive file names]) AC_ARG_ENABLE(case-insensitive-file-system, AC_HELP_STRING([--enable-case-insensitive-file-system], [enable case insensitive file system support]), case_insensitive_fs="yes" AC_DEFINE(HAVE_CASE_INSENSITIVE_FS), case_insensitive_fs="no") # See if we can handle the job server feature, and if the user wants it. AC_ARG_ENABLE(job-server, AC_HELP_STRING([--disable-job-server], [disallow recursive make communication during -jN]), [make_cv_job_server="$enableval" user_job_server="$enableval"], [make_cv_job_server="yes"]) has_wait_nohang=yes case "$ac_cv_func_waitpid/$ac_cv_func_wait3" in no/no) has_wait_nohang=no ;; esac AC_CACHE_CHECK(for SA_RESTART, make_cv_sa_restart, [ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include ]], [[return SA_RESTART;]])], [make_cv_sa_restart=yes], [make_cv_sa_restart=no])]) if test "$make_cv_sa_restart" != no; then AC_DEFINE(HAVE_SA_RESTART, 1, [Define if defines the SA_RESTART constant.]) fi # enable make_cv_sa_restart for OS/2 so that the jobserver will be enabled, # but do it after HAVE_SA_RESTART has been defined. case "$host_os" in os2*) make_cv_sa_restart=yes ;; esac case "$ac_cv_func_pipe/$ac_cv_func_sigaction/$make_cv_sa_restart/$has_wait_nohang/$make_cv_job_server" in yes/yes/yes/yes/yes) AC_DEFINE(MAKE_JOBSERVER, 1, [Define this to enable job server support in GNU make.]);; esac # if we have both lstat() and readlink() then we can support symlink # timechecks. case "$ac_cv_func_lstat/$ac_cv_func_readlink" in yes/yes) AC_DEFINE(MAKE_SYMLINKS, 1, [Define this to enable symbolic link timestamp checking.]);; esac # Find the SCCS commands, so we can include them in our default rules. AC_CACHE_CHECK(for location of SCCS get command, make_cv_path_sccs_get, [ if test -f /usr/sccs/get; then make_cv_path_sccs_get=/usr/sccs/get else make_cv_path_sccs_get=get fi]) AC_DEFINE_UNQUOTED(SCCS_GET, ["$make_cv_path_sccs_get"], [Define to the name of the SCCS 'get' command.]) ac_clean_files="$ac_clean_files s.conftest conftoast" # Remove these later. if ( /usr/sccs/admin -n s.conftest || admin -n s.conftest ) >/dev/null 2>&1 && test -f s.conftest; then # We successfully created an SCCS file. AC_CACHE_CHECK(if SCCS get command understands -G, make_cv_sys_get_minus_G, [ if $make_cv_path_sccs_get -Gconftoast s.conftest >/dev/null 2>&1 && test -f conftoast; then make_cv_sys_get_minus_G=yes else make_cv_sys_get_minus_G=no fi]) case "$make_cv_sys_get_minus_G" in yes) AC_DEFINE(SCCS_GET_MINUS_G, 1, [Define this if the SCCS 'get' command understands the '-G' option.]);; esac fi rm -f s.conftest conftoast # Check the system to see if it provides GNU glob. If not, use our # local version. AC_MSG_CHECKING(if system libc has GNU glob) AC_CACHE_VAL(make_cv_sys_gnu_glob, [ AC_EGREP_CPP(gnu glob,[ #include #include #include #define GLOB_INTERFACE_VERSION 1 #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 # include # if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION gnu glob # endif #endif ], [AC_MSG_RESULT(yes) make_cv_sys_gnu_glob=yes], [AC_MSG_RESULT([no; using local copy]) AC_SUBST(GLOBINC) GLOBINC='-I$(srcdir)/glob' AC_SUBST(GLOBLIB) GLOBLIB=glob/libglob.a make_cv_sys_gnu_glob=no])]) # Tell automake about this, so it can build the right .c files. AM_CONDITIONAL(USE_LOCAL_GLOB, test "$make_cv_sys_gnu_glob" = no) # Let the makefile know what our build host is AC_DEFINE_UNQUOTED(MAKE_HOST,"$host",[Build host information.]) MAKE_HOST="$host" AC_SUBST(MAKE_HOST) w32_target_env=no AM_CONDITIONAL([WINDOWSENV], false) case "$host" in *-*-mingw32) AM_CONDITIONAL(WINDOWSENV, true) w32_target_env=yes AC_DEFINE([WINDOWS32], [1], [Use platform specific coding]) AC_DEFINE([HAVE_DOS_PATHS], [1], [Use platform specific coding]) ;; esac # Include the Maintainer's Makefile section, if it's here. MAINT_MAKEFILE=/dev/null if test -r "$srcdir/maintMakefile"; then MAINT_MAKEFILE="$srcdir/maintMakefile" fi AC_SUBST_FILE(MAINT_MAKEFILE) # Allow building with dmalloc AM_WITH_DMALLOC # Forcibly disable SET_MAKE. If it's set it breaks things like the test # scripts, etc. SET_MAKE= # Sanity check and inform the user of what we found case "$make_badcust" in yes) echo echo "WARNING: --with-customs specified but no customs.h could be found;" echo " disabling Customs support." echo ;; esac case "$with_customs" in ""|n|no|y|ye|yes) ;; *) if test -f "$with_customs/lib/libcustoms.a"; then : else echo echo "WARNING: '$with_customs/lib' does not appear to contain the" echo " Customs library. You must build and install Customs" echo " before compiling GNU make." echo fi ;; esac case "$has_wait_nohang" in no) echo echo "WARNING: Your system has neither waitpid() nor wait3()." echo " Without one of these, signal handling is unreliable." echo " You should be aware that running GNU make with -j" echo " could result in erratic behavior." echo ;; esac case "$make_cv_job_server/$user_job_server" in no/yes) echo echo "WARNING: Make job server requires a POSIX-ish system that" echo " supports the pipe(), sigaction(), and either" echo " waitpid() or wait3() functions. Your system doesn't" echo " appear to provide one or more of those." echo " Disabling job server support." echo ;; esac # Specify what files are to be created. AC_CONFIG_FILES(Makefile glob/Makefile po/Makefile.in config/Makefile w32/Makefile) # OK, do it! AC_OUTPUT # We only generate the build.sh if we have a build.sh.in; we won't have # one before we've created a distribution. if test -f "$srcdir/build.sh.in"; then ./config.status --file build.sh chmod +x build.sh fi dnl Local Variables: dnl comment-start: "dnl " dnl comment-end: "" dnl comment-start-skip: "\\bdnl\\b\\s *" dnl compile-command: "make configure config.h.in" dnl End: make-dfsg-3.81.orig/debug.h0000644000175000017500000000277410416553102015762 0ustar srivastasrivasta/* Debugging macros and interface. Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #define DB_NONE (0x000) #define DB_BASIC (0x001) #define DB_VERBOSE (0x002) #define DB_JOBS (0x004) #define DB_IMPLICIT (0x008) #define DB_MAKEFILES (0x100) #define DB_ALL (0xfff) extern int db_level; #define ISDB(_l) ((_l)&db_level) #define DBS(_l,_x) do{ if(ISDB(_l)) {print_spaces (depth); \ printf _x; fflush (stdout);} }while(0) #define DBF(_l,_x) do{ if(ISDB(_l)) {print_spaces (depth); \ printf (_x, file->name); \ fflush (stdout);} }while(0) #define DB(_l,_x) do{ if(ISDB(_l)) {printf _x; fflush (stdout);} }while(0) make-dfsg-3.81.orig/default.c0000644000175000017500000003730210416553102016306 0ustar srivastasrivasta/* Data base of default implicit rules for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "variable.h" #include "rule.h" #include "dep.h" #include "job.h" #include "commands.h" /* Define GCC_IS_NATIVE if gcc is the native development environment on your system (gcc/bison/flex vs cc/yacc/lex). */ #if defined(__MSDOS__) || defined(__EMX__) # define GCC_IS_NATIVE #endif /* This is the default list of suffixes for suffix rules. `.s' must come last, so that a `.o' file will be made from a `.c' or `.p' or ... file rather than from a .s file. */ static char default_suffixes[] #ifdef VMS = ".exe .olb .ln .obj .c .cxx .cc .pas .p .for .f .r .y .l .mar \ .s .ss .i .ii .mod .sym .def .h .info .dvi .tex .texinfo .texi .txinfo \ .w .ch .cweb .web .com .sh .elc .el"; #elif defined(__EMX__) = ".out .a .ln .o .c .cc .C .cpp .p .f .F .r .y .l .s .S \ .mod .sym .def .h .info .dvi .tex .texinfo .texi .txinfo \ .w .ch .web .sh .elc .el .obj .exe .dll .lib"; #else = ".out .a .ln .o .c .cc .C .cpp .p .f .F .r .y .l .s .S \ .mod .sym .def .h .info .dvi .tex .texinfo .texi .txinfo \ .w .ch .web .sh .elc .el"; #endif static struct pspec default_pattern_rules[] = { { "(%)", "%", "$(AR) $(ARFLAGS) $@ $<" }, /* The X.out rules are only in BSD's default set because BSD Make has no null-suffix rules, so `foo.out' and `foo' are the same thing. */ #ifdef VMS { "%.exe", "%", "copy $< $@" }, #else { "%.out", "%", "@rm -f $@ \n cp $< $@" }, #endif /* Syntax is "ctangle foo.w foo.ch foo.c". */ { "%.c", "%.w %.ch", "$(CTANGLE) $^ $@" }, { "%.tex", "%.w %.ch", "$(CWEAVE) $^ $@" }, { 0, 0, 0 } }; static struct pspec default_terminal_rules[] = { #ifdef VMS /* RCS. */ { "%", "%$$5lv", /* Multinet style */ "if f$$search($@) .nes. \"\" then +$(CHECKOUT,v)" }, { "%", "[.$$rcs]%$$5lv", /* Multinet style */ "if f$$search($@) .nes. \"\" then +$(CHECKOUT,v)" }, { "%", "%_v", /* Normal style */ "if f$$search($@) .nes. \"\" then +$(CHECKOUT,v)" }, { "%", "[.rcs]%_v", /* Normal style */ "if f$$search($@) .nes. \"\" then +$(CHECKOUT,v)" }, /* SCCS. */ /* ain't no SCCS on vms */ #else /* RCS. */ { "%", "%,v", "$(CHECKOUT,v)" }, { "%", "RCS/%,v", "$(CHECKOUT,v)" }, { "%", "RCS/%", "$(CHECKOUT,v)" }, /* SCCS. */ { "%", "s.%", "$(GET) $(GFLAGS) $(SCCS_OUTPUT_OPTION) $<" }, { "%", "SCCS/s.%", "$(GET) $(GFLAGS) $(SCCS_OUTPUT_OPTION) $<" }, #endif /* !VMS */ { 0, 0, 0 } }; static char *default_suffix_rules[] = { #ifdef VMS ".obj.exe", "$(LINK.obj) $^ $(LOADLIBES) $(LDLIBS) $(CRT0) /exe=$@", ".mar.exe", "$(COMPILE.mar) $^ \n $(LINK.obj) $(subst .mar,.obj,$^) $(LOADLIBES) $(LDLIBS) $(CRT0) /exe=$@", ".s.exe", "$(COMPILE.s) $^ \n $(LINK.obj) $(subst .s,.obj,$^) $(LOADLIBES) $(LDLIBS) $(CRT0) /exe=$@", ".c.exe", "$(COMPILE.c) $^ \n $(LINK.obj) $(subst .c,.obj,$^) $(LOADLIBES) $(LDLIBS) $(CRT0) /exe=$@", ".cc.exe", #ifdef GCC_IS_NATIVE "$(COMPILE.cc) $^ \n $(LINK.obj) $(CXXSTARTUP),sys$$disk:[]$(subst .cc,.obj,$^) $(LOADLIBES) $(LXLIBS) $(LDLIBS) $(CXXRT0) /exe=$@", #else "$(COMPILE.cc) $^ \n $(CXXLINK.obj) $(subst .cc,.obj,$^) $(LOADLIBES) $(LXLIBS) $(LDLIBS) $(CXXRT0) /exe=$@", ".cxx.exe", "$(COMPILE.cxx) $^ \n $(CXXLINK.obj) $(subst .cxx,.obj,$^) $(LOADLIBES) $(LXLIBS) $(LDLIBS) $(CXXRT0) /exe=$@", #endif ".for.exe", "$(COMPILE.for) $^ \n $(LINK.obj) $(subst .for,.obj,$^) $(LOADLIBES) $(LDLIBS) /exe=$@", ".pas.exe", "$(COMPILE.pas) $^ \n $(LINK.obj) $(subst .pas,.obj,$^) $(LOADLIBES) $(LDLIBS) /exe=$@", ".com", "copy $< >$@", ".mar.obj", "$(COMPILE.mar) /obj=$@ $<", ".s.obj", "$(COMPILE.s) /obj=$@ $<", ".ss.obj", "$(COMPILE.s) /obj=$@ $<", ".c.i", "$(COMPILE.c)/prep /list=$@ $<", ".c.s", "$(COMPILE.c)/noobj/machine /list=$@ $<", ".i.s", "$(COMPILE.c)/noprep/noobj/machine /list=$@ $<", ".c.obj", "$(COMPILE.c) /obj=$@ $<", ".cc.ii", "$(COMPILE.cc)/prep /list=$@ $<", ".cc.ss", "$(COMPILE.cc)/noobj/machine /list=$@ $<", ".ii.ss", "$(COMPILE.cc)/noprep/noobj/machine /list=$@ $<", ".cc.obj", "$(COMPILE.cc) /obj=$@ $<", ".cxx.obj", "$(COMPILE.cxx) /obj=$@ $<", ".for.obj", "$(COMPILE.for) /obj=$@ $<", ".pas.obj", "$(COMPILE.pas) /obj=$@ $<", ".y.c", "$(YACC.y) $< \n rename y_tab.c $@", ".l.c", "$(LEX.l) $< \n rename lexyy.c $@", ".texinfo.info", "$(MAKEINFO) $<", ".tex.dvi", "$(TEX) $<", #else /* ! VMS */ ".o", "$(LINK.o) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".s", "$(LINK.s) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".S", "$(LINK.S) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".c", "$(LINK.c) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".cc", "$(LINK.cc) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".C", "$(LINK.C) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".cpp", "$(LINK.cpp) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".f", "$(LINK.f) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".p", "$(LINK.p) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".F", "$(LINK.F) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".r", "$(LINK.r) $^ $(LOADLIBES) $(LDLIBS) -o $@", ".mod", "$(COMPILE.mod) -o $@ -e $@ $^", ".def.sym", "$(COMPILE.def) -o $@ $<", ".sh", "cat $< >$@ \n chmod a+x $@", ".s.o", "$(COMPILE.s) -o $@ $<", ".S.o", "$(COMPILE.S) -o $@ $<", ".c.o", "$(COMPILE.c) $(OUTPUT_OPTION) $<", ".cc.o", "$(COMPILE.cc) $(OUTPUT_OPTION) $<", ".C.o", "$(COMPILE.C) $(OUTPUT_OPTION) $<", ".cpp.o", "$(COMPILE.cpp) $(OUTPUT_OPTION) $<", ".f.o", "$(COMPILE.f) $(OUTPUT_OPTION) $<", ".p.o", "$(COMPILE.p) $(OUTPUT_OPTION) $<", ".F.o", "$(COMPILE.F) $(OUTPUT_OPTION) $<", ".r.o", "$(COMPILE.r) $(OUTPUT_OPTION) $<", ".mod.o", "$(COMPILE.mod) -o $@ $<", ".c.ln", "$(LINT.c) -C$* $<", ".y.ln", #ifndef __MSDOS__ "$(YACC.y) $< \n $(LINT.c) -C$* y.tab.c \n $(RM) y.tab.c", #else "$(YACC.y) $< \n $(LINT.c) -C$* y_tab.c \n $(RM) y_tab.c", #endif ".l.ln", "@$(RM) $*.c\n $(LEX.l) $< > $*.c\n$(LINT.c) -i $*.c -o $@\n $(RM) $*.c", ".y.c", #ifndef __MSDOS__ "$(YACC.y) $< \n mv -f y.tab.c $@", #else "$(YACC.y) $< \n mv -f y_tab.c $@", #endif ".l.c", "@$(RM) $@ \n $(LEX.l) $< > $@", ".F.f", "$(PREPROCESS.F) $(OUTPUT_OPTION) $<", ".r.f", "$(PREPROCESS.r) $(OUTPUT_OPTION) $<", /* This might actually make lex.yy.c if there's no %R% directive in $*.l, but in that case why were you trying to make $*.r anyway? */ ".l.r", "$(LEX.l) $< > $@ \n mv -f lex.yy.r $@", ".S.s", "$(PREPROCESS.S) $< > $@", ".texinfo.info", "$(MAKEINFO) $(MAKEINFO_FLAGS) $< -o $@", ".texi.info", "$(MAKEINFO) $(MAKEINFO_FLAGS) $< -o $@", ".txinfo.info", "$(MAKEINFO) $(MAKEINFO_FLAGS) $< -o $@", ".tex.dvi", "$(TEX) $<", ".texinfo.dvi", "$(TEXI2DVI) $(TEXI2DVI_FLAGS) $<", ".texi.dvi", "$(TEXI2DVI) $(TEXI2DVI_FLAGS) $<", ".txinfo.dvi", "$(TEXI2DVI) $(TEXI2DVI_FLAGS) $<", ".w.c", "$(CTANGLE) $< - $@", /* The `-' says there is no `.ch' file. */ ".web.p", "$(TANGLE) $<", ".w.tex", "$(CWEAVE) $< - $@", /* The `-' says there is no `.ch' file. */ ".web.tex", "$(WEAVE) $<", #endif /* !VMS */ 0, 0, }; static char *default_variables[] = { #ifdef VMS #ifdef __ALPHA "ARCH", "ALPHA", #endif #ifdef __ia64 "ARCH", "IA64", #endif #ifdef __VAX "ARCH", "VAX", #endif "AR", "library/obj", "ARFLAGS", "/replace", "AS", "macro", "MACRO", "macro", #ifdef GCC_IS_NATIVE "CC", "gcc", #else "CC", "cc", #endif "CD", "builtin_cd", "MAKE", "make", "ECHO", "write sys$$output \"", #ifdef GCC_IS_NATIVE "C++", "gcc/plus", "CXX", "gcc/plus", #else "C++", "cxx", "CXX", "cxx", "CXXLD", "cxxlink", #endif "CO", "co", "CPP", "$(CC) /preprocess_only", "FC", "fortran", /* System V uses these, so explicit rules using them should work. However, there is no way to make implicit rules use them and FC. */ "F77", "$(FC)", "F77FLAGS", "$(FFLAGS)", "LD", "link", "LEX", "lex", "PC", "pascal", "YACC", "bison/yacc", "YFLAGS", "/Define/Verbose", "BISON", "bison", "MAKEINFO", "makeinfo", "TEX", "tex", "TEXINDEX", "texindex", "RM", "delete/nolog", "CSTARTUP", "", #ifdef GCC_IS_NATIVE "CRT0", ",sys$$library:vaxcrtl.olb/lib,gnu_cc_library:crt0.obj", "CXXSTARTUP", "gnu_cc_library:crtbegin.obj", "CXXRT0", ",sys$$library:vaxcrtl.olb/lib,gnu_cc_library:crtend.obj,gnu_cc_library:gxx_main.obj", "LXLIBS", ",gnu_cc_library:libstdcxx.olb/lib,gnu_cc_library:libgccplus.olb/lib", "LDLIBS", ",gnu_cc_library:libgcc.olb/lib", #else "CRT0", "", "CXXSTARTUP", "", "CXXRT0", "", "LXLIBS", "", "LDLIBS", "", #endif "LINK.obj", "$(LD) $(LDFLAGS)", #ifndef GCC_IS_NATIVE "CXXLINK.obj", "$(CXXLD) $(LDFLAGS)", "COMPILE.cxx", "$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", #endif "COMPILE.c", "$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", "COMPILE.cc", "$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", "YACC.y", "$(YACC) $(YFLAGS)", "LEX.l", "$(LEX) $(LFLAGS)", "COMPILE.for", "$(FC) $(FFLAGS) $(TARGET_ARCH)", "COMPILE.pas", "$(PC) $(PFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", "COMPILE.mar", "$(MACRO) $(MACROFLAGS)", "COMPILE.s", "$(AS) $(ASFLAGS) $(TARGET_MACH)", "LINT.c", "$(LINT) $(LINTFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", "MV", "rename/new_version", "CP", "copy", #else /* !VMS */ "AR", "ar", "ARFLAGS", "rv", "AS", "as", #ifdef GCC_IS_NATIVE "CC", "gcc", # ifdef __MSDOS__ "CXX", "gpp", /* g++ is an invalid name on MSDOS */ # else "CXX", "gcc", # endif /* __MSDOS__ */ #else "CC", "cc", "CXX", "g++", #endif /* This expands to $(CO) $(COFLAGS) $< $@ if $@ does not exist, and to the empty string if $@ does exist. */ "CHECKOUT,v", "+$(if $(wildcard $@),,$(CO) $(COFLAGS) $< $@)", "CO", "co", "COFLAGS", "", "CPP", "$(CC) -E", #ifdef CRAY "CF77PPFLAGS", "-P", "CF77PP", "/lib/cpp", "CFT", "cft77", "CF", "cf77", "FC", "$(CF)", #else /* Not CRAY. */ #ifdef _IBMR2 "FC", "xlf", #else #ifdef __convex__ "FC", "fc", #else "FC", "f77", #endif /* __convex__ */ #endif /* _IBMR2 */ /* System V uses these, so explicit rules using them should work. However, there is no way to make implicit rules use them and FC. */ "F77", "$(FC)", "F77FLAGS", "$(FFLAGS)", #endif /* Cray. */ "GET", SCCS_GET, "LD", "ld", #ifdef GCC_IS_NATIVE "LEX", "flex", #else "LEX", "lex", #endif "LINT", "lint", "M2C", "m2c", #ifdef pyr "PC", "pascal", #else #ifdef CRAY "PC", "PASCAL", "SEGLDR", "segldr", #else "PC", "pc", #endif /* CRAY. */ #endif /* pyr. */ #ifdef GCC_IS_NATIVE "YACC", "bison -y", #else "YACC", "yacc", /* Or "bison -y" */ #endif "MAKEINFO", "makeinfo", "TEX", "tex", "TEXI2DVI", "texi2dvi", "WEAVE", "weave", "CWEAVE", "cweave", "TANGLE", "tangle", "CTANGLE", "ctangle", "RM", "rm -f", "LINK.o", "$(CC) $(LDFLAGS) $(TARGET_ARCH)", "COMPILE.c", "$(CC) $(CFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c", "LINK.c", "$(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "COMPILE.cc", "$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c", "COMPILE.C", "$(COMPILE.cc)", "COMPILE.cpp", "$(COMPILE.cc)", "LINK.cc", "$(CXX) $(CXXFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "LINK.C", "$(LINK.cc)", "LINK.cpp", "$(LINK.cc)", "YACC.y", "$(YACC) $(YFLAGS)", "LEX.l", "$(LEX) $(LFLAGS) -t", "COMPILE.f", "$(FC) $(FFLAGS) $(TARGET_ARCH) -c", "LINK.f", "$(FC) $(FFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "COMPILE.F", "$(FC) $(FFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c", "LINK.F", "$(FC) $(FFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "COMPILE.r", "$(FC) $(FFLAGS) $(RFLAGS) $(TARGET_ARCH) -c", "LINK.r", "$(FC) $(FFLAGS) $(RFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "COMPILE.def", "$(M2C) $(M2FLAGS) $(DEFFLAGS) $(TARGET_ARCH)", "COMPILE.mod", "$(M2C) $(M2FLAGS) $(MODFLAGS) $(TARGET_ARCH)", "COMPILE.p", "$(PC) $(PFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -c", "LINK.p", "$(PC) $(PFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_ARCH)", "LINK.s", "$(CC) $(ASFLAGS) $(LDFLAGS) $(TARGET_MACH)", "COMPILE.s", "$(AS) $(ASFLAGS) $(TARGET_MACH)", "LINK.S", "$(CC) $(ASFLAGS) $(CPPFLAGS) $(LDFLAGS) $(TARGET_MACH)", "COMPILE.S", "$(CC) $(ASFLAGS) $(CPPFLAGS) $(TARGET_MACH) -c", "PREPROCESS.S", "$(CC) -E $(CPPFLAGS)", "PREPROCESS.F", "$(FC) $(FFLAGS) $(CPPFLAGS) $(TARGET_ARCH) -F", "PREPROCESS.r", "$(FC) $(FFLAGS) $(RFLAGS) $(TARGET_ARCH) -F", "LINT.c", "$(LINT) $(LINTFLAGS) $(CPPFLAGS) $(TARGET_ARCH)", #ifndef NO_MINUS_C_MINUS_O "OUTPUT_OPTION", "-o $@", #endif #ifdef SCCS_GET_MINUS_G "SCCS_OUTPUT_OPTION", "-G$@", #endif #ifdef _AMIGA ".LIBPATTERNS", "%.lib", #else #ifdef __MSDOS__ ".LIBPATTERNS", "lib%.a $(DJDIR)/lib/lib%.a", #else ".LIBPATTERNS", "lib%.so lib%.a", #endif #endif #endif /* !VMS */ 0, 0 }; /* Set up the default .SUFFIXES list. */ void set_default_suffixes (void) { suffix_file = enter_file (".SUFFIXES"); if (no_builtin_rules_flag) (void) define_variable ("SUFFIXES", 8, "", o_default, 0); else { char *p = default_suffixes; suffix_file->deps = (struct dep *) multi_glob (parse_file_seq (&p, '\0', sizeof (struct dep), 1), sizeof (struct dep)); (void) define_variable ("SUFFIXES", 8, default_suffixes, o_default, 0); } } /* Enter the default suffix rules as file rules. This used to be done in install_default_implicit_rules, but that loses because we want the suffix rules installed before reading makefiles, and thee pattern rules installed after. */ void install_default_suffix_rules (void) { register char **s; if (no_builtin_rules_flag) return; for (s = default_suffix_rules; *s != 0; s += 2) { register struct file *f = enter_file (s[0]); /* Don't clobber cmds given in a makefile if there were any. */ if (f->cmds == 0) { f->cmds = (struct commands *) xmalloc (sizeof (struct commands)); f->cmds->fileinfo.filenm = 0; f->cmds->commands = s[1]; f->cmds->command_lines = 0; } } } /* Install the default pattern rules. */ void install_default_implicit_rules (void) { register struct pspec *p; if (no_builtin_rules_flag) return; for (p = default_pattern_rules; p->target != 0; ++p) install_pattern_rule (p, 0); for (p = default_terminal_rules; p->target != 0; ++p) install_pattern_rule (p, 1); } void define_default_variables (void) { register char **s; if (no_builtin_variables_flag) return; for (s = default_variables; *s != 0; s += 2) (void) define_variable (s[0], strlen (s[0]), s[1], o_default, 1); } make-dfsg-3.81.orig/dep.h0000644000175000017500000000611510416553102015435 0ustar srivastasrivasta/* Definitions of dependency data structures for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Flag bits for the second argument to `read_makefile'. These flags are saved in the `changed' field of each `struct dep' in the chain returned by `read_all_makefiles'. */ #define RM_NO_DEFAULT_GOAL (1 << 0) /* Do not set default goal. */ #define RM_INCLUDED (1 << 1) /* Search makefile search path. */ #define RM_DONTCARE (1 << 2) /* No error if it doesn't exist. */ #define RM_NO_TILDE (1 << 3) /* Don't expand ~ in file name. */ #define RM_NOFLAG 0 /* Structure representing one dependency of a file. Each struct file's `deps' points to a chain of these, chained through the `next'. `stem' is the stem for this dep line of static pattern rule or NULL. Note that the first two words of this match a struct nameseq. */ struct dep { struct dep *next; char *name; char *stem; struct file *file; unsigned int changed : 8; unsigned int ignore_mtime : 1; unsigned int staticpattern : 1; unsigned int need_2nd_expansion : 1; }; /* Structure used in chains of names, for parsing and globbing. */ struct nameseq { struct nameseq *next; char *name; }; extern struct nameseq *multi_glob PARAMS ((struct nameseq *chain, unsigned int size)); #ifdef VMS extern struct nameseq *parse_file_seq (); #else extern struct nameseq *parse_file_seq PARAMS ((char **stringp, int stopchar, unsigned int size, int strip)); #endif extern char *tilde_expand PARAMS ((char *name)); #ifndef NO_ARCHIVES extern struct nameseq *ar_glob PARAMS ((char *arname, char *member_pattern, unsigned int size)); #endif #ifndef iAPX286 #define dep_name(d) ((d)->name == 0 ? (d)->file->name : (d)->name) #else /* Buggy compiler can't hack this. */ extern char *dep_name (); #endif extern struct dep *alloc_dep PARAMS ((void)); extern void free_dep PARAMS ((struct dep *d)); extern struct dep *copy_dep_chain PARAMS ((const struct dep *d)); extern void free_dep_chain PARAMS ((struct dep *d)); extern void free_ns_chain PARAMS ((struct nameseq *n)); extern struct dep *read_all_makefiles PARAMS ((char **makefiles)); extern int eval_buffer PARAMS ((char *buffer)); extern int update_goal_chain PARAMS ((struct dep *goals)); extern void uniquize_deps PARAMS ((struct dep *)); make-dfsg-3.81.orig/dir.c0000644000175000017500000007422410416553102015444 0ustar srivastasrivasta/* Directory hashing for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "hash.h" #ifdef HAVE_DIRENT_H # include # define NAMLEN(dirent) strlen((dirent)->d_name) # ifdef VMS extern char *vmsify PARAMS ((char *name, int type)); # endif #else # define dirent direct # define NAMLEN(dirent) (dirent)->d_namlen # ifdef HAVE_SYS_NDIR_H # include # endif # ifdef HAVE_SYS_DIR_H # include # endif # ifdef HAVE_NDIR_H # include # endif # ifdef HAVE_VMSDIR_H # include "vmsdir.h" # endif /* HAVE_VMSDIR_H */ #endif /* In GNU systems, defines this macro for us. */ #ifdef _D_NAMLEN # undef NAMLEN # define NAMLEN(d) _D_NAMLEN(d) #endif #if (defined (POSIX) || defined (VMS) || defined (WINDOWS32)) && !defined (__GNU_LIBRARY__) /* Posix does not require that the d_ino field be present, and some systems do not provide it. */ # define REAL_DIR_ENTRY(dp) 1 # define FAKE_DIR_ENTRY(dp) #else # define REAL_DIR_ENTRY(dp) (dp->d_ino != 0) # define FAKE_DIR_ENTRY(dp) (dp->d_ino = 1) #endif /* POSIX */ #ifdef __MSDOS__ #include #include /* If it's MSDOS that doesn't have _USE_LFN, disable LFN support. */ #ifndef _USE_LFN #define _USE_LFN 0 #endif static char * dosify (char *filename) { static char dos_filename[14]; char *df; int i; if (filename == 0 || _USE_LFN) return filename; /* FIXME: what about filenames which violate 8+3 constraints, like "config.h.in", or ".emacs"? */ if (strpbrk (filename, "\"*+,;<=>?[\\]|") != 0) return filename; df = dos_filename; /* First, transform the name part. */ for (i = 0; *filename != '\0' && i < 8 && *filename != '.'; ++i) *df++ = tolower ((unsigned char)*filename++); /* Now skip to the next dot. */ while (*filename != '\0' && *filename != '.') ++filename; if (*filename != '\0') { *df++ = *filename++; for (i = 0; *filename != '\0' && i < 3 && *filename != '.'; ++i) *df++ = tolower ((unsigned char)*filename++); } /* Look for more dots. */ while (*filename != '\0' && *filename != '.') ++filename; if (*filename == '.') return filename; *df = 0; return dos_filename; } #endif /* __MSDOS__ */ #ifdef WINDOWS32 #include "pathstuff.h" #endif #ifdef _AMIGA #include #endif #ifdef HAVE_CASE_INSENSITIVE_FS static char * downcase (char *filename) { static PATH_VAR (new_filename); char *df; int i; if (filename == 0) return 0; df = new_filename; /* First, transform the name part. */ for (i = 0; *filename != '\0'; ++i) { *df++ = tolower ((unsigned char)*filename); ++filename; } *df = 0; return new_filename; } #endif /* HAVE_CASE_INSENSITIVE_FS */ #ifdef VMS static int vms_hash (char *name) { int h = 0; int g; while (*name) { unsigned char uc = *name; #ifdef HAVE_CASE_INSENSITIVE_FS h = (h << 4) + (isupper (uc) ? tolower (uc) : uc); #else h = (h << 4) + uc; #endif name++; g = h & 0xf0000000; if (g) { h = h ^ (g >> 24); h = h ^ g; } } return h; } /* fake stat entry for a directory */ static int vmsstat_dir (char *name, struct stat *st) { char *s; int h; DIR *dir; dir = opendir (name); if (dir == 0) return -1; closedir (dir); s = strchr (name, ':'); /* find device */ if (s) { *s++ = 0; st->st_dev = (char *)vms_hash (name); h = vms_hash (s); *(s-1) = ':'; } else { st->st_dev = 0; s = name; h = vms_hash (s); } st->st_ino[0] = h & 0xff; st->st_ino[1] = h & 0xff00; st->st_ino[2] = h >> 16; return 0; } #endif /* VMS */ /* Hash table of directories. */ #ifndef DIRECTORY_BUCKETS #define DIRECTORY_BUCKETS 199 #endif struct directory_contents { dev_t dev; /* Device and inode numbers of this dir. */ #ifdef WINDOWS32 /* * Inode means nothing on WINDOWS32. Even file key information is * unreliable because it is random per file open and undefined * for remote filesystems. The most unique attribute I can * come up with is the fully qualified name of the directory. Beware * though, this is also unreliable. I'm open to suggestion on a better * way to emulate inode. */ char *path_key; int ctime; int mtime; /* controls check for stale directory cache */ int fs_flags; /* FS_FAT, FS_NTFS, ... */ #define FS_FAT 0x1 #define FS_NTFS 0x2 #define FS_UNKNOWN 0x4 #else #ifdef VMS ino_t ino[3]; #else ino_t ino; #endif #endif /* WINDOWS32 */ struct hash_table dirfiles; /* Files in this directory. */ DIR *dirstream; /* Stream reading this directory. */ }; static unsigned long directory_contents_hash_1 (const void *key_0) { struct directory_contents const *key = (struct directory_contents const *) key_0; unsigned long hash; #ifdef WINDOWS32 hash = 0; ISTRING_HASH_1 (key->path_key, hash); hash ^= ((unsigned int) key->dev << 4) ^ (unsigned int) key->ctime; #else # ifdef VMS hash = (((unsigned int) key->dev << 4) ^ ((unsigned int) key->ino[0] + (unsigned int) key->ino[1] + (unsigned int) key->ino[2])); # else hash = ((unsigned int) key->dev << 4) ^ (unsigned int) key->ino; # endif #endif /* WINDOWS32 */ return hash; } static unsigned long directory_contents_hash_2 (const void *key_0) { struct directory_contents const *key = (struct directory_contents const *) key_0; unsigned long hash; #ifdef WINDOWS32 hash = 0; ISTRING_HASH_2 (key->path_key, hash); hash ^= ((unsigned int) key->dev << 4) ^ (unsigned int) ~key->ctime; #else # ifdef VMS hash = (((unsigned int) key->dev << 4) ^ ~((unsigned int) key->ino[0] + (unsigned int) key->ino[1] + (unsigned int) key->ino[2])); # else hash = ((unsigned int) key->dev << 4) ^ (unsigned int) ~key->ino; # endif #endif /* WINDOWS32 */ return hash; } /* Sometimes it's OK to use subtraction to get this value: result = X - Y; But, if we're not sure of the type of X and Y they may be too large for an int (on a 64-bit system for example). So, use ?: instead. See Savannah bug #15534. NOTE! This macro has side-effects! */ #define MAKECMP(_x,_y) ((_x)<(_y)?-1:((_x)==(_y)?0:1)) static int directory_contents_hash_cmp (const void *xv, const void *yv) { struct directory_contents const *x = (struct directory_contents const *) xv; struct directory_contents const *y = (struct directory_contents const *) yv; int result; #ifdef WINDOWS32 ISTRING_COMPARE (x->path_key, y->path_key, result); if (result) return result; result = MAKECMP(x->ctime, y->ctime); if (result) return result; #else # ifdef VMS result = MAKECMP(x->ino[0], y->ino[0]); if (result) return result; result = MAKECMP(x->ino[1], y->ino[1]); if (result) return result; result = MAKECMP(x->ino[2], y->ino[2]); if (result) return result; # else result = MAKECMP(x->ino, y->ino); if (result) return result; # endif #endif /* WINDOWS32 */ return MAKECMP(x->dev, y->dev); } /* Table of directory contents hashed by device and inode number. */ static struct hash_table directory_contents; struct directory { char *name; /* Name of the directory. */ /* The directory's contents. This data may be shared by several entries in the hash table, which refer to the same directory (identified uniquely by `dev' and `ino') under different names. */ struct directory_contents *contents; }; static unsigned long directory_hash_1 (const void *key) { return_ISTRING_HASH_1 (((struct directory const *) key)->name); } static unsigned long directory_hash_2 (const void *key) { return_ISTRING_HASH_2 (((struct directory const *) key)->name); } static int directory_hash_cmp (const void *x, const void *y) { return_ISTRING_COMPARE (((struct directory const *) x)->name, ((struct directory const *) y)->name); } /* Table of directories hashed by name. */ static struct hash_table directories; /* Never have more than this many directories open at once. */ #define MAX_OPEN_DIRECTORIES 10 static unsigned int open_directories = 0; /* Hash table of files in each directory. */ struct dirfile { char *name; /* Name of the file. */ short length; short impossible; /* This file is impossible. */ }; static unsigned long dirfile_hash_1 (const void *key) { return_ISTRING_HASH_1 (((struct dirfile const *) key)->name); } static unsigned long dirfile_hash_2 (const void *key) { return_ISTRING_HASH_2 (((struct dirfile const *) key)->name); } static int dirfile_hash_cmp (const void *xv, const void *yv) { struct dirfile const *x = ((struct dirfile const *) xv); struct dirfile const *y = ((struct dirfile const *) yv); int result = x->length - y->length; if (result) return result; return_ISTRING_COMPARE (x->name, y->name); } #ifndef DIRFILE_BUCKETS #define DIRFILE_BUCKETS 107 #endif static int dir_contents_file_exists_p PARAMS ((struct directory_contents *dir, char *filename)); static struct directory *find_directory PARAMS ((char *name)); /* Find the directory named NAME and return its `struct directory'. */ static struct directory * find_directory (char *name) { register char *p; register struct directory *dir; register struct directory **dir_slot; struct directory dir_key; int r; #ifdef WINDOWS32 char* w32_path; char fs_label[BUFSIZ]; char fs_type[BUFSIZ]; unsigned long fs_serno; unsigned long fs_flags; unsigned long fs_len; #endif #ifdef VMS if ((*name == '.') && (*(name+1) == 0)) name = "[]"; else name = vmsify (name,1); #endif dir_key.name = name; dir_slot = (struct directory **) hash_find_slot (&directories, &dir_key); dir = *dir_slot; if (HASH_VACANT (dir)) { struct stat st; /* The directory was not found. Create a new entry for it. */ p = name + strlen (name); dir = (struct directory *) xmalloc (sizeof (struct directory)); dir->name = savestring (name, p - name); hash_insert_at (&directories, dir, dir_slot); /* The directory is not in the name hash table. Find its device and inode numbers, and look it up by them. */ #ifdef WINDOWS32 /* Remove any trailing '\'. Windows32 stat fails even on valid directories if they end in '\'. */ if (p[-1] == '\\') p[-1] = '\0'; #endif #ifdef VMS r = vmsstat_dir (name, &st); #else EINTRLOOP (r, stat (name, &st)); #endif #ifdef WINDOWS32 /* Put back the trailing '\'. If we don't, we're permanently truncating the value! */ if (p[-1] == '\0') p[-1] = '\\'; #endif if (r < 0) { /* Couldn't stat the directory. Mark this by setting the `contents' member to a nil pointer. */ dir->contents = 0; } else { /* Search the contents hash table; device and inode are the key. */ struct directory_contents *dc; struct directory_contents **dc_slot; struct directory_contents dc_key; dc_key.dev = st.st_dev; #ifdef WINDOWS32 dc_key.path_key = w32_path = w32ify (name, 1); dc_key.ctime = st.st_ctime; #else # ifdef VMS dc_key.ino[0] = st.st_ino[0]; dc_key.ino[1] = st.st_ino[1]; dc_key.ino[2] = st.st_ino[2]; # else dc_key.ino = st.st_ino; # endif #endif dc_slot = (struct directory_contents **) hash_find_slot (&directory_contents, &dc_key); dc = *dc_slot; if (HASH_VACANT (dc)) { /* Nope; this really is a directory we haven't seen before. */ dc = (struct directory_contents *) xmalloc (sizeof (struct directory_contents)); /* Enter it in the contents hash table. */ dc->dev = st.st_dev; #ifdef WINDOWS32 dc->path_key = xstrdup (w32_path); dc->ctime = st.st_ctime; dc->mtime = st.st_mtime; /* * NTFS is the only WINDOWS32 filesystem that bumps mtime * on a directory when files are added/deleted from * a directory. */ w32_path[3] = '\0'; if (GetVolumeInformation(w32_path, fs_label, sizeof (fs_label), &fs_serno, &fs_len, &fs_flags, fs_type, sizeof (fs_type)) == FALSE) dc->fs_flags = FS_UNKNOWN; else if (!strcmp(fs_type, "FAT")) dc->fs_flags = FS_FAT; else if (!strcmp(fs_type, "NTFS")) dc->fs_flags = FS_NTFS; else dc->fs_flags = FS_UNKNOWN; #else # ifdef VMS dc->ino[0] = st.st_ino[0]; dc->ino[1] = st.st_ino[1]; dc->ino[2] = st.st_ino[2]; # else dc->ino = st.st_ino; # endif #endif /* WINDOWS32 */ hash_insert_at (&directory_contents, dc, dc_slot); ENULLLOOP (dc->dirstream, opendir (name)); if (dc->dirstream == 0) /* Couldn't open the directory. Mark this by setting the `files' member to a nil pointer. */ dc->dirfiles.ht_vec = 0; else { hash_init (&dc->dirfiles, DIRFILE_BUCKETS, dirfile_hash_1, dirfile_hash_2, dirfile_hash_cmp); /* Keep track of how many directories are open. */ ++open_directories; if (open_directories == MAX_OPEN_DIRECTORIES) /* We have too many directories open already. Read the entire directory and then close it. */ (void) dir_contents_file_exists_p (dc, (char *) 0); } } /* Point the name-hashed entry for DIR at its contents data. */ dir->contents = dc; } } return dir; } /* Return 1 if the name FILENAME is entered in DIR's hash table. FILENAME must contain no slashes. */ static int dir_contents_file_exists_p (struct directory_contents *dir, char *filename) { unsigned int hash; struct dirfile *df; struct dirent *d; #ifdef WINDOWS32 struct stat st; int rehash = 0; #endif if (dir == 0 || dir->dirfiles.ht_vec == 0) { /* The directory could not be stat'd or opened. */ return 0; } #ifdef __MSDOS__ filename = dosify (filename); #endif #ifdef HAVE_CASE_INSENSITIVE_FS filename = downcase (filename); #endif #ifdef __EMX__ if (filename != 0) _fnlwr (filename); /* lower case for FAT drives */ #endif #ifdef VMS filename = vmsify (filename,0); #endif hash = 0; if (filename != 0) { struct dirfile dirfile_key; if (*filename == '\0') { /* Checking if the directory exists. */ return 1; } dirfile_key.name = filename; dirfile_key.length = strlen (filename); df = (struct dirfile *) hash_find_item (&dir->dirfiles, &dirfile_key); if (df) { return !df->impossible; } } /* The file was not found in the hashed list. Try to read the directory further. */ if (dir->dirstream == 0) { #ifdef WINDOWS32 /* * Check to see if directory has changed since last read. FAT * filesystems force a rehash always as mtime does not change * on directories (ugh!). */ if (dir->path_key) { if ((dir->fs_flags & FS_FAT) != 0) { dir->mtime = time ((time_t *) 0); rehash = 1; } else if (stat(dir->path_key, &st) == 0 && st.st_mtime > dir->mtime) { /* reset date stamp to show most recent re-process. */ dir->mtime = st.st_mtime; rehash = 1; } /* If it has been already read in, all done. */ if (!rehash) return 0; /* make sure directory can still be opened; if not return. */ dir->dirstream = opendir(dir->path_key); if (!dir->dirstream) return 0; } else #endif /* The directory has been all read in. */ return 0; } while (1) { /* Enter the file in the hash table. */ unsigned int len; struct dirfile dirfile_key; struct dirfile **dirfile_slot; ENULLLOOP (d, readdir (dir->dirstream)); if (d == 0) break; #if defined(VMS) && defined(HAVE_DIRENT_H) /* In VMS we get file versions too, which have to be stripped off */ { char *p = strrchr (d->d_name, ';'); if (p) *p = '\0'; } #endif if (!REAL_DIR_ENTRY (d)) continue; len = NAMLEN (d); dirfile_key.name = d->d_name; dirfile_key.length = len; dirfile_slot = (struct dirfile **) hash_find_slot (&dir->dirfiles, &dirfile_key); #ifdef WINDOWS32 /* * If re-reading a directory, don't cache files that have * already been discovered. */ if (! rehash || HASH_VACANT (*dirfile_slot)) #endif { df = (struct dirfile *) xmalloc (sizeof (struct dirfile)); df->name = savestring (d->d_name, len); df->length = len; df->impossible = 0; hash_insert_at (&dir->dirfiles, df, dirfile_slot); } /* Check if the name matches the one we're searching for. */ if (filename != 0 && strieq (d->d_name, filename)) { return 1; } } /* If the directory has been completely read in, close the stream and reset the pointer to nil. */ if (d == 0) { --open_directories; closedir (dir->dirstream); dir->dirstream = 0; } return 0; } /* Return 1 if the name FILENAME in directory DIRNAME is entered in the dir hash table. FILENAME must contain no slashes. */ int dir_file_exists_p (char *dirname, char *filename) { return dir_contents_file_exists_p (find_directory (dirname)->contents, filename); } /* Return 1 if the file named NAME exists. */ int file_exists_p (char *name) { char *dirend; char *dirname; char *slash; #ifndef NO_ARCHIVES if (ar_name (name)) return ar_member_date (name) != (time_t) -1; #endif #ifdef VMS dirend = strrchr (name, ']'); if (dirend == 0) dirend = strrchr (name, ':'); if (dirend == (char *)0) return dir_file_exists_p ("[]", name); #else /* !VMS */ dirend = strrchr (name, '/'); #ifdef HAVE_DOS_PATHS /* Forward and backslashes might be mixed. We need the rightmost one. */ { char *bslash = strrchr(name, '\\'); if (!dirend || bslash > dirend) dirend = bslash; /* The case of "d:file". */ if (!dirend && name[0] && name[1] == ':') dirend = name + 1; } #endif /* HAVE_DOS_PATHS */ if (dirend == 0) #ifndef _AMIGA return dir_file_exists_p (".", name); #else /* !VMS && !AMIGA */ return dir_file_exists_p ("", name); #endif /* AMIGA */ #endif /* VMS */ slash = dirend; if (dirend == name) dirname = "/"; else { #ifdef HAVE_DOS_PATHS /* d:/ and d: are *very* different... */ if (dirend < name + 3 && name[1] == ':' && (*dirend == '/' || *dirend == '\\' || *dirend == ':')) dirend++; #endif dirname = (char *) alloca (dirend - name + 1); bcopy (name, dirname, dirend - name); dirname[dirend - name] = '\0'; } return dir_file_exists_p (dirname, slash + 1); } /* Mark FILENAME as `impossible' for `file_impossible_p'. This means an attempt has been made to search for FILENAME as an intermediate file, and it has failed. */ void file_impossible (char *filename) { char *dirend; register char *p = filename; register struct directory *dir; register struct dirfile *new; #ifdef VMS dirend = strrchr (p, ']'); if (dirend == 0) dirend = strrchr (p, ':'); dirend++; if (dirend == (char *)1) dir = find_directory ("[]"); #else dirend = strrchr (p, '/'); # ifdef HAVE_DOS_PATHS /* Forward and backslashes might be mixed. We need the rightmost one. */ { char *bslash = strrchr(p, '\\'); if (!dirend || bslash > dirend) dirend = bslash; /* The case of "d:file". */ if (!dirend && p[0] && p[1] == ':') dirend = p + 1; } # endif /* HAVE_DOS_PATHS */ if (dirend == 0) # ifdef _AMIGA dir = find_directory (""); # else /* !VMS && !AMIGA */ dir = find_directory ("."); # endif /* AMIGA */ #endif /* VMS */ else { char *dirname; char *slash = dirend; if (dirend == p) dirname = "/"; else { #ifdef HAVE_DOS_PATHS /* d:/ and d: are *very* different... */ if (dirend < p + 3 && p[1] == ':' && (*dirend == '/' || *dirend == '\\' || *dirend == ':')) dirend++; #endif dirname = (char *) alloca (dirend - p + 1); bcopy (p, dirname, dirend - p); dirname[dirend - p] = '\0'; } dir = find_directory (dirname); filename = p = slash + 1; } if (dir->contents == 0) { /* The directory could not be stat'd. We allocate a contents structure for it, but leave it out of the contents hash table. */ dir->contents = (struct directory_contents *) xmalloc (sizeof (struct directory_contents)); bzero ((char *) dir->contents, sizeof (struct directory_contents)); } if (dir->contents->dirfiles.ht_vec == 0) { hash_init (&dir->contents->dirfiles, DIRFILE_BUCKETS, dirfile_hash_1, dirfile_hash_2, dirfile_hash_cmp); } /* Make a new entry and put it in the table. */ new = (struct dirfile *) xmalloc (sizeof (struct dirfile)); new->name = xstrdup (filename); new->length = strlen (filename); new->impossible = 1; hash_insert (&dir->contents->dirfiles, new); } /* Return nonzero if FILENAME has been marked impossible. */ int file_impossible_p (char *filename) { char *dirend; register char *p = filename; register struct directory_contents *dir; register struct dirfile *dirfile; struct dirfile dirfile_key; #ifdef VMS dirend = strrchr (filename, ']'); if (dirend == 0) dir = find_directory ("[]")->contents; #else dirend = strrchr (filename, '/'); #ifdef HAVE_DOS_PATHS /* Forward and backslashes might be mixed. We need the rightmost one. */ { char *bslash = strrchr(filename, '\\'); if (!dirend || bslash > dirend) dirend = bslash; /* The case of "d:file". */ if (!dirend && filename[0] && filename[1] == ':') dirend = filename + 1; } #endif /* HAVE_DOS_PATHS */ if (dirend == 0) #ifdef _AMIGA dir = find_directory ("")->contents; #else /* !VMS && !AMIGA */ dir = find_directory (".")->contents; #endif /* AMIGA */ #endif /* VMS */ else { char *dirname; char *slash = dirend; if (dirend == filename) dirname = "/"; else { #ifdef HAVE_DOS_PATHS /* d:/ and d: are *very* different... */ if (dirend < filename + 3 && filename[1] == ':' && (*dirend == '/' || *dirend == '\\' || *dirend == ':')) dirend++; #endif dirname = (char *) alloca (dirend - filename + 1); bcopy (p, dirname, dirend - p); dirname[dirend - p] = '\0'; } dir = find_directory (dirname)->contents; p = filename = slash + 1; } if (dir == 0 || dir->dirfiles.ht_vec == 0) /* There are no files entered for this directory. */ return 0; #ifdef __MSDOS__ filename = dosify (p); #endif #ifdef HAVE_CASE_INSENSITIVE_FS filename = downcase (p); #endif #ifdef VMS filename = vmsify (p, 1); #endif dirfile_key.name = filename; dirfile_key.length = strlen (filename); dirfile = (struct dirfile *) hash_find_item (&dir->dirfiles, &dirfile_key); if (dirfile) return dirfile->impossible; return 0; } /* Return the already allocated name in the directory hash table that matches DIR. */ char * dir_name (char *dir) { return find_directory (dir)->name; } /* Print the data base of directories. */ void print_dir_data_base (void) { register unsigned int files; register unsigned int impossible; register struct directory **dir_slot; register struct directory **dir_end; puts (_("\n# Directories\n")); files = impossible = 0; dir_slot = (struct directory **) directories.ht_vec; dir_end = dir_slot + directories.ht_size; for ( ; dir_slot < dir_end; dir_slot++) { register struct directory *dir = *dir_slot; if (! HASH_VACANT (dir)) { if (dir->contents == 0) printf (_("# %s: could not be stat'd.\n"), dir->name); else if (dir->contents->dirfiles.ht_vec == 0) { #ifdef WINDOWS32 printf (_("# %s (key %s, mtime %d): could not be opened.\n"), dir->name, dir->contents->path_key,dir->contents->mtime); #else /* WINDOWS32 */ #ifdef VMS printf (_("# %s (device %d, inode [%d,%d,%d]): could not be opened.\n"), dir->name, dir->contents->dev, dir->contents->ino[0], dir->contents->ino[1], dir->contents->ino[2]); #else printf (_("# %s (device %ld, inode %ld): could not be opened.\n"), dir->name, (long int) dir->contents->dev, (long int) dir->contents->ino); #endif #endif /* WINDOWS32 */ } else { register unsigned int f = 0; register unsigned int im = 0; register struct dirfile **files_slot; register struct dirfile **files_end; files_slot = (struct dirfile **) dir->contents->dirfiles.ht_vec; files_end = files_slot + dir->contents->dirfiles.ht_size; for ( ; files_slot < files_end; files_slot++) { register struct dirfile *df = *files_slot; if (! HASH_VACANT (df)) { if (df->impossible) ++im; else ++f; } } #ifdef WINDOWS32 printf (_("# %s (key %s, mtime %d): "), dir->name, dir->contents->path_key, dir->contents->mtime); #else /* WINDOWS32 */ #ifdef VMS printf (_("# %s (device %d, inode [%d,%d,%d]): "), dir->name, dir->contents->dev, dir->contents->ino[0], dir->contents->ino[1], dir->contents->ino[2]); #else printf (_("# %s (device %ld, inode %ld): "), dir->name, (long)dir->contents->dev, (long)dir->contents->ino); #endif #endif /* WINDOWS32 */ if (f == 0) fputs (_("No"), stdout); else printf ("%u", f); fputs (_(" files, "), stdout); if (im == 0) fputs (_("no"), stdout); else printf ("%u", im); fputs (_(" impossibilities"), stdout); if (dir->contents->dirstream == 0) puts ("."); else puts (_(" so far.")); files += f; impossible += im; } } } fputs ("\n# ", stdout); if (files == 0) fputs (_("No"), stdout); else printf ("%u", files); fputs (_(" files, "), stdout); if (impossible == 0) fputs (_("no"), stdout); else printf ("%u", impossible); printf (_(" impossibilities in %lu directories.\n"), directories.ht_fill); } /* Hooks for globbing. */ #include /* Structure describing state of iterating through a directory hash table. */ struct dirstream { struct directory_contents *contents; /* The directory being read. */ struct dirfile **dirfile_slot; /* Current slot in table. */ }; /* Forward declarations. */ static __ptr_t open_dirstream PARAMS ((const char *)); static struct dirent *read_dirstream PARAMS ((__ptr_t)); static __ptr_t open_dirstream (const char *directory) { struct dirstream *new; struct directory *dir = find_directory ((char *)directory); if (dir->contents == 0 || dir->contents->dirfiles.ht_vec == 0) /* DIR->contents is nil if the directory could not be stat'd. DIR->contents->dirfiles is nil if it could not be opened. */ return 0; /* Read all the contents of the directory now. There is no benefit in being lazy, since glob will want to see every file anyway. */ (void) dir_contents_file_exists_p (dir->contents, (char *) 0); new = (struct dirstream *) xmalloc (sizeof (struct dirstream)); new->contents = dir->contents; new->dirfile_slot = (struct dirfile **) new->contents->dirfiles.ht_vec; return (__ptr_t) new; } static struct dirent * read_dirstream (__ptr_t stream) { struct dirstream *const ds = (struct dirstream *) stream; struct directory_contents *dc = ds->contents; struct dirfile **dirfile_end = (struct dirfile **) dc->dirfiles.ht_vec + dc->dirfiles.ht_size; static char *buf; static unsigned int bufsz; while (ds->dirfile_slot < dirfile_end) { register struct dirfile *df = *ds->dirfile_slot++; if (! HASH_VACANT (df) && !df->impossible) { /* The glob interface wants a `struct dirent', so mock one up. */ struct dirent *d; unsigned int len = df->length + 1; if (sizeof *d - sizeof d->d_name + len > bufsz) { if (buf != 0) free (buf); bufsz *= 2; if (sizeof *d - sizeof d->d_name + len > bufsz) bufsz = sizeof *d - sizeof d->d_name + len; buf = xmalloc (bufsz); } d = (struct dirent *) buf; #ifdef __MINGW32__ # if __MINGW32_MAJOR_VERSION < 3 || (__MINGW32_MAJOR_VERSION == 3 && \ __MINGW32_MINOR_VERSION == 0) d->d_name = xmalloc(len); # endif #endif FAKE_DIR_ENTRY (d); #ifdef _DIRENT_HAVE_D_NAMLEN d->d_namlen = len - 1; #endif #ifdef _DIRENT_HAVE_D_TYPE d->d_type = DT_UNKNOWN; #endif memcpy (d->d_name, df->name, len); return d; } } return 0; } static void ansi_free (void *p) { if (p) free(p); } /* On 64 bit ReliantUNIX (5.44 and above) in LFS mode, stat() is actually a * macro for stat64(). If stat is a macro, make a local wrapper function to * invoke it. */ #ifndef stat # ifndef VMS extern int stat PARAMS ((const char *path, struct stat *sbuf)); # endif # define local_stat stat #else static int local_stat (const char *path, struct stat *buf) { int e; EINTRLOOP (e, stat (path, buf)); return e; } #endif void dir_setup_glob (glob_t *gl) { /* Bogus sunos4 compiler complains (!) about & before functions. */ gl->gl_opendir = open_dirstream; gl->gl_readdir = read_dirstream; gl->gl_closedir = ansi_free; gl->gl_stat = local_stat; /* We don't bother setting gl_lstat, since glob never calls it. The slot is only there for compatibility with 4.4 BSD. */ } void hash_init_directories (void) { hash_init (&directories, DIRECTORY_BUCKETS, directory_hash_1, directory_hash_2, directory_hash_cmp); hash_init (&directory_contents, DIRECTORY_BUCKETS, directory_contents_hash_1, directory_contents_hash_2, directory_contents_hash_cmp); } make-dfsg-3.81.orig/dosbuild.bat0000644000175000017500000000636110416553102017014 0ustar srivastasrivasta@echo off rem Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free rem Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under the rem terms of the GNU General Public License as published by the Free Software rem Foundation; either version 2, or (at your option) any later version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY rem WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR rem A PARTICULAR PURPOSE. See the GNU General Public License for more details. rem You should have received a copy of the GNU General Public License along with rem GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. echo Building Make for MSDOS rem Echo ON so they will see what is going on. @echo on gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g commands.c -o commands.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g job.c -o job.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g dir.c -o dir.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g file.c -o file.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g misc.c -o misc.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g main.c -o main.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -DINCLUDEDIR=\"c:/djgpp/include\" -O2 -g read.c -o read.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -DLIBDIR=\"c:/djgpp/lib\" -O2 -g remake.c -o remake.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g rule.c -o rule.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g implicit.c -o implicit.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g default.c -o default.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g variable.c -o variable.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g expand.c -o expand.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g function.c -o function.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g vpath.c -o vpath.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g hash.c -o hash.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g strcache.c -o strcache.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g version.c -o version.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g ar.c -o ar.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g arscan.c -o arscan.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g signame.c -o signame.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g remote-stub.c -o remote-stub.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g getopt.c -o getopt.o gcc -c -I. -I./glob -DHAVE_CONFIG_H -O2 -g getopt1.c -o getopt1.o @cd glob @if exist libglob.a del libglob.a gcc -I. -c -DHAVE_CONFIG_H -I.. -O2 -g glob.c -o glob.o gcc -I. -c -DHAVE_CONFIG_H -I.. -O2 -g fnmatch.c -o fnmatch.o ar rv libglob.a glob.o fnmatch.o @echo off cd .. echo commands.o > respf.$$$ for %%f in (job dir file misc main read remake rule implicit default variable) do echo %%f.o >> respf.$$$ for %%f in (expand function vpath hash strcache version ar arscan signame remote-stub getopt getopt1) do echo %%f.o >> respf.$$$ echo glob/libglob.a >> respf.$$$ @echo Linking... @echo on gcc -o make.new @respf.$$$ @if exist make.exe echo Make.exe is now built! @if not exist make.exe echo Make.exe build failed... @if exist make.exe del respf.$$$ make-dfsg-3.81.orig/expand.c0000644000175000017500000004017410416553102016142 0ustar srivastasrivasta/* Variable expansion functions for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include "filedef.h" #include "job.h" #include "commands.h" #include "variable.h" #include "rule.h" /* Initially, any errors reported when expanding strings will be reported against the file where the error appears. */ const struct floc **expanding_var = &reading_file; /* The next two describe the variable output buffer. This buffer is used to hold the variable-expansion of a line of the makefile. It is made bigger with realloc whenever it is too small. variable_buffer_length is the size currently allocated. variable_buffer is the address of the buffer. For efficiency, it's guaranteed that the buffer will always have VARIABLE_BUFFER_ZONE extra bytes allocated. This allows you to add a few extra chars without having to call a function. Note you should never use these bytes unless you're _sure_ you have room (you know when the buffer length was last checked. */ #define VARIABLE_BUFFER_ZONE 5 static unsigned int variable_buffer_length; char *variable_buffer; /* Subroutine of variable_expand and friends: The text to add is LENGTH chars starting at STRING to the variable_buffer. The text is added to the buffer at PTR, and the updated pointer into the buffer is returned as the value. Thus, the value returned by each call to variable_buffer_output should be the first argument to the following call. */ char * variable_buffer_output (char *ptr, char *string, unsigned int length) { register unsigned int newlen = length + (ptr - variable_buffer); if ((newlen + VARIABLE_BUFFER_ZONE) > variable_buffer_length) { unsigned int offset = ptr - variable_buffer; variable_buffer_length = (newlen + 100 > 2 * variable_buffer_length ? newlen + 100 : 2 * variable_buffer_length); variable_buffer = (char *) xrealloc (variable_buffer, variable_buffer_length); ptr = variable_buffer + offset; } bcopy (string, ptr, length); return ptr + length; } /* Return a pointer to the beginning of the variable buffer. */ static char * initialize_variable_output (void) { /* If we don't have a variable output buffer yet, get one. */ if (variable_buffer == 0) { variable_buffer_length = 200; variable_buffer = (char *) xmalloc (variable_buffer_length); variable_buffer[0] = '\0'; } return variable_buffer; } /* Recursively expand V. The returned string is malloc'd. */ static char *allocated_variable_append PARAMS ((const struct variable *v)); char * recursively_expand_for_file (struct variable *v, struct file *file) { char *value; const struct floc *this_var; const struct floc **saved_varp; struct variable_set_list *save = 0; int set_reading = 0; /* Don't install a new location if this location is empty. This can happen for command-line variables, builtin variables, etc. */ saved_varp = expanding_var; if (v->fileinfo.filenm) { this_var = &v->fileinfo; expanding_var = &this_var; } /* If we have no other file-reading context, use the variable's context. */ if (!reading_file) { set_reading = 1; reading_file = &v->fileinfo; } if (v->expanding) { if (!v->exp_count) /* Expanding V causes infinite recursion. Lose. */ fatal (*expanding_var, _("Recursive variable `%s' references itself (eventually)"), v->name); --v->exp_count; } if (file) { save = current_variable_set_list; current_variable_set_list = file->variables; } v->expanding = 1; if (v->append) value = allocated_variable_append (v); else value = allocated_variable_expand (v->value); v->expanding = 0; if (set_reading) reading_file = 0; if (file) current_variable_set_list = save; expanding_var = saved_varp; return value; } /* Expand a simple reference to variable NAME, which is LENGTH chars long. */ #ifdef __GNUC__ __inline #endif static char * reference_variable (char *o, char *name, unsigned int length) { register struct variable *v; char *value; v = lookup_variable (name, length); if (v == 0) warn_undefined (name, length); /* If there's no variable by that name or it has no value, stop now. */ if (v == 0 || (*v->value == '\0' && !v->append)) return o; value = (v->recursive ? recursively_expand (v) : v->value); o = variable_buffer_output (o, value, strlen (value)); if (v->recursive) free (value); return o; } /* Scan STRING for variable references and expansion-function calls. Only LENGTH bytes of STRING are actually scanned. If LENGTH is -1, scan until a null byte is found. Write the results to LINE, which must point into `variable_buffer'. If LINE is NULL, start at the beginning of the buffer. Return a pointer to LINE, or to the beginning of the buffer if LINE is NULL. */ char * variable_expand_string (char *line, char *string, long length) { register struct variable *v; register char *p, *o, *p1; char save_char = '\0'; unsigned int line_offset; if (!line) line = initialize_variable_output(); p = string; o = line; line_offset = line - variable_buffer; if (length >= 0) { save_char = string[length]; string[length] = '\0'; } while (1) { /* Copy all following uninteresting chars all at once to the variable output buffer, and skip them. Uninteresting chars end at the next $ or the end of the input. */ p1 = strchr (p, '$'); o = variable_buffer_output (o, p, p1 != 0 ? (unsigned int)(p1 - p) : strlen (p) + 1); if (p1 == 0) break; p = p1 + 1; /* Dispatch on the char that follows the $. */ switch (*p) { case '$': /* $$ seen means output one $ to the variable output buffer. */ o = variable_buffer_output (o, p, 1); break; case '(': case '{': /* $(...) or ${...} is the general case of substitution. */ { char openparen = *p; char closeparen = (openparen == '(') ? ')' : '}'; register char *beg = p + 1; int free_beg = 0; char *op, *begp; char *end, *colon; op = o; begp = p; if (handle_function (&op, &begp)) { o = op; p = begp; break; } /* Is there a variable reference inside the parens or braces? If so, expand it before expanding the entire reference. */ end = strchr (beg, closeparen); if (end == 0) /* Unterminated variable reference. */ fatal (*expanding_var, _("unterminated variable reference")); p1 = lindex (beg, end, '$'); if (p1 != 0) { /* BEG now points past the opening paren or brace. Count parens or braces until it is matched. */ int count = 0; for (p = beg; *p != '\0'; ++p) { if (*p == openparen) ++count; else if (*p == closeparen && --count < 0) break; } /* If COUNT is >= 0, there were unmatched opening parens or braces, so we go to the simple case of a variable name such as `$($(a)'. */ if (count < 0) { beg = expand_argument (beg, p); /* Expand the name. */ free_beg = 1; /* Remember to free BEG when finished. */ end = strchr (beg, '\0'); } } else /* Advance P to the end of this reference. After we are finished expanding this one, P will be incremented to continue the scan. */ p = end; /* This is not a reference to a built-in function and any variable references inside are now expanded. Is the resultant text a substitution reference? */ colon = lindex (beg, end, ':'); if (colon) { /* This looks like a substitution reference: $(FOO:A=B). */ char *subst_beg, *subst_end, *replace_beg, *replace_end; subst_beg = colon + 1; subst_end = lindex (subst_beg, end, '='); if (subst_end == 0) /* There is no = in sight. Punt on the substitution reference and treat this as a variable name containing a colon, in the code below. */ colon = 0; else { replace_beg = subst_end + 1; replace_end = end; /* Extract the variable name before the colon and look up that variable. */ v = lookup_variable (beg, colon - beg); if (v == 0) warn_undefined (beg, colon - beg); /* If the variable is not empty, perform the substitution. */ if (v != 0 && *v->value != '\0') { char *pattern, *replace, *ppercent, *rpercent; char *value = (v->recursive ? recursively_expand (v) : v->value); /* Copy the pattern and the replacement. Add in an extra % at the beginning to use in case there isn't one in the pattern. */ pattern = (char *) alloca (subst_end - subst_beg + 2); *(pattern++) = '%'; bcopy (subst_beg, pattern, subst_end - subst_beg); pattern[subst_end - subst_beg] = '\0'; replace = (char *) alloca (replace_end - replace_beg + 2); *(replace++) = '%'; bcopy (replace_beg, replace, replace_end - replace_beg); replace[replace_end - replace_beg] = '\0'; /* Look for %. Set the percent pointers properly based on whether we find one or not. */ ppercent = find_percent (pattern); if (ppercent) { ++ppercent; rpercent = 0; } else { ppercent = pattern; rpercent = replace; --pattern; --replace; } o = patsubst_expand (o, value, pattern, replace, ppercent, rpercent); if (v->recursive) free (value); } } } if (colon == 0) /* This is an ordinary variable reference. Look up the value of the variable. */ o = reference_variable (o, beg, end - beg); if (free_beg) free (beg); } break; case '\0': break; default: if (isblank ((unsigned char)p[-1])) break; /* A $ followed by a random char is a variable reference: $a is equivalent to $(a). */ o = reference_variable (o, p, 1); break; } if (*p == '\0') break; else ++p; } if (save_char) string[length] = save_char; (void)variable_buffer_output (o, "", 1); return (variable_buffer + line_offset); } /* Scan LINE for variable references and expansion-function calls. Build in `variable_buffer' the result of expanding the references and calls. Return the address of the resulting string, which is null-terminated and is valid only until the next time this function is called. */ char * variable_expand (char *line) { return variable_expand_string(NULL, line, (long)-1); } /* Expand an argument for an expansion function. The text starting at STR and ending at END is variable-expanded into a null-terminated string that is returned as the value. This is done without clobbering `variable_buffer' or the current variable-expansion that is in progress. */ char * expand_argument (const char *str, const char *end) { char *tmp; if (str == end) return xstrdup(""); if (!end || *end == '\0') return allocated_variable_expand ((char *)str); tmp = (char *) alloca (end - str + 1); bcopy (str, tmp, end - str); tmp[end - str] = '\0'; return allocated_variable_expand (tmp); } /* Expand LINE for FILE. Error messages refer to the file and line where FILE's commands were found. Expansion uses FILE's variable set list. */ char * variable_expand_for_file (char *line, struct file *file) { char *result; struct variable_set_list *save; if (file == 0) return variable_expand (line); save = current_variable_set_list; current_variable_set_list = file->variables; if (file->cmds && file->cmds->fileinfo.filenm) reading_file = &file->cmds->fileinfo; else reading_file = 0; result = variable_expand (line); current_variable_set_list = save; reading_file = 0; return result; } /* Like allocated_variable_expand, but for += target-specific variables. First recursively construct the variable value from its appended parts in any upper variable sets. Then expand the resulting value. */ static char * variable_append (const char *name, unsigned int length, const struct variable_set_list *set) { const struct variable *v; char *buf = 0; /* If there's nothing left to check, return the empty buffer. */ if (!set) return initialize_variable_output (); /* Try to find the variable in this variable set. */ v = lookup_variable_in_set (name, length, set->set); /* If there isn't one, look to see if there's one in a set above us. */ if (!v) return variable_append (name, length, set->next); /* If this variable type is append, first get any upper values. If not, initialize the buffer. */ if (v->append) buf = variable_append (name, length, set->next); else buf = initialize_variable_output (); /* Append this value to the buffer, and return it. If we already have a value, first add a space. */ if (buf > variable_buffer) buf = variable_buffer_output (buf, " ", 1); /* Either expand it or copy it, depending. */ if (! v->recursive) return variable_buffer_output (buf, v->value, strlen (v->value)); buf = variable_expand_string (buf, v->value, strlen (v->value)); return (buf + strlen (buf)); } static char * allocated_variable_append (const struct variable *v) { char *val; /* Construct the appended variable value. */ char *obuf = variable_buffer; unsigned int olen = variable_buffer_length; variable_buffer = 0; val = variable_append (v->name, strlen (v->name), current_variable_set_list); variable_buffer_output (val, "", 1); val = variable_buffer; variable_buffer = obuf; variable_buffer_length = olen; return val; } /* Like variable_expand_for_file, but the returned string is malloc'd. This function is called a lot. It wants to be efficient. */ char * allocated_variable_expand_for_file (char *line, struct file *file) { char *value; char *obuf = variable_buffer; unsigned int olen = variable_buffer_length; variable_buffer = 0; value = variable_expand_for_file (line, file); #if 0 /* Waste a little memory and save time. */ value = xrealloc (value, strlen (value)) #endif variable_buffer = obuf; variable_buffer_length = olen; return value; } /* Install a new variable_buffer context, returning the current one for safe-keeping. */ void install_variable_buffer (char **bufp, unsigned int *lenp) { *bufp = variable_buffer; *lenp = variable_buffer_length; variable_buffer = 0; initialize_variable_output (); } /* Restore a previously-saved variable_buffer setting (free the current one). */ void restore_variable_buffer (char *buf, unsigned int len) { free (variable_buffer); variable_buffer = buf; variable_buffer_length = len; } make-dfsg-3.81.orig/file.c0000644000175000017500000007073310416553102015606 0ustar srivastasrivasta/* Target file management for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include "dep.h" #include "filedef.h" #include "job.h" #include "commands.h" #include "variable.h" #include "debug.h" #include "hash.h" /* Remember whether snap_deps has been invoked: we need this to be sure we don't add new rules (via $(eval ...)) afterwards. In the future it would be nice to support this, but it means we'd need to re-run snap_deps() or at least its functionality... it might mean changing snap_deps() to be run per-file, so we can invoke it after the eval... or remembering which files in the hash have been snapped (a new boolean flag?) and having snap_deps() only work on files which have not yet been snapped. */ int snapped_deps = 0; /* Hash table of files the makefile knows how to make. */ static unsigned long file_hash_1 (const void *key) { return_ISTRING_HASH_1 (((struct file const *) key)->hname); } static unsigned long file_hash_2 (const void *key) { return_ISTRING_HASH_2 (((struct file const *) key)->hname); } static int file_hash_cmp (const void *x, const void *y) { return_ISTRING_COMPARE (((struct file const *) x)->hname, ((struct file const *) y)->hname); } #ifndef FILE_BUCKETS #define FILE_BUCKETS 1007 #endif static struct hash_table files; /* Whether or not .SECONDARY with no prerequisites was given. */ static int all_secondary = 0; /* Access the hash table of all file records. lookup_file given a name, return the struct file * for that name, or nil if there is none. enter_file similar, but create one if there is none. */ struct file * lookup_file (char *name) { register struct file *f; struct file file_key; #if defined(VMS) && !defined(WANT_CASE_SENSITIVE_TARGETS) register char *lname, *ln; #endif assert (*name != '\0'); /* This is also done in parse_file_seq, so this is redundant for names read from makefiles. It is here for names passed on the command line. */ #ifdef VMS # ifndef WANT_CASE_SENSITIVE_TARGETS if (*name != '.') { register char *n; lname = (char *) malloc (strlen (name) + 1); for (n = name, ln = lname; *n != '\0'; ++n, ++ln) *ln = isupper ((unsigned char)*n) ? tolower ((unsigned char)*n) : *n; *ln = '\0'; name = lname; } # endif while (name[0] == '[' && name[1] == ']' && name[2] != '\0') name += 2; #endif while (name[0] == '.' && name[1] == '/' && name[2] != '\0') { name += 2; while (*name == '/') /* Skip following slashes: ".//foo" is "foo", not "/foo". */ ++name; } if (*name == '\0') /* It was all slashes after a dot. */ #ifdef VMS name = "[]"; #else #ifdef _AMIGA name = ""; #else name = "./"; #endif /* AMIGA */ #endif /* VMS */ file_key.hname = name; f = (struct file *) hash_find_item (&files, &file_key); #if defined(VMS) && !defined(WANT_CASE_SENSITIVE_TARGETS) if (*name != '.') free (lname); #endif return f; } struct file * enter_file (char *name) { register struct file *f; register struct file *new; register struct file **file_slot; struct file file_key; #if defined(VMS) && !defined(WANT_CASE_SENSITIVE_TARGETS) char *lname, *ln; #endif assert (*name != '\0'); #if defined(VMS) && !defined(WANT_CASE_SENSITIVE_TARGETS) if (*name != '.') { register char *n; lname = (char *) malloc (strlen (name) + 1); for (n = name, ln = lname; *n != '\0'; ++n, ++ln) { if (isupper ((unsigned char)*n)) *ln = tolower ((unsigned char)*n); else *ln = *n; } *ln = 0; /* Creates a possible leak, old value of name is unreachable, but I currently don't know how to fix it. */ name = lname; } #endif file_key.hname = name; file_slot = (struct file **) hash_find_slot (&files, &file_key); f = *file_slot; if (! HASH_VACANT (f) && !f->double_colon) { #if defined(VMS) && !defined(WANT_CASE_SENSITIVE_TARGETS) if (*name != '.') free (lname); #endif return f; } new = (struct file *) xmalloc (sizeof (struct file)); bzero ((char *) new, sizeof (struct file)); new->name = new->hname = name; new->update_status = -1; if (HASH_VACANT (f)) { new->last = new; hash_insert_at (&files, new, file_slot); } else { /* There is already a double-colon entry for this file. */ new->double_colon = f; f->last->prev = new; f->last = new; } return new; } /* Rename FILE to NAME. This is not as simple as resetting the `name' member, since it must be put in a new hash bucket, and possibly merged with an existing file called NAME. */ void rename_file (struct file *from_file, char *to_hname) { rehash_file (from_file, to_hname); while (from_file) { from_file->name = from_file->hname; from_file = from_file->prev; } } /* Rehash FILE to NAME. This is not as simple as resetting the `hname' member, since it must be put in a new hash bucket, and possibly merged with an existing file called NAME. */ void rehash_file (struct file *from_file, char *to_hname) { struct file file_key; struct file **file_slot; struct file *to_file; struct file *deleted_file; struct file *f; file_key.hname = to_hname; if (0 == file_hash_cmp (from_file, &file_key)) return; file_key.hname = from_file->hname; while (from_file->renamed != 0) from_file = from_file->renamed; if (file_hash_cmp (from_file, &file_key)) /* hname changed unexpectedly */ abort (); deleted_file = hash_delete (&files, from_file); if (deleted_file != from_file) /* from_file isn't the one stored in files */ abort (); file_key.hname = to_hname; file_slot = (struct file **) hash_find_slot (&files, &file_key); to_file = *file_slot; from_file->hname = to_hname; for (f = from_file->double_colon; f != 0; f = f->prev) f->hname = to_hname; if (HASH_VACANT (to_file)) hash_insert_at (&files, from_file, file_slot); else { /* TO_FILE already exists under TO_HNAME. We must retain TO_FILE and merge FROM_FILE into it. */ if (from_file->cmds != 0) { if (to_file->cmds == 0) to_file->cmds = from_file->cmds; else if (from_file->cmds != to_file->cmds) { /* We have two sets of commands. We will go with the one given in the rule explicitly mentioning this name, but give a message to let the user know what's going on. */ if (to_file->cmds->fileinfo.filenm != 0) error (&from_file->cmds->fileinfo, _("Commands were specified for file `%s' at %s:%lu,"), from_file->name, to_file->cmds->fileinfo.filenm, to_file->cmds->fileinfo.lineno); else error (&from_file->cmds->fileinfo, _("Commands for file `%s' were found by implicit rule search,"), from_file->name); error (&from_file->cmds->fileinfo, _("but `%s' is now considered the same file as `%s'."), from_file->name, to_hname); error (&from_file->cmds->fileinfo, _("Commands for `%s' will be ignored in favor of those for `%s'."), to_hname, from_file->name); } } /* Merge the dependencies of the two files. */ if (to_file->deps == 0) to_file->deps = from_file->deps; else { register struct dep *deps = to_file->deps; while (deps->next != 0) deps = deps->next; deps->next = from_file->deps; } merge_variable_set_lists (&to_file->variables, from_file->variables); if (to_file->double_colon && from_file->is_target && !from_file->double_colon) fatal (NILF, _("can't rename single-colon `%s' to double-colon `%s'"), from_file->name, to_hname); if (!to_file->double_colon && from_file->double_colon) { if (to_file->is_target) fatal (NILF, _("can't rename double-colon `%s' to single-colon `%s'"), from_file->name, to_hname); else to_file->double_colon = from_file->double_colon; } if (from_file->last_mtime > to_file->last_mtime) /* %%% Kludge so -W wins on a file that gets vpathized. */ to_file->last_mtime = from_file->last_mtime; to_file->mtime_before_update = from_file->mtime_before_update; #define MERGE(field) to_file->field |= from_file->field MERGE (precious); MERGE (tried_implicit); MERGE (updating); MERGE (updated); MERGE (is_target); MERGE (cmd_target); MERGE (phony); MERGE (ignore_vpath); #undef MERGE from_file->renamed = to_file; } } /* Remove all nonprecious intermediate files. If SIG is nonzero, this was caused by a fatal signal, meaning that a different message will be printed, and the message will go to stderr rather than stdout. */ void remove_intermediates (int sig) { register struct file **file_slot; register struct file **file_end; int doneany = 0; /* If there's no way we will ever remove anything anyway, punt early. */ if (question_flag || touch_flag || all_secondary) return; if (sig && just_print_flag) return; file_slot = (struct file **) files.ht_vec; file_end = file_slot + files.ht_size; for ( ; file_slot < file_end; file_slot++) if (! HASH_VACANT (*file_slot)) { register struct file *f = *file_slot; /* Is this file eligible for automatic deletion? Yes, IFF: it's marked intermediate, it's not secondary, it wasn't given on the command-line, and it's either a -include makefile or it's not precious. */ if (f->intermediate && (f->dontcare || !f->precious) && !f->secondary && !f->cmd_target) { int status; if (f->update_status == -1) /* If nothing would have created this file yet, don't print an "rm" command for it. */ continue; if (just_print_flag) status = 0; else { status = unlink (f->name); if (status < 0 && errno == ENOENT) continue; } if (!f->dontcare) { if (sig) error (NILF, _("*** Deleting intermediate file `%s'"), f->name); else { if (! doneany) DB (DB_BASIC, (_("Removing intermediate files...\n"))); if (!silent_flag) { if (! doneany) { fputs ("rm ", stdout); doneany = 1; } else putchar (' '); fputs (f->name, stdout); fflush (stdout); } } if (status < 0) perror_with_name ("unlink: ", f->name); } } } if (doneany && !sig) { putchar ('\n'); fflush (stdout); } } struct dep * parse_prereqs (char *p) { struct dep *new = (struct dep *) multi_glob (parse_file_seq (&p, '|', sizeof (struct dep), 1), sizeof (struct dep)); if (*p) { /* Files that follow '|' are "order-only" prerequisites that satisfy the dependency by existing: their modification times are irrelevant. */ struct dep *ood; ++p; ood = (struct dep *) multi_glob (parse_file_seq (&p, '\0', sizeof (struct dep), 1), sizeof (struct dep)); if (! new) new = ood; else { struct dep *dp; for (dp = new; dp->next != NULL; dp = dp->next) ; dp->next = ood; } for (; ood != NULL; ood = ood->next) ood->ignore_mtime = 1; } return new; } /* Set the intermediate flag. */ static void set_intermediate (const void *item) { struct file *f = (struct file *) item; f->intermediate = 1; } /* Expand and parse each dependency line. */ static void expand_deps (struct file *f) { struct dep *d; struct dep *old = f->deps; char *file_stem = f->stem; unsigned int last_dep_has_cmds = f->updating; int initialized = 0; f->updating = 0; f->deps = 0; for (d = old; d != 0; d = d->next) { struct dep *new, *d1; char *p; if (! d->name) continue; /* Create the dependency list. If we're not doing 2nd expansion, then it's just the name. */ if (! d->need_2nd_expansion) p = d->name; else { /* If it's from a static pattern rule, convert the patterns into "$*" so they'll expand properly. */ if (d->staticpattern) { char *o; char *buffer = variable_expand (""); o = subst_expand (buffer, d->name, "%", "$*", 1, 2, 0); free (d->name); d->name = savestring (buffer, o - buffer); d->staticpattern = 0; /* Clear staticpattern so that we don't re-expand %s below. */ } /* We are going to do second expansion so initialize file variables for the file. Since the stem for static pattern rules comes from individual dep lines, we will temporarily set f->stem to d->stem. */ if (!initialized) { initialize_file_variables (f, 0); initialized = 1; } if (d->stem != 0) f->stem = d->stem; set_file_variables (f); p = variable_expand_for_file (d->name, f); if (d->stem != 0) f->stem = file_stem; } /* Parse the prerequisites. */ new = parse_prereqs (p); /* If this dep list was from a static pattern rule, expand the %s. We use patsubst_expand to translate the prerequisites' patterns into plain prerequisite names. */ if (new && d->staticpattern) { char *pattern = "%"; char *buffer = variable_expand (""); struct dep *dp = new, *dl = 0; while (dp != 0) { char *percent = find_percent (dp->name); if (percent) { /* We have to handle empty stems specially, because that would be equivalent to $(patsubst %,dp->name,) which will always be empty. */ if (d->stem[0] == '\0') /* This needs memmove() in ISO C. */ bcopy (percent+1, percent, strlen (percent)); else { char *o = patsubst_expand (buffer, d->stem, pattern, dp->name, pattern+1, percent+1); if (o == buffer) dp->name[0] = '\0'; else { free (dp->name); dp->name = savestring (buffer, o - buffer); } } /* If the name expanded to the empty string, ignore it. */ if (dp->name[0] == '\0') { struct dep *df = dp; if (dp == new) dp = new = new->next; else dp = dl->next = dp->next; /* @@ Are we leaking df->name here? */ df->name = 0; free_dep (df); continue; } } dl = dp; dp = dp->next; } } /* Enter them as files. */ for (d1 = new; d1 != 0; d1 = d1->next) { d1->file = lookup_file (d1->name); if (d1->file == 0) d1->file = enter_file (d1->name); else free (d1->name); d1->name = 0; d1->staticpattern = 0; d1->need_2nd_expansion = 0; } /* Add newly parsed deps to f->deps. If this is the last dependency line and this target has commands then put it in front so the last dependency line (the one with commands) ends up being the first. This is important because people expect $< to hold first prerequisite from the rule with commands. If it is not the last dependency line or the rule does not have commands then link it at the end so it appears in makefile order. */ if (new != 0) { if (d->next == 0 && last_dep_has_cmds) { struct dep **d_ptr; for (d_ptr = &new; *d_ptr; d_ptr = &(*d_ptr)->next) ; *d_ptr = f->deps; f->deps = new; } else { struct dep **d_ptr; for (d_ptr = &f->deps; *d_ptr; d_ptr = &(*d_ptr)->next) ; *d_ptr = new; } } } free_dep_chain (old); } /* For each dependency of each file, make the `struct dep' point at the appropriate `struct file' (which may have to be created). Also mark the files depended on by .PRECIOUS, .PHONY, .SILENT, and various other special targets. */ void snap_deps (void) { struct file *f; struct file *f2; struct dep *d; struct file **file_slot_0; struct file **file_slot; struct file **file_end; /* Perform second expansion and enter each dependency name as a file. */ /* Expand .SUFFIXES first; it's dependencies are used for $$* calculation. */ for (f = lookup_file (".SUFFIXES"); f != 0; f = f->prev) expand_deps (f); /* We must use hash_dump (), because within this loop we might add new files to the table, possibly causing an in-situ table expansion. */ file_slot_0 = (struct file **) hash_dump (&files, 0, 0); file_end = file_slot_0 + files.ht_fill; for (file_slot = file_slot_0; file_slot < file_end; file_slot++) for (f = *file_slot; f != 0; f = f->prev) { if (strcmp (f->name, ".SUFFIXES") != 0) expand_deps (f); } free (file_slot_0); for (f = lookup_file (".PRECIOUS"); f != 0; f = f->prev) for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->precious = 1; for (f = lookup_file (".LOW_RESOLUTION_TIME"); f != 0; f = f->prev) for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->low_resolution_time = 1; for (f = lookup_file (".PHONY"); f != 0; f = f->prev) for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) { /* Mark this file as phony nonexistent target. */ f2->phony = 1; f2->is_target = 1; f2->last_mtime = NONEXISTENT_MTIME; f2->mtime_before_update = NONEXISTENT_MTIME; } for (f = lookup_file (".INTERMEDIATE"); f != 0; f = f->prev) { /* .INTERMEDIATE with deps listed marks those deps as intermediate files. */ for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->intermediate = 1; /* .INTERMEDIATE with no deps does nothing. Marking all files as intermediates is useless since the goal targets would be deleted after they are built. */ } for (f = lookup_file (".SECONDARY"); f != 0; f = f->prev) { /* .SECONDARY with deps listed marks those deps as intermediate files in that they don't get rebuilt if not actually needed; but unlike real intermediate files, these are not deleted after make finishes. */ if (f->deps) for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->intermediate = f2->secondary = 1; /* .SECONDARY with no deps listed marks *all* files that way. */ else { all_secondary = 1; hash_map (&files, set_intermediate); } } f = lookup_file (".EXPORT_ALL_VARIABLES"); if (f != 0 && f->is_target) export_all_variables = 1; f = lookup_file (".IGNORE"); if (f != 0 && f->is_target) { if (f->deps == 0) ignore_errors_flag = 1; else for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->command_flags |= COMMANDS_NOERROR; } f = lookup_file (".SILENT"); if (f != 0 && f->is_target) { if (f->deps == 0) silent_flag = 1; else for (d = f->deps; d != 0; d = d->next) for (f2 = d->file; f2 != 0; f2 = f2->prev) f2->command_flags |= COMMANDS_SILENT; } f = lookup_file (".NOTPARALLEL"); if (f != 0 && f->is_target) not_parallel = 1; #ifndef NO_MINUS_C_MINUS_O /* If .POSIX was defined, remove OUTPUT_OPTION to comply. */ /* This needs more work: what if the user sets this in the makefile? if (posix_pedantic) define_variable (STRING_SIZE_TUPLE("OUTPUT_OPTION"), "", o_default, 1); */ #endif /* Remember that we've done this. */ snapped_deps = 1; } /* Set the `command_state' member of FILE and all its `also_make's. */ void set_command_state (struct file *file, enum cmd_state state) { struct dep *d; file->command_state = state; for (d = file->also_make; d != 0; d = d->next) d->file->command_state = state; } /* Convert an external file timestamp to internal form. */ FILE_TIMESTAMP file_timestamp_cons (const char *fname, time_t s, int ns) { int offset = ORDINARY_MTIME_MIN + (FILE_TIMESTAMP_HI_RES ? ns : 0); FILE_TIMESTAMP product = (FILE_TIMESTAMP) s << FILE_TIMESTAMP_LO_BITS; FILE_TIMESTAMP ts = product + offset; if (! (s <= FILE_TIMESTAMP_S (ORDINARY_MTIME_MAX) && product <= ts && ts <= ORDINARY_MTIME_MAX)) { char buf[FILE_TIMESTAMP_PRINT_LEN_BOUND + 1]; ts = s <= OLD_MTIME ? ORDINARY_MTIME_MIN : ORDINARY_MTIME_MAX; file_timestamp_sprintf (buf, ts); error (NILF, _("%s: Timestamp out of range; substituting %s"), fname ? fname : _("Current time"), buf); } return ts; } /* Return the current time as a file timestamp, setting *RESOLUTION to its resolution. */ FILE_TIMESTAMP file_timestamp_now (int *resolution) { int r; time_t s; int ns; /* Don't bother with high-resolution clocks if file timestamps have only one-second resolution. The code below should work, but it's not worth the hassle of debugging it on hosts where it fails. */ #if FILE_TIMESTAMP_HI_RES # if HAVE_CLOCK_GETTIME && defined CLOCK_REALTIME { struct timespec timespec; if (clock_gettime (CLOCK_REALTIME, ×pec) == 0) { r = 1; s = timespec.tv_sec; ns = timespec.tv_nsec; goto got_time; } } # endif # if HAVE_GETTIMEOFDAY { struct timeval timeval; if (gettimeofday (&timeval, 0) == 0) { r = 1000; s = timeval.tv_sec; ns = timeval.tv_usec * 1000; goto got_time; } } # endif #endif r = 1000000000; s = time ((time_t *) 0); ns = 0; #if FILE_TIMESTAMP_HI_RES got_time: #endif *resolution = r; return file_timestamp_cons (0, s, ns); } /* Place into the buffer P a printable representation of the file timestamp TS. */ void file_timestamp_sprintf (char *p, FILE_TIMESTAMP ts) { time_t t = FILE_TIMESTAMP_S (ts); struct tm *tm = localtime (&t); if (tm) sprintf (p, "%04d-%02d-%02d %02d:%02d:%02d", tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min, tm->tm_sec); else if (t < 0) sprintf (p, "%ld", (long) t); else sprintf (p, "%lu", (unsigned long) t); p += strlen (p); /* Append nanoseconds as a fraction, but remove trailing zeros. We don't know the actual timestamp resolution, since clock_getres applies only to local times, whereas this timestamp might come from a remote filesystem. So removing trailing zeros is the best guess that we can do. */ sprintf (p, ".%09d", FILE_TIMESTAMP_NS (ts)); p += strlen (p) - 1; while (*p == '0') p--; p += *p != '.'; *p = '\0'; } /* Print the data base of files. */ static void print_file (const void *item) { struct file *f = (struct file *) item; struct dep *d; struct dep *ood = 0; putchar ('\n'); if (!f->is_target) puts (_("# Not a target:")); printf ("%s:%s", f->name, f->double_colon ? ":" : ""); /* Print all normal dependencies; note any order-only deps. */ for (d = f->deps; d != 0; d = d->next) if (! d->ignore_mtime) printf (" %s", dep_name (d)); else if (! ood) ood = d; /* Print order-only deps, if we have any. */ if (ood) { printf (" | %s", dep_name (ood)); for (d = ood->next; d != 0; d = d->next) if (d->ignore_mtime) printf (" %s", dep_name (d)); } putchar ('\n'); if (f->precious) puts (_("# Precious file (prerequisite of .PRECIOUS).")); if (f->phony) puts (_("# Phony target (prerequisite of .PHONY).")); if (f->cmd_target) puts (_("# Command-line target.")); if (f->dontcare) puts (_("# A default, MAKEFILES, or -include/sinclude makefile.")); puts (f->tried_implicit ? _("# Implicit rule search has been done.") : _("# Implicit rule search has not been done.")); if (f->stem != 0) printf (_("# Implicit/static pattern stem: `%s'\n"), f->stem); if (f->intermediate) puts (_("# File is an intermediate prerequisite.")); if (f->also_make != 0) { fputs (_("# Also makes:"), stdout); for (d = f->also_make; d != 0; d = d->next) printf (" %s", dep_name (d)); putchar ('\n'); } if (f->last_mtime == UNKNOWN_MTIME) puts (_("# Modification time never checked.")); else if (f->last_mtime == NONEXISTENT_MTIME) puts (_("# File does not exist.")); else if (f->last_mtime == OLD_MTIME) puts (_("# File is very old.")); else { char buf[FILE_TIMESTAMP_PRINT_LEN_BOUND + 1]; file_timestamp_sprintf (buf, f->last_mtime); printf (_("# Last modified %s\n"), buf); } puts (f->updated ? _("# File has been updated.") : _("# File has not been updated.")); switch (f->command_state) { case cs_running: puts (_("# Commands currently running (THIS IS A BUG).")); break; case cs_deps_running: puts (_("# Dependencies commands running (THIS IS A BUG).")); break; case cs_not_started: case cs_finished: switch (f->update_status) { case -1: break; case 0: puts (_("# Successfully updated.")); break; case 1: assert (question_flag); puts (_("# Needs to be updated (-q is set).")); break; case 2: puts (_("# Failed to be updated.")); break; default: puts (_("# Invalid value in `update_status' member!")); fflush (stdout); fflush (stderr); abort (); } break; default: puts (_("# Invalid value in `command_state' member!")); fflush (stdout); fflush (stderr); abort (); } if (f->variables != 0) print_file_variables (f); if (f->cmds != 0) print_commands (f->cmds); if (f->prev) print_file ((const void *) f->prev); } void print_file_data_base (void) { puts (_("\n# Files")); hash_map (&files, print_file); fputs (_("\n# files hash-table stats:\n# "), stdout); hash_print_stats (&files, stdout); } #define EXPANSION_INCREMENT(_l) ((((_l) / 500) + 1) * 500) char * build_target_list (char *value) { static unsigned long last_targ_count = 0; if (files.ht_fill != last_targ_count) { unsigned long max = EXPANSION_INCREMENT (strlen (value)); unsigned long len; char *p; struct file **fp = (struct file **) files.ht_vec; struct file **end = &fp[files.ht_size]; /* Make sure we have at least MAX bytes in the allocated buffer. */ value = xrealloc (value, max); p = value; len = 0; for (; fp < end; ++fp) if (!HASH_VACANT (*fp) && (*fp)->is_target) { struct file *f = *fp; int l = strlen (f->name); len += l + 1; if (len > max) { unsigned long off = p - value; max += EXPANSION_INCREMENT (l + 1); value = xrealloc (value, max); p = &value[off]; } bcopy (f->name, p, l); p += l; *(p++) = ' '; } *(p-1) = '\0'; last_targ_count = files.ht_fill; } return value; } void init_hash_files (void) { hash_init (&files, 1000, file_hash_1, file_hash_2, file_hash_cmp); } /* EOF */ make-dfsg-3.81.orig/filedef.h0000644000175000017500000002204610416553102016264 0ustar srivastasrivasta/* Definition of target file data structures for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Structure that represents the info on one file that the makefile says how to make. All of these are chained together through `next'. */ #include "hash.h" struct file { char *name; char *hname; /* Hashed filename */ char *vpath; /* VPATH/vpath pathname */ struct dep *deps; /* all dependencies, including duplicates */ struct commands *cmds; /* Commands to execute for this target. */ int command_flags; /* Flags OR'd in for cmds; see commands.h. */ char *stem; /* Implicit stem, if an implicit rule has been used */ struct dep *also_make; /* Targets that are made by making this. */ FILE_TIMESTAMP last_mtime; /* File's modtime, if already known. */ FILE_TIMESTAMP mtime_before_update; /* File's modtime before any updating has been performed. */ struct file *prev; /* Previous entry for same file name; used when there are multiple double-colon entries for the same file. */ struct file *last; /* Last entry for the same file name. */ /* File that this file was renamed to. After any time that a file could be renamed, call `check_renamed' (below). */ struct file *renamed; /* List of variable sets used for this file. */ struct variable_set_list *variables; /* Pattern-specific variable reference for this target, or null if there isn't one. Also see the pat_searched flag, below. */ struct variable_set_list *pat_variables; /* Immediate dependent that caused this target to be remade, or nil if there isn't one. */ struct file *parent; /* For a double-colon entry, this is the first double-colon entry for the same file. Otherwise this is null. */ struct file *double_colon; short int update_status; /* Status of the last attempt to update, or -1 if none has been made. */ enum cmd_state /* State of the commands. */ { /* Note: It is important that cs_not_started be zero. */ cs_not_started, /* Not yet started. */ cs_deps_running, /* Dep commands running. */ cs_running, /* Commands running. */ cs_finished /* Commands finished. */ } command_state ENUM_BITFIELD (2); unsigned int precious:1; /* Non-0 means don't delete file on quit */ unsigned int low_resolution_time:1; /* Nonzero if this file's time stamp has only one-second resolution. */ unsigned int tried_implicit:1; /* Nonzero if have searched for implicit rule for making this file; don't search again. */ unsigned int updating:1; /* Nonzero while updating deps of this file */ unsigned int updated:1; /* Nonzero if this file has been remade. */ unsigned int is_target:1; /* Nonzero if file is described as target. */ unsigned int cmd_target:1; /* Nonzero if file was given on cmd line. */ unsigned int phony:1; /* Nonzero if this is a phony file i.e., a prerequisite of .PHONY. */ unsigned int intermediate:1;/* Nonzero if this is an intermediate file. */ unsigned int secondary:1; /* Nonzero means remove_intermediates should not delete it. */ unsigned int dontcare:1; /* Nonzero if no complaint is to be made if this target cannot be remade. */ unsigned int ignore_vpath:1;/* Nonzero if we threw out VPATH name. */ unsigned int pat_searched:1;/* Nonzero if we already searched for pattern-specific variables. */ unsigned int considered:1; /* equal to 'considered' if file has been considered on current scan of goal chain */ }; extern struct file *default_goal_file, *suffix_file, *default_file; extern char **default_goal_name; extern struct file *lookup_file PARAMS ((char *name)); extern struct file *enter_file PARAMS ((char *name)); extern struct dep *parse_prereqs PARAMS ((char *prereqs)); extern void remove_intermediates PARAMS ((int sig)); extern void snap_deps PARAMS ((void)); extern void rename_file PARAMS ((struct file *file, char *name)); extern void rehash_file PARAMS ((struct file *file, char *name)); extern void set_command_state PARAMS ((struct file *file, enum cmd_state state)); extern void notice_finished_file PARAMS ((struct file *file)); extern void init_hash_files PARAMS ((void)); extern char *build_target_list PARAMS ((char *old_list)); #if FILE_TIMESTAMP_HI_RES # define FILE_TIMESTAMP_STAT_MODTIME(fname, st) \ file_timestamp_cons (fname, (st).st_mtime, (st).st_mtim.ST_MTIM_NSEC) #else # define FILE_TIMESTAMP_STAT_MODTIME(fname, st) \ file_timestamp_cons (fname, (st).st_mtime, 0) #endif /* If FILE_TIMESTAMP is 64 bits (or more), use nanosecond resolution. (Multiply by 2**30 instead of by 10**9 to save time at the cost of slightly decreasing the number of available timestamps.) With 64-bit FILE_TIMESTAMP, this stops working on 2514-05-30 01:53:04 UTC, but by then uintmax_t should be larger than 64 bits. */ #define FILE_TIMESTAMPS_PER_S (FILE_TIMESTAMP_HI_RES ? 1000000000 : 1) #define FILE_TIMESTAMP_LO_BITS (FILE_TIMESTAMP_HI_RES ? 30 : 0) #define FILE_TIMESTAMP_S(ts) (((ts) - ORDINARY_MTIME_MIN) \ >> FILE_TIMESTAMP_LO_BITS) #define FILE_TIMESTAMP_NS(ts) ((int) (((ts) - ORDINARY_MTIME_MIN) \ & ((1 << FILE_TIMESTAMP_LO_BITS) - 1))) /* Upper bound on length of string "YYYY-MM-DD HH:MM:SS.NNNNNNNNN" representing a file timestamp. The upper bound is not necessarily 19, since the year might be less than -999 or greater than 9999. Subtract one for the sign bit if in case file timestamps can be negative; subtract FLOOR_LOG2_SECONDS_PER_YEAR to yield an upper bound on how many file timestamp bits might affect the year; 302 / 1000 is log10 (2) rounded up; add one for integer division truncation; add one more for a minus sign if file timestamps can be negative; add 4 to allow for any 4-digit epoch year (e.g. 1970); add 25 to allow for "-MM-DD HH:MM:SS.NNNNNNNNN". */ #define FLOOR_LOG2_SECONDS_PER_YEAR 24 #define FILE_TIMESTAMP_PRINT_LEN_BOUND \ (((sizeof (FILE_TIMESTAMP) * CHAR_BIT - 1 - FLOOR_LOG2_SECONDS_PER_YEAR) \ * 302 / 1000) \ + 1 + 1 + 4 + 25) extern FILE_TIMESTAMP file_timestamp_cons PARAMS ((char const *, time_t, int)); extern FILE_TIMESTAMP file_timestamp_now PARAMS ((int *)); extern void file_timestamp_sprintf PARAMS ((char *p, FILE_TIMESTAMP ts)); /* Return the mtime of file F (a struct file *), caching it. The value is NONEXISTENT_MTIME if the file does not exist. */ #define file_mtime(f) file_mtime_1 ((f), 1) /* Return the mtime of file F (a struct file *), caching it. Don't search using vpath for the file--if it doesn't actually exist, we don't find it. The value is NONEXISTENT_MTIME if the file does not exist. */ #define file_mtime_no_search(f) file_mtime_1 ((f), 0) extern FILE_TIMESTAMP f_mtime PARAMS ((struct file *file, int search)); #define file_mtime_1(f, v) \ ((f)->last_mtime == UNKNOWN_MTIME ? f_mtime ((f), v) : (f)->last_mtime) /* Special timestamp values. */ /* The file's timestamp is not yet known. */ #define UNKNOWN_MTIME 0 /* The file does not exist. */ #define NONEXISTENT_MTIME 1 /* The file does not exist, and we assume that it is older than any actual file. */ #define OLD_MTIME 2 /* The smallest and largest ordinary timestamps. */ #define ORDINARY_MTIME_MIN (OLD_MTIME + 1) #define ORDINARY_MTIME_MAX ((FILE_TIMESTAMP_S (NEW_MTIME) \ << FILE_TIMESTAMP_LO_BITS) \ + ORDINARY_MTIME_MIN + FILE_TIMESTAMPS_PER_S - 1) /* Modtime value to use for `infinitely new'. We used to get the current time from the system and use that whenever we wanted `new'. But that causes trouble when the machine running make and the machine holding a file have different ideas about what time it is; and can also lose for `force' targets, which need to be considered newer than anything that depends on them, even if said dependents' modtimes are in the future. */ #define NEW_MTIME INTEGER_TYPE_MAXIMUM (FILE_TIMESTAMP) #define check_renamed(file) \ while ((file)->renamed != 0) (file) = (file)->renamed /* No ; here. */ /* Have we snapped deps yet? */ extern int snapped_deps; make-dfsg-3.81.orig/function.c0000644000175000017500000016103010416553102016503 0ustar srivastasrivasta/* Builtin function expansion for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "variable.h" #include "dep.h" #include "job.h" #include "commands.h" #include "debug.h" #ifdef _AMIGA #include "amiga.h" #endif struct function_table_entry { const char *name; unsigned char len; unsigned char minimum_args; unsigned char maximum_args; char expand_args; char *(*func_ptr) PARAMS ((char *output, char **argv, const char *fname)); }; static unsigned long function_table_entry_hash_1 (const void *keyv) { struct function_table_entry const *key = (struct function_table_entry const *) keyv; return_STRING_N_HASH_1 (key->name, key->len); } static unsigned long function_table_entry_hash_2 (const void *keyv) { struct function_table_entry const *key = (struct function_table_entry const *) keyv; return_STRING_N_HASH_2 (key->name, key->len); } static int function_table_entry_hash_cmp (const void *xv, const void *yv) { struct function_table_entry const *x = (struct function_table_entry const *) xv; struct function_table_entry const *y = (struct function_table_entry const *) yv; int result = x->len - y->len; if (result) return result; return_STRING_N_COMPARE (x->name, y->name, x->len); } static struct hash_table function_table; /* Store into VARIABLE_BUFFER at O the result of scanning TEXT and replacing each occurrence of SUBST with REPLACE. TEXT is null-terminated. SLEN is the length of SUBST and RLEN is the length of REPLACE. If BY_WORD is nonzero, substitutions are done only on matches which are complete whitespace-delimited words. */ char * subst_expand (char *o, char *text, char *subst, char *replace, unsigned int slen, unsigned int rlen, int by_word) { char *t = text; char *p; if (slen == 0 && !by_word) { /* The first occurrence of "" in any string is its end. */ o = variable_buffer_output (o, t, strlen (t)); if (rlen > 0) o = variable_buffer_output (o, replace, rlen); return o; } do { if (by_word && slen == 0) /* When matching by words, the empty string should match the end of each word, rather than the end of the whole text. */ p = end_of_token (next_token (t)); else { p = strstr (t, subst); if (p == 0) { /* No more matches. Output everything left on the end. */ o = variable_buffer_output (o, t, strlen (t)); return o; } } /* Output everything before this occurrence of the string to replace. */ if (p > t) o = variable_buffer_output (o, t, p - t); /* If we're substituting only by fully matched words, or only at the ends of words, check that this case qualifies. */ if (by_word && ((p > text && !isblank ((unsigned char)p[-1])) || (p[slen] != '\0' && !isblank ((unsigned char)p[slen])))) /* Struck out. Output the rest of the string that is no longer to be replaced. */ o = variable_buffer_output (o, subst, slen); else if (rlen > 0) /* Output the replacement string. */ o = variable_buffer_output (o, replace, rlen); /* Advance T past the string to be replaced. */ { char *nt = p + slen; t = nt; } } while (*t != '\0'); return o; } /* Store into VARIABLE_BUFFER at O the result of scanning TEXT and replacing strings matching PATTERN with REPLACE. If PATTERN_PERCENT is not nil, PATTERN has already been run through find_percent, and PATTERN_PERCENT is the result. If REPLACE_PERCENT is not nil, REPLACE has already been run through find_percent, and REPLACE_PERCENT is the result. Note that we expect PATTERN_PERCENT and REPLACE_PERCENT to point to the character _AFTER_ the %, not to the % itself. */ char * patsubst_expand (char *o, char *text, char *pattern, char *replace, char *pattern_percent, char *replace_percent) { unsigned int pattern_prepercent_len, pattern_postpercent_len; unsigned int replace_prepercent_len, replace_postpercent_len; char *t; unsigned int len; int doneany = 0; /* We call find_percent on REPLACE before checking PATTERN so that REPLACE will be collapsed before we call subst_expand if PATTERN has no %. */ if (!replace_percent) { replace_percent = find_percent (replace); if (replace_percent) ++replace_percent; } /* Record the length of REPLACE before and after the % so we don't have to compute these lengths more than once. */ if (replace_percent) { replace_prepercent_len = replace_percent - replace - 1; replace_postpercent_len = strlen (replace_percent); } else { replace_prepercent_len = strlen (replace); replace_postpercent_len = 0; } if (!pattern_percent) { pattern_percent = find_percent (pattern); if (pattern_percent) ++pattern_percent; } if (!pattern_percent) /* With no % in the pattern, this is just a simple substitution. */ return subst_expand (o, text, pattern, replace, strlen (pattern), strlen (replace), 1); /* Record the length of PATTERN before and after the % so we don't have to compute it more than once. */ pattern_prepercent_len = pattern_percent - pattern - 1; pattern_postpercent_len = strlen (pattern_percent); while ((t = find_next_token (&text, &len)) != 0) { int fail = 0; /* Is it big enough to match? */ if (len < pattern_prepercent_len + pattern_postpercent_len) fail = 1; /* Does the prefix match? */ if (!fail && pattern_prepercent_len > 0 && (*t != *pattern || t[pattern_prepercent_len - 1] != pattern_percent[-2] || !strneq (t + 1, pattern + 1, pattern_prepercent_len - 1))) fail = 1; /* Does the suffix match? */ if (!fail && pattern_postpercent_len > 0 && (t[len - 1] != pattern_percent[pattern_postpercent_len - 1] || t[len - pattern_postpercent_len] != *pattern_percent || !strneq (&t[len - pattern_postpercent_len], pattern_percent, pattern_postpercent_len - 1))) fail = 1; if (fail) /* It didn't match. Output the string. */ o = variable_buffer_output (o, t, len); else { /* It matched. Output the replacement. */ /* Output the part of the replacement before the %. */ o = variable_buffer_output (o, replace, replace_prepercent_len); if (replace_percent != 0) { /* Output the part of the matched string that matched the % in the pattern. */ o = variable_buffer_output (o, t + pattern_prepercent_len, len - (pattern_prepercent_len + pattern_postpercent_len)); /* Output the part of the replacement after the %. */ o = variable_buffer_output (o, replace_percent, replace_postpercent_len); } } /* Output a space, but not if the replacement is "". */ if (fail || replace_prepercent_len > 0 || (replace_percent != 0 && len + replace_postpercent_len > 0)) { o = variable_buffer_output (o, " ", 1); doneany = 1; } } if (doneany) /* Kill the last space. */ --o; return o; } /* Look up a function by name. */ static const struct function_table_entry * lookup_function (const char *s) { const char *e = s; while (*e && ( (*e >= 'a' && *e <= 'z') || *e == '-')) e++; if (*e == '\0' || isblank ((unsigned char) *e)) { struct function_table_entry function_table_entry_key; function_table_entry_key.name = s; function_table_entry_key.len = e - s; return hash_find_item (&function_table, &function_table_entry_key); } return 0; } /* Return 1 if PATTERN matches STR, 0 if not. */ int pattern_matches (char *pattern, char *percent, char *str) { unsigned int sfxlen, strlength; if (percent == 0) { unsigned int len = strlen (pattern) + 1; char *new_chars = (char *) alloca (len); bcopy (pattern, new_chars, len); pattern = new_chars; percent = find_percent (pattern); if (percent == 0) return streq (pattern, str); } sfxlen = strlen (percent + 1); strlength = strlen (str); if (strlength < (percent - pattern) + sfxlen || !strneq (pattern, str, percent - pattern)) return 0; return !strcmp (percent + 1, str + (strlength - sfxlen)); } /* Find the next comma or ENDPAREN (counting nested STARTPAREN and ENDPARENtheses), starting at PTR before END. Return a pointer to next character. If no next argument is found, return NULL. */ static char * find_next_argument (char startparen, char endparen, const char *ptr, const char *end) { int count = 0; for (; ptr < end; ++ptr) if (*ptr == startparen) ++count; else if (*ptr == endparen) { --count; if (count < 0) return NULL; } else if (*ptr == ',' && !count) return (char *)ptr; /* We didn't find anything. */ return NULL; } /* Glob-expand LINE. The returned pointer is only good until the next call to string_glob. */ static char * string_glob (char *line) { static char *result = 0; static unsigned int length; register struct nameseq *chain; register unsigned int idx; chain = multi_glob (parse_file_seq (&line, '\0', sizeof (struct nameseq), /* We do not want parse_file_seq to strip `./'s. That would break examples like: $(patsubst ./%.c,obj/%.o,$(wildcard ./?*.c)). */ 0), sizeof (struct nameseq)); if (result == 0) { length = 100; result = (char *) xmalloc (100); } idx = 0; while (chain != 0) { register char *name = chain->name; unsigned int len = strlen (name); struct nameseq *next = chain->next; free ((char *) chain); chain = next; /* multi_glob will pass names without globbing metacharacters through as is, but we want only files that actually exist. */ if (file_exists_p (name)) { if (idx + len + 1 > length) { length += (len + 1) * 2; result = (char *) xrealloc (result, length); } bcopy (name, &result[idx], len); idx += len; result[idx++] = ' '; } free (name); } /* Kill the last space and terminate the string. */ if (idx == 0) result[0] = '\0'; else result[idx - 1] = '\0'; return result; } /* Builtin functions */ static char * func_patsubst (char *o, char **argv, const char *funcname UNUSED) { o = patsubst_expand (o, argv[2], argv[0], argv[1], (char *) 0, (char *) 0); return o; } static char * func_join (char *o, char **argv, const char *funcname UNUSED) { int doneany = 0; /* Write each word of the first argument directly followed by the corresponding word of the second argument. If the two arguments have a different number of words, the excess words are just output separated by blanks. */ register char *tp; register char *pp; char *list1_iterator = argv[0]; char *list2_iterator = argv[1]; do { unsigned int len1, len2; tp = find_next_token (&list1_iterator, &len1); if (tp != 0) o = variable_buffer_output (o, tp, len1); pp = find_next_token (&list2_iterator, &len2); if (pp != 0) o = variable_buffer_output (o, pp, len2); if (tp != 0 || pp != 0) { o = variable_buffer_output (o, " ", 1); doneany = 1; } } while (tp != 0 || pp != 0); if (doneany) /* Kill the last blank. */ --o; return o; } static char * func_origin (char *o, char **argv, const char *funcname UNUSED) { /* Expand the argument. */ register struct variable *v = lookup_variable (argv[0], strlen (argv[0])); if (v == 0) o = variable_buffer_output (o, "undefined", 9); else switch (v->origin) { default: case o_invalid: abort (); break; case o_default: o = variable_buffer_output (o, "default", 7); break; case o_env: o = variable_buffer_output (o, "environment", 11); break; case o_file: o = variable_buffer_output (o, "file", 4); break; case o_env_override: o = variable_buffer_output (o, "environment override", 20); break; case o_command: o = variable_buffer_output (o, "command line", 12); break; case o_override: o = variable_buffer_output (o, "override", 8); break; case o_automatic: o = variable_buffer_output (o, "automatic", 9); break; } return o; } static char * func_flavor (char *o, char **argv, const char *funcname UNUSED) { register struct variable *v = lookup_variable (argv[0], strlen (argv[0])); if (v == 0) o = variable_buffer_output (o, "undefined", 9); else if (v->recursive) o = variable_buffer_output (o, "recursive", 9); else o = variable_buffer_output (o, "simple", 6); return o; } #ifdef VMS # define IS_PATHSEP(c) ((c) == ']') #else # ifdef HAVE_DOS_PATHS # define IS_PATHSEP(c) ((c) == '/' || (c) == '\\') # else # define IS_PATHSEP(c) ((c) == '/') # endif #endif static char * func_notdir_suffix (char *o, char **argv, const char *funcname) { /* Expand the argument. */ char *list_iterator = argv[0]; char *p2 =0; int doneany =0; unsigned int len=0; int is_suffix = streq (funcname, "suffix"); int is_notdir = !is_suffix; while ((p2 = find_next_token (&list_iterator, &len)) != 0) { char *p = p2 + len; while (p >= p2 && (!is_suffix || *p != '.')) { if (IS_PATHSEP (*p)) break; --p; } if (p >= p2) { if (is_notdir) ++p; else if (*p != '.') continue; o = variable_buffer_output (o, p, len - (p - p2)); } #ifdef HAVE_DOS_PATHS /* Handle the case of "d:foo/bar". */ else if (streq (funcname, "notdir") && p2[0] && p2[1] == ':') { p = p2 + 2; o = variable_buffer_output (o, p, len - (p - p2)); } #endif else if (is_notdir) o = variable_buffer_output (o, p2, len); if (is_notdir || p >= p2) { o = variable_buffer_output (o, " ", 1); doneany = 1; } } if (doneany) /* Kill last space. */ --o; return o; } static char * func_basename_dir (char *o, char **argv, const char *funcname) { /* Expand the argument. */ char *p3 = argv[0]; char *p2=0; int doneany=0; unsigned int len=0; char *p=0; int is_basename= streq (funcname, "basename"); int is_dir= !is_basename; while ((p2 = find_next_token (&p3, &len)) != 0) { p = p2 + len; while (p >= p2 && (!is_basename || *p != '.')) { if (IS_PATHSEP (*p)) break; --p; } if (p >= p2 && (is_dir)) o = variable_buffer_output (o, p2, ++p - p2); else if (p >= p2 && (*p == '.')) o = variable_buffer_output (o, p2, p - p2); #ifdef HAVE_DOS_PATHS /* Handle the "d:foobar" case */ else if (p2[0] && p2[1] == ':' && is_dir) o = variable_buffer_output (o, p2, 2); #endif else if (is_dir) #ifdef VMS o = variable_buffer_output (o, "[]", 2); #else #ifndef _AMIGA o = variable_buffer_output (o, "./", 2); #else ; /* Just a nop... */ #endif /* AMIGA */ #endif /* !VMS */ else /* The entire name is the basename. */ o = variable_buffer_output (o, p2, len); o = variable_buffer_output (o, " ", 1); doneany = 1; } if (doneany) /* Kill last space. */ --o; return o; } static char * func_addsuffix_addprefix (char *o, char **argv, const char *funcname) { int fixlen = strlen (argv[0]); char *list_iterator = argv[1]; int is_addprefix = streq (funcname, "addprefix"); int is_addsuffix = !is_addprefix; int doneany = 0; char *p; unsigned int len; while ((p = find_next_token (&list_iterator, &len)) != 0) { if (is_addprefix) o = variable_buffer_output (o, argv[0], fixlen); o = variable_buffer_output (o, p, len); if (is_addsuffix) o = variable_buffer_output (o, argv[0], fixlen); o = variable_buffer_output (o, " ", 1); doneany = 1; } if (doneany) /* Kill last space. */ --o; return o; } static char * func_subst (char *o, char **argv, const char *funcname UNUSED) { o = subst_expand (o, argv[2], argv[0], argv[1], strlen (argv[0]), strlen (argv[1]), 0); return o; } static char * func_firstword (char *o, char **argv, const char *funcname UNUSED) { unsigned int i; char *words = argv[0]; /* Use a temp variable for find_next_token */ char *p = find_next_token (&words, &i); if (p != 0) o = variable_buffer_output (o, p, i); return o; } static char * func_lastword (char *o, char **argv, const char *funcname UNUSED) { unsigned int i; char *words = argv[0]; /* Use a temp variable for find_next_token */ char *p = 0; char *t; while ((t = find_next_token (&words, &i))) p = t; if (p != 0) o = variable_buffer_output (o, p, i); return o; } static char * func_words (char *o, char **argv, const char *funcname UNUSED) { int i = 0; char *word_iterator = argv[0]; char buf[20]; while (find_next_token (&word_iterator, (unsigned int *) 0) != 0) ++i; sprintf (buf, "%d", i); o = variable_buffer_output (o, buf, strlen (buf)); return o; } /* Set begpp to point to the first non-whitespace character of the string, * and endpp to point to the last non-whitespace character of the string. * If the string is empty or contains nothing but whitespace, endpp will be * begpp-1. */ char * strip_whitespace (const char **begpp, const char **endpp) { while (*begpp <= *endpp && isspace ((unsigned char)**begpp)) (*begpp) ++; while (*endpp >= *begpp && isspace ((unsigned char)**endpp)) (*endpp) --; return (char *)*begpp; } static void check_numeric (const char *s, const char *message) { const char *end = s + strlen (s) - 1; const char *beg = s; strip_whitespace (&s, &end); for (; s <= end; ++s) if (!ISDIGIT (*s)) /* ISDIGIT only evals its arg once: see make.h. */ break; if (s <= end || end - beg < 0) fatal (*expanding_var, "%s: '%s'", message, beg); } static char * func_word (char *o, char **argv, const char *funcname UNUSED) { char *end_p=0; int i=0; char *p=0; /* Check the first argument. */ check_numeric (argv[0], _("non-numeric first argument to `word' function")); i = atoi (argv[0]); if (i == 0) fatal (*expanding_var, _("first argument to `word' function must be greater than 0")); end_p = argv[1]; while ((p = find_next_token (&end_p, 0)) != 0) if (--i == 0) break; if (i == 0) o = variable_buffer_output (o, p, end_p - p); return o; } static char * func_wordlist (char *o, char **argv, const char *funcname UNUSED) { int start, count; /* Check the arguments. */ check_numeric (argv[0], _("non-numeric first argument to `wordlist' function")); check_numeric (argv[1], _("non-numeric second argument to `wordlist' function")); start = atoi (argv[0]); if (start < 1) fatal (*expanding_var, "invalid first argument to `wordlist' function: `%d'", start); count = atoi (argv[1]) - start + 1; if (count > 0) { char *p; char *end_p = argv[2]; /* Find the beginning of the "start"th word. */ while (((p = find_next_token (&end_p, 0)) != 0) && --start) ; if (p) { /* Find the end of the "count"th word from start. */ while (--count && (find_next_token (&end_p, 0) != 0)) ; /* Return the stuff in the middle. */ o = variable_buffer_output (o, p, end_p - p); } } return o; } static char* func_findstring (char *o, char **argv, const char *funcname UNUSED) { /* Find the first occurrence of the first string in the second. */ if (strstr (argv[1], argv[0]) != 0) o = variable_buffer_output (o, argv[0], strlen (argv[0])); return o; } static char * func_foreach (char *o, char **argv, const char *funcname UNUSED) { /* expand only the first two. */ char *varname = expand_argument (argv[0], NULL); char *list = expand_argument (argv[1], NULL); char *body = argv[2]; int doneany = 0; char *list_iterator = list; char *p; unsigned int len; register struct variable *var; push_new_variable_scope (); var = define_variable (varname, strlen (varname), "", o_automatic, 0); /* loop through LIST, put the value in VAR and expand BODY */ while ((p = find_next_token (&list_iterator, &len)) != 0) { char *result = 0; { char save = p[len]; p[len] = '\0'; free (var->value); var->value = (char *) xstrdup ((char*) p); p[len] = save; } result = allocated_variable_expand (body); o = variable_buffer_output (o, result, strlen (result)); o = variable_buffer_output (o, " ", 1); doneany = 1; free (result); } if (doneany) /* Kill the last space. */ --o; pop_variable_scope (); free (varname); free (list); return o; } struct a_word { struct a_word *next; struct a_word *chain; char *str; int length; int matched; }; static unsigned long a_word_hash_1 (const void *key) { return_STRING_HASH_1 (((struct a_word const *) key)->str); } static unsigned long a_word_hash_2 (const void *key) { return_STRING_HASH_2 (((struct a_word const *) key)->str); } static int a_word_hash_cmp (const void *x, const void *y) { int result = ((struct a_word const *) x)->length - ((struct a_word const *) y)->length; if (result) return result; return_STRING_COMPARE (((struct a_word const *) x)->str, ((struct a_word const *) y)->str); } struct a_pattern { struct a_pattern *next; char *str; char *percent; int length; int save_c; }; static char * func_filter_filterout (char *o, char **argv, const char *funcname) { struct a_word *wordhead; struct a_word **wordtail; struct a_word *wp; struct a_pattern *pathead; struct a_pattern **pattail; struct a_pattern *pp; struct hash_table a_word_table; int is_filter = streq (funcname, "filter"); char *pat_iterator = argv[0]; char *word_iterator = argv[1]; int literals = 0; int words = 0; int hashing = 0; char *p; unsigned int len; /* Chop ARGV[0] up into patterns to match against the words. */ pattail = &pathead; while ((p = find_next_token (&pat_iterator, &len)) != 0) { struct a_pattern *pat = (struct a_pattern *) alloca (sizeof (struct a_pattern)); *pattail = pat; pattail = &pat->next; if (*pat_iterator != '\0') ++pat_iterator; pat->str = p; pat->length = len; pat->save_c = p[len]; p[len] = '\0'; pat->percent = find_percent (p); if (pat->percent == 0) literals++; } *pattail = 0; /* Chop ARGV[1] up into words to match against the patterns. */ wordtail = &wordhead; while ((p = find_next_token (&word_iterator, &len)) != 0) { struct a_word *word = (struct a_word *) alloca (sizeof (struct a_word)); *wordtail = word; wordtail = &word->next; if (*word_iterator != '\0') ++word_iterator; p[len] = '\0'; word->str = p; word->length = len; word->matched = 0; word->chain = 0; words++; } *wordtail = 0; /* Only use a hash table if arg list lengths justifies the cost. */ hashing = (literals >= 2 && (literals * words) >= 10); if (hashing) { hash_init (&a_word_table, words, a_word_hash_1, a_word_hash_2, a_word_hash_cmp); for (wp = wordhead; wp != 0; wp = wp->next) { struct a_word *owp = hash_insert (&a_word_table, wp); if (owp) wp->chain = owp; } } if (words) { int doneany = 0; /* Run each pattern through the words, killing words. */ for (pp = pathead; pp != 0; pp = pp->next) { if (pp->percent) for (wp = wordhead; wp != 0; wp = wp->next) wp->matched |= pattern_matches (pp->str, pp->percent, wp->str); else if (hashing) { struct a_word a_word_key; a_word_key.str = pp->str; a_word_key.length = pp->length; wp = (struct a_word *) hash_find_item (&a_word_table, &a_word_key); while (wp) { wp->matched |= 1; wp = wp->chain; } } else for (wp = wordhead; wp != 0; wp = wp->next) wp->matched |= (wp->length == pp->length && strneq (pp->str, wp->str, wp->length)); } /* Output the words that matched (or didn't, for filter-out). */ for (wp = wordhead; wp != 0; wp = wp->next) if (is_filter ? wp->matched : !wp->matched) { o = variable_buffer_output (o, wp->str, strlen (wp->str)); o = variable_buffer_output (o, " ", 1); doneany = 1; } if (doneany) /* Kill the last space. */ --o; } for (pp = pathead; pp != 0; pp = pp->next) pp->str[pp->length] = pp->save_c; if (hashing) hash_free (&a_word_table, 0); return o; } static char * func_strip (char *o, char **argv, const char *funcname UNUSED) { char *p = argv[0]; int doneany =0; while (*p != '\0') { int i=0; char *word_start=0; while (isspace ((unsigned char)*p)) ++p; word_start = p; for (i=0; *p != '\0' && !isspace ((unsigned char)*p); ++p, ++i) {} if (!i) break; o = variable_buffer_output (o, word_start, i); o = variable_buffer_output (o, " ", 1); doneany = 1; } if (doneany) /* Kill the last space. */ --o; return o; } /* Print a warning or fatal message. */ static char * func_error (char *o, char **argv, const char *funcname) { char **argvp; char *msg, *p; int len; /* The arguments will be broken on commas. Rather than create yet another special case where function arguments aren't broken up, just create a format string that puts them back together. */ for (len=0, argvp=argv; *argvp != 0; ++argvp) len += strlen (*argvp) + 2; p = msg = (char *) alloca (len + 1); for (argvp=argv; argvp[1] != 0; ++argvp) { strcpy (p, *argvp); p += strlen (*argvp); *(p++) = ','; *(p++) = ' '; } strcpy (p, *argvp); switch (*funcname) { case 'e': fatal (reading_file, "%s", msg); case 'w': error (reading_file, "%s", msg); break; case 'i': printf ("%s\n", msg); fflush(stdout); break; default: fatal (*expanding_var, "Internal error: func_error: '%s'", funcname); } /* The warning function expands to the empty string. */ return o; } /* chop argv[0] into words, and sort them. */ static char * func_sort (char *o, char **argv, const char *funcname UNUSED) { char **words = 0; int nwords = 0; register int wordi = 0; /* Chop ARGV[0] into words and put them in WORDS. */ char *t = argv[0]; char *p; unsigned int len; int i; while ((p = find_next_token (&t, &len)) != 0) { if (wordi >= nwords - 1) { nwords = (2 * nwords) + 5; words = (char **) xrealloc ((char *) words, nwords * sizeof (char *)); } words[wordi++] = savestring (p, len); } if (!wordi) return o; /* Now sort the list of words. */ qsort ((char *) words, wordi, sizeof (char *), alpha_compare); /* Now write the sorted list. */ for (i = 0; i < wordi; ++i) { len = strlen (words[i]); if (i == wordi - 1 || strlen (words[i + 1]) != len || strcmp (words[i], words[i + 1])) { o = variable_buffer_output (o, words[i], len); o = variable_buffer_output (o, " ", 1); } free (words[i]); } /* Kill the last space. */ --o; free (words); return o; } /* $(if condition,true-part[,false-part]) CONDITION is false iff it evaluates to an empty string. White space before and after condition are stripped before evaluation. If CONDITION is true, then TRUE-PART is evaluated, otherwise FALSE-PART is evaluated (if it exists). Because only one of the two PARTs is evaluated, you can use $(if ...) to create side-effects (with $(shell ...), for example). */ static char * func_if (char *o, char **argv, const char *funcname UNUSED) { const char *begp = argv[0]; const char *endp = begp + strlen (argv[0]) - 1; int result = 0; /* Find the result of the condition: if we have a value, and it's not empty, the condition is true. If we don't have a value, or it's the empty string, then it's false. */ strip_whitespace (&begp, &endp); if (begp <= endp) { char *expansion = expand_argument (begp, endp+1); result = strlen (expansion); free (expansion); } /* If the result is true (1) we want to eval the first argument, and if it's false (0) we want to eval the second. If the argument doesn't exist we do nothing, otherwise expand it and add to the buffer. */ argv += 1 + !result; if (argv[0]) { char *expansion; expansion = expand_argument (argv[0], NULL); o = variable_buffer_output (o, expansion, strlen (expansion)); free (expansion); } return o; } /* $(or condition1[,condition2[,condition3[...]]]) A CONDITION is false iff it evaluates to an empty string. White space before and after CONDITION are stripped before evaluation. CONDITION1 is evaluated. If it's true, then this is the result of expansion. If it's false, CONDITION2 is evaluated, and so on. If none of the conditions are true, the expansion is the empty string. Once a CONDITION is true no further conditions are evaluated (short-circuiting). */ static char * func_or (char *o, char **argv, const char *funcname UNUSED) { for ( ; *argv ; ++argv) { const char *begp = *argv; const char *endp = begp + strlen (*argv) - 1; char *expansion; int result = 0; /* Find the result of the condition: if it's false keep going. */ strip_whitespace (&begp, &endp); if (begp > endp) continue; expansion = expand_argument (begp, endp+1); result = strlen (expansion); /* If the result is false keep going. */ if (!result) { free (expansion); continue; } /* It's true! Keep this result and return. */ o = variable_buffer_output (o, expansion, result); free (expansion); break; } return o; } /* $(and condition1[,condition2[,condition3[...]]]) A CONDITION is false iff it evaluates to an empty string. White space before and after CONDITION are stripped before evaluation. CONDITION1 is evaluated. If it's false, then this is the result of expansion. If it's true, CONDITION2 is evaluated, and so on. If all of the conditions are true, the expansion is the result of the last condition. Once a CONDITION is false no further conditions are evaluated (short-circuiting). */ static char * func_and (char *o, char **argv, const char *funcname UNUSED) { char *expansion; int result; while (1) { const char *begp = *argv; const char *endp = begp + strlen (*argv) - 1; /* An empty condition is always false. */ strip_whitespace (&begp, &endp); if (begp > endp) return o; expansion = expand_argument (begp, endp+1); result = strlen (expansion); /* If the result is false, stop here: we're done. */ if (!result) break; /* Otherwise the result is true. If this is the last one, keep this result and quit. Otherwise go on to the next one! */ if (*(++argv)) free (expansion); else { o = variable_buffer_output (o, expansion, result); break; } } free (expansion); return o; } static char * func_wildcard (char *o, char **argv, const char *funcname UNUSED) { #ifdef _AMIGA o = wildcard_expansion (argv[0], o); #else char *p = string_glob (argv[0]); o = variable_buffer_output (o, p, strlen (p)); #endif return o; } /* $(eval ) Always resolves to the empty string. Treat the arguments as a segment of makefile, and parse them. */ static char * func_eval (char *o, char **argv, const char *funcname UNUSED) { char *buf; unsigned int len; /* Eval the buffer. Pop the current variable buffer setting so that the eval'd code can use its own without conflicting. */ install_variable_buffer (&buf, &len); eval_buffer (argv[0]); restore_variable_buffer (buf, len); return o; } static char * func_value (char *o, char **argv, const char *funcname UNUSED) { /* Look up the variable. */ struct variable *v = lookup_variable (argv[0], strlen (argv[0])); /* Copy its value into the output buffer without expanding it. */ if (v) o = variable_buffer_output (o, v->value, strlen(v->value)); return o; } /* \r is replaced on UNIX as well. Is this desirable? */ static void fold_newlines (char *buffer, unsigned int *length) { char *dst = buffer; char *src = buffer; char *last_nonnl = buffer -1; src[*length] = 0; for (; *src != '\0'; ++src) { if (src[0] == '\r' && src[1] == '\n') continue; if (*src == '\n') { *dst++ = ' '; } else { last_nonnl = dst; *dst++ = *src; } } *(++last_nonnl) = '\0'; *length = last_nonnl - buffer; } int shell_function_pid = 0, shell_function_completed; #ifdef WINDOWS32 /*untested*/ #include #include #include "sub_proc.h" void windows32_openpipe (int *pipedes, int *pid_p, char **command_argv, char **envp) { SECURITY_ATTRIBUTES saAttr; HANDLE hIn; HANDLE hErr; HANDLE hChildOutRd; HANDLE hChildOutWr; HANDLE hProcess; saAttr.nLength = sizeof (SECURITY_ATTRIBUTES); saAttr.bInheritHandle = TRUE; saAttr.lpSecurityDescriptor = NULL; if (DuplicateHandle (GetCurrentProcess(), GetStdHandle(STD_INPUT_HANDLE), GetCurrentProcess(), &hIn, 0, TRUE, DUPLICATE_SAME_ACCESS) == FALSE) { fatal (NILF, _("create_child_process: DuplicateHandle(In) failed (e=%ld)\n"), GetLastError()); } if (DuplicateHandle(GetCurrentProcess(), GetStdHandle(STD_ERROR_HANDLE), GetCurrentProcess(), &hErr, 0, TRUE, DUPLICATE_SAME_ACCESS) == FALSE) { fatal (NILF, _("create_child_process: DuplicateHandle(Err) failed (e=%ld)\n"), GetLastError()); } if (!CreatePipe(&hChildOutRd, &hChildOutWr, &saAttr, 0)) fatal (NILF, _("CreatePipe() failed (e=%ld)\n"), GetLastError()); hProcess = process_init_fd(hIn, hChildOutWr, hErr); if (!hProcess) fatal (NILF, _("windows32_openpipe (): process_init_fd() failed\n")); /* make sure that CreateProcess() has Path it needs */ sync_Path_environment(); if (!process_begin(hProcess, command_argv, envp, command_argv[0], NULL)) { /* register process for wait */ process_register(hProcess); /* set the pid for returning to caller */ *pid_p = (int) hProcess; /* set up to read data from child */ pipedes[0] = _open_osfhandle((long) hChildOutRd, O_RDONLY); /* this will be closed almost right away */ pipedes[1] = _open_osfhandle((long) hChildOutWr, O_APPEND); } else { /* reap/cleanup the failed process */ process_cleanup(hProcess); /* close handles which were duplicated, they weren't used */ CloseHandle(hIn); CloseHandle(hErr); /* close pipe handles, they won't be used */ CloseHandle(hChildOutRd); CloseHandle(hChildOutWr); /* set status for return */ pipedes[0] = pipedes[1] = -1; *pid_p = -1; } } #endif #ifdef __MSDOS__ FILE * msdos_openpipe (int* pipedes, int *pidp, char *text) { FILE *fpipe=0; /* MSDOS can't fork, but it has `popen'. */ struct variable *sh = lookup_variable ("SHELL", 5); int e; extern int dos_command_running, dos_status; /* Make sure not to bother processing an empty line. */ while (isblank ((unsigned char)*text)) ++text; if (*text == '\0') return 0; if (sh) { char buf[PATH_MAX + 7]; /* This makes sure $SHELL value is used by $(shell), even though the target environment is not passed to it. */ sprintf (buf, "SHELL=%s", sh->value); putenv (buf); } e = errno; errno = 0; dos_command_running = 1; dos_status = 0; /* If dos_status becomes non-zero, it means the child process was interrupted by a signal, like SIGINT or SIGQUIT. See fatal_error_signal in commands.c. */ fpipe = popen (text, "rt"); dos_command_running = 0; if (!fpipe || dos_status) { pipedes[0] = -1; *pidp = -1; if (dos_status) errno = EINTR; else if (errno == 0) errno = ENOMEM; shell_function_completed = -1; } else { pipedes[0] = fileno (fpipe); *pidp = 42; /* Yes, the Meaning of Life, the Universe, and Everything! */ errno = e; shell_function_completed = 1; } return fpipe; } #endif /* Do shell spawning, with the naughty bits for different OSes. */ #ifdef VMS /* VMS can't do $(shell ...) */ #define func_shell 0 #else #ifndef _AMIGA static char * func_shell (char *o, char **argv, const char *funcname UNUSED) { char* batch_filename = NULL; #ifdef __MSDOS__ FILE *fpipe; #endif char **command_argv; char *error_prefix; char **envp; int pipedes[2]; int pid; #ifndef __MSDOS__ /* Construct the argument list. */ command_argv = construct_command_argv (argv[0], (char **) NULL, (struct file *) 0, &batch_filename); if (command_argv == 0) return o; #endif /* Using a target environment for `shell' loses in cases like: export var = $(shell echo foobie) because target_environment hits a loop trying to expand $(var) to put it in the environment. This is even more confusing when var was not explicitly exported, but just appeared in the calling environment. envp = target_environment (NILF); */ envp = environ; /* For error messages. */ if (reading_file && reading_file->filenm) { error_prefix = (char *) alloca (strlen (reading_file->filenm)+11+4); sprintf (error_prefix, "%s:%lu: ", reading_file->filenm, reading_file->lineno); } else error_prefix = ""; #ifdef WINDOWS32 windows32_openpipe (pipedes, &pid, command_argv, envp); if (pipedes[0] < 0) { /* open of the pipe failed, mark as failed execution */ shell_function_completed = -1; return o; } else #elif defined(__MSDOS__) fpipe = msdos_openpipe (pipedes, &pid, argv[0]); if (pipedes[0] < 0) { perror_with_name (error_prefix, "pipe"); return o; } #else if (pipe (pipedes) < 0) { perror_with_name (error_prefix, "pipe"); return o; } # ifdef __EMX__ /* close some handles that are unnecessary for the child process */ CLOSE_ON_EXEC(pipedes[1]); CLOSE_ON_EXEC(pipedes[0]); /* Never use fork()/exec() here! Use spawn() instead in exec_command() */ pid = child_execute_job (0, pipedes[1], command_argv, envp); if (pid < 0) perror_with_name (error_prefix, "spawn"); # else /* ! __EMX__ */ pid = vfork (); if (pid < 0) perror_with_name (error_prefix, "fork"); else if (pid == 0) child_execute_job (0, pipedes[1], command_argv, envp); else # endif #endif { /* We are the parent. */ char *buffer; unsigned int maxlen, i; int cc; /* Record the PID for reap_children. */ shell_function_pid = pid; #ifndef __MSDOS__ shell_function_completed = 0; /* Free the storage only the child needed. */ free (command_argv[0]); free ((char *) command_argv); /* Close the write side of the pipe. */ (void) close (pipedes[1]); #endif /* Set up and read from the pipe. */ maxlen = 200; buffer = (char *) xmalloc (maxlen + 1); /* Read from the pipe until it gets EOF. */ for (i = 0; ; i += cc) { if (i == maxlen) { maxlen += 512; buffer = (char *) xrealloc (buffer, maxlen + 1); } EINTRLOOP (cc, read (pipedes[0], &buffer[i], maxlen - i)); if (cc <= 0) break; } buffer[i] = '\0'; /* Close the read side of the pipe. */ #ifdef __MSDOS__ if (fpipe) (void) pclose (fpipe); #else (void) close (pipedes[0]); #endif /* Loop until child_handler or reap_children() sets shell_function_completed to the status of our child shell. */ while (shell_function_completed == 0) reap_children (1, 0); if (batch_filename) { DB (DB_VERBOSE, (_("Cleaning up temporary batch file %s\n"), batch_filename)); remove (batch_filename); free (batch_filename); } shell_function_pid = 0; /* The child_handler function will set shell_function_completed to 1 when the child dies normally, or to -1 if it dies with status 127, which is most likely an exec fail. */ if (shell_function_completed == -1) { /* This likely means that the execvp failed, so we should just write the error message in the pipe from the child. */ fputs (buffer, stderr); fflush (stderr); } else { /* The child finished normally. Replace all newlines in its output with spaces, and put that in the variable output buffer. */ fold_newlines (buffer, &i); o = variable_buffer_output (o, buffer, i); } free (buffer); } return o; } #else /* _AMIGA */ /* Do the Amiga version of func_shell. */ static char * func_shell (char *o, char **argv, const char *funcname) { /* Amiga can't fork nor spawn, but I can start a program with redirection of my choice. However, this means that we don't have an opportunity to reopen stdout to trap it. Thus, we save our own stdout onto a new descriptor and dup a temp file's descriptor onto our stdout temporarily. After we spawn the shell program, we dup our own stdout back to the stdout descriptor. The buffer reading is the same as above, except that we're now reading from a file. */ #include #include BPTR child_stdout; char tmp_output[FILENAME_MAX]; unsigned int maxlen = 200, i; int cc; char * buffer, * ptr; char ** aptr; int len = 0; char* batch_filename = NULL; /* Construct the argument list. */ command_argv = construct_command_argv (argv[0], (char **) NULL, (struct file *) 0, &batch_filename); if (command_argv == 0) return o; /* Note the mktemp() is a security hole, but this only runs on Amiga. Ideally we would use main.c:open_tmpfile(), but this uses a special Open(), not fopen(), and I'm not familiar enough with the code to mess with it. */ strcpy (tmp_output, "t:MakeshXXXXXXXX"); mktemp (tmp_output); child_stdout = Open (tmp_output, MODE_NEWFILE); for (aptr=command_argv; *aptr; aptr++) len += strlen (*aptr) + 1; buffer = xmalloc (len + 1); ptr = buffer; for (aptr=command_argv; *aptr; aptr++) { strcpy (ptr, *aptr); ptr += strlen (ptr) + 1; *ptr ++ = ' '; *ptr = 0; } ptr[-1] = '\n'; Execute (buffer, NULL, child_stdout); free (buffer); Close (child_stdout); child_stdout = Open (tmp_output, MODE_OLDFILE); buffer = xmalloc (maxlen); i = 0; do { if (i == maxlen) { maxlen += 512; buffer = (char *) xrealloc (buffer, maxlen + 1); } cc = Read (child_stdout, &buffer[i], maxlen - i); if (cc > 0) i += cc; } while (cc > 0); Close (child_stdout); fold_newlines (buffer, &i); o = variable_buffer_output (o, buffer, i); free (buffer); return o; } #endif /* _AMIGA */ #endif /* !VMS */ #ifdef EXPERIMENTAL /* equality. Return is string-boolean, ie, the empty string is false. */ static char * func_eq (char *o, char **argv, char *funcname) { int result = ! strcmp (argv[0], argv[1]); o = variable_buffer_output (o, result ? "1" : "", result); return o; } /* string-boolean not operator. */ static char * func_not (char *o, char **argv, char *funcname) { char *s = argv[0]; int result = 0; while (isspace ((unsigned char)*s)) s++; result = ! (*s); o = variable_buffer_output (o, result ? "1" : "", result); return o; } #endif /* Return the absolute name of file NAME which does not contain any `.', `..' components nor any repeated path separators ('/'). */ static char * abspath (const char *name, char *apath) { char *dest; const char *start, *end, *apath_limit; if (name[0] == '\0' || apath == NULL) return NULL; apath_limit = apath + GET_PATH_MAX; if (name[0] != '/') { /* It is unlikely we would make it until here but just to make sure. */ if (!starting_directory) return NULL; strcpy (apath, starting_directory); dest = strchr (apath, '\0'); } else { apath[0] = '/'; dest = apath + 1; } for (start = end = name; *start != '\0'; start = end) { unsigned long len; /* Skip sequence of multiple path-separators. */ while (*start == '/') ++start; /* Find end of path component. */ for (end = start; *end != '\0' && *end != '/'; ++end) ; len = end - start; if (len == 0) break; else if (len == 1 && start[0] == '.') /* nothing */; else if (len == 2 && start[0] == '.' && start[1] == '.') { /* Back up to previous component, ignore if at root already. */ if (dest > apath + 1) while ((--dest)[-1] != '/'); } else { if (dest[-1] != '/') *dest++ = '/'; if (dest + len >= apath_limit) return NULL; dest = memcpy (dest, start, len); dest += len; *dest = '\0'; } } /* Unless it is root strip trailing separator. */ if (dest > apath + 1 && dest[-1] == '/') --dest; *dest = '\0'; return apath; } static char * func_realpath (char *o, char **argv, const char *funcname UNUSED) { /* Expand the argument. */ char *p = argv[0]; char *path = 0; int doneany = 0; unsigned int len = 0; PATH_VAR (in); PATH_VAR (out); while ((path = find_next_token (&p, &len)) != 0) { if (len < GET_PATH_MAX) { strncpy (in, path, len); in[len] = '\0'; if ( #ifdef HAVE_REALPATH realpath (in, out) #else abspath (in, out) #endif ) { o = variable_buffer_output (o, out, strlen (out)); o = variable_buffer_output (o, " ", 1); doneany = 1; } } } /* Kill last space. */ if (doneany) --o; return o; } static char * func_abspath (char *o, char **argv, const char *funcname UNUSED) { /* Expand the argument. */ char *p = argv[0]; char *path = 0; int doneany = 0; unsigned int len = 0; PATH_VAR (in); PATH_VAR (out); while ((path = find_next_token (&p, &len)) != 0) { if (len < GET_PATH_MAX) { strncpy (in, path, len); in[len] = '\0'; if (abspath (in, out)) { o = variable_buffer_output (o, out, strlen (out)); o = variable_buffer_output (o, " ", 1); doneany = 1; } } } /* Kill last space. */ if (doneany) --o; return o; } /* Lookup table for builtin functions. This doesn't have to be sorted; we use a straight lookup. We might gain some efficiency by moving most often used functions to the start of the table. If MAXIMUM_ARGS is 0, that means there is no maximum and all comma-separated values are treated as arguments. EXPAND_ARGS means that all arguments should be expanded before invocation. Functions that do namespace tricks (foreach) don't automatically expand. */ static char *func_call PARAMS ((char *o, char **argv, const char *funcname)); static struct function_table_entry function_table_init[] = { /* Name/size */ /* MIN MAX EXP? Function */ { STRING_SIZE_TUPLE("abspath"), 0, 1, 1, func_abspath}, { STRING_SIZE_TUPLE("addprefix"), 2, 2, 1, func_addsuffix_addprefix}, { STRING_SIZE_TUPLE("addsuffix"), 2, 2, 1, func_addsuffix_addprefix}, { STRING_SIZE_TUPLE("basename"), 0, 1, 1, func_basename_dir}, { STRING_SIZE_TUPLE("dir"), 0, 1, 1, func_basename_dir}, { STRING_SIZE_TUPLE("notdir"), 0, 1, 1, func_notdir_suffix}, { STRING_SIZE_TUPLE("subst"), 3, 3, 1, func_subst}, { STRING_SIZE_TUPLE("suffix"), 0, 1, 1, func_notdir_suffix}, { STRING_SIZE_TUPLE("filter"), 2, 2, 1, func_filter_filterout}, { STRING_SIZE_TUPLE("filter-out"), 2, 2, 1, func_filter_filterout}, { STRING_SIZE_TUPLE("findstring"), 2, 2, 1, func_findstring}, { STRING_SIZE_TUPLE("firstword"), 0, 1, 1, func_firstword}, { STRING_SIZE_TUPLE("flavor"), 0, 1, 1, func_flavor}, { STRING_SIZE_TUPLE("join"), 2, 2, 1, func_join}, { STRING_SIZE_TUPLE("lastword"), 0, 1, 1, func_lastword}, { STRING_SIZE_TUPLE("patsubst"), 3, 3, 1, func_patsubst}, { STRING_SIZE_TUPLE("realpath"), 0, 1, 1, func_realpath}, { STRING_SIZE_TUPLE("shell"), 0, 1, 1, func_shell}, { STRING_SIZE_TUPLE("sort"), 0, 1, 1, func_sort}, { STRING_SIZE_TUPLE("strip"), 0, 1, 1, func_strip}, { STRING_SIZE_TUPLE("wildcard"), 0, 1, 1, func_wildcard}, { STRING_SIZE_TUPLE("word"), 2, 2, 1, func_word}, { STRING_SIZE_TUPLE("wordlist"), 3, 3, 1, func_wordlist}, { STRING_SIZE_TUPLE("words"), 0, 1, 1, func_words}, { STRING_SIZE_TUPLE("origin"), 0, 1, 1, func_origin}, { STRING_SIZE_TUPLE("foreach"), 3, 3, 0, func_foreach}, { STRING_SIZE_TUPLE("call"), 1, 0, 1, func_call}, { STRING_SIZE_TUPLE("info"), 0, 1, 1, func_error}, { STRING_SIZE_TUPLE("error"), 0, 1, 1, func_error}, { STRING_SIZE_TUPLE("warning"), 0, 1, 1, func_error}, { STRING_SIZE_TUPLE("if"), 2, 3, 0, func_if}, { STRING_SIZE_TUPLE("or"), 1, 0, 0, func_or}, { STRING_SIZE_TUPLE("and"), 1, 0, 0, func_and}, { STRING_SIZE_TUPLE("value"), 0, 1, 1, func_value}, { STRING_SIZE_TUPLE("eval"), 0, 1, 1, func_eval}, #ifdef EXPERIMENTAL { STRING_SIZE_TUPLE("eq"), 2, 2, 1, func_eq}, { STRING_SIZE_TUPLE("not"), 0, 1, 1, func_not}, #endif }; #define FUNCTION_TABLE_ENTRIES (sizeof (function_table_init) / sizeof (struct function_table_entry)) /* These must come after the definition of function_table. */ static char * expand_builtin_function (char *o, int argc, char **argv, const struct function_table_entry *entry_p) { if (argc < (int)entry_p->minimum_args) fatal (*expanding_var, _("insufficient number of arguments (%d) to function `%s'"), argc, entry_p->name); /* I suppose technically some function could do something with no arguments, but so far none do, so just test it for all functions here rather than in each one. We can change it later if necessary. */ if (!argc) return o; if (!entry_p->func_ptr) fatal (*expanding_var, _("unimplemented on this platform: function `%s'"), entry_p->name); return entry_p->func_ptr (o, argv, entry_p->name); } /* Check for a function invocation in *STRINGP. *STRINGP points at the opening ( or { and is not null-terminated. If a function invocation is found, expand it into the buffer at *OP, updating *OP, incrementing *STRINGP past the reference and returning nonzero. If not, return zero. */ int handle_function (char **op, char **stringp) { const struct function_table_entry *entry_p; char openparen = (*stringp)[0]; char closeparen = openparen == '(' ? ')' : '}'; char *beg; char *end; int count = 0; register char *p; char **argv, **argvp; int nargs; beg = *stringp + 1; entry_p = lookup_function (beg); if (!entry_p) return 0; /* We found a builtin function. Find the beginning of its arguments (skip whitespace after the name). */ beg = next_token (beg + entry_p->len); /* Find the end of the function invocation, counting nested use of whichever kind of parens we use. Since we're looking, count commas to get a rough estimate of how many arguments we might have. The count might be high, but it'll never be low. */ for (nargs=1, end=beg; *end != '\0'; ++end) if (*end == ',') ++nargs; else if (*end == openparen) ++count; else if (*end == closeparen && --count < 0) break; if (count >= 0) fatal (*expanding_var, _("unterminated call to function `%s': missing `%c'"), entry_p->name, closeparen); *stringp = end; /* Get some memory to store the arg pointers. */ argvp = argv = (char **) alloca (sizeof (char *) * (nargs + 2)); /* Chop the string into arguments, then a nul. As soon as we hit MAXIMUM_ARGS (if it's >0) assume the rest of the string is part of the last argument. If we're expanding, store pointers to the expansion of each one. If not, make a duplicate of the string and point into that, nul-terminating each argument. */ if (!entry_p->expand_args) { int len = end - beg; p = xmalloc (len+1); memcpy (p, beg, len); p[len] = '\0'; beg = p; end = beg + len; } for (p=beg, nargs=0; p <= end; ++argvp) { char *next; ++nargs; if (nargs == entry_p->maximum_args || (! (next = find_next_argument (openparen, closeparen, p, end)))) next = end; if (entry_p->expand_args) *argvp = expand_argument (p, next); else { *argvp = p; *next = '\0'; } p = next + 1; } *argvp = NULL; /* Finally! Run the function... */ *op = expand_builtin_function (*op, nargs, argv, entry_p); /* Free memory. */ if (entry_p->expand_args) for (argvp=argv; *argvp != 0; ++argvp) free (*argvp); else free (beg); return 1; } /* User-defined functions. Expand the first argument as either a builtin function or a make variable, in the context of the rest of the arguments assigned to $1, $2, ... $N. $0 is the name of the function. */ static char * func_call (char *o, char **argv, const char *funcname UNUSED) { static int max_args = 0; char *fname; char *cp; char *body; int flen; int i; int saved_args; const struct function_table_entry *entry_p; struct variable *v; /* There is no way to define a variable with a space in the name, so strip leading and trailing whitespace as a favor to the user. */ fname = argv[0]; while (*fname != '\0' && isspace ((unsigned char)*fname)) ++fname; cp = fname + strlen (fname) - 1; while (cp > fname && isspace ((unsigned char)*cp)) --cp; cp[1] = '\0'; /* Calling nothing is a no-op */ if (*fname == '\0') return o; /* Are we invoking a builtin function? */ entry_p = lookup_function (fname); if (entry_p) { /* How many arguments do we have? */ for (i=0; argv[i+1]; ++i) ; return expand_builtin_function (o, i, argv+1, entry_p); } /* Not a builtin, so the first argument is the name of a variable to be expanded and interpreted as a function. Find it. */ flen = strlen (fname); v = lookup_variable (fname, flen); if (v == 0) warn_undefined (fname, flen); if (v == 0 || *v->value == '\0') return o; body = (char *) alloca (flen + 4); body[0] = '$'; body[1] = '('; memcpy (body + 2, fname, flen); body[flen+2] = ')'; body[flen+3] = '\0'; /* Set up arguments $(1) .. $(N). $(0) is the function name. */ push_new_variable_scope (); for (i=0; *argv; ++i, ++argv) { char num[11]; sprintf (num, "%d", i); define_variable (num, strlen (num), *argv, o_automatic, 0); } /* If the number of arguments we have is < max_args, it means we're inside a recursive invocation of $(call ...). Fill in the remaining arguments in the new scope with the empty value, to hide them from this invocation. */ for (; i < max_args; ++i) { char num[11]; sprintf (num, "%d", i); define_variable (num, strlen (num), "", o_automatic, 0); } /* Expand the body in the context of the arguments, adding the result to the variable buffer. */ v->exp_count = EXP_COUNT_MAX; saved_args = max_args; max_args = i; o = variable_expand_string (o, body, flen+3); max_args = saved_args; v->exp_count = 0; pop_variable_scope (); return o + strlen (o); } void hash_init_function_table (void) { hash_init (&function_table, FUNCTION_TABLE_ENTRIES * 2, function_table_entry_hash_1, function_table_entry_hash_2, function_table_entry_hash_cmp); hash_load (&function_table, function_table_init, FUNCTION_TABLE_ENTRIES, sizeof (struct function_table_entry)); } make-dfsg-3.81.orig/getloadavg.c0000644000175000017500000006311610416553102017001 0ustar srivastasrivasta/* Get the system load averages. Copyright (C) 1985, 1986, 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Compile-time symbols that this file uses: HAVE_PSTAT_GETDYNAMIC Define this if your system has the pstat_getdynamic function. I think it is unique to HPUX9. The best way to get the definition is through the AC_FUNC_GETLOADAVG macro that comes with autoconf 2.13 or newer. If that isn't an option, then just put AC_CHECK_FUNCS(pstat_getdynamic) in your configure.in file. FIXUP_KERNEL_SYMBOL_ADDR() Adjust address in returned struct nlist. KERNEL_FILE Pathname of the kernel to nlist. LDAV_CVT() Scale the load average from the kernel. Returns a double. LDAV_SYMBOL Name of kernel symbol giving load average. LOAD_AVE_TYPE Type of the load average array in the kernel. Must be defined unless one of apollo, DGUX, NeXT, or UMAX is defined; or we have libkstat; otherwise, no load average is available. NLIST_STRUCT Include nlist.h, not a.out.h, and the nlist n_name element is a pointer, not an array. HAVE_STRUCT_NLIST_N_UN_N_NAME struct nlist has an n_un member, not n_name. LINUX_LDAV_FILE [__linux__]: File containing load averages. Specific system predefines this file uses, aside from setting default values if not emacs: apollo BSD Real BSD, not just BSD-like. convex DGUX eunice UNIX emulator under VMS. hpux __MSDOS__ No-op for MSDOS. NeXT sgi sequent Sequent Dynix 3.x.x (BSD) _SEQUENT_ Sequent DYNIX/ptx 1.x.x (SYSV) sony_news NEWS-OS (works at least for 4.1C) UMAX UMAX4_3 VMS WINDOWS32 No-op for Windows95/NT. __linux__ Linux: assumes /proc filesystem mounted. Support from Michael K. Johnson. __NetBSD__ NetBSD: assumes /kern filesystem mounted. In addition, to avoid nesting many #ifdefs, we internally set LDAV_DONE to indicate that the load average has been computed. We also #define LDAV_PRIVILEGED if a program will require special installation to be able to call getloadavg. */ /* This should always be first. */ #ifdef HAVE_CONFIG_H # include #endif #include /* Both the Emacs and non-Emacs sections want this. Some configuration files' definitions for the LOAD_AVE_CVT macro (like sparc.h's) use macros like FSCALE, defined here. */ #if defined (unix) || defined (__unix) # include #endif /* Exclude all the code except the test program at the end if the system has its own `getloadavg' function. The declaration of `errno' is needed by the test program as well as the function itself, so it comes first. */ #include #ifndef errno extern int errno; #endif #if HAVE_LOCALE_H # include #endif #if !HAVE_SETLOCALE # define setlocale(Category, Locale) /* empty */ #endif #ifndef HAVE_GETLOADAVG /* The existing Emacs configuration files define a macro called LOAD_AVE_CVT, which accepts a value of type LOAD_AVE_TYPE, and returns the load average multiplied by 100. What we actually want is a macro called LDAV_CVT, which returns the load average as an unmultiplied double. For backwards compatibility, we'll define LDAV_CVT in terms of LOAD_AVE_CVT, but future machine config files should just define LDAV_CVT directly. */ # if !defined(LDAV_CVT) && defined(LOAD_AVE_CVT) # define LDAV_CVT(n) (LOAD_AVE_CVT (n) / 100.0) # endif # if !defined (BSD) && defined (ultrix) /* Ultrix behaves like BSD on Vaxen. */ # define BSD # endif # ifdef NeXT /* NeXT in the 2.{0,1,2} releases defines BSD in , which conflicts with the definition understood in this file, that this really is BSD. */ # undef BSD /* NeXT defines FSCALE in . However, we take FSCALE being defined to mean that the nlist method should be used, which is not true. */ # undef FSCALE # endif /* Same issues as for NeXT apply to the HURD-based GNU system. */ # ifdef __GNU__ # undef BSD # undef FSCALE # endif /* __GNU__ */ /* Set values that are different from the defaults, which are set a little farther down with #ifndef. */ /* Some shorthands. */ # if defined (HPUX) && !defined (hpux) # define hpux # endif # if defined (__hpux) && !defined (hpux) # define hpux # endif # if defined (__sun) && !defined (sun) # define sun # endif # if defined(hp300) && !defined(hpux) # define MORE_BSD # endif # if defined(ultrix) && defined(mips) # define decstation # endif # if defined (__SVR4) && !defined (SVR4) # define SVR4 # endif # if (defined(sun) && defined(SVR4)) || defined (SOLARIS2) # define SUNOS_5 # endif # if defined (__osf__) && (defined (__alpha) || defined (__alpha__)) # define OSF_ALPHA # include # include # include # include # endif # if defined (__osf__) && (defined (mips) || defined (__mips__)) # define OSF_MIPS # include # endif /* UTek's /bin/cc on the 4300 has no architecture specific cpp define by default, but _MACH_IND_SYS_TYPES is defined in . Combine that with a couple of other things and we'll have a unique match. */ # if !defined (tek4300) && defined (unix) && defined (m68k) && defined (mc68000) && defined (mc68020) && defined (_MACH_IND_SYS_TYPES) # define tek4300 /* Define by emacs, but not by other users. */ # endif /* AC_FUNC_GETLOADAVG thinks QNX is SVR4, but it isn't. */ # if defined(__QNX__) # undef SVR4 # endif /* VAX C can't handle multi-line #ifs, or lines longer than 256 chars. */ # ifndef LOAD_AVE_TYPE # ifdef MORE_BSD # define LOAD_AVE_TYPE long # endif # ifdef sun # define LOAD_AVE_TYPE long # endif # ifdef decstation # define LOAD_AVE_TYPE long # endif # ifdef _SEQUENT_ # define LOAD_AVE_TYPE long # endif # ifdef sgi # define LOAD_AVE_TYPE long # endif # ifdef SVR4 # define LOAD_AVE_TYPE long # endif # ifdef sony_news # define LOAD_AVE_TYPE long # endif # ifdef sequent # define LOAD_AVE_TYPE long # endif # ifdef OSF_ALPHA # define LOAD_AVE_TYPE long # endif # if defined (ardent) && defined (titan) # define LOAD_AVE_TYPE long # endif # ifdef tek4300 # define LOAD_AVE_TYPE long # endif # if defined(alliant) && defined(i860) /* Alliant FX/2800 */ # define LOAD_AVE_TYPE long # endif # ifdef _AIX # define LOAD_AVE_TYPE long # endif # ifdef convex # define LOAD_AVE_TYPE double # ifndef LDAV_CVT # define LDAV_CVT(n) (n) # endif # endif # endif /* No LOAD_AVE_TYPE. */ # ifdef OSF_ALPHA /* defines an incorrect value for FSCALE on Alpha OSF/1, according to ghazi@noc.rutgers.edu. */ # undef FSCALE # define FSCALE 1024.0 # endif # if defined(alliant) && defined(i860) /* Alliant FX/2800 */ /* defines an incorrect value for FSCALE on an Alliant FX/2800 Concentrix 2.2, according to ghazi@noc.rutgers.edu. */ # undef FSCALE # define FSCALE 100.0 # endif # ifndef FSCALE /* SunOS and some others define FSCALE in sys/param.h. */ # ifdef MORE_BSD # define FSCALE 2048.0 # endif # if defined(MIPS) || defined(SVR4) || defined(decstation) # define FSCALE 256 # endif # if defined (sgi) || defined (sequent) /* Sometimes both MIPS and sgi are defined, so FSCALE was just defined above under #ifdef MIPS. But we want the sgi value. */ # undef FSCALE # define FSCALE 1000.0 # endif # if defined (ardent) && defined (titan) # define FSCALE 65536.0 # endif # ifdef tek4300 # define FSCALE 100.0 # endif # ifdef _AIX # define FSCALE 65536.0 # endif # endif /* Not FSCALE. */ # if !defined (LDAV_CVT) && defined (FSCALE) # define LDAV_CVT(n) (((double) (n)) / FSCALE) # endif # if defined(sgi) || (defined(mips) && !defined(BSD)) # define FIXUP_KERNEL_SYMBOL_ADDR(nl) ((nl)[0].n_value &= ~(1 << 31)) # endif # if !defined (KERNEL_FILE) && defined (sequent) # define KERNEL_FILE "/dynix" # endif # if !defined (KERNEL_FILE) && defined (hpux) # define KERNEL_FILE "/hp-ux" # endif # if !defined(KERNEL_FILE) && (defined(_SEQUENT_) || defined(MIPS) || defined(SVR4) || defined(ISC) || defined (sgi) || (defined (ardent) && defined (titan))) # define KERNEL_FILE "/unix" # endif # if !defined (LDAV_SYMBOL) && defined (alliant) # define LDAV_SYMBOL "_Loadavg" # endif # if !defined(LDAV_SYMBOL) && ((defined(hpux) && !defined(hp9000s300)) || defined(_SEQUENT_) || defined(SVR4) || defined(ISC) || defined(sgi) || (defined (ardent) && defined (titan)) || defined (_AIX)) # define LDAV_SYMBOL "avenrun" # endif # ifdef HAVE_UNISTD_H # include # endif # include /* LOAD_AVE_TYPE should only get defined if we're going to use the nlist method. */ # if !defined(LOAD_AVE_TYPE) && (defined(BSD) || defined(LDAV_CVT) || defined(KERNEL_FILE) || defined(LDAV_SYMBOL)) && !defined(__riscos__) # define LOAD_AVE_TYPE double # endif # ifdef LOAD_AVE_TYPE # ifndef VMS # ifndef __linux__ # ifdef HAVE_NLIST_H # include # else # include # endif # ifdef SUNOS_5 # include # include # include # endif # if defined (hpux) && defined (HAVE_PSTAT_GETDYNAMIC) # include # endif # ifndef KERNEL_FILE # define KERNEL_FILE "/vmunix" # endif /* KERNEL_FILE */ # ifndef LDAV_SYMBOL # define LDAV_SYMBOL "_avenrun" # endif /* LDAV_SYMBOL */ # endif /* __linux__ */ # else /* VMS */ # ifndef eunice # include # include # else /* eunice */ # include # endif /* eunice */ # endif /* VMS */ # ifndef LDAV_CVT # define LDAV_CVT(n) ((double) (n)) # endif /* !LDAV_CVT */ # endif /* LOAD_AVE_TYPE */ # if defined(__GNU__) && !defined (NeXT) /* Note that NeXT Openstep defines __GNU__ even though it should not. */ /* GNU system acts much like NeXT, for load average purposes, but not exactly. */ # define NeXT # define host_self mach_host_self # endif # ifdef NeXT # ifdef HAVE_MACH_MACH_H # include # else # include # endif # endif /* NeXT */ # ifdef sgi # include # endif /* sgi */ # ifdef UMAX # include # include # include # include # include # ifdef UMAX_43 # include # include # include # include # include # else /* Not UMAX_43. */ # include # include # include # include # include # include # endif /* Not UMAX_43. */ # endif /* UMAX */ # ifdef DGUX # include # endif # if defined(HAVE_FCNTL_H) || defined(_POSIX_VERSION) # include # else # include # endif /* Avoid static vars inside a function since in HPUX they dump as pure. */ # ifdef NeXT static processor_set_t default_set; static int getloadavg_initialized; # endif /* NeXT */ # ifdef UMAX static unsigned int cpus = 0; static unsigned int samples; # endif /* UMAX */ # ifdef DGUX static struct dg_sys_info_load_info load_info; /* what-a-mouthful! */ # endif /* DGUX */ #if !defined(HAVE_LIBKSTAT) && defined(LOAD_AVE_TYPE) /* File descriptor open to /dev/kmem or VMS load ave driver. */ static int channel; /* Nonzero iff channel is valid. */ static int getloadavg_initialized; /* Offset in kmem to seek to read load average, or 0 means invalid. */ static long offset; #if !defined(VMS) && !defined(sgi) && !defined(__linux__) static struct nlist nl[2]; #endif /* Not VMS or sgi */ #ifdef SUNOS_5 static kvm_t *kd; #endif /* SUNOS_5 */ #endif /* LOAD_AVE_TYPE && !HAVE_LIBKSTAT */ /* Put the 1 minute, 5 minute and 15 minute load averages into the first NELEM elements of LOADAVG. Return the number written (never more than 3, but may be less than NELEM), or -1 if an error occurred. */ int getloadavg (double loadavg[], int nelem) { int elem = 0; /* Return value. */ # ifdef NO_GET_LOAD_AVG # define LDAV_DONE /* Set errno to zero to indicate that there was no particular error; this function just can't work at all on this system. */ errno = 0; elem = -1; # endif # if !defined (LDAV_DONE) && defined (HAVE_LIBKSTAT) /* Use libkstat because we don't have to be root. */ # define LDAV_DONE kstat_ctl_t *kc; kstat_t *ksp; kstat_named_t *kn; kc = kstat_open (); if (kc == 0) return -1; ksp = kstat_lookup (kc, "unix", 0, "system_misc"); if (ksp == 0 ) return -1; if (kstat_read (kc, ksp, 0) == -1) return -1; kn = kstat_data_lookup (ksp, "avenrun_1min"); if (kn == 0) { /* Return -1 if no load average information is available. */ nelem = 0; elem = -1; } if (nelem >= 1) loadavg[elem++] = (double) kn->value.ul/FSCALE; if (nelem >= 2) { kn = kstat_data_lookup (ksp, "avenrun_5min"); if (kn != 0) { loadavg[elem++] = (double) kn->value.ul/FSCALE; if (nelem >= 3) { kn = kstat_data_lookup (ksp, "avenrun_15min"); if (kn != 0) loadavg[elem++] = (double) kn->value.ul/FSCALE; } } } kstat_close (kc); # endif /* HAVE_LIBKSTAT */ # if !defined (LDAV_DONE) && defined (hpux) && defined (HAVE_PSTAT_GETDYNAMIC) /* Use pstat_getdynamic() because we don't have to be root. */ # define LDAV_DONE # undef LOAD_AVE_TYPE struct pst_dynamic dyn_info; if (pstat_getdynamic (&dyn_info, sizeof (dyn_info), 0, 0) < 0) return -1; if (nelem > 0) loadavg[elem++] = dyn_info.psd_avg_1_min; if (nelem > 1) loadavg[elem++] = dyn_info.psd_avg_5_min; if (nelem > 2) loadavg[elem++] = dyn_info.psd_avg_15_min; # endif /* hpux && HAVE_PSTAT_GETDYNAMIC */ # if !defined (LDAV_DONE) && defined (__linux__) # define LDAV_DONE # undef LOAD_AVE_TYPE # ifndef LINUX_LDAV_FILE # define LINUX_LDAV_FILE "/proc/loadavg" # endif char ldavgbuf[40]; double load_ave[3]; int fd, count; fd = open (LINUX_LDAV_FILE, O_RDONLY); if (fd == -1) return -1; count = read (fd, ldavgbuf, 40); (void) close (fd); if (count <= 0) return -1; /* The following sscanf must use the C locale. */ setlocale (LC_NUMERIC, "C"); count = sscanf (ldavgbuf, "%lf %lf %lf", &load_ave[0], &load_ave[1], &load_ave[2]); setlocale (LC_NUMERIC, ""); if (count < 1) return -1; for (elem = 0; elem < nelem && elem < count; elem++) loadavg[elem] = load_ave[elem]; return elem; # endif /* __linux__ */ # if !defined (LDAV_DONE) && defined (__NetBSD__) # define LDAV_DONE # undef LOAD_AVE_TYPE # ifndef NETBSD_LDAV_FILE # define NETBSD_LDAV_FILE "/kern/loadavg" # endif unsigned long int load_ave[3], scale; int count; FILE *fp; fp = fopen (NETBSD_LDAV_FILE, "r"); if (fp == NULL) return -1; count = fscanf (fp, "%lu %lu %lu %lu\n", &load_ave[0], &load_ave[1], &load_ave[2], &scale); (void) fclose (fp); if (count != 4) return -1; for (elem = 0; elem < nelem; elem++) loadavg[elem] = (double) load_ave[elem] / (double) scale; return elem; # endif /* __NetBSD__ */ # if !defined (LDAV_DONE) && defined (NeXT) # define LDAV_DONE /* The NeXT code was adapted from iscreen 3.2. */ host_t host; struct processor_set_basic_info info; unsigned info_count; /* We only know how to get the 1-minute average for this system, so even if the caller asks for more than 1, we only return 1. */ if (!getloadavg_initialized) { if (processor_set_default (host_self (), &default_set) == KERN_SUCCESS) getloadavg_initialized = 1; } if (getloadavg_initialized) { info_count = PROCESSOR_SET_BASIC_INFO_COUNT; if (processor_set_info (default_set, PROCESSOR_SET_BASIC_INFO, &host, (processor_set_info_t) &info, &info_count) != KERN_SUCCESS) getloadavg_initialized = 0; else { if (nelem > 0) loadavg[elem++] = (double) info.load_average / LOAD_SCALE; } } if (!getloadavg_initialized) return -1; # endif /* NeXT */ # if !defined (LDAV_DONE) && defined (UMAX) # define LDAV_DONE /* UMAX 4.2, which runs on the Encore Multimax multiprocessor, does not have a /dev/kmem. Information about the workings of the running kernel can be gathered with inq_stats system calls. We only know how to get the 1-minute average for this system. */ struct proc_summary proc_sum_data; struct stat_descr proc_info; double load; register unsigned int i, j; if (cpus == 0) { register unsigned int c, i; struct cpu_config conf; struct stat_descr desc; desc.sd_next = 0; desc.sd_subsys = SUBSYS_CPU; desc.sd_type = CPUTYPE_CONFIG; desc.sd_addr = (char *) &conf; desc.sd_size = sizeof conf; if (inq_stats (1, &desc)) return -1; c = 0; for (i = 0; i < conf.config_maxclass; ++i) { struct class_stats stats; bzero ((char *) &stats, sizeof stats); desc.sd_type = CPUTYPE_CLASS; desc.sd_objid = i; desc.sd_addr = (char *) &stats; desc.sd_size = sizeof stats; if (inq_stats (1, &desc)) return -1; c += stats.class_numcpus; } cpus = c; samples = cpus < 2 ? 3 : (2 * cpus / 3); } proc_info.sd_next = 0; proc_info.sd_subsys = SUBSYS_PROC; proc_info.sd_type = PROCTYPE_SUMMARY; proc_info.sd_addr = (char *) &proc_sum_data; proc_info.sd_size = sizeof (struct proc_summary); proc_info.sd_sizeused = 0; if (inq_stats (1, &proc_info) != 0) return -1; load = proc_sum_data.ps_nrunnable; j = 0; for (i = samples - 1; i > 0; --i) { load += proc_sum_data.ps_nrun[j]; if (j++ == PS_NRUNSIZE) j = 0; } if (nelem > 0) loadavg[elem++] = load / samples / cpus; # endif /* UMAX */ # if !defined (LDAV_DONE) && defined (DGUX) # define LDAV_DONE /* This call can return -1 for an error, but with good args it's not supposed to fail. The first argument is for no apparent reason of type `long int *'. */ dg_sys_info ((long int *) &load_info, DG_SYS_INFO_LOAD_INFO_TYPE, DG_SYS_INFO_LOAD_VERSION_0); if (nelem > 0) loadavg[elem++] = load_info.one_minute; if (nelem > 1) loadavg[elem++] = load_info.five_minute; if (nelem > 2) loadavg[elem++] = load_info.fifteen_minute; # endif /* DGUX */ # if !defined (LDAV_DONE) && defined (apollo) # define LDAV_DONE /* Apollo code from lisch@mentorg.com (Ray Lischner). This system call is not documented. The load average is obtained as three long integers, for the load average over the past minute, five minutes, and fifteen minutes. Each value is a scaled integer, with 16 bits of integer part and 16 bits of fraction part. I'm not sure which operating system first supported this system call, but I know that SR10.2 supports it. */ extern void proc1_$get_loadav (); unsigned long load_ave[3]; proc1_$get_loadav (load_ave); if (nelem > 0) loadavg[elem++] = load_ave[0] / 65536.0; if (nelem > 1) loadavg[elem++] = load_ave[1] / 65536.0; if (nelem > 2) loadavg[elem++] = load_ave[2] / 65536.0; # endif /* apollo */ # if !defined (LDAV_DONE) && defined (OSF_MIPS) # define LDAV_DONE struct tbl_loadavg load_ave; table (TBL_LOADAVG, 0, &load_ave, 1, sizeof (load_ave)); loadavg[elem++] = (load_ave.tl_lscale == 0 ? load_ave.tl_avenrun.d[0] : (load_ave.tl_avenrun.l[0] / (double) load_ave.tl_lscale)); # endif /* OSF_MIPS */ # if !defined (LDAV_DONE) && (defined (__MSDOS__) || defined (WINDOWS32)) # define LDAV_DONE /* A faithful emulation is going to have to be saved for a rainy day. */ for ( ; elem < nelem; elem++) { loadavg[elem] = 0.0; } # endif /* __MSDOS__ || WINDOWS32 */ # if !defined (LDAV_DONE) && defined (OSF_ALPHA) # define LDAV_DONE struct tbl_loadavg load_ave; table (TBL_LOADAVG, 0, &load_ave, 1, sizeof (load_ave)); for (elem = 0; elem < nelem; elem++) loadavg[elem] = (load_ave.tl_lscale == 0 ? load_ave.tl_avenrun.d[elem] : (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale)); # endif /* OSF_ALPHA */ # if !defined (LDAV_DONE) && defined (VMS) /* VMS specific code -- read from the Load Ave driver. */ LOAD_AVE_TYPE load_ave[3]; static int getloadavg_initialized = 0; # ifdef eunice struct { int dsc$w_length; char *dsc$a_pointer; } descriptor; # endif /* Ensure that there is a channel open to the load ave device. */ if (!getloadavg_initialized) { /* Attempt to open the channel. */ # ifdef eunice descriptor.dsc$w_length = 18; descriptor.dsc$a_pointer = "$$VMS_LOAD_AVERAGE"; # else $DESCRIPTOR (descriptor, "LAV0:"); # endif if (sys$assign (&descriptor, &channel, 0, 0) & 1) getloadavg_initialized = 1; } /* Read the load average vector. */ if (getloadavg_initialized && !(sys$qiow (0, channel, IO$_READVBLK, 0, 0, 0, load_ave, 12, 0, 0, 0, 0) & 1)) { sys$dassgn (channel); getloadavg_initialized = 0; } if (!getloadavg_initialized) return -1; # endif /* VMS */ # if !defined (LDAV_DONE) && defined(LOAD_AVE_TYPE) && !defined(VMS) /* UNIX-specific code -- read the average from /dev/kmem. */ # define LDAV_PRIVILEGED /* This code requires special installation. */ LOAD_AVE_TYPE load_ave[3]; /* Get the address of LDAV_SYMBOL. */ if (offset == 0) { # ifndef sgi # ifndef NLIST_STRUCT strcpy (nl[0].n_name, LDAV_SYMBOL); strcpy (nl[1].n_name, ""); # else /* NLIST_STRUCT */ # ifdef HAVE_STRUCT_NLIST_N_UN_N_NAME nl[0].n_un.n_name = LDAV_SYMBOL; nl[1].n_un.n_name = 0; # else /* not HAVE_STRUCT_NLIST_N_UN_N_NAME */ nl[0].n_name = LDAV_SYMBOL; nl[1].n_name = 0; # endif /* not HAVE_STRUCT_NLIST_N_UN_N_NAME */ # endif /* NLIST_STRUCT */ # ifndef SUNOS_5 if ( # if !(defined (_AIX) && !defined (ps2)) nlist (KERNEL_FILE, nl) # else /* _AIX */ knlist (nl, 1, sizeof (nl[0])) # endif >= 0) /* Omit "&& nl[0].n_type != 0 " -- it breaks on Sun386i. */ { # ifdef FIXUP_KERNEL_SYMBOL_ADDR FIXUP_KERNEL_SYMBOL_ADDR (nl); # endif offset = nl[0].n_value; } # endif /* !SUNOS_5 */ # else /* sgi */ int ldav_off; ldav_off = sysmp (MP_KERNADDR, MPKA_AVENRUN); if (ldav_off != -1) offset = (long) ldav_off & 0x7fffffff; # endif /* sgi */ } /* Make sure we have /dev/kmem open. */ if (!getloadavg_initialized) { # ifndef SUNOS_5 channel = open ("/dev/kmem", 0); if (channel >= 0) { /* Set the channel to close on exec, so it does not litter any child's descriptor table. */ # ifdef F_SETFD # ifndef FD_CLOEXEC # define FD_CLOEXEC 1 # endif (void) fcntl (channel, F_SETFD, FD_CLOEXEC); # endif getloadavg_initialized = 1; } # else /* SUNOS_5 */ /* We pass 0 for the kernel, corefile, and swapfile names to use the currently running kernel. */ kd = kvm_open (0, 0, 0, O_RDONLY, 0); if (kd != 0) { /* nlist the currently running kernel. */ kvm_nlist (kd, nl); offset = nl[0].n_value; getloadavg_initialized = 1; } # endif /* SUNOS_5 */ } /* If we can, get the load average values. */ if (offset && getloadavg_initialized) { /* Try to read the load. */ # ifndef SUNOS_5 if (lseek (channel, offset, 0) == -1L || read (channel, (char *) load_ave, sizeof (load_ave)) != sizeof (load_ave)) { close (channel); getloadavg_initialized = 0; } # else /* SUNOS_5 */ if (kvm_read (kd, offset, (char *) load_ave, sizeof (load_ave)) != sizeof (load_ave)) { kvm_close (kd); getloadavg_initialized = 0; } # endif /* SUNOS_5 */ } if (offset == 0 || !getloadavg_initialized) return -1; # endif /* LOAD_AVE_TYPE and not VMS */ # if !defined (LDAV_DONE) && defined (LOAD_AVE_TYPE) /* Including VMS. */ if (nelem > 0) loadavg[elem++] = LDAV_CVT (load_ave[0]); if (nelem > 1) loadavg[elem++] = LDAV_CVT (load_ave[1]); if (nelem > 2) loadavg[elem++] = LDAV_CVT (load_ave[2]); # define LDAV_DONE # endif /* !LDAV_DONE && LOAD_AVE_TYPE */ # ifdef LDAV_DONE return elem; # else /* Set errno to zero to indicate that there was no particular error; this function just can't work at all on this system. */ errno = 0; return -1; # endif } #endif /* ! HAVE_GETLOADAVG */ #ifdef TEST #include "make.h" int main (int argc, char **argv) { int naptime = 0; if (argc > 1) naptime = atoi (argv[1]); while (1) { double avg[3]; int loads; errno = 0; /* Don't be misled if it doesn't set errno. */ loads = getloadavg (avg, 3); if (loads == -1) { perror ("Error getting load average"); exit (1); } if (loads > 0) printf ("1-minute: %f ", avg[0]); if (loads > 1) printf ("5-minute: %f ", avg[1]); if (loads > 2) printf ("15-minute: %f ", avg[2]); if (loads > 0) putchar ('\n'); if (naptime == 0) break; sleep (naptime); } exit (0); } #endif /* TEST */ make-dfsg-3.81.orig/getopt.c0000644000175000017500000007225210416553102016167 0ustar srivastasrivasta/* Getopt for GNU. NOTE: getopt is now part of the C library, so if you don't know what "Keep this file name-space clean" means, talk to drepper@gnu.org before changing it! Copyright (C) 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@gnu.org. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* This tells Alpha OSF/1 not to define a getopt prototype in . Ditto for AIX 3.2 and . */ #ifndef _NO_PROTO # define _NO_PROTO #endif #ifdef HAVE_CONFIG_H # include #endif #if !defined __STDC__ || !__STDC__ /* This is a separate conditional since some stdc systems reject `defined (const)'. */ # ifndef const # define const # endif #endif #include /* Comment out all this code if we are using the GNU C Library, and are not actually compiling the library itself. This code is part of the GNU C Library, but also included in many other GNU distributions. Compiling and linking in this code is a waste when using the GNU C library (especially if it is a shared library). Rather than having every GNU program understand `configure --with-gnu-libc' and omit the object files, it is simpler to just do this in the source for each such file. */ #define GETOPT_INTERFACE_VERSION 2 #if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 # include # if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION # define ELIDE_CODE # endif #endif #ifndef ELIDE_CODE /* This needs to come after some library #include to get __GNU_LIBRARY__ defined. */ #ifdef __GNU_LIBRARY__ /* Don't include stdlib.h for non-GNU C libraries because some of them contain conflicting prototypes for getopt. */ # include # include #endif /* GNU C library. */ #ifdef VMS # include # if HAVE_STRING_H - 0 # include # endif #endif /* This is for other GNU distributions with internationalized messages. When compiling libc, the _ macro is predefined. */ #include "gettext.h" #define _(msgid) gettext (msgid) /* This version of `getopt' appears to the caller like standard Unix `getopt' but it behaves differently for the user, since it allows the user to intersperse the options with the other arguments. As `getopt' works, it permutes the elements of ARGV so that, when it is done, all the options precede everything else. Thus all application programs are extended to handle flexible argument order. Setting the environment variable POSIXLY_CORRECT disables permutation. Then the behavior is completely standard. GNU application programs can use a third alternative mode in which they can distinguish the relative order of options and other arguments. */ #include "getopt.h" /* For communication from `getopt' to the caller. When `getopt' finds an option that takes an argument, the argument value is returned here. Also, when `ordering' is RETURN_IN_ORDER, each non-option ARGV-element is returned here. */ char *optarg = NULL; /* Index in ARGV of the next element to be scanned. This is used for communication to and from the caller and for communication between successive calls to `getopt'. On entry to `getopt', zero means this is the first call; initialize. When `getopt' returns -1, this is the index of the first of the non-option elements that the caller should itself scan. Otherwise, `optind' communicates from one call to the next how much of ARGV has been scanned so far. */ /* 1003.2 says this must be 1 before any call. */ int optind = 1; /* Formerly, initialization of getopt depended on optind==0, which causes problems with re-calling getopt as programs generally don't know that. */ int __getopt_initialized = 0; /* The next char to be scanned in the option-element in which the last option character we returned was found. This allows us to pick up the scan where we left off. If this is zero, or a null string, it means resume the scan by advancing to the next ARGV-element. */ static char *nextchar; /* Callers store zero here to inhibit the error message for unrecognized options. */ int opterr = 1; /* Set to an option character which was unrecognized. This must be initialized on some systems to avoid linking in the system's own getopt implementation. */ int optopt = '?'; /* Describe how to deal with options that follow non-option ARGV-elements. If the caller did not specify anything, the default is REQUIRE_ORDER if the environment variable POSIXLY_CORRECT is defined, PERMUTE otherwise. REQUIRE_ORDER means don't recognize them as options; stop option processing when the first non-option is seen. This is what Unix does. This mode of operation is selected by either setting the environment variable POSIXLY_CORRECT, or using `+' as the first character of the list of option characters. PERMUTE is the default. We permute the contents of ARGV as we scan, so that eventually all the non-options are at the end. This allows options to be given in any order, even with programs that were not written to expect this. RETURN_IN_ORDER is an option available to programs that were written to expect options and other ARGV-elements in any order and that care about the ordering of the two. We describe each non-option ARGV-element as if it were the argument of an option with character code 1. Using `-' as the first character of the list of option characters selects this mode of operation. The special argument `--' forces an end of option-scanning regardless of the value of `ordering'. In the case of RETURN_IN_ORDER, only `--' can cause `getopt' to return -1 with `optind' != ARGC. */ static enum { REQUIRE_ORDER, PERMUTE, RETURN_IN_ORDER } ordering; /* Value of POSIXLY_CORRECT environment variable. */ static char *posixly_correct; #ifdef __GNU_LIBRARY__ /* We want to avoid inclusion of string.h with non-GNU libraries because there are many ways it can cause trouble. On some systems, it contains special magic macros that don't work in GCC. */ # include # define my_index strchr #else # if HAVE_STRING_H # include # else # include # endif /* Avoid depending on library functions or files whose names are inconsistent. */ #ifndef getenv extern char *getenv (); #endif static char * my_index (const char *str, int chr) { while (*str) { if (*str == chr) return (char *) str; str++; } return 0; } /* If using GCC, we can safely declare strlen this way. If not using GCC, it is ok not to declare it. */ #ifdef __GNUC__ /* Note that Motorola Delta 68k R3V7 comes with GCC but not stddef.h. That was relevant to code that was here before. */ # if (!defined __STDC__ || !__STDC__) && !defined strlen /* gcc with -traditional declares the built-in strlen to return int, and has done so at least since version 2.4.5. -- rms. */ extern int strlen (const char *); # endif /* not __STDC__ */ #endif /* __GNUC__ */ #endif /* not __GNU_LIBRARY__ */ /* Handle permutation of arguments. */ /* Describe the part of ARGV that contains non-options that have been skipped. `first_nonopt' is the index in ARGV of the first of them; `last_nonopt' is the index after the last of them. */ static int first_nonopt; static int last_nonopt; #ifdef _LIBC /* Bash 2.0 gives us an environment variable containing flags indicating ARGV elements that should not be considered arguments. */ /* Defined in getopt_init.c */ extern char *__getopt_nonoption_flags; static int nonoption_flags_max_len; static int nonoption_flags_len; static int original_argc; static char *const *original_argv; /* Make sure the environment variable bash 2.0 puts in the environment is valid for the getopt call we must make sure that the ARGV passed to getopt is that one passed to the process. */ static void __attribute__ ((unused)) store_args_and_env (int argc, char *const *argv) { /* XXX This is no good solution. We should rather copy the args so that we can compare them later. But we must not use malloc(3). */ original_argc = argc; original_argv = argv; } # ifdef text_set_element text_set_element (__libc_subinit, store_args_and_env); # endif /* text_set_element */ # define SWAP_FLAGS(ch1, ch2) \ if (nonoption_flags_len > 0) \ { \ char __tmp = __getopt_nonoption_flags[ch1]; \ __getopt_nonoption_flags[ch1] = __getopt_nonoption_flags[ch2]; \ __getopt_nonoption_flags[ch2] = __tmp; \ } #else /* !_LIBC */ # define SWAP_FLAGS(ch1, ch2) #endif /* _LIBC */ /* Exchange two adjacent subsequences of ARGV. One subsequence is elements [first_nonopt,last_nonopt) which contains all the non-options that have been skipped so far. The other is elements [last_nonopt,optind), which contains all the options processed since those non-options were skipped. `first_nonopt' and `last_nonopt' are relocated so that they describe the new indices of the non-options in ARGV after they are moved. */ #if defined __STDC__ && __STDC__ static void exchange (char **); #endif static void exchange (char **argv) { int bottom = first_nonopt; int middle = last_nonopt; int top = optind; char *tem; /* Exchange the shorter segment with the far end of the longer segment. That puts the shorter segment into the right place. It leaves the longer segment in the right place overall, but it consists of two parts that need to be swapped next. */ #ifdef _LIBC /* First make sure the handling of the `__getopt_nonoption_flags' string can work normally. Our top argument must be in the range of the string. */ if (nonoption_flags_len > 0 && top >= nonoption_flags_max_len) { /* We must extend the array. The user plays games with us and presents new arguments. */ char *new_str = malloc (top + 1); if (new_str == NULL) nonoption_flags_len = nonoption_flags_max_len = 0; else { memset (__mempcpy (new_str, __getopt_nonoption_flags, nonoption_flags_max_len), '\0', top + 1 - nonoption_flags_max_len); nonoption_flags_max_len = top + 1; __getopt_nonoption_flags = new_str; } } #endif while (top > middle && middle > bottom) { if (top - middle > middle - bottom) { /* Bottom segment is the short one. */ int len = middle - bottom; register int i; /* Swap it with the top part of the top segment. */ for (i = 0; i < len; i++) { tem = argv[bottom + i]; argv[bottom + i] = argv[top - (middle - bottom) + i]; argv[top - (middle - bottom) + i] = tem; SWAP_FLAGS (bottom + i, top - (middle - bottom) + i); } /* Exclude the moved bottom segment from further swapping. */ top -= len; } else { /* Top segment is the short one. */ int len = top - middle; register int i; /* Swap it with the bottom part of the bottom segment. */ for (i = 0; i < len; i++) { tem = argv[bottom + i]; argv[bottom + i] = argv[middle + i]; argv[middle + i] = tem; SWAP_FLAGS (bottom + i, middle + i); } /* Exclude the moved top segment from further swapping. */ bottom += len; } } /* Update records for the slots the non-options now occupy. */ first_nonopt += (optind - last_nonopt); last_nonopt = optind; } /* Initialize the internal data when the first call is made. */ #if defined __STDC__ && __STDC__ static const char *_getopt_initialize (int, char *const *, const char *); #endif static const char * _getopt_initialize (int argc, char *const *argv, const char *optstring) { /* Start processing options with ARGV-element 1 (since ARGV-element 0 is the program name); the sequence of previously skipped non-option ARGV-elements is empty. */ first_nonopt = last_nonopt = optind; nextchar = NULL; posixly_correct = getenv ("POSIXLY_CORRECT"); /* Determine how to handle the ordering of options and nonoptions. */ if (optstring[0] == '-') { ordering = RETURN_IN_ORDER; ++optstring; } else if (optstring[0] == '+') { ordering = REQUIRE_ORDER; ++optstring; } else if (posixly_correct != NULL) ordering = REQUIRE_ORDER; else ordering = PERMUTE; #ifdef _LIBC if (posixly_correct == NULL && argc == original_argc && argv == original_argv) { if (nonoption_flags_max_len == 0) { if (__getopt_nonoption_flags == NULL || __getopt_nonoption_flags[0] == '\0') nonoption_flags_max_len = -1; else { const char *orig_str = __getopt_nonoption_flags; int len = nonoption_flags_max_len = strlen (orig_str); if (nonoption_flags_max_len < argc) nonoption_flags_max_len = argc; __getopt_nonoption_flags = (char *) malloc (nonoption_flags_max_len); if (__getopt_nonoption_flags == NULL) nonoption_flags_max_len = -1; else memset (__mempcpy (__getopt_nonoption_flags, orig_str, len), '\0', nonoption_flags_max_len - len); } } nonoption_flags_len = nonoption_flags_max_len; } else nonoption_flags_len = 0; #endif return optstring; } /* Scan elements of ARGV (whose length is ARGC) for option characters given in OPTSTRING. If an element of ARGV starts with '-', and is not exactly "-" or "--", then it is an option element. The characters of this element (aside from the initial '-') are option characters. If `getopt' is called repeatedly, it returns successively each of the option characters from each of the option elements. If `getopt' finds another option character, it returns that character, updating `optind' and `nextchar' so that the next call to `getopt' can resume the scan with the following option character or ARGV-element. If there are no more option characters, `getopt' returns -1. Then `optind' is the index in ARGV of the first ARGV-element that is not an option. (The ARGV-elements have been permuted so that those that are not options now come last.) OPTSTRING is a string containing the legitimate option characters. If an option character is seen that is not listed in OPTSTRING, return '?' after printing an error message. If you set `opterr' to zero, the error message is suppressed but we still return '?'. If a char in OPTSTRING is followed by a colon, that means it wants an arg, so the following text in the same ARGV-element, or the text of the following ARGV-element, is returned in `optarg'. Two colons mean an option that wants an optional arg; if there is text in the current ARGV-element, it is returned in `optarg', otherwise `optarg' is set to zero. If OPTSTRING starts with `-' or `+', it requests different methods of handling the non-option ARGV-elements. See the comments about RETURN_IN_ORDER and REQUIRE_ORDER, above. Long-named options begin with `--' instead of `-'. Their names may be abbreviated as long as the abbreviation is unique or is an exact match for some defined option. If they have an argument, it follows the option name in the same ARGV-element, separated from the option name by a `=', or else the in next ARGV-element. When `getopt' finds a long-named option, it returns 0 if that option's `flag' field is nonzero, the value of the option's `val' field if the `flag' field is zero. The elements of ARGV aren't really const, because we permute them. But we pretend they're const in the prototype to be compatible with other systems. LONGOPTS is a vector of `struct option' terminated by an element containing a name which is zero. LONGIND returns the index in LONGOPT of the long-named option found. It is only valid when a long-named option has been found by the most recent call. If LONG_ONLY is nonzero, '-' as well as '--' can introduce long-named options. */ int _getopt_internal (int argc, char *const *argv, const char *optstring, const struct option *longopts, int *longind, int long_only) { optarg = NULL; if (optind == 0 || !__getopt_initialized) { if (optind == 0) optind = 1; /* Don't scan ARGV[0], the program name. */ optstring = _getopt_initialize (argc, argv, optstring); __getopt_initialized = 1; } /* Test whether ARGV[optind] points to a non-option argument. Either it does not have option syntax, or there is an environment flag from the shell indicating it is not an option. The later information is only used when the used in the GNU libc. */ #ifdef _LIBC # define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0' \ || (optind < nonoption_flags_len \ && __getopt_nonoption_flags[optind] == '1')) #else # define NONOPTION_P (argv[optind][0] != '-' || argv[optind][1] == '\0') #endif if (nextchar == NULL || *nextchar == '\0') { /* Advance to the next ARGV-element. */ /* Give FIRST_NONOPT & LAST_NONOPT rational values if OPTIND has been moved back by the user (who may also have changed the arguments). */ if (last_nonopt > optind) last_nonopt = optind; if (first_nonopt > optind) first_nonopt = optind; if (ordering == PERMUTE) { /* If we have just processed some options following some non-options, exchange them so that the options come first. */ if (first_nonopt != last_nonopt && last_nonopt != optind) exchange ((char **) argv); else if (last_nonopt != optind) first_nonopt = optind; /* Skip any additional non-options and extend the range of non-options previously skipped. */ while (optind < argc && NONOPTION_P) optind++; last_nonopt = optind; } /* The special ARGV-element `--' means premature end of options. Skip it like a null option, then exchange with previous non-options as if it were an option, then skip everything else like a non-option. */ if (optind != argc && !strcmp (argv[optind], "--")) { optind++; if (first_nonopt != last_nonopt && last_nonopt != optind) exchange ((char **) argv); else if (first_nonopt == last_nonopt) first_nonopt = optind; last_nonopt = argc; optind = argc; } /* If we have done all the ARGV-elements, stop the scan and back over any non-options that we skipped and permuted. */ if (optind == argc) { /* Set the next-arg-index to point at the non-options that we previously skipped, so the caller will digest them. */ if (first_nonopt != last_nonopt) optind = first_nonopt; return -1; } /* If we have come to a non-option and did not permute it, either stop the scan or describe it to the caller and pass it by. */ if (NONOPTION_P) { if (ordering == REQUIRE_ORDER) return -1; optarg = argv[optind++]; return 1; } /* We have found another option-ARGV-element. Skip the initial punctuation. */ nextchar = (argv[optind] + 1 + (longopts != NULL && argv[optind][1] == '-')); } /* Decode the current option-ARGV-element. */ /* Check whether the ARGV-element is a long option. If long_only and the ARGV-element has the form "-f", where f is a valid short option, don't consider it an abbreviated form of a long option that starts with f. Otherwise there would be no way to give the -f short option. On the other hand, if there's a long option "fubar" and the ARGV-element is "-fu", do consider that an abbreviation of the long option, just like "--fu", and not "-f" with arg "u". This distinction seems to be the most useful approach. */ if (longopts != NULL && (argv[optind][1] == '-' || (long_only && (argv[optind][2] || !my_index (optstring, argv[optind][1]))))) { char *nameend; const struct option *p; const struct option *pfound = NULL; int exact = 0; int ambig = 0; int indfound = -1; int option_index; for (nameend = nextchar; *nameend && *nameend != '='; nameend++) /* Do nothing. */ ; /* Test all long options for either exact match or abbreviated matches. */ for (p = longopts, option_index = 0; p->name; p++, option_index++) if (!strncmp (p->name, nextchar, nameend - nextchar)) { if ((unsigned int) (nameend - nextchar) == (unsigned int) strlen (p->name)) { /* Exact match found. */ pfound = p; indfound = option_index; exact = 1; break; } else if (pfound == NULL) { /* First nonexact match found. */ pfound = p; indfound = option_index; } else /* Second or later nonexact match found. */ ambig = 1; } if (ambig && !exact) { if (opterr) fprintf (stderr, _("%s: option `%s' is ambiguous\n"), argv[0], argv[optind]); nextchar += strlen (nextchar); optind++; optopt = 0; return '?'; } if (pfound != NULL) { option_index = indfound; optind++; if (*nameend) { /* Don't test has_arg with >, because some C compilers don't allow it to be used on enums. */ if (pfound->has_arg) optarg = nameend + 1; else { if (opterr) if (argv[optind - 1][1] == '-') /* --option */ fprintf (stderr, _("%s: option `--%s' doesn't allow an argument\n"), argv[0], pfound->name); else /* +option or -option */ fprintf (stderr, _("%s: option `%c%s' doesn't allow an argument\n"), argv[0], argv[optind - 1][0], pfound->name); nextchar += strlen (nextchar); optopt = pfound->val; return '?'; } } else if (pfound->has_arg == 1) { if (optind < argc) optarg = argv[optind++]; else { if (opterr) fprintf (stderr, _("%s: option `%s' requires an argument\n"), argv[0], argv[optind - 1]); nextchar += strlen (nextchar); optopt = pfound->val; return optstring[0] == ':' ? ':' : '?'; } } nextchar += strlen (nextchar); if (longind != NULL) *longind = option_index; if (pfound->flag) { *(pfound->flag) = pfound->val; return 0; } return pfound->val; } /* Can't find it as a long option. If this is not getopt_long_only, or the option starts with '--' or is not a valid short option, then it's an error. Otherwise interpret it as a short option. */ if (!long_only || argv[optind][1] == '-' || my_index (optstring, *nextchar) == NULL) { if (opterr) { if (argv[optind][1] == '-') /* --option */ fprintf (stderr, _("%s: unrecognized option `--%s'\n"), argv[0], nextchar); else /* +option or -option */ fprintf (stderr, _("%s: unrecognized option `%c%s'\n"), argv[0], argv[optind][0], nextchar); } nextchar = (char *) ""; optind++; optopt = 0; return '?'; } } /* Look at and handle the next short option-character. */ { char c = *nextchar++; char *temp = my_index (optstring, c); /* Increment `optind' when we start to process its last character. */ if (*nextchar == '\0') ++optind; if (temp == NULL || c == ':') { if (opterr) { if (posixly_correct) /* 1003.2 specifies the format of this message. */ fprintf (stderr, _("%s: illegal option -- %c\n"), argv[0], c); else fprintf (stderr, _("%s: invalid option -- %c\n"), argv[0], c); } optopt = c; return '?'; } /* Convenience. Treat POSIX -W foo same as long option --foo */ if (temp[0] == 'W' && temp[1] == ';') { char *nameend; const struct option *p; const struct option *pfound = NULL; int exact = 0; int ambig = 0; int indfound = 0; int option_index; /* This is an option that requires an argument. */ if (*nextchar != '\0') { optarg = nextchar; /* If we end this ARGV-element by taking the rest as an arg, we must advance to the next element now. */ optind++; } else if (optind == argc) { if (opterr) { /* 1003.2 specifies the format of this message. */ fprintf (stderr, _("%s: option requires an argument -- %c\n"), argv[0], c); } optopt = c; if (optstring[0] == ':') c = ':'; else c = '?'; return c; } else /* We already incremented `optind' once; increment it again when taking next ARGV-elt as argument. */ optarg = argv[optind++]; /* optarg is now the argument, see if it's in the table of longopts. */ for (nextchar = nameend = optarg; *nameend && *nameend != '='; nameend++) /* Do nothing. */ ; /* Test all long options for either exact match or abbreviated matches. */ for (p = longopts, option_index = 0; p->name; p++, option_index++) if (!strncmp (p->name, nextchar, nameend - nextchar)) { if ((unsigned int) (nameend - nextchar) == strlen (p->name)) { /* Exact match found. */ pfound = p; indfound = option_index; exact = 1; break; } else if (pfound == NULL) { /* First nonexact match found. */ pfound = p; indfound = option_index; } else /* Second or later nonexact match found. */ ambig = 1; } if (ambig && !exact) { if (opterr) fprintf (stderr, _("%s: option `-W %s' is ambiguous\n"), argv[0], argv[optind]); nextchar += strlen (nextchar); optind++; return '?'; } if (pfound != NULL) { option_index = indfound; if (*nameend) { /* Don't test has_arg with >, because some C compilers don't allow it to be used on enums. */ if (pfound->has_arg) optarg = nameend + 1; else { if (opterr) fprintf (stderr, _("\ %s: option `-W %s' doesn't allow an argument\n"), argv[0], pfound->name); nextchar += strlen (nextchar); return '?'; } } else if (pfound->has_arg == 1) { if (optind < argc) optarg = argv[optind++]; else { if (opterr) fprintf (stderr, _("%s: option `%s' requires an argument\n"), argv[0], argv[optind - 1]); nextchar += strlen (nextchar); return optstring[0] == ':' ? ':' : '?'; } } nextchar += strlen (nextchar); if (longind != NULL) *longind = option_index; if (pfound->flag) { *(pfound->flag) = pfound->val; return 0; } return pfound->val; } nextchar = NULL; return 'W'; /* Let the application handle it. */ } if (temp[1] == ':') { if (temp[2] == ':') { /* This is an option that accepts an argument optionally. */ if (*nextchar != '\0') { optarg = nextchar; optind++; } else optarg = NULL; nextchar = NULL; } else { /* This is an option that requires an argument. */ if (*nextchar != '\0') { optarg = nextchar; /* If we end this ARGV-element by taking the rest as an arg, we must advance to the next element now. */ optind++; } else if (optind == argc) { if (opterr) { /* 1003.2 specifies the format of this message. */ fprintf (stderr, _("%s: option requires an argument -- %c\n"), argv[0], c); } optopt = c; if (optstring[0] == ':') c = ':'; else c = '?'; } else /* We already incremented `optind' once; increment it again when taking next ARGV-elt as argument. */ optarg = argv[optind++]; nextchar = NULL; } } return c; } } int getopt (int argc, char *const *argv, const char *optstring) { return _getopt_internal (argc, argv, optstring, (const struct option *) 0, (int *) 0, 0); } #endif /* Not ELIDE_CODE. */ #ifdef TEST /* Compile with -DTEST to make an executable for use in testing the above definition of `getopt'. */ int main (int argc, char **argv) { int c; int digit_optind = 0; while (1) { int this_option_optind = optind ? optind : 1; c = getopt (argc, argv, "abc:d:0123456789"); if (c == -1) break; switch (c) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': if (digit_optind != 0 && digit_optind != this_option_optind) printf ("digits occur in two different argv-elements.\n"); digit_optind = this_option_optind; printf ("option %c\n", c); break; case 'a': printf ("option a\n"); break; case 'b': printf ("option b\n"); break; case 'c': printf ("option c with value `%s'\n", optarg); break; case '?': break; default: printf ("?? getopt returned character code 0%o ??\n", c); } } if (optind < argc) { printf ("non-option ARGV-elements: "); while (optind < argc) printf ("%s ", argv[optind++]); printf ("\n"); } exit (0); } #endif /* TEST */ make-dfsg-3.81.orig/getopt.h0000644000175000017500000001105110416553102016162 0ustar srivastasrivasta/* Declarations for getopt. Copyright (C) 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@gnu.org. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _GETOPT_H #define _GETOPT_H 1 #ifdef __cplusplus extern "C" { #endif /* For communication from `getopt' to the caller. When `getopt' finds an option that takes an argument, the argument value is returned here. Also, when `ordering' is RETURN_IN_ORDER, each non-option ARGV-element is returned here. */ extern char *optarg; /* Index in ARGV of the next element to be scanned. This is used for communication to and from the caller and for communication between successive calls to `getopt'. On entry to `getopt', zero means this is the first call; initialize. When `getopt' returns -1, this is the index of the first of the non-option elements that the caller should itself scan. Otherwise, `optind' communicates from one call to the next how much of ARGV has been scanned so far. */ extern int optind; /* Callers store zero here to inhibit the error message `getopt' prints for unrecognized options. */ extern int opterr; /* Set to an option character which was unrecognized. */ extern int optopt; /* Describe the long-named options requested by the application. The LONG_OPTIONS argument to getopt_long or getopt_long_only is a vector of `struct option' terminated by an element containing a name which is zero. The field `has_arg' is: no_argument (or 0) if the option does not take an argument, required_argument (or 1) if the option requires an argument, optional_argument (or 2) if the option takes an optional argument. If the field `flag' is not NULL, it points to a variable that is set to the value given in the field `val' when the option is found, but left unchanged if the option is not found. To have a long-named option do something other than set an `int' to a compiled-in constant, such as set a value from `optarg', set the option's `flag' field to zero and its `val' field to a nonzero value (the equivalent single-letter option character, if there is one). For long options that have a zero `flag' field, `getopt' returns the contents of the `val' field. */ struct option { #if defined (__STDC__) && __STDC__ const char *name; #else char *name; #endif /* has_arg can't be an enum because some compilers complain about type mismatches in all the code that assumes it is an int. */ int has_arg; int *flag; int val; }; /* Names for the values of the `has_arg' field of `struct option'. */ #define no_argument 0 #define required_argument 1 #define optional_argument 2 #if defined (__STDC__) && __STDC__ #ifdef __GNU_LIBRARY__ /* Many other libraries have conflicting prototypes for getopt, with differences in the consts, in stdlib.h. To avoid compilation errors, only prototype getopt for the GNU C library. */ extern int getopt (int argc, char *const *argv, const char *shortopts); #else /* not __GNU_LIBRARY__ */ extern int getopt (); #endif /* __GNU_LIBRARY__ */ extern int getopt_long (int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind); extern int getopt_long_only (int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind); /* Internal only. Users should not call this directly. */ extern int _getopt_internal (int argc, char *const *argv, const char *shortopts, const struct option *longopts, int *longind, int long_only); #else /* not __STDC__ */ extern int getopt (); extern int getopt_long (); extern int getopt_long_only (); extern int _getopt_internal (); #endif /* __STDC__ */ #ifdef __cplusplus } #endif #endif /* getopt.h */ make-dfsg-3.81.orig/getopt1.c0000644000175000017500000001056710416553102016251 0ustar srivastasrivasta/* getopt_long and getopt_long_only entry points for GNU getopt. Copyright (C) 1987, 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. NOTE: The canonical source of this file is maintained with the GNU C Library. Bugs can be reported to bug-glibc@gnu.org. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifdef HAVE_CONFIG_H #include #endif #include "getopt.h" #if !defined __STDC__ || !__STDC__ /* This is a separate conditional since some stdc systems reject `defined (const)'. */ #ifndef const #define const #endif #endif #include /* Comment out all this code if we are using the GNU C Library, and are not actually compiling the library itself. This code is part of the GNU C Library, but also included in many other GNU distributions. Compiling and linking in this code is a waste when using the GNU C library (especially if it is a shared library). Rather than having every GNU program understand `configure --with-gnu-libc' and omit the object files, it is simpler to just do this in the source for each such file. */ #define GETOPT_INTERFACE_VERSION 2 #if !defined _LIBC && defined __GLIBC__ && __GLIBC__ >= 2 #include #if _GNU_GETOPT_INTERFACE_VERSION == GETOPT_INTERFACE_VERSION #define ELIDE_CODE #endif #endif #ifndef ELIDE_CODE /* This needs to come after some library #include to get __GNU_LIBRARY__ defined. */ #ifdef __GNU_LIBRARY__ #include #endif #ifndef NULL #define NULL 0 #endif int getopt_long (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index) { return _getopt_internal (argc, argv, options, long_options, opt_index, 0); } /* Like getopt_long, but '-' as well as '--' can indicate a long option. If an option that starts with '-' (not '--') doesn't match a long option, but does match a short option, it is parsed as a short option instead. */ int getopt_long_only (int argc, char *const *argv, const char *options, const struct option *long_options, int *opt_index) { return _getopt_internal (argc, argv, options, long_options, opt_index, 1); } #endif /* Not ELIDE_CODE. */ #ifdef TEST #include int main (int argc, char **argv) { int c; int digit_optind = 0; while (1) { int this_option_optind = optind ? optind : 1; int option_index = 0; static struct option long_options[] = { {"add", 1, 0, 0}, {"append", 0, 0, 0}, {"delete", 1, 0, 0}, {"verbose", 0, 0, 0}, {"create", 0, 0, 0}, {"file", 1, 0, 0}, {0, 0, 0, 0} }; c = getopt_long (argc, argv, "abc:d:0123456789", long_options, &option_index); if (c == -1) break; switch (c) { case 0: printf ("option %s", long_options[option_index].name); if (optarg) printf (" with arg %s", optarg); printf ("\n"); break; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': if (digit_optind != 0 && digit_optind != this_option_optind) printf ("digits occur in two different argv-elements.\n"); digit_optind = this_option_optind; printf ("option %c\n", c); break; case 'a': printf ("option a\n"); break; case 'b': printf ("option b\n"); break; case 'c': printf ("option c with value `%s'\n", optarg); break; case 'd': printf ("option d with value `%s'\n", optarg); break; case '?': break; default: printf ("?? getopt returned character code 0%o ??\n", c); } } if (optind < argc) { printf ("non-option ARGV-elements: "); while (optind < argc) printf ("%s ", argv[optind++]); printf ("\n"); } exit (0); } #endif /* TEST */ make-dfsg-3.81.orig/gettext.h0000644000175000017500000000512210416553102016346 0ustar srivastasrivasta/* Convenience header for conditional use of GNU . Copyright (C) 1995, 1996, 1997, 1998, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _LIBGETTEXT_H #define _LIBGETTEXT_H 1 /* NLS can be disabled through the configure --disable-nls option. */ #if ENABLE_NLS /* Get declarations of GNU message catalog functions. */ # include #else /* Disabled NLS. The casts to 'const char *' serve the purpose of producing warnings for invalid uses of the value returned from these functions. On pre-ANSI systems without 'const', the config.h file is supposed to contain "#define const". */ # define gettext(Msgid) ((const char *) (Msgid)) # define dgettext(Domainname, Msgid) ((const char *) (Msgid)) # define dcgettext(Domainname, Msgid, Category) ((const char *) (Msgid)) # define ngettext(Msgid1, Msgid2, N) \ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) # define dngettext(Domainname, Msgid1, Msgid2, N) \ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) # define dcngettext(Domainname, Msgid1, Msgid2, N, Category) \ ((N) == 1 ? (const char *) (Msgid1) : (const char *) (Msgid2)) # define textdomain(Domainname) ((const char *) (Domainname)) # define bindtextdomain(Domainname, Dirname) ((const char *) (Dirname)) # define bind_textdomain_codeset(Domainname, Codeset) ((const char *) (Codeset)) #endif /* A pseudo function call that serves as a marker for the automated extraction of messages, but does not call gettext(). The run-time translation is done at a different place in the code. The argument, String, should be a literal string. Concatenated strings and other string expressions won't work. The macro's expansion is not parenthesized, so that it is suitable as initializer for static 'char[]' or 'const char[]' variables. */ #define gettext_noop(String) String #endif /* _LIBGETTEXT_H */ make-dfsg-3.81.orig/glob/0000755000175000017500000000000010416553102015434 5ustar srivastasrivastamake-dfsg-3.81.orig/glob/COPYING.LIB0000644000175000017500000006125710416553102017107 0ustar srivastasrivasta GNU LIBRARY GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the library GPL. It is numbered 2 because it goes with version 2 of the ordinary GPL.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Library General Public License, applies to some specially designated Free Software Foundation software, and to any other libraries whose authors decide to use it. You can use it for your libraries, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library, or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link a program with the library, you must provide complete object files to the recipients so that they can relink them with the library, after making changes to the library and recompiling it. And you must show them these terms so they know their rights. Our method of protecting your rights has two steps: (1) copyright the library, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the library. Also, for each distributor's protection, we want to make certain that everyone understands that there is no warranty for this free library. If the library is modified by someone else and passed on, we want its recipients to know that what they have is not the original version, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that companies distributing free software will individually obtain patent licenses, thus in effect transforming the program into proprietary software. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License, which was designed for utility programs. This license, the GNU Library General Public License, applies to certain designated libraries. This license is quite different from the ordinary one; be sure to read it in full, and don't assume that anything in it is the same as in the ordinary license. The reason we have a separate public license for some libraries is that they blur the distinction we usually make between modifying or adding to a program and simply using it. Linking a program with a library, without changing the library, is in some sense simply using the library, and is analogous to running a utility program or application program. However, in a textual and legal sense, the linked executable is a combined work, a derivative of the original library, and the ordinary General Public License treats it as such. Because of this blurred distinction, using the ordinary General Public License for libraries did not effectively promote software sharing, because most developers did not use the libraries. We concluded that weaker conditions might promote sharing better. However, unrestricted linking of non-free programs would deprive the users of those programs of all benefit from the free status of the libraries themselves. This Library General Public License is intended to permit developers of non-free programs to use free libraries, while preserving your freedom as a user of such programs to change the free libraries that are incorporated in them. (We have not seen how to achieve this as regards changes in header files, but we have achieved it as regards changes in the actual functions of the Library.) The hope is that this will lead to faster development of free libraries. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, while the latter only works together with the library. Note that it is possible for a library to be covered by the ordinary General Public License rather than by this special one. GNU LIBRARY GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Library General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also compile or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. c) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. d) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Library General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! make-dfsg-3.81.orig/glob/ChangeLog0000644000175000017500000001437010416553102017213 0ustar srivastasrivasta2006-02-24 Eli Zaretskii * glob.c (my_malloc) [WINDOWS32]: Provide a full ISO C prototype, to avoid compiler warnings. 2005-06-25 Paul D. Smith * fnmatch.h, glob.h [WINDOWS32]: Fix ifdefs in headers. Fixes Savannah bug #13477. 2005-03-11 Paul D. Smith * glob.c (glob_in_dir): Change FNM_CASEFOLD to be enabled if HAVE_CASE_INSENSITIVE_FS is defined. 2003-01-30 Paul D. Smith * glob.h: Patch for FreeBSD by Mike Barcroft Reported by Gerald Pfeifer . On FreeBSD, declare __size_t to simply size_t. 2002-04-22 Paul D. Smith * Makefile.am: Use automake 1.6. Use new automake condition USE_LOCAL_GLOB to decide whether or not to build the local GNU glob library or use the system one. 1999-09-12 Paul D. Smith * fnmatch.c: Last GLIBC version wouldn't compile outside of GLIBC (undefined reference to internal_function). Update to the latest version 1999-09-11 Paul Eggert * glob.h (glob): If #defining to glob64, do this before declaring it, so that all declarations and uses match, and do not declare glob64, to avoid a declaration clash. (globfree): Likewise with globfree64. 1999-09-08 Eli Zaretskii * glob.c (prefix_array) [__MSDOS__,WINDOWS32]: Keep the trailing slash unless DIRNAME is just "x:/". 1999-09-06 Paul D. Smith * fnmatch.c: Update to latest version from GLIBC. 1999-07-21 Paul D. Smith * glob.c, glob.h, fnmatch.c, fnmatch.h: Update to latest version from GLIBC. * fnmatch.c (internal_fnmatch): Use K&R definition syntax, not ANSI. (__strchrnul): This won't exist outside GLIBC, so create one. * glob.c: Move getlogin{,_r} prototypes below glob.h to get __P() macro. 1998-08-05 Paul D. Smith * configure.in: Remove; configuration for glob is handled by the make configure.in. 1998-07-29 Paul D. Smith * glob.c, fnmatch.c: New versions from the GLIBC folks (Ulrich Drepper). Fixes a bug reported by Eli Zaretski. Integrates DOS/Windows32 support. 1998-07-27 Kaveh R. Ghazi * glob.c (glob): Cast away const on assignment of pattern to dirname. Cast the return type of __alloca() for traditional C compilers. 1998-07-23 Paul D. Smith * glob.c, fnmatch.c: New versions of these files from the GLIBC folks (Ulrich Drepper). Had to re-integrate some DOS/Windows code. 1998-07-10 Paul D. Smith * glob.c (glob_in_dir): If no meta chars exist in PATTERN and GLOB_NOCHECK is present, don't look for the file--whether it's found or not, we'll always return it, so why bother searching? Also, if we are searching and there are no meta chars, don't bother trying fnmatch() if the strcmp() fails. 1998-05-30 Eli Zaretskii * glob.c (glob) [__MSDOS__, WINDOWS32]: Compute the directory and filename parts of the pattern correctly when it includes a drive spec. Disallow wildcards in the drive spec. Prevent recursion when dirname is of the form "d:/" or "d:". (prefix_array) [__MSDOS__, WINDOWS32]: Don't append a slash to "d:/" and "d:". 1998-05-13 Paul D. Smith * SMakefile, Makefile.ami, glob.c, glob.h, fnmatch.c: Updated from the latest glibc version. 1998-04-17 Paul D. Smith * configure.in: Create a config.h file instead of setting things on the compile line. This is because when build.sh runs it merely passes -DHAVE_CONFIG_H to the glob files, just as it does to the make files. * config.h.in: Created by autoheader. Tue Aug 12 10:52:34 1997 Paul D. Smith * configure.in: Require autoconf 2.12. * glob: Updates from latest GNU libc glob code. * glob.c,glob.h,fnmatch.h: Change all WIN32 references to WINDOWS32. * glob.h: OSF4 defines macros in such a way that GLOB_ALTDIRFUNC is not defined. Added a test to the #if which defines it if _GNU_SOURCE is defined; that's set by both glob.c and GNU make. * glob.c: SunOS4 w/ cc needs #include , since assert.h requires stderr but doesn't include stdio.h :-/. (next_brace_sub): De-protoize function definition. (glob): Cast __alloca(); on SunOS4 it uses the default return type of int. (glob): Irix defines getlogin_r() to return a char*; move the extern for that into the _LIBC area since it isn't used except in LIBC anyway. Likewise, move extern getlogin() into the "else". Sat Jul 20 21:55:31 1996 Roland McGrath Win32 hacks from . * posix/glob.c [WIN32]: Don't include ; don't use d_ino; use void * for my_realloc; include for alloca. (glob) [WIN32]: Use "c:/users/default" for ~ if no HOME variable. * posix/fnmatch.h [WIN32]: Use prototypes even if [!__STDC__]. * posix/glob.h: Likewise. Fri Jul 19 16:56:41 1996 Roland McGrath * posix/glob.h [!_AMIGA && !VMS]: Check this instead of just [!_AMIGA] for `struct stat;' forward decl. Sat Jun 22 10:44:09 1996 Roland McGrath * posix/glob.c: Include only [HAVE_ALLOCA_H], not [sparc]. Fri Jun 21 00:27:51 1996 Roland McGrath * posix/fnmatch.c (fnmatch): Fix \*[*?]+ case to increment name ptr only for ?s, not for *s. Fix from Chet Ramey. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/glob/Makefile.am0000644000175000017500000000224010416553102017466 0ustar srivastasrivasta# -*-Makefile-*-, or close enough # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. AUTOMAKE_OPTIONS = foreign # Only build the library when the system doesn't already have GNU glob. if USE_LOCAL_GLOB noinst_LIBRARIES = libglob.a endif libglob_a_SOURCES = glob.c glob.h fnmatch.c fnmatch.h EXTRA_DIST = COPYING.LIB Makefile.ami SCOPTIONS SMakefile \ configure.bat make-dfsg-3.81.orig/glob/Makefile.ami0000644000175000017500000000407210416553102017644 0ustar srivastasrivasta# Makefile for standalone libglob.a (fnmatch, glob). -*-Makefile-*- # Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # Ultrix 2.2 make doesn't expand the value of VPATH. VPATH = /glob/ # This must repeat the value, because configure will remove `VPATH = .'. srcdir = /glob/ CC = sc RM = delete CPPFLAGS = CFLAGS = # Information determined by configure. DEFS = Define HAVE_HEADER_STDC Define HAVE_UNISTD_H Define HAVE_STRING_H \ Define HAVE_DIRENT_H # How to invoke ar. AR = join ARFLAGS = as # How to invoke ranlib. RANLIB = ; .PHONY: all all: glob.lib glob.lib : glob.o fnmatch.o $(AR) $(ARFLAGS) $@ glob.o fnmatch.o $(RANLIB) $@ # For some reason, Unix make wants the dependencies on the source files. # Otherwise it refuses to use an implicit rule! # And, get this: it doesn't work to use $(srcdir)foo.c!! glob.o: $(srcdir)glob.h $(srcdir)fnmatch.h glob.c fnmatch.o: $(srcdir)fnmatch.h fnmatch.c OUTPUT_OPTION = .c.o: $(CC) IDir "" \ $(DEFS) $(CPPFLAGS) $(CFLAGS) $< $(OUTPUT_OPTION) .PHONY: clean realclean glob-clean glob-realclean distclean clean glob-clean: -$(RM) glob.lib "#?.o" core distclean glob-realclean: clean -$(RM) TAGS tags Makefile config.status config.h config.log realcean: distclean # For inside the C library. glob.tar glob.tar.Z: $(MAKE) -C .. $@ make-dfsg-3.81.orig/glob/Makefile.in0000644000175000017500000003277310416553102017515 0ustar srivastasrivasta# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # -*-Makefile-*-, or close enough # Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = glob DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in COPYING.LIB \ ChangeLog ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ $(top_srcdir)/config/gettext.m4 $(top_srcdir)/config/iconv.m4 \ $(top_srcdir)/config/lib-ld.m4 \ $(top_srcdir)/config/lib-link.m4 \ $(top_srcdir)/config/lib-prefix.m4 $(top_srcdir)/config/nls.m4 \ $(top_srcdir)/config/po.m4 $(top_srcdir)/config/progtest.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = LIBRARIES = $(noinst_LIBRARIES) ARFLAGS = cru libglob_a_AR = $(AR) $(ARFLAGS) libglob_a_LIBADD = am_libglob_a_OBJECTS = glob.$(OBJEXT) fnmatch.$(OBJEXT) libglob_a_OBJECTS = $(am_libglob_a_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libglob_a_SOURCES) DIST_SOURCES = $(libglob_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ GLOBINC = @GLOBINC@ GLOBLIB = @GLOBLIB@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ KMEM_GROUP = @KMEM_GROUP@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_HOST = @MAKE_HOST@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGMERGE = @MSGMERGE@ NEED_SETGID = @NEED_SETGID@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL = @PERL@ POSUB = @POSUB@ RANLIB = @RANLIB@ REMOTE = @REMOTE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ U = @U@ USE_CUSTOMS_FALSE = @USE_CUSTOMS_FALSE@ USE_CUSTOMS_TRUE = @USE_CUSTOMS_TRUE@ USE_LOCAL_GLOB_FALSE = @USE_LOCAL_GLOB_FALSE@ USE_LOCAL_GLOB_TRUE = @USE_LOCAL_GLOB_TRUE@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDOWSENV_FALSE = @WINDOWSENV_FALSE@ WINDOWSENV_TRUE = @WINDOWSENV_TRUE@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ AUTOMAKE_OPTIONS = foreign # Only build the library when the system doesn't already have GNU glob. @USE_LOCAL_GLOB_TRUE@noinst_LIBRARIES = libglob.a libglob_a_SOURCES = glob.c glob.h fnmatch.c fnmatch.h EXTRA_DIST = COPYING.LIB Makefile.ami SCOPTIONS SMakefile \ configure.bat all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign glob/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --foreign glob/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libglob.a: $(libglob_a_OBJECTS) $(libglob_a_DEPENDENCIES) -rm -f libglob.a $(libglob_a_AR) libglob.a $(libglob_a_OBJECTS) $(libglob_a_LIBADD) $(RANLIB) libglob.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fnmatch.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/glob.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-exec install-exec-am install-info \ install-info-am install-man install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/glob/SCOPTIONS0000644000175000017500000000030310416553102016734 0ustar srivastasrivastaERRORREXX OPTIMIZE NOVERSION OPTIMIZERTIME OPTIMIZERALIAS DEFINE INCLUDEDIR="include:" DEFINE LIBDIR="lib:" DEFINE NO_ALLOCA DEFINE NO_FLOAT DEFINE NO_ARCHIVES IGNORE=161 IGNORE=100 STARTUP=cres make-dfsg-3.81.orig/glob/SMakefile0000644000175000017500000000405710416553102017225 0ustar srivastasrivasta# Makefile for standalone distribution of libglob.a (fnmatch, glob). # Copyright (C) 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, # 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # Ultrix 2.2 make doesn't expand the value of VPATH. VPATH = /glob/ # This must repeat the value, because configure will remove `VPATH = .'. srcdir = /glob/ CC = sc CPPFLAGS = CFLAGS = MAKE = smake RM = delete # Information determined by configure. DEFS = Define HAVE_HEADER_STDC Define HAVE_UNISTD_H Define HAVE_STRING_H \ Define HAVE_DIRENT_H # How to invoke ar. AR = join ARFLAGS = as # How to invoke ranlib. RANLIB = ; .PHONY: all all: glob.lib glob.lib : glob.o fnmatch.o $(AR) $(ARFLAGS) $@ glob.o fnmatch.o $(RANLIB) $@ # For some reason, Unix make wants the dependencies on the source files. # Otherwise it refuses to use an implicit rule! # And, get this: it doesn't work to use $(srcdir)foo.c!! glob.o: $(srcdir)glob.h $(srcdir)fnmatch.h glob.c fnmatch.o: $(srcdir)fnmatch.h fnmatch.c .c.o: $(CC) IDir "" \ $(DEFS) $(CPPFLAGS) $(CFLAGS) $< $(OUTPUT_OPTION) .PHONY: clean realclean glob-clean glob-realclean distclean clean glob-clean: -$(RM) -f glob.lib *.o core distclean glob-realclean: clean -$(RM) -f TAGS tags Makefile config.status config.h config.log realcean: distclean # For inside the C library. glob.tar glob.tar.Z: $(MAKE) -C .. $@ make-dfsg-3.81.orig/glob/configure.bat0000644000175000017500000000341510416553102020110 0ustar srivastasrivasta@echo off rem Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, rem 2004, 2005, 2006 Free Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under rem the terms of the GNU General Public License as published by the Free rem Software Foundation; either version 2, or (at your option) any later rem version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT rem ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or rem FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for rem more details. rem You should have received a copy of the GNU General Public License along rem with GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. echo Configuring glob for DJGPP rem This batch file assumes a unix-type "sed" program echo # Makefile generated by "configure.bat"> Makefile if exist config.sed del config.sed echo "s/@srcdir@/./ ">> config.sed echo "s/@CC@/gcc/ ">> config.sed echo "s/@CFLAGS@/-O2 -g/ ">> config.sed echo "s/@CPPFLAGS@/-DHAVE_CONFIG_H -I../ ">> config.sed echo "s/@AR@/ar/ ">> config.sed echo "s/@RANLIB@/ranlib/ ">> config.sed echo "s/@LDFLAGS@// ">> config.sed echo "s/@DEFS@// ">> config.sed echo "s/@ALLOCA@// ">> config.sed echo "s/@LIBS@// ">> config.sed echo "s/@LIBOBJS@// ">> config.sed echo "s/^Makefile *:/_Makefile:/ ">> config.sed echo "s/^config.h *:/_config.h:/ ">> config.sed sed -e "s/^\"//" -e "s/\"$//" -e "s/[ ]*$//" config.sed > config2.sed sed -f config2.sed Makefile.in >> Makefile del config.sed del config2.sed make-dfsg-3.81.orig/glob/fnmatch.c0000644000175000017500000003110610416553102017221 0ustar srivastasrivasta/* Copyright (C) 1991, 92, 93, 96, 97, 98, 99 Free Software Foundation, Inc. This file is part of the GNU C Library. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #if HAVE_CONFIG_H # include #endif /* Enable GNU extensions in fnmatch.h. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif #include #include #include #if HAVE_STRING_H || defined _LIBC # include #else # include #endif #if defined STDC_HEADERS || defined _LIBC # include #endif /* For platform which support the ISO C amendement 1 functionality we support user defined character classes. */ #if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) /* Solaris 2.5 has a bug: must be included before . */ # include # include #endif /* Comment out all this code if we are using the GNU C Library, and are not actually compiling the library itself. This code is part of the GNU C Library, but also included in many other GNU distributions. Compiling and linking in this code is a waste when using the GNU C library (especially if it is a shared library). Rather than having every GNU program understand `configure --with-gnu-libc' and omit the object files, it is simpler to just do this in the source for each such file. */ #if defined _LIBC || !defined __GNU_LIBRARY__ # if defined STDC_HEADERS || !defined isascii # define ISASCII(c) 1 # else # define ISASCII(c) isascii(c) # endif # ifdef isblank # define ISBLANK(c) (ISASCII (c) && isblank (c)) # else # define ISBLANK(c) ((c) == ' ' || (c) == '\t') # endif # ifdef isgraph # define ISGRAPH(c) (ISASCII (c) && isgraph (c)) # else # define ISGRAPH(c) (ISASCII (c) && isprint (c) && !isspace (c)) # endif # define ISPRINT(c) (ISASCII (c) && isprint (c)) # define ISDIGIT(c) (ISASCII (c) && isdigit (c)) # define ISALNUM(c) (ISASCII (c) && isalnum (c)) # define ISALPHA(c) (ISASCII (c) && isalpha (c)) # define ISCNTRL(c) (ISASCII (c) && iscntrl (c)) # define ISLOWER(c) (ISASCII (c) && islower (c)) # define ISPUNCT(c) (ISASCII (c) && ispunct (c)) # define ISSPACE(c) (ISASCII (c) && isspace (c)) # define ISUPPER(c) (ISASCII (c) && isupper (c)) # define ISXDIGIT(c) (ISASCII (c) && isxdigit (c)) # define STREQ(s1, s2) ((strcmp (s1, s2) == 0)) # if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) /* The GNU C library provides support for user-defined character classes and the functions from ISO C amendement 1. */ # ifdef CHARCLASS_NAME_MAX # define CHAR_CLASS_MAX_LENGTH CHARCLASS_NAME_MAX # else /* This shouldn't happen but some implementation might still have this problem. Use a reasonable default value. */ # define CHAR_CLASS_MAX_LENGTH 256 # endif # ifdef _LIBC # define IS_CHAR_CLASS(string) __wctype (string) # else # define IS_CHAR_CLASS(string) wctype (string) # endif # else # define CHAR_CLASS_MAX_LENGTH 6 /* Namely, `xdigit'. */ # define IS_CHAR_CLASS(string) \ (STREQ (string, "alpha") || STREQ (string, "upper") \ || STREQ (string, "lower") || STREQ (string, "digit") \ || STREQ (string, "alnum") || STREQ (string, "xdigit") \ || STREQ (string, "space") || STREQ (string, "print") \ || STREQ (string, "punct") || STREQ (string, "graph") \ || STREQ (string, "cntrl") || STREQ (string, "blank")) # endif /* Avoid depending on library functions or files whose names are inconsistent. */ # if !defined _LIBC && !defined getenv extern char *getenv (); # endif # ifndef errno extern int errno; # endif /* This function doesn't exist on most systems. */ # if !defined HAVE___STRCHRNUL && !defined _LIBC static char * __strchrnul (s, c) const char *s; int c; { char *result = strchr (s, c); if (result == NULL) result = strchr (s, '\0'); return result; } # endif # ifndef internal_function /* Inside GNU libc we mark some function in a special way. In other environments simply ignore the marking. */ # define internal_function # endif /* Match STRING against the filename pattern PATTERN, returning zero if it matches, nonzero if not. */ static int internal_fnmatch __P ((const char *pattern, const char *string, int no_leading_period, int flags)) internal_function; static int internal_function internal_fnmatch (pattern, string, no_leading_period, flags) const char *pattern; const char *string; int no_leading_period; int flags; { register const char *p = pattern, *n = string; register unsigned char c; /* Note that this evaluates C many times. */ # ifdef _LIBC # define FOLD(c) ((flags & FNM_CASEFOLD) ? tolower (c) : (c)) # else # define FOLD(c) ((flags & FNM_CASEFOLD) && ISUPPER (c) ? tolower (c) : (c)) # endif while ((c = *p++) != '\0') { c = FOLD (c); switch (c) { case '?': if (*n == '\0') return FNM_NOMATCH; else if (*n == '/' && (flags & FNM_FILE_NAME)) return FNM_NOMATCH; else if (*n == '.' && no_leading_period && (n == string || (n[-1] == '/' && (flags & FNM_FILE_NAME)))) return FNM_NOMATCH; break; case '\\': if (!(flags & FNM_NOESCAPE)) { c = *p++; if (c == '\0') /* Trailing \ loses. */ return FNM_NOMATCH; c = FOLD (c); } if (FOLD ((unsigned char) *n) != c) return FNM_NOMATCH; break; case '*': if (*n == '.' && no_leading_period && (n == string || (n[-1] == '/' && (flags & FNM_FILE_NAME)))) return FNM_NOMATCH; for (c = *p++; c == '?' || c == '*'; c = *p++) { if (*n == '/' && (flags & FNM_FILE_NAME)) /* A slash does not match a wildcard under FNM_FILE_NAME. */ return FNM_NOMATCH; else if (c == '?') { /* A ? needs to match one character. */ if (*n == '\0') /* There isn't another character; no match. */ return FNM_NOMATCH; else /* One character of the string is consumed in matching this ? wildcard, so *??? won't match if there are less than three characters. */ ++n; } } if (c == '\0') /* The wildcard(s) is/are the last element of the pattern. If the name is a file name and contains another slash this does mean it cannot match. */ return ((flags & FNM_FILE_NAME) && strchr (n, '/') != NULL ? FNM_NOMATCH : 0); else { const char *endp; endp = __strchrnul (n, (flags & FNM_FILE_NAME) ? '/' : '\0'); if (c == '[') { int flags2 = ((flags & FNM_FILE_NAME) ? flags : (flags & ~FNM_PERIOD)); for (--p; n < endp; ++n) if (internal_fnmatch (p, n, (no_leading_period && (n == string || (n[-1] == '/' && (flags & FNM_FILE_NAME)))), flags2) == 0) return 0; } else if (c == '/' && (flags & FNM_FILE_NAME)) { while (*n != '\0' && *n != '/') ++n; if (*n == '/' && (internal_fnmatch (p, n + 1, flags & FNM_PERIOD, flags) == 0)) return 0; } else { int flags2 = ((flags & FNM_FILE_NAME) ? flags : (flags & ~FNM_PERIOD)); if (c == '\\' && !(flags & FNM_NOESCAPE)) c = *p; c = FOLD (c); for (--p; n < endp; ++n) if (FOLD ((unsigned char) *n) == c && (internal_fnmatch (p, n, (no_leading_period && (n == string || (n[-1] == '/' && (flags & FNM_FILE_NAME)))), flags2) == 0)) return 0; } } /* If we come here no match is possible with the wildcard. */ return FNM_NOMATCH; case '[': { /* Nonzero if the sense of the character class is inverted. */ static int posixly_correct; register int not; char cold; if (posixly_correct == 0) posixly_correct = getenv ("POSIXLY_CORRECT") != NULL ? 1 : -1; if (*n == '\0') return FNM_NOMATCH; if (*n == '.' && no_leading_period && (n == string || (n[-1] == '/' && (flags & FNM_FILE_NAME)))) return FNM_NOMATCH; if (*n == '/' && (flags & FNM_FILE_NAME)) /* `/' cannot be matched. */ return FNM_NOMATCH; not = (*p == '!' || (posixly_correct < 0 && *p == '^')); if (not) ++p; c = *p++; for (;;) { unsigned char fn = FOLD ((unsigned char) *n); if (!(flags & FNM_NOESCAPE) && c == '\\') { if (*p == '\0') return FNM_NOMATCH; c = FOLD ((unsigned char) *p); ++p; if (c == fn) goto matched; } else if (c == '[' && *p == ':') { /* Leave room for the null. */ char str[CHAR_CLASS_MAX_LENGTH + 1]; size_t c1 = 0; # if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) wctype_t wt; # endif const char *startp = p; for (;;) { if (c1 == CHAR_CLASS_MAX_LENGTH) /* The name is too long and therefore the pattern is ill-formed. */ return FNM_NOMATCH; c = *++p; if (c == ':' && p[1] == ']') { p += 2; break; } if (c < 'a' || c >= 'z') { /* This cannot possibly be a character class name. Match it as a normal range. */ p = startp; c = '['; goto normal_bracket; } str[c1++] = c; } str[c1] = '\0'; # if defined _LIBC || (defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H) wt = IS_CHAR_CLASS (str); if (wt == 0) /* Invalid character class name. */ return FNM_NOMATCH; if (__iswctype (__btowc ((unsigned char) *n), wt)) goto matched; # else if ((STREQ (str, "alnum") && ISALNUM ((unsigned char) *n)) || (STREQ (str, "alpha") && ISALPHA ((unsigned char) *n)) || (STREQ (str, "blank") && ISBLANK ((unsigned char) *n)) || (STREQ (str, "cntrl") && ISCNTRL ((unsigned char) *n)) || (STREQ (str, "digit") && ISDIGIT ((unsigned char) *n)) || (STREQ (str, "graph") && ISGRAPH ((unsigned char) *n)) || (STREQ (str, "lower") && ISLOWER ((unsigned char) *n)) || (STREQ (str, "print") && ISPRINT ((unsigned char) *n)) || (STREQ (str, "punct") && ISPUNCT ((unsigned char) *n)) || (STREQ (str, "space") && ISSPACE ((unsigned char) *n)) || (STREQ (str, "upper") && ISUPPER ((unsigned char) *n)) || (STREQ (str, "xdigit") && ISXDIGIT ((unsigned char) *n))) goto matched; # endif } else if (c == '\0') /* [ (unterminated) loses. */ return FNM_NOMATCH; else { normal_bracket: if (FOLD (c) == fn) goto matched; cold = c; c = *p++; if (c == '-' && *p != ']') { /* It is a range. */ unsigned char cend = *p++; if (!(flags & FNM_NOESCAPE) && cend == '\\') cend = *p++; if (cend == '\0') return FNM_NOMATCH; if (cold <= fn && fn <= FOLD (cend)) goto matched; c = *p++; } } if (c == ']') break; } if (!not) return FNM_NOMATCH; break; matched: /* Skip the rest of the [...] that already matched. */ while (c != ']') { if (c == '\0') /* [... (unterminated) loses. */ return FNM_NOMATCH; c = *p++; if (!(flags & FNM_NOESCAPE) && c == '\\') { if (*p == '\0') return FNM_NOMATCH; /* XXX 1003.2d11 is unclear if this is right. */ ++p; } else if (c == '[' && *p == ':') { do if (*++p == '\0') return FNM_NOMATCH; while (*p != ':' || p[1] == ']'); p += 2; c = *p; } } if (not) return FNM_NOMATCH; } break; default: if (c != FOLD ((unsigned char) *n)) return FNM_NOMATCH; } ++n; } if (*n == '\0') return 0; if ((flags & FNM_LEADING_DIR) && *n == '/') /* The FNM_LEADING_DIR flag says that "foo*" matches "foobar/frobozz". */ return 0; return FNM_NOMATCH; # undef FOLD } int fnmatch (pattern, string, flags) const char *pattern; const char *string; int flags; { return internal_fnmatch (pattern, string, flags & FNM_PERIOD, flags); } #endif /* _LIBC or not __GNU_LIBRARY__. */ make-dfsg-3.81.orig/glob/fnmatch.h0000644000175000017500000000554710416553102017240 0ustar srivastasrivasta/* Copyright (C) 1991, 92, 93, 96, 97, 98, 99 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _FNMATCH_H #define _FNMATCH_H 1 #ifdef __cplusplus extern "C" { #endif #if defined __cplusplus || (defined __STDC__ && __STDC__) || defined WINDOWS32 # if !defined __GLIBC__ # undef __P # define __P(protos) protos # endif #else /* Not C++ or ANSI C. */ # undef __P # define __P(protos) () /* We can get away without defining `const' here only because in this file it is used only inside the prototype for `fnmatch', which is elided in non-ANSI C where `const' is problematical. */ #endif /* C++ or ANSI C. */ #ifndef const # if (defined __STDC__ && __STDC__) || defined __cplusplus || defined WINDOWS32 # define __const const # else # define __const # endif #endif /* We #undef these before defining them because some losing systems (HP-UX A.08.07 for example) define these in . */ #undef FNM_PATHNAME #undef FNM_NOESCAPE #undef FNM_PERIOD /* Bits set in the FLAGS argument to `fnmatch'. */ #define FNM_PATHNAME (1 << 0) /* No wildcard can ever match `/'. */ #define FNM_NOESCAPE (1 << 1) /* Backslashes don't quote special chars. */ #define FNM_PERIOD (1 << 2) /* Leading `.' is matched only explicitly. */ #if !defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _GNU_SOURCE # define FNM_FILE_NAME FNM_PATHNAME /* Preferred GNU name. */ # define FNM_LEADING_DIR (1 << 3) /* Ignore `/...' after a match. */ # define FNM_CASEFOLD (1 << 4) /* Compare without regard to case. */ #endif /* Value returned by `fnmatch' if STRING does not match PATTERN. */ #define FNM_NOMATCH 1 /* This value is returned if the implementation does not support `fnmatch'. Since this is not the case here it will never be returned but the conformance test suites still require the symbol to be defined. */ #ifdef _XOPEN_SOURCE # define FNM_NOSYS (-1) #endif /* Match NAME against the filename pattern PATTERN, returning zero if it matches, FNM_NOMATCH if not. */ extern int fnmatch __P ((__const char *__pattern, __const char *__name, int __flags)); #ifdef __cplusplus } #endif #endif /* fnmatch.h */ make-dfsg-3.81.orig/glob/glob.c0000644000175000017500000010541110416553102016525 0ustar srivastasrivasta/* Copyright (C) 1991,92,93,94,95,96,97,98,99 Free Software Foundation, Inc. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* AIX requires this to be the first thing in the file. */ #if defined _AIX && !defined __GNUC__ #pragma alloca #endif #ifdef HAVE_CONFIG_H # include #endif /* Enable GNU extensions in glob.h. */ #ifndef _GNU_SOURCE # define _GNU_SOURCE 1 #endif #include #include #include /* Outcomment the following line for production quality code. */ /* #define NDEBUG 1 */ #include #include /* Needed on stupid SunOS for assert. */ /* Comment out all this code if we are using the GNU C Library, and are not actually compiling the library itself. This code is part of the GNU C Library, but also included in many other GNU distributions. Compiling and linking in this code is a waste when using the GNU C library (especially if it is a shared library). Rather than having every GNU program understand `configure --with-gnu-libc' and omit the object files, it is simpler to just do this in the source for each such file. */ #define GLOB_INTERFACE_VERSION 1 #if !defined _LIBC && defined __GNU_LIBRARY__ && __GNU_LIBRARY__ > 1 # include # if _GNU_GLOB_INTERFACE_VERSION == GLOB_INTERFACE_VERSION # define ELIDE_CODE # endif #endif #ifndef ELIDE_CODE #if defined STDC_HEADERS || defined __GNU_LIBRARY__ # include #endif #if defined HAVE_UNISTD_H || defined _LIBC # include # ifndef POSIX # ifdef _POSIX_VERSION # define POSIX # endif # endif #endif #if !defined _AMIGA && !defined VMS && !defined WINDOWS32 # include #endif #if !defined __GNU_LIBRARY__ && !defined STDC_HEADERS extern int errno; #endif #ifndef __set_errno # define __set_errno(val) errno = (val) #endif #ifndef NULL # define NULL 0 #endif #if defined HAVE_DIRENT_H || defined __GNU_LIBRARY__ # include # define NAMLEN(dirent) strlen((dirent)->d_name) #else # define dirent direct # define NAMLEN(dirent) (dirent)->d_namlen # ifdef HAVE_SYS_NDIR_H # include # endif # ifdef HAVE_SYS_DIR_H # include # endif # ifdef HAVE_NDIR_H # include # endif # ifdef HAVE_VMSDIR_H # include "vmsdir.h" # endif /* HAVE_VMSDIR_H */ #endif /* In GNU systems, defines this macro for us. */ #ifdef _D_NAMLEN # undef NAMLEN # define NAMLEN(d) _D_NAMLEN(d) #endif /* When used in the GNU libc the symbol _DIRENT_HAVE_D_TYPE is available if the `d_type' member for `struct dirent' is available. */ #ifdef _DIRENT_HAVE_D_TYPE # define HAVE_D_TYPE 1 #endif #if (defined POSIX || defined WINDOWS32) && !defined __GNU_LIBRARY__ /* Posix does not require that the d_ino field be present, and some systems do not provide it. */ # define REAL_DIR_ENTRY(dp) 1 #else # define REAL_DIR_ENTRY(dp) (dp->d_ino != 0) #endif /* POSIX */ #if defined STDC_HEADERS || defined __GNU_LIBRARY__ # include # include # define ANSI_STRING #else /* No standard headers. */ extern char *getenv (); # ifdef HAVE_STRING_H # include # define ANSI_STRING # else # include # endif # ifdef HAVE_MEMORY_H # include # endif extern char *malloc (), *realloc (); extern void free (); extern void qsort (); extern void abort (), exit (); #endif /* Standard headers. */ #ifndef ANSI_STRING # ifndef bzero extern void bzero (); # endif # ifndef bcopy extern void bcopy (); # endif # define memcpy(d, s, n) bcopy ((s), (d), (n)) # define strrchr rindex /* memset is only used for zero here, but let's be paranoid. */ # define memset(s, better_be_zero, n) \ ((void) ((better_be_zero) == 0 ? (bzero((s), (n)), 0) : (abort(), 0))) #endif /* Not ANSI_STRING. */ #if !defined HAVE_STRCOLL && !defined _LIBC # define strcoll strcmp #endif #if !defined HAVE_MEMPCPY && __GLIBC__ - 0 == 2 && __GLIBC_MINOR__ >= 1 # define HAVE_MEMPCPY 1 # undef mempcpy # define mempcpy(Dest, Src, Len) __mempcpy (Dest, Src, Len) #endif #ifndef __GNU_LIBRARY__ # ifdef __GNUC__ __inline # endif # ifndef __SASC # ifdef WINDOWS32 static void * my_realloc (void *p, unsigned int n) # else static char * my_realloc (p, n) char *p; unsigned int n; # endif { /* These casts are the for sake of the broken Ultrix compiler, which warns of illegal pointer combinations otherwise. */ if (p == NULL) return (char *) malloc (n); return (char *) realloc (p, n); } # define realloc my_realloc # endif /* __SASC */ #endif /* __GNU_LIBRARY__ */ #if !defined __alloca && !defined __GNU_LIBRARY__ # ifdef __GNUC__ # undef alloca # define alloca(n) __builtin_alloca (n) # else /* Not GCC. */ # ifdef HAVE_ALLOCA_H # include # else /* Not HAVE_ALLOCA_H. */ # ifndef _AIX # ifdef WINDOWS32 # include # else extern char *alloca (); # endif /* WINDOWS32 */ # endif /* Not _AIX. */ # endif /* sparc or HAVE_ALLOCA_H. */ # endif /* GCC. */ # define __alloca alloca #endif #ifndef __GNU_LIBRARY__ # define __stat stat # ifdef STAT_MACROS_BROKEN # undef S_ISDIR # endif # ifndef S_ISDIR # define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) # endif #endif #ifdef _LIBC # undef strdup # define strdup(str) __strdup (str) # define sysconf(id) __sysconf (id) # define closedir(dir) __closedir (dir) # define opendir(name) __opendir (name) # define readdir(str) __readdir (str) # define getpwnam_r(name, bufp, buf, len, res) \ __getpwnam_r (name, bufp, buf, len, res) # ifndef __stat # define __stat(fname, buf) __xstat (_STAT_VER, fname, buf) # endif #endif #if !(defined STDC_HEADERS || defined __GNU_LIBRARY__) # undef size_t # define size_t unsigned int #endif /* Some system header files erroneously define these. We want our own definitions from to take precedence. */ #ifndef __GNU_LIBRARY__ # undef FNM_PATHNAME # undef FNM_NOESCAPE # undef FNM_PERIOD #endif #include /* Some system header files erroneously define these. We want our own definitions from to take precedence. */ #ifndef __GNU_LIBRARY__ # undef GLOB_ERR # undef GLOB_MARK # undef GLOB_NOSORT # undef GLOB_DOOFFS # undef GLOB_NOCHECK # undef GLOB_APPEND # undef GLOB_NOESCAPE # undef GLOB_PERIOD #endif #include #ifdef HAVE_GETLOGIN_R extern int getlogin_r __P ((char *, size_t)); #else extern char *getlogin __P ((void)); #endif static #if __GNUC__ - 0 >= 2 inline #endif const char *next_brace_sub __P ((const char *begin)); static int glob_in_dir __P ((const char *pattern, const char *directory, int flags, int (*errfunc) (const char *, int), glob_t *pglob)); static int prefix_array __P ((const char *prefix, char **array, size_t n)); static int collated_compare __P ((const __ptr_t, const __ptr_t)); #if !defined _LIBC || !defined NO_GLOB_PATTERN_P int __glob_pattern_p __P ((const char *pattern, int quote)); #endif /* Find the end of the sub-pattern in a brace expression. We define this as an inline function if the compiler permits. */ static #if __GNUC__ - 0 >= 2 inline #endif const char * next_brace_sub (begin) const char *begin; { unsigned int depth = 0; const char *cp = begin; while (1) { if (depth == 0) { if (*cp != ',' && *cp != '}' && *cp != '\0') { if (*cp == '{') ++depth; ++cp; continue; } } else { while (*cp != '\0' && (*cp != '}' || depth > 0)) { if (*cp == '}') --depth; ++cp; } if (*cp == '\0') /* An incorrectly terminated brace expression. */ return NULL; continue; } break; } return cp; } /* Do glob searching for PATTERN, placing results in PGLOB. The bits defined above may be set in FLAGS. If a directory cannot be opened or read and ERRFUNC is not nil, it is called with the pathname that caused the error, and the `errno' value from the failing call; if it returns non-zero `glob' returns GLOB_ABORTED; if it returns zero, the error is ignored. If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned. Otherwise, `glob' returns zero. */ int glob (pattern, flags, errfunc, pglob) const char *pattern; int flags; int (*errfunc) __P ((const char *, int)); glob_t *pglob; { const char *filename; const char *dirname; size_t dirlen; int status; int oldcount; if (pattern == NULL || pglob == NULL || (flags & ~__GLOB_FLAGS) != 0) { __set_errno (EINVAL); return -1; } if (flags & GLOB_BRACE) { const char *begin = strchr (pattern, '{'); if (begin != NULL) { /* Allocate working buffer large enough for our work. Note that we have at least an opening and closing brace. */ int firstc; char *alt_start; const char *p; const char *next; const char *rest; size_t rest_len; #ifdef __GNUC__ char onealt[strlen (pattern) - 1]; #else char *onealt = (char *) malloc (strlen (pattern) - 1); if (onealt == NULL) { if (!(flags & GLOB_APPEND)) globfree (pglob); return GLOB_NOSPACE; } #endif /* We know the prefix for all sub-patterns. */ #ifdef HAVE_MEMPCPY alt_start = mempcpy (onealt, pattern, begin - pattern); #else memcpy (onealt, pattern, begin - pattern); alt_start = &onealt[begin - pattern]; #endif /* Find the first sub-pattern and at the same time find the rest after the closing brace. */ next = next_brace_sub (begin + 1); if (next == NULL) { /* It is an illegal expression. */ #ifndef __GNUC__ free (onealt); #endif return glob (pattern, flags & ~GLOB_BRACE, errfunc, pglob); } /* Now find the end of the whole brace expression. */ rest = next; while (*rest != '}') { rest = next_brace_sub (rest + 1); if (rest == NULL) { /* It is an illegal expression. */ #ifndef __GNUC__ free (onealt); #endif return glob (pattern, flags & ~GLOB_BRACE, errfunc, pglob); } } /* Please note that we now can be sure the brace expression is well-formed. */ rest_len = strlen (++rest) + 1; /* We have a brace expression. BEGIN points to the opening {, NEXT points past the terminator of the first element, and END points past the final }. We will accumulate result names from recursive runs for each brace alternative in the buffer using GLOB_APPEND. */ if (!(flags & GLOB_APPEND)) { /* This call is to set a new vector, so clear out the vector so we can append to it. */ pglob->gl_pathc = 0; pglob->gl_pathv = NULL; } firstc = pglob->gl_pathc; p = begin + 1; while (1) { int result; /* Construct the new glob expression. */ #ifdef HAVE_MEMPCPY mempcpy (mempcpy (alt_start, p, next - p), rest, rest_len); #else memcpy (alt_start, p, next - p); memcpy (&alt_start[next - p], rest, rest_len); #endif result = glob (onealt, ((flags & ~(GLOB_NOCHECK|GLOB_NOMAGIC)) | GLOB_APPEND), errfunc, pglob); /* If we got an error, return it. */ if (result && result != GLOB_NOMATCH) { #ifndef __GNUC__ free (onealt); #endif if (!(flags & GLOB_APPEND)) globfree (pglob); return result; } if (*next == '}') /* We saw the last entry. */ break; p = next + 1; next = next_brace_sub (p); assert (next != NULL); } #ifndef __GNUC__ free (onealt); #endif if (pglob->gl_pathc != firstc) /* We found some entries. */ return 0; else if (!(flags & (GLOB_NOCHECK|GLOB_NOMAGIC))) return GLOB_NOMATCH; } } /* Find the filename. */ filename = strrchr (pattern, '/'); #if defined __MSDOS__ || defined WINDOWS32 /* The case of "d:pattern". Since `:' is not allowed in file names, we can safely assume that wherever it happens in pattern, it signals the filename part. This is so we could some day support patterns like "[a-z]:foo". */ if (filename == NULL) filename = strchr (pattern, ':'); #endif /* __MSDOS__ || WINDOWS32 */ if (filename == NULL) { /* This can mean two things: a simple name or "~name". The later case is nothing but a notation for a directory. */ if ((flags & (GLOB_TILDE|GLOB_TILDE_CHECK)) && pattern[0] == '~') { dirname = pattern; dirlen = strlen (pattern); /* Set FILENAME to NULL as a special flag. This is ugly but other solutions would require much more code. We test for this special case below. */ filename = NULL; } else { filename = pattern; #ifdef _AMIGA dirname = ""; #else dirname = "."; #endif dirlen = 0; } } else if (filename == pattern) { /* "/pattern". */ dirname = "/"; dirlen = 1; ++filename; } else { char *newp; dirlen = filename - pattern; #if defined __MSDOS__ || defined WINDOWS32 if (*filename == ':' || (filename > pattern + 1 && filename[-1] == ':')) { char *drive_spec; ++dirlen; drive_spec = (char *) __alloca (dirlen + 1); #ifdef HAVE_MEMPCPY *((char *) mempcpy (drive_spec, pattern, dirlen)) = '\0'; #else memcpy (drive_spec, pattern, dirlen); drive_spec[dirlen] = '\0'; #endif /* For now, disallow wildcards in the drive spec, to prevent infinite recursion in glob. */ if (__glob_pattern_p (drive_spec, !(flags & GLOB_NOESCAPE))) return GLOB_NOMATCH; /* If this is "d:pattern", we need to copy `:' to DIRNAME as well. If it's "d:/pattern", don't remove the slash from "d:/", since "d:" and "d:/" are not the same.*/ } #endif newp = (char *) __alloca (dirlen + 1); #ifdef HAVE_MEMPCPY *((char *) mempcpy (newp, pattern, dirlen)) = '\0'; #else memcpy (newp, pattern, dirlen); newp[dirlen] = '\0'; #endif dirname = newp; ++filename; if (filename[0] == '\0' #if defined __MSDOS__ || defined WINDOWS32 && dirname[dirlen - 1] != ':' && (dirlen < 3 || dirname[dirlen - 2] != ':' || dirname[dirlen - 1] != '/') #endif && dirlen > 1) /* "pattern/". Expand "pattern", appending slashes. */ { int val = glob (dirname, flags | GLOB_MARK, errfunc, pglob); if (val == 0) pglob->gl_flags = ((pglob->gl_flags & ~GLOB_MARK) | (flags & GLOB_MARK)); return val; } } if (!(flags & GLOB_APPEND)) { pglob->gl_pathc = 0; pglob->gl_pathv = NULL; } oldcount = pglob->gl_pathc; #ifndef VMS if ((flags & (GLOB_TILDE|GLOB_TILDE_CHECK)) && dirname[0] == '~') { if (dirname[1] == '\0' || dirname[1] == '/') { /* Look up home directory. */ #ifdef VMS /* This isn't obvious, RTLs of DECC and VAXC know about "HOME" */ const char *home_dir = getenv ("SYS$LOGIN"); #else const char *home_dir = getenv ("HOME"); #endif # ifdef _AMIGA if (home_dir == NULL || home_dir[0] == '\0') home_dir = "SYS:"; # else # ifdef WINDOWS32 if (home_dir == NULL || home_dir[0] == '\0') home_dir = "c:/users/default"; /* poor default */ # else # ifdef VMS /* Again, this isn't obvious, if "HOME" isn't known "SYS$LOGIN" should be set */ if (home_dir == NULL || home_dir[0] == '\0') home_dir = "SYS$DISK:[]"; # else if (home_dir == NULL || home_dir[0] == '\0') { int success; char *name; # if defined HAVE_GETLOGIN_R || defined _LIBC size_t buflen = sysconf (_SC_LOGIN_NAME_MAX) + 1; if (buflen == 0) /* `sysconf' does not support _SC_LOGIN_NAME_MAX. Try a moderate value. */ buflen = 20; name = (char *) __alloca (buflen); success = getlogin_r (name, buflen) >= 0; # else success = (name = getlogin ()) != NULL; # endif if (success) { struct passwd *p; # if defined HAVE_GETPWNAM_R || defined _LIBC size_t pwbuflen = sysconf (_SC_GETPW_R_SIZE_MAX); char *pwtmpbuf; struct passwd pwbuf; int save = errno; if (pwbuflen == -1) /* `sysconf' does not support _SC_GETPW_R_SIZE_MAX. Try a moderate value. */ pwbuflen = 1024; pwtmpbuf = (char *) __alloca (pwbuflen); while (getpwnam_r (name, &pwbuf, pwtmpbuf, pwbuflen, &p) != 0) { if (errno != ERANGE) { p = NULL; break; } pwbuflen *= 2; pwtmpbuf = (char *) __alloca (pwbuflen); __set_errno (save); } # else p = getpwnam (name); # endif if (p != NULL) home_dir = p->pw_dir; } } if (home_dir == NULL || home_dir[0] == '\0') { if (flags & GLOB_TILDE_CHECK) return GLOB_NOMATCH; else home_dir = "~"; /* No luck. */ } # endif /* VMS */ # endif /* WINDOWS32 */ # endif /* Now construct the full directory. */ if (dirname[1] == '\0') dirname = home_dir; else { char *newp; size_t home_len = strlen (home_dir); newp = (char *) __alloca (home_len + dirlen); # ifdef HAVE_MEMPCPY mempcpy (mempcpy (newp, home_dir, home_len), &dirname[1], dirlen); # else memcpy (newp, home_dir, home_len); memcpy (&newp[home_len], &dirname[1], dirlen); # endif dirname = newp; } } # if !defined _AMIGA && !defined WINDOWS32 && !defined VMS else { char *end_name = strchr (dirname, '/'); const char *user_name; const char *home_dir; if (end_name == NULL) user_name = dirname + 1; else { char *newp; newp = (char *) __alloca (end_name - dirname); # ifdef HAVE_MEMPCPY *((char *) mempcpy (newp, dirname + 1, end_name - dirname)) = '\0'; # else memcpy (newp, dirname + 1, end_name - dirname); newp[end_name - dirname - 1] = '\0'; # endif user_name = newp; } /* Look up specific user's home directory. */ { struct passwd *p; # if defined HAVE_GETPWNAM_R || defined _LIBC size_t buflen = sysconf (_SC_GETPW_R_SIZE_MAX); char *pwtmpbuf; struct passwd pwbuf; int save = errno; if (buflen == -1) /* `sysconf' does not support _SC_GETPW_R_SIZE_MAX. Try a moderate value. */ buflen = 1024; pwtmpbuf = (char *) __alloca (buflen); while (getpwnam_r (user_name, &pwbuf, pwtmpbuf, buflen, &p) != 0) { if (errno != ERANGE) { p = NULL; break; } buflen *= 2; pwtmpbuf = __alloca (buflen); __set_errno (save); } # else p = getpwnam (user_name); # endif if (p != NULL) home_dir = p->pw_dir; else home_dir = NULL; } /* If we found a home directory use this. */ if (home_dir != NULL) { char *newp; size_t home_len = strlen (home_dir); size_t rest_len = end_name == NULL ? 0 : strlen (end_name); newp = (char *) __alloca (home_len + rest_len + 1); # ifdef HAVE_MEMPCPY *((char *) mempcpy (mempcpy (newp, home_dir, home_len), end_name, rest_len)) = '\0'; # else memcpy (newp, home_dir, home_len); memcpy (&newp[home_len], end_name, rest_len); newp[home_len + rest_len] = '\0'; # endif dirname = newp; } else if (flags & GLOB_TILDE_CHECK) /* We have to regard it as an error if we cannot find the home directory. */ return GLOB_NOMATCH; } # endif /* Not Amiga && not WINDOWS32 && not VMS. */ } #endif /* Not VMS. */ /* Now test whether we looked for "~" or "~NAME". In this case we can give the answer now. */ if (filename == NULL) { struct stat st; /* Return the directory if we don't check for error or if it exists. */ if ((flags & GLOB_NOCHECK) || (((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_stat) (dirname, &st) : __stat (dirname, &st)) == 0 && S_ISDIR (st.st_mode))) { pglob->gl_pathv = (char **) realloc (pglob->gl_pathv, (pglob->gl_pathc + ((flags & GLOB_DOOFFS) ? pglob->gl_offs : 0) + 1 + 1) * sizeof (char *)); if (pglob->gl_pathv == NULL) return GLOB_NOSPACE; if (flags & GLOB_DOOFFS) while (pglob->gl_pathc < pglob->gl_offs) pglob->gl_pathv[pglob->gl_pathc++] = NULL; #if defined HAVE_STRDUP || defined _LIBC pglob->gl_pathv[pglob->gl_pathc] = strdup (dirname); #else { size_t len = strlen (dirname) + 1; char *dircopy = malloc (len); if (dircopy != NULL) pglob->gl_pathv[pglob->gl_pathc] = memcpy (dircopy, dirname, len); } #endif if (pglob->gl_pathv[pglob->gl_pathc] == NULL) { free (pglob->gl_pathv); return GLOB_NOSPACE; } pglob->gl_pathv[++pglob->gl_pathc] = NULL; pglob->gl_flags = flags; return 0; } /* Not found. */ return GLOB_NOMATCH; } if (__glob_pattern_p (dirname, !(flags & GLOB_NOESCAPE))) { /* The directory name contains metacharacters, so we have to glob for the directory, and then glob for the pattern in each directory found. */ glob_t dirs; register int i; status = glob (dirname, ((flags & (GLOB_ERR | GLOB_NOCHECK | GLOB_NOESCAPE)) | GLOB_NOSORT | GLOB_ONLYDIR), errfunc, &dirs); if (status != 0) return status; /* We have successfully globbed the preceding directory name. For each name we found, call glob_in_dir on it and FILENAME, appending the results to PGLOB. */ for (i = 0; i < dirs.gl_pathc; ++i) { int old_pathc; #ifdef SHELL { /* Make globbing interruptible in the bash shell. */ extern int interrupt_state; if (interrupt_state) { globfree (&dirs); globfree (&files); return GLOB_ABORTED; } } #endif /* SHELL. */ old_pathc = pglob->gl_pathc; status = glob_in_dir (filename, dirs.gl_pathv[i], ((flags | GLOB_APPEND) & ~(GLOB_NOCHECK | GLOB_ERR)), errfunc, pglob); if (status == GLOB_NOMATCH) /* No matches in this directory. Try the next. */ continue; if (status != 0) { globfree (&dirs); globfree (pglob); return status; } /* Stick the directory on the front of each name. */ if (prefix_array (dirs.gl_pathv[i], &pglob->gl_pathv[old_pathc], pglob->gl_pathc - old_pathc)) { globfree (&dirs); globfree (pglob); return GLOB_NOSPACE; } } flags |= GLOB_MAGCHAR; /* We have ignored the GLOB_NOCHECK flag in the `glob_in_dir' calls. But if we have not found any matching entry and thie GLOB_NOCHECK flag was set we must return the list consisting of the disrectory names followed by the filename. */ if (pglob->gl_pathc == oldcount) { /* No matches. */ if (flags & GLOB_NOCHECK) { size_t filename_len = strlen (filename) + 1; char **new_pathv; struct stat st; /* This is an pessimistic guess about the size. */ pglob->gl_pathv = (char **) realloc (pglob->gl_pathv, (pglob->gl_pathc + ((flags & GLOB_DOOFFS) ? pglob->gl_offs : 0) + dirs.gl_pathc + 1) * sizeof (char *)); if (pglob->gl_pathv == NULL) { globfree (&dirs); return GLOB_NOSPACE; } if (flags & GLOB_DOOFFS) while (pglob->gl_pathc < pglob->gl_offs) pglob->gl_pathv[pglob->gl_pathc++] = NULL; for (i = 0; i < dirs.gl_pathc; ++i) { const char *dir = dirs.gl_pathv[i]; size_t dir_len = strlen (dir); /* First check whether this really is a directory. */ if (((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_stat) (dir, &st) : __stat (dir, &st)) != 0 || !S_ISDIR (st.st_mode)) /* No directory, ignore this entry. */ continue; pglob->gl_pathv[pglob->gl_pathc] = malloc (dir_len + 1 + filename_len); if (pglob->gl_pathv[pglob->gl_pathc] == NULL) { globfree (&dirs); globfree (pglob); return GLOB_NOSPACE; } #ifdef HAVE_MEMPCPY mempcpy (mempcpy (mempcpy (pglob->gl_pathv[pglob->gl_pathc], dir, dir_len), "/", 1), filename, filename_len); #else memcpy (pglob->gl_pathv[pglob->gl_pathc], dir, dir_len); pglob->gl_pathv[pglob->gl_pathc][dir_len] = '/'; memcpy (&pglob->gl_pathv[pglob->gl_pathc][dir_len + 1], filename, filename_len); #endif ++pglob->gl_pathc; } pglob->gl_pathv[pglob->gl_pathc] = NULL; pglob->gl_flags = flags; /* Now we know how large the gl_pathv vector must be. */ new_pathv = (char **) realloc (pglob->gl_pathv, ((pglob->gl_pathc + 1) * sizeof (char *))); if (new_pathv != NULL) pglob->gl_pathv = new_pathv; } else return GLOB_NOMATCH; } globfree (&dirs); } else { status = glob_in_dir (filename, dirname, flags, errfunc, pglob); if (status != 0) return status; if (dirlen > 0) { /* Stick the directory on the front of each name. */ int ignore = oldcount; if ((flags & GLOB_DOOFFS) && ignore < pglob->gl_offs) ignore = pglob->gl_offs; if (prefix_array (dirname, &pglob->gl_pathv[ignore], pglob->gl_pathc - ignore)) { globfree (pglob); return GLOB_NOSPACE; } } } if (flags & GLOB_MARK) { /* Append slashes to directory names. */ int i; struct stat st; for (i = oldcount; i < pglob->gl_pathc; ++i) if (((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_stat) (pglob->gl_pathv[i], &st) : __stat (pglob->gl_pathv[i], &st)) == 0 && S_ISDIR (st.st_mode)) { size_t len = strlen (pglob->gl_pathv[i]) + 2; char *new = realloc (pglob->gl_pathv[i], len); if (new == NULL) { globfree (pglob); return GLOB_NOSPACE; } strcpy (&new[len - 2], "/"); pglob->gl_pathv[i] = new; } } if (!(flags & GLOB_NOSORT)) { /* Sort the vector. */ int non_sort = oldcount; if ((flags & GLOB_DOOFFS) && pglob->gl_offs > oldcount) non_sort = pglob->gl_offs; qsort ((__ptr_t) &pglob->gl_pathv[non_sort], pglob->gl_pathc - non_sort, sizeof (char *), collated_compare); } return 0; } /* Free storage allocated in PGLOB by a previous `glob' call. */ void globfree (pglob) register glob_t *pglob; { if (pglob->gl_pathv != NULL) { register int i; for (i = 0; i < pglob->gl_pathc; ++i) if (pglob->gl_pathv[i] != NULL) free ((__ptr_t) pglob->gl_pathv[i]); free ((__ptr_t) pglob->gl_pathv); } } /* Do a collated comparison of A and B. */ static int collated_compare (a, b) const __ptr_t a; const __ptr_t b; { const char *const s1 = *(const char *const * const) a; const char *const s2 = *(const char *const * const) b; if (s1 == s2) return 0; if (s1 == NULL) return 1; if (s2 == NULL) return -1; return strcoll (s1, s2); } /* Prepend DIRNAME to each of N members of ARRAY, replacing ARRAY's elements in place. Return nonzero if out of memory, zero if successful. A slash is inserted between DIRNAME and each elt of ARRAY, unless DIRNAME is just "/". Each old element of ARRAY is freed. */ static int prefix_array (dirname, array, n) const char *dirname; char **array; size_t n; { register size_t i; size_t dirlen = strlen (dirname); #if defined __MSDOS__ || defined WINDOWS32 int sep_char = '/'; # define DIRSEP_CHAR sep_char #else # define DIRSEP_CHAR '/' #endif if (dirlen == 1 && dirname[0] == '/') /* DIRNAME is just "/", so normal prepending would get us "//foo". We want "/foo" instead, so don't prepend any chars from DIRNAME. */ dirlen = 0; #if defined __MSDOS__ || defined WINDOWS32 else if (dirlen > 1) { if (dirname[dirlen - 1] == '/' && dirname[dirlen - 2] == ':') /* DIRNAME is "d:/". Don't prepend the slash from DIRNAME. */ --dirlen; else if (dirname[dirlen - 1] == ':') { /* DIRNAME is "d:". Use `:' instead of `/'. */ --dirlen; sep_char = ':'; } } #endif for (i = 0; i < n; ++i) { size_t eltlen = strlen (array[i]) + 1; char *new = (char *) malloc (dirlen + 1 + eltlen); if (new == NULL) { while (i > 0) free ((__ptr_t) array[--i]); return 1; } #ifdef HAVE_MEMPCPY { char *endp = (char *) mempcpy (new, dirname, dirlen); *endp++ = DIRSEP_CHAR; mempcpy (endp, array[i], eltlen); } #else memcpy (new, dirname, dirlen); new[dirlen] = DIRSEP_CHAR; memcpy (&new[dirlen + 1], array[i], eltlen); #endif free ((__ptr_t) array[i]); array[i] = new; } return 0; } /* We must not compile this function twice. */ #if !defined _LIBC || !defined NO_GLOB_PATTERN_P /* Return nonzero if PATTERN contains any metacharacters. Metacharacters can be quoted with backslashes if QUOTE is nonzero. */ int __glob_pattern_p (pattern, quote) const char *pattern; int quote; { register const char *p; int open = 0; for (p = pattern; *p != '\0'; ++p) switch (*p) { case '?': case '*': return 1; case '\\': if (quote && p[1] != '\0') ++p; break; case '[': open = 1; break; case ']': if (open) return 1; break; } return 0; } # ifdef _LIBC weak_alias (__glob_pattern_p, glob_pattern_p) # endif #endif /* Like `glob', but PATTERN is a final pathname component, and matches are searched for in DIRECTORY. The GLOB_NOSORT bit in FLAGS is ignored. No sorting is ever done. The GLOB_APPEND flag is assumed to be set (always appends). */ static int glob_in_dir (pattern, directory, flags, errfunc, pglob) const char *pattern; const char *directory; int flags; int (*errfunc) __P ((const char *, int)); glob_t *pglob; { __ptr_t stream = NULL; struct globlink { struct globlink *next; char *name; }; struct globlink *names = NULL; size_t nfound; int meta; int save; #ifdef VMS if (*directory == 0) directory = "[]"; #endif meta = __glob_pattern_p (pattern, !(flags & GLOB_NOESCAPE)); if (meta == 0) { if (flags & (GLOB_NOCHECK|GLOB_NOMAGIC)) /* We need not do any tests. The PATTERN contains no meta characters and we must not return an error therefore the result will always contain exactly one name. */ flags |= GLOB_NOCHECK; else { /* Since we use the normal file functions we can also use stat() to verify the file is there. */ struct stat st; size_t patlen = strlen (pattern); size_t dirlen = strlen (directory); char *fullname = (char *) __alloca (dirlen + 1 + patlen + 1); # ifdef HAVE_MEMPCPY mempcpy (mempcpy (mempcpy (fullname, directory, dirlen), "/", 1), pattern, patlen + 1); # else memcpy (fullname, directory, dirlen); fullname[dirlen] = '/'; memcpy (&fullname[dirlen + 1], pattern, patlen + 1); # endif if (((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_stat) (fullname, &st) : __stat (fullname, &st)) == 0) /* We found this file to be existing. Now tell the rest of the function to copy this name into the result. */ flags |= GLOB_NOCHECK; } nfound = 0; } else { if (pattern[0] == '\0') { /* This is a special case for matching directories like in "*a/". */ names = (struct globlink *) __alloca (sizeof (struct globlink)); names->name = (char *) malloc (1); if (names->name == NULL) goto memory_error; names->name[0] = '\0'; names->next = NULL; nfound = 1; meta = 0; } else { stream = ((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_opendir) (directory) : (__ptr_t) opendir (directory)); if (stream == NULL) { if (errno != ENOTDIR && ((errfunc != NULL && (*errfunc) (directory, errno)) || (flags & GLOB_ERR))) return GLOB_ABORTED; nfound = 0; meta = 0; } else { int fnm_flags = ((!(flags & GLOB_PERIOD) ? FNM_PERIOD : 0) | ((flags & GLOB_NOESCAPE) ? FNM_NOESCAPE : 0) #if defined HAVE_CASE_INSENSITIVE_FS | FNM_CASEFOLD #endif ); nfound = 0; flags |= GLOB_MAGCHAR; while (1) { const char *name; size_t len; struct dirent *d = ((flags & GLOB_ALTDIRFUNC) ? (*pglob->gl_readdir) (stream) : readdir ((DIR *) stream)); if (d == NULL) break; if (! REAL_DIR_ENTRY (d)) continue; #ifdef HAVE_D_TYPE /* If we shall match only directories use the information provided by the dirent call if possible. */ if ((flags & GLOB_ONLYDIR) && d->d_type != DT_UNKNOWN && d->d_type != DT_DIR) continue; #endif name = d->d_name; if (fnmatch (pattern, name, fnm_flags) == 0) { struct globlink *new = (struct globlink *) __alloca (sizeof (struct globlink)); len = NAMLEN (d); new->name = (char *) malloc (len + 1); if (new->name == NULL) goto memory_error; #ifdef HAVE_MEMPCPY *((char *) mempcpy ((__ptr_t) new->name, name, len)) = '\0'; #else memcpy ((__ptr_t) new->name, name, len); new->name[len] = '\0'; #endif new->next = names; names = new; ++nfound; } } } } } if (nfound == 0 && (flags & GLOB_NOCHECK)) { size_t len = strlen (pattern); nfound = 1; names = (struct globlink *) __alloca (sizeof (struct globlink)); names->next = NULL; names->name = (char *) malloc (len + 1); if (names->name == NULL) goto memory_error; #ifdef HAVE_MEMPCPY *((char *) mempcpy (names->name, pattern, len)) = '\0'; #else memcpy (names->name, pattern, len); names->name[len] = '\0'; #endif } if (nfound != 0) { pglob->gl_pathv = (char **) realloc (pglob->gl_pathv, (pglob->gl_pathc + ((flags & GLOB_DOOFFS) ? pglob->gl_offs : 0) + nfound + 1) * sizeof (char *)); if (pglob->gl_pathv == NULL) goto memory_error; if (flags & GLOB_DOOFFS) while (pglob->gl_pathc < pglob->gl_offs) pglob->gl_pathv[pglob->gl_pathc++] = NULL; for (; names != NULL; names = names->next) pglob->gl_pathv[pglob->gl_pathc++] = names->name; pglob->gl_pathv[pglob->gl_pathc] = NULL; pglob->gl_flags = flags; } save = errno; if (stream != NULL) { if (flags & GLOB_ALTDIRFUNC) (*pglob->gl_closedir) (stream); else closedir ((DIR *) stream); } __set_errno (save); return nfound == 0 ? GLOB_NOMATCH : 0; memory_error: { int save = errno; if (flags & GLOB_ALTDIRFUNC) (*pglob->gl_closedir) (stream); else closedir ((DIR *) stream); __set_errno (save); } while (names != NULL) { if (names->name != NULL) free ((__ptr_t) names->name); names = names->next; } return GLOB_NOSPACE; } #endif /* Not ELIDE_CODE. */ make-dfsg-3.81.orig/glob/glob.h0000644000175000017500000001643410416553102016540 0ustar srivastasrivasta/* Copyright (C) 1991, 92, 95, 96, 97, 98 Free Software Foundation, Inc. The GNU C Library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. The GNU C Library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details. You should have received a copy of the GNU Library General Public License along with this library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _GLOB_H #define _GLOB_H 1 #ifdef __cplusplus extern "C" { #endif #undef __ptr_t #if defined __cplusplus || (defined __STDC__ && __STDC__) || defined WINDOWS32 # if !defined __GLIBC__ # undef __P # undef __PMT # define __P(protos) protos # define __PMT(protos) protos # if !defined __GNUC__ || __GNUC__ < 2 # undef __const # define __const const # endif # endif # define __ptr_t void * #else /* Not C++ or ANSI C. */ # undef __P # undef __PMT # define __P(protos) () # define __PMT(protos) () # undef __const # define __const # define __ptr_t char * #endif /* C++ or ANSI C. */ /* We need `size_t' for the following definitions. */ #ifndef __size_t # if defined __FreeBSD__ # define __size_t size_t # else # if defined __GNUC__ && __GNUC__ >= 2 typedef __SIZE_TYPE__ __size_t; # else /* This is a guess. */ /*hb * Conflicts with DECCs aready defined type __size_t. * Defining an own type with a name beginning with '__' is no good. * Anyway if DECC is used and __SIZE_T is defined then __size_t is * already defined (and I hope it's exactly the one we need here). */ # if !(defined __DECC && defined __SIZE_T) typedef unsigned long int __size_t; # endif # endif # endif #else /* The GNU CC stddef.h version defines __size_t as empty. We need a real definition. */ # undef __size_t # define __size_t size_t #endif /* Bits set in the FLAGS argument to `glob'. */ #define GLOB_ERR (1 << 0)/* Return on read errors. */ #define GLOB_MARK (1 << 1)/* Append a slash to each name. */ #define GLOB_NOSORT (1 << 2)/* Don't sort the names. */ #define GLOB_DOOFFS (1 << 3)/* Insert PGLOB->gl_offs NULLs. */ #define GLOB_NOCHECK (1 << 4)/* If nothing matches, return the pattern. */ #define GLOB_APPEND (1 << 5)/* Append to results of a previous call. */ #define GLOB_NOESCAPE (1 << 6)/* Backslashes don't quote metacharacters. */ #define GLOB_PERIOD (1 << 7)/* Leading `.' can be matched by metachars. */ #if (!defined _POSIX_C_SOURCE || _POSIX_C_SOURCE < 2 || defined _BSD_SOURCE \ || defined _GNU_SOURCE) # define GLOB_MAGCHAR (1 << 8)/* Set in gl_flags if any metachars seen. */ # define GLOB_ALTDIRFUNC (1 << 9)/* Use gl_opendir et al functions. */ # define GLOB_BRACE (1 << 10)/* Expand "{a,b}" to "a" "b". */ # define GLOB_NOMAGIC (1 << 11)/* If no magic chars, return the pattern. */ # define GLOB_TILDE (1 << 12)/* Expand ~user and ~ to home directories. */ # define GLOB_ONLYDIR (1 << 13)/* Match only directories. */ # define GLOB_TILDE_CHECK (1 << 14)/* Like GLOB_TILDE but return an error if the user name is not available. */ # define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ GLOB_PERIOD|GLOB_ALTDIRFUNC|GLOB_BRACE| \ GLOB_NOMAGIC|GLOB_TILDE|GLOB_ONLYDIR|GLOB_TILDE_CHECK) #else # define __GLOB_FLAGS (GLOB_ERR|GLOB_MARK|GLOB_NOSORT|GLOB_DOOFFS| \ GLOB_NOESCAPE|GLOB_NOCHECK|GLOB_APPEND| \ GLOB_PERIOD) #endif /* Error returns from `glob'. */ #define GLOB_NOSPACE 1 /* Ran out of memory. */ #define GLOB_ABORTED 2 /* Read error. */ #define GLOB_NOMATCH 3 /* No matches found. */ #define GLOB_NOSYS 4 /* Not implemented. */ #ifdef _GNU_SOURCE /* Previous versions of this file defined GLOB_ABEND instead of GLOB_ABORTED. Provide a compatibility definition here. */ # define GLOB_ABEND GLOB_ABORTED #endif /* Structure describing a globbing run. */ #if !defined _AMIGA && !defined VMS /* Buggy compiler. */ struct stat; #endif typedef struct { __size_t gl_pathc; /* Count of paths matched by the pattern. */ char **gl_pathv; /* List of matched pathnames. */ __size_t gl_offs; /* Slots to reserve in `gl_pathv'. */ int gl_flags; /* Set to FLAGS, maybe | GLOB_MAGCHAR. */ /* If the GLOB_ALTDIRFUNC flag is set, the following functions are used instead of the normal file access functions. */ void (*gl_closedir) __PMT ((void *)); struct dirent *(*gl_readdir) __PMT ((void *)); __ptr_t (*gl_opendir) __PMT ((__const char *)); int (*gl_lstat) __PMT ((__const char *, struct stat *)); #if defined(VMS) && defined(__DECC) && !defined(_POSIX_C_SOURCE) int (*gl_stat) __PMT ((__const char *, struct stat *, ...)); #else int (*gl_stat) __PMT ((__const char *, struct stat *)); #endif } glob_t; #ifdef _LARGEFILE64_SOURCE struct stat64; typedef struct { __size_t gl_pathc; char **gl_pathv; __size_t gl_offs; int gl_flags; /* If the GLOB_ALTDIRFUNC flag is set, the following functions are used instead of the normal file access functions. */ void (*gl_closedir) __PMT ((void *)); struct dirent64 *(*gl_readdir) __PMT ((void *)); __ptr_t (*gl_opendir) __PMT ((__const char *)); int (*gl_lstat) __PMT ((__const char *, struct stat64 *)); int (*gl_stat) __PMT ((__const char *, struct stat64 *)); } glob64_t; #endif #if _FILE_OFFSET_BITS == 64 && __GNUC__ < 2 # define glob glob64 # define globfree globfree64 #else # ifdef _LARGEFILE64_SOURCE extern int glob64 __P ((__const char *__pattern, int __flags, int (*__errfunc) (__const char *, int), glob64_t *__pglob)); extern void globfree64 __P ((glob64_t *__pglob)); # endif #endif /* Do glob searching for PATTERN, placing results in PGLOB. The bits defined above may be set in FLAGS. If a directory cannot be opened or read and ERRFUNC is not nil, it is called with the pathname that caused the error, and the `errno' value from the failing call; if it returns non-zero `glob' returns GLOB_ABEND; if it returns zero, the error is ignored. If memory cannot be allocated for PGLOB, GLOB_NOSPACE is returned. Otherwise, `glob' returns zero. */ #if _FILE_OFFSET_BITS != 64 || __GNUC__ < 2 extern int glob __P ((__const char *__pattern, int __flags, int (*__errfunc) (__const char *, int), glob_t *__pglob)); /* Free storage allocated in PGLOB by a previous `glob' call. */ extern void globfree __P ((glob_t *__pglob)); #else extern int glob __P ((__const char *__pattern, int __flags, int (*__errfunc) (__const char *, int), glob_t *__pglob)) __asm__ ("glob64"); extern void globfree __P ((glob_t *__pglob)) __asm__ ("globfree64"); #endif #ifdef _GNU_SOURCE /* Return nonzero if PATTERN contains any metacharacters. Metacharacters can be quoted with backslashes if QUOTE is nonzero. This function is not part of the interface specified by POSIX.2 but several programs want to use it. */ extern int glob_pattern_p __P ((__const char *__pattern, int __quote)); #endif #ifdef __cplusplus } #endif #endif /* glob.h */ make-dfsg-3.81.orig/hash.c0000644000175000017500000002016010416553102015577 0ustar srivastasrivasta/* hash.c -- hash table maintenance Copyright (C) 1995, 1999, 2002 Free Software Foundation, Inc. Written by Greg McGary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "hash.h" #define CALLOC(t, n) ((t *) calloc (sizeof (t), (n))) #define MALLOC(t, n) ((t *) xmalloc (sizeof (t) * (n))) #define REALLOC(o, t, n) ((t *) xrealloc ((o), sizeof (t) * (n))) #define CLONE(o, t, n) ((t *) memcpy (MALLOC (t, (n)), (o), sizeof (t) * (n))) static void hash_rehash __P((struct hash_table* ht)); static unsigned long round_up_2 __P((unsigned long rough)); /* Implement double hashing with open addressing. The table size is always a power of two. The secondary (`increment') hash function is forced to return an odd-value, in order to be relatively prime to the table size. This guarantees that the increment can potentially hit every slot in the table during collision resolution. */ void *hash_deleted_item = &hash_deleted_item; /* Force the table size to be a power of two, possibly rounding up the given size. */ void hash_init (struct hash_table *ht, unsigned long size, hash_func_t hash_1, hash_func_t hash_2, hash_cmp_func_t hash_cmp) { ht->ht_size = round_up_2 (size); ht->ht_empty_slots = ht->ht_size; ht->ht_vec = (void**) CALLOC (struct token *, ht->ht_size); if (ht->ht_vec == 0) { fprintf (stderr, _("can't allocate %ld bytes for hash table: memory exhausted"), ht->ht_size * sizeof(struct token *)); exit (1); } ht->ht_capacity = ht->ht_size - (ht->ht_size / 16); /* 93.75% loading factor */ ht->ht_fill = 0; ht->ht_collisions = 0; ht->ht_lookups = 0; ht->ht_rehashes = 0; ht->ht_hash_1 = hash_1; ht->ht_hash_2 = hash_2; ht->ht_compare = hash_cmp; } /* Load an array of items into `ht'. */ void hash_load (struct hash_table *ht, void *item_table, unsigned long cardinality, unsigned long size) { char *items = (char *) item_table; while (cardinality--) { hash_insert (ht, items); items += size; } } /* Returns the address of the table slot matching `key'. If `key' is not found, return the address of an empty slot suitable for inserting `key'. The caller is responsible for incrementing ht_fill on insertion. */ void ** hash_find_slot (struct hash_table *ht, const void *key) { void **slot; void **deleted_slot = 0; unsigned int hash_2 = 0; unsigned int hash_1 = (*ht->ht_hash_1) (key); ht->ht_lookups++; for (;;) { hash_1 &= (ht->ht_size - 1); slot = &ht->ht_vec[hash_1]; if (*slot == 0) return (deleted_slot ? deleted_slot : slot); if (*slot == hash_deleted_item) { if (deleted_slot == 0) deleted_slot = slot; } else { if (key == *slot) return slot; if ((*ht->ht_compare) (key, *slot) == 0) return slot; ht->ht_collisions++; } if (!hash_2) hash_2 = (*ht->ht_hash_2) (key) | 1; hash_1 += hash_2; } } void * hash_find_item (struct hash_table *ht, const void *key) { void **slot = hash_find_slot (ht, key); return ((HASH_VACANT (*slot)) ? 0 : *slot); } void * hash_insert (struct hash_table *ht, const void *item) { void **slot = hash_find_slot (ht, item); const void *old_item = slot ? *slot : 0; hash_insert_at (ht, item, slot); return (void *)((HASH_VACANT (old_item)) ? 0 : old_item); } void * hash_insert_at (struct hash_table *ht, const void *item, const void *slot) { const void *old_item = *(void **) slot; if (HASH_VACANT (old_item)) { ht->ht_fill++; if (old_item == 0) ht->ht_empty_slots--; old_item = item; } *(void const **) slot = item; if (ht->ht_empty_slots < ht->ht_size - ht->ht_capacity) { hash_rehash (ht); return (void *) hash_find_slot (ht, item); } else return (void *) slot; } void * hash_delete (struct hash_table *ht, const void *item) { void **slot = hash_find_slot (ht, item); return hash_delete_at (ht, slot); } void * hash_delete_at (struct hash_table *ht, const void *slot) { void *item = *(void **) slot; if (!HASH_VACANT (item)) { *(void const **) slot = hash_deleted_item; ht->ht_fill--; return item; } else return 0; } void hash_free_items (struct hash_table *ht) { void **vec = ht->ht_vec; void **end = &vec[ht->ht_size]; for (; vec < end; vec++) { void *item = *vec; if (!HASH_VACANT (item)) free (item); *vec = 0; } ht->ht_fill = 0; ht->ht_empty_slots = ht->ht_size; } void hash_delete_items (struct hash_table *ht) { void **vec = ht->ht_vec; void **end = &vec[ht->ht_size]; for (; vec < end; vec++) *vec = 0; ht->ht_fill = 0; ht->ht_collisions = 0; ht->ht_lookups = 0; ht->ht_rehashes = 0; ht->ht_empty_slots = ht->ht_size; } void hash_free (struct hash_table *ht, int free_items) { if (free_items) hash_free_items (ht); else { ht->ht_fill = 0; ht->ht_empty_slots = ht->ht_size; } free (ht->ht_vec); ht->ht_vec = 0; ht->ht_capacity = 0; } void hash_map (struct hash_table *ht, hash_map_func_t map) { void **slot; void **end = &ht->ht_vec[ht->ht_size]; for (slot = ht->ht_vec; slot < end; slot++) { if (!HASH_VACANT (*slot)) (*map) (*slot); } } void hash_map_arg (struct hash_table *ht, hash_map_arg_func_t map, void *arg) { void **slot; void **end = &ht->ht_vec[ht->ht_size]; for (slot = ht->ht_vec; slot < end; slot++) { if (!HASH_VACANT (*slot)) (*map) (*slot, arg); } } /* Double the size of the hash table in the event of overflow... */ static void hash_rehash (struct hash_table *ht) { unsigned long old_ht_size = ht->ht_size; void **old_vec = ht->ht_vec; void **ovp; if (ht->ht_fill >= ht->ht_capacity) { ht->ht_size *= 2; ht->ht_capacity = ht->ht_size - (ht->ht_size >> 4); } ht->ht_rehashes++; ht->ht_vec = (void **) CALLOC (struct token *, ht->ht_size); for (ovp = old_vec; ovp < &old_vec[old_ht_size]; ovp++) { if (! HASH_VACANT (*ovp)) { void **slot = hash_find_slot (ht, *ovp); *slot = *ovp; } } ht->ht_empty_slots = ht->ht_size - ht->ht_fill; free (old_vec); } void hash_print_stats (struct hash_table *ht, FILE *out_FILE) { /* GKM FIXME: honor NO_FLOAT */ fprintf (out_FILE, _("Load=%ld/%ld=%.0f%%, "), ht->ht_fill, ht->ht_size, 100.0 * (double) ht->ht_fill / (double) ht->ht_size); fprintf (out_FILE, _("Rehash=%d, "), ht->ht_rehashes); fprintf (out_FILE, _("Collisions=%ld/%ld=%.0f%%"), ht->ht_collisions, ht->ht_lookups, (ht->ht_lookups ? (100.0 * (double) ht->ht_collisions / (double) ht->ht_lookups) : 0)); } /* Dump all items into a NULL-terminated vector. Use the user-supplied vector, or malloc one. */ void ** hash_dump (struct hash_table *ht, void **vector_0, qsort_cmp_t compare) { void **vector; void **slot; void **end = &ht->ht_vec[ht->ht_size]; if (vector_0 == 0) vector_0 = MALLOC (void *, ht->ht_fill + 1); vector = vector_0; for (slot = ht->ht_vec; slot < end; slot++) if (!HASH_VACANT (*slot)) *vector++ = *slot; *vector = 0; if (compare) qsort (vector_0, ht->ht_fill, sizeof (void *), compare); return vector_0; } /* Round a given number up to the nearest power of 2. */ static unsigned long round_up_2 (unsigned long n) { n |= (n >> 1); n |= (n >> 2); n |= (n >> 4); n |= (n >> 8); n |= (n >> 16); #if !defined(HAVE_LIMITS_H) || ULONG_MAX > 4294967295 /* We only need this on systems where unsigned long is >32 bits. */ n |= (n >> 32); #endif return n + 1; } make-dfsg-3.81.orig/hash.h0000644000175000017500000002026010416553102015605 0ustar srivastasrivasta/* hash.h -- decls for hash table Copyright (C) 1995, 1999, 2002 Free Software Foundation, Inc. Written by Greg McGary This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _hash_h_ #define _hash_h_ #include #include #if defined __cplusplus || (defined __STDC__ && __STDC__) || defined WINDOWS32 # if !defined __GLIBC__ || !defined __P # undef __P # define __P(protos) protos # endif #else /* Not C++ or ANSI C. */ # undef __P # define __P(protos) () /* We can get away without defining `const' here only because in this file it is used only inside the prototype for `fnmatch', which is elided in non-ANSI C where `const' is problematical. */ #endif /* C++ or ANSI C. */ typedef unsigned long (*hash_func_t) __P((void const *key)); typedef int (*hash_cmp_func_t) __P((void const *x, void const *y)); typedef void (*hash_map_func_t) __P((void const *item)); typedef void (*hash_map_arg_func_t) __P((void const *item, void *arg)); struct hash_table { void **ht_vec; unsigned long ht_size; /* total number of slots (power of 2) */ unsigned long ht_capacity; /* usable slots, limited by loading-factor */ unsigned long ht_fill; /* items in table */ unsigned long ht_empty_slots; /* empty slots not including deleted slots */ unsigned long ht_collisions; /* # of failed calls to comparison function */ unsigned long ht_lookups; /* # of queries */ unsigned int ht_rehashes; /* # of times we've expanded table */ hash_func_t ht_hash_1; /* primary hash function */ hash_func_t ht_hash_2; /* secondary hash function */ hash_cmp_func_t ht_compare; /* comparison function */ }; typedef int (*qsort_cmp_t) __P((void const *, void const *)); void hash_init __P((struct hash_table *ht, unsigned long size, hash_func_t hash_1, hash_func_t hash_2, hash_cmp_func_t hash_cmp)); void hash_load __P((struct hash_table *ht, void *item_table, unsigned long cardinality, unsigned long size)); void **hash_find_slot __P((struct hash_table *ht, void const *key)); void *hash_find_item __P((struct hash_table *ht, void const *key)); void *hash_insert __P((struct hash_table *ht, const void *item)); void *hash_insert_at __P((struct hash_table *ht, const void *item, void const *slot)); void *hash_delete __P((struct hash_table *ht, void const *item)); void *hash_delete_at __P((struct hash_table *ht, void const *slot)); void hash_delete_items __P((struct hash_table *ht)); void hash_free_items __P((struct hash_table *ht)); void hash_free __P((struct hash_table *ht, int free_items)); void hash_map __P((struct hash_table *ht, hash_map_func_t map)); void hash_map_arg __P((struct hash_table *ht, hash_map_arg_func_t map, void *arg)); void hash_print_stats __P((struct hash_table *ht, FILE *out_FILE)); void **hash_dump __P((struct hash_table *ht, void **vector_0, qsort_cmp_t compare)); extern void *hash_deleted_item; #define HASH_VACANT(item) ((item) == 0 || (void *) (item) == hash_deleted_item) /* hash and comparison macros for case-sensitive string keys. */ #define STRING_HASH_1(KEY, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ while (*++_key_) \ (RESULT) += (*_key_ << (_key_[1] & 0xf)); \ } while (0) #define return_STRING_HASH_1(KEY) do { \ unsigned long _result_ = 0; \ STRING_HASH_1 ((KEY), _result_); \ return _result_; \ } while (0) #define STRING_HASH_2(KEY, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ while (*++_key_) \ (RESULT) += (*_key_ << (_key_[1] & 0x7)); \ } while (0) #define return_STRING_HASH_2(KEY) do { \ unsigned long _result_ = 0; \ STRING_HASH_2 ((KEY), _result_); \ return _result_; \ } while (0) #define STRING_COMPARE(X, Y, RESULT) do { \ RESULT = strcmp ((X), (Y)); \ } while (0) #define return_STRING_COMPARE(X, Y) do { \ return strcmp ((X), (Y)); \ } while (0) #define STRING_N_HASH_1(KEY, N, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ int _n_ = (N); \ if (_n_) \ while (--_n_ && *++_key_) \ (RESULT) += (*_key_ << (_key_[1] & 0xf)); \ (RESULT) += *++_key_; \ } while (0) #define return_STRING_N_HASH_1(KEY, N) do { \ unsigned long _result_ = 0; \ STRING_N_HASH_1 ((KEY), (N), _result_); \ return _result_; \ } while (0) #define STRING_N_HASH_2(KEY, N, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ int _n_ = (N); \ if (_n_) \ while (--_n_ && *++_key_) \ (RESULT) += (*_key_ << (_key_[1] & 0x7)); \ (RESULT) += *++_key_; \ } while (0) #define return_STRING_N_HASH_2(KEY, N) do { \ unsigned long _result_ = 0; \ STRING_N_HASH_2 ((KEY), (N), _result_); \ return _result_; \ } while (0) #define STRING_N_COMPARE(X, Y, N, RESULT) do { \ RESULT = strncmp ((X), (Y), (N)); \ } while (0) #define return_STRING_N_COMPARE(X, Y, N) do { \ return strncmp ((X), (Y), (N)); \ } while (0) #ifdef HAVE_CASE_INSENSITIVE_FS /* hash and comparison macros for case-insensitive string _key_s. */ #define ISTRING_HASH_1(KEY, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ while (*++_key_) \ (RESULT) += ((isupper (*_key_) ? tolower (*_key_) : *_key_) << (_key_[1] & 0xf)); \ } while (0) #define return_ISTRING_HASH_1(KEY) do { \ unsigned long _result_ = 0; \ ISTRING_HASH_1 ((KEY), _result_); \ return _result_; \ } while (0) #define ISTRING_HASH_2(KEY, RESULT) do { \ unsigned char const *_key_ = (unsigned char const *) (KEY) - 1; \ while (*++_key_) \ (RESULT) += ((isupper (*_key_) ? tolower (*_key_) : *_key_) << (_key_[1] & 0x7)); \ } while (0) #define return_ISTRING_HASH_2(KEY) do { \ unsigned long _result_ = 0; \ ISTRING_HASH_2 ((KEY), _result_); \ return _result_; \ } while (0) #define ISTRING_COMPARE(X, Y, RESULT) do { \ RESULT = strcmpi ((X), (Y)); \ } while (0) #define return_ISTRING_COMPARE(X, Y) do { \ return strcmpi ((X), (Y)); \ } while (0) #else #define ISTRING_HASH_1(KEY, RESULT) STRING_HASH_1 ((KEY), (RESULT)) #define return_ISTRING_HASH_1(KEY) return_STRING_HASH_1 (KEY) #define ISTRING_HASH_2(KEY, RESULT) STRING_HASH_2 ((KEY), (RESULT)) #define return_ISTRING_HASH_2(KEY) return_STRING_HASH_2 (KEY) #define ISTRING_COMPARE(X, Y, RESULT) STRING_COMPARE ((X), (Y), (RESULT)) #define return_ISTRING_COMPARE(X, Y) return_STRING_COMPARE ((X), (Y)) #endif /* hash and comparison macros for integer _key_s. */ #define INTEGER_HASH_1(KEY, RESULT) do { \ (RESULT) += ((unsigned long)(KEY)); \ } while (0) #define return_INTEGER_HASH_1(KEY) do { \ unsigned long _result_ = 0; \ INTEGER_HASH_1 ((KEY), _result_); \ return _result_; \ } while (0) #define INTEGER_HASH_2(KEY, RESULT) do { \ (RESULT) += ~((unsigned long)(KEY)); \ } while (0) #define return_INTEGER_HASH_2(KEY) do { \ unsigned long _result_ = 0; \ INTEGER_HASH_2 ((KEY), _result_); \ return _result_; \ } while (0) #define INTEGER_COMPARE(X, Y, RESULT) do { \ (RESULT) = X - Y; \ } while (0) #define return_INTEGER_COMPARE(X, Y) do { \ int _result_; \ INTEGER_COMPARE (X, Y, _result_); \ return _result_; \ } while (0) /* hash and comparison macros for address keys. */ #define ADDRESS_HASH_1(KEY, RESULT) INTEGER_HASH_1 (((unsigned long)(KEY)) >> 3, (RESULT)) #define ADDRESS_HASH_2(KEY, RESULT) INTEGER_HASH_2 (((unsigned long)(KEY)) >> 3, (RESULT)) #define ADDRESS_COMPARE(X, Y, RESULT) INTEGER_COMPARE ((X), (Y), (RESULT)) #define return_ADDRESS_HASH_1(KEY) return_INTEGER_HASH_1 (((unsigned long)(KEY)) >> 3) #define return_ADDRESS_HASH_2(KEY) return_INTEGER_HASH_2 (((unsigned long)(KEY)) >> 3) #define return_ADDRESS_COMPARE(X, Y) return_INTEGER_COMPARE ((X), (Y)) #endif /* not _hash_h_ */ make-dfsg-3.81.orig/implicit.c0000644000175000017500000007527010416553102016502 0ustar srivastasrivasta/* Implicit rule searching for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "rule.h" #include "dep.h" #include "debug.h" #include "variable.h" #include "job.h" /* struct child, used inside commands.h */ #include "commands.h" /* set_file_variables */ static int pattern_search PARAMS ((struct file *file, int archive, unsigned int depth, unsigned int recursions)); /* For a FILE which has no commands specified, try to figure out some from the implicit pattern rules. Returns 1 if a suitable implicit rule was found, after modifying FILE to contain the appropriate commands and deps, or returns 0 if no implicit rule was found. */ int try_implicit_rule (struct file *file, unsigned int depth) { DBF (DB_IMPLICIT, _("Looking for an implicit rule for `%s'.\n")); /* The order of these searches was previously reversed. My logic now is that since the non-archive search uses more information in the target (the archive search omits the archive name), it is more specific and should come first. */ if (pattern_search (file, 0, depth, 0)) return 1; #ifndef NO_ARCHIVES /* If this is an archive member reference, use just the archive member name to search for implicit rules. */ if (ar_name (file->name)) { DBF (DB_IMPLICIT, _("Looking for archive-member implicit rule for `%s'.\n")); if (pattern_search (file, 1, depth, 0)) return 1; } #endif return 0; } /* Struct idep captures information about implicit prerequisites that come from implicit rules. */ struct idep { struct idep *next; /* struct dep -compatible interface */ char *name; /* name of the prerequisite */ struct file *intermediate_file; /* intermediate file, 0 otherwise */ char *intermediate_pattern; /* pattern for intermediate file */ unsigned char had_stem; /* had % substituted with stem */ unsigned char ignore_mtime; /* ignore_mtime flag */ }; static void free_idep_chain (struct idep *p) { struct idep *n; for (; p != 0; p = n) { n = p->next; if (p->name) { struct file *f = p->intermediate_file; if (f != 0 && (f->stem < f->name || f->stem > f->name + strlen (f->name))) free (f->stem); free (p->name); } free (p); } } /* Scans the BUFFER for the next word with whitespace as a separator. Returns the pointer to the beginning of the word. LENGTH hold the length of the word. */ static char * get_next_word (char *buffer, unsigned int *length) { char *p = buffer, *beg; char c; /* Skip any leading whitespace. */ while (isblank ((unsigned char)*p)) ++p; beg = p; c = *(p++); if (c == '\0') return 0; /* We already found the first value of "c", above. */ while (1) { char closeparen; int count; switch (c) { case '\0': case ' ': case '\t': goto done_word; case '$': c = *(p++); if (c == '$') break; /* This is a variable reference, so read it to the matching close paren. */ if (c == '(') closeparen = ')'; else if (c == '{') closeparen = '}'; else /* This is a single-letter variable reference. */ break; for (count = 0; *p != '\0'; ++p) { if (*p == c) ++count; else if (*p == closeparen && --count < 0) { ++p; break; } } break; case '|': goto done; default: break; } c = *(p++); } done_word: --p; done: if (length) *length = p - beg; return beg; } /* Search the pattern rules for a rule with an existing dependency to make FILE. If a rule is found, the appropriate commands and deps are put in FILE and 1 is returned. If not, 0 is returned. If ARCHIVE is nonzero, FILE->name is of the form "LIB(MEMBER)". A rule for "(MEMBER)" will be searched for, and "(MEMBER)" will not be chopped up into directory and filename parts. If an intermediate file is found by pattern search, the intermediate file is set up as a target by the recursive call and is also made a dependency of FILE. DEPTH is used for debugging messages. */ static int pattern_search (struct file *file, int archive, unsigned int depth, unsigned int recursions) { /* Filename we are searching for a rule for. */ char *filename = archive ? strchr (file->name, '(') : file->name; /* Length of FILENAME. */ unsigned int namelen = strlen (filename); /* The last slash in FILENAME (or nil if there is none). */ char *lastslash; /* This is a file-object used as an argument in recursive calls. It never contains any data except during a recursive call. */ struct file *intermediate_file = 0; /* This linked list records all the prerequisites actually found for a rule along with some other useful information (see struct idep for details). */ struct idep* deps = 0; /* 1 if we need to remove explicit prerequisites, 0 otherwise. */ unsigned int remove_explicit_deps = 0; /* Names of possible dependencies are constructed in this buffer. */ register char *depname = (char *) alloca (namelen + max_pattern_dep_length); /* The start and length of the stem of FILENAME for the current rule. */ register char *stem = 0; register unsigned int stemlen = 0; register unsigned int fullstemlen = 0; /* Buffer in which we store all the rules that are possibly applicable. */ struct rule **tryrules = (struct rule **) xmalloc (num_pattern_rules * max_pattern_targets * sizeof (struct rule *)); /* Number of valid elements in TRYRULES. */ unsigned int nrules; /* The numbers of the rule targets of each rule in TRYRULES that matched the target file. */ unsigned int *matches = (unsigned int *) alloca (num_pattern_rules * sizeof (unsigned int)); /* Each element is nonzero if LASTSLASH was used in matching the corresponding element of TRYRULES. */ char *checked_lastslash = (char *) alloca (num_pattern_rules * sizeof (char)); /* The index in TRYRULES of the rule we found. */ unsigned int foundrule; /* Nonzero if should consider intermediate files as dependencies. */ int intermed_ok; /* Nonzero if we have matched a pattern-rule target that is not just `%'. */ int specific_rule_matched = 0; unsigned int i = 0; /* uninit checks OK */ struct rule *rule; struct dep *dep, *expl_d; char *p, *vname; struct idep *d; struct idep **id_ptr; struct dep **d_ptr; PATH_VAR (stem_str); /* @@ Need to get rid of stem, stemlen, etc. */ #ifndef NO_ARCHIVES if (archive || ar_name (filename)) lastslash = 0; else #endif { /* Set LASTSLASH to point at the last slash in FILENAME but not counting any slash at the end. (foo/bar/ counts as bar/ in directory foo/, not empty in directory foo/bar/.) */ #ifdef VMS lastslash = strrchr (filename, ']'); if (lastslash == 0) lastslash = strrchr (filename, ':'); #else lastslash = strrchr (filename, '/'); #ifdef HAVE_DOS_PATHS /* Handle backslashes (possibly mixed with forward slashes) and the case of "d:file". */ { char *bslash = strrchr (filename, '\\'); if (lastslash == 0 || bslash > lastslash) lastslash = bslash; if (lastslash == 0 && filename[0] && filename[1] == ':') lastslash = filename + 1; } #endif #endif if (lastslash != 0 && lastslash[1] == '\0') lastslash = 0; } /* First see which pattern rules match this target and may be considered. Put them in TRYRULES. */ nrules = 0; for (rule = pattern_rules; rule != 0; rule = rule->next) { /* If the pattern rule has deps but no commands, ignore it. Users cancel built-in rules by redefining them without commands. */ if (rule->deps != 0 && rule->cmds == 0) continue; /* If this rule is in use by a parent pattern_search, don't use it here. */ if (rule->in_use) { DBS (DB_IMPLICIT, (_("Avoiding implicit rule recursion.\n"))); continue; } for (i = 0; rule->targets[i] != 0; ++i) { char *target = rule->targets[i]; char *suffix = rule->suffixes[i]; int check_lastslash; /* Rules that can match any filename and are not terminal are ignored if we're recursing, so that they cannot be intermediate files. */ if (recursions > 0 && target[1] == '\0' && !rule->terminal) continue; if (rule->lens[i] > namelen) /* It can't possibly match. */ continue; /* From the lengths of the filename and the pattern parts, find the stem: the part of the filename that matches the %. */ stem = filename + (suffix - target - 1); stemlen = namelen - rule->lens[i] + 1; /* Set CHECK_LASTSLASH if FILENAME contains a directory prefix and the target pattern does not contain a slash. */ check_lastslash = 0; if (lastslash) { #ifdef VMS check_lastslash = (strchr (target, ']') == 0 && strchr (target, ':') == 0); #else check_lastslash = strchr (target, '/') == 0; #ifdef HAVE_DOS_PATHS /* Didn't find it yet: check for DOS-type directories. */ if (check_lastslash) { char *b = strchr (target, '\\'); check_lastslash = !(b || (target[0] && target[1] == ':')); } #endif #endif } if (check_lastslash) { /* If so, don't include the directory prefix in STEM here. */ unsigned int difference = lastslash - filename + 1; if (difference > stemlen) continue; stemlen -= difference; stem += difference; } /* Check that the rule pattern matches the text before the stem. */ if (check_lastslash) { if (stem > (lastslash + 1) && !strneq (target, lastslash + 1, stem - lastslash - 1)) continue; } else if (stem > filename && !strneq (target, filename, stem - filename)) continue; /* Check that the rule pattern matches the text after the stem. We could test simply use streq, but this way we compare the first two characters immediately. This saves time in the very common case where the first character matches because it is a period. */ if (*suffix != stem[stemlen] || (*suffix != '\0' && !streq (&suffix[1], &stem[stemlen + 1]))) continue; /* Record if we match a rule that not all filenames will match. */ if (target[1] != '\0') specific_rule_matched = 1; /* A rule with no dependencies and no commands exists solely to set specific_rule_matched when it matches. Don't try to use it. */ if (rule->deps == 0 && rule->cmds == 0) continue; /* Record this rule in TRYRULES and the index of the matching target in MATCHES. If several targets of the same rule match, that rule will be in TRYRULES more than once. */ tryrules[nrules] = rule; matches[nrules] = i; checked_lastslash[nrules] = check_lastslash; ++nrules; } } /* If we have found a matching rule that won't match all filenames, retroactively reject any non-"terminal" rules that do always match. */ if (specific_rule_matched) for (i = 0; i < nrules; ++i) if (!tryrules[i]->terminal) { register unsigned int j; for (j = 0; tryrules[i]->targets[j] != 0; ++j) if (tryrules[i]->targets[j][1] == '\0') break; if (tryrules[i]->targets[j] != 0) tryrules[i] = 0; } /* We are going to do second expansion so initialize file variables for the rule. */ initialize_file_variables (file, 0); /* Try each rule once without intermediate files, then once with them. */ for (intermed_ok = 0; intermed_ok == !!intermed_ok; ++intermed_ok) { /* Try each pattern rule till we find one that applies. If it does, expand its dependencies (as substituted) and chain them in DEPS. */ for (i = 0; i < nrules; i++) { struct file *f; unsigned int failed = 0; int check_lastslash; int file_variables_set = 0; rule = tryrules[i]; remove_explicit_deps = 0; /* RULE is nil when we discover that a rule, already placed in TRYRULES, should not be applied. */ if (rule == 0) continue; /* Reject any terminal rules if we're looking to make intermediate files. */ if (intermed_ok && rule->terminal) continue; /* Mark this rule as in use so a recursive pattern_search won't try to use it. */ rule->in_use = 1; /* From the lengths of the filename and the matching pattern parts, find the stem: the part of the filename that matches the %. */ stem = filename + (rule->suffixes[matches[i]] - rule->targets[matches[i]]) - 1; stemlen = namelen - rule->lens[matches[i]] + 1; check_lastslash = checked_lastslash[i]; if (check_lastslash) { stem += lastslash - filename + 1; stemlen -= (lastslash - filename) + 1; } DBS (DB_IMPLICIT, (_("Trying pattern rule with stem `%.*s'.\n"), (int) stemlen, stem)); strncpy (stem_str, stem, stemlen); stem_str[stemlen] = '\0'; /* Temporary assign STEM to file->stem (needed to set file variables below). */ file->stem = stem_str; /* Try each dependency; see if it "exists". */ for (dep = rule->deps; dep != 0; dep = dep->next) { unsigned int len; char *p2; unsigned int order_only = 0; /* Set if '|' was seen. */ /* In an ideal world we would take the dependency line, substitute the stem, re-expand the whole line and chop it into individual prerequisites. Unfortunately this won't work because of the "check_lastslash" twist. Instead, we will have to go word by word, taking $()'s into account, for each word we will substitute the stem, re-expand, chop it up, and, if check_lastslash != 0, add the directory part to each resulting prerequisite. */ p = get_next_word (dep->name, &len); while (1) { int add_dir = 0; int had_stem = 0; if (p == 0) break; /* No more words */ /* Is there a pattern in this prerequisite? */ for (p2 = p; p2 < p + len && *p2 != '%'; ++p2) ; if (dep->need_2nd_expansion) { /* If the dependency name has %, substitute the stem. Watch out, we are going to do something tricky here. If we just replace % with the stem value, later, when we do the second expansion, we will re-expand this stem value once again. This is not good especially if you have certain characters in your stem (like $). Instead, we will replace % with $* and allow the second expansion to take care of it for us. This way (since $* is a simple variable) there won't be additional re-expansion of the stem. */ if (p2 < p + len) { register unsigned int i = p2 - p; bcopy (p, depname, i); bcopy ("$*", depname + i, 2); bcopy (p2 + 1, depname + i + 2, len - i - 1); depname[len + 2 - 1] = '\0'; if (check_lastslash) add_dir = 1; had_stem = 1; } else { bcopy (p, depname, len); depname[len] = '\0'; } /* Set file variables. Note that we cannot do it once at the beginning of the function because of the stem value. */ if (!file_variables_set) { set_file_variables (file); file_variables_set = 1; } p2 = variable_expand_for_file (depname, file); } else { if (p2 < p + len) { register unsigned int i = p2 - p; bcopy (p, depname, i); bcopy (stem_str, depname + i, stemlen); bcopy (p2 + 1, depname + i + stemlen, len - i - 1); depname[len + stemlen - 1] = '\0'; if (check_lastslash) add_dir = 1; had_stem = 1; } else { bcopy (p, depname, len); depname[len] = '\0'; } p2 = depname; } /* Parse the dependencies. */ while (1) { id_ptr = &deps; for (; *id_ptr; id_ptr = &(*id_ptr)->next) ; *id_ptr = (struct idep *) multi_glob ( parse_file_seq (&p2, order_only ? '\0' : '|', sizeof (struct idep), 1), sizeof (struct idep)); /* @@ It would be nice to teach parse_file_seq or multi_glob to add prefix. This would save us some reallocations. */ if (order_only || add_dir || had_stem) { unsigned long l = lastslash - filename + 1; for (d = *id_ptr; d != 0; d = d->next) { if (order_only) d->ignore_mtime = 1; if (add_dir) { char *p = d->name; d->name = xmalloc (strlen (p) + l + 1); bcopy (filename, d->name, l); bcopy (p, d->name + l, strlen (p) + 1); free (p); } if (had_stem) d->had_stem = 1; } } if (!order_only && *p2) { ++p2; order_only = 1; continue; } break; } p += len; p = get_next_word (p, &len); } } /* Reset the stem in FILE. */ file->stem = 0; /* @@ This loop can be combined with the previous one. I do it separately for now for transparency.*/ for (d = deps; d != 0; d = d->next) { char *name = d->name; if (file_impossible_p (name)) { /* If this dependency has already been ruled "impossible", then the rule fails and don't bother trying it on the second pass either since we know that will fail too. */ DBS (DB_IMPLICIT, (d->had_stem ? _("Rejecting impossible implicit prerequisite `%s'.\n") : _("Rejecting impossible rule prerequisite `%s'.\n"), name)); tryrules[i] = 0; failed = 1; break; } DBS (DB_IMPLICIT, (d->had_stem ? _("Trying implicit prerequisite `%s'.\n") : _("Trying rule prerequisite `%s'.\n"), name)); /* If this prerequisite also happened to be explicitly mentioned for FILE skip all the test below since it it has to be built anyway, no matter which implicit rule we choose. */ for (expl_d = file->deps; expl_d != 0; expl_d = expl_d->next) if (streq (dep_name (expl_d), name)) break; if (expl_d != 0) continue; /* The DEP->changed flag says that this dependency resides in a nonexistent directory. So we normally can skip looking for the file. However, if CHECK_LASTSLASH is set, then the dependency file we are actually looking for is in a different directory (the one gotten by prepending FILENAME's directory), so it might actually exist. */ /* @@ dep->changed check is disabled. */ if (((f = lookup_file (name)) != 0 && f->is_target) /*|| ((!dep->changed || check_lastslash) && */ || file_exists_p (name)) continue; /* This code, given FILENAME = "lib/foo.o", dependency name "lib/foo.c", and VPATH=src, searches for "src/lib/foo.c". */ vname = name; if (vpath_search (&vname, (FILE_TIMESTAMP *) 0)) { DBS (DB_IMPLICIT, (_("Found prerequisite `%s' as VPATH `%s'\n"), name, vname)); free (vname); continue; } /* We could not find the file in any place we should look. Try to make this dependency as an intermediate file, but only on the second pass. */ if (intermed_ok) { if (intermediate_file == 0) intermediate_file = (struct file *) alloca (sizeof (struct file)); DBS (DB_IMPLICIT, (_("Looking for a rule with intermediate file `%s'.\n"), name)); bzero ((char *) intermediate_file, sizeof (struct file)); intermediate_file->name = name; if (pattern_search (intermediate_file, 0, depth + 1, recursions + 1)) { d->intermediate_file = intermediate_file; d->intermediate_pattern = intermediate_file->name; intermediate_file->name = xstrdup (name); intermediate_file = 0; continue; } /* If we have tried to find P as an intermediate file and failed, mark that name as impossible so we won't go through the search again later. */ if (intermediate_file->variables) free_variable_set (intermediate_file->variables); file_impossible (name); } /* A dependency of this rule does not exist. Therefore, this rule fails. */ failed = 1; break; } /* This rule is no longer `in use' for recursive searches. */ rule->in_use = 0; if (failed) { /* This pattern rule does not apply. If some of its dependencies succeeded, free the data structure describing them. */ free_idep_chain (deps); deps = 0; } else /* This pattern rule does apply. Stop looking for one. */ break; } /* If we found an applicable rule without intermediate files, don't try with them. */ if (i < nrules) break; rule = 0; } /* RULE is nil if the loop went all the way through the list and everything failed. */ if (rule == 0) goto done; foundrule = i; /* If we are recursing, store the pattern that matched FILENAME in FILE->name for use in upper levels. */ if (recursions > 0) /* Kludge-o-matic */ file->name = rule->targets[matches[foundrule]]; /* FOUND_FILES lists the dependencies for the rule we found. This includes the intermediate files, if any. Convert them into entries on the deps-chain of FILE. */ if (remove_explicit_deps) { /* Remove all the dependencies that didn't come from this implicit rule. */ dep = file->deps; while (dep != 0) { struct dep *next = dep->next; free_dep (dep); dep = next; } file->deps = 0; } expl_d = file->deps; /* We will add them at the end. */ d_ptr = &file->deps; for (d = deps; d != 0; d = d->next) { register char *s; if (d->intermediate_file != 0) { /* If we need to use an intermediate file, make sure it is entered as a target, with the info that was found for it in the recursive pattern_search call. We know that the intermediate file did not already exist as a target; therefore we can assume that the deps and cmds of F below are null before we change them. */ struct file *imf = d->intermediate_file; register struct file *f = lookup_file (imf->name); /* We don't want to delete an intermediate file that happened to be a prerequisite of some (other) target. Mark it as precious. */ if (f != 0) f->precious = 1; else f = enter_file (imf->name); f->deps = imf->deps; f->cmds = imf->cmds; f->stem = imf->stem; f->also_make = imf->also_make; f->is_target = 1; if (!f->precious) { imf = lookup_file (d->intermediate_pattern); if (imf != 0 && imf->precious) f->precious = 1; } f->intermediate = 1; f->tried_implicit = 1; for (dep = f->deps; dep != 0; dep = dep->next) { dep->file = enter_file (dep->name); /* enter_file uses dep->name _if_ we created a new file. */ if (dep->name != dep->file->name) free (dep->name); dep->name = 0; dep->file->tried_implicit |= dep->changed; } } dep = alloc_dep (); dep->ignore_mtime = d->ignore_mtime; s = d->name; /* Hijacking the name. */ d->name = 0; if (recursions == 0) { dep->file = lookup_file (s); if (dep->file == 0) /* enter_file consumes S's storage. */ dep->file = enter_file (s); else /* A copy of S is already allocated in DEP->file->name. So we can free S. */ free (s); } else { dep->name = s; } if (d->intermediate_file == 0 && tryrules[foundrule]->terminal) { /* If the file actually existed (was not an intermediate file), and the rule that found it was a terminal one, then we want to mark the found file so that it will not have implicit rule search done for it. If we are not entering a `struct file' for it now, we indicate this with the `changed' flag. */ if (dep->file == 0) dep->changed = 1; else dep->file->tried_implicit = 1; } *d_ptr = dep; d_ptr = &dep->next; } *d_ptr = expl_d; if (!checked_lastslash[foundrule]) { /* Always allocate new storage, since STEM might be on the stack for an intermediate file. */ file->stem = savestring (stem, stemlen); fullstemlen = stemlen; } else { int dirlen = (lastslash + 1) - filename; /* We want to prepend the directory from the original FILENAME onto the stem. */ fullstemlen = dirlen + stemlen; file->stem = (char *) xmalloc (fullstemlen + 1); bcopy (filename, file->stem, dirlen); bcopy (stem, file->stem + dirlen, stemlen); file->stem[fullstemlen] = '\0'; } file->cmds = rule->cmds; file->is_target = 1; /* Set precious flag. */ { struct file *f = lookup_file (rule->targets[matches[foundrule]]); if (f && f->precious) file->precious = 1; } /* If this rule builds other targets, too, put the others into FILE's `also_make' member. */ if (rule->targets[1] != 0) for (i = 0; rule->targets[i] != 0; ++i) if (i != matches[foundrule]) { struct file *f; struct dep *new = alloc_dep (); /* GKM FIMXE: handle '|' here too */ new->name = p = (char *) xmalloc (rule->lens[i] + fullstemlen + 1); bcopy (rule->targets[i], p, rule->suffixes[i] - rule->targets[i] - 1); p += rule->suffixes[i] - rule->targets[i] - 1; bcopy (file->stem, p, fullstemlen); p += fullstemlen; bcopy (rule->suffixes[i], p, rule->lens[i] - (rule->suffixes[i] - rule->targets[i]) + 1); new->file = enter_file (new->name); new->next = file->also_make; /* Set precious flag. */ f = lookup_file (rule->targets[i]); if (f && f->precious) new->file->precious = 1; /* Set the is_target flag so that this file is not treated as intermediate by the pattern rule search algorithm and file_exists_p cannot pick it up yet. */ new->file->is_target = 1; file->also_make = new; } done: free_idep_chain (deps); free (tryrules); return rule != 0; } make-dfsg-3.81.orig/job.c0000644000175000017500000025624510416553102015445 0ustar srivastasrivasta/* Job execution and handling for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include "job.h" #include "debug.h" #include "filedef.h" #include "commands.h" #include "variable.h" #include "debug.h" #include /* Default shell to use. */ #ifdef WINDOWS32 #include char *default_shell = "sh.exe"; int no_default_sh_exe = 1; int batch_mode_shell = 1; HANDLE main_thread; #elif defined (_AMIGA) char default_shell[] = ""; extern int MyExecute (char **); int batch_mode_shell = 0; #elif defined (__MSDOS__) /* The default shell is a pointer so we can change it if Makefile says so. It is without an explicit path so we get a chance to search the $PATH for it (since MSDOS doesn't have standard directories we could trust). */ char *default_shell = "command.com"; int batch_mode_shell = 0; #elif defined (__EMX__) char *default_shell = "/bin/sh"; int batch_mode_shell = 0; #elif defined (VMS) # include char default_shell[] = ""; int batch_mode_shell = 0; #elif defined (__riscos__) char default_shell[] = ""; int batch_mode_shell = 0; #else char default_shell[] = "/bin/sh"; int batch_mode_shell = 0; #endif #ifdef __MSDOS__ # include static int execute_by_shell; static int dos_pid = 123; int dos_status; int dos_command_running; #endif /* __MSDOS__ */ #ifdef _AMIGA # include static int amiga_pid = 123; static int amiga_status; static char amiga_bname[32]; static int amiga_batch_file; #endif /* Amiga. */ #ifdef VMS # ifndef __GNUC__ # include # endif # include # include static void vmsWaitForChildren PARAMS ((int *)); #endif #ifdef WINDOWS32 # include # include # include # include "sub_proc.h" # include "w32err.h" # include "pathstuff.h" #endif /* WINDOWS32 */ #ifdef __EMX__ # include #endif #if defined (HAVE_SYS_WAIT_H) || defined (HAVE_UNION_WAIT) # include #endif #ifdef HAVE_WAITPID # define WAIT_NOHANG(status) waitpid (-1, (status), WNOHANG) #else /* Don't have waitpid. */ # ifdef HAVE_WAIT3 # ifndef wait3 extern int wait3 (); # endif # define WAIT_NOHANG(status) wait3 ((status), WNOHANG, (struct rusage *) 0) # endif /* Have wait3. */ #endif /* Have waitpid. */ #if !defined (wait) && !defined (POSIX) extern int wait (); #endif #ifndef HAVE_UNION_WAIT # define WAIT_T int # ifndef WTERMSIG # define WTERMSIG(x) ((x) & 0x7f) # endif # ifndef WCOREDUMP # define WCOREDUMP(x) ((x) & 0x80) # endif # ifndef WEXITSTATUS # define WEXITSTATUS(x) (((x) >> 8) & 0xff) # endif # ifndef WIFSIGNALED # define WIFSIGNALED(x) (WTERMSIG (x) != 0) # endif # ifndef WIFEXITED # define WIFEXITED(x) (WTERMSIG (x) == 0) # endif #else /* Have `union wait'. */ # define WAIT_T union wait # ifndef WTERMSIG # define WTERMSIG(x) ((x).w_termsig) # endif # ifndef WCOREDUMP # define WCOREDUMP(x) ((x).w_coredump) # endif # ifndef WEXITSTATUS # define WEXITSTATUS(x) ((x).w_retcode) # endif # ifndef WIFSIGNALED # define WIFSIGNALED(x) (WTERMSIG(x) != 0) # endif # ifndef WIFEXITED # define WIFEXITED(x) (WTERMSIG(x) == 0) # endif #endif /* Don't have `union wait'. */ #ifndef HAVE_UNISTD_H extern int dup2 (); extern int execve (); extern void _exit (); # ifndef VMS extern int geteuid (); extern int getegid (); extern int setgid (); extern int getgid (); # endif #endif extern char *allocated_variable_expand_for_file PARAMS ((char *line, struct file *file)); extern int getloadavg PARAMS ((double loadavg[], int nelem)); extern int start_remote_job PARAMS ((char **argv, char **envp, int stdin_fd, int *is_remote, int *id_ptr, int *used_stdin)); extern int start_remote_job_p PARAMS ((int)); extern int remote_status PARAMS ((int *exit_code_ptr, int *signal_ptr, int *coredump_ptr, int block)); RETSIGTYPE child_handler PARAMS ((int)); static void free_child PARAMS ((struct child *)); static void start_job_command PARAMS ((struct child *child)); static int load_too_high PARAMS ((void)); static int job_next_command PARAMS ((struct child *)); static int start_waiting_job PARAMS ((struct child *)); /* Chain of all live (or recently deceased) children. */ struct child *children = 0; /* Number of children currently running. */ unsigned int job_slots_used = 0; /* Nonzero if the `good' standard input is in use. */ static int good_stdin_used = 0; /* Chain of children waiting to run until the load average goes down. */ static struct child *waiting_jobs = 0; /* Non-zero if we use a *real* shell (always so on Unix). */ int unixy_shell = 1; /* Number of jobs started in the current second. */ unsigned long job_counter = 0; /* Number of jobserver tokens this instance is currently using. */ unsigned int jobserver_tokens = 0; #ifdef WINDOWS32 /* * The macro which references this function is defined in make.h. */ int w32_kill(int pid, int sig) { return ((process_kill((HANDLE)pid, sig) == TRUE) ? 0 : -1); } /* This function creates a temporary file name with an extension specified * by the unixy arg. * Return an xmalloc'ed string of a newly created temp file and its * file descriptor, or die. */ static char * create_batch_file (char const *base, int unixy, int *fd) { const char *const ext = unixy ? "sh" : "bat"; const char *error = NULL; char temp_path[MAXPATHLEN]; /* need to know its length */ unsigned path_size = GetTempPath(sizeof temp_path, temp_path); int path_is_dot = 0; unsigned uniq = 1; const unsigned sizemax = strlen (base) + strlen (ext) + 10; if (path_size == 0) { path_size = GetCurrentDirectory (sizeof temp_path, temp_path); path_is_dot = 1; } while (path_size > 0 && path_size + sizemax < sizeof temp_path && uniq < 0x10000) { unsigned size = sprintf (temp_path + path_size, "%s%s-%x.%s", temp_path[path_size - 1] == '\\' ? "" : "\\", base, uniq, ext); HANDLE h = CreateFile (temp_path, /* file name */ GENERIC_READ | GENERIC_WRITE, /* desired access */ 0, /* no share mode */ NULL, /* default security attributes */ CREATE_NEW, /* creation disposition */ FILE_ATTRIBUTE_NORMAL | /* flags and attributes */ FILE_ATTRIBUTE_TEMPORARY, /* we'll delete it */ NULL); /* no template file */ if (h == INVALID_HANDLE_VALUE) { const DWORD er = GetLastError(); if (er == ERROR_FILE_EXISTS || er == ERROR_ALREADY_EXISTS) ++uniq; /* the temporary path is not guaranteed to exist */ else if (path_is_dot == 0) { path_size = GetCurrentDirectory (sizeof temp_path, temp_path); path_is_dot = 1; } else { error = map_windows32_error_to_string (er); break; } } else { const unsigned final_size = path_size + size + 1; char *const path = (char *) xmalloc (final_size); memcpy (path, temp_path, final_size); *fd = _open_osfhandle ((long)h, 0); if (unixy) { char *p; int ch; for (p = path; (ch = *p) != 0; ++p) if (ch == '\\') *p = '/'; } return path; /* good return */ } } *fd = -1; if (error == NULL) error = _("Cannot create a temporary file\n"); fatal (NILF, error); /* not reached */ return NULL; } #endif /* WINDOWS32 */ #ifdef __EMX__ /* returns whether path is assumed to be a unix like shell. */ int _is_unixy_shell (const char *path) { /* list of non unix shells */ const char *known_os2shells[] = { "cmd.exe", "cmd", "4os2.exe", "4os2", "4dos.exe", "4dos", "command.com", "command", NULL }; /* find the rightmost '/' or '\\' */ const char *name = strrchr (path, '/'); const char *p = strrchr (path, '\\'); unsigned i; if (name && p) /* take the max */ name = (name > p) ? name : p; else if (p) /* name must be 0 */ name = p; else if (!name) /* name and p must be 0 */ name = path; if (*name == '/' || *name == '\\') name++; i = 0; while (known_os2shells[i] != NULL) { if (stricmp (name, known_os2shells[i]) == 0) /* strcasecmp() */ return 0; /* not a unix shell */ i++; } /* in doubt assume a unix like shell */ return 1; } #endif /* __EMX__ */ /* Write an error message describing the exit status given in EXIT_CODE, EXIT_SIG, and COREDUMP, for the target TARGET_NAME. Append "(ignored)" if IGNORED is nonzero. */ static void child_error (char *target_name, int exit_code, int exit_sig, int coredump, int ignored) { if (ignored && silent_flag) return; #ifdef VMS if (!(exit_code & 1)) error (NILF, (ignored ? _("*** [%s] Error 0x%x (ignored)") : _("*** [%s] Error 0x%x")), target_name, exit_code); #else if (exit_sig == 0) error (NILF, ignored ? _("[%s] Error %d (ignored)") : _("*** [%s] Error %d"), target_name, exit_code); else error (NILF, "*** [%s] %s%s", target_name, strsignal (exit_sig), coredump ? _(" (core dumped)") : ""); #endif /* VMS */ } /* Handle a dead child. This handler may or may not ever be installed. If we're using the jobserver feature, we need it. First, installing it ensures the read will interrupt on SIGCHLD. Second, we close the dup'd read FD to ensure we don't enter another blocking read without reaping all the dead children. In this case we don't need the dead_children count. If we don't have either waitpid or wait3, then make is unreliable, but we use the dead_children count to reap children as best we can. */ static unsigned int dead_children = 0; RETSIGTYPE child_handler (int sig UNUSED) { ++dead_children; if (job_rfd >= 0) { close (job_rfd); job_rfd = -1; } #ifdef __EMX__ /* The signal handler must called only once! */ signal (SIGCHLD, SIG_DFL); #endif /* This causes problems if the SIGCHLD interrupts a printf(). DB (DB_JOBS, (_("Got a SIGCHLD; %u unreaped children.\n"), dead_children)); */ } extern int shell_function_pid, shell_function_completed; /* Reap all dead children, storing the returned status and the new command state (`cs_finished') in the `file' member of the `struct child' for the dead child, and removing the child from the chain. In addition, if BLOCK nonzero, we block in this function until we've reaped at least one complete child, waiting for it to die if necessary. If ERR is nonzero, print an error message first. */ void reap_children (int block, int err) { #ifndef WINDOWS32 WAIT_T status; /* Initially, assume we have some. */ int reap_more = 1; #endif #ifdef WAIT_NOHANG # define REAP_MORE reap_more #else # define REAP_MORE dead_children #endif /* As long as: We have at least one child outstanding OR a shell function in progress, AND We're blocking for a complete child OR there are more children to reap we'll keep reaping children. */ while ((children != 0 || shell_function_pid != 0) && (block || REAP_MORE)) { int remote = 0; pid_t pid; int exit_code, exit_sig, coredump; register struct child *lastc, *c; int child_failed; int any_remote, any_local; int dontcare; if (err && block) { static int printed = 0; /* We might block for a while, so let the user know why. Only print this message once no matter how many jobs are left. */ fflush (stdout); if (!printed) error (NILF, _("*** Waiting for unfinished jobs....")); printed = 1; } /* We have one less dead child to reap. As noted in child_handler() above, this count is completely unimportant for all modern, POSIX-y systems that support wait3() or waitpid(). The rest of this comment below applies only to early, broken pre-POSIX systems. We keep the count only because... it's there... The test and decrement are not atomic; if it is compiled into: register = dead_children - 1; dead_children = register; a SIGCHLD could come between the two instructions. child_handler increments dead_children. The second instruction here would lose that increment. But the only effect of dead_children being wrong is that we might wait longer than necessary to reap a child, and lose some parallelism; and we might print the "Waiting for unfinished jobs" message above when not necessary. */ if (dead_children > 0) --dead_children; any_remote = 0; any_local = shell_function_pid != 0; for (c = children; c != 0; c = c->next) { any_remote |= c->remote; any_local |= ! c->remote; DB (DB_JOBS, (_("Live child 0x%08lx (%s) PID %ld %s\n"), (unsigned long int) c, c->file->name, (long) c->pid, c->remote ? _(" (remote)") : "")); #ifdef VMS break; #endif } /* First, check for remote children. */ if (any_remote) pid = remote_status (&exit_code, &exit_sig, &coredump, 0); else pid = 0; if (pid > 0) /* We got a remote child. */ remote = 1; else if (pid < 0) { /* A remote status command failed miserably. Punt. */ remote_status_lose: pfatal_with_name ("remote_status"); } else { /* No remote children. Check for local children. */ #if !defined(__MSDOS__) && !defined(_AMIGA) && !defined(WINDOWS32) if (any_local) { #ifdef VMS vmsWaitForChildren (&status); pid = c->pid; #else #ifdef WAIT_NOHANG if (!block) pid = WAIT_NOHANG (&status); else #endif pid = wait (&status); #endif /* !VMS */ } else pid = 0; if (pid < 0) { /* The wait*() failed miserably. Punt. */ pfatal_with_name ("wait"); } else if (pid > 0) { /* We got a child exit; chop the status word up. */ exit_code = WEXITSTATUS (status); exit_sig = WIFSIGNALED (status) ? WTERMSIG (status) : 0; coredump = WCOREDUMP (status); /* If we have started jobs in this second, remove one. */ if (job_counter) --job_counter; } else { /* No local children are dead. */ reap_more = 0; if (!block || !any_remote) break; /* Now try a blocking wait for a remote child. */ pid = remote_status (&exit_code, &exit_sig, &coredump, 1); if (pid < 0) goto remote_status_lose; else if (pid == 0) /* No remote children either. Finally give up. */ break; /* We got a remote child. */ remote = 1; } #endif /* !__MSDOS__, !Amiga, !WINDOWS32. */ #ifdef __MSDOS__ /* Life is very different on MSDOS. */ pid = dos_pid - 1; status = dos_status; exit_code = WEXITSTATUS (status); if (exit_code == 0xff) exit_code = -1; exit_sig = WIFSIGNALED (status) ? WTERMSIG (status) : 0; coredump = 0; #endif /* __MSDOS__ */ #ifdef _AMIGA /* Same on Amiga */ pid = amiga_pid - 1; status = amiga_status; exit_code = amiga_status; exit_sig = 0; coredump = 0; #endif /* _AMIGA */ #ifdef WINDOWS32 { HANDLE hPID; int werr; HANDLE hcTID, hcPID; exit_code = 0; exit_sig = 0; coredump = 0; /* Record the thread ID of the main process, so that we could suspend it in the signal handler. */ if (!main_thread) { hcTID = GetCurrentThread (); hcPID = GetCurrentProcess (); if (!DuplicateHandle (hcPID, hcTID, hcPID, &main_thread, 0, FALSE, DUPLICATE_SAME_ACCESS)) { DWORD e = GetLastError (); fprintf (stderr, "Determine main thread ID (Error %ld: %s)\n", e, map_windows32_error_to_string(e)); } else DB (DB_VERBOSE, ("Main thread handle = 0x%08lx\n", (unsigned long)main_thread)); } /* wait for anything to finish */ hPID = process_wait_for_any(); if (hPID) { /* was an error found on this process? */ werr = process_last_err(hPID); /* get exit data */ exit_code = process_exit_code(hPID); if (werr) fprintf(stderr, "make (e=%d): %s", exit_code, map_windows32_error_to_string(exit_code)); /* signal */ exit_sig = process_signal(hPID); /* cleanup process */ process_cleanup(hPID); coredump = 0; } pid = (pid_t) hPID; } #endif /* WINDOWS32 */ } /* Check if this is the child of the `shell' function. */ if (!remote && pid == shell_function_pid) { /* It is. Leave an indicator for the `shell' function. */ if (exit_sig == 0 && exit_code == 127) shell_function_completed = -1; else shell_function_completed = 1; break; } child_failed = exit_sig != 0 || exit_code != 0; /* Search for a child matching the deceased one. */ lastc = 0; for (c = children; c != 0; lastc = c, c = c->next) if (c->remote == remote && c->pid == pid) break; if (c == 0) /* An unknown child died. Ignore it; it was inherited from our invoker. */ continue; DB (DB_JOBS, (child_failed ? _("Reaping losing child 0x%08lx PID %ld %s\n") : _("Reaping winning child 0x%08lx PID %ld %s\n"), (unsigned long int) c, (long) c->pid, c->remote ? _(" (remote)") : "")); if (c->sh_batch_file) { DB (DB_JOBS, (_("Cleaning up temp batch file %s\n"), c->sh_batch_file)); /* just try and remove, don't care if this fails */ remove (c->sh_batch_file); /* all done with memory */ free (c->sh_batch_file); c->sh_batch_file = NULL; } /* If this child had the good stdin, say it is now free. */ if (c->good_stdin) good_stdin_used = 0; dontcare = c->dontcare; if (child_failed && !c->noerror && !ignore_errors_flag) { /* The commands failed. Write an error message, delete non-precious targets, and abort. */ static int delete_on_error = -1; if (!dontcare) child_error (c->file->name, exit_code, exit_sig, coredump, 0); c->file->update_status = 2; if (delete_on_error == -1) { struct file *f = lookup_file (".DELETE_ON_ERROR"); delete_on_error = f != 0 && f->is_target; } if (exit_sig != 0 || delete_on_error) delete_child_targets (c); } else { if (child_failed) { /* The commands failed, but we don't care. */ child_error (c->file->name, exit_code, exit_sig, coredump, 1); child_failed = 0; } /* If there are more commands to run, try to start them. */ if (job_next_command (c)) { if (handling_fatal_signal) { /* Never start new commands while we are dying. Since there are more commands that wanted to be run, the target was not completely remade. So we treat this as if a command had failed. */ c->file->update_status = 2; } else { /* Check again whether to start remotely. Whether or not we want to changes over time. Also, start_remote_job may need state set up by start_remote_job_p. */ c->remote = start_remote_job_p (0); start_job_command (c); /* Fatal signals are left blocked in case we were about to put that child on the chain. But it is already there, so it is safe for a fatal signal to arrive now; it will clean up this child's targets. */ unblock_sigs (); if (c->file->command_state == cs_running) /* We successfully started the new command. Loop to reap more children. */ continue; } if (c->file->update_status != 0) /* We failed to start the commands. */ delete_child_targets (c); } else /* There are no more commands. We got through them all without an unignored error. Now the target has been successfully updated. */ c->file->update_status = 0; } /* When we get here, all the commands for C->file are finished (or aborted) and C->file->update_status contains 0 or 2. But C->file->command_state is still cs_running if all the commands ran; notice_finish_file looks for cs_running to tell it that it's interesting to check the file's modtime again now. */ if (! handling_fatal_signal) /* Notice if the target of the commands has been changed. This also propagates its values for command_state and update_status to its also_make files. */ notice_finished_file (c->file); DB (DB_JOBS, (_("Removing child 0x%08lx PID %ld%s from chain.\n"), (unsigned long int) c, (long) c->pid, c->remote ? _(" (remote)") : "")); /* Block fatal signals while frobnicating the list, so that children and job_slots_used are always consistent. Otherwise a fatal signal arriving after the child is off the chain and before job_slots_used is decremented would believe a child was live and call reap_children again. */ block_sigs (); /* There is now another slot open. */ if (job_slots_used > 0) --job_slots_used; /* Remove the child from the chain and free it. */ if (lastc == 0) children = c->next; else lastc->next = c->next; free_child (c); unblock_sigs (); /* If the job failed, and the -k flag was not given, die, unless we are already in the process of dying. */ if (!err && child_failed && !dontcare && !keep_going_flag && /* fatal_error_signal will die with the right signal. */ !handling_fatal_signal) die (2); /* Only block for one child. */ block = 0; } return; } /* Free the storage allocated for CHILD. */ static void free_child (struct child *child) { if (!jobserver_tokens) fatal (NILF, "INTERNAL: Freeing child 0x%08lx (%s) but no tokens left!\n", (unsigned long int) child, child->file->name); /* If we're using the jobserver and this child is not the only outstanding job, put a token back into the pipe for it. */ if (job_fds[1] >= 0 && jobserver_tokens > 1) { char token = '+'; int r; /* Write a job token back to the pipe. */ EINTRLOOP (r, write (job_fds[1], &token, 1)); if (r != 1) pfatal_with_name (_("write jobserver")); DB (DB_JOBS, (_("Released token for child 0x%08lx (%s).\n"), (unsigned long int) child, child->file->name)); } --jobserver_tokens; if (handling_fatal_signal) /* Don't bother free'ing if about to die. */ return; if (child->command_lines != 0) { register unsigned int i; for (i = 0; i < child->file->cmds->ncommand_lines; ++i) free (child->command_lines[i]); free ((char *) child->command_lines); } if (child->environment != 0) { register char **ep = child->environment; while (*ep != 0) free (*ep++); free ((char *) child->environment); } free ((char *) child); } #ifdef POSIX extern sigset_t fatal_signal_set; #endif void block_sigs (void) { #ifdef POSIX (void) sigprocmask (SIG_BLOCK, &fatal_signal_set, (sigset_t *) 0); #else # ifdef HAVE_SIGSETMASK (void) sigblock (fatal_signal_mask); # endif #endif } #ifdef POSIX void unblock_sigs (void) { sigset_t empty; sigemptyset (&empty); sigprocmask (SIG_SETMASK, &empty, (sigset_t *) 0); } #endif #ifdef MAKE_JOBSERVER RETSIGTYPE job_noop (int sig UNUSED) { } /* Set the child handler action flags to FLAGS. */ static void set_child_handler_action_flags (int set_handler, int set_alarm) { struct sigaction sa; #ifdef __EMX__ /* The child handler must be turned off here. */ signal (SIGCHLD, SIG_DFL); #endif bzero ((char *) &sa, sizeof sa); sa.sa_handler = child_handler; sa.sa_flags = set_handler ? 0 : SA_RESTART; #if defined SIGCHLD sigaction (SIGCHLD, &sa, NULL); #endif #if defined SIGCLD && SIGCLD != SIGCHLD sigaction (SIGCLD, &sa, NULL); #endif #if defined SIGALRM if (set_alarm) { /* If we're about to enter the read(), set an alarm to wake up in a second so we can check if the load has dropped and we can start more work. On the way out, turn off the alarm and set SIG_DFL. */ alarm (set_handler ? 1 : 0); sa.sa_handler = set_handler ? job_noop : SIG_DFL; sa.sa_flags = 0; sigaction (SIGALRM, &sa, NULL); } #endif } #endif /* Start a job to run the commands specified in CHILD. CHILD is updated to reflect the commands and ID of the child process. NOTE: On return fatal signals are blocked! The caller is responsible for calling `unblock_sigs', once the new child is safely on the chain so it can be cleaned up in the event of a fatal signal. */ static void start_job_command (struct child *child) { #if !defined(_AMIGA) && !defined(WINDOWS32) static int bad_stdin = -1; #endif register char *p; int flags; #ifdef VMS char *argv; #else char **argv; #endif /* If we have a completely empty commandset, stop now. */ if (!child->command_ptr) goto next_command; /* Combine the flags parsed for the line itself with the flags specified globally for this target. */ flags = (child->file->command_flags | child->file->cmds->lines_flags[child->command_line - 1]); p = child->command_ptr; child->noerror = ((flags & COMMANDS_NOERROR) != 0); while (*p != '\0') { if (*p == '@') flags |= COMMANDS_SILENT; else if (*p == '+') flags |= COMMANDS_RECURSE; else if (*p == '-') child->noerror = 1; else if (!isblank ((unsigned char)*p)) break; ++p; } /* Update the file's command flags with any new ones we found. We only keep the COMMANDS_RECURSE setting. Even this isn't 100% correct; we are now marking more commands recursive than should be in the case of multiline define/endef scripts where only one line is marked "+". In order to really fix this, we'll have to keep a lines_flags for every actual line, after expansion. */ child->file->cmds->lines_flags[child->command_line - 1] |= flags & COMMANDS_RECURSE; /* Figure out an argument list from this command line. */ { char *end = 0; #ifdef VMS argv = p; #else argv = construct_command_argv (p, &end, child->file, &child->sh_batch_file); #endif if (end == NULL) child->command_ptr = NULL; else { *end++ = '\0'; child->command_ptr = end; } } /* If -q was given, say that updating `failed' if there was any text on the command line, or `succeeded' otherwise. The exit status of 1 tells the user that -q is saying `something to do'; the exit status for a random error is 2. */ if (argv != 0 && question_flag && !(flags & COMMANDS_RECURSE)) { #ifndef VMS free (argv[0]); free ((char *) argv); #endif child->file->update_status = 1; notice_finished_file (child->file); return; } if (touch_flag && !(flags & COMMANDS_RECURSE)) { /* Go on to the next command. It might be the recursive one. We construct ARGV only to find the end of the command line. */ #ifndef VMS if (argv) { free (argv[0]); free ((char *) argv); } #endif argv = 0; } if (argv == 0) { next_command: #ifdef __MSDOS__ execute_by_shell = 0; /* in case construct_command_argv sets it */ #endif /* This line has no commands. Go to the next. */ if (job_next_command (child)) start_job_command (child); else { /* No more commands. Make sure we're "running"; we might not be if (e.g.) all commands were skipped due to -n. */ set_command_state (child->file, cs_running); child->file->update_status = 0; notice_finished_file (child->file); } return; } /* Print out the command. If silent, we call `message' with null so it can log the working directory before the command's own error messages appear. */ message (0, (just_print_flag || (!(flags & COMMANDS_SILENT) && !silent_flag)) ? "%s" : (char *) 0, p); /* Tell update_goal_chain that a command has been started on behalf of this target. It is important that this happens here and not in reap_children (where we used to do it), because reap_children might be reaping children from a different target. We want this increment to guaranteedly indicate that a command was started for the dependency chain (i.e., update_file recursion chain) we are processing. */ ++commands_started; /* Optimize an empty command. People use this for timestamp rules, so avoid forking a useless shell. Do this after we increment commands_started so make still treats this special case as if it performed some action (makes a difference as to what messages are printed, etc. */ #if !defined(VMS) && !defined(_AMIGA) if ( #if defined __MSDOS__ || defined (__EMX__) unixy_shell /* the test is complicated and we already did it */ #else (argv[0] && !strcmp (argv[0], "/bin/sh")) #endif && (argv[1] && argv[1][0] == '-' && argv[1][1] == 'c' && argv[1][2] == '\0') && (argv[2] && argv[2][0] == ':' && argv[2][1] == '\0') && argv[3] == NULL) { free (argv[0]); free ((char *) argv); goto next_command; } #endif /* !VMS && !_AMIGA */ /* If -n was given, recurse to get the next line in the sequence. */ if (just_print_flag && !(flags & COMMANDS_RECURSE)) { #ifndef VMS free (argv[0]); free ((char *) argv); #endif goto next_command; } /* Flush the output streams so they won't have things written twice. */ fflush (stdout); fflush (stderr); #ifndef VMS #if !defined(WINDOWS32) && !defined(_AMIGA) && !defined(__MSDOS__) /* Set up a bad standard input that reads from a broken pipe. */ if (bad_stdin == -1) { /* Make a file descriptor that is the read end of a broken pipe. This will be used for some children's standard inputs. */ int pd[2]; if (pipe (pd) == 0) { /* Close the write side. */ (void) close (pd[1]); /* Save the read side. */ bad_stdin = pd[0]; /* Set the descriptor to close on exec, so it does not litter any child's descriptor table. When it is dup2'd onto descriptor 0, that descriptor will not close on exec. */ CLOSE_ON_EXEC (bad_stdin); } } #endif /* !WINDOWS32 && !_AMIGA && !__MSDOS__ */ /* Decide whether to give this child the `good' standard input (one that points to the terminal or whatever), or the `bad' one that points to the read side of a broken pipe. */ child->good_stdin = !good_stdin_used; if (child->good_stdin) good_stdin_used = 1; #endif /* !VMS */ child->deleted = 0; #ifndef _AMIGA /* Set up the environment for the child. */ if (child->environment == 0) child->environment = target_environment (child->file); #endif #if !defined(__MSDOS__) && !defined(_AMIGA) && !defined(WINDOWS32) #ifndef VMS /* start_waiting_job has set CHILD->remote if we can start a remote job. */ if (child->remote) { int is_remote, id, used_stdin; if (start_remote_job (argv, child->environment, child->good_stdin ? 0 : bad_stdin, &is_remote, &id, &used_stdin)) /* Don't give up; remote execution may fail for various reasons. If so, simply run the job locally. */ goto run_local; else { if (child->good_stdin && !used_stdin) { child->good_stdin = 0; good_stdin_used = 0; } child->remote = is_remote; child->pid = id; } } else #endif /* !VMS */ { /* Fork the child process. */ char **parent_environ; run_local: block_sigs (); child->remote = 0; #ifdef VMS if (!child_execute_job (argv, child)) { /* Fork failed! */ perror_with_name ("vfork", ""); goto error; } #else parent_environ = environ; # ifdef __EMX__ /* If we aren't running a recursive command and we have a jobserver pipe, close it before exec'ing. */ if (!(flags & COMMANDS_RECURSE) && job_fds[0] >= 0) { CLOSE_ON_EXEC (job_fds[0]); CLOSE_ON_EXEC (job_fds[1]); } if (job_rfd >= 0) CLOSE_ON_EXEC (job_rfd); /* Never use fork()/exec() here! Use spawn() instead in exec_command() */ child->pid = child_execute_job (child->good_stdin ? 0 : bad_stdin, 1, argv, child->environment); if (child->pid < 0) { /* spawn failed! */ unblock_sigs (); perror_with_name ("spawn", ""); goto error; } /* undo CLOSE_ON_EXEC() after the child process has been started */ if (!(flags & COMMANDS_RECURSE) && job_fds[0] >= 0) { fcntl (job_fds[0], F_SETFD, 0); fcntl (job_fds[1], F_SETFD, 0); } if (job_rfd >= 0) fcntl (job_rfd, F_SETFD, 0); #else /* !__EMX__ */ child->pid = vfork (); environ = parent_environ; /* Restore value child may have clobbered. */ if (child->pid == 0) { /* We are the child side. */ unblock_sigs (); /* If we aren't running a recursive command and we have a jobserver pipe, close it before exec'ing. */ if (!(flags & COMMANDS_RECURSE) && job_fds[0] >= 0) { close (job_fds[0]); close (job_fds[1]); } if (job_rfd >= 0) close (job_rfd); child_execute_job (child->good_stdin ? 0 : bad_stdin, 1, argv, child->environment); } else if (child->pid < 0) { /* Fork failed! */ unblock_sigs (); perror_with_name ("vfork", ""); goto error; } # endif /* !__EMX__ */ #endif /* !VMS */ } #else /* __MSDOS__ or Amiga or WINDOWS32 */ #ifdef __MSDOS__ { int proc_return; block_sigs (); dos_status = 0; /* We call `system' to do the job of the SHELL, since stock DOS shell is too dumb. Our `system' knows how to handle long command lines even if pipes/redirection is needed; it will only call COMMAND.COM when its internal commands are used. */ if (execute_by_shell) { char *cmdline = argv[0]; /* We don't have a way to pass environment to `system', so we need to save and restore ours, sigh... */ char **parent_environ = environ; environ = child->environment; /* If we have a *real* shell, tell `system' to call it to do everything for us. */ if (unixy_shell) { /* A *real* shell on MSDOS may not support long command lines the DJGPP way, so we must use `system'. */ cmdline = argv[2]; /* get past "shell -c" */ } dos_command_running = 1; proc_return = system (cmdline); environ = parent_environ; execute_by_shell = 0; /* for the next time */ } else { dos_command_running = 1; proc_return = spawnvpe (P_WAIT, argv[0], argv, child->environment); } /* Need to unblock signals before turning off dos_command_running, so that child's signals will be treated as such (see fatal_error_signal). */ unblock_sigs (); dos_command_running = 0; /* If the child got a signal, dos_status has its high 8 bits set, so be careful not to alter them. */ if (proc_return == -1) dos_status |= 0xff; else dos_status |= (proc_return & 0xff); ++dead_children; child->pid = dos_pid++; } #endif /* __MSDOS__ */ #ifdef _AMIGA amiga_status = MyExecute (argv); ++dead_children; child->pid = amiga_pid++; if (amiga_batch_file) { amiga_batch_file = 0; DeleteFile (amiga_bname); /* Ignore errors. */ } #endif /* Amiga */ #ifdef WINDOWS32 { HANDLE hPID; char* arg0; /* make UNC paths safe for CreateProcess -- backslash format */ arg0 = argv[0]; if (arg0 && arg0[0] == '/' && arg0[1] == '/') for ( ; arg0 && *arg0; arg0++) if (*arg0 == '/') *arg0 = '\\'; /* make sure CreateProcess() has Path it needs */ sync_Path_environment(); hPID = process_easy(argv, child->environment); if (hPID != INVALID_HANDLE_VALUE) child->pid = (int) hPID; else { int i; unblock_sigs(); fprintf(stderr, _("process_easy() failed to launch process (e=%ld)\n"), process_last_err(hPID)); for (i = 0; argv[i]; i++) fprintf(stderr, "%s ", argv[i]); fprintf(stderr, _("\nCounted %d args in failed launch\n"), i); goto error; } } #endif /* WINDOWS32 */ #endif /* __MSDOS__ or Amiga or WINDOWS32 */ /* Bump the number of jobs started in this second. */ ++job_counter; /* We are the parent side. Set the state to say the commands are running and return. */ set_command_state (child->file, cs_running); /* Free the storage used by the child's argument list. */ #ifndef VMS free (argv[0]); free ((char *) argv); #endif return; error: child->file->update_status = 2; notice_finished_file (child->file); return; } /* Try to start a child running. Returns nonzero if the child was started (and maybe finished), or zero if the load was too high and the child was put on the `waiting_jobs' chain. */ static int start_waiting_job (struct child *c) { struct file *f = c->file; /* If we can start a job remotely, we always want to, and don't care about the local load average. We record that the job should be started remotely in C->remote for start_job_command to test. */ c->remote = start_remote_job_p (1); /* If we are running at least one job already and the load average is too high, make this one wait. */ if (!c->remote && ((job_slots_used > 0 && load_too_high ()) #ifdef WINDOWS32 || (process_used_slots () >= MAXIMUM_WAIT_OBJECTS) #endif )) { /* Put this child on the chain of children waiting for the load average to go down. */ set_command_state (f, cs_running); c->next = waiting_jobs; waiting_jobs = c; return 0; } /* Start the first command; reap_children will run later command lines. */ start_job_command (c); switch (f->command_state) { case cs_running: c->next = children; DB (DB_JOBS, (_("Putting child 0x%08lx (%s) PID %ld%s on the chain.\n"), (unsigned long int) c, c->file->name, (long) c->pid, c->remote ? _(" (remote)") : "")); children = c; /* One more job slot is in use. */ ++job_slots_used; unblock_sigs (); break; case cs_not_started: /* All the command lines turned out to be empty. */ f->update_status = 0; /* FALLTHROUGH */ case cs_finished: notice_finished_file (f); free_child (c); break; default: assert (f->command_state == cs_finished); break; } return 1; } /* Create a `struct child' for FILE and start its commands running. */ void new_job (struct file *file) { register struct commands *cmds = file->cmds; register struct child *c; char **lines; register unsigned int i; /* Let any previously decided-upon jobs that are waiting for the load to go down start before this new one. */ start_waiting_jobs (); /* Reap any children that might have finished recently. */ reap_children (0, 0); /* Chop the commands up into lines if they aren't already. */ chop_commands (cmds); /* Expand the command lines and store the results in LINES. */ lines = (char **) xmalloc (cmds->ncommand_lines * sizeof (char *)); for (i = 0; i < cmds->ncommand_lines; ++i) { /* Collapse backslash-newline combinations that are inside variable or function references. These are left alone by the parser so that they will appear in the echoing of commands (where they look nice); and collapsed by construct_command_argv when it tokenizes. But letting them survive inside function invocations loses because we don't want the functions to see them as part of the text. */ char *in, *out, *ref; /* IN points to where in the line we are scanning. OUT points to where in the line we are writing. When we collapse a backslash-newline combination, IN gets ahead of OUT. */ in = out = cmds->command_lines[i]; while ((ref = strchr (in, '$')) != 0) { ++ref; /* Move past the $. */ if (out != in) /* Copy the text between the end of the last chunk we processed (where IN points) and the new chunk we are about to process (where REF points). */ bcopy (in, out, ref - in); /* Move both pointers past the boring stuff. */ out += ref - in; in = ref; if (*ref == '(' || *ref == '{') { char openparen = *ref; char closeparen = openparen == '(' ? ')' : '}'; int count; char *p; *out++ = *in++; /* Copy OPENPAREN. */ /* IN now points past the opening paren or brace. Count parens or braces until it is matched. */ count = 0; while (*in != '\0') { if (*in == closeparen && --count < 0) break; else if (*in == '\\' && in[1] == '\n') { /* We have found a backslash-newline inside a variable or function reference. Eat it and any following whitespace. */ int quoted = 0; for (p = in - 1; p > ref && *p == '\\'; --p) quoted = !quoted; if (quoted) /* There were two or more backslashes, so this is not really a continuation line. We don't collapse the quoting backslashes here as is done in collapse_continuations, because the line will be collapsed again after expansion. */ *out++ = *in++; else { /* Skip the backslash, newline and any following whitespace. */ in = next_token (in + 2); /* Discard any preceding whitespace that has already been written to the output. */ while (out > ref && isblank ((unsigned char)out[-1])) --out; /* Replace it all with a single space. */ *out++ = ' '; } } else { if (*in == openparen) ++count; *out++ = *in++; } } } } /* There are no more references in this line to worry about. Copy the remaining uninteresting text to the output. */ if (out != in) strcpy (out, in); /* Finally, expand the line. */ lines[i] = allocated_variable_expand_for_file (cmds->command_lines[i], file); } /* Start the command sequence, record it in a new `struct child', and add that to the chain. */ c = (struct child *) xmalloc (sizeof (struct child)); bzero ((char *)c, sizeof (struct child)); c->file = file; c->command_lines = lines; c->sh_batch_file = NULL; /* Cache dontcare flag because file->dontcare can be changed once we return. Check dontcare inheritance mechanism for details. */ c->dontcare = file->dontcare; /* Fetch the first command line to be run. */ job_next_command (c); /* Wait for a job slot to be freed up. If we allow an infinite number don't bother; also job_slots will == 0 if we're using the jobserver. */ if (job_slots != 0) while (job_slots_used == job_slots) reap_children (1, 0); #ifdef MAKE_JOBSERVER /* If we are controlling multiple jobs make sure we have a token before starting the child. */ /* This can be inefficient. There's a decent chance that this job won't actually have to run any subprocesses: the command script may be empty or otherwise optimized away. It would be nice if we could defer obtaining a token until just before we need it, in start_job_command. To do that we'd need to keep track of whether we'd already obtained a token (since start_job_command is called for each line of the job, not just once). Also more thought needs to go into the entire algorithm; this is where the old parallel job code waits, so... */ else if (job_fds[0] >= 0) while (1) { char token; int got_token; int saved_errno; DB (DB_JOBS, ("Need a job token; we %shave children\n", children ? "" : "don't ")); /* If we don't already have a job started, use our "free" token. */ if (!jobserver_tokens) break; /* Read a token. As long as there's no token available we'll block. We enable interruptible system calls before the read(2) so that if we get a SIGCHLD while we're waiting, we'll return with EINTR and we can process the death(s) and return tokens to the free pool. Once we return from the read, we immediately reinstate restartable system calls. This allows us to not worry about checking for EINTR on all the other system calls in the program. There is one other twist: there is a span between the time reap_children() does its last check for dead children and the time the read(2) call is entered, below, where if a child dies we won't notice. This is extremely serious as it could cause us to deadlock, given the right set of events. To avoid this, we do the following: before we reap_children(), we dup(2) the read FD on the jobserver pipe. The read(2) call below uses that new FD. In the signal handler, we close that FD. That way, if a child dies during the section mentioned above, the read(2) will be invoked with an invalid FD and will return immediately with EBADF. */ /* Make sure we have a dup'd FD. */ if (job_rfd < 0) { DB (DB_JOBS, ("Duplicate the job FD\n")); job_rfd = dup (job_fds[0]); } /* Reap anything that's currently waiting. */ reap_children (0, 0); /* Kick off any jobs we have waiting for an opportunity that can run now (ie waiting for load). */ start_waiting_jobs (); /* If our "free" slot has become available, use it; we don't need an actual token. */ if (!jobserver_tokens) break; /* There must be at least one child already, or we have no business waiting for a token. */ if (!children) fatal (NILF, "INTERNAL: no children as we go to sleep on read\n"); /* Set interruptible system calls, and read() for a job token. */ set_child_handler_action_flags (1, waiting_jobs != NULL); got_token = read (job_rfd, &token, 1); saved_errno = errno; set_child_handler_action_flags (0, waiting_jobs != NULL); /* If we got one, we're done here. */ if (got_token == 1) { DB (DB_JOBS, (_("Obtained token for child 0x%08lx (%s).\n"), (unsigned long int) c, c->file->name)); break; } /* If the error _wasn't_ expected (EINTR or EBADF), punt. Otherwise, go back and reap_children(), and try again. */ errno = saved_errno; if (errno != EINTR && errno != EBADF) pfatal_with_name (_("read jobs pipe")); if (errno == EBADF) DB (DB_JOBS, ("Read returned EBADF.\n")); } #endif ++jobserver_tokens; /* The job is now primed. Start it running. (This will notice if there are in fact no commands.) */ (void) start_waiting_job (c); if (job_slots == 1 || not_parallel) /* Since there is only one job slot, make things run linearly. Wait for the child to die, setting the state to `cs_finished'. */ while (file->command_state == cs_running) reap_children (1, 0); return; } /* Move CHILD's pointers to the next command for it to execute. Returns nonzero if there is another command. */ static int job_next_command (struct child *child) { while (child->command_ptr == 0 || *child->command_ptr == '\0') { /* There are no more lines in the expansion of this line. */ if (child->command_line == child->file->cmds->ncommand_lines) { /* There are no more lines to be expanded. */ child->command_ptr = 0; return 0; } else /* Get the next line to run. */ child->command_ptr = child->command_lines[child->command_line++]; } return 1; } /* Determine if the load average on the system is too high to start a new job. The real system load average is only recomputed once a second. However, a very parallel make can easily start tens or even hundreds of jobs in a second, which brings the system to its knees for a while until that first batch of jobs clears out. To avoid this we use a weighted algorithm to try to account for jobs which have been started since the last second, and guess what the load average would be now if it were computed. This algorithm was provided by Thomas Riedl , who writes: ! calculate something load-oid and add to the observed sys.load, ! so that latter can catch up: ! - every job started increases jobctr; ! - every dying job decreases a positive jobctr; ! - the jobctr value gets zeroed every change of seconds, ! after its value*weight_b is stored into the 'backlog' value last_sec ! - weight_a times the sum of jobctr and last_sec gets ! added to the observed sys.load. ! ! The two weights have been tried out on 24 and 48 proc. Sun Solaris-9 ! machines, using a several-thousand-jobs-mix of cpp, cc, cxx and smallish ! sub-shelled commands (rm, echo, sed...) for tests. ! lowering the 'direct influence' factor weight_a (e.g. to 0.1) ! resulted in significant excession of the load limit, raising it ! (e.g. to 0.5) took bad to small, fast-executing jobs and didn't ! reach the limit in most test cases. ! ! lowering the 'history influence' weight_b (e.g. to 0.1) resulted in ! exceeding the limit for longer-running stuff (compile jobs in ! the .5 to 1.5 sec. range),raising it (e.g. to 0.5) overrepresented ! small jobs' effects. */ #define LOAD_WEIGHT_A 0.25 #define LOAD_WEIGHT_B 0.25 static int load_too_high (void) { #if defined(__MSDOS__) || defined(VMS) || defined(_AMIGA) || defined(__riscos__) return 1; #else static double last_sec; static time_t last_now; double load, guess; time_t now; #ifdef WINDOWS32 /* sub_proc.c cannot wait for more than MAXIMUM_WAIT_OBJECTS children */ if (process_used_slots () >= MAXIMUM_WAIT_OBJECTS) return 1; #endif if (max_load_average < 0) return 0; /* Find the real system load average. */ make_access (); if (getloadavg (&load, 1) != 1) { static int lossage = -1; /* Complain only once for the same error. */ if (lossage == -1 || errno != lossage) { if (errno == 0) /* An errno value of zero means getloadavg is just unsupported. */ error (NILF, _("cannot enforce load limits on this operating system")); else perror_with_name (_("cannot enforce load limit: "), "getloadavg"); } lossage = errno; load = 0; } user_access (); /* If we're in a new second zero the counter and correct the backlog value. Only keep the backlog for one extra second; after that it's 0. */ now = time (NULL); if (last_now < now) { if (last_now == now - 1) last_sec = LOAD_WEIGHT_B * job_counter; else last_sec = 0.0; job_counter = 0; last_now = now; } /* Try to guess what the load would be right now. */ guess = load + (LOAD_WEIGHT_A * (job_counter + last_sec)); DB (DB_JOBS, ("Estimated system load = %f (actual = %f) (max requested = %f)\n", guess, load, max_load_average)); return guess >= max_load_average; #endif } /* Start jobs that are waiting for the load to be lower. */ void start_waiting_jobs (void) { struct child *job; if (waiting_jobs == 0) return; do { /* Check for recently deceased descendants. */ reap_children (0, 0); /* Take a job off the waiting list. */ job = waiting_jobs; waiting_jobs = job->next; /* Try to start that job. We break out of the loop as soon as start_waiting_job puts one back on the waiting list. */ } while (start_waiting_job (job) && waiting_jobs != 0); return; } #ifndef WINDOWS32 /* EMX: Start a child process. This function returns the new pid. */ # if defined __MSDOS__ || defined __EMX__ int child_execute_job (int stdin_fd, int stdout_fd, char **argv, char **envp) { int pid; /* stdin_fd == 0 means: nothing to do for stdin; stdout_fd == 1 means: nothing to do for stdout */ int save_stdin = (stdin_fd != 0) ? dup (0) : 0; int save_stdout = (stdout_fd != 1) ? dup (1): 1; /* < 0 only if dup() failed */ if (save_stdin < 0) fatal (NILF, _("no more file handles: could not duplicate stdin\n")); if (save_stdout < 0) fatal (NILF, _("no more file handles: could not duplicate stdout\n")); /* Close unnecessary file handles for the child. */ if (save_stdin != 0) CLOSE_ON_EXEC (save_stdin); if (save_stdout != 1) CLOSE_ON_EXEC (save_stdout); /* Connect the pipes to the child process. */ if (stdin_fd != 0) (void) dup2 (stdin_fd, 0); if (stdout_fd != 1) (void) dup2 (stdout_fd, 1); /* stdin_fd and stdout_fd must be closed on exit because we are still in the parent process */ if (stdin_fd != 0) CLOSE_ON_EXEC (stdin_fd); if (stdout_fd != 1) CLOSE_ON_EXEC (stdout_fd); /* Run the command. */ pid = exec_command (argv, envp); /* Restore stdout/stdin of the parent and close temporary FDs. */ if (stdin_fd != 0) { if (dup2 (save_stdin, 0) != 0) fatal (NILF, _("Could not restore stdin\n")); else close (save_stdin); } if (stdout_fd != 1) { if (dup2 (save_stdout, 1) != 1) fatal (NILF, _("Could not restore stdout\n")); else close (save_stdout); } return pid; } #elif !defined (_AMIGA) && !defined (__MSDOS__) && !defined (VMS) /* UNIX: Replace the current process with one executing the command in ARGV. STDIN_FD and STDOUT_FD are used as the process's stdin and stdout; ENVP is the environment of the new program. This function does not return. */ void child_execute_job (int stdin_fd, int stdout_fd, char **argv, char **envp) { if (stdin_fd != 0) (void) dup2 (stdin_fd, 0); if (stdout_fd != 1) (void) dup2 (stdout_fd, 1); if (stdin_fd != 0) (void) close (stdin_fd); if (stdout_fd != 1) (void) close (stdout_fd); /* Run the command. */ exec_command (argv, envp); } #endif /* !AMIGA && !__MSDOS__ && !VMS */ #endif /* !WINDOWS32 */ #ifndef _AMIGA /* Replace the current process with one running the command in ARGV, with environment ENVP. This function does not return. */ /* EMX: This function returns the pid of the child process. */ # ifdef __EMX__ int # else void # endif exec_command (char **argv, char **envp) { #ifdef VMS /* to work around a problem with signals and execve: ignore them */ #ifdef SIGCHLD signal (SIGCHLD,SIG_IGN); #endif /* Run the program. */ execve (argv[0], argv, envp); perror_with_name ("execve: ", argv[0]); _exit (EXIT_FAILURE); #else #ifdef WINDOWS32 HANDLE hPID; HANDLE hWaitPID; int err = 0; int exit_code = EXIT_FAILURE; /* make sure CreateProcess() has Path it needs */ sync_Path_environment(); /* launch command */ hPID = process_easy(argv, envp); /* make sure launch ok */ if (hPID == INVALID_HANDLE_VALUE) { int i; fprintf(stderr, _("process_easy() failed failed to launch process (e=%ld)\n"), process_last_err(hPID)); for (i = 0; argv[i]; i++) fprintf(stderr, "%s ", argv[i]); fprintf(stderr, _("\nCounted %d args in failed launch\n"), i); exit(EXIT_FAILURE); } /* wait and reap last child */ hWaitPID = process_wait_for_any(); while (hWaitPID) { /* was an error found on this process? */ err = process_last_err(hWaitPID); /* get exit data */ exit_code = process_exit_code(hWaitPID); if (err) fprintf(stderr, "make (e=%d, rc=%d): %s", err, exit_code, map_windows32_error_to_string(err)); /* cleanup process */ process_cleanup(hWaitPID); /* expect to find only last pid, warn about other pids reaped */ if (hWaitPID == hPID) break; else fprintf(stderr, _("make reaped child pid %ld, still waiting for pid %ld\n"), (DWORD)hWaitPID, (DWORD)hPID); } /* return child's exit code as our exit code */ exit(exit_code); #else /* !WINDOWS32 */ # ifdef __EMX__ int pid; # endif /* Be the user, permanently. */ child_access (); # ifdef __EMX__ /* Run the program. */ pid = spawnvpe (P_NOWAIT, argv[0], argv, envp); if (pid >= 0) return pid; /* the file might have a strange shell extension */ if (errno == ENOENT) errno = ENOEXEC; # else /* Run the program. */ environ = envp; execvp (argv[0], argv); # endif /* !__EMX__ */ switch (errno) { case ENOENT: error (NILF, _("%s: Command not found"), argv[0]); break; case ENOEXEC: { /* The file is not executable. Try it as a shell script. */ extern char *getenv (); char *shell; char **new_argv; int argc; int i=1; # ifdef __EMX__ /* Do not use $SHELL from the environment */ struct variable *p = lookup_variable ("SHELL", 5); if (p) shell = p->value; else shell = 0; # else shell = getenv ("SHELL"); # endif if (shell == 0) shell = default_shell; argc = 1; while (argv[argc] != 0) ++argc; # ifdef __EMX__ if (!unixy_shell) ++argc; # endif new_argv = (char **) alloca ((1 + argc + 1) * sizeof (char *)); new_argv[0] = shell; # ifdef __EMX__ if (!unixy_shell) { new_argv[1] = "/c"; ++i; --argc; } # endif new_argv[i] = argv[0]; while (argc > 0) { new_argv[i + argc] = argv[argc]; --argc; } # ifdef __EMX__ pid = spawnvpe (P_NOWAIT, shell, new_argv, envp); if (pid >= 0) break; # else execvp (shell, new_argv); # endif if (errno == ENOENT) error (NILF, _("%s: Shell program not found"), shell); else perror_with_name ("execvp: ", shell); break; } # ifdef __EMX__ case EINVAL: /* this nasty error was driving me nuts :-( */ error (NILF, _("spawnvpe: environment space might be exhausted")); /* FALLTHROUGH */ # endif default: perror_with_name ("execvp: ", argv[0]); break; } # ifdef __EMX__ return pid; # else _exit (127); # endif #endif /* !WINDOWS32 */ #endif /* !VMS */ } #else /* On Amiga */ void exec_command (char **argv) { MyExecute (argv); } void clean_tmp (void) { DeleteFile (amiga_bname); } #endif /* On Amiga */ #ifndef VMS /* Figure out the argument list necessary to run LINE as a command. Try to avoid using a shell. This routine handles only ' quoting, and " quoting when no backslash, $ or ` characters are seen in the quotes. Starting quotes may be escaped with a backslash. If any of the characters in sh_chars[] is seen, or any of the builtin commands listed in sh_cmds[] is the first word of a line, the shell is used. If RESTP is not NULL, *RESTP is set to point to the first newline in LINE. If *RESTP is NULL, newlines will be ignored. SHELL is the shell to use, or nil to use the default shell. IFS is the value of $IFS, or nil (meaning the default). */ static char ** construct_command_argv_internal (char *line, char **restp, char *shell, char *ifs, char **batch_filename_ptr) { #ifdef __MSDOS__ /* MSDOS supports both the stock DOS shell and ports of Unixy shells. We call `system' for anything that requires ``slow'' processing, because DOS shells are too dumb. When $SHELL points to a real (unix-style) shell, `system' just calls it to do everything. When $SHELL points to a DOS shell, `system' does most of the work internally, calling the shell only for its internal commands. However, it looks on the $PATH first, so you can e.g. have an external command named `mkdir'. Since we call `system', certain characters and commands below are actually not specific to COMMAND.COM, but to the DJGPP implementation of `system'. In particular: The shell wildcard characters are in DOS_CHARS because they will not be expanded if we call the child via `spawnXX'. The `;' is in DOS_CHARS, because our `system' knows how to run multiple commands on a single line. DOS_CHARS also include characters special to 4DOS/NDOS, so we won't have to tell one from another and have one more set of commands and special characters. */ static char sh_chars_dos[] = "*?[];|<>%^&()"; static char *sh_cmds_dos[] = { "break", "call", "cd", "chcp", "chdir", "cls", "copy", "ctty", "date", "del", "dir", "echo", "erase", "exit", "for", "goto", "if", "md", "mkdir", "path", "pause", "prompt", "rd", "rmdir", "rem", "ren", "rename", "set", "shift", "time", "type", "ver", "verify", "vol", ":", 0 }; static char sh_chars_sh[] = "#;\"*?[]&|<>(){}$`^"; static char *sh_cmds_sh[] = { "cd", "echo", "eval", "exec", "exit", "login", "logout", "set", "umask", "wait", "while", "for", "case", "if", ":", ".", "break", "continue", "export", "read", "readonly", "shift", "times", "trap", "switch", "unset", 0 }; char *sh_chars; char **sh_cmds; #elif defined (__EMX__) static char sh_chars_dos[] = "*?[];|<>%^&()"; static char *sh_cmds_dos[] = { "break", "call", "cd", "chcp", "chdir", "cls", "copy", "ctty", "date", "del", "dir", "echo", "erase", "exit", "for", "goto", "if", "md", "mkdir", "path", "pause", "prompt", "rd", "rmdir", "rem", "ren", "rename", "set", "shift", "time", "type", "ver", "verify", "vol", ":", 0 }; static char sh_chars_os2[] = "*?[];|<>%^()\"'&"; static char *sh_cmds_os2[] = { "call", "cd", "chcp", "chdir", "cls", "copy", "date", "del", "detach", "dir", "echo", "endlocal", "erase", "exit", "for", "goto", "if", "keys", "md", "mkdir", "move", "path", "pause", "prompt", "rd", "rem", "ren", "rename", "rmdir", "set", "setlocal", "shift", "start", "time", "type", "ver", "verify", "vol", ":", 0 }; static char sh_chars_sh[] = "#;\"*?[]&|<>(){}$`^~'"; static char *sh_cmds_sh[] = { "echo", "cd", "eval", "exec", "exit", "login", "logout", "set", "umask", "wait", "while", "for", "case", "if", ":", ".", "break", "continue", "export", "read", "readonly", "shift", "times", "trap", "switch", "unset", 0 }; char *sh_chars; char **sh_cmds; #elif defined (_AMIGA) static char sh_chars[] = "#;\"|<>()?*$`"; static char *sh_cmds[] = { "cd", "eval", "if", "delete", "echo", "copy", "rename", "set", "setenv", "date", "makedir", "skip", "else", "endif", "path", "prompt", "unset", "unsetenv", "version", 0 }; #elif defined (WINDOWS32) static char sh_chars_dos[] = "\"|&<>"; static char *sh_cmds_dos[] = { "break", "call", "cd", "chcp", "chdir", "cls", "copy", "ctty", "date", "del", "dir", "echo", "erase", "exit", "for", "goto", "if", "if", "md", "mkdir", "path", "pause", "prompt", "rd", "rem", "ren", "rename", "rmdir", "set", "shift", "time", "type", "ver", "verify", "vol", ":", 0 }; static char sh_chars_sh[] = "#;\"*?[]&|<>(){}$`^"; static char *sh_cmds_sh[] = { "cd", "eval", "exec", "exit", "login", "logout", "set", "umask", "wait", "while", "for", "case", "if", ":", ".", "break", "continue", "export", "read", "readonly", "shift", "times", "trap", "switch", "test", #ifdef BATCH_MODE_ONLY_SHELL "echo", #endif 0 }; char* sh_chars; char** sh_cmds; #elif defined(__riscos__) static char sh_chars[] = ""; static char *sh_cmds[] = { 0 }; #else /* must be UNIX-ish */ static char sh_chars[] = "#;\"*?[]&|<>(){}$`^~!"; static char *sh_cmds[] = { ".", ":", "break", "case", "cd", "continue", "eval", "exec", "exit", "export", "for", "if", "login", "logout", "read", "readonly", "set", "shift", "switch", "test", "times", "trap", "umask", "wait", "while", 0 }; #endif register int i; register char *p; register char *ap; char *end; int instring, word_has_equals, seen_nonequals, last_argument_was_empty; char **new_argv = 0; char *argstr = 0; #ifdef WINDOWS32 int slow_flag = 0; if (!unixy_shell) { sh_cmds = sh_cmds_dos; sh_chars = sh_chars_dos; } else { sh_cmds = sh_cmds_sh; sh_chars = sh_chars_sh; } #endif /* WINDOWS32 */ if (restp != NULL) *restp = NULL; /* Make sure not to bother processing an empty line. */ while (isblank ((unsigned char)*line)) ++line; if (*line == '\0') return 0; /* See if it is safe to parse commands internally. */ if (shell == 0) shell = default_shell; #ifdef WINDOWS32 else if (strcmp (shell, default_shell)) { char *s1 = _fullpath(NULL, shell, 0); char *s2 = _fullpath(NULL, default_shell, 0); slow_flag = strcmp((s1 ? s1 : ""), (s2 ? s2 : "")); if (s1) free (s1); if (s2) free (s2); } if (slow_flag) goto slow; #else /* not WINDOWS32 */ #if defined (__MSDOS__) || defined (__EMX__) else if (stricmp (shell, default_shell)) { extern int _is_unixy_shell (const char *_path); DB (DB_BASIC, (_("$SHELL changed (was `%s', now `%s')\n"), default_shell, shell)); unixy_shell = _is_unixy_shell (shell); /* we must allocate a copy of shell: construct_command_argv() will free * shell after this function returns. */ default_shell = xstrdup (shell); } if (unixy_shell) { sh_chars = sh_chars_sh; sh_cmds = sh_cmds_sh; } else { sh_chars = sh_chars_dos; sh_cmds = sh_cmds_dos; # ifdef __EMX__ if (_osmode == OS2_MODE) { sh_chars = sh_chars_os2; sh_cmds = sh_cmds_os2; } # endif } #else /* !__MSDOS__ */ else if (strcmp (shell, default_shell)) goto slow; #endif /* !__MSDOS__ && !__EMX__ */ #endif /* not WINDOWS32 */ if (ifs != 0) for (ap = ifs; *ap != '\0'; ++ap) if (*ap != ' ' && *ap != '\t' && *ap != '\n') goto slow; i = strlen (line) + 1; /* More than 1 arg per character is impossible. */ new_argv = (char **) xmalloc (i * sizeof (char *)); /* All the args can fit in a buffer as big as LINE is. */ ap = new_argv[0] = argstr = (char *) xmalloc (i); end = ap + i; /* I is how many complete arguments have been found. */ i = 0; instring = word_has_equals = seen_nonequals = last_argument_was_empty = 0; for (p = line; *p != '\0'; ++p) { assert (ap <= end); if (instring) { /* Inside a string, just copy any char except a closing quote or a backslash-newline combination. */ if (*p == instring) { instring = 0; if (ap == new_argv[0] || *(ap-1) == '\0') last_argument_was_empty = 1; } else if (*p == '\\' && p[1] == '\n') { /* Backslash-newline is handled differently depending on what kind of string we're in: inside single-quoted strings you keep them; in double-quoted strings they disappear. For DOS/Windows/OS2, if we don't have a POSIX shell, we keep the pre-POSIX behavior of removing the backslash-newline. */ if (instring == '"' #if defined (__MSDOS__) || defined (__EMX__) || defined (WINDOWS32) || !unixy_shell #endif ) ++p; else { *(ap++) = *(p++); *(ap++) = *p; } /* If there's a TAB here, skip it. */ if (p[1] == '\t') ++p; } else if (*p == '\n' && restp != NULL) { /* End of the command line. */ *restp = p; goto end_of_line; } /* Backslash, $, and ` are special inside double quotes. If we see any of those, punt. But on MSDOS, if we use COMMAND.COM, double and single quotes have the same effect. */ else if (instring == '"' && strchr ("\\$`", *p) != 0 && unixy_shell) goto slow; else *ap++ = *p; } else if (strchr (sh_chars, *p) != 0) /* Not inside a string, but it's a special char. */ goto slow; #ifdef __MSDOS__ else if (*p == '.' && p[1] == '.' && p[2] == '.' && p[3] != '.') /* `...' is a wildcard in DJGPP. */ goto slow; #endif else /* Not a special char. */ switch (*p) { case '=': /* Equals is a special character in leading words before the first word with no equals sign in it. This is not the case with sh -k, but we never get here when using nonstandard shell flags. */ if (! seen_nonequals && unixy_shell) goto slow; word_has_equals = 1; *ap++ = '='; break; case '\\': /* Backslash-newline has special case handling, ref POSIX. We're in the fastpath, so emulate what the shell would do. */ if (p[1] == '\n') { /* Throw out the backslash and newline. */ ++p; /* If there is a tab after a backslash-newline, remove it. */ if (p[1] == '\t') ++p; /* If there's nothing in this argument yet, skip any whitespace before the start of the next word. */ if (ap == new_argv[i]) p = next_token (p + 1) - 1; } else if (p[1] != '\0') { #ifdef HAVE_DOS_PATHS /* Only remove backslashes before characters special to Unixy shells. All other backslashes are copied verbatim, since they are probably DOS-style directory separators. This still leaves a small window for problems, but at least it should work for the vast majority of naive users. */ #ifdef __MSDOS__ /* A dot is only special as part of the "..." wildcard. */ if (strneq (p + 1, ".\\.\\.", 5)) { *ap++ = '.'; *ap++ = '.'; p += 4; } else #endif if (p[1] != '\\' && p[1] != '\'' && !isspace ((unsigned char)p[1]) && strchr (sh_chars_sh, p[1]) == 0) /* back up one notch, to copy the backslash */ --p; #endif /* HAVE_DOS_PATHS */ /* Copy and skip the following char. */ *ap++ = *++p; } break; case '\'': case '"': instring = *p; break; case '\n': if (restp != NULL) { /* End of the command line. */ *restp = p; goto end_of_line; } else /* Newlines are not special. */ *ap++ = '\n'; break; case ' ': case '\t': /* We have the end of an argument. Terminate the text of the argument. */ *ap++ = '\0'; new_argv[++i] = ap; last_argument_was_empty = 0; /* Update SEEN_NONEQUALS, which tells us if every word heretofore has contained an `='. */ seen_nonequals |= ! word_has_equals; if (word_has_equals && ! seen_nonequals) /* An `=' in a word before the first word without one is magical. */ goto slow; word_has_equals = 0; /* Prepare for the next word. */ /* If this argument is the command name, see if it is a built-in shell command. If so, have the shell handle it. */ if (i == 1) { register int j; for (j = 0; sh_cmds[j] != 0; ++j) { if (streq (sh_cmds[j], new_argv[0])) goto slow; # ifdef __EMX__ /* Non-Unix shells are case insensitive. */ if (!unixy_shell && strcasecmp (sh_cmds[j], new_argv[0]) == 0) goto slow; # endif } } /* Ignore multiple whitespace chars. */ p = next_token (p) - 1; break; default: *ap++ = *p; break; } } end_of_line: if (instring) /* Let the shell deal with an unterminated quote. */ goto slow; /* Terminate the last argument and the argument list. */ *ap = '\0'; if (new_argv[i][0] != '\0' || last_argument_was_empty) ++i; new_argv[i] = 0; if (i == 1) { register int j; for (j = 0; sh_cmds[j] != 0; ++j) if (streq (sh_cmds[j], new_argv[0])) goto slow; } if (new_argv[0] == 0) { /* Line was empty. */ free (argstr); free ((char *)new_argv); return 0; } return new_argv; slow:; /* We must use the shell. */ if (new_argv != 0) { /* Free the old argument list we were working on. */ free (argstr); free ((char *)new_argv); } #ifdef __MSDOS__ execute_by_shell = 1; /* actually, call `system' if shell isn't unixy */ #endif #ifdef _AMIGA { char *ptr; char *buffer; char *dptr; buffer = (char *)xmalloc (strlen (line)+1); ptr = line; for (dptr=buffer; *ptr; ) { if (*ptr == '\\' && ptr[1] == '\n') ptr += 2; else if (*ptr == '@') /* Kludge: multiline commands */ { ptr += 2; *dptr++ = '\n'; } else *dptr++ = *ptr++; } *dptr = 0; new_argv = (char **) xmalloc (2 * sizeof (char *)); new_argv[0] = buffer; new_argv[1] = 0; } #else /* Not Amiga */ #ifdef WINDOWS32 /* * Not eating this whitespace caused things like * * sh -c "\n" * * which gave the shell fits. I think we have to eat * whitespace here, but this code should be considered * suspicious if things start failing.... */ /* Make sure not to bother processing an empty line. */ while (isspace ((unsigned char)*line)) ++line; if (*line == '\0') return 0; #endif /* WINDOWS32 */ { /* SHELL may be a multi-word command. Construct a command line "SHELL -c LINE", with all special chars in LINE escaped. Then recurse, expanding this command line to get the final argument list. */ unsigned int shell_len = strlen (shell); #ifndef VMS static char minus_c[] = " -c "; #else static char minus_c[] = ""; #endif unsigned int line_len = strlen (line); char *new_line = (char *) alloca (shell_len + (sizeof (minus_c) - 1) + (line_len * 2) + 1); char *command_ptr = NULL; /* used for batch_mode_shell mode */ # ifdef __EMX__ /* is this necessary? */ if (!unixy_shell) minus_c[1] = '/'; /* " /c " */ # endif ap = new_line; bcopy (shell, ap, shell_len); ap += shell_len; bcopy (minus_c, ap, sizeof (minus_c) - 1); ap += sizeof (minus_c) - 1; command_ptr = ap; for (p = line; *p != '\0'; ++p) { if (restp != NULL && *p == '\n') { *restp = p; break; } else if (*p == '\\' && p[1] == '\n') { /* POSIX says we keep the backslash-newline, but throw out the next char if it's a TAB. If we don't have a POSIX shell on DOS/Windows/OS2, mimic the pre-POSIX behavior and remove the backslash/newline. */ #if defined (__MSDOS__) || defined (__EMX__) || defined (WINDOWS32) # define PRESERVE_BSNL unixy_shell #else # define PRESERVE_BSNL 1 #endif if (PRESERVE_BSNL) { *(ap++) = '\\'; *(ap++) = '\\'; *(ap++) = '\n'; } ++p; if (p[1] == '\t') ++p; continue; } /* DOS shells don't know about backslash-escaping. */ if (unixy_shell && !batch_mode_shell && (*p == '\\' || *p == '\'' || *p == '"' || isspace ((unsigned char)*p) || strchr (sh_chars, *p) != 0)) *ap++ = '\\'; #ifdef __MSDOS__ else if (unixy_shell && strneq (p, "...", 3)) { /* The case of `...' wildcard again. */ strcpy (ap, "\\.\\.\\"); ap += 5; p += 2; } #endif *ap++ = *p; } if (ap == new_line + shell_len + sizeof (minus_c) - 1) /* Line was empty. */ return 0; *ap = '\0'; #ifdef WINDOWS32 /* Some shells do not work well when invoked as 'sh -c xxx' to run a command line (e.g. Cygnus GNUWIN32 sh.exe on WIN32 systems). In these cases, run commands via a script file. */ if (just_print_flag) { /* Need to allocate new_argv, although it's unused, because start_job_command will want to free it and its 0'th element. */ new_argv = (char **) xmalloc(2 * sizeof (char *)); new_argv[0] = xstrdup (""); new_argv[1] = NULL; } else if ((no_default_sh_exe || batch_mode_shell) && batch_filename_ptr) { int temp_fd; FILE* batch = NULL; int id = GetCurrentProcessId(); PATH_VAR(fbuf); /* create a file name */ sprintf(fbuf, "make%d", id); *batch_filename_ptr = create_batch_file (fbuf, unixy_shell, &temp_fd); DB (DB_JOBS, (_("Creating temporary batch file %s\n"), *batch_filename_ptr)); /* Create a FILE object for the batch file, and write to it the commands to be executed. Put the batch file in TEXT mode. */ _setmode (temp_fd, _O_TEXT); batch = _fdopen (temp_fd, "wt"); if (!unixy_shell) fputs ("@echo off\n", batch); fputs (command_ptr, batch); fputc ('\n', batch); fclose (batch); /* create argv */ new_argv = (char **) xmalloc(3 * sizeof (char *)); if (unixy_shell) { new_argv[0] = xstrdup (shell); new_argv[1] = *batch_filename_ptr; /* only argv[0] gets freed later */ } else { new_argv[0] = xstrdup (*batch_filename_ptr); new_argv[1] = NULL; } new_argv[2] = NULL; } else #endif /* WINDOWS32 */ if (unixy_shell) new_argv = construct_command_argv_internal (new_line, (char **) NULL, (char *) 0, (char *) 0, (char **) 0); #ifdef __EMX__ else if (!unixy_shell) { /* new_line is local, must not be freed therefore We use line here instead of new_line because we run the shell manually. */ size_t line_len = strlen (line); char *p = new_line; char *q = new_line; memcpy (new_line, line, line_len + 1); /* replace all backslash-newline combination and also following tabs */ while (*q != '\0') { if (q[0] == '\\' && q[1] == '\n') { q += 2; /* remove '\\' and '\n' */ if (q[0] == '\t') q++; /* remove 1st tab in the next line */ } else *p++ = *q++; } *p = '\0'; # ifndef NO_CMD_DEFAULT if (strnicmp (new_line, "echo", 4) == 0 && (new_line[4] == ' ' || new_line[4] == '\t')) { /* the builtin echo command: handle it separately */ size_t echo_len = line_len - 5; char *echo_line = new_line + 5; /* special case: echo 'x="y"' cmd works this way: a string is printed as is, i.e., no quotes are removed. But autoconf uses a command like echo 'x="y"' to determine whether make works. autoconf expects the output x="y" so we will do exactly that. Note: if we do not allow cmd to be the default shell we do not need this kind of voodoo */ if (echo_line[0] == '\'' && echo_line[echo_len - 1] == '\'' && strncmp (echo_line + 1, "ac_maketemp=", strlen ("ac_maketemp=")) == 0) { /* remove the enclosing quotes */ memmove (echo_line, echo_line + 1, echo_len - 2); echo_line[echo_len - 2] = '\0'; } } # endif { /* Let the shell decide what to do. Put the command line into the 2nd command line argument and hope for the best ;-) */ size_t sh_len = strlen (shell); /* exactly 3 arguments + NULL */ new_argv = (char **) xmalloc (4 * sizeof (char *)); /* Exactly strlen(shell) + strlen("/c") + strlen(line) + 3 times the trailing '\0' */ new_argv[0] = (char *) malloc (sh_len + line_len + 5); memcpy (new_argv[0], shell, sh_len + 1); new_argv[1] = new_argv[0] + sh_len + 1; memcpy (new_argv[1], "/c", 3); new_argv[2] = new_argv[1] + 3; memcpy (new_argv[2], new_line, line_len + 1); new_argv[3] = NULL; } } #elif defined(__MSDOS__) else { /* With MSDOS shells, we must construct the command line here instead of recursively calling ourselves, because we cannot backslash-escape the special characters (see above). */ new_argv = (char **) xmalloc (sizeof (char *)); line_len = strlen (new_line) - shell_len - sizeof (minus_c) + 1; new_argv[0] = xmalloc (line_len + 1); strncpy (new_argv[0], new_line + shell_len + sizeof (minus_c) - 1, line_len); new_argv[0][line_len] = '\0'; } #else else fatal (NILF, _("%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n"), __FILE__, __LINE__); #endif } #endif /* ! AMIGA */ return new_argv; } #endif /* !VMS */ /* Figure out the argument list necessary to run LINE as a command. Try to avoid using a shell. This routine handles only ' quoting, and " quoting when no backslash, $ or ` characters are seen in the quotes. Starting quotes may be escaped with a backslash. If any of the characters in sh_chars[] is seen, or any of the builtin commands listed in sh_cmds[] is the first word of a line, the shell is used. If RESTP is not NULL, *RESTP is set to point to the first newline in LINE. If *RESTP is NULL, newlines will be ignored. FILE is the target whose commands these are. It is used for variable expansion for $(SHELL) and $(IFS). */ char ** construct_command_argv (char *line, char **restp, struct file *file, char **batch_filename_ptr) { char *shell, *ifs; char **argv; #ifdef VMS char *cptr; int argc; argc = 0; cptr = line; for (;;) { while ((*cptr != 0) && (isspace ((unsigned char)*cptr))) cptr++; if (*cptr == 0) break; while ((*cptr != 0) && (!isspace((unsigned char)*cptr))) cptr++; argc++; } argv = (char **)malloc (argc * sizeof (char *)); if (argv == 0) abort (); cptr = line; argc = 0; for (;;) { while ((*cptr != 0) && (isspace ((unsigned char)*cptr))) cptr++; if (*cptr == 0) break; DB (DB_JOBS, ("argv[%d] = [%s]\n", argc, cptr)); argv[argc++] = cptr; while ((*cptr != 0) && (!isspace((unsigned char)*cptr))) cptr++; if (*cptr != 0) *cptr++ = 0; } #else { /* Turn off --warn-undefined-variables while we expand SHELL and IFS. */ int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; shell = allocated_variable_expand_for_file ("$(SHELL)", file); #ifdef WINDOWS32 /* * Convert to forward slashes so that construct_command_argv_internal() * is not confused. */ if (shell) { char *p = w32ify (shell, 0); strcpy (shell, p); } #endif #ifdef __EMX__ { static const char *unixroot = NULL; static const char *last_shell = ""; static int init = 0; if (init == 0) { unixroot = getenv ("UNIXROOT"); /* unixroot must be NULL or not empty */ if (unixroot && unixroot[0] == '\0') unixroot = NULL; init = 1; } /* if we have an unixroot drive and if shell is not default_shell (which means it's either cmd.exe or the test has already been performed) and if shell is an absolute path without drive letter, try whether it exists e.g.: if "/bin/sh" does not exist use "$UNIXROOT/bin/sh" instead. */ if (unixroot && shell && strcmp (shell, last_shell) != 0 && (shell[0] == '/' || shell[0] == '\\')) { /* trying a new shell, check whether it exists */ size_t size = strlen (shell); char *buf = xmalloc (size + 7); memcpy (buf, shell, size); memcpy (buf + size, ".exe", 5); /* including the trailing '\0' */ if (access (shell, F_OK) != 0 && access (buf, F_OK) != 0) { /* try the same for the unixroot drive */ memmove (buf + 2, buf, size + 5); buf[0] = unixroot[0]; buf[1] = unixroot[1]; if (access (buf, F_OK) == 0) /* we have found a shell! */ /* free(shell); */ shell = buf; else free (buf); } else free (buf); } } #endif /* __EMX__ */ ifs = allocated_variable_expand_for_file ("$(IFS)", file); warn_undefined_variables_flag = save; } argv = construct_command_argv_internal (line, restp, shell, ifs, batch_filename_ptr); free (shell); free (ifs); #endif /* !VMS */ return argv; } #if !defined(HAVE_DUP2) && !defined(_AMIGA) int dup2 (int old, int new) { int fd; (void) close (new); fd = dup (old); if (fd != new) { (void) close (fd); errno = EMFILE; return -1; } return fd; } #endif /* !HAPE_DUP2 && !_AMIGA */ /* On VMS systems, include special VMS functions. */ #ifdef VMS #include "vmsjobs.c" #endif make-dfsg-3.81.orig/job.h0000644000175000017500000000656410416553102015447 0ustar srivastasrivasta/* Definitions for managing subprocesses in GNU Make. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef SEEN_JOB_H #define SEEN_JOB_H #ifdef HAVE_FCNTL_H # include #else # include #endif /* How to set close-on-exec for a file descriptor. */ #if !defined F_SETFD # define CLOSE_ON_EXEC(_d) #else # ifndef FD_CLOEXEC # define FD_CLOEXEC 1 # endif # define CLOSE_ON_EXEC(_d) (void) fcntl ((_d), F_SETFD, FD_CLOEXEC) #endif /* Structure describing a running or dead child process. */ struct child { struct child *next; /* Link in the chain. */ struct file *file; /* File being remade. */ char **environment; /* Environment for commands. */ char **command_lines; /* Array of variable-expanded cmd lines. */ unsigned int command_line; /* Index into above. */ char *command_ptr; /* Ptr into command_lines[command_line]. */ pid_t pid; /* Child process's ID number. */ #ifdef VMS int efn; /* Completion event flag number */ int cstatus; /* Completion status */ #endif char *sh_batch_file; /* Script file for shell commands */ unsigned int remote:1; /* Nonzero if executing remotely. */ unsigned int noerror:1; /* Nonzero if commands contained a `-'. */ unsigned int good_stdin:1; /* Nonzero if this child has a good stdin. */ unsigned int deleted:1; /* Nonzero if targets have been deleted. */ unsigned int dontcare:1; /* Saved dontcare flag. */ }; extern struct child *children; extern void new_job PARAMS ((struct file *file)); extern void reap_children PARAMS ((int block, int err)); extern void start_waiting_jobs PARAMS ((void)); extern char **construct_command_argv PARAMS ((char *line, char **restp, struct file *file, char** batch_file)); #ifdef VMS extern int child_execute_job PARAMS ((char *argv, struct child *child)); #elif defined(__EMX__) extern int child_execute_job PARAMS ((int stdin_fd, int stdout_fd, char **argv, char **envp)); #else extern void child_execute_job PARAMS ((int stdin_fd, int stdout_fd, char **argv, char **envp)); #endif #ifdef _AMIGA extern void exec_command PARAMS ((char **argv)); #elif defined(__EMX__) extern int exec_command PARAMS ((char **argv, char **envp)); #else extern void exec_command PARAMS ((char **argv, char **envp)); #endif extern unsigned int job_slots_used; extern void block_sigs PARAMS ((void)); #ifdef POSIX extern void unblock_sigs PARAMS ((void)); #else #ifdef HAVE_SIGSETMASK extern int fatal_signal_mask; #define unblock_sigs() sigsetmask (0) #else #define unblock_sigs() #endif #endif extern unsigned int jobserver_tokens; #endif /* SEEN_JOB_H */ make-dfsg-3.81.orig/main.c0000644000175000017500000026076010416553102015614 0ustar srivastasrivasta/* Argument parsing and main program of GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "dep.h" #include "filedef.h" #include "variable.h" #include "job.h" #include "commands.h" #include "rule.h" #include "debug.h" #include "getopt.h" #include #ifdef _AMIGA # include # include #endif #ifdef WINDOWS32 #include #include #include "pathstuff.h" #endif #ifdef __EMX__ # include # include #endif #ifdef HAVE_FCNTL_H # include #endif #if defined(HAVE_SYS_RESOURCE_H) && defined(HAVE_GETRLIMIT) && defined(HAVE_SETRLIMIT) # define SET_STACK_SIZE #endif #ifdef SET_STACK_SIZE # include #endif #ifdef _AMIGA int __stack = 20000; /* Make sure we have 20K of stack space */ #endif extern void init_dir PARAMS ((void)); extern void remote_setup PARAMS ((void)); extern void remote_cleanup PARAMS ((void)); extern RETSIGTYPE fatal_error_signal PARAMS ((int sig)); extern void print_variable_data_base PARAMS ((void)); extern void print_dir_data_base PARAMS ((void)); extern void print_rule_data_base PARAMS ((void)); extern void print_file_data_base PARAMS ((void)); extern void print_vpath_data_base PARAMS ((void)); #if defined HAVE_WAITPID || defined HAVE_WAIT3 # define HAVE_WAIT_NOHANG #endif #ifndef HAVE_UNISTD_H extern int chdir (); #endif #ifndef STDC_HEADERS # ifndef sun /* Sun has an incorrect decl in a header. */ extern void exit PARAMS ((int)) __attribute__ ((noreturn)); # endif extern double atof (); #endif static void clean_jobserver PARAMS ((int status)); static void print_data_base PARAMS ((void)); static void print_version PARAMS ((void)); static void decode_switches PARAMS ((int argc, char **argv, int env)); static void decode_env_switches PARAMS ((char *envar, unsigned int len)); static void define_makeflags PARAMS ((int all, int makefile)); static char *quote_for_env PARAMS ((char *out, char *in)); static void initialize_global_hash_tables PARAMS ((void)); /* The structure that describes an accepted command switch. */ struct command_switch { int c; /* The switch character. */ enum /* Type of the value. */ { flag, /* Turn int flag on. */ flag_off, /* Turn int flag off. */ string, /* One string per switch. */ positive_int, /* A positive integer. */ floating, /* A floating-point number (double). */ ignore /* Ignored. */ } type; char *value_ptr; /* Pointer to the value-holding variable. */ unsigned int env:1; /* Can come from MAKEFLAGS. */ unsigned int toenv:1; /* Should be put in MAKEFLAGS. */ unsigned int no_makefile:1; /* Don't propagate when remaking makefiles. */ char *noarg_value; /* Pointer to value used if no argument is given. */ char *default_value;/* Pointer to default value. */ char *long_name; /* Long option name. */ }; /* True if C is a switch value that corresponds to a short option. */ #define short_option(c) ((c) <= CHAR_MAX) /* The structure used to hold the list of strings given in command switches of a type that takes string arguments. */ struct stringlist { char **list; /* Nil-terminated list of strings. */ unsigned int idx; /* Index into above. */ unsigned int max; /* Number of pointers allocated. */ }; /* The recognized command switches. */ /* Nonzero means do not print commands to be executed (-s). */ int silent_flag; /* Nonzero means just touch the files that would appear to need remaking (-t) */ int touch_flag; /* Nonzero means just print what commands would need to be executed, don't actually execute them (-n). */ int just_print_flag; /* Print debugging info (--debug). */ static struct stringlist *db_flags; static int debug_flag = 0; int db_level = 0; #ifdef WINDOWS32 /* Suspend make in main for a short time to allow debugger to attach */ int suspend_flag = 0; #endif /* Environment variables override makefile definitions. */ int env_overrides = 0; /* Nonzero means ignore status codes returned by commands executed to remake files. Just treat them all as successful (-i). */ int ignore_errors_flag = 0; /* Nonzero means don't remake anything, just print the data base that results from reading the makefile (-p). */ int print_data_base_flag = 0; /* Nonzero means don't remake anything; just return a nonzero status if the specified targets are not up to date (-q). */ int question_flag = 0; /* Nonzero means do not use any of the builtin rules (-r) / variables (-R). */ int no_builtin_rules_flag = 0; int no_builtin_variables_flag = 0; /* Nonzero means keep going even if remaking some file fails (-k). */ int keep_going_flag; int default_keep_going_flag = 0; /* Nonzero means check symlink mtimes. */ int check_symlink_flag = 0; /* Nonzero means print directory before starting and when done (-w). */ int print_directory_flag = 0; /* Nonzero means ignore print_directory_flag and never print the directory. This is necessary because print_directory_flag is set implicitly. */ int inhibit_print_directory_flag = 0; /* Nonzero means print version information. */ int print_version_flag = 0; /* List of makefiles given with -f switches. */ static struct stringlist *makefiles = 0; /* Number of job slots (commands that can be run at once). */ unsigned int job_slots = 1; unsigned int default_job_slots = 1; static unsigned int master_job_slots = 0; /* Value of job_slots that means no limit. */ static unsigned int inf_jobs = 0; /* File descriptors for the jobs pipe. */ static struct stringlist *jobserver_fds = 0; int job_fds[2] = { -1, -1 }; int job_rfd = -1; /* Maximum load average at which multiple jobs will be run. Negative values mean unlimited, while zero means limit to zero load (which could be useful to start infinite jobs remotely but one at a time locally). */ #ifndef NO_FLOAT double max_load_average = -1.0; double default_load_average = -1.0; #else int max_load_average = -1; int default_load_average = -1; #endif /* List of directories given with -C switches. */ static struct stringlist *directories = 0; /* List of include directories given with -I switches. */ static struct stringlist *include_directories = 0; /* List of files given with -o switches. */ static struct stringlist *old_files = 0; /* List of files given with -W switches. */ static struct stringlist *new_files = 0; /* If nonzero, we should just print usage and exit. */ static int print_usage_flag = 0; /* If nonzero, we should print a warning message for each reference to an undefined variable. */ int warn_undefined_variables_flag; /* If nonzero, always build all targets, regardless of whether they appear out of date or not. */ static int always_make_set = 0; int always_make_flag = 0; /* If nonzero, we're in the "try to rebuild makefiles" phase. */ int rebuilding_makefiles = 0; /* Remember the original value of the SHELL variable, from the environment. */ struct variable shell_var; /* The usage output. We write it this way to make life easier for the translators, especially those trying to translate to right-to-left languages like Hebrew. */ static const char *const usage[] = { N_("Options:\n"), N_("\ -b, -m Ignored for compatibility.\n"), N_("\ -B, --always-make Unconditionally make all targets.\n"), N_("\ -C DIRECTORY, --directory=DIRECTORY\n\ Change to DIRECTORY before doing anything.\n"), N_("\ -d Print lots of debugging information.\n"), N_("\ --debug[=FLAGS] Print various types of debugging information.\n"), N_("\ -e, --environment-overrides\n\ Environment variables override makefiles.\n"), N_("\ -f FILE, --file=FILE, --makefile=FILE\n\ Read FILE as a makefile.\n"), N_("\ -h, --help Print this message and exit.\n"), N_("\ -i, --ignore-errors Ignore errors from commands.\n"), N_("\ -I DIRECTORY, --include-dir=DIRECTORY\n\ Search DIRECTORY for included makefiles.\n"), N_("\ -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg.\n"), N_("\ -k, --keep-going Keep going when some targets can't be made.\n"), N_("\ -l [N], --load-average[=N], --max-load[=N]\n\ Don't start multiple jobs unless load is below N.\n"), N_("\ -L, --check-symlink-times Use the latest mtime between symlinks and target.\n"), N_("\ -n, --just-print, --dry-run, --recon\n\ Don't actually run any commands; just print them.\n"), N_("\ -o FILE, --old-file=FILE, --assume-old=FILE\n\ Consider FILE to be very old and don't remake it.\n"), N_("\ -p, --print-data-base Print make's internal database.\n"), N_("\ -q, --question Run no commands; exit status says if up to date.\n"), N_("\ -r, --no-builtin-rules Disable the built-in implicit rules.\n"), N_("\ -R, --no-builtin-variables Disable the built-in variable settings.\n"), N_("\ -s, --silent, --quiet Don't echo commands.\n"), N_("\ -S, --no-keep-going, --stop\n\ Turns off -k.\n"), N_("\ -t, --touch Touch targets instead of remaking them.\n"), N_("\ -v, --version Print the version number of make and exit.\n"), N_("\ -w, --print-directory Print the current directory.\n"), N_("\ --no-print-directory Turn off -w, even if it was turned on implicitly.\n"), N_("\ -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n\ Consider FILE to be infinitely new.\n"), N_("\ --warn-undefined-variables Warn when an undefined variable is referenced.\n"), NULL }; /* The table of command switches. */ static const struct command_switch switches[] = { { 'b', ignore, 0, 0, 0, 0, 0, 0, 0 }, { 'B', flag, (char *) &always_make_set, 1, 1, 0, 0, 0, "always-make" }, { 'C', string, (char *) &directories, 0, 0, 0, 0, 0, "directory" }, { 'd', flag, (char *) &debug_flag, 1, 1, 0, 0, 0, 0 }, { CHAR_MAX+1, string, (char *) &db_flags, 1, 1, 0, "basic", 0, "debug" }, #ifdef WINDOWS32 { 'D', flag, (char *) &suspend_flag, 1, 1, 0, 0, 0, "suspend-for-debug" }, #endif { 'e', flag, (char *) &env_overrides, 1, 1, 0, 0, 0, "environment-overrides", }, { 'f', string, (char *) &makefiles, 0, 0, 0, 0, 0, "file" }, { 'h', flag, (char *) &print_usage_flag, 0, 0, 0, 0, 0, "help" }, { 'i', flag, (char *) &ignore_errors_flag, 1, 1, 0, 0, 0, "ignore-errors" }, { 'I', string, (char *) &include_directories, 1, 1, 0, 0, 0, "include-dir" }, { 'j', positive_int, (char *) &job_slots, 1, 1, 0, (char *) &inf_jobs, (char *) &default_job_slots, "jobs" }, { CHAR_MAX+2, string, (char *) &jobserver_fds, 1, 1, 0, 0, 0, "jobserver-fds" }, { 'k', flag, (char *) &keep_going_flag, 1, 1, 0, 0, (char *) &default_keep_going_flag, "keep-going" }, #ifndef NO_FLOAT { 'l', floating, (char *) &max_load_average, 1, 1, 0, (char *) &default_load_average, (char *) &default_load_average, "load-average" }, #else { 'l', positive_int, (char *) &max_load_average, 1, 1, 0, (char *) &default_load_average, (char *) &default_load_average, "load-average" }, #endif { 'L', flag, (char *) &check_symlink_flag, 1, 1, 0, 0, 0, "check-symlink-times" }, { 'm', ignore, 0, 0, 0, 0, 0, 0, 0 }, { 'n', flag, (char *) &just_print_flag, 1, 1, 1, 0, 0, "just-print" }, { 'o', string, (char *) &old_files, 0, 0, 0, 0, 0, "old-file" }, { 'p', flag, (char *) &print_data_base_flag, 1, 1, 0, 0, 0, "print-data-base" }, { 'q', flag, (char *) &question_flag, 1, 1, 1, 0, 0, "question" }, { 'r', flag, (char *) &no_builtin_rules_flag, 1, 1, 0, 0, 0, "no-builtin-rules" }, { 'R', flag, (char *) &no_builtin_variables_flag, 1, 1, 0, 0, 0, "no-builtin-variables" }, { 's', flag, (char *) &silent_flag, 1, 1, 0, 0, 0, "silent" }, { 'S', flag_off, (char *) &keep_going_flag, 1, 1, 0, 0, (char *) &default_keep_going_flag, "no-keep-going" }, { 't', flag, (char *) &touch_flag, 1, 1, 1, 0, 0, "touch" }, { 'v', flag, (char *) &print_version_flag, 1, 1, 0, 0, 0, "version" }, { 'w', flag, (char *) &print_directory_flag, 1, 1, 0, 0, 0, "print-directory" }, { CHAR_MAX+3, flag, (char *) &inhibit_print_directory_flag, 1, 1, 0, 0, 0, "no-print-directory" }, { 'W', string, (char *) &new_files, 0, 0, 0, 0, 0, "what-if" }, { CHAR_MAX+4, flag, (char *) &warn_undefined_variables_flag, 1, 1, 0, 0, 0, "warn-undefined-variables" }, { 0, 0, 0, 0, 0, 0, 0, 0, 0 } }; /* Secondary long names for options. */ static struct option long_option_aliases[] = { { "quiet", no_argument, 0, 's' }, { "stop", no_argument, 0, 'S' }, { "new-file", required_argument, 0, 'W' }, { "assume-new", required_argument, 0, 'W' }, { "assume-old", required_argument, 0, 'o' }, { "max-load", optional_argument, 0, 'l' }, { "dry-run", no_argument, 0, 'n' }, { "recon", no_argument, 0, 'n' }, { "makefile", required_argument, 0, 'f' }, }; /* List of goal targets. */ static struct dep *goals, *lastgoal; /* List of variables which were defined on the command line (or, equivalently, in MAKEFLAGS). */ struct command_variable { struct command_variable *next; struct variable *variable; }; static struct command_variable *command_variables; /* The name we were invoked with. */ char *program; /* Our current directory before processing any -C options. */ char *directory_before_chdir; /* Our current directory after processing all -C options. */ char *starting_directory; /* Value of the MAKELEVEL variable at startup (or 0). */ unsigned int makelevel; /* First file defined in the makefile whose name does not start with `.'. This is the default to remake if the command line does not specify. */ struct file *default_goal_file; /* Pointer to the value of the .DEFAULT_GOAL special variable. */ char ** default_goal_name; /* Pointer to structure for the file .DEFAULT whose commands are used for any file that has none of its own. This is zero if the makefiles do not define .DEFAULT. */ struct file *default_file; /* Nonzero if we have seen the magic `.POSIX' target. This turns on pedantic compliance with POSIX.2. */ int posix_pedantic; /* Nonzero if we have seen the '.SECONDEXPANSION' target. This turns on secondary expansion of prerequisites. */ int second_expansion; /* Nonzero if we have seen the `.NOTPARALLEL' target. This turns off parallel builds for this invocation of make. */ int not_parallel; /* Nonzero if some rule detected clock skew; we keep track so (a) we only print one warning about it during the run, and (b) we can print a final warning at the end of the run. */ int clock_skew_detected; /* Mask of signals that are being caught with fatal_error_signal. */ #ifdef POSIX sigset_t fatal_signal_set; #else # ifdef HAVE_SIGSETMASK int fatal_signal_mask; # endif #endif #if !defined HAVE_BSD_SIGNAL && !defined bsd_signal # if !defined HAVE_SIGACTION # define bsd_signal signal # else typedef RETSIGTYPE (*bsd_signal_ret_t) (); static bsd_signal_ret_t bsd_signal (int sig, bsd_signal_ret_t func) { struct sigaction act, oact; act.sa_handler = func; act.sa_flags = SA_RESTART; sigemptyset (&act.sa_mask); sigaddset (&act.sa_mask, sig); if (sigaction (sig, &act, &oact) != 0) return SIG_ERR; return oact.sa_handler; } # endif #endif static void initialize_global_hash_tables (void) { init_hash_global_variable_set (); strcache_init (); init_hash_files (); hash_init_directories (); hash_init_function_table (); } static struct file * enter_command_line_file (char *name) { if (name[0] == '\0') fatal (NILF, _("empty string invalid as file name")); if (name[0] == '~') { char *expanded = tilde_expand (name); if (expanded != 0) name = expanded; /* Memory leak; I don't care. */ } /* This is also done in parse_file_seq, so this is redundant for names read from makefiles. It is here for names passed on the command line. */ while (name[0] == '.' && name[1] == '/' && name[2] != '\0') { name += 2; while (*name == '/') /* Skip following slashes: ".//foo" is "foo", not "/foo". */ ++name; } if (*name == '\0') { /* It was all slashes! Move back to the dot and truncate it after the first slash, so it becomes just "./". */ do --name; while (name[0] != '.'); name[2] = '\0'; } return enter_file (xstrdup (name)); } /* Toggle -d on receipt of SIGUSR1. */ #ifdef SIGUSR1 static RETSIGTYPE debug_signal_handler (int sig UNUSED) { db_level = db_level ? DB_NONE : DB_BASIC; } #endif static void decode_debug_flags (void) { char **pp; if (debug_flag) db_level = DB_ALL; if (!db_flags) return; for (pp=db_flags->list; *pp; ++pp) { const char *p = *pp; while (1) { switch (tolower (p[0])) { case 'a': db_level |= DB_ALL; break; case 'b': db_level |= DB_BASIC; break; case 'i': db_level |= DB_BASIC | DB_IMPLICIT; break; case 'j': db_level |= DB_JOBS; break; case 'm': db_level |= DB_BASIC | DB_MAKEFILES; break; case 'v': db_level |= DB_BASIC | DB_VERBOSE; break; default: fatal (NILF, _("unknown debug level specification `%s'"), p); } while (*(++p) != '\0') if (*p == ',' || *p == ' ') break; if (*p == '\0') break; ++p; } } } #ifdef WINDOWS32 /* * HANDLE runtime exceptions by avoiding a requestor on the GUI. Capture * exception and print it to stderr instead. * * If ! DB_VERBOSE, just print a simple message and exit. * If DB_VERBOSE, print a more verbose message. * If compiled for DEBUG, let exception pass through to GUI so that * debuggers can attach. */ LONG WINAPI handle_runtime_exceptions( struct _EXCEPTION_POINTERS *exinfo ) { PEXCEPTION_RECORD exrec = exinfo->ExceptionRecord; LPSTR cmdline = GetCommandLine(); LPSTR prg = strtok(cmdline, " "); CHAR errmsg[1024]; #ifdef USE_EVENT_LOG HANDLE hEventSource; LPTSTR lpszStrings[1]; #endif if (! ISDB (DB_VERBOSE)) { sprintf(errmsg, _("%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n"), prg, exrec->ExceptionCode, (DWORD)exrec->ExceptionAddress); fprintf(stderr, errmsg); exit(255); } sprintf(errmsg, _("\nUnhandled exception filter called from program %s\nExceptionCode = %lx\nExceptionFlags = %lx\nExceptionAddress = %lx\n"), prg, exrec->ExceptionCode, exrec->ExceptionFlags, (DWORD)exrec->ExceptionAddress); if (exrec->ExceptionCode == EXCEPTION_ACCESS_VIOLATION && exrec->NumberParameters >= 2) sprintf(&errmsg[strlen(errmsg)], (exrec->ExceptionInformation[0] ? _("Access violation: write operation at address %lx\n") : _("Access violation: read operation at address %lx\n")), exrec->ExceptionInformation[1]); /* turn this on if we want to put stuff in the event log too */ #ifdef USE_EVENT_LOG hEventSource = RegisterEventSource(NULL, "GNU Make"); lpszStrings[0] = errmsg; if (hEventSource != NULL) { ReportEvent(hEventSource, /* handle of event source */ EVENTLOG_ERROR_TYPE, /* event type */ 0, /* event category */ 0, /* event ID */ NULL, /* current user's SID */ 1, /* strings in lpszStrings */ 0, /* no bytes of raw data */ lpszStrings, /* array of error strings */ NULL); /* no raw data */ (VOID) DeregisterEventSource(hEventSource); } #endif /* Write the error to stderr too */ fprintf(stderr, errmsg); #ifdef DEBUG return EXCEPTION_CONTINUE_SEARCH; #else exit(255); return (255); /* not reached */ #endif } /* * On WIN32 systems we don't have the luxury of a /bin directory that * is mapped globally to every drive mounted to the system. Since make could * be invoked from any drive, and we don't want to propogate /bin/sh * to every single drive. Allow ourselves a chance to search for * a value for default shell here (if the default path does not exist). */ int find_and_set_default_shell (char *token) { int sh_found = 0; char *search_token; char *tokend; PATH_VAR(sh_path); extern char *default_shell; if (!token) search_token = default_shell; else search_token = token; /* If the user explicitly requests the DOS cmd shell, obey that request. However, make sure that's what they really want by requiring the value of SHELL either equal, or have a final path element of, "cmd" or "cmd.exe" case-insensitive. */ tokend = search_token + strlen (search_token) - 3; if (((tokend == search_token || (tokend > search_token && (tokend[-1] == '/' || tokend[-1] == '\\'))) && !strcmpi (tokend, "cmd")) || ((tokend - 4 == search_token || (tokend - 4 > search_token && (tokend[-5] == '/' || tokend[-5] == '\\'))) && !strcmpi (tokend - 4, "cmd.exe"))) { batch_mode_shell = 1; unixy_shell = 0; sprintf (sh_path, "%s", search_token); default_shell = xstrdup (w32ify (sh_path, 0)); DB (DB_VERBOSE, (_("find_and_set_shell setting default_shell = %s\n"), default_shell)); sh_found = 1; } else if (!no_default_sh_exe && (token == NULL || !strcmp (search_token, default_shell))) { /* no new information, path already set or known */ sh_found = 1; } else if (file_exists_p(search_token)) { /* search token path was found */ sprintf(sh_path, "%s", search_token); default_shell = xstrdup(w32ify(sh_path,0)); DB (DB_VERBOSE, (_("find_and_set_shell setting default_shell = %s\n"), default_shell)); sh_found = 1; } else { char *p; struct variable *v = lookup_variable (STRING_SIZE_TUPLE ("PATH")); /* Search Path for shell */ if (v && v->value) { char *ep; p = v->value; ep = strchr(p, PATH_SEPARATOR_CHAR); while (ep && *ep) { *ep = '\0'; if (dir_file_exists_p(p, search_token)) { sprintf(sh_path, "%s/%s", p, search_token); default_shell = xstrdup(w32ify(sh_path,0)); sh_found = 1; *ep = PATH_SEPARATOR_CHAR; /* terminate loop */ p += strlen(p); } else { *ep = PATH_SEPARATOR_CHAR; p = ++ep; } ep = strchr(p, PATH_SEPARATOR_CHAR); } /* be sure to check last element of Path */ if (p && *p && dir_file_exists_p(p, search_token)) { sprintf(sh_path, "%s/%s", p, search_token); default_shell = xstrdup(w32ify(sh_path,0)); sh_found = 1; } if (sh_found) DB (DB_VERBOSE, (_("find_and_set_shell path search set default_shell = %s\n"), default_shell)); } } /* naive test */ if (!unixy_shell && sh_found && (strstr(default_shell, "sh") || strstr(default_shell, "SH"))) { unixy_shell = 1; batch_mode_shell = 0; } #ifdef BATCH_MODE_ONLY_SHELL batch_mode_shell = 1; #endif return (sh_found); } #endif /* WINDOWS32 */ #ifdef __MSDOS__ static void msdos_return_to_initial_directory (void) { if (directory_before_chdir) chdir (directory_before_chdir); } #endif extern char *mktemp PARAMS ((char *template)); extern int mkstemp PARAMS ((char *template)); FILE * open_tmpfile(char **name, const char *template) { #ifdef HAVE_FDOPEN int fd; #endif #if defined HAVE_MKSTEMP || defined HAVE_MKTEMP # define TEMPLATE_LEN strlen (template) #else # define TEMPLATE_LEN L_tmpnam #endif *name = xmalloc (TEMPLATE_LEN + 1); strcpy (*name, template); #if defined HAVE_MKSTEMP && defined HAVE_FDOPEN /* It's safest to use mkstemp(), if we can. */ fd = mkstemp (*name); if (fd == -1) return 0; return fdopen (fd, "w"); #else # ifdef HAVE_MKTEMP (void) mktemp (*name); # else (void) tmpnam (*name); # endif # ifdef HAVE_FDOPEN /* Can't use mkstemp(), but guard against a race condition. */ fd = open (*name, O_CREAT|O_EXCL|O_WRONLY, 0600); if (fd == -1) return 0; return fdopen (fd, "w"); # else /* Not secure, but what can we do? */ return fopen (*name, "w"); # endif #endif } #ifdef _AMIGA int main (int argc, char **argv) #else int main (int argc, char **argv, char **envp) #endif { static char *stdin_nm = 0; struct file *f; int i; int makefile_status = MAKE_SUCCESS; char **p; struct dep *read_makefiles; PATH_VAR (current_directory); unsigned int restarts = 0; #ifdef WINDOWS32 char *unix_path = NULL; char *windows32_path = NULL; SetUnhandledExceptionFilter(handle_runtime_exceptions); /* start off assuming we have no shell */ unixy_shell = 0; no_default_sh_exe = 1; #endif #ifdef SET_STACK_SIZE /* Get rid of any avoidable limit on stack size. */ { struct rlimit rlim; /* Set the stack limit huge so that alloca does not fail. */ if (getrlimit (RLIMIT_STACK, &rlim) == 0) { rlim.rlim_cur = rlim.rlim_max; setrlimit (RLIMIT_STACK, &rlim); } } #endif #ifdef HAVE_ATEXIT atexit (close_stdout); #endif /* Needed for OS/2 */ initialize_main(&argc, &argv); default_goal_file = 0; reading_file = 0; #if defined (__MSDOS__) && !defined (_POSIX_SOURCE) /* Request the most powerful version of `system', to make up for the dumb default shell. */ __system_flags = (__system_redirect | __system_use_shell | __system_allow_multiple_cmds | __system_allow_long_cmds | __system_handle_null_commands | __system_emulate_chdir); #endif /* Set up gettext/internationalization support. */ setlocale (LC_ALL, ""); bindtextdomain (PACKAGE, LOCALEDIR); textdomain (PACKAGE); #ifdef POSIX sigemptyset (&fatal_signal_set); #define ADD_SIG(sig) sigaddset (&fatal_signal_set, sig) #else #ifdef HAVE_SIGSETMASK fatal_signal_mask = 0; #define ADD_SIG(sig) fatal_signal_mask |= sigmask (sig) #else #define ADD_SIG(sig) #endif #endif #define FATAL_SIG(sig) \ if (bsd_signal (sig, fatal_error_signal) == SIG_IGN) \ bsd_signal (sig, SIG_IGN); \ else \ ADD_SIG (sig); #ifdef SIGHUP FATAL_SIG (SIGHUP); #endif #ifdef SIGQUIT FATAL_SIG (SIGQUIT); #endif FATAL_SIG (SIGINT); FATAL_SIG (SIGTERM); #ifdef __MSDOS__ /* Windows 9X delivers FP exceptions in child programs to their parent! We don't want Make to die when a child divides by zero, so we work around that lossage by catching SIGFPE. */ FATAL_SIG (SIGFPE); #endif #ifdef SIGDANGER FATAL_SIG (SIGDANGER); #endif #ifdef SIGXCPU FATAL_SIG (SIGXCPU); #endif #ifdef SIGXFSZ FATAL_SIG (SIGXFSZ); #endif #undef FATAL_SIG /* Do not ignore the child-death signal. This must be done before any children could possibly be created; otherwise, the wait functions won't work on systems with the SVR4 ECHILD brain damage, if our invoker is ignoring this signal. */ #ifdef HAVE_WAIT_NOHANG # if defined SIGCHLD (void) bsd_signal (SIGCHLD, SIG_DFL); # endif # if defined SIGCLD && SIGCLD != SIGCHLD (void) bsd_signal (SIGCLD, SIG_DFL); # endif #endif /* Make sure stdout is line-buffered. */ #ifdef HAVE_SETVBUF # ifdef SETVBUF_REVERSED setvbuf (stdout, _IOLBF, xmalloc (BUFSIZ), BUFSIZ); # else /* setvbuf not reversed. */ /* Some buggy systems lose if we pass 0 instead of allocating ourselves. */ setvbuf (stdout, (char *) 0, _IOLBF, BUFSIZ); # endif /* setvbuf reversed. */ #elif HAVE_SETLINEBUF setlinebuf (stdout); #endif /* setlinebuf missing. */ /* Figure out where this program lives. */ if (argv[0] == 0) argv[0] = ""; if (argv[0][0] == '\0') program = "make"; else { #ifdef VMS program = strrchr (argv[0], ']'); #else program = strrchr (argv[0], '/'); #endif #if defined(__MSDOS__) || defined(__EMX__) if (program == 0) program = strrchr (argv[0], '\\'); else { /* Some weird environments might pass us argv[0] with both kinds of slashes; we must find the rightmost. */ char *p = strrchr (argv[0], '\\'); if (p && p > program) program = p; } if (program == 0 && argv[0][1] == ':') program = argv[0] + 1; #endif #ifdef WINDOWS32 if (program == 0) { /* Extract program from full path */ int argv0_len; program = strrchr (argv[0], '\\'); if (program) { argv0_len = strlen(program); if (argv0_len > 4 && streq (&program[argv0_len - 4], ".exe")) /* Remove .exe extension */ program[argv0_len - 4] = '\0'; } } #endif if (program == 0) program = argv[0]; else ++program; } /* Set up to access user data (files). */ user_access (); initialize_global_hash_tables (); /* Figure out where we are. */ #ifdef WINDOWS32 if (getcwd_fs (current_directory, GET_PATH_MAX) == 0) #else if (getcwd (current_directory, GET_PATH_MAX) == 0) #endif { #ifdef HAVE_GETCWD perror_with_name ("getcwd", ""); #else error (NILF, "getwd: %s", current_directory); #endif current_directory[0] = '\0'; directory_before_chdir = 0; } else directory_before_chdir = xstrdup (current_directory); #ifdef __MSDOS__ /* Make sure we will return to the initial directory, come what may. */ atexit (msdos_return_to_initial_directory); #endif /* Initialize the special variables. */ define_variable (".VARIABLES", 10, "", o_default, 0)->special = 1; /* define_variable (".TARGETS", 8, "", o_default, 0)->special = 1; */ /* Set up .FEATURES */ define_variable (".FEATURES", 9, "target-specific order-only second-expansion else-if", o_default, 0); #ifndef NO_ARCHIVES do_variable_definition (NILF, ".FEATURES", "archives", o_default, f_append, 0); #endif #ifdef MAKE_JOBSERVER do_variable_definition (NILF, ".FEATURES", "jobserver", o_default, f_append, 0); #endif #ifdef MAKE_SYMLINKS do_variable_definition (NILF, ".FEATURES", "check-symlink", o_default, f_append, 0); #endif /* Read in variables from the environment. It is important that this be done before $(MAKE) is figured out so its definitions will not be from the environment. */ #ifndef _AMIGA for (i = 0; envp[i] != 0; ++i) { int do_not_define = 0; char *ep = envp[i]; while (*ep != '\0' && *ep != '=') ++ep; #ifdef WINDOWS32 if (!unix_path && strneq(envp[i], "PATH=", 5)) unix_path = ep+1; else if (!strnicmp(envp[i], "Path=", 5)) { do_not_define = 1; /* it gets defined after loop exits */ if (!windows32_path) windows32_path = ep+1; } #endif /* The result of pointer arithmetic is cast to unsigned int for machines where ptrdiff_t is a different size that doesn't widen the same. */ if (!do_not_define) { struct variable *v; v = define_variable (envp[i], (unsigned int) (ep - envp[i]), ep + 1, o_env, 1); /* Force exportation of every variable culled from the environment. We used to rely on target_environment's v_default code to do this. But that does not work for the case where an environment variable is redefined in a makefile with `override'; it should then still be exported, because it was originally in the environment. */ v->export = v_export; /* Another wrinkle is that POSIX says the value of SHELL set in the makefile won't change the value of SHELL given to subprocesses */ if (streq (v->name, "SHELL")) { #ifndef __MSDOS__ v->export = v_noexport; #endif shell_var.name = "SHELL"; shell_var.value = xstrdup (ep + 1); } /* If MAKE_RESTARTS is set, remember it but don't export it. */ if (streq (v->name, "MAKE_RESTARTS")) { v->export = v_noexport; restarts = (unsigned int) atoi (ep + 1); } } } #ifdef WINDOWS32 /* If we didn't find a correctly spelled PATH we define PATH as * either the first mispelled value or an empty string */ if (!unix_path) define_variable("PATH", 4, windows32_path ? windows32_path : "", o_env, 1)->export = v_export; #endif #else /* For Amiga, read the ENV: device, ignoring all dirs */ { BPTR env, file, old; char buffer[1024]; int len; __aligned struct FileInfoBlock fib; env = Lock ("ENV:", ACCESS_READ); if (env) { old = CurrentDir (DupLock(env)); Examine (env, &fib); while (ExNext (env, &fib)) { if (fib.fib_DirEntryType < 0) /* File */ { /* Define an empty variable. It will be filled in variable_lookup(). Makes startup quite a bit faster. */ define_variable (fib.fib_FileName, strlen (fib.fib_FileName), "", o_env, 1)->export = v_export; } } UnLock (env); UnLock(CurrentDir(old)); } } #endif /* Decode the switches. */ decode_env_switches (STRING_SIZE_TUPLE ("MAKEFLAGS")); #if 0 /* People write things like: MFLAGS="CC=gcc -pipe" "CFLAGS=-g" and we set the -p, -i and -e switches. Doesn't seem quite right. */ decode_env_switches (STRING_SIZE_TUPLE ("MFLAGS")); #endif decode_switches (argc, argv, 0); #ifdef WINDOWS32 if (suspend_flag) { fprintf(stderr, "%s (pid = %ld)\n", argv[0], GetCurrentProcessId()); fprintf(stderr, _("%s is suspending for 30 seconds..."), argv[0]); Sleep(30 * 1000); fprintf(stderr, _("done sleep(30). Continuing.\n")); } #endif decode_debug_flags (); /* Set always_make_flag if -B was given and we've not restarted already. */ always_make_flag = always_make_set && (restarts == 0); /* Print version information. */ if (print_version_flag || print_data_base_flag || db_level) { print_version (); /* `make --version' is supposed to just print the version and exit. */ if (print_version_flag) die (0); } #ifndef VMS /* Set the "MAKE_COMMAND" variable to the name we were invoked with. (If it is a relative pathname with a slash, prepend our directory name so the result will run the same program regardless of the current dir. If it is a name with no slash, we can only hope that PATH did not find it in the current directory.) */ #ifdef WINDOWS32 /* * Convert from backslashes to forward slashes for * programs like sh which don't like them. Shouldn't * matter if the path is one way or the other for * CreateProcess(). */ if (strpbrk(argv[0], "/:\\") || strstr(argv[0], "..") || strneq(argv[0], "//", 2)) argv[0] = xstrdup(w32ify(argv[0],1)); #else /* WINDOWS32 */ #if defined (__MSDOS__) || defined (__EMX__) if (strchr (argv[0], '\\')) { char *p; argv[0] = xstrdup (argv[0]); for (p = argv[0]; *p; p++) if (*p == '\\') *p = '/'; } /* If argv[0] is not in absolute form, prepend the current directory. This can happen when Make is invoked by another DJGPP program that uses a non-absolute name. */ if (current_directory[0] != '\0' && argv[0] != 0 && (argv[0][0] != '/' && (argv[0][0] == '\0' || argv[0][1] != ':')) #ifdef __EMX__ /* do not prepend cwd if argv[0] contains no '/', e.g. "make" */ && (strchr (argv[0], '/') != 0 || strchr (argv[0], '\\') != 0) # endif ) argv[0] = concat (current_directory, "/", argv[0]); #else /* !__MSDOS__ */ if (current_directory[0] != '\0' && argv[0] != 0 && argv[0][0] != '/' && strchr (argv[0], '/') != 0) argv[0] = concat (current_directory, "/", argv[0]); #endif /* !__MSDOS__ */ #endif /* WINDOWS32 */ #endif /* The extra indirection through $(MAKE_COMMAND) is done for hysterical raisins. */ (void) define_variable ("MAKE_COMMAND", 12, argv[0], o_default, 0); (void) define_variable ("MAKE", 4, "$(MAKE_COMMAND)", o_default, 1); if (command_variables != 0) { struct command_variable *cv; struct variable *v; unsigned int len = 0; char *value, *p; /* Figure out how much space will be taken up by the command-line variable definitions. */ for (cv = command_variables; cv != 0; cv = cv->next) { v = cv->variable; len += 2 * strlen (v->name); if (! v->recursive) ++len; ++len; len += 2 * strlen (v->value); ++len; } /* Now allocate a buffer big enough and fill it. */ p = value = (char *) alloca (len); for (cv = command_variables; cv != 0; cv = cv->next) { v = cv->variable; p = quote_for_env (p, v->name); if (! v->recursive) *p++ = ':'; *p++ = '='; p = quote_for_env (p, v->value); *p++ = ' '; } p[-1] = '\0'; /* Kill the final space and terminate. */ /* Define an unchangeable variable with a name that no POSIX.2 makefile could validly use for its own variable. */ (void) define_variable ("-*-command-variables-*-", 23, value, o_automatic, 0); /* Define the variable; this will not override any user definition. Normally a reference to this variable is written into the value of MAKEFLAGS, allowing the user to override this value to affect the exported value of MAKEFLAGS. In POSIX-pedantic mode, we cannot allow the user's setting of MAKEOVERRIDES to affect MAKEFLAGS, so a reference to this hidden variable is written instead. */ (void) define_variable ("MAKEOVERRIDES", 13, "${-*-command-variables-*-}", o_env, 1); } /* If there were -C flags, move ourselves about. */ if (directories != 0) for (i = 0; directories->list[i] != 0; ++i) { char *dir = directories->list[i]; char *expanded = 0; if (dir[0] == '~') { expanded = tilde_expand (dir); if (expanded != 0) dir = expanded; } #ifdef WINDOWS32 /* WINDOWS32 chdir() doesn't work if the directory has a trailing '/' But allow -C/ just in case someone wants that. */ { char *p = dir + strlen (dir) - 1; while (p > dir && (p[0] == '/' || p[0] == '\\')) --p; p[1] = '\0'; } #endif if (chdir (dir) < 0) pfatal_with_name (dir); if (expanded) free (expanded); } #ifdef WINDOWS32 /* * THIS BLOCK OF CODE MUST COME AFTER chdir() CALL ABOVE IN ORDER * TO NOT CONFUSE THE DEPENDENCY CHECKING CODE IN implicit.c. * * The functions in dir.c can incorrectly cache information for "." * before we have changed directory and this can cause file * lookups to fail because the current directory (.) was pointing * at the wrong place when it was first evaluated. */ no_default_sh_exe = !find_and_set_default_shell(NULL); #endif /* WINDOWS32 */ /* Figure out the level of recursion. */ { struct variable *v = lookup_variable (STRING_SIZE_TUPLE (MAKELEVEL_NAME)); if (v != 0 && v->value[0] != '\0' && v->value[0] != '-') makelevel = (unsigned int) atoi (v->value); else makelevel = 0; } /* Except under -s, always do -w in sub-makes and under -C. */ if (!silent_flag && (directories != 0 || makelevel > 0)) print_directory_flag = 1; /* Let the user disable that with --no-print-directory. */ if (inhibit_print_directory_flag) print_directory_flag = 0; /* If -R was given, set -r too (doesn't make sense otherwise!) */ if (no_builtin_variables_flag) no_builtin_rules_flag = 1; /* Construct the list of include directories to search. */ construct_include_path (include_directories == 0 ? (char **) 0 : include_directories->list); /* Figure out where we are now, after chdir'ing. */ if (directories == 0) /* We didn't move, so we're still in the same place. */ starting_directory = current_directory; else { #ifdef WINDOWS32 if (getcwd_fs (current_directory, GET_PATH_MAX) == 0) #else if (getcwd (current_directory, GET_PATH_MAX) == 0) #endif { #ifdef HAVE_GETCWD perror_with_name ("getcwd", ""); #else error (NILF, "getwd: %s", current_directory); #endif starting_directory = 0; } else starting_directory = current_directory; } (void) define_variable ("CURDIR", 6, current_directory, o_file, 0); /* Read any stdin makefiles into temporary files. */ if (makefiles != 0) { register unsigned int i; for (i = 0; i < makefiles->idx; ++i) if (makefiles->list[i][0] == '-' && makefiles->list[i][1] == '\0') { /* This makefile is standard input. Since we may re-exec and thus re-read the makefiles, we read standard input into a temporary file and read from that. */ FILE *outfile; char *template, *tmpdir; if (stdin_nm) fatal (NILF, _("Makefile from standard input specified twice.")); #ifdef VMS # define DEFAULT_TMPDIR "sys$scratch:" #else # ifdef P_tmpdir # define DEFAULT_TMPDIR P_tmpdir # else # define DEFAULT_TMPDIR "/tmp" # endif #endif #define DEFAULT_TMPFILE "GmXXXXXX" if (((tmpdir = getenv ("TMPDIR")) == NULL || *tmpdir == '\0') #if defined (__MSDOS__) || defined (WINDOWS32) || defined (__EMX__) /* These are also used commonly on these platforms. */ && ((tmpdir = getenv ("TEMP")) == NULL || *tmpdir == '\0') && ((tmpdir = getenv ("TMP")) == NULL || *tmpdir == '\0') #endif ) tmpdir = DEFAULT_TMPDIR; template = (char *) alloca (strlen (tmpdir) + sizeof (DEFAULT_TMPFILE) + 1); strcpy (template, tmpdir); #ifdef HAVE_DOS_PATHS if (strchr ("/\\", template[strlen (template) - 1]) == NULL) strcat (template, "/"); #else # ifndef VMS if (template[strlen (template) - 1] != '/') strcat (template, "/"); # endif /* !VMS */ #endif /* !HAVE_DOS_PATHS */ strcat (template, DEFAULT_TMPFILE); outfile = open_tmpfile (&stdin_nm, template); if (outfile == 0) pfatal_with_name (_("fopen (temporary file)")); while (!feof (stdin) && ! ferror (stdin)) { char buf[2048]; unsigned int n = fread (buf, 1, sizeof (buf), stdin); if (n > 0 && fwrite (buf, 1, n, outfile) != n) pfatal_with_name (_("fwrite (temporary file)")); } (void) fclose (outfile); /* Replace the name that read_all_makefiles will see with the name of the temporary file. */ makefiles->list[i] = xstrdup (stdin_nm); /* Make sure the temporary file will not be remade. */ f = enter_file (stdin_nm); f->updated = 1; f->update_status = 0; f->command_state = cs_finished; /* Can't be intermediate, or it'll be removed too early for make re-exec. */ f->intermediate = 0; f->dontcare = 0; } } #ifndef __EMX__ /* Don't use a SIGCHLD handler for OS/2 */ #if defined(MAKE_JOBSERVER) || !defined(HAVE_WAIT_NOHANG) /* Set up to handle children dying. This must be done before reading in the makefiles so that `shell' function calls will work. If we don't have a hanging wait we have to fall back to old, broken functionality here and rely on the signal handler and counting children. If we're using the jobs pipe we need a signal handler so that SIGCHLD is not ignored; we need it to interrupt the read(2) of the jobserver pipe in job.c if we're waiting for a token. If none of these are true, we don't need a signal handler at all. */ { extern RETSIGTYPE child_handler PARAMS ((int sig)); # if defined SIGCHLD bsd_signal (SIGCHLD, child_handler); # endif # if defined SIGCLD && SIGCLD != SIGCHLD bsd_signal (SIGCLD, child_handler); # endif } #endif #endif /* Let the user send us SIGUSR1 to toggle the -d flag during the run. */ #ifdef SIGUSR1 bsd_signal (SIGUSR1, debug_signal_handler); #endif /* Define the initial list of suffixes for old-style rules. */ set_default_suffixes (); /* Define the file rules for the built-in suffix rules. These will later be converted into pattern rules. We used to do this in install_default_implicit_rules, but since that happens after reading makefiles, it results in the built-in pattern rules taking precedence over makefile-specified suffix rules, which is wrong. */ install_default_suffix_rules (); /* Define some internal and special variables. */ define_automatic_variables (); /* Set up the MAKEFLAGS and MFLAGS variables so makefiles can look at them. */ define_makeflags (0, 0); /* Define the default variables. */ define_default_variables (); default_file = enter_file (".DEFAULT"); { struct variable *v = define_variable (".DEFAULT_GOAL", 13, "", o_file, 0); default_goal_name = &v->value; } /* Read all the makefiles. */ read_makefiles = read_all_makefiles (makefiles == 0 ? (char **) 0 : makefiles->list); #ifdef WINDOWS32 /* look one last time after reading all Makefiles */ if (no_default_sh_exe) no_default_sh_exe = !find_and_set_default_shell(NULL); #endif /* WINDOWS32 */ #if defined (__MSDOS__) || defined (__EMX__) /* We need to know what kind of shell we will be using. */ { extern int _is_unixy_shell (const char *_path); struct variable *shv = lookup_variable (STRING_SIZE_TUPLE ("SHELL")); extern int unixy_shell; extern char *default_shell; if (shv && *shv->value) { char *shell_path = recursively_expand(shv); if (shell_path && _is_unixy_shell (shell_path)) unixy_shell = 1; else unixy_shell = 0; if (shell_path) default_shell = shell_path; } } #endif /* __MSDOS__ || __EMX__ */ /* Decode switches again, in case the variables were set by the makefile. */ decode_env_switches (STRING_SIZE_TUPLE ("MAKEFLAGS")); #if 0 decode_env_switches (STRING_SIZE_TUPLE ("MFLAGS")); #endif #if defined (__MSDOS__) || defined (__EMX__) if (job_slots != 1 # ifdef __EMX__ && _osmode != OS2_MODE /* turn off -j if we are in DOS mode */ # endif ) { error (NILF, _("Parallel jobs (-j) are not supported on this platform.")); error (NILF, _("Resetting to single job (-j1) mode.")); job_slots = 1; } #endif #ifdef MAKE_JOBSERVER /* If the jobserver-fds option is seen, make sure that -j is reasonable. */ if (jobserver_fds) { char *cp; unsigned int ui; for (ui=1; ui < jobserver_fds->idx; ++ui) if (!streq (jobserver_fds->list[0], jobserver_fds->list[ui])) fatal (NILF, _("internal error: multiple --jobserver-fds options")); /* Now parse the fds string and make sure it has the proper format. */ cp = jobserver_fds->list[0]; if (sscanf (cp, "%d,%d", &job_fds[0], &job_fds[1]) != 2) fatal (NILF, _("internal error: invalid --jobserver-fds string `%s'"), cp); /* The combination of a pipe + !job_slots means we're using the jobserver. If !job_slots and we don't have a pipe, we can start infinite jobs. If we see both a pipe and job_slots >0 that means the user set -j explicitly. This is broken; in this case obey the user (ignore the jobserver pipe for this make) but print a message. */ if (job_slots > 0) error (NILF, _("warning: -jN forced in submake: disabling jobserver mode.")); /* Create a duplicate pipe, that will be closed in the SIGCHLD handler. If this fails with EBADF, the parent has closed the pipe on us because it didn't think we were a submake. If so, print a warning then default to -j1. */ else if ((job_rfd = dup (job_fds[0])) < 0) { if (errno != EBADF) pfatal_with_name (_("dup jobserver")); error (NILF, _("warning: jobserver unavailable: using -j1. Add `+' to parent make rule.")); job_slots = 1; } if (job_slots > 0) { close (job_fds[0]); close (job_fds[1]); job_fds[0] = job_fds[1] = -1; free (jobserver_fds->list); free (jobserver_fds); jobserver_fds = 0; } } /* If we have >1 slot but no jobserver-fds, then we're a top-level make. Set up the pipe and install the fds option for our children. */ if (job_slots > 1) { char c = '+'; if (pipe (job_fds) < 0 || (job_rfd = dup (job_fds[0])) < 0) pfatal_with_name (_("creating jobs pipe")); /* Every make assumes that it always has one job it can run. For the submakes it's the token they were given by their parent. For the top make, we just subtract one from the number the user wants. We want job_slots to be 0 to indicate we're using the jobserver. */ master_job_slots = job_slots; while (--job_slots) { int r; EINTRLOOP (r, write (job_fds[1], &c, 1)); if (r != 1) pfatal_with_name (_("init jobserver pipe")); } /* Fill in the jobserver_fds struct for our children. */ jobserver_fds = (struct stringlist *) xmalloc (sizeof (struct stringlist)); jobserver_fds->list = (char **) xmalloc (sizeof (char *)); jobserver_fds->list[0] = xmalloc ((sizeof ("1024")*2)+1); sprintf (jobserver_fds->list[0], "%d,%d", job_fds[0], job_fds[1]); jobserver_fds->idx = 1; jobserver_fds->max = 1; } #endif #ifndef MAKE_SYMLINKS if (check_symlink_flag) { error (NILF, _("Symbolic links not supported: disabling -L.")); check_symlink_flag = 0; } #endif /* Set up MAKEFLAGS and MFLAGS again, so they will be right. */ define_makeflags (1, 0); /* Make each `struct dep' point at the `struct file' for the file depended on. Also do magic for special targets. */ snap_deps (); /* Convert old-style suffix rules to pattern rules. It is important to do this before installing the built-in pattern rules below, so that makefile-specified suffix rules take precedence over built-in pattern rules. */ convert_to_pattern (); /* Install the default implicit pattern rules. This used to be done before reading the makefiles. But in that case, built-in pattern rules were in the chain before user-defined ones, so they matched first. */ install_default_implicit_rules (); /* Compute implicit rule limits. */ count_implicit_rule_limits (); /* Construct the listings of directories in VPATH lists. */ build_vpath_lists (); /* Mark files given with -o flags as very old and as having been updated already, and files given with -W flags as brand new (time-stamp as far as possible into the future). If restarts is set we'll do -W later. */ if (old_files != 0) for (p = old_files->list; *p != 0; ++p) { f = enter_command_line_file (*p); f->last_mtime = f->mtime_before_update = OLD_MTIME; f->updated = 1; f->update_status = 0; f->command_state = cs_finished; } if (!restarts && new_files != 0) { for (p = new_files->list; *p != 0; ++p) { f = enter_command_line_file (*p); f->last_mtime = f->mtime_before_update = NEW_MTIME; } } /* Initialize the remote job module. */ remote_setup (); if (read_makefiles != 0) { /* Update any makefiles if necessary. */ FILE_TIMESTAMP *makefile_mtimes = 0; unsigned int mm_idx = 0; char **nargv = argv; int nargc = argc; int orig_db_level = db_level; int status; if (! ISDB (DB_MAKEFILES)) db_level = DB_NONE; DB (DB_BASIC, (_("Updating makefiles....\n"))); /* Remove any makefiles we don't want to try to update. Also record the current modtimes so we can compare them later. */ { register struct dep *d, *last; last = 0; d = read_makefiles; while (d != 0) { register struct file *f = d->file; if (f->double_colon) for (f = f->double_colon; f != NULL; f = f->prev) { if (f->deps == 0 && f->cmds != 0) { /* This makefile is a :: target with commands, but no dependencies. So, it will always be remade. This might well cause an infinite loop, so don't try to remake it. (This will only happen if your makefiles are written exceptionally stupidly; but if you work for Athena, that's how you write your makefiles.) */ DB (DB_VERBOSE, (_("Makefile `%s' might loop; not remaking it.\n"), f->name)); if (last == 0) read_makefiles = d->next; else last->next = d->next; /* Free the storage. */ free_dep (d); d = last == 0 ? read_makefiles : last->next; break; } } if (f == NULL || !f->double_colon) { makefile_mtimes = (FILE_TIMESTAMP *) xrealloc ((char *) makefile_mtimes, (mm_idx + 1) * sizeof (FILE_TIMESTAMP)); makefile_mtimes[mm_idx++] = file_mtime_no_search (d->file); last = d; d = d->next; } } } /* Set up `MAKEFLAGS' specially while remaking makefiles. */ define_makeflags (1, 1); rebuilding_makefiles = 1; status = update_goal_chain (read_makefiles); rebuilding_makefiles = 0; switch (status) { case 1: /* The only way this can happen is if the user specified -q and asked * for one of the makefiles to be remade as a target on the command * line. Since we're not actually updating anything with -q we can * treat this as "did nothing". */ case -1: /* Did nothing. */ break; case 2: /* Failed to update. Figure out if we care. */ { /* Nonzero if any makefile was successfully remade. */ int any_remade = 0; /* Nonzero if any makefile we care about failed in updating or could not be found at all. */ int any_failed = 0; unsigned int i; struct dep *d; for (i = 0, d = read_makefiles; d != 0; ++i, d = d->next) { /* Reset the considered flag; we may need to look at the file again to print an error. */ d->file->considered = 0; if (d->file->updated) { /* This makefile was updated. */ if (d->file->update_status == 0) { /* It was successfully updated. */ any_remade |= (file_mtime_no_search (d->file) != makefile_mtimes[i]); } else if (! (d->changed & RM_DONTCARE)) { FILE_TIMESTAMP mtime; /* The update failed and this makefile was not from the MAKEFILES variable, so we care. */ error (NILF, _("Failed to remake makefile `%s'."), d->file->name); mtime = file_mtime_no_search (d->file); any_remade |= (mtime != NONEXISTENT_MTIME && mtime != makefile_mtimes[i]); makefile_status = MAKE_FAILURE; } } else /* This makefile was not found at all. */ if (! (d->changed & RM_DONTCARE)) { /* This is a makefile we care about. See how much. */ if (d->changed & RM_INCLUDED) /* An included makefile. We don't need to die, but we do want to complain. */ error (NILF, _("Included makefile `%s' was not found."), dep_name (d)); else { /* A normal makefile. We must die later. */ error (NILF, _("Makefile `%s' was not found"), dep_name (d)); any_failed = 1; } } } /* Reset this to empty so we get the right error message below. */ read_makefiles = 0; if (any_remade) goto re_exec; if (any_failed) die (2); break; } case 0: re_exec: /* Updated successfully. Re-exec ourselves. */ remove_intermediates (0); if (print_data_base_flag) print_data_base (); log_working_directory (0); clean_jobserver (0); if (makefiles != 0) { /* These names might have changed. */ int i, j = 0; for (i = 1; i < argc; ++i) if (strneq (argv[i], "-f", 2)) /* XXX */ { char *p = &argv[i][2]; if (*p == '\0') argv[++i] = makefiles->list[j]; else argv[i] = concat ("-f", makefiles->list[j], ""); ++j; } } /* Add -o option for the stdin temporary file, if necessary. */ if (stdin_nm) { nargv = (char **) xmalloc ((nargc + 2) * sizeof (char *)); bcopy ((char *) argv, (char *) nargv, argc * sizeof (char *)); nargv[nargc++] = concat ("-o", stdin_nm, ""); nargv[nargc] = 0; } if (directories != 0 && directories->idx > 0) { char bad; if (directory_before_chdir != 0) { if (chdir (directory_before_chdir) < 0) { perror_with_name ("chdir", ""); bad = 1; } else bad = 0; } else bad = 1; if (bad) fatal (NILF, _("Couldn't change back to original directory.")); } ++restarts; if (ISDB (DB_BASIC)) { char **p; printf (_("Re-executing[%u]:"), restarts); for (p = nargv; *p != 0; ++p) printf (" %s", *p); putchar ('\n'); } #ifndef _AMIGA for (p = environ; *p != 0; ++p) { if (strneq (*p, MAKELEVEL_NAME, MAKELEVEL_LENGTH) && (*p)[MAKELEVEL_LENGTH] == '=') { /* The SGI compiler apparently can't understand the concept of storing the result of a function in something other than a local variable. */ char *sgi_loses; sgi_loses = (char *) alloca (40); *p = sgi_loses; sprintf (*p, "%s=%u", MAKELEVEL_NAME, makelevel); } if (strneq (*p, "MAKE_RESTARTS=", 14)) { char *sgi_loses; sgi_loses = (char *) alloca (40); *p = sgi_loses; sprintf (*p, "MAKE_RESTARTS=%u", restarts); restarts = 0; } } #else /* AMIGA */ { char buffer[256]; sprintf (buffer, "%u", makelevel); SetVar (MAKELEVEL_NAME, buffer, -1, GVF_GLOBAL_ONLY); sprintf (buffer, "%u", restarts); SetVar ("MAKE_RESTARTS", buffer, -1, GVF_GLOBAL_ONLY); restarts = 0; } #endif /* If we didn't set the restarts variable yet, add it. */ if (restarts) { char *b = alloca (40); sprintf (b, "MAKE_RESTARTS=%u", restarts); putenv (b); } fflush (stdout); fflush (stderr); /* Close the dup'd jobserver pipe if we opened one. */ if (job_rfd >= 0) close (job_rfd); #ifdef _AMIGA exec_command (nargv); exit (0); #elif defined (__EMX__) { /* It is not possible to use execve() here because this would cause the parent process to be terminated with exit code 0 before the child process has been terminated. Therefore it may be the best solution simply to spawn the child process including all file handles and to wait for its termination. */ int pid; int status; pid = child_execute_job (0, 1, nargv, environ); /* is this loop really necessary? */ do { pid = wait (&status); } while (pid <= 0); /* use the exit code of the child process */ exit (WIFEXITED(status) ? WEXITSTATUS(status) : EXIT_FAILURE); } #else exec_command (nargv, environ); #endif /* NOTREACHED */ default: #define BOGUS_UPDATE_STATUS 0 assert (BOGUS_UPDATE_STATUS); break; } db_level = orig_db_level; /* Free the makefile mtimes (if we allocated any). */ if (makefile_mtimes) free ((char *) makefile_mtimes); } /* Set up `MAKEFLAGS' again for the normal targets. */ define_makeflags (1, 0); /* Set always_make_flag if -B was given. */ always_make_flag = always_make_set; /* If restarts is set we haven't set up -W files yet, so do that now. */ if (restarts && new_files != 0) { for (p = new_files->list; *p != 0; ++p) { f = enter_command_line_file (*p); f->last_mtime = f->mtime_before_update = NEW_MTIME; } } /* If there is a temp file from reading a makefile from stdin, get rid of it now. */ if (stdin_nm && unlink (stdin_nm) < 0 && errno != ENOENT) perror_with_name (_("unlink (temporary file): "), stdin_nm); { int status; /* If there were no command-line goals, use the default. */ if (goals == 0) { if (**default_goal_name != '\0') { if (default_goal_file == 0 || strcmp (*default_goal_name, default_goal_file->name) != 0) { default_goal_file = lookup_file (*default_goal_name); /* In case user set .DEFAULT_GOAL to a non-existent target name let's just enter this name into the table and let the standard logic sort it out. */ if (default_goal_file == 0) { struct nameseq *ns; char *p = *default_goal_name; ns = multi_glob ( parse_file_seq (&p, '\0', sizeof (struct nameseq), 1), sizeof (struct nameseq)); /* .DEFAULT_GOAL should contain one target. */ if (ns->next != 0) fatal (NILF, _(".DEFAULT_GOAL contains more than one target")); default_goal_file = enter_file (ns->name); ns->name = 0; /* It was reused by enter_file(). */ free_ns_chain (ns); } } goals = alloc_dep (); goals->file = default_goal_file; } } else lastgoal->next = 0; if (!goals) { if (read_makefiles == 0) fatal (NILF, _("No targets specified and no makefile found")); fatal (NILF, _("No targets")); } /* Update the goals. */ DB (DB_BASIC, (_("Updating goal targets....\n"))); switch (update_goal_chain (goals)) { case -1: /* Nothing happened. */ case 0: /* Updated successfully. */ status = makefile_status; break; case 1: /* We are under -q and would run some commands. */ status = MAKE_TROUBLE; break; case 2: /* Updating failed. POSIX.2 specifies exit status >1 for this; but in VMS, there is only success and failure. */ status = MAKE_FAILURE; break; default: abort (); } /* If we detected some clock skew, generate one last warning */ if (clock_skew_detected) error (NILF, _("warning: Clock skew detected. Your build may be incomplete.")); /* Exit. */ die (status); } /* NOTREACHED */ return 0; } /* Parsing of arguments, decoding of switches. */ static char options[1 + sizeof (switches) / sizeof (switches[0]) * 3]; static struct option long_options[(sizeof (switches) / sizeof (switches[0])) + (sizeof (long_option_aliases) / sizeof (long_option_aliases[0]))]; /* Fill in the string and vector for getopt. */ static void init_switches (void) { char *p; unsigned int c; unsigned int i; if (options[0] != '\0') /* Already done. */ return; p = options; /* Return switch and non-switch args in order, regardless of POSIXLY_CORRECT. Non-switch args are returned as option 1. */ *p++ = '-'; for (i = 0; switches[i].c != '\0'; ++i) { long_options[i].name = (switches[i].long_name == 0 ? "" : switches[i].long_name); long_options[i].flag = 0; long_options[i].val = switches[i].c; if (short_option (switches[i].c)) *p++ = switches[i].c; switch (switches[i].type) { case flag: case flag_off: case ignore: long_options[i].has_arg = no_argument; break; case string: case positive_int: case floating: if (short_option (switches[i].c)) *p++ = ':'; if (switches[i].noarg_value != 0) { if (short_option (switches[i].c)) *p++ = ':'; long_options[i].has_arg = optional_argument; } else long_options[i].has_arg = required_argument; break; } } *p = '\0'; for (c = 0; c < (sizeof (long_option_aliases) / sizeof (long_option_aliases[0])); ++c) long_options[i++] = long_option_aliases[c]; long_options[i].name = 0; } static void handle_non_switch_argument (char *arg, int env) { /* Non-option argument. It might be a variable definition. */ struct variable *v; if (arg[0] == '-' && arg[1] == '\0') /* Ignore plain `-' for compatibility. */ return; v = try_variable_definition (0, arg, o_command, 0); if (v != 0) { /* It is indeed a variable definition. If we don't already have this one, record a pointer to the variable for later use in define_makeflags. */ struct command_variable *cv; for (cv = command_variables; cv != 0; cv = cv->next) if (cv->variable == v) break; if (! cv) { cv = (struct command_variable *) xmalloc (sizeof (*cv)); cv->variable = v; cv->next = command_variables; command_variables = cv; } } else if (! env) { /* Not an option or variable definition; it must be a goal target! Enter it as a file and add it to the dep chain of goals. */ struct file *f = enter_command_line_file (arg); f->cmd_target = 1; if (goals == 0) { goals = alloc_dep (); lastgoal = goals; } else { lastgoal->next = alloc_dep (); lastgoal = lastgoal->next; } lastgoal->file = f; { /* Add this target name to the MAKECMDGOALS variable. */ struct variable *v; char *value; v = lookup_variable (STRING_SIZE_TUPLE ("MAKECMDGOALS")); if (v == 0) value = f->name; else { /* Paste the old and new values together */ unsigned int oldlen, newlen; oldlen = strlen (v->value); newlen = strlen (f->name); value = (char *) alloca (oldlen + 1 + newlen + 1); bcopy (v->value, value, oldlen); value[oldlen] = ' '; bcopy (f->name, &value[oldlen + 1], newlen + 1); } define_variable ("MAKECMDGOALS", 12, value, o_default, 0); } } } /* Print a nice usage method. */ static void print_usage (int bad) { const char *const *cpp; FILE *usageto; if (print_version_flag) print_version (); usageto = bad ? stderr : stdout; fprintf (usageto, _("Usage: %s [options] [target] ...\n"), program); for (cpp = usage; *cpp; ++cpp) fputs (_(*cpp), usageto); if (!remote_description || *remote_description == '\0') fprintf (usageto, _("\nThis program built for %s\n"), make_host); else fprintf (usageto, _("\nThis program built for %s (%s)\n"), make_host, remote_description); fprintf (usageto, _("Report bugs to \n")); } /* Decode switches from ARGC and ARGV. They came from the environment if ENV is nonzero. */ static void decode_switches (int argc, char **argv, int env) { int bad = 0; register const struct command_switch *cs; register struct stringlist *sl; register int c; /* getopt does most of the parsing for us. First, get its vectors set up. */ init_switches (); /* Let getopt produce error messages for the command line, but not for options from the environment. */ opterr = !env; /* Reset getopt's state. */ optind = 0; while (optind < argc) { /* Parse the next argument. */ c = getopt_long (argc, argv, options, long_options, (int *) 0); if (c == EOF) /* End of arguments, or "--" marker seen. */ break; else if (c == 1) /* An argument not starting with a dash. */ handle_non_switch_argument (optarg, env); else if (c == '?') /* Bad option. We will print a usage message and die later. But continue to parse the other options so the user can see all he did wrong. */ bad = 1; else for (cs = switches; cs->c != '\0'; ++cs) if (cs->c == c) { /* Whether or not we will actually do anything with this switch. We test this individually inside the switch below rather than just once outside it, so that options which are to be ignored still consume args. */ int doit = !env || cs->env; switch (cs->type) { default: abort (); case ignore: break; case flag: case flag_off: if (doit) *(int *) cs->value_ptr = cs->type == flag; break; case string: if (!doit) break; if (optarg == 0) optarg = cs->noarg_value; else if (*optarg == '\0') { error (NILF, _("the `-%c' option requires a non-empty string argument"), cs->c); bad = 1; } sl = *(struct stringlist **) cs->value_ptr; if (sl == 0) { sl = (struct stringlist *) xmalloc (sizeof (struct stringlist)); sl->max = 5; sl->idx = 0; sl->list = (char **) xmalloc (5 * sizeof (char *)); *(struct stringlist **) cs->value_ptr = sl; } else if (sl->idx == sl->max - 1) { sl->max += 5; sl->list = (char **) xrealloc ((char *) sl->list, sl->max * sizeof (char *)); } sl->list[sl->idx++] = optarg; sl->list[sl->idx] = 0; break; case positive_int: /* See if we have an option argument; if we do require that it's all digits, not something like "10foo". */ if (optarg == 0 && argc > optind) { const char *cp; for (cp=argv[optind]; ISDIGIT (cp[0]); ++cp) ; if (cp[0] == '\0') optarg = argv[optind++]; } if (!doit) break; if (optarg != 0) { int i = atoi (optarg); const char *cp; /* Yes, I realize we're repeating this in some cases. */ for (cp = optarg; ISDIGIT (cp[0]); ++cp) ; if (i < 1 || cp[0] != '\0') { error (NILF, _("the `-%c' option requires a positive integral argument"), cs->c); bad = 1; } else *(unsigned int *) cs->value_ptr = i; } else *(unsigned int *) cs->value_ptr = *(unsigned int *) cs->noarg_value; break; #ifndef NO_FLOAT case floating: if (optarg == 0 && optind < argc && (ISDIGIT (argv[optind][0]) || argv[optind][0] == '.')) optarg = argv[optind++]; if (doit) *(double *) cs->value_ptr = (optarg != 0 ? atof (optarg) : *(double *) cs->noarg_value); break; #endif } /* We've found the switch. Stop looking. */ break; } } /* There are no more options according to getting getopt, but there may be some arguments left. Since we have asked for non-option arguments to be returned in order, this only happens when there is a "--" argument to prevent later arguments from being options. */ while (optind < argc) handle_non_switch_argument (argv[optind++], env); if (!env && (bad || print_usage_flag)) { print_usage (bad); die (bad ? 2 : 0); } } /* Decode switches from environment variable ENVAR (which is LEN chars long). We do this by chopping the value into a vector of words, prepending a dash to the first word if it lacks one, and passing the vector to decode_switches. */ static void decode_env_switches (char *envar, unsigned int len) { char *varref = (char *) alloca (2 + len + 2); char *value, *p; int argc; char **argv; /* Get the variable's value. */ varref[0] = '$'; varref[1] = '('; bcopy (envar, &varref[2], len); varref[2 + len] = ')'; varref[2 + len + 1] = '\0'; value = variable_expand (varref); /* Skip whitespace, and check for an empty value. */ value = next_token (value); len = strlen (value); if (len == 0) return; /* Allocate a vector that is definitely big enough. */ argv = (char **) alloca ((1 + len + 1) * sizeof (char *)); /* Allocate a buffer to copy the value into while we split it into words and unquote it. We must use permanent storage for this because decode_switches may store pointers into the passed argument words. */ p = (char *) xmalloc (2 * len); /* getopt will look at the arguments starting at ARGV[1]. Prepend a spacer word. */ argv[0] = 0; argc = 1; argv[argc] = p; while (*value != '\0') { if (*value == '\\' && value[1] != '\0') ++value; /* Skip the backslash. */ else if (isblank ((unsigned char)*value)) { /* End of the word. */ *p++ = '\0'; argv[++argc] = p; do ++value; while (isblank ((unsigned char)*value)); continue; } *p++ = *value++; } *p = '\0'; argv[++argc] = 0; if (argv[1][0] != '-' && strchr (argv[1], '=') == 0) /* The first word doesn't start with a dash and isn't a variable definition. Add a dash and pass it along to decode_switches. We need permanent storage for this in case decode_switches saves pointers into the value. */ argv[1] = concat ("-", argv[1], ""); /* Parse those words. */ decode_switches (argc, argv, 1); } /* Quote the string IN so that it will be interpreted as a single word with no magic by decode_env_switches; also double dollar signs to avoid variable expansion in make itself. Write the result into OUT, returning the address of the next character to be written. Allocating space for OUT twice the length of IN is always sufficient. */ static char * quote_for_env (char *out, char *in) { while (*in != '\0') { if (*in == '$') *out++ = '$'; else if (isblank ((unsigned char)*in) || *in == '\\') *out++ = '\\'; *out++ = *in++; } return out; } /* Define the MAKEFLAGS and MFLAGS variables to reflect the settings of the command switches. Include options with args if ALL is nonzero. Don't include options with the `no_makefile' flag set if MAKEFILE. */ static void define_makeflags (int all, int makefile) { static const char ref[] = "$(MAKEOVERRIDES)"; static const char posixref[] = "$(-*-command-variables-*-)"; register const struct command_switch *cs; char *flagstring; register char *p; unsigned int words; struct variable *v; /* We will construct a linked list of `struct flag's describing all the flags which need to go in MAKEFLAGS. Then, once we know how many there are and their lengths, we can put them all together in a string. */ struct flag { struct flag *next; const struct command_switch *cs; char *arg; }; struct flag *flags = 0; unsigned int flagslen = 0; #define ADD_FLAG(ARG, LEN) \ do { \ struct flag *new = (struct flag *) alloca (sizeof (struct flag)); \ new->cs = cs; \ new->arg = (ARG); \ new->next = flags; \ flags = new; \ if (new->arg == 0) \ ++flagslen; /* Just a single flag letter. */ \ else \ flagslen += 1 + 1 + 1 + 1 + 3 * (LEN); /* " -x foo" */ \ if (!short_option (cs->c)) \ /* This switch has no single-letter version, so we use the long. */ \ flagslen += 2 + strlen (cs->long_name); \ } while (0) for (cs = switches; cs->c != '\0'; ++cs) if (cs->toenv && (!makefile || !cs->no_makefile)) switch (cs->type) { default: abort (); case ignore: break; case flag: case flag_off: if (!*(int *) cs->value_ptr == (cs->type == flag_off) && (cs->default_value == 0 || *(int *) cs->value_ptr != *(int *) cs->default_value)) ADD_FLAG (0, 0); break; case positive_int: if (all) { if ((cs->default_value != 0 && (*(unsigned int *) cs->value_ptr == *(unsigned int *) cs->default_value))) break; else if (cs->noarg_value != 0 && (*(unsigned int *) cs->value_ptr == *(unsigned int *) cs->noarg_value)) ADD_FLAG ("", 0); /* Optional value omitted; see below. */ else if (cs->c == 'j') /* Special case for `-j'. */ ADD_FLAG ("1", 1); else { char *buf = (char *) alloca (30); sprintf (buf, "%u", *(unsigned int *) cs->value_ptr); ADD_FLAG (buf, strlen (buf)); } } break; #ifndef NO_FLOAT case floating: if (all) { if (cs->default_value != 0 && (*(double *) cs->value_ptr == *(double *) cs->default_value)) break; else if (cs->noarg_value != 0 && (*(double *) cs->value_ptr == *(double *) cs->noarg_value)) ADD_FLAG ("", 0); /* Optional value omitted; see below. */ else { char *buf = (char *) alloca (100); sprintf (buf, "%g", *(double *) cs->value_ptr); ADD_FLAG (buf, strlen (buf)); } } break; #endif case string: if (all) { struct stringlist *sl = *(struct stringlist **) cs->value_ptr; if (sl != 0) { /* Add the elements in reverse order, because all the flags get reversed below; and the order matters for some switches (like -I). */ register unsigned int i = sl->idx; while (i-- > 0) ADD_FLAG (sl->list[i], strlen (sl->list[i])); } } break; } flagslen += 4 + sizeof posixref; /* Four more for the possible " -- ". */ #undef ADD_FLAG /* Construct the value in FLAGSTRING. We allocate enough space for a preceding dash and trailing null. */ flagstring = (char *) alloca (1 + flagslen + 1); bzero (flagstring, 1 + flagslen + 1); p = flagstring; words = 1; *p++ = '-'; while (flags != 0) { /* Add the flag letter or name to the string. */ if (short_option (flags->cs->c)) *p++ = flags->cs->c; else { if (*p != '-') { *p++ = ' '; *p++ = '-'; } *p++ = '-'; strcpy (p, flags->cs->long_name); p += strlen (p); } if (flags->arg != 0) { /* A flag that takes an optional argument which in this case is omitted is specified by ARG being "". We must distinguish because a following flag appended without an intervening " -" is considered the arg for the first. */ if (flags->arg[0] != '\0') { /* Add its argument too. */ *p++ = !short_option (flags->cs->c) ? '=' : ' '; p = quote_for_env (p, flags->arg); } ++words; /* Write a following space and dash, for the next flag. */ *p++ = ' '; *p++ = '-'; } else if (!short_option (flags->cs->c)) { ++words; /* Long options must each go in their own word, so we write the following space and dash. */ *p++ = ' '; *p++ = '-'; } flags = flags->next; } /* Define MFLAGS before appending variable definitions. */ if (p == &flagstring[1]) /* No flags. */ flagstring[0] = '\0'; else if (p[-1] == '-') { /* Kill the final space and dash. */ p -= 2; *p = '\0'; } else /* Terminate the string. */ *p = '\0'; /* Since MFLAGS is not parsed for flags, there is no reason to override any makefile redefinition. */ (void) define_variable ("MFLAGS", 6, flagstring, o_env, 1); if (all && command_variables != 0) { /* Now write a reference to $(MAKEOVERRIDES), which contains all the command-line variable definitions. */ if (p == &flagstring[1]) /* No flags written, so elide the leading dash already written. */ p = flagstring; else { /* Separate the variables from the switches with a "--" arg. */ if (p[-1] != '-') { /* We did not already write a trailing " -". */ *p++ = ' '; *p++ = '-'; } /* There is a trailing " -"; fill it out to " -- ". */ *p++ = '-'; *p++ = ' '; } /* Copy in the string. */ if (posix_pedantic) { bcopy (posixref, p, sizeof posixref - 1); p += sizeof posixref - 1; } else { bcopy (ref, p, sizeof ref - 1); p += sizeof ref - 1; } } else if (p == &flagstring[1]) { words = 0; --p; } else if (p[-1] == '-') /* Kill the final space and dash. */ p -= 2; /* Terminate the string. */ *p = '\0'; v = define_variable ("MAKEFLAGS", 9, /* If there are switches, omit the leading dash unless it is a single long option with two leading dashes. */ &flagstring[(flagstring[0] == '-' && flagstring[1] != '-') ? 1 : 0], /* This used to use o_env, but that lost when a makefile defined MAKEFLAGS. Makefiles set MAKEFLAGS to add switches, but we still want to redefine its value with the full set of switches. Of course, an override or command definition will still take precedence. */ o_file, 1); if (! all) /* The first time we are called, set MAKEFLAGS to always be exported. We should not do this again on the second call, because that is after reading makefiles which might have done `unexport MAKEFLAGS'. */ v->export = v_export; } /* Print version information. */ static void print_version (void) { static int printed_version = 0; char *precede = print_data_base_flag ? "# " : ""; if (printed_version) /* Do it only once. */ return; /* Print this untranslated. The coding standards recommend translating the (C) to the copyright symbol, but this string is going to change every year, and none of the rest of it should be translated (including the word "Copyright", so it hardly seems worth it. */ printf ("%sGNU Make %s\n\ %sCopyright (C) 2006 Free Software Foundation, Inc.\n", precede, version_string, precede); printf (_("%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"), precede, precede, precede); if (!remote_description || *remote_description == '\0') printf (_("\n%sThis program built for %s\n"), precede, make_host); else printf (_("\n%sThis program built for %s (%s)\n"), precede, make_host, remote_description); printed_version = 1; /* Flush stdout so the user doesn't have to wait to see the version information while things are thought about. */ fflush (stdout); } /* Print a bunch of information about this and that. */ static void print_data_base () { time_t when; when = time ((time_t *) 0); printf (_("\n# Make data base, printed on %s"), ctime (&when)); print_variable_data_base (); print_dir_data_base (); print_rule_data_base (); print_file_data_base (); print_vpath_data_base (); strcache_print_stats ("#"); when = time ((time_t *) 0); printf (_("\n# Finished Make data base on %s\n"), ctime (&when)); } static void clean_jobserver (int status) { char token = '+'; /* Sanity: have we written all our jobserver tokens back? If our exit status is 2 that means some kind of syntax error; we might not have written all our tokens so do that now. If tokens are left after any other error code, that's bad. */ if (job_fds[0] != -1 && jobserver_tokens) { if (status != 2) error (NILF, "INTERNAL: Exiting with %u jobserver tokens (should be 0)!", jobserver_tokens); else while (jobserver_tokens--) { int r; EINTRLOOP (r, write (job_fds[1], &token, 1)); if (r != 1) perror_with_name ("write", ""); } } /* Sanity: If we're the master, were all the tokens written back? */ if (master_job_slots) { /* We didn't write one for ourself, so start at 1. */ unsigned int tcnt = 1; /* Close the write side, so the read() won't hang. */ close (job_fds[1]); while (read (job_fds[0], &token, 1) == 1) ++tcnt; if (tcnt != master_job_slots) error (NILF, "INTERNAL: Exiting with %u jobserver tokens available; should be %u!", tcnt, master_job_slots); close (job_fds[0]); } } /* Exit with STATUS, cleaning up as necessary. */ void die (int status) { static char dying = 0; if (!dying) { int err; dying = 1; if (print_version_flag) print_version (); /* Wait for children to die. */ err = (status != 0); while (job_slots_used > 0) reap_children (1, err); /* Let the remote job module clean up its state. */ remote_cleanup (); /* Remove the intermediate files. */ remove_intermediates (0); if (print_data_base_flag) print_data_base (); clean_jobserver (status); /* Try to move back to the original directory. This is essential on MS-DOS (where there is really only one process), and on Unix it puts core files in the original directory instead of the -C directory. Must wait until after remove_intermediates(), or unlinks of relative pathnames fail. */ if (directory_before_chdir != 0) chdir (directory_before_chdir); log_working_directory (0); } exit (status); } /* Write a message indicating that we've just entered or left (according to ENTERING) the current directory. */ void log_working_directory (int entering) { static int entered = 0; /* Print nothing without the flag. Don't print the entering message again if we already have. Don't print the leaving message if we haven't printed the entering message. */ if (! print_directory_flag || entering == entered) return; entered = entering; if (print_data_base_flag) fputs ("# ", stdout); /* Use entire sentences to give the translators a fighting chance. */ if (makelevel == 0) if (starting_directory == 0) if (entering) printf (_("%s: Entering an unknown directory\n"), program); else printf (_("%s: Leaving an unknown directory\n"), program); else if (entering) printf (_("%s: Entering directory `%s'\n"), program, starting_directory); else printf (_("%s: Leaving directory `%s'\n"), program, starting_directory); else if (starting_directory == 0) if (entering) printf (_("%s[%u]: Entering an unknown directory\n"), program, makelevel); else printf (_("%s[%u]: Leaving an unknown directory\n"), program, makelevel); else if (entering) printf (_("%s[%u]: Entering directory `%s'\n"), program, makelevel, starting_directory); else printf (_("%s[%u]: Leaving directory `%s'\n"), program, makelevel, starting_directory); /* Flush stdout to be sure this comes before any stderr output. */ fflush (stdout); } make-dfsg-3.81.orig/make.10000644000175000017500000002405110416553102015512 0ustar srivastasrivasta.TH MAKE 1 "22 August 1989" "GNU" "LOCAL USER COMMANDS" .SH NAME make \- GNU make utility to maintain groups of programs .SH SYNOPSIS .B "make " [ .B \-f .I makefile ] [ options ] ... [ targets ] ... .SH WARNING This man page is an extract of the documentation of GNU .IR make . It is updated only occasionally, because the GNU project does not use nroff. For complete, current documentation, refer to the Info file .B make.info which is made from the Texinfo source file .BR make.texi . .SH DESCRIPTION .LP The purpose of the .I make utility is to determine automatically which pieces of a large program need to be recompiled, and issue the commands to recompile them. The manual describes the GNU implementation of .IR make , which was written by Richard Stallman and Roland McGrath, and is currently maintained by Paul Smith. Our examples show C programs, since they are most common, but you can use .I make with any programming language whose compiler can be run with a shell command. In fact, .I make is not limited to programs. You can use it to describe any task where some files must be updated automatically from others whenever the others change. .LP To prepare to use .IR make , you must write a file called the .I makefile that describes the relationships among files in your program, and the states the commands for updating each file. In a program, typically the executable file is updated from object files, which are in turn made by compiling source files. .LP Once a suitable makefile exists, each time you change some source files, this simple shell command: .sp 1 .RS .B make .RE .sp 1 suffices to perform all necessary recompilations. The .I make program uses the makefile data base and the last-modification times of the files to decide which of the files need to be updated. For each of those files, it issues the commands recorded in the data base. .LP .I make executes commands in the .I makefile to update one or more target .IR names , where .I name is typically a program. If no .B \-f option is present, .I make will look for the makefiles .IR GNUmakefile , .IR makefile , and .IR Makefile , in that order. .LP Normally you should call your makefile either .I makefile or .IR Makefile . (We recommend .I Makefile because it appears prominently near the beginning of a directory listing, right near other important files such as .IR README .) The first name checked, .IR GNUmakefile , is not recommended for most makefiles. You should use this name if you have a makefile that is specific to GNU .IR make , and will not be understood by other versions of .IR make . If .I makefile is `\-', the standard input is read. .LP .I make updates a target if it depends on prerequisite files that have been modified since the target was last modified, or if the target does not exist. .SH OPTIONS .sp 1 .TP 0.5i .BR \-b , " \-m" These options are ignored for compatibility with other versions of .IR make . .TP 0.5i .BR \-B , " \-\-always\-make" Unconditionally make all targets. .TP 0.5i \fB\-C\fR \fIdir\fR, \fB\-\-directory\fR=\fIdir\fR Change to directory .I dir before reading the makefiles or doing anything else. If multiple .B \-C options are specified, each is interpreted relative to the previous one: .BR "\-C " / .BR "\-C " etc is equivalent to .BR "\-C " /etc. This is typically used with recursive invocations of .IR make . .TP 0.5i .B \-d Print debugging information in addition to normal processing. The debugging information says which files are being considered for remaking, which file-times are being compared and with what results, which files actually need to be remade, which implicit rules are considered and which are applied---everything interesting about how .I make decides what to do. .TP 0.5i .BI \-\-debug "[=FLAGS]" Print debugging information in addition to normal processing. If the .I FLAGS are omitted, then the behavior is the same as if .B \-d was specified. .I FLAGS may be .I a for all debugging output (same as using .BR \-d ), .I b for basic debugging, .I v for more verbose basic debugging, .I i for showing implicit rules, .I j for details on invocation of commands, and .I m for debugging while remaking makefiles. .TP 0.5i .BR \-e , " \-\-environment\-overrides" Give variables taken from the environment precedence over variables from makefiles. .TP 0.5i +\fB\-f\fR \fIfile\fR, \fB\-\-file\fR=\fIfile\fR, \fB\-\-makefile\fR=\fIFILE\fR Use .I file as a makefile. .TP 0.5i .BR \-i , " \-\-ignore\-errors" Ignore all errors in commands executed to remake files. .TP 0.5i \fB\-I\fR \fIdir\fR, \fB\-\-include\-dir\fR=\fIdir\fR Specifies a directory .I dir to search for included makefiles. If several .B \-I options are used to specify several directories, the directories are searched in the order specified. Unlike the arguments to other flags of .IR make , directories given with .B \-I flags may come directly after the flag: .BI \-I dir is allowed, as well as .BI "\-I " dir. This syntax is allowed for compatibility with the C preprocessor's .B \-I flag. .TP 0.5i \fB\-j\fR [\fIjobs\fR], \fB\-\-jobs\fR[=\fIjobs\fR] Specifies the number of .I jobs (commands) to run simultaneously. If there is more than one .B \-j option, the last one is effective. If the .B \-j option is given without an argument, .IR make will not limit the number of jobs that can run simultaneously. .TP 0.5i .BR \-k , " \-\-keep\-going" Continue as much as possible after an error. While the target that failed, and those that depend on it, cannot be remade, the other dependencies of these targets can be processed all the same. .TP 0.5i \fB\-l\fR [\fIload\fR], \fB\-\-load\-average\fR[=\fIload\fR] Specifies that no new jobs (commands) should be started if there are others jobs running and the load average is at least .I load (a floating-point number). With no argument, removes a previous load limit. .TP 0.5i .BR \-L , " \-\-check\-symlink\-times" Use the latest mtime between symlinks and target. .TP 0.5i .BR \-n , " \-\-just\-print" , " \-\-dry\-run" , " \-\-recon" Print the commands that would be executed, but do not execute them. .TP 0.5i \fB\-o\fR \fIfile\fR, \fB\-\-old\-file\fR=\fIfile\fR, \fB\-\-assume\-old\fR=\fIfile\fR Do not remake the file .I file even if it is older than its dependencies, and do not remake anything on account of changes in .IR file . Essentially the file is treated as very old and its rules are ignored. .TP 0.5i .BR \-p , " \-\-print\-data\-base" Print the data base (rules and variable values) that results from reading the makefiles; then execute as usual or as otherwise specified. This also prints the version information given by the .B \-v switch (see below). To print the data base without trying to remake any files, use .B make .B \-p .BI \-f /dev/null. .TP 0.5i .BR \-q , " \-\-question" ``Question mode''. Do not run any commands, or print anything; just return an exit status that is zero if the specified targets are already up to date, nonzero otherwise. .TP 0.5i .BR \-r , " \-\-no\-builtin\-rules" Eliminate use of the built\-in implicit rules. Also clear out the default list of suffixes for suffix rules. .TP 0.5i .BR \-R , " \-\-no\-builtin\-variables" Don't define any built\-in variables. .TP 0.5i .BR \-s , " \-\-silent" , " \-\-quiet" Silent operation; do not print the commands as they are executed. .TP 0.5i .BR \-S , " \-\-no\-keep\-going" , " \-\-stop" Cancel the effect of the .B \-k option. This is never necessary except in a recursive .I make where .B \-k might be inherited from the top-level .I make via MAKEFLAGS or if you set .B \-k in MAKEFLAGS in your environment. .TP 0.5i .BR \-t , " \-\-touch" Touch files (mark them up to date without really changing them) instead of running their commands. This is used to pretend that the commands were done, in order to fool future invocations of .IR make . .TP 0.5i .BR \-v , " \-\-version" Print the version of the .I make program plus a copyright, a list of authors and a notice that there is no warranty. .TP 0.5i .BR \-w , " \-\-print\-directory" Print a message containing the working directory before and after other processing. This may be useful for tracking down errors from complicated nests of recursive .I make commands. .TP 0.5i .B \-\-no\-print\-directory Turn off .BR \-w , even if it was turned on implicitly. .TP 0.5i \fB\-W\fR \fIfile\fR, \fB\-\-what\-if\fR=\fIfile\fR, \fB\-\-new\-file\fR=\fIfile\fR, \fB\-\-assume\-new\fR=\fIfile\fR Pretend that the target .I file has just been modified. When used with the .B \-n flag, this shows you what would happen if you were to modify that file. Without .BR \-n , it is almost the same as running a .I touch command on the given file before running .IR make , except that the modification time is changed only in the imagination of .IR make . .TP 0.5i .B \-\-warn\-undefined\-variables Warn when an undefined variable is referenced. .SH "EXIT STATUS" GNU .I make exits with a status of zero if all makefiles were successfully parsed and no targets that were built failed. A status of one will be returned if the .B \-q flag was used and .I make determines that a target needs to be rebuilt. A status of two will be returned if any errors were encountered. .SH "SEE ALSO" .I "The GNU Make Manual" .SH BUGS See the chapter `Problems and Bugs' in .IR "The GNU Make Manual" . .SH AUTHOR This manual page contributed by Dennis Morse of Stanford University. It has been reworked by Roland McGrath. Further updates contributed by Mike Frysinger. .SH "COPYRIGHT" Copyright (C) 1992, 1993, 1996, 1999 Free Software Foundation, Inc. This file is part of GNU .IR make . .LP GNU .I make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. .LP GNU .I make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. .LP You should have received a copy of the GNU General Public License along with GNU .IR make ; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. make-dfsg-3.81.orig/make.h0000644000175000017500000004221310416553102015601 0ustar srivastasrivasta/* Miscellaneous global declarations and portability cruft for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* We use instead of "config.h" so that a compilation using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h (which it would do because make.h was found in $srcdir). */ #include #undef HAVE_CONFIG_H #define HAVE_CONFIG_H 1 /* AIX requires this to be the first thing in the file. */ #ifndef __GNUC__ # if HAVE_ALLOCA_H # include # else # ifdef _AIX #pragma alloca # else # ifndef alloca /* predefined by HP cc +Olibcalls */ char *alloca (); # endif # endif # endif #endif /* Use prototypes if available. */ #if defined (__cplusplus) || defined (__STDC__) # undef PARAMS # define PARAMS(protos) protos #else /* Not C++ or ANSI C. */ # undef PARAMS # define PARAMS(protos) () #endif /* C++ or ANSI C. */ /* Specify we want GNU source code. This must be defined before any system headers are included. */ #define _GNU_SOURCE 1 #ifdef CRAY /* This must happen before #include so that the declaration therein is changed. */ # define signal bsdsignal #endif /* If we're compiling for the dmalloc debugger, turn off string inlining. */ #if defined(HAVE_DMALLOC_H) && defined(__GNUC__) # define __NO_STRING_INLINES #endif #include #include #include #include #include #ifdef HAVE_SYS_TIMEB_H /* SCO 3.2 "devsys 4.2" has a prototype for `ftime' in that bombs unless has been included first. Does every system have a ? If any does not, configure should check for it. */ # include #endif #if TIME_WITH_SYS_TIME # include # include #else # if HAVE_SYS_TIME_H # include # else # include # endif #endif #include #ifndef errno extern int errno; #endif #ifndef isblank # define isblank(c) ((c) == ' ' || (c) == '\t') #endif #ifdef HAVE_UNISTD_H # include /* Ultrix's unistd.h always defines _POSIX_VERSION, but you only get POSIX.1 behavior with `cc -YPOSIX', which predefines POSIX itself! */ # if defined (_POSIX_VERSION) && !defined (ultrix) && !defined (VMS) # define POSIX 1 # endif #endif /* Some systems define _POSIX_VERSION but are not really POSIX.1. */ #if (defined (butterfly) || defined (__arm) || (defined (__mips) && defined (_SYSTYPE_SVR3)) || (defined (sequent) && defined (i386))) # undef POSIX #endif #if !defined (POSIX) && defined (_AIX) && defined (_POSIX_SOURCE) # define POSIX 1 #endif #ifndef RETSIGTYPE # define RETSIGTYPE void #endif #ifndef sigmask # define sigmask(sig) (1 << ((sig) - 1)) #endif #ifndef HAVE_SA_RESTART # define SA_RESTART 0 #endif #ifdef HAVE_LIMITS_H # include #endif #ifdef HAVE_SYS_PARAM_H # include #endif #ifndef PATH_MAX # ifndef POSIX # define PATH_MAX MAXPATHLEN # endif #endif #ifndef MAXPATHLEN # define MAXPATHLEN 1024 #endif #ifdef PATH_MAX # define GET_PATH_MAX PATH_MAX # define PATH_VAR(var) char var[PATH_MAX] #else # define NEED_GET_PATH_MAX 1 # define GET_PATH_MAX (get_path_max ()) # define PATH_VAR(var) char *var = (char *) alloca (GET_PATH_MAX) extern unsigned int get_path_max PARAMS ((void)); #endif #ifndef CHAR_BIT # define CHAR_BIT 8 #endif /* Nonzero if the integer type T is signed. */ #define INTEGER_TYPE_SIGNED(t) ((t) -1 < 0) /* The minimum and maximum values for the integer type T. Use ~ (t) 0, not -1, for portability to 1's complement hosts. */ #define INTEGER_TYPE_MINIMUM(t) \ (! INTEGER_TYPE_SIGNED (t) ? (t) 0 : ~ (t) 0 << (sizeof (t) * CHAR_BIT - 1)) #define INTEGER_TYPE_MAXIMUM(t) (~ (t) 0 - INTEGER_TYPE_MINIMUM (t)) #ifndef CHAR_MAX # define CHAR_MAX INTEGER_TYPE_MAXIMUM (char) #endif #ifdef STAT_MACROS_BROKEN # ifdef S_ISREG # undef S_ISREG # endif # ifdef S_ISDIR # undef S_ISDIR # endif #endif /* STAT_MACROS_BROKEN. */ #ifndef S_ISREG # define S_ISREG(mode) (((mode) & S_IFMT) == S_IFREG) #endif #ifndef S_ISDIR # define S_ISDIR(mode) (((mode) & S_IFMT) == S_IFDIR) #endif #ifdef VMS # include # include # include # include /* Needed to use alloca on VMS. */ # include #endif #ifndef __attribute__ /* This feature is available in gcc versions 2.5 and later. */ # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 5) || __STRICT_ANSI__ # define __attribute__(x) # endif /* The __-protected variants of `format' and `printf' attributes are accepted by gcc versions 2.6.4 (effectively 2.7) and later. */ # if __GNUC__ < 2 || (__GNUC__ == 2 && __GNUC_MINOR__ < 7) # define __format__ format # define __printf__ printf # endif #endif #define UNUSED __attribute__ ((unused)) #if defined (STDC_HEADERS) || defined (__GNU_LIBRARY__) # include # include # define ANSI_STRING 1 #else /* No standard headers. */ # ifdef HAVE_STRING_H # include # define ANSI_STRING 1 # else # include # endif # ifdef HAVE_MEMORY_H # include # endif # ifdef HAVE_STDLIB_H # include # else extern char *malloc PARAMS ((int)); extern char *realloc PARAMS ((char *, int)); extern void free PARAMS ((char *)); extern void abort PARAMS ((void)) __attribute__ ((noreturn)); extern void exit PARAMS ((int)) __attribute__ ((noreturn)); # endif /* HAVE_STDLIB_H. */ #endif /* Standard headers. */ /* These should be in stdlib.h. Make sure we have them. */ #ifndef EXIT_SUCCESS # define EXIT_SUCCESS 0 #endif #ifndef EXIT_FAILURE # define EXIT_FAILURE 0 #endif #ifdef ANSI_STRING # ifndef bcmp # define bcmp(s1, s2, n) memcmp ((s1), (s2), (n)) # endif # ifndef bzero # define bzero(s, n) memset ((s), 0, (n)) # endif # if defined(HAVE_MEMMOVE) && !defined(bcopy) # define bcopy(s, d, n) memmove ((d), (s), (n)) # endif #else /* Not ANSI_STRING. */ # ifndef HAVE_STRCHR # define strchr(s, c) index((s), (c)) # define strrchr(s, c) rindex((s), (c)) # endif # ifndef bcmp extern int bcmp PARAMS ((const char *, const char *, int)); # endif # ifndef bzero extern void bzero PARAMS ((char *, int)); #endif # ifndef bcopy extern void bcopy PARAMS ((const char *b1, char *b2, int)); # endif /* SCO Xenix has a buggy macro definition in . */ #undef strerror #if !defined(__DECC) extern char *strerror PARAMS ((int errnum)); #endif #endif /* !ANSI_STRING. */ #undef ANSI_STRING #if HAVE_INTTYPES_H # include #endif #define FILE_TIMESTAMP uintmax_t #if !defined(HAVE_STRSIGNAL) extern char *strsignal PARAMS ((int signum)); #endif /* ISDIGIT offers the following features: - Its arg may be any int or unsigned int; it need not be an unsigned char. - It's guaranteed to evaluate its argument exactly once. NOTE! Make relies on this behavior, don't change it! - It's typically faster. POSIX 1003.2-1992 section 2.5.2.1 page 50 lines 1556-1558 says that only '0' through '9' are digits. Prefer ISDIGIT to isdigit() unless it's important to use the locale's definition of `digit' even when the host does not conform to POSIX. */ #define ISDIGIT(c) ((unsigned) (c) - '0' <= 9) #ifndef iAPX286 # define streq(a, b) \ ((a) == (b) || \ (*(a) == *(b) && (*(a) == '\0' || !strcmp ((a) + 1, (b) + 1)))) # ifdef HAVE_CASE_INSENSITIVE_FS /* This is only used on Windows/DOS platforms, so we assume strcmpi(). */ # define strieq(a, b) \ ((a) == (b) \ || (tolower((unsigned char)*(a)) == tolower((unsigned char)*(b)) \ && (*(a) == '\0' || !strcmpi ((a) + 1, (b) + 1)))) # else # define strieq(a, b) streq(a, b) # endif #else /* Buggy compiler can't handle this. */ # define streq(a, b) (strcmp ((a), (b)) == 0) # define strieq(a, b) (strcmp ((a), (b)) == 0) #endif #define strneq(a, b, l) (strncmp ((a), (b), (l)) == 0) #ifdef VMS extern int strcmpi (const char *,const char *); #endif #if defined(__GNUC__) || defined(ENUM_BITFIELDS) # define ENUM_BITFIELD(bits) :bits #else # define ENUM_BITFIELD(bits) #endif /* Handle gettext and locales. */ #if HAVE_LOCALE_H # include #else # define setlocale(category, locale) #endif #include #define _(msgid) gettext (msgid) #define N_(msgid) gettext_noop (msgid) #define S_(msg1,msg2,num) ngettext (msg1,msg2,num) /* Handle other OSs. */ #if defined(HAVE_DOS_PATHS) # define PATH_SEPARATOR_CHAR ';' #elif defined(VMS) # define PATH_SEPARATOR_CHAR ',' #else # define PATH_SEPARATOR_CHAR ':' #endif /* This is needed for getcwd() and chdir(). */ #if defined(_MSC_VER) || defined(__BORLANDC__) # include #endif #ifdef WINDOWS32 # include # include # define pipe(p) _pipe(p, 512, O_BINARY) # define kill(pid,sig) w32_kill(pid,sig) extern void sync_Path_environment(void); extern int kill(int pid, int sig); extern char *end_of_token_w32(char *s, char stopchar); extern int find_and_set_default_shell(char *token); /* indicates whether or not we have Bourne shell */ extern int no_default_sh_exe; /* is default_shell unixy? */ extern int unixy_shell; #endif /* WINDOWS32 */ struct floc { const char *filenm; unsigned long lineno; }; #define NILF ((struct floc *)0) #define STRING_SIZE_TUPLE(_s) (_s), (sizeof (_s)-1) /* We have to have stdarg.h or varargs.h AND v*printf or doprnt to use variadic versions of these functions. */ #if HAVE_STDARG_H || HAVE_VARARGS_H # if HAVE_VPRINTF || HAVE_DOPRNT # define USE_VARIADIC 1 # endif #endif #if HAVE_ANSI_COMPILER && USE_VARIADIC && HAVE_STDARG_H extern void message (int prefix, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 2, 3))); extern void error (const struct floc *flocp, const char *fmt, ...) __attribute__ ((__format__ (__printf__, 2, 3))); extern void fatal (const struct floc *flocp, const char *fmt, ...) __attribute__ ((noreturn, __format__ (__printf__, 2, 3))); #else extern void message (); extern void error (); extern void fatal (); #endif extern void die PARAMS ((int)) __attribute__ ((noreturn)); extern void log_working_directory PARAMS ((int)); extern void pfatal_with_name PARAMS ((const char *)) __attribute__ ((noreturn)); extern void perror_with_name PARAMS ((const char *, const char *)); extern char *savestring PARAMS ((const char *, unsigned int)); extern char *concat PARAMS ((const char *, const char *, const char *)); extern char *xmalloc PARAMS ((unsigned int)); extern char *xrealloc PARAMS ((char *, unsigned int)); extern char *xstrdup PARAMS ((const char *)); extern char *find_next_token PARAMS ((char **, unsigned int *)); extern char *next_token PARAMS ((const char *)); extern char *end_of_token PARAMS ((const char *)); extern void collapse_continuations PARAMS ((char *)); extern char *lindex PARAMS ((const char *, const char *, int)); extern int alpha_compare PARAMS ((const void *, const void *)); extern void print_spaces PARAMS ((unsigned int)); extern char *find_percent PARAMS ((char *)); extern FILE *open_tmpfile PARAMS ((char **, const char *)); #ifndef NO_ARCHIVES extern int ar_name PARAMS ((char *)); extern void ar_parse_name PARAMS ((char *, char **, char **)); extern int ar_touch PARAMS ((char *)); extern time_t ar_member_date PARAMS ((char *)); #endif extern int dir_file_exists_p PARAMS ((char *, char *)); extern int file_exists_p PARAMS ((char *)); extern int file_impossible_p PARAMS ((char *)); extern void file_impossible PARAMS ((char *)); extern char *dir_name PARAMS ((char *)); extern void hash_init_directories PARAMS ((void)); extern void define_default_variables PARAMS ((void)); extern void set_default_suffixes PARAMS ((void)); extern void install_default_suffix_rules PARAMS ((void)); extern void install_default_implicit_rules PARAMS ((void)); extern void build_vpath_lists PARAMS ((void)); extern void construct_vpath_list PARAMS ((char *pattern, char *dirpath)); extern int vpath_search PARAMS ((char **file, FILE_TIMESTAMP *mtime_ptr)); extern int gpath_search PARAMS ((char *file, unsigned int len)); extern void construct_include_path PARAMS ((char **arg_dirs)); extern void user_access PARAMS ((void)); extern void make_access PARAMS ((void)); extern void child_access PARAMS ((void)); extern void close_stdout PARAMS ((void)); extern char *strip_whitespace PARAMS ((const char **begpp, const char **endpp)); /* String caching */ extern void strcache_init PARAMS ((void)); extern void strcache_print_stats PARAMS ((const char *prefix)); extern int strcache_iscached PARAMS ((const char *str)); extern const char *strcache_add PARAMS ((const char *str)); extern const char *strcache_add_len PARAMS ((const char *str, int len)); extern int strcache_setbufsize PARAMS ((int size)); #ifdef HAVE_VFORK_H # include #endif /* We omit these declarations on non-POSIX systems which define _POSIX_VERSION, because such systems often declare them in header files anyway. */ #if !defined (__GNU_LIBRARY__) && !defined (POSIX) && !defined (_POSIX_VERSION) && !defined(WINDOWS32) extern long int atol (); # ifndef VMS extern long int lseek (); # endif #endif /* Not GNU C library or POSIX. */ #ifdef HAVE_GETCWD # if !defined(VMS) && !defined(__DECC) extern char *getcwd (); # endif #else extern char *getwd (); # define getcwd(buf, len) getwd (buf) #endif extern const struct floc *reading_file; extern const struct floc **expanding_var; extern char **environ; extern int just_print_flag, silent_flag, ignore_errors_flag, keep_going_flag; extern int print_data_base_flag, question_flag, touch_flag, always_make_flag; extern int env_overrides, no_builtin_rules_flag, no_builtin_variables_flag; extern int print_version_flag, print_directory_flag, check_symlink_flag; extern int warn_undefined_variables_flag, posix_pedantic, not_parallel; extern int second_expansion, clock_skew_detected, rebuilding_makefiles; /* can we run commands via 'sh -c xxx' or must we use batch files? */ extern int batch_mode_shell; extern unsigned int job_slots; extern int job_fds[2]; extern int job_rfd; #ifndef NO_FLOAT extern double max_load_average; #else extern int max_load_average; #endif extern char *program; extern char *starting_directory; extern unsigned int makelevel; extern char *version_string, *remote_description, *make_host; extern unsigned int commands_started; extern int handling_fatal_signal; #ifndef MIN #define MIN(_a,_b) ((_a)<(_b)?(_a):(_b)) #endif #ifndef MAX #define MAX(_a,_b) ((_a)>(_b)?(_a):(_b)) #endif #ifdef VMS # define MAKE_SUCCESS 1 # define MAKE_TROUBLE 2 # define MAKE_FAILURE 3 #else # define MAKE_SUCCESS 0 # define MAKE_TROUBLE 1 # define MAKE_FAILURE 2 #endif /* Set up heap debugging library dmalloc. */ #ifdef HAVE_DMALLOC_H #include #endif #ifndef initialize_main # ifdef __EMX__ # define initialize_main(pargc, pargv) \ { _wildcard(pargc, pargv); _response(pargc, pargv); } # else # define initialize_main(pargc, pargv) # endif #endif #ifdef __EMX__ # if !HAVE_STRCASECMP # define strcasecmp stricmp # endif # if !defined chdir # define chdir _chdir2 # endif # if !defined getcwd # define getcwd _getcwd2 # endif /* NO_CHDIR2 causes make not to use _chdir2() and _getcwd2() instead of chdir() and getcwd(). This avoids some error messages for the make testsuite but restricts the drive letter support. */ # ifdef NO_CHDIR2 # warning NO_CHDIR2: usage of drive letters restricted # undef chdir # undef getcwd # endif #endif #ifndef initialize_main # define initialize_main(pargc, pargv) #endif /* Some systems (like Solaris, PTX, etc.) do not support the SA_RESTART flag properly according to POSIX. So, we try to wrap common system calls with checks for EINTR. Note that there are still plenty of system calls that can fail with EINTR but this, reportedly, gets the vast majority of failure cases. If you still experience failures you'll need to either get a system where SA_RESTART works, or you need to avoid -j. */ #define EINTRLOOP(_v,_c) while (((_v)=_c)==-1 && errno==EINTR) /* While system calls that return integers are pretty consistent about returning -1 on failure and setting errno in that case, functions that return pointers are not always so well behaved. Sometimes they return NULL for expected behavior: one good example is readdir() which returns NULL at the end of the directory--and _doesn't_ reset errno. So, we have to do it ourselves here. */ #define ENULLLOOP(_v,_c) do{ errno = 0; \ while (((_v)=_c)==0 && errno==EINTR); }while(0) make-dfsg-3.81.orig/make.lnk0000644000175000017500000000055110416553102016135 0ustar srivastasrivastaFROM LIB:cres.o "commands.o"+"job.o"+"dir.o"+"file.o"+"misc.o"+"main.o"+"read.o"+"remake.o"+"rule.o"+"implicit.o"+"default.o"+"variable.o"+"expand.o"+"function.o"+"vpath.o"+"version.o"+"ar.o"+"arscan.o"+"signame.o"+"remote-stub.o"+"getopt.o"+"getopt1.o"+"alloca.o"+"amiga.o"+"hash.o"+"strcache.o" TO "make.new" LIB glob/glob.lib LIB:sc.lib LIB:amiga.lib QUIET make-dfsg-3.81.orig/make_msvc_net2003.sln0000644000175000017500000000163310416553102020352 0ustar srivastasrivastaMicrosoft Visual Studio Solution File, Format Version 8.00 Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "make_msvc.net2003", "make_msvc_net2003.vcproj", "{E96B5060-3240-4723-91C9-E64F1C877A04}" ProjectSection(ProjectDependencies) = postProject EndProjectSection EndProject Global GlobalSection(SolutionConfiguration) = preSolution Debug = Debug Release = Release EndGlobalSection GlobalSection(ProjectConfiguration) = postSolution {E96B5060-3240-4723-91C9-E64F1C877A04}.Debug.ActiveCfg = Debug|Win32 {E96B5060-3240-4723-91C9-E64F1C877A04}.Debug.Build.0 = Debug|Win32 {E96B5060-3240-4723-91C9-E64F1C877A04}.Release.ActiveCfg = Release|Win32 {E96B5060-3240-4723-91C9-E64F1C877A04}.Release.Build.0 = Release|Win32 EndGlobalSection GlobalSection(ExtensibilityGlobals) = postSolution EndGlobalSection GlobalSection(ExtensibilityAddIns) = postSolution EndGlobalSection EndGlobal make-dfsg-3.81.orig/make_msvc_net2003.vcproj0000644000175000017500000001613410416553102021063 0ustar srivastasrivasta make-dfsg-3.81.orig/makefile.com0000644000175000017500000001157210416553102016774 0ustar srivastasrivasta$! $! Makefile.com - builds GNU Make for VMS $! $! P1 is non-empty if you want to link with the VAXCRTL library instead $! of the shareable executable $! P2 = DEBUG will build an image with debug information $! P3 = WALL will enable all warning messages (some are suppressed since $! one macro intentionally causes an error condition) $! $! In case of problems with the install you might contact me at $! zinser@decus.de (preferred) or zinser@sysdev.deutsche-boerse.com $ $! hb $! But don't ask Martin Zinser about the lines, I added/changed. $! In case of an error do some cleanup $ on error then $ goto cleanup $! in case somebody set up her/his own symbol for cc $ set symbol/scope=(nolocal,noglobal) $! $! Just some general constants... $! $ true = 1 $ false = 0 $ tmpnam = "temp_" + f$getjpi("","pid") $ tt = tmpnam + ".txt" $ tc = tmpnam + ".c" $! $! Look for the compiler used $! $ lval = "" $ if f$search("SYS$SYSTEM:DECC$COMPILER.EXE").eqs."" $ then $ if f$trnlnm("SYS").eqs."" then def/nolog sys sys$library: $ ccopt = "" $ else $ ccopt = "/decc/prefix=(all,except=(globfree,glob))" $ if f$trnlnm("SYS").eqs."" $ then $ if f$trnlnm("DECC$LIBRARY_INCLUDE").nes."" $ then $ define sys decc$library_include: $ else $ if f$search("SYS$COMMON:[DECC$LIB.REFERENCE]DECC$RTLDEF.DIR").nes."" - then lval = "SYS$COMMON:[DECC$LIB.REFERENCE.DECC$RTLDEF]," $ if f$search("SYS$COMMON:[DECC$LIB.REFERENCE]SYS$STARLET_C.DIR").nes."" - then lval = lval+"SYS$COMMON:[DECC$LIB.REFERENCE.SYS$STARLET_C]," $ lval=lval+"SYS$LIBRARY:" $ define sys 'lval $ endif $ endif $ endif $! $! Should we build a debug image $! $ if (p2.eqs."DEBUG") $ then $ ccopt = ccopt + "/noopt/debug" $ lopt = "/debug" $ else $ lopt = "" $ endif $! $! Do we want to see all warnings $! $ if (p3.nes."WALL") $ then $ gosub check_cc_qual $ endif $ filelist = "alloca ar arscan commands default dir expand file function " + - "hash implicit job main misc read remake remote-stub rule " + - "signame variable version vmsfunctions vmsify vpath " + - "[.glob]glob [.glob]fnmatch getopt1 getopt strcache" $ copy config.h-vms config.h $ n=0 $ open/write optf make.opt $ loop: $ cfile = f$elem(n," ",filelist) $ if cfile .eqs. " " then goto linkit $ write sys$output "Compiling ''cfile'..." $ call compileit 'cfile' 'p1' $ n = n + 1 $ goto loop $ linkit: $ close optf $ if p1 .nes. "" then goto link_using_library $ link/exe=make make.opt/opt'lopt $ goto cleanup $ $ link_using_library: $ link/exe=make make.opt/opt,sys$library:vaxcrtl/lib'lopt $ $ cleanup: $ if f$trnlnm("SYS").nes."" then $ deassign sys $ if f$trnlnm("OPTF").nes."" then $ close optf $ if f$search("make.opt").nes."" then $ del make.opt;* $ exit $! $!----------------------------------------------------------------------------- $! $! Check if this is a define relating to the properties of the C/C++ $! compiler $! $CHECK_CC_QUAL: $ open/write tmpc 'tc $ ccqual = "/warn=(disable=questcompare)" $ write tmpc "#include " $ write tmpc "unsigned int i = 1;" $ write tmpc "int main(){" $ write tmpc "if (i < 0){printf(""Mission impossible\n"");}}" $ close tmpc $ gosub cc_qual_check $ return $! $!----------------------------------------------------------------------------- $! $! Check for properties of C/C++ compiler $! $CC_QUAL_CHECK: $ cc_qual = false $ set message/nofac/noident/nosever/notext $ cc 'ccqual' 'tmpnam' $ if $status then cc_qual = true $ set message/fac/ident/sever/text $ delete/nolog 'tmpnam'.*;* $ if cc_qual then ccopt = ccopt + ccqual $ return $!----------------------------------------------------------------------------- $! $ compileit : subroutine $ ploc = f$locate("]",p1) $ filnam = p1 $ if ploc .lt. f$length(p1) then filnam=f$extract(ploc+1,100,p1) $ write optf "''filnam'" $ cc'ccopt'/include=([],[.glob]) - /define=("allocated_variable_expand_for_file=alloc_var_expand_for_file","unlink=remove","HAVE_CONFIG_H","VMS") - 'p1' $ exit $ endsubroutine : compileit $! $!----------------------------------------------------------------------------- $!Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, $!2006 Free Software Foundation, Inc. $!This file is part of GNU Make. $! $!GNU Make is free software; you can redistribute it and/or modify it under the $!terms of the GNU General Public License as published by the Free Software $!Foundation; either version 2, or (at your option) any later version. $! $!GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY $!WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR $!A PARTICULAR PURPOSE. See the GNU General Public License for more details. $! $!You should have received a copy of the GNU General Public License along with $!GNU Make; see the file COPYING. If not, write to the Free Software $!Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/makefile.vms0000644000175000017500000001153710416553102017024 0ustar srivastasrivasta# -*-Makefile-*- to build GNU make on VMS # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, # 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # VMS extensions from GNU Make 3.60 imported by # Klaus Kämpf (kkaempf@rmi.de) # Modified for version 3.78.1 by Hartmut.Becker@compaq.com. # Modified for version 3.80 by zinser@decus.de # Modified for version 3.81 by Hartmut Becker CC = cc CP = copy %.obj: %.c $(CC) $(CFLAGS)/obj=$@ $< # # Makefile for GNU Make # ifeq ($(CC),cc) CFLAGS = $(defines) /include=([],[.glob])/prefix=(all,except=(glob,globfree))/standard=relaxed/warn=(disable=questcompare) else CFLAGS = $(defines) /include=([],[.glob]) endif #LDFLAGS = /deb LDFLAGS = ifeq ($(CC),cc) defines = /define=("unlink=remove","HAVE_CONFIG_H","VMS","allocated_variable_expand_for_file=alloc_var_expand_for_file") else ifeq ($(ARCH),VAX) defines = /define=("HAVE_CONFIG_H","GCC_IS_NATIVE","VAX") else defines = /define=("HAVE_CONFIG_H","GCC_IS_NATIVE") endif endif LOAD_AVG = /define="NO_LDAV" # If you don't want archive support, comment these out. ARCHIVES = ,ar.obj,arscan.obj ARCHIVES_SRC = ar.c arscan.c # If your system needs extra libraries loaded in, define them here. # System V probably need -lPW for alloca. # if on vax, uncomment the following line #LOADLIBES = ,c.opt/opt ifeq ($(CC),cc) #LOADLIBES =,sys$$library:vaxcrtl.olb/lib CRT0 = else LOADLIBES =,gnu_cc_library:libgcc.olb/lib endif # If your system doesn't have alloca, or the one provided is bad, # get it from the Emacs distribution and define these. #ALLOCA = ,alloca.obj #ALLOCASRC = alloca.c # If there are remote execution facilities defined, # enable them with switches here (see remote-*.c). REMOTE = # Any extra object files your system needs. extras = ,signame.obj,remote-stub.obj,vmsfunctions.obj,vmsify.obj #,directory.obj # as an alternative: glob = ,[.glob]glob.obj,[.glob]fnmatch.obj getopt = ,getopt.obj,getopt1.obj # Directory to install `make' in. bindir = [] # Directory to install the man page in. mandir = [] # Number to put on the man page filename. manext = 1 objs = commands.obj,job.obj,dir.obj,file.obj,misc.obj,hash.obj,\ main.obj,read.obj,remake.obj,rule.obj,implicit.obj,\ default.obj,variable.obj,expand.obj,function.obj,strcache.obj,\ vpath.obj,version.obj$(ARCHIVES)$(ALLOCA)$(extras)$(getopt)$(glob) srcs = commands.c job.c dir.c file.c misc.c hash.c \ main.c read.c remake.c rule.c implicit.c \ default.c variable.c expand.c function.c strcache.c \ vpath.c version.c vmsfunctions.c vmsify.c $(ARCHIVES_SRC) $(ALLOCASRC) \ commands.h dep.h filedef.h job.h make.h rule.h variable.h .PHONY: all doc all: config.h make.exe doc: make.info make.dvi make.exe: $(objs) $(LD)$(LDFLAGS)/exe=$@ $^$(LOADLIBES)$(CRT0) .PHONY: clean realclean clean: $$ purge [...] -$(RM) make.exe;,*.obj; -$(RM) [.glob]*.obj; # Automatically generated dependencies. commands.obj: commands.c make.h dep.h commands.h filedef.h variable.h job.h job.obj: job.c vmsjobs.c make.h commands.h job.h filedef.h variable.h dir.obj: dir.c make.h file.obj: file.c make.h commands.h dep.h filedef.h variable.h misc.obj: misc.c make.h dep.h hash.obj: hash.c make.h hash.h strcache.obj: strcache.c make.h hash.h main.obj: main.c make.h commands.h dep.h filedef.h variable.h job.h read.obj: read.c make.h commands.h dep.h filedef.h variable.h remake.obj: remake.c make.h commands.h job.h dep.h filedef.h rule.obj: rule.c make.h commands.h dep.h filedef.h variable.h rule.h implicit.obj: implicit.c make.h rule.h dep.h filedef.h default.obj: default.c make.h rule.h dep.h filedef.h commands.h variable.h variable.obj: variable.c make.h commands.h variable.h dep.h filedef.h expand.obj: expand.c make.h commands.h filedef.h variable.h function.obj: function.c make.h variable.h dep.h commands.h job.h vpath.obj: vpath.c make.h filedef.h variable.h version.obj: version.c config.h arscan.obj: arscan.c ar.obj: ar.c make.h filedef.h signame.obj: signame.c remote-stub.obj: remote-stub.c [.glob]glob.obj: [.glob]glob.c [.glob]fnmatch.obj: [.glob]fnmatch.c getopt.obj: getopt.c getopt1.obj: getopt1.c vmsfunctions.obj: vmsfunctions.c make.h vmsdir.h vmsify.obj: vmsify.c make.h config.h: config.h-vms $(CP) $< $@ make-dfsg-3.81.orig/misc.c0000644000175000017500000005122510416553102015615 0ustar srivastasrivasta/* Miscellaneous generic support functions for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "dep.h" #include "debug.h" /* Variadic functions. We go through contortions to allow proper function prototypes for both ANSI and pre-ANSI C compilers, and also for those which support stdarg.h vs. varargs.h, and finally those which have vfprintf(), etc. and those who have _doprnt... or nothing. This fancy stuff all came from GNU fileutils, except for the VA_PRINTF and VA_END macros used here since we have multiple print functions. */ #if USE_VARIADIC # if HAVE_STDARG_H # include # define VA_START(args, lastarg) va_start(args, lastarg) # else # include # define VA_START(args, lastarg) va_start(args) # endif # if HAVE_VPRINTF # define VA_PRINTF(fp, lastarg, args) vfprintf((fp), (lastarg), (args)) # else # define VA_PRINTF(fp, lastarg, args) _doprnt((lastarg), (args), (fp)) # endif # define VA_END(args) va_end(args) #else /* We can't use any variadic interface! */ # define va_alist a1, a2, a3, a4, a5, a6, a7, a8 # define va_dcl char *a1, *a2, *a3, *a4, *a5, *a6, *a7, *a8; # define VA_START(args, lastarg) # define VA_PRINTF(fp, lastarg, args) fprintf((fp), (lastarg), va_alist) # define VA_END(args) #endif /* Compare strings *S1 and *S2. Return negative if the first is less, positive if it is greater, zero if they are equal. */ int alpha_compare (const void *v1, const void *v2) { const char *s1 = *((char **)v1); const char *s2 = *((char **)v2); if (*s1 != *s2) return *s1 - *s2; return strcmp (s1, s2); } /* Discard each backslash-newline combination from LINE. Backslash-backslash-newline combinations become backslash-newlines. This is done by copying the text at LINE into itself. */ void collapse_continuations (char *line) { register char *in, *out, *p; register int backslash; register unsigned int bs_write; in = strchr (line, '\n'); if (in == 0) return; out = in; while (out > line && out[-1] == '\\') --out; while (*in != '\0') { /* BS_WRITE gets the number of quoted backslashes at the end just before IN, and BACKSLASH gets nonzero if the next character is quoted. */ backslash = 0; bs_write = 0; for (p = in - 1; p >= line && *p == '\\'; --p) { if (backslash) ++bs_write; backslash = !backslash; /* It should be impossible to go back this far without exiting, but if we do, we can't get the right answer. */ if (in == out - 1) abort (); } /* Output the appropriate number of backslashes. */ while (bs_write-- > 0) *out++ = '\\'; /* Skip the newline. */ ++in; /* If the newline is quoted, discard following whitespace and any preceding whitespace; leave just one space. */ if (backslash) { in = next_token (in); while (out > line && isblank ((unsigned char)out[-1])) --out; *out++ = ' '; } else /* If the newline isn't quoted, put it in the output. */ *out++ = '\n'; /* Now copy the following line to the output. Stop when we find backslashes followed by a newline. */ while (*in != '\0') if (*in == '\\') { p = in + 1; while (*p == '\\') ++p; if (*p == '\n') { in = p; break; } while (in < p) *out++ = *in++; } else *out++ = *in++; } *out = '\0'; } /* Print N spaces (used in debug for target-depth). */ void print_spaces (unsigned int n) { while (n-- > 0) putchar (' '); } /* Return a newly-allocated string whose contents concatenate those of s1, s2, s3. */ char * concat (const char *s1, const char *s2, const char *s3) { unsigned int len1, len2, len3; char *result; len1 = *s1 != '\0' ? strlen (s1) : 0; len2 = *s2 != '\0' ? strlen (s2) : 0; len3 = *s3 != '\0' ? strlen (s3) : 0; result = (char *) xmalloc (len1 + len2 + len3 + 1); if (*s1 != '\0') bcopy (s1, result, len1); if (*s2 != '\0') bcopy (s2, result + len1, len2); if (*s3 != '\0') bcopy (s3, result + len1 + len2, len3); *(result + len1 + len2 + len3) = '\0'; return result; } /* Print a message on stdout. */ void #if HAVE_ANSI_COMPILER && USE_VARIADIC && HAVE_STDARG_H message (int prefix, const char *fmt, ...) #else message (prefix, fmt, va_alist) int prefix; const char *fmt; va_dcl #endif { #if USE_VARIADIC va_list args; #endif log_working_directory (1); if (fmt != 0) { if (prefix) { if (makelevel == 0) printf ("%s: ", program); else printf ("%s[%u]: ", program, makelevel); } VA_START (args, fmt); VA_PRINTF (stdout, fmt, args); VA_END (args); putchar ('\n'); } fflush (stdout); } /* Print an error message. */ void #if HAVE_ANSI_COMPILER && USE_VARIADIC && HAVE_STDARG_H error (const struct floc *flocp, const char *fmt, ...) #else error (flocp, fmt, va_alist) const struct floc *flocp; const char *fmt; va_dcl #endif { #if USE_VARIADIC va_list args; #endif log_working_directory (1); if (flocp && flocp->filenm) fprintf (stderr, "%s:%lu: ", flocp->filenm, flocp->lineno); else if (makelevel == 0) fprintf (stderr, "%s: ", program); else fprintf (stderr, "%s[%u]: ", program, makelevel); VA_START(args, fmt); VA_PRINTF (stderr, fmt, args); VA_END (args); putc ('\n', stderr); fflush (stderr); } /* Print an error message and exit. */ void #if HAVE_ANSI_COMPILER && USE_VARIADIC && HAVE_STDARG_H fatal (const struct floc *flocp, const char *fmt, ...) #else fatal (flocp, fmt, va_alist) const struct floc *flocp; const char *fmt; va_dcl #endif { #if USE_VARIADIC va_list args; #endif log_working_directory (1); if (flocp && flocp->filenm) fprintf (stderr, "%s:%lu: *** ", flocp->filenm, flocp->lineno); else if (makelevel == 0) fprintf (stderr, "%s: *** ", program); else fprintf (stderr, "%s[%u]: *** ", program, makelevel); VA_START(args, fmt); VA_PRINTF (stderr, fmt, args); VA_END (args); fputs (_(". Stop.\n"), stderr); die (2); } #ifndef HAVE_STRERROR #undef strerror char * strerror (int errnum) { extern int errno, sys_nerr; #ifndef __DECC extern char *sys_errlist[]; #endif static char buf[] = "Unknown error 12345678901234567890"; if (errno < sys_nerr) return sys_errlist[errnum]; sprintf (buf, _("Unknown error %d"), errnum); return buf; } #endif /* Print an error message from errno. */ void perror_with_name (const char *str, const char *name) { error (NILF, _("%s%s: %s"), str, name, strerror (errno)); } /* Print an error message from errno and exit. */ void pfatal_with_name (const char *name) { fatal (NILF, _("%s: %s"), name, strerror (errno)); /* NOTREACHED */ } /* Like malloc but get fatal error if memory is exhausted. */ /* Don't bother if we're using dmalloc; it provides these for us. */ #ifndef HAVE_DMALLOC_H #undef xmalloc #undef xrealloc #undef xstrdup char * xmalloc (unsigned int size) { /* Make sure we don't allocate 0, for pre-ANSI libraries. */ char *result = (char *) malloc (size ? size : 1); if (result == 0) fatal (NILF, _("virtual memory exhausted")); return result; } char * xrealloc (char *ptr, unsigned int size) { char *result; /* Some older implementations of realloc() don't conform to ANSI. */ if (! size) size = 1; result = ptr ? realloc (ptr, size) : malloc (size); if (result == 0) fatal (NILF, _("virtual memory exhausted")); return result; } char * xstrdup (const char *ptr) { char *result; #ifdef HAVE_STRDUP result = strdup (ptr); #else result = (char *) malloc (strlen (ptr) + 1); #endif if (result == 0) fatal (NILF, _("virtual memory exhausted")); #ifdef HAVE_STRDUP return result; #else return strcpy(result, ptr); #endif } #endif /* HAVE_DMALLOC_H */ char * savestring (const char *str, unsigned int length) { register char *out = (char *) xmalloc (length + 1); if (length > 0) bcopy (str, out, length); out[length] = '\0'; return out; } /* Limited INDEX: Search through the string STRING, which ends at LIMIT, for the character C. Returns a pointer to the first occurrence, or nil if none is found. Like INDEX except that the string searched ends where specified instead of at the first null. */ char * lindex (const char *s, const char *limit, int c) { while (s < limit) if (*s++ == c) return (char *)(s - 1); return 0; } /* Return the address of the first whitespace or null in the string S. */ char * end_of_token (const char *s) { while (*s != '\0' && !isblank ((unsigned char)*s)) ++s; return (char *)s; } #ifdef WINDOWS32 /* * Same as end_of_token, but take into account a stop character */ char * end_of_token_w32 (char *s, char stopchar) { register char *p = s; register int backslash = 0; while (*p != '\0' && *p != stopchar && (backslash || !isblank ((unsigned char)*p))) { if (*p++ == '\\') { backslash = !backslash; while (*p == '\\') { backslash = !backslash; ++p; } } else backslash = 0; } return p; } #endif /* Return the address of the first nonwhitespace or null in the string S. */ char * next_token (const char *s) { while (isblank ((unsigned char)*s)) ++s; return (char *)s; } /* Find the next token in PTR; return the address of it, and store the length of the token into *LENGTHPTR if LENGTHPTR is not nil. */ char * find_next_token (char **ptr, unsigned int *lengthptr) { char *p = next_token (*ptr); char *end; if (*p == '\0') return 0; *ptr = end = end_of_token (p); if (lengthptr != 0) *lengthptr = end - p; return p; } /* Allocate a new `struct dep' with all fields initialized to 0. */ struct dep * alloc_dep () { struct dep *d = (struct dep *) xmalloc (sizeof (struct dep)); bzero ((char *) d, sizeof (struct dep)); return d; } /* Free `struct dep' along with `name' and `stem'. */ void free_dep (struct dep *d) { if (d->name != 0) free (d->name); if (d->stem != 0) free (d->stem); free ((char *)d); } /* Copy a chain of `struct dep', making a new chain with the same contents as the old one. */ struct dep * copy_dep_chain (const struct dep *d) { register struct dep *c; struct dep *firstnew = 0; struct dep *lastnew = 0; while (d != 0) { c = (struct dep *) xmalloc (sizeof (struct dep)); bcopy ((char *) d, (char *) c, sizeof (struct dep)); if (c->name != 0) c->name = xstrdup (c->name); if (c->stem != 0) c->stem = xstrdup (c->stem); c->next = 0; if (firstnew == 0) firstnew = lastnew = c; else lastnew = lastnew->next = c; d = d->next; } return firstnew; } /* Free a chain of 'struct dep'. */ void free_dep_chain (struct dep *d) { while (d != 0) { struct dep *df = d; d = d->next; free_dep (df); } } /* Free a chain of `struct nameseq'. Each nameseq->name is freed as well. For `struct dep' chains use free_dep_chain. */ void free_ns_chain (struct nameseq *n) { register struct nameseq *tmp; while (n != 0) { if (n->name != 0) free (n->name); tmp = n; n = n->next; free (tmp); } } #ifdef iAPX286 /* The losing compiler on this machine can't handle this macro. */ char * dep_name (struct dep *dep) { return dep->name == 0 ? dep->file->name : dep->name; } #endif #ifdef GETLOADAVG_PRIVILEGED #ifdef POSIX /* Hopefully if a system says it's POSIX.1 and has the setuid and setgid functions, they work as POSIX.1 says. Some systems (Alpha OSF/1 1.2, for example) which claim to be POSIX.1 also have the BSD setreuid and setregid functions, but they don't work as in BSD and only the POSIX.1 way works. */ #undef HAVE_SETREUID #undef HAVE_SETREGID #else /* Not POSIX. */ /* Some POSIX.1 systems have the seteuid and setegid functions. In a POSIX-like system, they are the best thing to use. However, some non-POSIX systems have them too but they do not work in the POSIX style and we must use setreuid and setregid instead. */ #undef HAVE_SETEUID #undef HAVE_SETEGID #endif /* POSIX. */ #ifndef HAVE_UNISTD_H extern int getuid (), getgid (), geteuid (), getegid (); extern int setuid (), setgid (); #ifdef HAVE_SETEUID extern int seteuid (); #else #ifdef HAVE_SETREUID extern int setreuid (); #endif /* Have setreuid. */ #endif /* Have seteuid. */ #ifdef HAVE_SETEGID extern int setegid (); #else #ifdef HAVE_SETREGID extern int setregid (); #endif /* Have setregid. */ #endif /* Have setegid. */ #endif /* No . */ /* Keep track of the user and group IDs for user- and make- access. */ static int user_uid = -1, user_gid = -1, make_uid = -1, make_gid = -1; #define access_inited (user_uid != -1) static enum { make, user } current_access; /* Under -d, write a message describing the current IDs. */ static void log_access (const char *flavor) { if (! ISDB (DB_JOBS)) return; /* All the other debugging messages go to stdout, but we write this one to stderr because it might be run in a child fork whose stdout is piped. */ fprintf (stderr, _("%s: user %lu (real %lu), group %lu (real %lu)\n"), flavor, (unsigned long) geteuid (), (unsigned long) getuid (), (unsigned long) getegid (), (unsigned long) getgid ()); fflush (stderr); } static void init_access (void) { #ifndef VMS user_uid = getuid (); user_gid = getgid (); make_uid = geteuid (); make_gid = getegid (); /* Do these ever fail? */ if (user_uid == -1 || user_gid == -1 || make_uid == -1 || make_gid == -1) pfatal_with_name ("get{e}[gu]id"); log_access (_("Initialized access")); current_access = make; #endif } #endif /* GETLOADAVG_PRIVILEGED */ /* Give the process appropriate permissions for access to user data (i.e., to stat files, or to spawn a child process). */ void user_access (void) { #ifdef GETLOADAVG_PRIVILEGED if (!access_inited) init_access (); if (current_access == user) return; /* We are in "make access" mode. This means that the effective user and group IDs are those of make (if it was installed setuid or setgid). We now want to set the effective user and group IDs to the real IDs, which are the IDs of the process that exec'd make. */ #ifdef HAVE_SETEUID /* Modern systems have the seteuid/setegid calls which set only the effective IDs, which is ideal. */ if (seteuid (user_uid) < 0) pfatal_with_name ("user_access: seteuid"); #else /* Not HAVE_SETEUID. */ #ifndef HAVE_SETREUID /* System V has only the setuid/setgid calls to set user/group IDs. There is an effective ID, which can be set by setuid/setgid. It can be set (unless you are root) only to either what it already is (returned by geteuid/getegid, now in make_uid/make_gid), the real ID (return by getuid/getgid, now in user_uid/user_gid), or the saved set ID (what the effective ID was before this set-ID executable (make) was exec'd). */ if (setuid (user_uid) < 0) pfatal_with_name ("user_access: setuid"); #else /* HAVE_SETREUID. */ /* In 4BSD, the setreuid/setregid calls set both the real and effective IDs. They may be set to themselves or each other. So you have two alternatives at any one time. If you use setuid/setgid, the effective will be set to the real, leaving only one alternative. Using setreuid/setregid, however, you can toggle between your two alternatives by swapping the values in a single setreuid or setregid call. */ if (setreuid (make_uid, user_uid) < 0) pfatal_with_name ("user_access: setreuid"); #endif /* Not HAVE_SETREUID. */ #endif /* HAVE_SETEUID. */ #ifdef HAVE_SETEGID if (setegid (user_gid) < 0) pfatal_with_name ("user_access: setegid"); #else #ifndef HAVE_SETREGID if (setgid (user_gid) < 0) pfatal_with_name ("user_access: setgid"); #else if (setregid (make_gid, user_gid) < 0) pfatal_with_name ("user_access: setregid"); #endif #endif current_access = user; log_access (_("User access")); #endif /* GETLOADAVG_PRIVILEGED */ } /* Give the process appropriate permissions for access to make data (i.e., the load average). */ void make_access (void) { #ifdef GETLOADAVG_PRIVILEGED if (!access_inited) init_access (); if (current_access == make) return; /* See comments in user_access, above. */ #ifdef HAVE_SETEUID if (seteuid (make_uid) < 0) pfatal_with_name ("make_access: seteuid"); #else #ifndef HAVE_SETREUID if (setuid (make_uid) < 0) pfatal_with_name ("make_access: setuid"); #else if (setreuid (user_uid, make_uid) < 0) pfatal_with_name ("make_access: setreuid"); #endif #endif #ifdef HAVE_SETEGID if (setegid (make_gid) < 0) pfatal_with_name ("make_access: setegid"); #else #ifndef HAVE_SETREGID if (setgid (make_gid) < 0) pfatal_with_name ("make_access: setgid"); #else if (setregid (user_gid, make_gid) < 0) pfatal_with_name ("make_access: setregid"); #endif #endif current_access = make; log_access (_("Make access")); #endif /* GETLOADAVG_PRIVILEGED */ } /* Give the process appropriate permissions for a child process. This is like user_access, but you can't get back to make_access. */ void child_access (void) { #ifdef GETLOADAVG_PRIVILEGED if (!access_inited) abort (); /* Set both the real and effective UID and GID to the user's. They cannot be changed back to make's. */ #ifndef HAVE_SETREUID if (setuid (user_uid) < 0) pfatal_with_name ("child_access: setuid"); #else if (setreuid (user_uid, user_uid) < 0) pfatal_with_name ("child_access: setreuid"); #endif #ifndef HAVE_SETREGID if (setgid (user_gid) < 0) pfatal_with_name ("child_access: setgid"); #else if (setregid (user_gid, user_gid) < 0) pfatal_with_name ("child_access: setregid"); #endif log_access (_("Child access")); #endif /* GETLOADAVG_PRIVILEGED */ } #ifdef NEED_GET_PATH_MAX unsigned int get_path_max (void) { static unsigned int value; if (value == 0) { long int x = pathconf ("/", _PC_PATH_MAX); if (x > 0) value = x; else return MAXPATHLEN; } return value; } #endif /* This code is stolen from gnulib. If/when we abandon the requirement to work with K&R compilers, we can remove this (and perhaps other parts of GNU make!) and migrate to using gnulib directly. This is called only through atexit(), which means die() has already been invoked. So, call exit() here directly. Apparently that works...? */ /* Close standard output, exiting with status 'exit_failure' on failure. If a program writes *anything* to stdout, that program should close stdout and make sure that it succeeds before exiting. Otherwise, suppose that you go to the extreme of checking the return status of every function that does an explicit write to stdout. The last printf can succeed in writing to the internal stream buffer, and yet the fclose(stdout) could still fail (due e.g., to a disk full error) when it tries to write out that buffered data. Thus, you would be left with an incomplete output file and the offending program would exit successfully. Even calling fflush is not always sufficient, since some file systems (NFS and CODA) buffer written/flushed data until an actual close call. Besides, it's wasteful to check the return value from every call that writes to stdout -- just let the internal stream state record the failure. That's what the ferror test is checking below. It's important to detect such failures and exit nonzero because many tools (most notably `make' and other build-management systems) depend on being able to detect failure in other tools via their exit status. */ void close_stdout (void) { int prev_fail = ferror (stdout); int fclose_fail = fclose (stdout); if (prev_fail || fclose_fail) { if (fclose_fail) error (NILF, _("write error: %s"), strerror (errno)); else error (NILF, _("write error")); exit (EXIT_FAILURE); } } make-dfsg-3.81.orig/po/0000755000175000017500000000000010416553102015127 5ustar srivastasrivastamake-dfsg-3.81.orig/po/ChangeLog0000644000175000017500000000423410416553102016704 0ustar srivastasrivasta2006-01-28 Paul D. Smith * LINGUAS: Added new translation for Vietnamese (vi). 2005-07-14 Paul D. Smith * LINGUAS: Added new translation for Indonesian (id). 2005-05-09 Paul D. Smith * POTFILES.in: Add new file vmsjobs.c. 2005-04-06 Paul D. Smith * LINGUAS: Added a new translation for Kinywarwanda (rw). 2005-02-09 Paul D. Smith * LINGUAS: Added a new translation for Irish (ga). 2005-02-01 Paul D. Smith * LINGUAS: Added a new translation for Finnish (fi). 2003-10-18 Paul D. Smith * LINGUAS: Added a new translation for Belarusian (be). 2002-12-19 Paul D. Smith * LINGUAS: Added a new translation for Ukrainian (uk). 2002-10-05 Paul D. Smith * POTFILES.in: Add variable.h as it has a translatable string. 2002-08-08 Paul D. Smith * LINGUAS: Add a new translation for Chinese (simplified) (zh_CN). 2002-08-02 Paul D. Smith * LINGUAS: Add a new translation for Swedish (sv). 2002-04-21 Paul D. Smith * LINGUAS, hr.po: Added new translation: Croatian. * da.po, de.po, es.po, fr.po, gl.po, he.po, ja.po, ko.po, nl.po, pl.po, pt_BR.po, ru.po, tr.po: Moved from i18n to here. * .cvsignore: Moved from i18n to here. * POTFILES.in, LINGUAS, Makevars: Created. Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/po/LINGUAS0000644000175000017500000000026710416553102016161 0ustar srivastasrivasta# Set of available languages: 23 languages be da de es fi fr ga gl he hr id ja ko nl pl pt_BR ru rw sv tr uk vi zh_CN # Can't seem to get en@quot and en@boldquot to build properly? make-dfsg-3.81.orig/po/Makefile.in.in0000644000175000017500000003020510416553102017601 0ustar srivastasrivasta# Makefile for PO directory in any package using GNU gettext. # Copyright (C) 1995-1997, 2000-2004 by Ulrich Drepper # # This file can be copied and used freely without restrictions. It can # be used in projects which are not available under the GNU General Public # License but which still want to provide support for the GNU gettext # functionality. # Please note that the actual code of GNU gettext is covered by the GNU # General Public License and is *not* in the public domain. # # Origin: gettext-0.14 PACKAGE = @PACKAGE@ VERSION = @VERSION@ SHELL = /bin/sh @SET_MAKE@ srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ prefix = @prefix@ exec_prefix = @exec_prefix@ datadir = @datadir@ localedir = $(datadir)/locale gettextsrcdir = $(datadir)/gettext/po INSTALL = @INSTALL@ INSTALL_DATA = @INSTALL_DATA@ MKINSTALLDIRS = @MKINSTALLDIRS@ mkinstalldirs = $(SHELL) $(MKINSTALLDIRS) GMSGFMT = @GMSGFMT@ MSGFMT = @MSGFMT@ XGETTEXT = @XGETTEXT@ MSGMERGE = msgmerge MSGMERGE_UPDATE = @MSGMERGE@ --update MSGINIT = msginit MSGCONV = msgconv MSGFILTER = msgfilter POFILES = @POFILES@ GMOFILES = @GMOFILES@ UPDATEPOFILES = @UPDATEPOFILES@ DUMMYPOFILES = @DUMMYPOFILES@ DISTFILES.common = Makefile.in.in remove-potcdate.sin \ $(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) DISTFILES = $(DISTFILES.common) Makevars POTFILES.in $(DOMAIN).pot stamp-po \ $(POFILES) $(GMOFILES) \ $(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) POTFILES = \ CATALOGS = @CATALOGS@ # Makevars gets inserted here. (Don't remove this line!) .SUFFIXES: .SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update .po.mo: @echo "$(MSGFMT) -c -o $@ $<"; \ $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ .po.gmo: @lang=`echo $* | sed -e 's,.*/,,'`; \ test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \ cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo .sin.sed: sed -e '/^#/d' $< > t-$@ mv t-$@ $@ all: all-@USE_NLS@ all-yes: stamp-po all-no: # stamp-po is a timestamp denoting the last time at which the CATALOGS have # been loosely updated. Its purpose is that when a developer or translator # checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, # "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent # invocations of "make" will do nothing. This timestamp would not be necessary # if updating the $(CATALOGS) would always touch them; however, the rule for # $(POFILES) has been designed to not touch files that don't need to be # changed. stamp-po: $(srcdir)/$(DOMAIN).pot test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) @echo "touch stamp-po" @echo timestamp > stamp-poT @mv stamp-poT stamp-po # Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', # otherwise packages like GCC can not be built if only parts of the source # have been downloaded. # This target rebuilds $(DOMAIN).pot; it is an expensive operation. # Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \ --files-from=$(srcdir)/POTFILES.in \ --copyright-holder='$(COPYRIGHT_HOLDER)' \ --msgid-bugs-address='$(MSGID_BUGS_ADDRESS)' test ! -f $(DOMAIN).po || { \ if test -f $(srcdir)/$(DOMAIN).pot; then \ sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ else \ rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ fi; \ else \ mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ fi; \ } # This rule has no dependencies: we don't need to update $(DOMAIN).pot at # every "make" invocation, only create it when it is missing. # Only "make $(DOMAIN).pot-update" or "make dist" will force an update. $(srcdir)/$(DOMAIN).pot: $(MAKE) $(DOMAIN).pot-update # This target rebuilds a PO file if $(DOMAIN).pot has changed. # Note that a PO file is not touched if it doesn't need to be changed. $(POFILES): $(srcdir)/$(DOMAIN).pot @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ if test -f "$(srcdir)/$${lang}.po"; then \ test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \ cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \ else \ $(MAKE) $${lang}.po-create; \ fi install: install-exec install-data install-exec: install-data: install-data-@USE_NLS@ if test "$(PACKAGE)" = "gettext-tools"; then \ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ for file in $(DISTFILES.common) Makevars.template; do \ $(INSTALL_DATA) $(srcdir)/$$file \ $(DESTDIR)$(gettextsrcdir)/$$file; \ done; \ for file in Makevars; do \ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ done; \ else \ : ; \ fi install-data-no: all install-data-yes: all $(mkinstalldirs) $(DESTDIR)$(datadir) @catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ dir=$(localedir)/$$lang/LC_MESSAGES; \ $(mkinstalldirs) $(DESTDIR)$$dir; \ if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ if test -n "$$lc"; then \ if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ for file in *; do \ if test -f $$file; then \ ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ fi; \ done); \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ else \ if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ :; \ else \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ fi; \ fi; \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ fi; \ done; \ done install-strip: install installdirs: installdirs-exec installdirs-data installdirs-exec: installdirs-data: installdirs-data-@USE_NLS@ if test "$(PACKAGE)" = "gettext-tools"; then \ $(mkinstalldirs) $(DESTDIR)$(gettextsrcdir); \ else \ : ; \ fi installdirs-data-no: installdirs-data-yes: $(mkinstalldirs) $(DESTDIR)$(datadir) @catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ dir=$(localedir)/$$lang/LC_MESSAGES; \ $(mkinstalldirs) $(DESTDIR)$$dir; \ for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ if test -n "$$lc"; then \ if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ for file in *; do \ if test -f $$file; then \ ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ fi; \ done); \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ else \ if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ :; \ else \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ fi; \ fi; \ fi; \ done; \ done # Define this as empty until I found a useful application. installcheck: uninstall: uninstall-exec uninstall-data uninstall-exec: uninstall-data: uninstall-data-@USE_NLS@ if test "$(PACKAGE)" = "gettext-tools"; then \ for file in $(DISTFILES.common) Makevars.template; do \ rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ done; \ else \ : ; \ fi uninstall-data-no: uninstall-data-yes: catalogs='$(CATALOGS)'; \ for cat in $$catalogs; do \ cat=`basename $$cat`; \ lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ done; \ done check: all info dvi ps pdf html tags TAGS ctags CTAGS ID: mostlyclean: rm -f remove-potcdate.sed rm -f stamp-poT rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po rm -fr *.o clean: mostlyclean distclean: clean rm -f Makefile Makefile.in POTFILES *.mo maintainer-clean: distclean @echo "This command is intended for maintainers to use;" @echo "it deletes files that may require special tools to rebuild." rm -f stamp-po $(GMOFILES) distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) dist distdir: $(MAKE) update-po @$(MAKE) dist2 # This is a separate target because 'update-po' must be executed before. dist2: $(DISTFILES) dists="$(DISTFILES)"; \ if test "$(PACKAGE)" = "gettext-tools"; then \ dists="$$dists Makevars.template"; \ fi; \ if test -f $(srcdir)/ChangeLog; then \ dists="$$dists ChangeLog"; \ fi; \ for i in 0 1 2 3 4 5 6 7 8 9; do \ if test -f $(srcdir)/ChangeLog.$$i; then \ dists="$$dists ChangeLog.$$i"; \ fi; \ done; \ if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ for file in $$dists; do \ if test -f $$file; then \ cp -p $$file $(distdir); \ else \ cp -p $(srcdir)/$$file $(distdir); \ fi; \ done update-po: Makefile $(MAKE) $(DOMAIN).pot-update test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) $(MAKE) update-gmo # General rule for creating PO files. .nop.po-create: @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ exit 1 # General rule for updating PO files. .nop.po-update: @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ tmpdir=`pwd`; \ echo "$$lang:"; \ test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ cd $(srcdir); \ if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \ if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ exit 1; \ fi; \ fi; \ else \ echo "msgmerge for $$lang.po failed!" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ fi $(DUMMYPOFILES): update-gmo: Makefile $(GMOFILES) @: Makefile: Makefile.in.in $(top_builddir)/config.status @POMAKEFILEDEPS@ cd $(top_builddir) \ && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ $(SHELL) ./config.status force: # Tell versions [3.59,3.63) of GNU make not to export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/po/Makevars0000644000175000017500000000513710416553102016631 0ustar srivastasrivasta# This is a -*-Makefile-*- # Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # Makefile variables for PO directory in any package using GNU gettext. # Usually the message domain is the same as the package name. DOMAIN = $(PACKAGE) # These two variables depend on the location of this directory. subdir = po top_builddir = .. # These options get passed to xgettext. XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ # This is the copyright holder that gets inserted into the header of the # $(DOMAIN).pot file. Set this to the copyright holder of the surrounding # package. (Note that the msgstr strings, extracted from the package's # sources, belong to the copyright holder of the package.) Translators are # expected to transfer the copyright for their translations to this person # or entity, or to disclaim their copyright. The empty string stands for # the public domain; in this case the translators are expected to disclaim # their copyright. COPYRIGHT_HOLDER = Free Software Foundation, Inc. # This is the email address or URL to which the translators shall report # bugs in the untranslated strings: # - Strings which are not entire sentences, see the maintainer guidelines # in the GNU gettext documentation, section 'Preparing Strings'. # - Strings which use unclear terms or require additional context to be # understood. # - Strings which make invalid assumptions about notation of date, time or # money. # - Pluralisation problems. # - Incorrect English spelling. # - Incorrect formatting. # It can be your email address, or a mailing list address where translators # can write to without being subscribed, or the URL of a web page through # which the translators can contact you. MSGID_BUGS_ADDRESS = bug-make@gnu.org # This is the list of locale categories, beyond LC_MESSAGES, for which the # message catalogs shall be used. It is usually empty. EXTRA_LOCALE_CATEGORIES = make-dfsg-3.81.orig/po/POTFILES.in0000644000175000017500000000210510416553102016702 0ustar srivastasrivasta# List of source files containing translatable strings. # Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software # Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ar.c arscan.c commands.c dir.c expand.c file.c function.c getopt.c hash.c implicit.c job.c main.c misc.c read.c remake.c remote-cstms.c rule.c signame.c strcache.c variable.c variable.h vmsfunctions.c vmsjobs.c vpath.c make-dfsg-3.81.orig/po/Rules-quot0000644000175000017500000000337610416553102017143 0ustar srivastasrivasta# Special Makefile rules for English message catalogs with quotation marks. DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot .SUFFIXES: .insert-header .po-update-en en@quot.po-create: $(MAKE) en@quot.po-update en@boldquot.po-create: $(MAKE) en@boldquot.po-update en@quot.po-update: en@quot.po-update-en en@boldquot.po-update: en@boldquot.po-update-en .insert-header.po-update-en: @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ tmpdir=`pwd`; \ echo "$$lang:"; \ ll=`echo $$lang | sed -e 's/@.*//'`; \ LC_ALL=C; export LC_ALL; \ cd $(srcdir); \ if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ rm -f $$tmpdir/$$lang.new.po; \ else \ if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ :; \ else \ echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ exit 1; \ fi; \ fi; \ else \ echo "creation of $$lang.po failed!" 1>&2; \ rm -f $$tmpdir/$$lang.new.po; \ fi en@quot.insert-header: insert-header.sin sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header en@boldquot.insert-header: insert-header.sin sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header mostlyclean: mostlyclean-quot mostlyclean-quot: rm -f *.insert-header make-dfsg-3.81.orig/po/be.gmo0000644000175000017500000003132610416553102016226 0ustar srivastasrivastaÞ•ƒ4³L  ) 2 @ \ J} ;È > 3C ;w ³ "½ à (í  - F a t ƒ Œ •   .¯ Þ ö .C#X|•¬"¼ßèï"+>j„,žË%é,-< j&‹²Ò.ò!/Aœq /O#fЦ¸Ì Ü è ò ÿ #">a Œ ´»-×  06:q‡·Ð"ð.6G[ p{™ª!Â=ä6"Yh|(‘ º ÄÑä!ì *AYv&¦¶Óç6ê,!"N)q"›¾Íç"0#dT¹ ÈÖ:ï?*Rjh½[&M‚GÐ (&OGf®É4å%@Yi"’Vµ &)+P$|*¡FÌ+ +? k -| ª ³ $º $ß "!l'!1”!+Æ!8ò!.+"1Z"8Œ"9Å"3ÿ"23#0f#0—#_È#?($`h$YÉ$(#&&L&&s&<š&+×&''*;'%f'Œ'¤'¸'+Ô'(4 (9U((1¢("Ô( ÷(#)R(){)€)8)É)lØ)#E*$i*,Ž*.»*:ê*H%+4n+ £+°+Î+"ê+ ,5 ,$V,+{,=§,hå,`N-¯-É-æ-c.h..4™.Î.RÝ.0/G/[/y/4˜/ Í/=Û/0?60.v0¥0Fª0[ñ0&M16t17«1ã1 26"2@Y2;š2h;3c:DIzR/)&W~‚eQ€ƒYXZ#$Nu|v+Gno ]\rLbSl`m 2T s!A'_1>H^Ek4i[V(OgP 8KJ9w6dMy. ?7j,U-%t@B<}aCxfq{=F"5p0* # Directories # Files # Variables This program built for %s This program built for %s (%s) -S, --no-keep-going, --stop Turns off -k. -h, --help Print this message and exit. -p, --print-data-base Print make's internal database. -s, --silent, --quiet Don't echo commands. -w, --print-directory Print the current directory. Date %s uid = %d, gid = %d, mode = 0%o. (built-in): (did you mean TAB instead of 8 spaces?) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (search path) files, so far. terminal.# Also makes:# Commands currently running (THIS IS A BUG).# File does not exist.# File has been updated.# File has not been updated.# File is very old.# Last modified %s # Modification time never checked.# Successfully updated.# commands to execute# Not a target:%s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Deleting file `%s'*** Waiting for unfinished jobs....*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%xBad system callBroken pipeBus errorCurrent timeDanger signalError, empty command File `%s' does not exist. File `%s' was considered already. Finished updating file `%s'. I/O possibleIllegal InstructionInformation requestKilledMakefile `%s' was not foundMakefile from standard input specified twice.NoNo targetsNothing to be done for `%s'.Options: Parallel jobs (-j) are not supported on this platform.Reading makefile `%s'Reading makefiles... Redirected input from %s Redirected output to %s Removing intermediate files... Report bugs to Still updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)TerminatedUnknown builtin command '%s' Unknown error %dUpdating makefiles.... Usage: %s [options] [target] ... Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticcommand linecreating jobs pipedefaultempty string invalid as file nameenvironmentextraneous `%s'fopen (temporary file)fwrite (temporary file)invalid `override' directivemakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%snothe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunknown signalunlink (temporary file): virtual memory exhaustedwarning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed Project-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2003-10-21 11:50+0300 Last-Translator: Ales Nyakhaychyk Language-Team: Belarusian MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 0.9.6 # ТÑчкі # Файлы # ÐŸÐµÑ€Ð°Ð¼ÐµÐ½Ð½Ñ‹Ñ Ð“Ñта праграма пабудавана Ð´Ð»Ñ %s ГÑта праграма падубавана Ð´Ð»Ñ %s (%s) -S, --no-keep-going, --stop Выключае -k. -h, --help Друкуе гÑтае паведамленьне й выходзіць. -p, --print-data-base Друкуе нутраную базу даньнÑÑž make. -s, --silent, --quiet Ðе адлюÑтроўваць загады. -w, --print-directory Друкуе бÑгучую Ñ‚Ñчку. Дата %s uid = %d, gid = %d, Ñ€Ñжым = 0%o. (убудаваны): (вы маеце на ўвазе TAB замеÑÑ‚ 8 прагалаў?) (з "%s", радок %lu) (з"%s", радок %lu): (назва муÑіла быць абрÑзана) (нÑма дапомнае мÑты) (пошук шлÑху) файлаў, так далёка. Ñ‚Ñрмінал.# Так Ñама робÑцца:# Загады, што выконваюцца зараз (ГЭТР- ПÐМЫЛКÐ).# Файл Ð½Ñ Ð¹Ñнуе.# Файл быў абноўлены.# Файл Ð½Ñ Ð±Ñ‹Ñž абноўлены.# Файл вельмі Ñтары.# ÐпошнÑе зьмÑненьне %s # Ð§Ð°Ñ Ð·ÑŒÐ¼ÑÐ½ÐµÐ½ÑŒÐ½Ñ Ð½Ñ–ÐºÐ¾Ð»Ñ– не правÑраўÑÑ.# ПаÑьпÑхова абноўлены.# загады Ð´Ð»Ñ Ð²Ñ‹ÐºÐ°Ð½Ð°Ð½ÑŒÐ½Ñ# ÐÑ Ð¼Ñта:%s Ñпынена на 30 ÑÑкундаў...%s%s: %s%s: %s%s: загад не адшуканы%s: уваход у Ñ‚Ñчку "%s" %s: выхад з Ñ‚Ñчкі "%s" %s: адбітак чаÑу па-за дапушчальнымі межамі, падÑтаўлÑецца %s%s: недапушчальны выбар -- %c. %s: нерÑчаіÑны выбар -- %c. %s: выбар "%c%s" не дазвалÑе довад. %s: выбар "%s" - неадназначы. %s: выбар "%s" патрабуе довад. %s: выбар "--%s" не дазвалÑе довад. %s: выбар "-W %s" не дазвалÑе довад. %s: выбар "-W %s" - неадназначын. %s: выбар патрабуе довад -- %c. %s: нераÑпазнаны выбар "%c%s". %s: нераÑпазнаны выбар "--%s". %s: карыÑтальнік %lu (наÑамрÑч %lu), група %lu (наÑамрÑч %lu) %sÐÑма правіла каб зрабіць мÑту "%s"%s%s ÐÑма правіла каб зрабіць мÑту "%s", патрÑбную Ð´Ð»Ñ "%s"%s%s ГÑта вольнае праграмнае забеÑьпÑчÑньне; глÑдзіце зыходны код Ð´Ð»Ñ %sÐ¿Ð°Ð³Ð°Ð´Ð½ÐµÐ½ÑŒÐ½Ñ Ð°Ð± раÑпаўÑюджваньні. ÐÑ Ð¹Ñнуе ÐІЯКÐЕ гарантыі, нават аб %sмагчымаÑьці выкарыÑÑ‚Ð½ÑŒÐ½Ñ Ð·ÑŒ Ñкой небудзь мÑтай. %s[%u]: уваход у Ñ‚Ñчку "%s" %s[%u]: выхад з Ñ‚Ñчкі "%s" *** ВыдалÑецца файл "%s"*** Чакаюцца Ð½ÐµÐ·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ñ‹Ñ Ð¿Ñ€Ð°Ñ†Ñ‹....*** [%s] ВыдалÑецца файл "%s"*** [%s] Памылка %d*** [%s] Памылка 0x%xДрÑнны ÑÑ‹ÑÑ‚Ñмны выклікЗламаны трубаправодПамылка шыныБÑгучы чаÑСыгнал пагрозыПамылка! Парожні загад. Файл "%s" Ð½Ñ Ð¹Ñнуе. Файл "%s" ужо быў разгледжаны. Скончана абнаўленьне файла "%s". магчым У/Ð’ÐÐµÐ´Ð°Ð¿ÑƒÑˆÑ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ñ–Ð½ÑтрукцыÑЗапыт аб зьвеÑткахЗабітыMakefile "%s" Ð½Ñ Ð·Ð½Ð¾Ð¹Ð´Ð·ÐµÐ½Makefile Ñа Ñтандартнага ўводу зададзены двойчы.ÐеÐÑма мÑÑ‚Ðічога Ð½Ñ Ð±Ñ‹Ð»Ð¾ зроблена Ð´Ð»Ñ "%s".Выбары: ÐŸÐ°Ñ€Ð°Ð»ÐµÐ»ÑŒÐ½Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ (-j) не падтрымліваюцца на гÑтае плÑтхорме.Чытаецца make-файл "%s"Чытаюцца make-файлы... Перанакіраваны ўвод з %s Перанакіраваны вывад у %s ВыдалÑюцца Ð¿Ñ€Ð°Ð¼ÐµÐ¶ÐºÐ°Ð²Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ñ‹... ПаведамлÑйце пра памылкі на . УÑÑ‘ ÑÑˆÑ Ð°Ð±Ð½Ð°ÑžÐ»Ñецца файл "%s". СпыненСпынена (Ñыгнал)Спынен (tty увод)Спынен (вывад на tty)ЗавершаныÐевÑдомы ўбудаваны загад "%s". ÐевÑÐ´Ð¾Ð¼Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° %dÐбнаўлÑюцца make-файлы.... ВыкарыÑтаньне: %s [выбары] [мÑта] ... Увага! Файл "%s" мае Ñ‡Ð°Ñ Ð·ÑŒÐ¼ÑÐ½ÐµÐ½ÑŒÐ½Ñ %.2g Ñ, Ñкі ÑˆÑ‡Ñ Ð½Ðµ надышоў.Увага! Файл "%s" мае Ñ‡Ð°Ñ Ð·ÑŒÐ¼ÑненьнÑ, Ñкі ÑˆÑ‡Ñ Ð½Ðµ надышоў.Ðкно зьменена"%s" - ÑаÑтарÑл(а).дырÑктыва "override"Ñпроба выкарыÑтаць непадтрымліваемую мажліваÑьць: "%s"аўтаматычназагадны радокÑтвараецца трубаправод працдапомныпуÑты радок нерÑчаіÑны Ñž ÑкаÑьці назвы файлааÑÑродзьдзезьнешні "%s"fopen (чаÑовы файл)fwrite (чаÑовы файл)нерÑчаіÑÐ½Ð°Ñ Ð´Ñ‹Ñ€Ñктыва "override"make-файлпрапушчаны "endef", незавершаны "define"прапушчаны "endif"прапушчана правіла перад загадаміпрапушчан падзÑлÑльнік %sневыбар "-%c" патрабуе Ñтаноўчы цÑлы доваддакрананьне да ўдзельніку архіва недаÑтупна на VMStouch: архіў "%s" Ð½Ñ Ð¹Ñнуеtouch: удзельнік "%s" Ð½Ñ Ð¹Ñнуе Ñž "%s"touch: "%s" - гÑта не Ñ€ÑчаіÑны архіўневÑдомы Ñыгналunlink (чаÑовы файл): Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð°Ñ Ð¿Ð°Ð¼Ñць вычарпанаУвага! ÐÑÐ²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°Ñ Ð¿ÐµÑ€Ð°Ð¼ÐµÐ½Ð½Ð°Ñ "%.*s"windows32_openpipe (): памылка Ñž process_init_fd() make-dfsg-3.81.orig/po/be.po0000644000175000017500000011470110416553102016061 0ustar srivastasrivasta# SOME DESCRIPTIVE TITLE. # Copyright (C) 2002, 2003 Free Software Foundation, Inc. # Ales Nyakhaychyk , 2002, 2003. # 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: 2003-10-21 11:50+0300\n" "Last-Translator: Ales Nyakhaychyk \n" "Language-Team: Belarusian \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 "Ñпроба выкарыÑтаць непадтрымліваемую мажліваÑьць: \"%s\"" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "дакрананьне да ўдзельніку архіва недаÑтупна на VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: архіў \"%s\" Ð½Ñ Ð¹Ñнуе" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: \"%s\" - гÑта не Ñ€ÑчаіÑны архіў" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: удзельнік \"%s\" Ð½Ñ Ð¹Ñнуе Ñž \"%s\"" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (назва муÑіла быць абрÑзана)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Дата %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, Ñ€Ñжым = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] ВыдалÑецца файл \"%s\"" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** ВыдалÑецца файл \"%s\"" #: commands.c:599 msgid "# commands to execute" msgstr "# загады Ð´Ð»Ñ Ð²Ñ‹ÐºÐ°Ð½Ð°Ð½ÑŒÐ½Ñ" #: commands.c:602 msgid " (built-in):" msgstr " (убудаваны):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (з\"%s\", радок %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# ТÑчкі\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "" #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "" #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "" #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Ðе" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " файлаў, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "не" #: dir.c:1058 msgid " impossibilities" msgstr "" #: dir.c:1062 msgid " so far." msgstr " так далёка." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr "" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "" #: expand.c:266 msgid "unterminated variable reference" msgstr "" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "" #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "" #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" #: 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 "" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "ВыдалÑюцца Ð¿Ñ€Ð°Ð¼ÐµÐ¶ÐºÐ°Ð²Ñ‹Ñ Ñ„Ð°Ð¹Ð»Ñ‹...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: адбітак чаÑу па-за дапушчальнымі межамі, падÑтаўлÑецца %s" #: file.c:782 msgid "Current time" msgstr "БÑгучы чаÑ" #: file.c:881 msgid "# Not a target:" msgstr "# ÐÑ Ð¼Ñта:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "" #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "" #: file.c:907 msgid "# Command-line target." msgstr "" #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "" #: file.c:911 msgid "# Implicit rule search has been done." msgstr "" #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "" #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "" #: file.c:919 msgid "# Also makes:" msgstr "# Так Ñама робÑцца:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Ð§Ð°Ñ Ð·ÑŒÐ¼ÑÐ½ÐµÐ½ÑŒÐ½Ñ Ð½Ñ–ÐºÐ¾Ð»Ñ– не правÑраўÑÑ." #: file.c:927 msgid "# File does not exist." msgstr "# Файл Ð½Ñ Ð¹Ñнуе." #: file.c:929 msgid "# File is very old." msgstr "# Файл вельмі Ñтары." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# ÐпошнÑе зьмÑненьне %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Файл быў абноўлены." #: file.c:937 msgid "# File has not been updated." msgstr "# Файл Ð½Ñ Ð±Ñ‹Ñž абноўлены." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Загады, што выконваюцца зараз (ГЭТР- ПÐМЫЛКÐ)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "" #: file.c:953 msgid "# Successfully updated." msgstr "# ПаÑьпÑхова абноўлены." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "" #: file.c:960 msgid "# Failed to be updated." msgstr "" #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Файлы" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "" #: function.c:1453 #, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "" #: function.c:1464 #, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "памылка Ñž CreatePipe() (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): памылка Ñž process_init_fd()\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "" #: function.c:2101 #, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "ÐÑ Ð·Ñ€Ð¾Ð±Ð»ÐµÐ½Ð° Ð´Ð»Ñ Ð³Ñтае плÑтформы: Ñ„ÑƒÐ½ÐºÑ†Ñ‹Ñ \"%s\"" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: выбар \"%s\" - неадназначы.\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: выбар \"--%s\" не дазвалÑе довад.\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: выбар \"%c%s\" не дазвалÑе довад.\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: выбар \"%s\" патрабуе довад.\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: нераÑпазнаны выбар \"--%s\".\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: нераÑпазнаны выбар \"%c%s\".\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: недапушчальны выбар -- %c.\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: нерÑчаіÑны выбар -- %c.\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: выбар патрабуе довад -- %c.\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: выбар \"-W %s\" - неадназначын.\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: выбар \"-W %s\" не дазвалÑе довад.\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (чаÑовы файл)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Памылка 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Памылка %d" #: job.c:399 msgid " (core dumped)" msgstr "" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Чакаюцца Ð½ÐµÐ·Ð°Ð²ÐµÑ€ÑˆÐ°Ð½Ñ‹Ñ Ð¿Ñ€Ð°Ñ†Ñ‹...." #: 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 "" #: 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 "" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "" #: job.c:862 msgid "write jobserver" msgstr "" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "" #: job.c:1383 #, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "" #: job.c:1718 msgid "read jobs pipe" msgstr "" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "" #: 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 #, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "" #: 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: загад не адшуканы" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "" #: 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 зьменена (раней \"%s\", зараз \"%s\")" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" #: main.c:291 msgid "Options:\n" msgstr "Выбары:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr "" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr "" " -h, --help Друкуе гÑтае паведамленьне й выходзіць.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr " -p, --print-data-base Друкуе нутраную базу даньнÑÑž make.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Ðе адлюÑтроўваць загады.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Выключае -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Друкуе бÑгучую Ñ‚Ñчку.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" #: main.c:549 msgid "empty string invalid as file name" msgstr "пуÑты радок нерÑчаіÑны Ñž ÑкаÑьці назвы файла" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "" #: main.c:670 #, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" #: main.c:677 #, c-format msgid "" "\n" "Unhandled exception filter called from program %s\n" "ExceptionCode = %lx\n" "ExceptionFlags = %lx\n" "ExceptionAddress = %lx\n" msgstr "" #: main.c:685 #, c-format msgid "Access violation: write operation at address %lx\n" msgstr "" #: main.c:686 #, c-format msgid "Access violation: read operation at address %lx\n" msgstr "" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s Ñпынена на 30 ÑÑкундаў..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile Ñа Ñтандартнага ўводу зададзены двойчы." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (чаÑовы файл)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (чаÑовы файл)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "ÐŸÐ°Ñ€Ð°Ð»ÐµÐ»ÑŒÐ½Ñ Ð¿Ñ€Ð°Ñ†Ñ‹ (-j) не падтрымліваюцца на гÑтае плÑтхорме." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "" #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" #: main.c:1684 msgid "dup jobserver" msgstr "" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" #: main.c:1710 msgid "creating jobs pipe" msgstr "Ñтвараецца трубаправод прац" #: main.c:1725 msgid "init jobserver pipe" msgstr "" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "ÐбнаўлÑюцца make-файлы....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "" #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "" #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefile \"%s\" Ð½Ñ Ð·Ð½Ð¾Ð¹Ð´Ð·ÐµÐ½" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "" #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (чаÑовы файл): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "" #: main.c:2191 msgid "No targets" msgstr "ÐÑма мÑÑ‚" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "ВыкарыÑтаньне: %s [выбары] [мÑта] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "ГÑта праграма пабудавана Ð´Ð»Ñ %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "ГÑта праграма падубавана Ð´Ð»Ñ %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "ПаведамлÑйце пра памылкі на .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "выбар \"-%c\" патрабуе Ñтаноўчы цÑлы довад" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "выбар \"-%c\" патрабуе Ñтаноўчы цÑлы довад" #: 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 "" "%s ГÑта вольнае праграмнае забеÑьпÑчÑньне; глÑдзіце зыходны код длÑ\n" "%sÐ¿Ð°Ð³Ð°Ð´Ð½ÐµÐ½ÑŒÐ½Ñ Ð°Ð± раÑпаўÑюджваньні. ÐÑ Ð¹Ñнуе ÐІЯКÐЕ гарантыі, нават аб\n" "%sмагчымаÑьці выкарыÑÑ‚Ð½ÑŒÐ½Ñ Ð·ÑŒ Ñкой небудзь мÑтай.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "ГÑта праграма пабудавана Ð´Ð»Ñ %s\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "ГÑта праграма падубавана Ð´Ð»Ñ %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: уваход у невÑдомую Ñ‚Ñчку" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: выхад зь невÑдомае Ñ‚Ñчкі" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: уваход у Ñ‚Ñчку \"%s\"\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: выхад з Ñ‚Ñчкі \"%s\"\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: уваход у невÑдомую Ñ‚Ñчку" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: выхад зь невÑдомае Ñ‚Ñчкі" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: уваход у Ñ‚Ñчку \"%s\"\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: выхад з Ñ‚Ñчкі \"%s\"\n" #: misc.c:285 msgid ". Stop.\n" msgstr "" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "ÐевÑÐ´Ð¾Ð¼Ð°Ñ Ð¿Ð°Ð¼Ñ‹Ð»ÐºÐ° %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 "Ð²Ñ–Ñ€Ñ‚ÑƒÐ°Ð»ÑŒÐ½Ð°Ñ Ð¿Ð°Ð¼Ñць вычарпана" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: карыÑтальнік %lu (наÑамрÑч %lu), група %lu (наÑамрÑч %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "" #: misc.c:894 #, fuzzy msgid "write error" msgstr "Памылка шыны" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Чытаюцца make-файлы...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Чытаецца make-файл \"%s\"" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (нÑма дапомнае мÑты)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (пошук шлÑху)" #: read.c:321 #, c-format msgid " (don't care)" msgstr "" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr "" #: read.c:623 msgid "invalid syntax in conditional" msgstr "" #: read.c:633 msgid "extraneous `endef'" msgstr "" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "" #: read.c:662 msgid "empty `override' directive" msgstr "" #: read.c:687 msgid "invalid `override' directive" msgstr "нерÑчаіÑÐ½Ð°Ñ Ð´Ñ‹Ñ€Ñктыва \"override\"" #: read.c:854 msgid "commands commence before first target" msgstr "" #: read.c:905 msgid "missing rule before commands" msgstr "прапушчана правіла перад загадамі" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "прапушчан падзÑлÑльнік %s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (вы маеце на ўвазе TAB замеÑÑ‚ 8 прагалаў?)" #: read.c:1152 msgid "missing target pattern" msgstr "" #: read.c:1154 msgid "multiple target patterns" msgstr "" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "" #: read.c:1286 msgid "missing `endif'" msgstr "прапушчаны \"endif\"" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "прапушчаны \"endef\", незавершаны \"define\"" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "зьнешні \"%s\"" #: read.c:1482 msgid "only one `else' per conditional" msgstr "" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Ðічога Ð½Ñ Ð±Ñ‹Ð»Ð¾ зроблена Ð´Ð»Ñ \"%s\"." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "\"%s\" - ÑаÑтарÑл(а)." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sÐÑма правіла каб зрабіць мÑту \"%s\"%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%s ÐÑма правіла каб зрабіць мÑту \"%s\", патрÑбную Ð´Ð»Ñ \"%s\"%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Файл \"%s\" ужо быў разгледжаны.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "УÑÑ‘ ÑÑˆÑ Ð°Ð±Ð½Ð°ÑžÐ»Ñецца файл \"%s\".\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Скончана абнаўленьне файла \"%s\".\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Файл \"%s\" Ð½Ñ Ð¹Ñнуе.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "" #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "" #: 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 "" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "" #: 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 "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr "" #: 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 "" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "" #: 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 "Увага! Файл \"%s\" мае Ñ‡Ð°Ñ Ð·ÑŒÐ¼ÑненьнÑ, Ñкі ÑˆÑ‡Ñ Ð½Ðµ надышоў." #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Увага! Файл \"%s\" мае Ñ‡Ð°Ñ Ð·ÑŒÐ¼ÑÐ½ÐµÐ½ÑŒÐ½Ñ %.2g Ñ, Ñкі ÑˆÑ‡Ñ Ð½Ðµ надышоў." #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" #: rule.c:575 msgid " terminal." msgstr " Ñ‚Ñрмінал." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "" #: signame.c:85 msgid "unknown signal" msgstr "невÑдомы Ñыгнал" #: signame.c:93 msgid "Hangup" msgstr "" #: signame.c:96 msgid "Interrupt" msgstr "" #: signame.c:99 msgid "Quit" msgstr "" #: signame.c:102 msgid "Illegal Instruction" msgstr "ÐÐµÐ´Ð°Ð¿ÑƒÑˆÑ‡Ð°Ð»ÑŒÐ½Ð°Ñ Ñ–Ð½ÑтрукцыÑ" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "" #: signame.c:110 msgid "Aborted" msgstr "" #: signame.c:113 msgid "IOT trap" msgstr "" #: signame.c:116 msgid "EMT trap" msgstr "" #: signame.c:119 msgid "Floating point exception" msgstr "" #: signame.c:122 msgid "Killed" msgstr "Забіты" #: signame.c:125 msgid "Bus error" msgstr "Памылка шыны" #: signame.c:128 msgid "Segmentation fault" msgstr "" #: signame.c:131 msgid "Bad system call" msgstr "ДрÑнны ÑÑ‹ÑÑ‚Ñмны выклік" #: signame.c:134 msgid "Broken pipe" msgstr "Зламаны трубаправод" #: signame.c:137 msgid "Alarm clock" msgstr "" #: signame.c:140 msgid "Terminated" msgstr "Завершаны" #: signame.c:143 msgid "User defined signal 1" msgstr "" #: signame.c:146 msgid "User defined signal 2" msgstr "" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "" #: signame.c:157 msgid "Power failure" msgstr "" #: signame.c:160 msgid "Stopped" msgstr "Спынен" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Спынен (tty увод)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Спынен (вывад на tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Спынена (Ñыгнал)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "" #: signame.c:175 msgid "File size limit exceeded" msgstr "" #: signame.c:178 msgid "Virtual timer expired" msgstr "" #: signame.c:181 msgid "Profiling timer expired" msgstr "" #: signame.c:187 msgid "Window changed" msgstr "Ðкно зьменена" #: signame.c:190 msgid "Continued" msgstr "" #: signame.c:193 msgid "Urgent I/O condition" msgstr "" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "магчым У/Ð’" #: signame.c:203 msgid "SIGWIND" msgstr "" #: signame.c:206 msgid "SIGPHONE" msgstr "" #: signame.c:212 msgid "Resource lost" msgstr "" #: signame.c:215 msgid "Danger signal" msgstr "Сыгнал пагрозы" #: signame.c:218 msgid "Information request" msgstr "Запыт аб зьвеÑтках" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "" #: 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 "дапомны" #: variable.c:1372 msgid "environment" msgstr "аÑÑродзьдзе" #: variable.c:1375 msgid "makefile" msgstr "make-файл" #: variable.c:1378 msgid "environment under -e" msgstr "" #: variable.c:1381 msgid "command line" msgstr "загадны радок" #: variable.c:1384 msgid "`override' directive" msgstr "дырÑктыва \"override\"" #: variable.c:1387 msgid "automatic" msgstr "аўтаматычна" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (з \"%s\", радок %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# ПераменныÑ\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "Увага! ÐÑÐ²Ñ‹Ð·Ð½Ð°Ñ‡Ð°Ð½Ð°Ñ Ð¿ÐµÑ€Ð°Ð¼ÐµÐ½Ð½Ð°Ñ \"%.*s\"" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "ÐевÑдомы ўбудаваны загад \"%s\".\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Памылка! Парожні загад.\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Перанакіраваны ўвод з %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Перанакіраваны вывад у %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Ðе задавайце -j ці --jobs, калі sh.exe недаÑтупны." #~ msgid "no file name for `%sinclude'" #~ msgstr "нÑма назвы файла Ð´Ð»Ñ \"%sinclude\"" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# ÐÑма файлаў." #~ msgid "DIRECTORY" #~ msgstr "ТЭЧКÐ" #~ msgid "FILE" #~ msgstr "ФÐЙЛ" #~ msgid "Read FILE as a makefile" #~ msgstr "Чытае ФÐЙЛ Ñк make-файл" #~ msgid "Entering" #~ msgstr "Уваход у" #~ msgid "Leaving" #~ msgstr "выхад з" #~ msgid "# No variables." #~ msgstr "# ÐÑма пераменных." make-dfsg-3.81.orig/po/boldquot.sed0000644000175000017500000000033110416553102017452 0ustar srivastasrivastas/"\([^"]*\)"/“\1â€/g s/`\([^`']*\)'/‘\1’/g s/ '\([^`']*\)' / ‘\1’ /g s/ '\([^`']*\)'$/ ‘\1’/g s/^'\([^`']*\)' /‘\1’ /g s/“â€/""/g s/“/“/g s/â€/â€/g s/‘/‘/g s/’/’/g make-dfsg-3.81.orig/po/da.gmo0000644000175000017500000010155710416553102016230 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðNPOQPkP'‡P¯PÀPÉP)çPQ'Q,EQrQ+ŽQºQ ÎQ$ÜQ+R -R%NRQtRRÆRGS=aS^ŸSmþSElTI²TvüTDsUH¸UeV[gV>ÃV;WX>WH—WƒàWtdX€ÙX>ZYY™YGóY6;ZFrZE¹Z<ÿZ<[M[#l[[Ÿ[)µ[ß[ñ[\!\>\X\ n\ z\…\ Ž\›\º\ Ê\Ö\æ\,û\>(]g]‚]˜]"¶]Ù]ó]' ^,5^(b^(‹^(´^Ý^ñ^"_'1_.Y_ˆ_¨_#À_5ä_`/8`h`-„`&²`Ù`ó`)aB,aoaa˜aŸa¸aÒaía+ b5bQb-mb›b#»b-ßb. c"co&¢o&Éo ðo)úo$p"@p cp;mp ©p-¶p-äp=q0Pqq™q-­qÛqâqõq% r&/r5Vr=ŒrÊrârÿrs+.s'Zs%‚s*¨sÓs8ìs-%t St`titqt‚tžt¦t·tÔtót= u*Hu4su ¨u1³uåu#v($vMvmvvœv³vÌváv ÿv w%w$>wcw‚w<žw5Ûwx%x>xTx7hx  x0«x>Üx7y7Sy)‹y>µy ôy&z)zBzKz jzxz$‘z¶zÈz Îz Ûzèz8øz-1{<_{œ{´{Í{í{2 |,@|m|Š|'§|@Ï|}&}?}Q}p}†}%›}-Á}ï}~3~7:~6r~©~Æ~Õ~$ô~4(N w6˜.Ïþ4€(S€$|€9¡€,Û€ 31e‚B?à2 ‚0S‚Q„‚/Ö‚#ƒ4*ƒ_ƒCÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-10-05 22:56+0200 Last-Translator: Byrial Ole Jensen Language-Team: Danish MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit # %u 'vpath'-søgestier. # %u implicitte regler, %u # %u mønsterspecifikke variabelværdier # Filkataloger # Filer # Afsluttet makedatabase %s # Generel ('VPATH'-variabel) søgesti: # # Implicitte regler. # Makedatabase, udskrevet %s # Ingen generel ('VPATH'-variabel) søgesti. # Ingen implicitte regler. # Ingen mønsterspecifikke variabelværdier. # VPATH-søgestier # Variabler # Statistik for fil-hash-spande: # Talte %d argumenter i fejlet igangsætning Dette program er bygget til %s Dette program er bygget til %s (%s) --debug[=FLAG] Udskriv forskellige slags fejlsøgningsinformation. --no-print-directory Slå -w fra, selv hvis det var slået til automatisk. --warn-undefined-variables Advar når en udefineret variabel bruges. -B, --always-make Skab alle mål betingelsesløst. -C KATALOG, --directory=KATALOG Skift allerførst til KATALOG. -I KATALOG, --include-dir=KATALOG Søg i KATALOG efter inkluderede makefiler. -R, --no-builtin-variables Slå de indbyggede variabelværdier fra. -S, --no-keep-going, --stop Slår -k fra. -W FIL, --what-if=FIL, --new-file=FIL, --assume-new=FIL Anse FIL som værende nyskabt. -b, -m Ignoreret af hensyn til kompabilitet. -d Udskriv en masse fejlsøgningsinformation. -e, --environment-overrides Miljøvariable har forrang for makefiler. -f FIL, --file=FIL, --makefile=FIL Læs FIL som en makefil. -h, --help Udskriv denne besked og afslut. -i, --ignore-errors Ignorér fejl fra kommandoer. -j [N], --jobs[=N] Tillad N samtidige job; uendelig mange job uden argument. -k, --keep-going Fortsæt selvom nogen mål ikke kan skabes. -l [N], --load-average[=N], --max-load[=N] Start ikke flere job medmindre belastningen er under N. -n, --just-print, --dry-run, --recon Udfør ikke nogen kommandoer; udskriv dem bare. -o FIL, --old-file=FIL, --assume-old=FIL Anse FIL som værende meget gammel og genskab den ikke. -p, --print-data-base Udskriv makes interne database. -q, --question Udfør ingen kommandoer; afslutningskoden fortæller status. -r, --no-builtin-rules Slå de indbyggede implicitte regler fra. -s, --silent, --quiet Udskriv ikke kommander. -t, --touch Berør mål i stedet for at genskabe dem. -v, --version Udskriv makes versionnummer og afslut. -w, --print-directory Udskriv det aktuelle katalog. Tidsstempel %s Ignorerer VPATH-navnet '%s'. uid = %d, gid = %d, modus = 0%o. (indbyggede): (core-fil efterladt) (mente du TAB i stedet for 8 mellemrum?) (ikke nødvendig) (fra '%s', linje %lu) (fra '%s', linje %lu): (navnet kan være forkortet) (ingen standard-endemål) (ingen ~-udfoldning) (eksternt) (søgesti) filer, umuligheder umuligheder i %lu kataloger. indtil videre. terminale.# Skaber også:# Kommandolinjemål.# Kommandoer udføres nu (DETTE ER EN FEJL).# Kommandoer for afhængigheder udføres nu (DETTE ER EN FEJL).# Opdatering mislykkedes.# Filen findes ikke.# Filen er blevet opdateret.# Filen er ikke blevet opdateret.# Filen er en mellemfil.# Filen er meget gammel.# Der er udført implicit regelsøgning.# Der er ikke udført implicit regelsøgning.# Implicit/statisk mønsterstamme: '%s' # Ugyldig værdi i 'command_state'-felt!# Ugyldig værdi i 'update_status'-felt!# Sidst ændret %s # Ændringstid ikke tjekket.# Behøver opdatering (-q er sat).# Falsk mål (forudsætning for .PHONY).# Værdifuld fil (forudsætning for .PRECIOUS).# Opdateret med godt resultat.# kommandoer at udføre# %s (enhed %d, inode [%d,%d,%d]): # %s (enhed %d, inode [%d,%d,%d]): kunne ikke åbnes. # %s (enhed %ld, inode %ld): # %s (enhed %ld, inode %ld): kunne ikke åbnes. # %s (nøgle %s, mtime %d): # %s (nøgle %s, mtime %d): kunne ikke åbnes. # %s: kunne ikke undersøges med stat. # Ingen 'vpath'-søgestier# Ikke et mål:# Statistik for variabelsæt-hash-spande: %s (linje %d) Forkert skal-kontekst (!unixy && !batch_mode_shell) %s er standset i 30 sekunder...%s%s: %s%s: %s%s: Kommando ikke fundet%s: Går til katalog '%s' %s: Forlader katalog '%s' %s; Skalprogram ikke fundet%s: Tidsstempel i forkert område; bruger %s%s: ulovligt tilvalg -- %c %s: ugyldigt tilvalg -- %c %s: tilvalg '%c%s' tillader ikke et argument %s: tilvalg '%s' er flertydigt %s tilvalg '%s' kræver et argument %s: tilvalg '--%s' tillader ikke et argument %s: tilvalg '-W %s' tillader ikke et argument %s: tilvalg '-W %s' er flertydigt %s: tilvalg kræver et argument -- %c %s: ikke genkendt tilvalg '%c%s' %s: ikke genkendt tilvalg '--%s' %s: bruger %lu (reelt %lu), gruppe %lu (reelt %lu) %sIngen regel til at skabe mål '%s'%s%sIngen regel til at skabe mål '%s' som behøves af '%s'%s%sDette er frit programmel; se kildeteksten for kopieringsbetingelser. %sDer er INGEN garanti; end ikke for SALGBARHED eller EGNETHED TIL NOGET %sBESTEMT FORMÅL. %s[%u]: Går til katalog '%s' %s[%u]: Forlader katalog '%s' *** Arkivmedlemmet '%s' er måske falsk; ikke slettet*** Afbrydelse. *** Sletter filen '%s'*** Sletter mellemfil '%s'*** Venter på uafsluttede job....*** Advarsel: .LOW_RESOLUTION_TIME-fil '%s' har et tidsstempel med høj opløsning*** [%s] Arkivmedlemmet '%s' er måske falsk; ikke slettet*** [%s] Sletter filen '%s'*** [%s] Fejl %d*** [%s] Fejl 0x%x*** [%s] Fejl 0x%x (ignoreret)-advarsel, CTRL-Y vil efterlade underproces(ser). -advarsel, du kan blive nødt til at genetablere CTRL-Y-behandling fra DCL. . Stop. .LIBPATTERNS-element '%s' er ikke et mønster; bruger VPATH-navnet '%s'AfbrudtAlarmen gikUndgår rekursion i implicitte regler. FEJL: num_pattern_rules forkert! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Ugyldigt systemkaldRøret blev brudtBusfejlBegrænsning af CPU-tid overskredetBarneadgangBarnet afsluttetCirkulær %s <- %s afhængighed opgivet.Afrydder midlertidig jobfil %s Afrydder midlertidig batchfil %s Sammenstød=%ld/%ld=%.0f%%Kommandoer for '%s' vil blive ignoreret til fordel for dem til '%s'.Kommandoer for fil '%s' blev fundet ved implicit regel-søgning,Kommandoer til '%s' er ved at blive udført. Kommandoer var angivet for fil '%s' i %s:%lu,Overvejer målfil '%s'. FortsættesKunne ikke skifte tilbage til det originale katalog.Opretter midlertidig jobfil %s Aktuel tidCustoms kan ikke eksporteres: %s FaresignalEmulatorfældeFejl ved spawn, %d Fejl, tom kommando Udfører i stedet %s Fremmed tekst efter '%s'-direktivFremmed tekst efter 'endef'-direktivGenskabelse af makefilen '%s' mislykkedes.Genskabelse af målfil '%s' mislykkedes. Filen '%s' findes ikke. Fil '%s' er allerede overvejet. Grænse for filstørrelse overskredetAfsluttet forudsætningerne for målfil '%s'. Opdatering af fil '%s' afsluttet. Flydendetalshjælpeprocessor ikke tilgængeligUndtagelsestilfælde ved flydendetals-operationFandt en implicit regel for '%s'. Fandt forudsætning '%s' som VPATH '%s' Opgiver målfil '%s'. Læg påI/O muligIOT_fældeUlovlig instruktionInkluderet makefil '%s' blev ikke fundet.InformationsforespørgselIndledende adgangAfbrudtDræbtLevende barn 0x%08lx (%s), PID %ld %s Fyldning=%ld/%ld=%.0f%%, Kigger efter en regel med mellemfil '%s'. Kigger efter en implicit regel for '%s'. Kigger efter en implicit arkivmedlemsregel for '%s'. Make-adgangMakefilen '%s' får måske make til at gå i ring; genskaber den ikke. Makefil '%s' blev ikke fundet.Makefil fra standard-ind er angivet to gange.Skaber '%s' pga. "always-make"-flag. Medlem '%s'%s: %ld byte ved %ld (/%ld). Skal genskabe målet '%s'. IngenIngen kommandoer til '%s' og ingen forudsætninger er ændrede. Ingen implicit regel for '%s' fundet. Ingen grund til at genskabe målet '%s'Ingen målIngen angivne mål og ingen makefil fundetIngenting at gøre for '%s'.Fik symbol for barn 0x%08lx (%s). Tilvalg: Parallelle job (-j) er ikke understøttet på denne platform.Strømmen gikForudsætningen '%s' er nyere end målet '%s'. Forudsætningen '%s' er ældre end målet '%s'. Forudsætningen '%s' angiver kun rækkefølgen ift. målet '%s'. Forudsætningen '%s' for målet '%s' findes ikke. Profileringstiden udløbBeskærer fil '%s'. Sætter barn 0x%08lx (%s), PID %ld%s i kæden. AfslutLæser makefil '%s'Læser makefiler... Høster taberbarn 0x%08lx, PID %ld %s Høster vinderbarn 0x%08lx, PID %ld %s Opdatering af fil '%s' er forgæves prøvet for nylig. Rekursiv variabel '%s' refererer (i sidste ende) til sig selvOmdirigeret fejl to %s Omdirigeret inddata from %s Omdirigeret uddata til %s Omgrupperinger=%d, Afviser umulig implicit forudsætning '%s'. Afviser umulig regelforudsætning '%s'. Frigav symbol for barn 0x%08lx (%s). Fjerner barn 0x%08lx, PID %ld%s fra kæde. Sletter mellemfiler ... Send fejlmeldinger (på engelsk) til . Sætter tilbage til enkelt job-tilstand (-j1).Resurse tabtSIGPHONESIGWINDLagersegmentfejlOpdaterer stadig fil '%s'. StoppetStoppet (signal)Stoppet (ville læse fra tty)Stoppet (ville skrive til tty)Målfil '%s' genskabt. Målet '%s' er med dobbelt-kolon og har ingen forudsætninger. Målet '%s' ikke genskabt på grund af fejl.Med -q trænger målfilen '%s' til at blive genskabt. TermineretForudsætningerne for '%s' er ved at blive skabt. Sporings-/stoppunkts-fældePrøver implicit forudsætning '%s'. Prøver mønsterregel med stammen '%.*s'. Prøver regelforudsætning '%s'. Ukendt indbygget kommando '%s' Ukendt fejl %dOpdaterer endemål.... Opdaterer makefiler.... Kritisk I/O-tilstandBrug: %s [tilvalg] [mål] ... BrugeradgangBrugerdefineret signal 1Brugerdefineret signal 2Bruger standardkommandoer for '%s'. Virtuel tidsgrænse overskredetAdvarsel: Tom omdirigering Advarsel: Ændringstiden for filen '%s' er %.2g s i fremtidenAdvarsel: Ændringstiden for filen '%s' er i fremtidenVinduet blev ændret[%s] Fejl %d (ignoreret)'%s' er tidssvarende.'override'-direktivforsøg på at bruge en ikke understøttet facilitet: '%s'automatiskmen '%s' bliver nu anset som samme fil som '%s'.kan ikke tildele %ld byte til hash-spande: hukommelsen opbrugtkan ikke ændre dobbelt-kolon '%s' til enkelt-kolon '%s'kan ikke ændre enkelt-kolon '%s' til dobbelt-kolon '%s'kan ikke gennemtvinge belastningsgrænse: kan ikke gennemtvinge belastningsgrænser på dette styrestystemkommandolinjekommandoer begynder før det første måloprettelse af jobledningforvalgtudført sleep(30). Fortsætter. dup jobservertomt 'override'-direktiven tom streng er ugyldig som filnavntomt variabelnavnmiljømiljø med -efremmed '%s'fremmed 'endef'find_and_set_shell stisøgning sætter default_shell = %s find_and_set_shell sætter default_shell = %s første argument til 'word'-functionen skal være større end 0fopen (midlertidig fil)fwrite (midlertidig fil)klargøring af jobserver-ledningintern fejl: '%s' command_stateintern fejl: ugyldig '--jobserver-fds'-streng '%s'intern fejl: flere '--jobserver-fds'-tilvalgugyldigt 'override'-direktivUgyldig syntaks i betingelselbr$ini_control fejlede med status = %dlbr$set_module kunne ikke udtrække modulinformation, status = %dmakefilmanglende 'endef', uafsluttet 'define'manglende 'endif'manglende regel før kommandoermanglende adskiller%smanglende målmønsterblandede implicitte og normale reglerblandede implicitte og statiske mønsterreglerflere målmønstreingenikke-numerisk første argument til 'word'-funktionenikke-numerisk første argument til 'wordlist'-funktionenikke-numerisk andet argument til 'wordlist'-funktionenkun én 'else' per betingelseread jobs pipesys$search mislykkedes med %d mål '%s' passer ikke til målmønstrettarget '%s' optræder mere end én gang i samme regel.målfil '%s' har både :- og ::-angivelsermålmønster indeholder ingen '%%''-%c'-tilvalget kræver et positivt heltalligt argument'berør arkivmedlem' er ikke tilgængelig på VMSberør: Arkivet '%s' findes ikkeberør: Forkert returkode fra ar_member_touch på '%s'berør: Medlemmet '%s' findes ikke i '%s'berør: '%s' er ikke et gyldigt arkivkan ikke åbne biblioteket '%s' for at søge medlemmet '%s'ukendt fejlsøgningsniveau-specifikation '%s'ukendt signalunlink (midlertidig fil): Uafsluttet kald til funktionen '%s'; manglende '%c'uafsluttet variabelreferencevirtuel hukommelse opbrugtadvarsel: Fejl i urets tid opdaget. Din bygning kan være ukomplet.advarsel: tvunget -jN i undermake: slår jobserver tilstand fra.advarsel: NUL-tegn set; resten af linjen ignoreresadvarsel: ignorerer gamle kommadoer for mål '%s'advarsel: jobserver ikke tilgængelig: bruger -j1. Tilføj '+' til ophavsmakeregel.advarsel: tilsidesætter kommandoer for mål '%s'advarsel: udefineret vaiabel '%.*s'windows32_openpipe(): process_init_fd() mislykkedes write jobservermake-dfsg-3.81.orig/po/da.po0000644000175000017500000013571710416553102016071 0ustar srivastasrivasta# Danish messages for make # Copyright (C) 2001 Free Software Foundation, Inc. # Byrial Ole Jensen , 2001 # 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 22:56+0200\n" "Last-Translator: Byrial Ole Jensen \n" "Language-Team: Danish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "forsøg på at bruge en ikke understøttet facilitet: '%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "'berør arkivmedlem' er ikke tilgængelig på VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "berør: Arkivet '%s' findes ikke" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "berør: '%s' er ikke et gyldigt arkiv" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "berør: Medlemmet '%s' findes ikke i '%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "berør: Forkert returkode fra ar_member_touch på '%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module kunne ikke udtrække modulinformation, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control fejlede med status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "kan ikke åbne biblioteket '%s' for at søge medlemmet '%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Medlem '%s'%s: %ld byte ved %ld (/%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (navnet kan være forkortet)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Tidsstempel %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, modus = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Afbrydelse.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Arkivmedlemmet '%s' er måske falsk; ikke slettet" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Arkivmedlemmet '%s' er måske falsk; ikke slettet" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Sletter filen '%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Sletter filen '%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# kommandoer at udføre" #: commands.c:602 msgid " (built-in):" msgstr " (indbyggede):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (fra '%s', linje %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Filkataloger\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: kunne ikke undersøges med stat.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (nøgle %s, mtime %d): kunne ikke åbnes.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (enhed %d, inode [%d,%d,%d]): kunne ikke åbnes.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (enhed %ld, inode %ld): kunne ikke åbnes.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (nøgle %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (enhed %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (enhed %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Ingen" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " filer, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "ingen" #: dir.c:1058 msgid " impossibilities" msgstr " umuligheder" #: dir.c:1062 msgid " so far." msgstr " indtil videre." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " umuligheder i %lu kataloger.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Rekursiv variabel '%s' refererer (i sidste ende) til sig selv" #: expand.c:266 msgid "unterminated variable reference" msgstr "uafsluttet variabelreference" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Kommandoer var angivet for fil '%s' i %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "Kommandoer for fil '%s' blev fundet ved implicit regel-søgning," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "men '%s' bliver nu anset som samme fil som '%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Kommandoer for '%s' vil blive ignoreret til fordel for dem til '%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "kan ikke ændre enkelt-kolon '%s' til dobbelt-kolon '%s'" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "kan ikke ændre dobbelt-kolon '%s' til enkelt-kolon '%s'" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Sletter mellemfil '%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Sletter mellemfiler ...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Tidsstempel i forkert område; bruger %s" #: file.c:782 msgid "Current time" msgstr "Aktuel tid" #: file.c:881 msgid "# Not a target:" msgstr "# Ikke et mål:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Værdifuld fil (forudsætning for .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Falsk mål (forudsætning for .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Kommandolinjemål." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# En uangivet makefil, evt. en fra MAKEFILES." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Der er udført implicit regelsøgning." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Der er ikke udført implicit regelsøgning." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Implicit/statisk mønsterstamme: '%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Filen er en mellemfil." #: file.c:919 msgid "# Also makes:" msgstr "# Skaber også:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Ændringstid ikke tjekket." #: file.c:927 msgid "# File does not exist." msgstr "# Filen findes ikke." #: file.c:929 msgid "# File is very old." msgstr "# Filen er meget gammel." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Sidst ændret %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Filen er blevet opdateret." #: file.c:937 msgid "# File has not been updated." msgstr "# Filen er ikke blevet opdateret." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Kommandoer udføres nu (DETTE ER EN FEJL)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Kommandoer for afhængigheder udføres nu (DETTE ER EN FEJL)." #: file.c:953 msgid "# Successfully updated." msgstr "# Opdateret med godt resultat." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Behøver opdatering (-q er sat)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Opdatering mislykkedes." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Ugyldig værdi i 'update_status'-felt!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Ugyldig værdi i 'command_state'-felt!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Filer" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# Statistik for fil-hash-spande:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "ikke-numerisk første argument til 'word'-funktionen" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "første argument til 'word'-functionen skal være større end 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "ikke-numerisk første argument til 'wordlist'-funktionen" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "ikke-numerisk andet argument til 'wordlist'-funktionen" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) mislykkedes (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) mislykkedes (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() mislykkedes (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe(): process_init_fd() mislykkedes\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Afrydder midlertidig batchfil %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Utilstrækkeligt antal argumenter (%d) til funktionen '%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Uimplementeret på denne platform: funktion '%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "Uafsluttet kald til funktionen '%s'; manglende '%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: tilvalg '%s' er flertydigt\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: tilvalg '--%s' tillader ikke et argument\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: tilvalg '%c%s' tillader ikke et argument\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s tilvalg '%s' kræver et argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ikke genkendt tilvalg '--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ikke genkendt tilvalg '%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ulovligt tilvalg -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ugyldigt tilvalg -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: tilvalg kræver et argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: tilvalg '-W %s' er flertydigt\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: tilvalg '-W %s' tillader ikke et argument\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "kan ikke tildele %ld byte til hash-spande: hukommelsen opbrugt" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Fyldning=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Omgrupperinger=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Sammenstød=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Kigger efter en implicit regel for '%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Kigger efter en implicit arkivmedlemsregel for '%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Undgår rekursion i implicitte regler.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Prøver mønsterregel med stammen '%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Afviser umulig implicit forudsætning '%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Afviser umulig regelforudsætning '%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Prøver implicit forudsætning '%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Prøver regelforudsætning '%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Fandt forudsætning '%s' som VPATH '%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Kigger efter en regel med mellemfil '%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (midlertidig fil)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Fejl 0x%x (ignoreret)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Fejl 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Fejl %d (ignoreret)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Fejl %d" #: job.c:399 msgid " (core dumped)" msgstr " (core-fil efterladt)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Venter på uafsluttede job...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Levende barn 0x%08lx (%s), PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (eksternt)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Høster taberbarn 0x%08lx, PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Høster vinderbarn 0x%08lx, PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Afrydder midlertidig jobfil %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Fjerner barn 0x%08lx, PID %ld%s fra kæde.\n" #: job.c:862 msgid "write jobserver" msgstr "write jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Frigav symbol for barn 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() fejlede ved igangsætning af proces (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Talte %d argumenter i fejlet igangsætning\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Sætter barn 0x%08lx (%s), PID %ld%s i kæden.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Fik symbol for barn 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "read jobs pipe" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "kan ikke gennemtvinge belastningsgrænser på dette styrestystem" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "kan ikke gennemtvinge belastningsgrænse: " #: 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 "process_easy() fejlede ved igangsætning af proces (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make høstede børne-pid %d, venter endnu på pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Kommando ikke fundet" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s; Skalprogram ikke fundet" #: 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 ændret (var '%s', nu '%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Opretter midlertidig jobfil %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (linje %d) Forkert skal-kontekst (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Tilvalg:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Ignoreret af hensyn til kompabilitet.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make Skab alle mål betingelsesløst.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C KATALOG, --directory=KATALOG\n" " Skift allerførst til KATALOG.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d Udskriv en masse fejlsøgningsinformation.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=FLAG] Udskriv forskellige slags " "fejlsøgningsinformation.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Miljøvariable har forrang for makefiler.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f FIL, --file=FIL, --makefile=FIL\n" " Læs FIL som en makefil.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Udskriv denne besked og afslut.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Ignorér fejl fra kommandoer.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I KATALOG, --include-dir=KATALOG\n" " Søg i KATALOG efter inkluderede makefiler.\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] Tillad N samtidige job; uendelig mange job " "uden argument.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Fortsæt selvom nogen mål ikke kan skabes.\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" " Start ikke flere job medmindre belastningen er " "under N.\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" " Udfør ikke nogen kommandoer; udskriv dem " "bare.\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 FIL, --old-file=FIL, --assume-old=FIL\n" " Anse FIL som værende meget gammel og genskab " "den ikke.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr " -p, --print-data-base Udskriv makes interne database.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Udfør ingen kommandoer; afslutningskoden " "fortæller status.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules Slå de indbyggede implicitte regler fra.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr " -R, --no-builtin-variables Slå de indbyggede variabelværdier fra.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Udskriv ikke kommander.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Slår -k fra.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Berør mål i stedet for at genskabe dem.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr " -v, --version Udskriv makes versionnummer og afslut.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Udskriv det aktuelle katalog.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Slå -w fra, selv hvis det var slået til " "automatisk.\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 FIL, --what-if=FIL, --new-file=FIL, --assume-new=FIL\n" " Anse FIL som værende nyskabt.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Advar når en udefineret variabel bruges.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "en tom streng er ugyldig som filnavn" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "ukendt fejlsøgningsniveau-specifikation '%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Interrupt/undtagelse fanget (kode = 0x%x, addr = 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" "Uhåndteret undtagelsesfilter kaldt fra program %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Adgangskrænkelse: skriveoperation på adresse %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Adgangskrænkelse: læseoperation på adresse %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 sætter 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 stisøgning sætter default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s er standset i 30 sekunder..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "udført sleep(30). Fortsætter.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefil fra standard-ind er angivet to gange." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (midlertidig fil)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (midlertidig fil)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Parallelle job (-j) er ikke understøttet på denne platform." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Sætter tilbage til enkelt job-tilstand (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "intern fejl: flere '--jobserver-fds'-tilvalg" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "intern fejl: ugyldig '--jobserver-fds'-streng '%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "advarsel: tvunget -jN i undermake: slår jobserver tilstand fra." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "advarsel: jobserver ikke tilgængelig: bruger -j1. Tilføj '+' til " "ophavsmakeregel." #: main.c:1710 msgid "creating jobs pipe" msgstr "oprettelse af jobledning" #: main.c:1725 msgid "init jobserver pipe" msgstr "klargøring af jobserver-ledning" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Opdaterer makefiler....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefilen '%s' får måske make til at gå i ring; genskaber den ikke.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Genskabelse af makefilen '%s' mislykkedes." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Inkluderet makefil '%s' blev ikke fundet." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefil '%s' blev ikke fundet." #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Kunne ikke skifte tilbage til det originale katalog." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Udfører igen:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (midlertidig fil): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Ingen angivne mål og ingen makefil fundet" #: main.c:2191 msgid "No targets" msgstr "Ingen mål" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Opdaterer endemål....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "advarsel: Fejl i urets tid opdaget. Din bygning kan være ukomplet." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Brug: %s [tilvalg] [mål] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Dette program er bygget til %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Dette program er bygget til %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Send fejlmeldinger (på engelsk) til .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "'-%c'-tilvalget kræver et positivt heltalligt argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "'-%c'-tilvalget kræver et positivt heltalligt argument" #: 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 "" "%sDette er frit programmel; se kildeteksten for kopieringsbetingelser.\n" "%sDer er INGEN garanti; end ikke for SALGBARHED eller EGNETHED TIL NOGET\n" "%sBESTEMT FORMÅL.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "Dette program er bygget til %s\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "Dette program er bygget til %s (%s)\n" # %s giver dato og klokkeslæt #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Makedatabase, udskrevet %s" # %s giver dato og klokkeslæt #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Afsluttet makedatabase %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Går til et ukendt katalog" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Forlader et ukendt katalog" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Går til katalog '%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Forlader katalog '%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Går til et ukendt katalog" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Forlader et ukendt katalog" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Går til katalog '%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Forlader katalog '%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Stop.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Ukendt fejl %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 "virtuel hukommelse opbrugt" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: bruger %lu (reelt %lu), gruppe %lu (reelt %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Indledende adgang" #: misc.c:746 msgid "User access" msgstr "Brugeradgang" #: misc.c:794 msgid "Make access" msgstr "Make-adgang" #: misc.c:828 msgid "Child access" msgstr "Barneadgang" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Omdirigeret fejl to %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "write jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Læser makefiler...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Læser makefil '%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (ingen standard-endemål)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (søgesti)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (ikke nødvendig)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (ingen ~-udfoldning)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "Ugyldig syntaks i betingelse" #: read.c:633 msgid "extraneous `endef'" msgstr "fremmed 'endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "tomt variabelnavn" #: read.c:662 msgid "empty `override' directive" msgstr "tomt 'override'-direktiv" #: read.c:687 msgid "invalid `override' directive" msgstr "ugyldigt 'override'-direktiv" #: read.c:854 msgid "commands commence before first target" msgstr "kommandoer begynder før det første mål" #: read.c:905 msgid "missing rule before commands" msgstr "manglende regel før kommandoer" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "manglende adskiller%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (mente du TAB i stedet for 8 mellemrum?)" #: read.c:1152 msgid "missing target pattern" msgstr "manglende målmønster" #: read.c:1154 msgid "multiple target patterns" msgstr "flere målmønstre" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "målmønster indeholder ingen '%%'" #: read.c:1286 msgid "missing `endif'" msgstr "manglende 'endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Fremmed tekst efter 'endef'-direktiv" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "manglende 'endef', uafsluttet 'define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Fremmed tekst efter '%s'-direktiv" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "fremmed '%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "kun én 'else' per betingelse" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Misdannet per-mål variabeldefinition" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "blandede implicitte og statiske mønsterregler" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "blandede implicitte og normale regler" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "mål '%s' passer ikke til målmønstret" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "målfil '%s' har både :- og ::-angivelser" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "target '%s' optræder mere end én gang i samme regel." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "advarsel: tilsidesætter kommandoer for mål '%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "advarsel: ignorerer gamle kommadoer for mål '%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "advarsel: NUL-tegn set; resten af linjen ignoreres" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Ingenting at gøre for '%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "'%s' er tidssvarende." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Beskærer fil '%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sIngen regel til at skabe mål '%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sIngen regel til at skabe mål '%s' som behøves af '%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Overvejer målfil '%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Opdatering af fil '%s' er forgæves prøvet for nylig.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Fil '%s' er allerede overvejet.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Opdaterer stadig fil '%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Opdatering af fil '%s' afsluttet.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Filen '%s' findes ikke.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Advarsel: .LOW_RESOLUTION_TIME-fil '%s' har et tidsstempel med høj " "opløsning" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Fandt en implicit regel for '%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Ingen implicit regel for '%s' fundet.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Bruger standardkommandoer for '%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Cirkulær %s <- %s afhængighed opgivet." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Afsluttet forudsætningerne for målfil '%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Forudsætningerne for '%s' er ved at blive skabt.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Opgiver målfil '%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Målet '%s' ikke genskabt på grund af fejl." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Forudsætningen '%s' angiver kun rækkefølgen ift. målet '%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Forudsætningen '%s' for målet '%s' findes ikke.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Forudsætningen '%s' er nyere end målet '%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Forudsætningen '%s' er ældre end målet '%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Målet '%s' er med dobbelt-kolon og har ingen forudsætninger.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Ingen kommandoer til '%s' og ingen forudsætninger er ændrede.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Skaber '%s' pga. \"always-make\"-flag.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Ingen grund til at genskabe målet '%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; bruger VPATH-navnet '%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Skal genskabe målet '%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignorerer VPATH-navnet '%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Kommandoer til '%s' er ved at blive udført.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Genskabelse af målfil '%s' mislykkedes.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Målfil '%s' genskabt.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Med -q trænger målfilen '%s' til at blive genskabt.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Advarsel: Ændringstiden for filen '%s' er i fremtiden" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Advarsel: Ændringstiden for filen '%s' er %.2g s i fremtiden" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS-element '%s' er ikke et mønster" # "remote job exportation interface to the Customs daemon": jeg aner ikke # hvad der er tale om. I øvrigt ser remote-cstms.c forældet/ubrugt ud, og # koden er ikke understøttet af GNU... #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs kan ikke eksporteres: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Implicitte regler." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Ingen implicitte regler." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u implicitte regler, %u" #: rule.c:575 msgid " terminal." msgstr " terminale." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "FEJL: num_pattern_rules forkert! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "ukendt signal" # De fleste af signalnavnene fra signame.c er kopieret fra libc.da.po, # kun ganske enkelte findes ikke der. #: signame.c:93 msgid "Hangup" msgstr "Læg på" #: signame.c:96 msgid "Interrupt" msgstr "Afbrudt" #: signame.c:99 msgid "Quit" msgstr "Afslut" #: signame.c:102 msgid "Illegal Instruction" msgstr "Ulovlig instruktion" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Sporings-/stoppunkts-fælde" #: signame.c:110 msgid "Aborted" msgstr "Afbrudt" #: signame.c:113 msgid "IOT trap" msgstr "IOT_fælde" #: signame.c:116 msgid "EMT trap" msgstr "Emulatorfælde" #: signame.c:119 msgid "Floating point exception" msgstr "Undtagelsestilfælde ved flydendetals-operation" #: signame.c:122 msgid "Killed" msgstr "Dræbt" #: signame.c:125 msgid "Bus error" msgstr "Busfejl" #: signame.c:128 msgid "Segmentation fault" msgstr "Lagersegmentfejl" #: signame.c:131 msgid "Bad system call" msgstr "Ugyldigt systemkald" #: signame.c:134 msgid "Broken pipe" msgstr "Røret blev brudt" #: signame.c:137 msgid "Alarm clock" msgstr "Alarmen gik" #: signame.c:140 msgid "Terminated" msgstr "Termineret" #: signame.c:143 msgid "User defined signal 1" msgstr "Brugerdefineret signal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Brugerdefineret signal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Barnet afsluttet" #: signame.c:157 msgid "Power failure" msgstr "Strømmen gik" #: signame.c:160 msgid "Stopped" msgstr "Stoppet" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Stoppet (ville læse fra tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Stoppet (ville skrive til tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Stoppet (signal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Begrænsning af CPU-tid overskredet" #: signame.c:175 msgid "File size limit exceeded" msgstr "Grænse for filstørrelse overskredet" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtuel tidsgrænse overskredet" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profileringstiden udløb" #: signame.c:187 msgid "Window changed" msgstr "Vinduet blev ændret" #: signame.c:190 msgid "Continued" msgstr "Fortsættes" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Kritisk I/O-tilstand" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O mulig" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Resurse tabt" #: signame.c:215 msgid "Danger signal" msgstr "Faresignal" #: signame.c:218 msgid "Information request" msgstr "Informationsforespørgsel" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Flydendetalshjælpeprocessor ikke tilgængelig" #: 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 "forvalgt" #: variable.c:1372 msgid "environment" msgstr "miljø" #: variable.c:1375 msgid "makefile" msgstr "makefil" #: variable.c:1378 msgid "environment under -e" msgstr "miljø med -e" #: variable.c:1381 msgid "command line" msgstr "kommandolinje" #: variable.c:1384 msgid "`override' directive" msgstr "'override'-direktiv" #: variable.c:1387 msgid "automatic" msgstr "automatisk" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (fra '%s', linje %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# Statistik for variabelsæt-hash-spande:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variabler\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Mønsterspecifikke variabelværdier" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Ingen mønsterspecifikke variabelværdier." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u mønsterspecifikke variabelværdier" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "advarsel: udefineret vaiabel '%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search mislykkedes med %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Advarsel: Tom omdirigering\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "intern fejl: '%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-advarsel, CTRL-Y vil efterlade underproces(ser).\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-advarsel, du kan blive nødt til at genetablere CTRL-Y-behandling fra DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Ukendt indbygget kommando '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Fejl, tom kommando\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Omdirigeret inddata from %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Omdirigeret fejl to %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Omdirigeret uddata til %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Udfører i stedet %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Fejl ved spawn, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH-søgestier\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Ingen 'vpath'-søgestier" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u 'vpath'-søgestier.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Ingen generel ('VPATH'-variabel) søgesti." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Generel ('VPATH'-variabel) søgesti:\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Syntaksfejl, stadig inden i '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Fik et SIGCHLD; %u uhøstede børn.\n" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Angiv ikke -j eller --jobs hvis sh.exe ikke er tilgængelig." #~ msgid "Resetting make for single job mode." #~ msgstr "Sætter make tilbage til enkelt job-tilstand." #~ msgid "no file name for `%sinclude'" #~ msgstr "intet filnavn for '%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "mål '%s' efterlader forudsætningsmønstret tomt" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Ingen filer." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u filer i %u hash-spande .\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# %.3f filer per spand i gennemsnit, maks. %u filer i en spand.\n" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Stands proces for at tillade et fejlsøgningsprogram at hænge sig på" #~ msgid "# No variables." #~ msgstr "# Ingen variabler." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# %.1f variabler per spand i gennemsnit, maks. %u i en spand.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# %d.%d variabler per spand i gennemsnit, maks. %u i en spand.\n" make-dfsg-3.81.orig/po/de.gmo0000644000175000017500000007266210416553102016240 0ustar srivastasrivastaÞ•:ì £¼HIf&¦¶!¿-á -0^'tœ ³"Á@äo%o•J9PfŠ_ñ;Q3 ÁË"è (' P^w’¥ ·ÁÐÙ%ê  $ 3 .K 1z ¬ Å Ý ÷ (!>!&S!*z!&¥!+Ì!+ø!$"#9"#]")"-«"Ù"ò"$ #9.#h#3‡#»#.Õ#$ $;$$K$=p$"®$Ñ$ç$+%/%I%,c%%%®%,Ô%-& /&&P&w&—&·&/×&1' 9'E'#\'#€'6¤'Û'÷' ((4;(>p( ¯(+¹(*å()() 0)"<)'_)‡)–)¥)·) Ç) Ó)Ý)õ) *%"*H*$h*=*:Ë* +0'+X+ w+++!­+ Ï+Ü+ ö+, ,!,7,$M,'r,š,#º,Þ,"ù,-,5-b-)€-ª-!Ã-&å- .,. 3.@.I.%].ƒ.—. ª.´.#».0ß.'/38/+l/˜/-´/'â/ 0$0<'0!d0†0 ¤0*¯0Ú0'÷0 16)1 `1-n1-œ11Ê1ü123(2\2a2w2(2)¶2/à263G3_3y31’3-Ä3'ò3"4#=4 a4o4x4€4“4®4¶4Ç4Û4&ð4+56C5)z5(¤5 Í5*Ø56#6&=6d6„6¢6³6Î6æ6!û6737!I7k777¬7Ä7Ø7(í7 81 83R83†8º83Ö8 9%9=9P9X9 u9ƒ9!ž9À9 Ô9à9õ9:6:.O:8~:·:Î:æ:"ú:3;0Q;‚;Ÿ;'½;9å;<&(<O<_<|<“<'³<Û<ô<-÷<1%=2W=Š=ª=¹=,Ô=2>*4>_>6>,¶>"ã>3?):?"d?1‡?&¹?à?ï?0 @:@Z@=s@9±@1ë@.AHLA,•A"ÂA0åA B"B2BHBB‹C¥C&ÀCçC ùC$D.)D$XD0}D%®D+ÔDE E9"ED\Ex¡E§FKÂFCGrRGlÅGA2H6tH «H¶H0ÔH II..I]ImI&†I­IÃI ØI äI ðIûI( J5J >JIJ ^J.JA®J!ðJK0K"MK7pK¨K3¿K9óK4-L.bL.‘LÀL3ØL8 M2EM1xMªMÇM.âMMN(_NGˆN8ÐNX O+bOŽO©O'¿OCçO+PKP'gP:PÊPçP(Q,Q'LQ(tQ)Q"ÇQ(êQR1R%ORQuR6ÇR þR S")S-LS;zS!¶SØSëS T1!TCST —T*¤T)ÏTùTU )U-4U*bUUœU«U½UÓU âUíU* V7V;KV/‡V-·VHåV\.W1‹WH½WX $X70X/hX ˜X#¦XÊXÙX-ñXY8Y,XY/…Y7µY1íY Z)@Z!jZ8ŒZ'ÅZ;íZ)[(:[+c[6[ Æ[ Ð[Ü[ô[>\D\\\t\Œ\,¡\3Î\,]?/]To]0Ä]>õ]24^)g^‘^M—^)å^7_ G_=U_$“_1¸_ ê_Hõ_ >`=K`<‰`CÆ` a9$a;^aša$Ÿa'Äa2ìa4bJTb>Ÿb!Þb(c)c3Ec)yc6£c=Úc-dFdbdkdsd-‡d µdÀdÔdëd6e?:eJze7Åe-ýe+f4Df3yf'­f,Õfg& gGg]g%ygŸg#·gÛgêg*ùg$h?h^hyh”h³hBÈh i=i\Ui\²i/jY?j ™j$§jÌjéj/òj"k7k2Rk…kšk£k³kÆk8Ük,l;Bl~l–l*¯l#Úl4þl33mgm!†m-¨mDÖmn1$nVn$hnn%¨n.Înýno6o=Ro:o,Ëoøo p)0p0Zp8‹pÄp?äpa$q"†qJ©q+ôq$ rLEr&’r¹rÌr4çr&s%CsTisV¾s?t8UtWŽt;æt%"u5Hu ~uŒužu®š2`m?'[EõÒ*g6ã×nÚ›#KBëĶ¿7fä¡™ú+ìݺ‘{—Ó„-‰O|cÀwj‡¦0Mž}iJPy!Žñ¬ ÕÖ%ŸC«,YT¾Î$ê˯:¤.²I*¹Š 1 ½(!ü°t8Dµ€’WbzhíÆr ;à¨Ûl-È\Zö)$ôðÐî#:³Ù˜e/Q9áƒ2¢ à )Í>éo‚UûÿXN¼Læç3¸xa1,F+ó…s–ø 4HuÅâ~§‹<ˆï=  Êœ©q·8¥_ ±vS­dÑ“%ùªÔè£ 6'k/"ߌVRÜ&( 05ØÞp3Ç"^ý†” GÉ»&5ÏÌ÷òå]´4þ•ÁA.@79 # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -S, --no-keep-going, --stop Turns off -k. -b, -m Ignored for compatibility. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -s, --silent, --quiet Don't echo commands. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:$SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-10-20 20:55+0200 Last-Translator: Karl Eichwalder Language-Team: German MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit # %u »vpath«-Suchpfade. # %u implizite Regeln, %u # %u musterspezifische Variablenwerte # Verzeichnisse # Dateien # »Make«-Datenbank; beendet am: %s # Allgemeiner Suchpfad (Variable »VPATH«): # # »Make«-Datenbank; erstellt am: %s # Kein allgemeiner Suchpfad (Variable »VPATH«). # Keine impliziten Regeln vorhanden. # Keine musterspezifischen Variablenwerte. # VPATH-Suchpfade # Variablen %d Argumente gehörten zum fehlgeschlagenen Prozessstart -B, --always-make Alle Ziele ohne Bedingungen erstellen -C VERZEICHNIS, --directory=VERZEICHNIS In VERZEICHNIS wechseln, bevor etwas getan wird -I VERZEICHNIS, --include-dir=VERZEICHNIS VERZEICHNIS nach inkludierten »make«-Steuerdateien durchsuchen -S, --no-keep-going, --stop -k abschalten. -b, -m Aus Kompatibilitätsgründen ignoriert -e, --environment-overrides Umgebungsvariablen überschreiben »make«-Steuerdateien -f DATEI, --file=DATEI, --makefile=DATEI DATEI als »make«-Steuerdatei lesen -h, --help Diese Meldung ausgeben und beenden -s, --silent, --quiet Befehle nicht ausgeben. Datum %s Ignoriere VPATH-Name »%s«. Nutzer-ID = %d, Gruppen-ID = %d, Modus = 0%o. (eingebaut): (Speicherauszug erstellt) (Meinten Sie TAB anstelle von 8 Leerzeichen?) (macht nichts) (aus »%s«, Zeile %lu): (der Name ist möglicherweise gekürzt) (kein Standard-Ziel) (keine ~-Auflösung) (entfernt) (Suchpfad) Dateien, Unmöglichkeiten Unmöglichkeiten in %lu Verzeichnissen. bisher. Terminal.# Erzeugt außerdem:# Kommandozeilen-Ziel (target).# Derzeit laufende Befehle (DAS IST EIN BUG).# Derzeit laufende Befehle für Abhängigkeiten (DAS IST EIN BUG).# Aktualisierung fehlgeschlagen.# Die Datei existiert nicht.# Datei wurde aktualisiert.# Datei wurde nicht aktualisiert.# Datei ist ein Zwischenschritt in den Abhängigkeiten.# Datei ist sehr alt.# Suche nach impliziten Regeln wurde durchgeführt.# Suche nach impliziten Regeln wurde nicht durchgeführt.# Ersetzung für implizites/statisches Muster: »%s« # Ungültiger Wert im »command_state«-Eintrag!# Ungültiger Wert in »update_status«-Eintrag!# Zuletzt geändert %s # Zeit der letzten Änderung wurde nicht überprüft.# Eine Aktualisierung ist notwendig (-q ist angegeben).# Vorgetäuschtes Ziel (Voraussetzung von .PHONY).# Wertvolle Datei (Voraussetzung von .PRECIOUS).# Erfolgreich aktualisiert.# Auszuführende Kommandos# %s (Gerät %d, I-Knoten (inode) [%d,%d,%d]): # %s (Gerät %d, I-Knoten (inode) [%d,%d,%d]): Konnte nicht geöffnet werden. # %s (Gerät %ld, I-Knoten (inode) %ld): # %s (Gerät %ld, I-Knoten (inode) %ld): Konnte nicht geöffnet werden. # %s (Schlüssel (key) %s, letzte Änderung (mtime) %d): # %s ( Schlüssel (key) %s, letzte Änderung (mtime) %d): Konnte nicht geöffnet werden. # %s: Konnte den Status nicht feststellen. # Keine »vpath«-Suchpfade.# Dies ist kein Ziel:$SHELL gewechselt (war »%s«, ist »%s«) %s (Zeile %d) Falscher Shell-Kontext (!unixy && !batch_mode_shell) %s setzt für 30 Sekunden aus...%s: Kommando nicht gefunden%s: Shell-Programm wurde nicht gefunden%s: Zeitstempel außerhalb der Reihenfolge; %s wird ersetzt%s: unerlaubte Option -- %c %s: ungültige Option -- %c %s: Option »%c%s« erlaubt kein Argument %s: Option »%s« ist mehrdeutig %s: Option »%s« erfordert ein Argument %s: Option »--%s« erlaubt kein Argument %s: Option »-W %s« erlaubt kein Argument %s: Option »-W %s« ist mehrdeutig %s: Option erfordert ein Argument -- %c %s: unerkannte Option »%c%s« %s: unerkannte Option »--%s« %sKeine Regel, um »%s« zu erstellen%s%sKeine Regel vorhanden, um das Target »%s«, benötigt von »%s«, zu erstellen%s*** Archiveintrag »%s« ist wohl falsch; nicht gelöscht*** Abbruch. *** Datei »%s« wird gelöscht*** Löschen der Zwischendatei »%s«*** Warte auf noch nicht beendete Prozesse...*** [%s] Archiveintrag »%s« ist wohl falsch; nicht gelöscht*** [%s] Datei »%s« wird gelöscht*** [%s] Fehler %d*** [%s] Fehler 0x%x*** [%s] Fehler 0x%x (ignoriert)-Warnung: STRG-Y wird Unterprozesse übriglassen! -Warnung: Vielleicht müssen Sie STRG-Y aus DCL wieder ermöglichen. . Schluss. .DEFAULT_GOAL beinhaltet mehr als ein Ziel.LIBPATTERNS Element »%s« ist kein Muster; benutze VPATH-Name »%s«Abgebrochen (Aborted)WecksignalVermeide Rekursion in den impliziten Regeln. BUG: »num_pattern_rules« falsch! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Falscher SystemaufrufZerstörte PipeBus-FehlerCPU-Zeitschranke überschrittentemporäre Datei kann nicht erzeugt werden Kindprozess beendetZirkuläre Datei %s <- %s Abhängigkeit wird nicht verwendet.Lösche temporäre Stapelverarbeitungsdatei »%s« Lösche temporäre Stapelverarbeitungsdatei %s Die Kommandos für »%s« werden ignoriert, die für »%s« werden bevorzugt.Die Kommandos für die Datei »%s« wurden aufgrund der Suche nach impliziten Regeln gefunden,Die Kommandos von »%s« werden gerade ausgeführt. Die Kommandos wurden für die Datei »%s« angegeben an der Stelle %s:%lu,Betrachte Target-Datei »%s«. FortgesetztKonnte nicht in das ursprüngliche Verzeichnis wechseln.Erstelle temporäre Stapelverarbeitungsdatei %s Aktuelle ZeitCustoms wird nicht exportieren: %s GefahrensignalEMT abfangen (EMT trap)Fehler beim Starten eines Kindprozesses, %d. Fehler: Leere Anweisung %s wird stattdessen ausgeführt Überflüssiger Text nach einer »%s«-AnweisungÜberflüssiger Text nach einer »endef«-AnweisungKonnte die »make«-Steuerdatei »%s« nicht neu erstellen.Fehler beim Aktualisieren der Target-Datei »%s«. Die Datei »%s« existiert nicht. Die Datei »%s« wurde bereits betrachtet. Dateigrößenschranke überschrittenFertig mit den Voraussetzungen für die Ziel-Datei »%s«. Aktualisierung der Datei »%s« beendet. Es ist kein Koprozessor für Fließkommaoperationen vorhandenGleitkommafehlerEine implizite Regel für »%s« gefunden. Fand die Voraussetzung »%s« als VPATH »%s« Die Arbeit an der Target-Datei »%s« wurde aufgegeben. AufgelegtI/O möglichIOT abfangen (IOT trap)Illegaler BefehlDie eingebundene »make«-Steuerdatei »%s« wurde nicht gefunden.InformationsanforderungInitialisierter ZugriffAbgebrochen (Interrupt)Abgebrochen (Killed)Aktiver Kindprozess 0x%08lx (%s) PID %ld %s Suche nach einer Regel mit der Zwischendatei »%s«. Suche nach einer impliziten Regel für »%s«. Suche nach einer impliziten Regel für Archiveinträge für »%s«. »make«-Steuerdatei »%s« könnte eine Schleife enthalten; es wird nicht neu erzeugt. Die »make«-Steuerdatei »%s« wurde nicht gefundenDas Makefile wurde zweimal über die Standardeingabe angegeben.Eintrag »%s« %s: %ld Byte an Position %ld (%ld). Das Target »%s« muss neu erzeugt werden. KeineKein Kommando für »%s« und keine Voraussetzung wurde tatsächlich verändert. Keine implizite Regel für »%s« gefunden. Es ist nicht notwendig, das Target »%s« neu zu erzeugenKeine TargetsKeine Targets angegeben und keine »make«-Steuerdatei gefundenFür das Ziel »%s« ist nichts zu tun.Marke für den Kindprozess 0x%08lx (%s) erhalten. Optionen: Parallele Abarbeitung (-j) wird auf dieser Plattform nicht unterstützt.StromausfallDie Datei »%s« ist jünger als das davon abhängige Ziel »%s«. Die Datei »%s« ist älter als das davon abhängige Ziel »%s«. Die Datei »%s«, Voraussetzung für das Ziel »%s«, existiert nicht. Profiling Timer erloschenDie Datei »%s« wird "gestutzt" (der Abhängigkeitsgraph). Nehme Kindprozess 0x%08lx (%s) PID %ld%s in die Kette auf. Quit»make«-Steuerdatei »%s« wird gelesen»make«-Steuerdateien werden gelesen... Sammle erfolglosen Kindprozess 0x%08lx PID %ld %s Sammle erfolgreichen Kindprozess 0x%08lx PID %ld %s Versuchte gerade die Datei »%s« zu aktualisieren, dies schlug aber fehl. Rekursive Variable »%s« referenziert sich (schließlich) selbstFehlerausgabe nach %s umgeleitet Datei %s auf Standardeingabe umgeleitet Ausgabe nach %s umgeleitet Unmögliche implizite Voraussetzung »%s« abgelehnt. Unmögliche Voraussetzung »%s« abgelehnt. Marke des Kindprozesses 0x%08lx PID (%s) freigegeben. Fehlermeldungen (auf Englisch) an senden. Umstellung auf Einzel-Job-Verarbeitung (-j1).Ressource verloren gegangenSIGPHONESIGWINDAdressierungsdefektDie Datei »%s« wird immer noch aktualisiert. AngehaltenAngehalten (signal)Angehalten (tty input)Angehalten (tty output)Die Target-Datei »%s« wurde erfolgreich aktualisiert. Symbolische Links sind nicht unterstützt: -L wird abgeschaltet.Das Ziel »%s« hat einen doppelten Doppelpunkt und keine Voraussetzungen. Das Target »%s« wurde wegen Fehlern nicht aktualisiert.Target »%s« muss bei -q aktualisiert werden. Abgebrochen (Terminated)Die Voraussetzungen von »%s« werden fertiggestellt. Verfolgen/anhalten abfangen (Trace/breakpoint trap)Versuche implizite Voraussetzung »%s«. Versuche Muster-Regel mit Ersetzung »%.*s«. Versuche Voraussetzung »%s«. Unbekanntes eingebautes Kommando »%s« Unbekannter Fehler %dAktualisieren der Ziele... Aktualisiere »make«-Steuerdateien... Dringende I/O-BedingungSyntax: %s [Optionen] [Target] ... Nutzersignal 1Nutzersignal 2Verwende die Standard-Kommandos für »%s«. Virtueller Timer erloschenWarnung: Umleitung ins Leere! Fenster hat sich verändert[%s] Fehler %d (ignoriert)»%s« ist bereits aktualisiert.»override«-AnweisungVersuch, eine nicht unterstützte Funktionalität zu verwenden: »%s«automatischaber »%s« wird jetzt als dieselbe Datei wie »%s« betrachtet.»%s« mit doppeltem Doppelpunkt kann nicht in »%s« mit einfachem Doppelpunkt geändert werden»%s« mit einfachem Doppelpunkt kann nicht in »%s« mit doppeltem Doppelpunkt geändert werdenLasteinschränkung kann nicht erzwungen werden: Auf diesem Betriebssystem kann die Einhaltung der Lastbeschränkung nicht erzwungen werdenKommandozeileBefehle beginnen vor dem ersten ZielÖffnen der Pipe für die JobsStandard»sleep(30)« ist abgeschlossen. Es geht weiter. Jobserver verdoppeltLeere »override«-AnweisungEine leere Zeichenkette ist als Dateiname ungültigLeerer VariablennameUmgebungUmgebung per -eÜberflüssiges »%s«Überflüssiges »endef«find_and_set_shell Suchpfad gesetzt; default_shell = %s find_and_set_shell setzt default_shell = %s Erstes Argument zur »word«-Funktion muss größer als 0 seinfopen (temporäre Datei)fwrite (temporäre Datei)Initialisierung der Pipe für den jobserverInterner Fehler: »%s« command_stateInterner Fehler: Falsche --jobserver-fds Angabe »%s«Interner Fehler: mehrfache --jobserver-fds OptionenUngültige »override«-AnweisungUngültige Syntax in der Bedingung»lbr$ini_control« schlug mit Status = %d fehl»lbr$set_module« konnte keine Modulinformation auslesen; Status = %dMakefileFehlendes »endef«, nicht abgeschlossenes »define«Fehlendes »endif«Es fehlt eine Regel vor den BefehlenEs fehlt ein Target-MusterImplizite und normale Regel vermischtImplizite und statische Muster-Regel vermischtMehrfache Target-MusterkeineNicht-numerisches erstes Argument zur »word«-FunktionNicht-numerisches erstes Argument für die »wordlist«-FunktionNicht-numerisches zweites Argument zur »wordlist«-FunktionEs ist nur ein »else« je Verzweigung erlaubtLese Pipe für die Jobs»sys$search« schlug mit %d fehl Target »%s« passt nicht zum Target-MusterDas Ziel »%s« steht mehrfach in derselben Regel.Das Ziel »%s« enthält sowohl »:«- als auch »::«-EinträgeTarget-Muster enthält kein »%%«Die Option »-%c« verlangt eine positive ganze Zahl als ArgumentVMS stellt nicht die Möglichkeit einer Änderung der Zeitmarken von Archiveinträgen zur Verfügungtouch: Archiv »%s« existiert nichttouch: Ungünstiger Rückgabewert beim Zugriff von ar_member_touch auf »%s«touch: Eintrag »%s« existiert nicht in »%s«touch: »%s« ist kein gültiges ArchivKonnte die Bibliothek »%s« auf der Suche nach dem Eintrag »%s« nicht öffnenUnbekanntes Debug-Level angegeben »%s«Unbekanntes Signalunlink (temporäre Datei): Nicht beendeter Aufruf der Funktion »%s«: »%c« fehltNicht abgeschlossene VariablenreferenzDer virtuelle Speicher ist verbrauchtWarnung: Mit der Uhr stimmt etwas nicht. Die Bearbeitung könnte unvollständig sein.Warnung: -jN in »make«-Verarbeitungszweig erzwungen: Jobserver-Modus nicht verfügbar.Warnung: NUL-Zeichen gelesen; der Rest der Zeile wird ignoriertWarnung: Alte Befehle für das Ziel »%s« werden ignoriertWarnung: Kein Jobserver verfügbar: -j1 wird gesetzt. »+« zur Ursprungsregel hinzufügen.Warnung: Die Befehle für das Ziel »%s« werden überschriebenWarnung: undefinierte Variable »%.*s«windows32_openpipe (): process_init_fd() schlug fehl SchreibfehlerSchreibfehler: %sSchreibe Job-Servermake-dfsg-3.81.orig/po/de.po0000644000175000017500000014464110416553102016071 0ustar srivastasrivasta# German message translation file for GNU make # Copyright (C) 1996, 1997, 2002 Free Software Foundation, Inc. # Karl Eichwalder , 2002, 2005. # Alexander Mader , 2000. # Alexander Mader , 1997. # Jochen Hein , 1996. # # Vereinheitlichen: # ================= # command(s) -> Befehl(e)? (nicht: Kommando(s)) # target(s) -> Ziel(e) (nicht: Target(s)) # 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-10-20 20:55+0200\n" "Last-Translator: Karl Eichwalder \n" "Language-Team: German \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "Versuch, eine nicht unterstützte Funktionalität zu verwenden: »%s«" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "" "VMS stellt nicht die Möglichkeit einer Änderung \n" "der Zeitmarken von Archiveinträgen zur Verfügung" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Archiv »%s« existiert nicht" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: »%s« ist kein gültiges Archiv" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Eintrag »%s« existiert nicht in »%s«" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "" "touch: Ungünstiger Rückgabewert beim Zugriff \n" "von ar_member_touch auf »%s«" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "»lbr$set_module« konnte keine Modulinformation auslesen; Status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "»lbr$ini_control« schlug mit Status = %d fehl" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "" "Konnte die Bibliothek »%s« auf der Suche \n" "nach dem Eintrag »%s« nicht öffnen" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "" "Eintrag »%s« %s: \n" "%ld Byte an Position %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (der Name ist möglicherweise gekürzt)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Datum %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " Nutzer-ID = %d, Gruppen-ID = %d, Modus = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Abbruch.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Archiveintrag »%s« ist wohl falsch; nicht gelöscht" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Archiveintrag »%s« ist wohl falsch; nicht gelöscht" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Datei »%s« wird gelöscht" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Datei »%s« wird gelöscht" #: commands.c:599 msgid "# commands to execute" msgstr "# Auszuführende Kommandos" #: commands.c:602 msgid " (built-in):" msgstr " (eingebaut):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (aus »%s«, Zeile %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Verzeichnisse\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: Konnte den Status nicht feststellen.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "" "# %s ( Schlüssel (key) %s, letzte Änderung (mtime) %d): \n" "Konnte nicht geöffnet werden.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "" "# %s (Gerät %d, I-Knoten (inode) [%d,%d,%d]): \n" "Konnte nicht geöffnet werden.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "" "# %s (Gerät %ld, I-Knoten (inode) %ld): \n" "Konnte nicht geöffnet werden.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (Schlüssel (key) %s, letzte Änderung (mtime) %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (Gerät %d, I-Knoten (inode) [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (Gerät %ld, I-Knoten (inode) %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Keine" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " Dateien, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "keine" #: dir.c:1058 msgid " impossibilities" msgstr " Unmöglichkeiten" #: dir.c:1062 msgid " so far." msgstr " bisher." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " Unmöglichkeiten in %lu Verzeichnissen.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Rekursive Variable »%s« referenziert sich (schließlich) selbst" #: expand.c:266 msgid "unterminated variable reference" msgstr "Nicht abgeschlossene Variablenreferenz" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "" "Die Kommandos wurden für die Datei »%s« angegeben \n" "an der Stelle %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Die Kommandos für die Datei »%s« wurden aufgrund \n" "der Suche nach impliziten Regeln gefunden," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "" "aber »%s« wird jetzt als dieselbe Datei \n" "wie »%s« betrachtet." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Die Kommandos für »%s« werden ignoriert, \n" "die für »%s« werden bevorzugt." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "»%s« mit einfachem Doppelpunkt kann nicht in \n" "»%s« mit doppeltem Doppelpunkt geändert werden" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "»%s« mit doppeltem Doppelpunkt kann nicht in \n" "»%s« mit einfachem Doppelpunkt geändert werden" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Löschen der Zwischendatei »%s«" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** Löschen der Zwischendatei »%s«" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Zeitstempel außerhalb der Reihenfolge; %s wird ersetzt" #: file.c:782 msgid "Current time" msgstr "Aktuelle Zeit" #: file.c:881 msgid "# Not a target:" msgstr "# Dies ist kein Ziel:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Wertvolle Datei (Voraussetzung von .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Vorgetäuschtes Ziel (Voraussetzung von .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Kommandozeilen-Ziel (target)." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Ein Standardwert oder MAKEFILES »make«-Steuerdatei." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Suche nach impliziten Regeln wurde durchgeführt." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Suche nach impliziten Regeln wurde nicht durchgeführt." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Ersetzung für implizites/statisches Muster: »%s«\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Datei ist ein Zwischenschritt in den Abhängigkeiten." #: file.c:919 msgid "# Also makes:" msgstr "# Erzeugt außerdem:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Zeit der letzten Änderung wurde nicht überprüft." #: file.c:927 msgid "# File does not exist." msgstr "# Die Datei existiert nicht." #: file.c:929 msgid "# File is very old." msgstr "# Datei ist sehr alt." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Zuletzt geändert %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Datei wurde aktualisiert." #: file.c:937 msgid "# File has not been updated." msgstr "# Datei wurde nicht aktualisiert." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Derzeit laufende Befehle (DAS IST EIN BUG)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Derzeit laufende Befehle für Abhängigkeiten (DAS IST EIN BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Erfolgreich aktualisiert." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Eine Aktualisierung ist notwendig (-q ist angegeben)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Aktualisierung fehlgeschlagen." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Ungültiger Wert in »update_status«-Eintrag!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Ungültiger Wert im »command_state«-Eintrag!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Dateien" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "Nicht-numerisches erstes Argument zur »word«-Funktion" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "Erstes Argument zur »word«-Funktion muss größer als 0 sein" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "Nicht-numerisches erstes Argument für die »wordlist«-Funktion" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "Nicht-numerisches zweites Argument zur »wordlist«-Funktion" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "»create_child_process«: »DuplicateHandle(In)« schlug fehl (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)« schlug fehl (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "»CreatePipe()« schlug fehl (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() schlug fehl\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Lösche temporäre Stapelverarbeitungsdatei %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Zuwenig Argumente (%d) für die Funktion »%s«" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Auf dieser Rechnerkonfiguration nicht implementiert: Funktion »%s«" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "Nicht beendeter Aufruf der Funktion »%s«: »%c« fehlt" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: Option »%s« ist mehrdeutig\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: Option »--%s« erlaubt kein Argument\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: Option »%c%s« erlaubt kein Argument\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: Option »%s« erfordert ein Argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: unerkannte Option »--%s«\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: unerkannte Option »%c%s«\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: unerlaubte Option -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ungültige Option -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: Option erfordert ein Argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: Option »-W %s« ist mehrdeutig\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: Option »-W %s« erlaubt kein Argument\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Suche nach einer impliziten Regel für »%s«.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Suche nach einer impliziten Regel für Archiveinträge für »%s«.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Vermeide Rekursion in den impliziten Regeln.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Versuche Muster-Regel mit Ersetzung »%.*s«.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Unmögliche implizite Voraussetzung »%s« abgelehnt.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Unmögliche Voraussetzung »%s« abgelehnt.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Versuche implizite Voraussetzung »%s«.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Versuche Voraussetzung »%s«.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Fand die Voraussetzung »%s« als VPATH »%s«\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Suche nach einer Regel mit der Zwischendatei »%s«.\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "temporäre Datei kann nicht erzeugt werden\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Fehler 0x%x (ignoriert)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Fehler 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Fehler %d (ignoriert)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Fehler %d" #: job.c:399 msgid " (core dumped)" msgstr " (Speicherauszug erstellt)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Warte auf noch nicht beendete Prozesse..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Aktiver Kindprozess 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (entfernt)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Sammle erfolglosen Kindprozess 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Sammle erfolgreichen Kindprozess 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Lösche temporäre Stapelverarbeitungsdatei »%s«\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Entferne Kindprozess 0x%08lx PID %ld %s aus der Kette.\n" #: job.c:862 msgid "write jobserver" msgstr "Schreibe Job-Server" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Marke des Kindprozesses 0x%08lx PID (%s) freigegeben.\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "»process_easy()« konnte den Prozess nicht starten (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "%d Argumente gehörten zum fehlgeschlagenen Prozessstart\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Nehme Kindprozess 0x%08lx (%s) PID %ld%s in die Kette auf.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Marke für den Kindprozess 0x%08lx (%s) erhalten.\n" #: job.c:1718 msgid "read jobs pipe" msgstr "Lese Pipe für die Jobs" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" "Auf diesem Betriebssystem kann die Einhaltung\n" "der Lastbeschränkung nicht erzwungen werden" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "Lasteinschränkung kann nicht erzwungen werden: " #: 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 "»process_easy()« konnte den Prozess nicht starten (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "" "»make« registrierte die Beendigung des Kindprozesses mit ID %d,\n" "wartet jedoch noch auf den Prozess mit ID %d.\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Kommando nicht gefunden" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Shell-Programm wurde nicht gefunden" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL gewechselt (war »%s«, ist »%s«)\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Erstelle temporäre Stapelverarbeitungsdatei %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (Zeile %d) Falscher Shell-Kontext (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Optionen:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Aus Kompatibilitätsgründen ignoriert\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make Alle Ziele ohne Bedingungen erstellen\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C VERZEICHNIS, --directory=VERZEICHNIS\n" " In VERZEICHNIS wechseln, bevor etwas getan " "wird\n" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "Viele Informationen zur Fehlersuche ausgeben" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "Verschiedene Arten von Debug-Information ausgeben" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Umgebungsvariablen überschreiben »make«-" "Steuerdateien\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f DATEI, --file=DATEI, --makefile=DATEI\n" " DATEI als »make«-Steuerdatei lesen\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Diese Meldung ausgeben und beenden\n" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "Fehler in den Befehlen irgnorieren" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I VERZEICHNIS, --include-dir=VERZEICHNIS\n" " VERZEICHNIS nach inkludierten\n" " »make«-Steuerdateien durchsuchen\n" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" "N Jobs gleichzeitig erlauben; unbegrenzte Anzahl \n" "von Jobs ohne Argument" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "Weiterlaufen, auch wenn einige Targets nicht erzeugt werden konnten" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "Die interne Datenbank von »make« ausgeben" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" "Keine Befehle ausführen; der Exit-Status gibt an, ob die Dateien\n" "aktuell sind" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "Die eingebauten impliziten Regeln deaktivieren" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "Die eingebauten Variablenbelegungen deaktivieren" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Befehle nicht ausgeben.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " -k abschalten.\n" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" "Die Targets werden nur als aktualisiert markiert,\n" "nicht tatsächlich erneuert" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "Die Versionsnummer von »make« ausgeben und beenden" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "Das aktuelle Verzeichnis ausgeben" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "-w abschalten, selbst wenn es implizit eingeschaltet wurde" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" "Eine Warnung ausgeben, wenn eine undefinierte Variable referenziert wird" #: main.c:549 msgid "empty string invalid as file name" msgstr "Eine leere Zeichenkette ist als Dateiname ungültig" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "Unbekanntes Debug-Level angegeben »%s«" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" "%s: bekam Unterbrechung/Ausnahme signalisiert (Kode = 0x%x, Adr = 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" "Das Programm %s rief einen Ausnahmefilter auf, \n" "der nicht bearbeitet wurde\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Zugriffsverletzung: Schreiboperation an Adresse %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Zugriffsverletzung: Leseoperation an Adresse %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 setzt 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 Suchpfad gesetzt; default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s setzt für 30 Sekunden aus..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "»sleep(30)« ist abgeschlossen. Es geht weiter.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Das Makefile wurde zweimal über die Standardeingabe angegeben." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (temporäre Datei)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (temporäre Datei)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "" "Parallele Abarbeitung (-j) \n" "wird auf dieser Plattform nicht unterstützt." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Umstellung auf Einzel-Job-Verarbeitung (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "Interner Fehler: mehrfache --jobserver-fds Optionen" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "Interner Fehler: Falsche --jobserver-fds Angabe »%s«" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "Warnung: -jN in »make«-Verarbeitungszweig erzwungen: \n" "Jobserver-Modus nicht verfügbar." #: main.c:1684 msgid "dup jobserver" msgstr "Jobserver verdoppelt" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "Warnung: Kein Jobserver verfügbar: -j1 wird gesetzt. »+« zur Ursprungsregel\n" "hinzufügen." #: main.c:1710 msgid "creating jobs pipe" msgstr "Öffnen der Pipe für die Jobs" #: main.c:1725 msgid "init jobserver pipe" msgstr "Initialisierung der Pipe für den jobserver" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "Symbolische Links sind nicht unterstützt: -L wird abgeschaltet." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Aktualisiere »make«-Steuerdateien...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "" "»make«-Steuerdatei »%s« könnte eine Schleife enthalten; \n" "es wird nicht neu erzeugt.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Konnte die »make«-Steuerdatei »%s« nicht neu erstellen." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Die eingebundene »make«-Steuerdatei »%s« wurde nicht gefunden." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Die »make«-Steuerdatei »%s« wurde nicht gefunden" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Konnte nicht in das ursprüngliche Verzeichnis wechseln." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Erneute Ausführung:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (temporäre Datei): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr ".DEFAULT_GOAL beinhaltet mehr als ein Ziel" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Keine Targets angegeben und keine »make«-Steuerdatei gefunden" #: main.c:2191 msgid "No targets" msgstr "Keine Targets" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Aktualisieren der Ziele...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "Warnung: Mit der Uhr stimmt etwas nicht. \n" "Die Bearbeitung könnte unvollständig sein." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Syntax: %s [Optionen] [Target] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Fehlermeldungen (auf Englisch) an senden.\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "Die Option »-%c« verlangt eine positive ganze Zahl als Argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "Die Option »-%c« verlangt eine positive ganze Zahl als Argument" #: main.c:2942 #, fuzzy, 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 "" ", von Richard Stallman und Roland McGrath.\n" "%sErstellt für %s\n" "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" "%s\tFree Software Foundation, Inc.\n" "%sDies ist Freie Software; siehe die Programmquellen für " "Vervielfältigungsbedingungen.\n" "%sEs gibt KEINE Gewährleistung; nicht einmal für VERMARKTUNG oder " "NUTZBARKEIT FÜR EINEN\n" "%sBESONDEREN ZWECK.\n" "\n" "%sFehlermeldungen (auf Englisch) an .\n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# »Make«-Datenbank; erstellt am: %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# »Make«-Datenbank; beendet am: %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "ein unbekanntes Verzeichnis" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "ein unbekanntes Verzeichnis" # !!! Attention: concatenated with the previous messages!!! #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "»%s«\n" # !!! Attention: concatenated with the previous messages!!! #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "»%s«\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "ein unbekanntes Verzeichnis" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "ein unbekanntes Verzeichnis" # !!! Attention: concatenated with the previous messages!!! #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "»%s«\n" # !!! Attention: concatenated with the previous messages!!! #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "»%s«\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Schluss.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Unbekannter Fehler %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "Der virtuelle Speicher ist verbraucht" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: Nutzer %lu (tatsächlich %lu), Gruppe %lu (tatsächlich %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Initialisierter Zugriff" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "Schreibfehler: %s" #: misc.c:894 msgid "write error" msgstr "Schreibfehler" #: read.c:160 msgid "Reading makefiles...\n" msgstr "»make«-Steuerdateien werden gelesen...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "»make«-Steuerdatei »%s« wird gelesen" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (kein Standard-Ziel)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (Suchpfad)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (macht nichts)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (keine ~-Auflösung)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "Ungültige Syntax in der Bedingung" #: read.c:633 msgid "extraneous `endef'" msgstr "Überflüssiges »endef«" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "Leerer Variablenname" #: read.c:662 msgid "empty `override' directive" msgstr "Leere »override«-Anweisung" #: read.c:687 msgid "invalid `override' directive" msgstr "Ungültige »override«-Anweisung" #: read.c:854 msgid "commands commence before first target" msgstr "Befehle beginnen vor dem ersten Ziel" #: read.c:905 msgid "missing rule before commands" msgstr "Es fehlt eine Regel vor den Befehlen" # Untranslatable because of weird %s usage -ke- #: read.c:992 #, fuzzy, c-format msgid "missing separator%s" msgstr "Fehlendes Trennzeichen%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (Meinten Sie TAB anstelle von 8 Leerzeichen?)" #: read.c:1152 msgid "missing target pattern" msgstr "Es fehlt ein Target-Muster" #: read.c:1154 msgid "multiple target patterns" msgstr "Mehrfache Target-Muster" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "Target-Muster enthält kein »%%«" #: read.c:1286 msgid "missing `endif'" msgstr "Fehlendes »endif«" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Überflüssiger Text nach einer »endef«-Anweisung" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "Fehlendes »endef«, nicht abgeschlossenes »define«" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Überflüssiger Text nach einer »%s«-Anweisung" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "Überflüssiges »%s«" #: read.c:1482 msgid "only one `else' per conditional" msgstr "Es ist nur ein »else« je Verzweigung erlaubt" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Falsche Ziel-bezogene Variablendefinition" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "Implizite und statische Muster-Regel vermischt" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "Implizite und normale Regel vermischt" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "Target »%s« passt nicht zum Target-Muster" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "Das Ziel »%s« enthält sowohl »:«- als auch »::«-Einträge" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "Das Ziel »%s« steht mehrfach in derselben Regel." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "Warnung: Die Befehle für das Ziel »%s« werden überschrieben" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "Warnung: Alte Befehle für das Ziel »%s« werden ignoriert" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "Warnung: NUL-Zeichen gelesen; der Rest der Zeile wird ignoriert" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Für das Ziel »%s« ist nichts zu tun." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "»%s« ist bereits aktualisiert." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Die Datei »%s« wird \"gestutzt\" (der Abhängigkeitsgraph).\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sKeine Regel, um »%s« zu erstellen%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%sKeine Regel vorhanden, um das Target »%s«, \n" " benötigt von »%s«, zu erstellen%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Betrachte Target-Datei »%s«.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "" "Versuchte gerade die Datei »%s« zu aktualisieren, \n" "dies schlug aber fehl.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Die Datei »%s« wurde bereits betrachtet.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Die Datei »%s« wird immer noch aktualisiert.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Aktualisierung der Datei »%s« beendet.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Die Datei »%s« existiert nicht.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Eine implizite Regel für »%s« gefunden.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Keine implizite Regel für »%s« gefunden.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Verwende die Standard-Kommandos für »%s«.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Zirkuläre Datei %s <- %s Abhängigkeit wird nicht verwendet." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Fertig mit den Voraussetzungen für die Ziel-Datei »%s«.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Die Voraussetzungen von »%s« werden fertiggestellt.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Die Arbeit an der Target-Datei »%s« wurde aufgegeben.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Das Target »%s« wurde wegen Fehlern nicht aktualisiert." #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Die Datei »%s« ist älter als das davon abhängige Ziel »%s«.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "" "Die Datei »%s«, Voraussetzung für das Ziel »%s«, \n" "existiert nicht.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Die Datei »%s« ist jünger als das davon abhängige Ziel »%s«.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Die Datei »%s« ist älter als das davon abhängige Ziel »%s«.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "" "Das Ziel »%s« hat einen doppelten Doppelpunkt \n" "und keine Voraussetzungen.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "" "Kein Kommando für »%s« und keine Voraussetzung \n" "wurde tatsächlich verändert.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Es ist nicht notwendig, das Target »%s« neu zu erzeugen" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; benutze VPATH-Name »%s«" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Das Target »%s« muss neu erzeugt werden.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignoriere VPATH-Name »%s«.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Die Kommandos von »%s« werden gerade ausgeführt.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Fehler beim Aktualisieren der Target-Datei »%s«.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Die Target-Datei »%s« wurde erfolgreich aktualisiert.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Target »%s« muss bei -q aktualisiert werden.\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** Warnung: Datei »%s« hat zukünftige Änderungszeit (%s > %s)!" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** Warnung: Datei »%s« hat zukünftige Änderungszeit (%s > %s)!" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS Element »%s« ist kein Muster" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs wird nicht exportieren: %s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Keine impliziten Regeln vorhanden." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Keine impliziten Regeln vorhanden." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u implizite Regeln, %u" #: rule.c:575 msgid " terminal." msgstr " Terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG: »num_pattern_rules« falsch! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "Unbekanntes Signal" #: signame.c:93 msgid "Hangup" msgstr "Aufgelegt" #: signame.c:96 msgid "Interrupt" msgstr "Abgebrochen (Interrupt)" #: signame.c:99 msgid "Quit" msgstr "Quit" #: signame.c:102 msgid "Illegal Instruction" msgstr "Illegaler Befehl" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Verfolgen/anhalten abfangen (Trace/breakpoint trap)" #: signame.c:110 msgid "Aborted" msgstr "Abgebrochen (Aborted)" #: signame.c:113 msgid "IOT trap" msgstr "IOT abfangen (IOT trap)" #: signame.c:116 msgid "EMT trap" msgstr "EMT abfangen (EMT trap)" #: signame.c:119 msgid "Floating point exception" msgstr "Gleitkommafehler" #: signame.c:122 msgid "Killed" msgstr "Abgebrochen (Killed)" #: signame.c:125 msgid "Bus error" msgstr "Bus-Fehler" #: signame.c:128 msgid "Segmentation fault" msgstr "Adressierungsdefekt" #: signame.c:131 msgid "Bad system call" msgstr "Falscher Systemaufruf" #: signame.c:134 msgid "Broken pipe" msgstr "Zerstörte Pipe" #: signame.c:137 msgid "Alarm clock" msgstr "Wecksignal" #: signame.c:140 msgid "Terminated" msgstr "Abgebrochen (Terminated)" #: signame.c:143 msgid "User defined signal 1" msgstr "Nutzersignal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Nutzersignal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Kindprozess beendet" #: signame.c:157 msgid "Power failure" msgstr "Stromausfall" #: signame.c:160 msgid "Stopped" msgstr "Angehalten" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Angehalten (tty input)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Angehalten (tty output)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Angehalten (signal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU-Zeitschranke überschritten" #: signame.c:175 msgid "File size limit exceeded" msgstr "Dateigrößenschranke überschritten" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtueller Timer erloschen" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profiling Timer erloschen" #: signame.c:187 msgid "Window changed" msgstr "Fenster hat sich verändert" #: signame.c:190 msgid "Continued" msgstr "Fortgesetzt" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Dringende I/O-Bedingung" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O möglich" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Ressource verloren gegangen" #: signame.c:215 msgid "Danger signal" msgstr "Gefahrensignal" #: signame.c:218 msgid "Information request" msgstr "Informationsanforderung" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Es ist kein Koprozessor für Fließkommaoperationen vorhanden" #: 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 "Standard" #: variable.c:1372 msgid "environment" msgstr "Umgebung" #: variable.c:1375 msgid "makefile" msgstr "Makefile" #: variable.c:1378 msgid "environment under -e" msgstr "Umgebung per -e" #: variable.c:1381 msgid "command line" msgstr "Kommandozeile" #: variable.c:1384 msgid "`override' directive" msgstr "»override«-Anweisung" #: variable.c:1387 msgid "automatic" msgstr "automatisch" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (aus »%s«, Zeile %lu):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %u Variablen für %u hash-Werte.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variablen\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Musterspezifische Variablenwerte" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Keine musterspezifischen Variablenwerte." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u musterspezifische Variablenwerte" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "Warnung: undefinierte Variable »%.*s«" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "»sys$search« schlug mit %d fehl\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Warnung: Umleitung ins Leere!\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "Interner Fehler: »%s« command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-Warnung: STRG-Y wird Unterprozesse übriglassen!\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-Warnung: Vielleicht müssen Sie STRG-Y aus DCL wieder ermöglichen.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Unbekanntes eingebautes Kommando »%s«\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Fehler: Leere Anweisung\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Datei %s auf Standardeingabe umgeleitet\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Fehlerausgabe nach %s umgeleitet\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Ausgabe nach %s umgeleitet\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "%s wird stattdessen ausgeführt\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Fehler beim Starten eines Kindprozesses, %d.\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH-Suchpfade\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Keine »vpath«-Suchpfade." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u »vpath«-Suchpfade.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Kein allgemeiner Suchpfad (Variable »VPATH«)." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Allgemeiner Suchpfad (Variable »VPATH«):\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "" #~ "Wenn »sh.exe« nicht vorhanden ist, \n" #~ "sollten Sie nicht »-j« oder »--jobs« angeben." #~ msgid "Resetting make for single job mode." #~ msgstr "»make« wird so umgestellt, dass nur ein Job laufen kann." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u Dateien zu %u hash-Werten.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# durchschnittlich %.3f Dateien je hash-Wert,\n" #~ "max. %u Dateien zu einem hash-Wert.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Syntaxfehler, immer noch in '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Erhielt Signal »SIGCHLD«; %u unbeendete Kindprozesse.\n" #~ msgid "DIRECTORY" #~ msgstr "VERZEICHNIS" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "In das VERZEICHNIS wechseln, bevor etwas anderes ausgeführt wird" #~ msgid "FLAGS" #~ msgstr "FLAGS" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Prozess aussetzeb, um das Einklinken eines Debuggers zu ermöglichen" #~ msgid "Environment variables override makefiles" #~ msgstr "Umgebungsvariablen überschreiben »make«-Steuerdateien" #~ msgid "FILE" #~ msgstr "DATEI" #~ msgid "Read FILE as a makefile" #~ msgstr "DATEI als »make«-Steuerdatei lesen" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Das VERZEICHNIS nach eingebundenen »make«-Steuerdateien durchsuchen" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Nur bei Belastung unterhalb N mehrere Prozesse starten" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "Befehle nur anzeigen, nicht ausführen" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "DATEI als sehr alt betrachten und sie nicht neu erzeugen" #~ msgid "Don't echo commands" #~ msgstr "Die Kommandos nicht ausgeben" #~ msgid "Turns off -k" #~ msgstr "-k abschalten" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Die DATEI stets als neu betrachten" # !!! Attention: concatenated with the following messages!!! #~ msgid "Entering" #~ msgstr "Wechsel in das Verzeichnis" # !!! Attention: concatenated with the following messages!!! #~ msgid "Leaving" #~ msgstr "Verlassen des Verzeichnisses" #~ msgid "no file name for `%sinclude'" #~ msgstr "Kein Dateiname für »%sinclude«" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "Target »%s« lässt Voraussetzungs-Muster leer" #~ msgid "# No variables." #~ msgstr "# Keine Variablen vorhanden." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# Durchschnittlich %.1f Variablen pro Wert, max %u je Wert.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# Durchschnittlich %d.%d Variablen pro Wert, max %u je Wert.\n" #~ msgid "the `word' function takes a positive index argument" #~ msgstr "Die »word«-Funktion erwartet als Argument einen positiven Index" make-dfsg-3.81.orig/po/en@boldquot.header0000644000175000017500000000247110416553102020561 0ustar srivastasrivasta# All this catalog "translates" are quotation characters. # The msgids must be ASCII and therefore cannot contain real quotation # characters, only substitutes like grave accent (0x60), apostrophe (0x27) # and double quote (0x22). These substitutes look strange; see # http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html # # This catalog translates grave accent (0x60) and apostrophe (0x27) to # left single quotation mark (U+2018) and right single quotation mark (U+2019). # It also translates pairs of apostrophe (0x27) to # left single quotation mark (U+2018) and right single quotation mark (U+2019) # and pairs of quotation mark (0x22) to # left double quotation mark (U+201C) and right double quotation mark (U+201D). # # When output to an UTF-8 terminal, the quotation characters appear perfectly. # When output to an ISO-8859-1 terminal, the single quotation marks are # transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to # grave/acute accent (by libiconv), and the double quotation marks are # transliterated to 0x22. # When output to an ASCII terminal, the single quotation marks are # transliterated to apostrophes, and the double quotation marks are # transliterated to 0x22. # # This catalog furthermore displays the text between the quotation marks in # bold face, assuming the VT100/XTerm escape sequences. # make-dfsg-3.81.orig/po/en@quot.header0000644000175000017500000000226310416553102017717 0ustar srivastasrivasta# All this catalog "translates" are quotation characters. # The msgids must be ASCII and therefore cannot contain real quotation # characters, only substitutes like grave accent (0x60), apostrophe (0x27) # and double quote (0x22). These substitutes look strange; see # http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html # # This catalog translates grave accent (0x60) and apostrophe (0x27) to # left single quotation mark (U+2018) and right single quotation mark (U+2019). # It also translates pairs of apostrophe (0x27) to # left single quotation mark (U+2018) and right single quotation mark (U+2019) # and pairs of quotation mark (0x22) to # left double quotation mark (U+201C) and right double quotation mark (U+201D). # # When output to an UTF-8 terminal, the quotation characters appear perfectly. # When output to an ISO-8859-1 terminal, the single quotation marks are # transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to # grave/acute accent (by libiconv), and the double quotation marks are # transliterated to 0x22. # When output to an ASCII terminal, the single quotation marks are # transliterated to apostrophes, and the double quotation marks are # transliterated to 0x22. # make-dfsg-3.81.orig/po/es.gmo0000644000175000017500000011401210416553102016241 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H=Äj.kF2k%ykŸk¨k¯k+Îk"úk'l El"fl/‰l¹lÔl0ïl m)?m0im1šm!Ìm*îm n :n1[n8nMÆn¸o/Ío&ýo+$p$PpJup ÀpÌp%ép-qV=qN”q!ãqrr%+r2QrB„r Çr(Ñr-úr!(sJsSs-ds*’s½sÔsëst t-t#=t&atˆt˜t,¯t!Üt!þt uY:uX”u/íuFv'dv Œv—v´v+Òvþv w:*wewvwwžw´w?ÐwIx&Zx/x±x$Íx0òx:#y*^y,‰y¶y+Ñy4ýy&2zYz azmzvz)Œz¶zÎz âzîz${&{3={(q{?š{Ú{Cê{.|MN|/œ|HÌ|(}&>}e}=h}3¦}-Ú}~A~[~7v~ ®~H¹~:"3]4‘/Æ?ö*6€=a€ Ÿ€©€¼€Ò€9è€7"3Z-Ž¼Ûø ‚*‚3G‚6{‚;²‚)î‚/ƒ$Hƒmƒ}ƒ†ƒŽƒ*¤ƒσ ؃*ùƒ)$„3N„F‚„OÉ„9…CS… —…0¢…Ó…(é…;†)N†.x†§†'¼†$ä† ‡-"‡P‡c‡ƒ‡5£‡)Ù‡ˆJ ˆEkˆ±ˆȈèˆ%ÿˆ<%‰ b‰<o‰F¬‰>ó‰=2Š$pŠB•ŠØŠ6ïŠ&‹ F‹#R‹v‹“‹>°‹ï‹Œ ŒŒ->ŒKlŒ>¸Œ;÷Œ3L.f!•3·2ë.Ž!MŽ(oŽK˜ŽäŽ+íŽ**Uj4‡>¼ û?@_7 ;Ø;‘(P‘Fy‘À‘3Û‘’C+’Ao’4±’&æ’= “7K“;ƒ“ ¿“;à“(”#E”>i”5¨”Þ”ð”4 •-?•m•^…•Vä•=;–Cy–j½–3(—0\—2—À—Ò—!è—­ä;—Ò<wÞ[`v,,0×Z65’l$ ÐDó"7O³ ªM4S<`Ñ |5DeÁã‚IJúákFù\¹fohõð/2©ßF>ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: GNU make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-06-28 19:59-0500 Last-Translator: Max de Mendizábal Language-Team: Spanish MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8-bit # %u rutas de búsqueda `vpath'. # %u reglas implícitas, %u # %u valores de variables específicas al patrón # Directorios # Archivos # Se termina la base de datos de Make en %s # Ruta de búsqueda general (variable `VPATH'): # # Reglas implícitas. # Base de datos del Make, mostrada en %s # No hay ruta de búsqueda general (variable `VPATH'). # No hay reglas implícitas. # No hay valores de variables específicas al patrón. # Valores de variables específicas al patrón # Rutas de búsqueda VPATH # Variables # estadísticas de la tabla de hash de los archivos: # %sEste programa fue construido para %s %sEste programa fue construido para %s (%s) Se contaron %d argumentos en el lanzamiento fallido Este programa fue construido para %s Este programa construido para %s (%s) --debug[=BANDERAS] Se imprimirán varios tipos de información de depurado. --no-print-directory Desactiva -w, aún cuando haya sido activado implícitamente. --warn-undefined-variables Advierte cuando se hace una referencia a una variable no definida. -B, --always-make Hace incondicionalmente todos los objetivos. -C DIRECTORIO, --directory=DIRECTORIO Se cambia al DIRECTORIO antes de hacer nada. -I DIRECTORIO, --include-dir=DIRECTORIO Busca dentro del DIRECTORIO los makefiles incluidos. -L, --check-symlink-times Utiliza el último mtime entre los enlaces simbólicos y los objetivos. -R, --no-builtin-variables Se deshabilitan los ajustes a las variables almacenadas internamente. -S, --no-keep-going, --stop Desactiva la opción -k. -W ARCHIVO, --what-if=ARCHIVO, --new-file=ARCHIVO, --assume-new=ARCHIVO Supone que ARCHIVO es infinitamente reciente. -b, -m No se tendrá en cuenta por compatibilidad. -d Se imprimirán grandes cantidades de información de depurado. -e, --environment-overrides Las variables ambientales se imponen a las de los makefiles. -f ARCHIVO, --file=ARCHIVO, --makefile=ARCHIVO Lee al ARCHIVO como un makefile. -h, --help Muestra este mensaje y finaliza. -i, --ignore-errors No se toman en cuenta los errores provenientes de las instrucciones. -j [N], --jobs[=N] Se permiten N trabajos a la vez; si no se especifica un argumento son infinitos. -k, --keep-going Sigue avanzando aún cuando no se puedan crear algunos objetivos. -l [N], --load-average[=N], --max-load[=N] No inicia con trabajos múltiples a menos que la carga esté por debajo de N. -n, --just-print, --dry-run, --recon No ejecuta ninguna instrucción; sólo las muestra. -o ARCHIVO, --old-file=ARCHIVO, --assume-old=ARCHIVO Supone que ARCHIVO es muy viejo y no lo reconstruye. -p, --print-data-base Se imprime la base de datos interna de `make'. -q, --question No se ejecutan las instrucciones; el estado de salida indicará si están actualizados. -r, --no-builtin-rules Se deshabilitan las reglas implícitas almacenadas internamente. -s, --silent, --quiet No muestra las intrucciones. -t, --touch Se tocan los objetivos en vez de reconstruirlos. -v, --version Muestra la versión del make y finaliza. -w, --print-directory Muestra el directorio actual. Fecha %s Se ignora el nombre del VPATH `%s'. uid = %d, gid = %d, modo = 0%o. (interconstruido): (core dumped) [Núcleo vaciado a un archivo] (¿Quiere decir TAB en vez de 8 espacios?) (no importa) (de `%s', línea %lu): (de `%s', linea %lu): (el nombre puede estar truncado) (no hay objetivo por defecto) (no hay expansión del ~) (remoto) (ruta de búsqueda) archivos, imposibilidades imposibilidades en %lu directorios. hasta ahora. terminal.# Por omisión, MAKEFILES, o -include/sinclude makefile.# También hace:# Objetivo de línea de instrucciones.# Las instrucciones siguen ejecutándose (ESTO ES UN BUG).# Las instrucciones de las dependencias siguen ejecutándose (ESTO ES UN BUG).# Fallo al ser actualizado.# El archivo no existe.# El archivo ha sido actualizado.# El archivo ha sido actualizado.# El archivo es una dependencia intermedia.# El archivo es muy viejo.# La búsqueda de reglas implícitas ha sido efectuada.# La búsqueda de reglas implícitas ha sido efectuada.# rama del patrón implícita/estática: `%s' # ¡Valor inválido en el miembro `command_state'!# ¡Valor inválido en el miembro `update_status'!# Última modificación %s # La fecha de modificación no se comprobó.# Necesita ser actualizado (la opción -q está activa).# objetivo falso (dependencia de .PHONY).# Archivo valioso (es una dependencia de .PRECIOUS).# Actualizado con éxito.# comandos para ejecutar# %s (dispositivo %d, nodo-i [%d,%d,%d]): # %s (dispositivo %d, nodo-i [%d,%d,%d]): posiblemente no se pueda abrir. # %s (dispositivo %ld, nodo-i %ld): # %s (dispositivo %ld, nodo-i %ld): no se pudo abrir. # %s (llave %s, mtime %d): # %s (llave %s, mtime %d): no se pudo abrir. # %s: podría no estar establecido. # No hay rutas de búsqueda `vpath'.# No es un objetivo:# estadísticas del conjunto de variables de la tabla de hash: $SHELL ha cambiado (era `%s' y ahora es `%s') %s (linea %d) Contexto de shell erróneo (!unixy && !batch_mode_shell) %s está suspendida por 30 segundos...%s%s: %s%s: %s%s: No se encontró el programa%s: se ingresa a un directorio desconocido %s: se ingresa al directorio `%s' %s: se sale del directorio desconocido %s: se sale del directorio `%s' %s: No se ha encontrado el `shell'%s: Fecha fuera de intervalo; sustituyéndola %s%s: opción inválida -- %c %s: opción inválida -- %c %s: la opción `%c%s' no admite ningún argumento %s: la opción `%s' es ambigua %s: la opción `%s' requiere un argumento %s: la opción `--%s' no admite ningún argumento %s: la opción `-W %s' no admite ningún argumento %s: la opción `-W %s' es ambigua %s: la opción requiere un argumento -- %c %s: opción no reconocida `%c%s' %s: opción no reconocida `--%s' %s: usuario %lu (real %lu), grupo %lu (real %lu) %sNo hay ninguna regla para construir el objetivo `%s'%s%sNo hay ninguna regla para construir el objetivo `%s', necesario para `%s'%s%sEste es software libre; consulte en el código fuente las condiciones de copia. %sNO hay garantía; ni siquiera para MERCANTIBILIDAD o EL CUMPLIMIENTO DE %sALGÚN PROPÓSITO PARTICULAR. %s[%u]: se ingresa a un directorio desconocido %s[%u]: se ingresa al directorio `%s' %s[%u]: se sale del directorio desconocido %s[%u]: se sale del directorio `%s' *** Miembro del archivo `%s' podría estar incorrecto; aunque no se elimina*** Break. *** Se borra el archivo `%s'*** Se borra el archivo temporal `%s'*** Se espera a que terminen otras tareas....*** Atención: el archivo .LOW_RESOLUTION_TIME `%s' tiene una resolución demasiado alta*** [%s] Miembro de archivo `%s' podría estar incorrecto; aunque no se elimina*** [%s] Se borra el archivo `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (no tiene efecto)-atención, CTRL-Y dejará vivos a los subprocesos. -atención, deberás rehabilitar el manejo del CTRL-Y desde el DCL. . Alto. .DEFAULT_GOAL contien más de un objetivoEl elemento .LIBPATTERNS `%s' no es un patrón; se usa el nombre del VPATH `%s'AbortadoAlarma del relojEvitando la recursión en la regla implícita. BUG: ¡num_pattern_rules erróneo! %u != %uCD INTERCONSTRUIDO %s RM INTERCONSTRUIDO %s INTERCONSTRUIDO [%s][%s] Llamada al sistema erróneaTubería rotaError en el busSe agotó el tiempo de CPU permitidoNo se puede crear un archivo temporal Acceso del hijoProceso hijo terminadoSe elimina la dependencia circular %s <- %s.Se limpia el archivo temporal %s Limpiando el archivo temporal %s Colisiones=%ld/%ld=%.0f%%Las instrucciones para `%s' no serán tenidas en cuenta en favor de las que están en `%s'.Las instrucciones para el archivo `%s' se encontraron por búsqueda en reglas implícitas,Las instrucciones de `%s' se están ejecutando. Las instrucciones fueron especificadas para el archivo `%s' en %s:%lu,Se considera el archivo objetivo `%s'. ContinuadoNo se puede restaurar stdin No se puede restaurar stdout No se pudo regresar al directorio original.Se crea el archivo temporal %s Hora actualLos valores definidos por el usuario no se exportarán: %s Señal de peligroEMT trapError al lanzar el proceso %d Error, comando vacío En su lugar, se ejecuta %s Texto irrelevante o mal colocado después de la instrucción `%s'Hay un texto irrelevante o mal colocado después de la instrucción `endef'Fallo al reconstruir el makefile `%s'.Fallo al reconstruir el archivo objetivo `%s'. El archivo `%s' no existe. El archivo `%s' ya fue considerado. Se excedió el tamaño máximo de archivo permitidoSe terminaron las dependencias del archivo objetivo `%s'. Se terminó de actualizar el archivo `%s'. Coprocesador de punto flotante no disponibleExcepción de coma flotanteSe encontró una regla implícita para `%s'. Se encontró la dependencia `%s' como la VPATH `%s'. Se abandona el archivo objetivo `%s'. ColgadoPosible I/OIOT trapInstrucción no válidaNo se encontró el makefile incluído `%s'.Petición de informaciónAcceso inicializadoInterrumpirTerminado (killed)Hijo activo 0x%08lx (%s) PID %ld %s Carga=%ld/%ld=%.0f%%, Se busca una regla con el archivo intermedio `%s'. Buscando una regla implícita para `%s'. Buscando una regla implícita para el miembro del archivo `%s'. Acceso del MakeEl makefile `%s' se autoreferencia; por lo cual no se reconstruye. No se encontró el Makefile `%s'El archivo Makefile ha sido especificado dos veces desde la entrada estándardHaciendo `%s' debido a la bandera always-make. La definición de las variables específicas al blanco está mal construidaMiembro `%s'%s: %ld bytes en %ld (%ld). Se debe reconstruir el objetivo `%s'. NoNo hay instrucciones para `%s' y ninguna dependencia cambió. No se ha encontrado una regla implícita para `%s'. No es necesario reconstruir el objetivo `%s'.No hay objetivosNo se especificó ningún objetivo y no se encontró ningún makefileNo se hace nada para `%s'.Se obtiene el token para el proceso hijo 0x%08lx (%s). Opciones: Los trabajos en paralelo (-j) no están implementados en esta plataforma.Falla de alimentación eléctricaLa dependencia `%s' es más reciente que el objetivo `%s'. La dependencia `%s' es posterior al objetivo `%s'. El prerequisito `%s' es posterior al objetivo `%s'. La dependencia `%s' del blanco `%s' no existe. El contador de tiempo para la generación del perfil ha expiradoSe continúa actualizando el archivo `%s'. Se pone al proceso hijo 0x%08lx (%s) PID %ld%s en la cadena. FinalizarRe-ejecutando[%u]:Leyendo makefile `%s'Leyendo makefiles... Se pierde al proceso hijo descarriado 0x%08lx PID %ld %s Se gana al proceso hijo descarriado 0x%08lx PID %ld %s Se intentó, sin éxito, actualizar el archivo `%s'. La variable recursiva `%s' se auto-referenciaSe redirecciona el error a %s Entrada redirigida desde %s Salida redirigida a %s Rehash=%d, Se rechaza la dependencia imposible `%s'. Se rechaza la regla de dependencia imposible `%s'. Se libera el token para el proceso hijo 0x%08lx (%s). Se elimina al proceso hijo 0x%08lx PID %ld%s de la cadena. *** Se borran los archivos temporales... Informe sobre los errores a Reajustando al modo monotarea (-j1).Recurso perdidoSIGPHONESIGWINDFallo de segmentaciónSe continúa actualizando el archivo `%s'. DetenidoDetenido (se requiere una señal)Detenido (se requiere entrada de terminal)Detenido (se requiere salida de terminal)Se reconstruyó con éxito el archivo objetivo `%s'. Los enlaces simbólicos no están implementados: se deshabilitan con -L.El objetivo `%s' es de tipo dos puntos dos veces (::) y no tiene dependencias. Debido a los errores, el objetivo `%s' no se reconstruyó.Se necesita reconstruir el archivo objetivo `%s' con la opción -q. FinalizadoSe están construyendo las dependencias de `%s'. Trace/breakpoint trapProbando la dependencia implícita `%s'. Intentando una regla de patrón con la ramificación `%.*s'. Intentando la regla de dependencia `%s'. Instrucción interconstruida desconocida `%s'. Error desconocido %dActualizando los objetivos finales.... Actualizando archivos makefiles.... Condición urgente de I/OModo de empleo: %s [opciones] [objetivo] ... Acceso del usuarioSeñal 1 definida por el usuarioSeñal 2 definida por el usuarioSe utilizan las instrucciones por defecto para `%s'. El contador de tiempo virtual ha expiradoAtención: redirección vacía Atención: El archivo `%s' tiene una hora de modificación %.2g en el futuroAtención: El archivo `%s' tiene una hora de modificación en el futuroLa ventana ha cambiado[%s] Error %d (no tiene efecto)`%s' está actualizado.directiva de sobreposición `override'Se intentó utilizar una característica no implementada: `%s'automática/opero `%s' se considera ahora como el mismo archivo que `%s'.no se pueden reservar %ld bytes para la tabla de hash: memoria agotadano se pueden cambiar dos puntos (:) `%s' por un punto (.) `%s'no se puede cambiar un punto (.) `%s' por dos puntos (:) `%s'no se puede forzar la carga límite: no se pueden forzar los límites de carga en este sistema operativolínea de instruccioneslas instrucciones comenzaron antes del primer objetivocreando una tubería de trabajospor defectose hizo un sleep(30). Continuando. servidor de tareas duplicadoinstrucción `override' vacíano se permite que una cadena vacía sea el nombre de un archivonombre de variable vacíoentornocon -e activoirrelevante o mal colocado `%s'el `endef' es irrelevante o está mal colocadola ruta de búsqueda find_and_set_shell está puesta como default_shell = %s la variable find_and_set_shell puesta como default_shell = %s el primer argumento de la función `word' debe ser mayor a 0fopen (archivo temporal)fwrite (archivo temporal)se inicializa la tubería al servidor de tareaserror interno: `%s' command_stateerror interno: cadena --jobserver-fds inválida `%s'error interno: hay varias opciones --jobserver-fdsdirectiva de sobreposición `override' inválidasintaxis no válida en condicionalfallo en lbr$ini_control con estado = %dfallo en lbr$set_module para extraer la información del módulo, estado = %dmakefilefalta un `endef', no se terminó un `define'falta un `endif'falta una regla antes de las instruccionesfalta un separador%sfalta un patrón de objetivoslas reglas implícitas y las normales están mezcladaslas reglas implícitas y las de patrón estático están mezcladashay varios patrones de objetivosnono hay más manejadores de archivos: no se puede duplicar stdin no hay más manejadores de archivos: no se puede duplicar stdout el primer argumento de la función `word' no es numéricoel primer argumento de la función `wordlist' no es numéricoel primer argumento de la función `wordlist' no es numéricosólo se admite un `else' por condicionallos prerequisitos no pueden ser definidos por guiones de instruccionestubería de trabajos leídosspawnvpe: el espacio ambiental podría estar agotadofallo en sys$search con %d el archivo de objetivos `%s' no coincide con el patrón de objetivosel objetivo `%s' se proporcionó más de una vez en la misma regla.el archivo de objetivos `%s' tiene líneas con : y ::el patrón de objetivo no contiene `%%'la opción `-%c' requiere un argumento no-vacío de tipo cadenala opción `-%c' requiere un argumento positivo y enteroEl programa para hacer un `touch' no está disponible en VMStouch: El archivo `%s' no existetouch: Código de retorno erróneo de ar_member_touch en `%s'touch: El miembro `%s' no existe en `%s'touch: `%s' no es un archivo válidoError al abrir la biblioteca `%s' para buscar al elemento `%s'se especificó un nivel de depuración desconocido `%s'señal desconocidaunlink (archivo temporal)la llamada a la función `%s' no concluyó: falta `%c'la referencia a la variable está sin terminarmemoria virtual agotadaatención: Se ha detectado una desviación en el reloj. La construcción podría estar incompleta.atención: se fuerza a -jN en el submake: se deshabilita el modo de servidor de tareas.atención: hay un carácter NUL; se ignora el resto de la líneaatención: se ignoran las instrucciones viejas para el objetivo `%s'atención: el servidor de tareas no está disponible: se utilizará -j1. Añada `+' a la regla padre del make.atención: se imponen comandos para el objetivo `%s'atención: la variable `%.*s' no ha sido definidawindows32_openpipe (): fallo en process_init_fd() error al escribirerror al escribir: %sescribir en el servidor de tareasmake-dfsg-3.81.orig/po/es.po0000644000175000017500000023412210416553102016102 0ustar srivastasrivasta# Mensajes en español para GNU make. # Copyright (C) 1996, 2001 Free Software Foundation, Inc. # Max de Mendizábal , 1996, 2001. # msgid "" msgstr "" "Project-Id-Version: GNU 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-06-28 19:59-0500\n" "Last-Translator: Max de Mendizábal \n" "Language-Team: Spanish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8-bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "Se intentó utilizar una característica no implementada: `%s'" # Sugerencia: touch -> `touch'. sv # Ok, aceptada. A falta de cursivas... mm # No veo porqué no se ha de usar 'tocar' en vez de touch em+ # El mensaje además hace referencia a un touch de un objeto dentro # de una librería, y de eso no se dice nada en el mensaje. Creo que # hay que tener cuidado con estas cosas. # El programa para tocar un miembro de un archivo ... , y ahi estamos # ya en problemas con el dichoso archivo/fichero. # A ver que se os ocurre em+ # Enrique: touch es un programa del sistema operativo y sirve para # cambiar la fecha de un programa o archivo. Es decir lo "toca" y # modifica sus atributos. Por eso preferí no traducirlo. #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "El programa para hacer un `touch' no está disponible en VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: El archivo `%s' no existe" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' no es un archivo válido" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: El miembro `%s' no existe en `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Código de retorno erróneo de ar_member_touch en `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" "fallo en lbr$set_module para extraer la información del módulo, estado = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "fallo en lbr$ini_control con estado = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "Error al abrir la biblioteca `%s' para buscar al elemento `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Miembro `%s'%s: %ld bytes en %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (el nombre puede estar truncado)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Fecha %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, modo = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Break.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "" "*** [%s] Miembro de archivo `%s' podría estar incorrecto; aunque no se " "elimina" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "" "*** Miembro del archivo `%s' podría estar incorrecto; aunque no se elimina" # Propongo un cambio en el tiempo verbal: Se borra el archivo temporal. sv # Ok. mm #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Se borra el archivo `%s'" # Propongo un cambio en el tiempo verbal: Se borra el archivo temporal. sv # Ok. mm #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Se borra el archivo `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# comandos para ejecutar" #: commands.c:602 msgid " (built-in):" msgstr " (interconstruido):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (de `%s', linea %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Directorios\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: podría no estar establecido.\n" # ¿No sobraría el "posiblemente"? # Propongo dejarlo en " no se pudo abrir ". sv # Ok. Es consistente con otras traducciones. mm #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (llave %s, mtime %d): no se pudo abrir.\n" # En el K & R aparece inode traducido como nodo-i. ¿qué te parece? sv # Bien. Me gusta con el guioncito. mm #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "" "# %s (dispositivo %d, nodo-i [%d,%d,%d]): posiblemente no se pueda abrir.\n" # ¿No sobraría el "posiblemente"? # Propongo dejarlo en " no se pudo abrir ". sv # Ok. Es consistente con otras traducciones. mm #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (dispositivo %ld, nodo-i %ld): no se pudo abrir.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (llave %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (dispositivo %d, nodo-i [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (dispositivo %ld, nodo-i %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "No" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " archivos, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "no" #: dir.c:1058 msgid " impossibilities" msgstr " imposibilidades" # ¿"So far" no era "hasta ahora"? (no me hagas mucho caso) sv # Si tu traducción es mejor. Aceptada. mm #: dir.c:1062 msgid " so far." msgstr " hasta ahora." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " imposibilidades en %lu directorios.\n" # Creo que eventually sería "finalmente" o algo así. sv # Si, es finalmente no a veces. Ok. mm # referencia me parece que no lleva tilde. sv # No, no lleva acento. Me emocioné con elos. mm # Creeis de veras que tiene sentido 'finalmente'em+ # yo pondría ser termina autoreferenciando, por # ejemplo em+ # Mejor lo eliminamos. Es de alguna forma reiterativo e innecesario. # Lo de `al final' puede ser más confuso. mm #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "La variable recursiva `%s' se auto-referencia" # No me gusta nada ( lo siento ) # ¿ Qué tal : La referencia a una variable está sin terminar em+ # Creo que tienes razón la voz pasiva es muy desagradable. mm. #: expand.c:266 msgid "unterminated variable reference" msgstr "la referencia a la variable está sin terminar" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Las instrucciones fueron especificadas para el archivo `%s' en %s:%lu," # Buscando en las legras implícitas em+ # Utilicé por búsqueda en para evitar el gerundio. mm #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Las instrucciones para el archivo `%s' se encontraron por búsqueda en reglas " "implícitas," # "now" es "ahora". ¿te lo has comido consciente o inconscientemente? sv # inconscientemente. mm #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "pero `%s' se considera ahora como el mismo archivo que `%s'." # Lo repetiré una y mil veces... :-) # "To ignore" *no* es ignorar. sv # Propongo "no serán tenidas en cuenta" a falta de algo mejor. # Ok. Mi necedad sobrepasa el milenio. mm #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Las instrucciones para `%s' no serán tenidas en cuenta en favor de las que " "están en `%s'." # Me suena que eso de colon es algo así como punto, dos puntos o punto y coma. # ¿Podrías comprobarlo? sv # Es un punto sencillo (.). A ver si te gusta mi propuesta. mm #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "no se puede cambiar un punto (.) `%s' por dos puntos (:) `%s'" # Lo mismo. sv #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "no se pueden cambiar dos puntos (:) `%s' por un punto (.) `%s'" # Propongo un cambio en el tiempo verbal: Se borra el archivo temporal. sv # Ok. mm #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Se borra el archivo temporal `%s'" # Propongo un cambio en el tiempo verbal: Se borra el archivo temporal. sv # Ok. mm #: file.c:385 msgid "Removing intermediate files...\n" msgstr "*** Se borran los archivos temporales...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Fecha fuera de intervalo; sustituyéndola %s" #: file.c:782 msgid "Current time" msgstr "Hora actual" #: file.c:881 msgid "# Not a target:" msgstr "# No es un objetivo:" # Pondría: es una dependencia de em+ # Si, tienes razón. mm #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Archivo valioso (es una dependencia de .PRECIOUS)." # Lo mismo. Y traducir por falso es poco menos que poco exacto. # Los phony target de make son aquellos que se ejecutan siempre # sin tener en cuenta si existe un archivo con el nombre del objetivo # y de si es actual. Propondría incondicional en vez de falso, ya que # explica exactamente qué es un phony target em+ # No. Incondicional no es una traducción correcta. Que tal si al rato # se les ocurre hacer una nueva instrucción .INCONDITIONAL. # Si quieres podríamos pensar en otra traducción como señuelo o algo así. mm #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# objetivo falso (dependencia de .PHONY)." # FUZZY # Pondria línea de comandos # Y creo que no sé exactamente a que se refiere, No creo que haya visto # este mensaje nunca en make lo marco con FUZZY em+ # Están traduciendo commands como comandos? Son más bien ordenes o # instrucciones. Por mi parte no hay problema, incluso me gusta más # comandos, pero es un anglicismo. mm #: file.c:907 msgid "# Command-line target." msgstr "# Objetivo de línea de instrucciones." # Habría que entender esto # Creo que esto es lo que significa. El fuente no es demasiado claro. mm # Se refiere a que el fichero makefile es uno que encuentra por # defecto ( en este orden GNUmakefile, Makefile y makefile ) o uno # que está definido en la variable de entorno MAKEFILE em+ # Así pues tu traducción es completamente equivocada, lo siento. # Pondría: Fichero por defecto o definido en la variable MAKEFILE em+ # Cierto, lo has entendido bien. Arreglo acorde. mm #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Por omisión, MAKEFILES, o -include/sinclude makefile." # Propongo efectuada en lugar de terminada. sv # Ok. Es más literal. mm # Atención ! , es la búsqueda 'de'reglas implícitas em+ # Ok. Ojo, debo pluralizar regla e implícita. Platicarlo con Ulrich. mm #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# La búsqueda de reglas implícitas ha sido efectuada." # Propongo efectuada en lugar de terminada. sv # Ok. Es más literal. mm # Atención ! , es la búsqueda 'de'reglas implícitas em+ # Ok. Ojo, debo pluralizar regla e implícita. Platicarlo con Ulrich. mm #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# La búsqueda de reglas implícitas ha sido efectuada." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# rama del patrón implícita/estática: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# El archivo es una dependencia intermedia." # Sugerencia: "crea". sv # Ok. Aunque, viendolo bien, que tal "hace"? mm. #: file.c:919 msgid "# Also makes:" msgstr "# También hace:" # ¿y "comprobó"? sv # Ok. Mejora. mm # No pondría nunca, sino simplemente 'no se comprobó 'em+ # Si, es lo mismo pero es más español. mm #: file.c:925 msgid "# Modification time never checked." msgstr "# La fecha de modificación no se comprobó." #: file.c:927 msgid "# File does not exist." msgstr "# El archivo no existe." #: file.c:929 msgid "# File is very old." msgstr "# El archivo es muy viejo." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Última modificación %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# El archivo ha sido actualizado." #: file.c:937 msgid "# File has not been updated." msgstr "# El archivo ha sido actualizado." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Las instrucciones siguen ejecutándose (ESTO ES UN BUG)." # ¿No sería más bien "las instrucciones de las dependencias"? sv # Si, que babas soy. Ahora corrijo. mm #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "" "# Las instrucciones de las dependencias siguen ejecutándose (ESTO ES UN " "BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Actualizado con éxito." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Necesita ser actualizado (la opción -q está activa)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Fallo al ser actualizado." # ## Le he añadido un "¡" con tu permiso. # Gracias. No lo puse porque no se como poner ese símbolo con el # iso-accents-mode y luego se me olvidó. Por cierto, como se hace? # también tengo duda de la interrogación abierta. #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# ¡Valor inválido en el miembro `update_status'!" # ## Lo mismo. #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# ¡Valor inválido en el miembro `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Archivos" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# estadísticas de la tabla de hash de los archivos:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "el primer argumento de la función `word' no es numérico" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "el primer argumento de la función `word' debe ser mayor a 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "el primer argumento de la función `wordlist' no es numérico" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "el primer argumento de la función `wordlist' no es numérico" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: fallo en DuplicateHandle(In), (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "create_child_process: fallo en DuplicateHandle(Err), (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "Fallo en CreatePipe(), (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): fallo en process_init_fd()\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Limpiando el archivo temporal %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Número de argumentos (%d) insuficientes para la función `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "No implementado en esta plataforma: función `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "la llamada a la función `%s' no concluyó: falta `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: la opción `%s' es ambigua\n" # No admite ningún argumento. sv # Ok. Y vuelve la burra al trigo. mm #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: la opción `--%s' no admite ningún argumento\n" # Lo mismo. sv # Ok. mm #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: la opción `%c%s' no admite ningún argumento\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: la opción `%s' requiere un argumento\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opción no reconocida `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opción no reconocida `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opción inválida -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opción inválida -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: la opción requiere un argumento -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: la opción `-W %s' es ambigua\n" # No admite ningún argumento. sv # Ok. Y vuelve la burra al trigo. mm #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: la opción `-W %s' no admite ningún argumento\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "no se pueden reservar %ld bytes para la tabla de hash: memoria agotada" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Carga=%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 "Colisiones=%ld/%ld=%.0f%%" # Y no sería mejor "Buscando una regla implícita ..." # Ten en cuenta que este mensaje no parece un mensaje de error, sino más # de "debug" o de "verbose". sv # Cierto. mm #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Buscando una regla implícita para `%s'.\n" # Lo mismo. # Buscando una regla implítita para el miembro del archivo `%s' em+ # Se me resbaló. mm #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Buscando una regla implícita para el miembro del archivo `%s'.\n" # Pues si ilegal le suena a cárcel a Enrique, "evade" me suena a mí a # escaparse de la cárcel... (fuga de alcatraz :-) # te voy a dar yo a tí fuga ... em+ # ¿Qué te parecería "se evita"? sv # Me gusta evade, pero evita es correcto. Acepto tu sugerencia. mm # No me gusta se evita, pondría evitando em+ # Ok. Pero a mi paranoia de evitar gerundios dónde la dejas? mm #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Evitando la recursión en la regla implícita.\n" # FUZZY # Esto me suena fatal. Se a que se refiere, porque lo # he visto, pero en cristiano no se si podría entenderlo. # se refiere a las reglas del tipo % , lo pongo FUZZY , tendré # que pensar un poco en ello em+ # De momento cambio la regla patron por una regla de patron , y # pondría a toda costa gerundio ( intentando ) em+ # Ok con el gerundio. Pero también tengo que meditarlo. mm #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Intentando una regla de patrón con la ramificación `%.*s'.\n" # ## Corrijo la palabra "dependencia". sv # Cuando aparezca este mensaje tendrá poco menos que sentido # testimonial. Date cuenta que los argumentos estan cambiados. # Pon el orden correcto, siempre será más lógico que lo que vaya a # aparecer tal y como está ahora (Se rechaza la dependencia imposible # `%s' `%s )'em+ # Ok. mm #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Se rechaza la dependencia imposible `%s'.\n" # ## Corrijo la palabra "dependencia". sv # Cuando aparezca este mensaje tendrá poco menos que sentido # testimonial. Date cuenta que los argumentos estan cambiados. # Pon el orden correcto, siempre será más lógico que lo que vaya a # aparecer tal y como está ahora (Se rechaza la dependencia imposible # `%s' `%s )'em+ # Ok. mm #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Se rechaza la regla de dependencia imposible `%s'.\n" # Pues si ilegal le suena a cárcel a Enrique, "evade" me suena a mí a # escaparse de la cárcel... (fuga de alcatraz :-) # te voy a dar yo a tí fuga ... em+ # ¿Qué te parecería "se evita"? sv # Me gusta evade, pero evita es correcto. Acepto tu sugerencia. mm # No me gusta se evita, pondría evitando em+ # Ok. Pero a mi paranoia de evitar gerundios dónde la dejas? mm #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Probando la dependencia implícita `%s'.\n" # FUZZY # Esto me suena fatal. Se a que se refiere, porque lo # he visto, pero en cristiano no se si podría entenderlo. # se refiere a las reglas del tipo % , lo pongo FUZZY , tendré # que pensar un poco en ello em+ # De momento cambio la regla patron por una regla de patron , y # pondría a toda costa gerundio ( intentando ) em+ # Ok con el gerundio. Pero también tengo que meditarlo. mm #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Intentando la regla de dependencia `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Se encontró la dependencia `%s' como la VPATH `%s'.\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Se busca una regla con el archivo intermedio `%s'.\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "No se puede crear un archivo temporal\n" # Lo mismo. sv #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Error 0x%x (no tiene efecto)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Error 0x%x" # Lo mismo. sv #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Error %d (no tiene efecto)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Error %d" # Sugerencia: " (volcado de `core')". sv # volcado de `core' no significa nada, que te parece si mejor dejamos # el core dumped, o bien volcado del núcleo o algo así. Por el momento # no cambio nada. mm #: job.c:399 msgid " (core dumped)" msgstr " (core dumped) [Núcleo vaciado a un archivo]" # ¿Y job -> trabajos? sv # Si, pero no hablas de una computadora multi-trabajos sino multi-tareas. # Por eso elegí tareas. Lo platicamos con más calma? mm #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Se espera a que terminen otras tareas...." # ¿De verdad se dice "vivo"? Si es un proceso, se me ocurre "activo". sv # Me gusta lo de activo. mm #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Hijo activo 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (remoto)" # Lo mismo, pon Proceso hijo, y quita lo que hay # entre paréntesis em+ #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Se pierde al proceso hijo descarriado 0x%08lx PID %ld %s\n" # Lo mismo, pon Proceso hijo, y quita lo que hay # entre paréntesis em+ #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Se gana al proceso hijo descarriado 0x%08lx PID %ld %s\n" # Give up no es enfocar, es abandonar, o desistir em+ # Si, metí la pata. mm #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Se limpia el archivo temporal %s\n" # Proceso hijo em+ # Ok. #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Se elimina al proceso hijo 0x%08lx PID %ld%s de la cadena.\n" #: job.c:862 msgid "write jobserver" msgstr "escribir en el servidor de tareas" # Lo mismo, pon Proceso hijo, y quita lo que hay # entre paréntesis em+ #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Se libera el token para el proceso hijo 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "fallo en process_easy() al lanzar el proceso (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Se contaron %d argumentos en el lanzamiento fallido\n" # Proceso hijo em+ # Ok. #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Se pone al proceso hijo 0x%08lx (%s) PID %ld%s en la cadena.\n" # Lo mismo, pon Proceso hijo, y quita lo que hay # entre paréntesis em+ #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Se obtiene el token para el proceso hijo 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "tubería de trabajos leídos" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "no se pueden forzar los límites de carga en este sistema operativo" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "no se puede forzar la carga límite: " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "no hay más manejadores de archivos: no se puede duplicar stdin\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "no hay más manejadores de archivos: no se puede duplicar stdout\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "No se puede restaurar stdin\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "No se puede restaurar stdout\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "fallo en process_easy() al lanzar el proceso (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "hacer un hijo descarriado %d, aún esperando el pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: No se encontró el programa" # ¿Y "el programa Shell"? (a secas) sv # Si. Suena mucho mejor. mm # Suena, pero no es mejor. Tal y como esta escrito, incluso # yo pensaria que me falta un programa en mi sistema que se # llame shell. No se ha encontrado el 'shell'em+ # Es bueno contar con una segunda opinión ... mm #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: No se ha encontrado el `shell'" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: el espacio ambiental podría estar agotado" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL ha cambiado (era `%s' y ahora es `%s')\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Se crea el archivo temporal %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "%s (linea %d) Contexto de shell erróneo (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opciones:\n" # Lo mismo de arriba con "ignorar". sv # Ok. mm. #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr "" " -b, -m No se tendrá en cuenta por compatibilidad.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make Hace incondicionalmente todos los objetivos.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C DIRECTORIO, --directory=DIRECTORIO\n" " Se cambia al DIRECTORIO antes de hacer nada.\n" # ¿"depurado" o "depuración"? sv # Puse de depurado para evitar la cacofonía información depuración. # Sugerencias bienvenidas. mm #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d Se imprimirán grandes cantidades de información de depurado.\n" # ¿"depurado" o "depuración"? sv # Puse de depurado para evitar la cacofonía información depuración. # Sugerencias bienvenidas. mm #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=BANDERAS] Se imprimirán varios tipos de información de " "depurado.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Las variables ambientales se imponen a las de los " "makefiles.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f ARCHIVO, --file=ARCHIVO, --makefile=ARCHIVO\n" " Lee al ARCHIVO como un makefile.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Muestra este mensaje y finaliza.\n" # Ojo con ignorar. sv # Ok. mm # Por favor, si has traducido commands como instrucciones , hazlo aqui # tambien. # No me gusta este mensaje, preferiría: Se ignoran los errores obtenidos # en la ejecución de las instrucciones em+ #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" " -i, --ignore-errors No se toman en cuenta los errores provenientes " "de las instrucciones.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I DIRECTORIO, --include-dir=DIRECTORIO\n" " Busca dentro del DIRECTORIO los makefiles incluidos.\n" # Yo traduciría "infinite" por "infinitos", no por "una infinidad", que # parece que son muchos menos... sv # Ok. mm #: main.c:316 msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" " -j [N], --jobs[=N] Se permiten N trabajos a la vez; si no se " "especifica un\n" "argumento son infinitos.\n" # No entiendo por qué aquí empleas subjuntivo: "pudieron". sv # Es incorrecto. Es una de las opciones `k' que dice... mm #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Sigue avanzando aún cuando no se puedan crear " "algunos objetivos.\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" " No inicia con trabajos múltiples a menos que la carga esté por debajo " "de N.\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times Utiliza el último mtime entre los enlaces " "simbólicos y los objetivos.\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" " No ejecuta ninguna instrucción; sólo las " "muestra.\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 ARCHIVO, --old-file=ARCHIVO, --assume-old=ARCHIVO\n" " Supone que ARCHIVO es muy viejo y no lo " "reconstruye.\n" # de 'make' em+ # ok. mm #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base Se imprime la base de datos interna de " "`make'.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question No se ejecutan las instrucciones; el " "estado de salida\n" "indicará si están actualizados.\n" # ¿desabilitan o deshabilitan? sv # Error de dedo. mm # ¡ Por favor ! , ¿ pero qué es eso de interconstruidas ? # Pon almacenadas internamente, que es exactamente lo que son :) em+ # Bueno, bajo protesta. mm #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules Se deshabilitan las reglas implícitas " "almacenadas internamente.\n" # ¿desabilitan o deshabilitan? sv # Error de dedo. mm # ¡ Por favor ! , ¿ pero qué es eso de interconstruidas ? # Pon almacenadas internamente, que es exactamente lo que son :) em+ # Bueno, bajo protesta. mm #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Se deshabilitan los ajustes a las variables " "almacenadas internamente.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet No muestra las intrucciones.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Desactiva la opción -k.\n" # Se *tocan*, ¿no? sv # Si. mm # # Pues entonces cámbialo arriba tambien em+ # En donde? mm #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Se tocan los objetivos en vez de " "reconstruirlos.\n" # Me comería el "Se" inicial. "Muestra la versión..." sv # Ok. mm #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Muestra la versión del make y finaliza.\n" # Lo mismo. sv #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Muestra el directorio actual.\n" # Lo mismo. sv # Turn off , desactiva o deshabilita , pero no apaga em+ # apaga luz Mari Luz apaga luz ,que yo no puedo vivir con # tanta luz ... ( canción tradicional ) ( no lo pude evitar ) em+ # Juar, Juar, Juar. Coincido, pero el sentido es el mismo. mm #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Desactiva -w, aún cuando haya sido activado " "implícitamente.\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 ARCHIVO, --what-if=ARCHIVO, --new-file=ARCHIVO, --assume-new=ARCHIVO\n" " Supone que ARCHIVO es infinitamente " "reciente.\n" # Lo mismo. sv # Todas estas parecen descripciones de opciones. #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Advierte cuando se hace una referencia a una " "variable no definida.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "no se permite que una cadena vacía sea el nombre de un archivo" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "se especificó un nivel de depuración desconocido `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" "%s: Se atrapó una interrupción/excepción (código = 0x%x, dirección = 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" "Se ha llamado un filtro de excepción no manejado desde el programa %s\n" "Código de excepción %x\n" "Banderas de excepción %x\n" "Dirección de la excepción %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Violación de acceso: operación de escritura en la dirección %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Violación de acceso: operación de lectura en la dirección %x\n" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "la variable find_and_set_shell puesta como default_shell = %s\n" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" "la ruta de búsqueda find_and_set_shell está puesta como default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s está suspendida por 30 segundos..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "se hizo un sleep(30). Continuando.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "" "El archivo Makefile ha sido especificado dos veces desde la entrada estándard" #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (archivo temporal)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (archivo temporal)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "" "Los trabajos en paralelo (-j) no están implementados en esta plataforma." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Reajustando al modo monotarea (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "error interno: hay varias opciones --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "error interno: cadena --jobserver-fds inválida `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "atención: se fuerza a -jN en el submake: se deshabilita el modo de servidor " "de tareas." #: main.c:1684 msgid "dup jobserver" msgstr "servidor de tareas duplicado" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "atención: el servidor de tareas no está disponible: se utilizará -j1. Añada `" "+' a la regla padre del make." #: main.c:1710 msgid "creating jobs pipe" msgstr "creando una tubería de trabajos" #: main.c:1725 msgid "init jobserver pipe" msgstr "se inicializa la tubería al servidor de tareas" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "Los enlaces simbólicos no están implementados: se deshabilitan con -L." # Antes pusiste "makefiles". Coherencia. sv # Cierto. mm #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Actualizando archivos makefiles....\n" # Me comería el "archivo" inicial. # Ok. mm # "El Makefile `%s' ..." sv # Pondría ( como en un mensaje anterior ) se autoreferencia ... em+ # He puesto makefile con minúsculas , par ser coherentes em+ # Ok. Es más breve. mm. #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "El makefile `%s' se autoreferencia; por lo cual no se reconstruye.\n" # Lo mismo. sv #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Fallo al reconstruir el makefile `%s'." # Lo mismo. sv #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "No se encontró el makefile incluído `%s'." # Lo mismo. sv #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "No se encontró el Makefile `%s'" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "No se pudo regresar al directorio original." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Re-ejecutando[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (archivo temporal)" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr ".DEFAULT_GOAL contien más de un objetivo" # Sugerencia: "No se especificó ningún objetivo ... " sv # Ok. Me gusta. mm #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "No se especificó ningún objetivo y no se encontró ningún makefile" #: main.c:2191 msgid "No targets" msgstr "No hay objetivos" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Actualizando los objetivos finales....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "atención: Se ha detectado una desviación en el reloj. La construcción podría " "estar incompleta." # ¿Y Modo de empleo? sv # Soy medio bestia. Debería hacerlo automático. mm # "target" es "objetivo", no "objetivos". Fíjate que lleva puntos # suspensivos, permitiendo así varios objetivos. sv # Ok. mm #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Modo de empleo: %s [opciones] [objetivo] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Este programa fue construido para %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Este programa construido para %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Informe sobre los errores a \n" # Me comería el "de" de "requiere de" sv # Ok. mm #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "la opción `-%c' requiere un argumento no-vacío de tipo cadena" # Me comería el "de" de "requiere de" sv # Ok. mm #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "la opción `-%c' requiere un argumento positivo y entero" # De esto hablaremos otro día. sv # Si. Es bastante complicado. mm #: 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 "" "%sEste es software libre; consulte en el código fuente las condiciones de " "copia.\n" "%sNO hay garantía; ni siquiera para MERCANTIBILIDAD o EL CUMPLIMIENTO DE\n" "%sALGÚN PROPÓSITO PARTICULAR.\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" " %sEste programa fue construido para %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sEste programa fue construido para %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Base de datos del Make, mostrada en %s" # make -> Make. sv # Ok. mm # Porqué 'del', o pones 'del programa' Make o pones # 'de Make' em+ # Ok. mm #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Se termina la base de datos de Make en %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: se ingresa a un directorio desconocido\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: se sale del directorio desconocido\n" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: se ingresa al directorio `%s'\n" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: se sale del directorio `%s'\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: se ingresa a un directorio desconocido\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: se sale del directorio desconocido\n" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: se ingresa al directorio `%s'\n" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: se sale del directorio `%s'\n" # Interrumpido (?). sv # Mmgmh... El mensaje indica que hubo algún error muy grave y que por # eso se detiene el make. Probablemente sea mejor dejarlo así. mm #: misc.c:285 msgid ". Stop.\n" msgstr ". Alto.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Error desconocido %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" # Propongo eliminar la palabra virtual. sv # Pero si es muy bonita. :) Bueno. Como ya platicamos puede que sea # una buena idea pero, por ahora la dejaría. mm #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "memoria virtual agotada" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: usuario %lu (real %lu), grupo %lu (real %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Acceso inicializado" #: misc.c:746 msgid "User access" msgstr "Acceso del usuario" #: misc.c:794 msgid "Make access" msgstr "Acceso del Make" #: misc.c:828 msgid "Child access" msgstr "Acceso del hijo" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: misc.c:892 #, c-format msgid "write error: %s" msgstr "error al escribir: %s" #: misc.c:894 msgid "write error" msgstr "error al escribir" # Sugerencia: eliminar la palabra "archivo". sv # Ok. Mejora. mm #: read.c:160 msgid "Reading makefiles...\n" msgstr "Leyendo makefiles...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Leyendo makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (no hay objetivo por defecto)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (ruta de búsqueda)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (no importa)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (no hay expansión del ~)" # ## Sintaxis no llevaba tilde. # Ok. mm #: read.c:623 msgid "invalid syntax in conditional" msgstr "sintaxis no válida en condicional" #: read.c:633 msgid "extraneous `endef'" msgstr "el `endef' es irrelevante o está mal colocado" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "nombre de variable vacío" #: read.c:662 msgid "empty `override' directive" msgstr "instrucción `override' vacía" # Creo que tendremos un problema con instrucción, comando # , programa y directiva . Está claro que aquí es directiva em+ # Ok, pero no deja de sonar a RoboCop. A ver que te parece como quedó. mm #: read.c:687 msgid "invalid `override' directive" msgstr "directiva de sobreposición `override' inválida" #: read.c:854 msgid "commands commence before first target" msgstr "las instrucciones comenzaron antes del primer objetivo" # "falta una regla". sv # (es que extraviada me suena muy raro). # Cierto pareciera que se perdió dentro de algún circuito. mm # Falta 'la' regla em+ # No no es la regla sino una regla pues puede ser cualquiera de ellas. mm #: read.c:905 msgid "missing rule before commands" msgstr "falta una regla antes de las instrucciones" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "falta un separador%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (¿Quiere decir TAB en vez de 8 espacios?)" #: read.c:1152 msgid "missing target pattern" msgstr "falta un patrón de objetivos" #: read.c:1154 msgid "multiple target patterns" msgstr "hay varios patrones de objetivos" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "el patrón de objetivo no contiene `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "falta un `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "" "Hay un texto irrelevante o mal colocado después de la instrucción `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "falta un `endef', no se terminó un `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Texto irrelevante o mal colocado después de la instrucción `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "irrelevante o mal colocado `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "sólo se admite un `else' por condicional" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "" "La definición de las variables específicas al blanco está mal construida" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "los prerequisitos no pueden ser definidos por guiones de instrucciones" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "las reglas implícitas y las de patrón estático están mezcladas" # Y 'las' normales em+ # Ok. mm #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "las reglas implícitas y las normales están mezcladas" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "el archivo de objetivos `%s' no coincide con el patrón de objetivos" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "el archivo de objetivos `%s' tiene líneas con : y ::" # Cambiaría given por 'proporcionó' o 'indicó' em+ # Ok. mm #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "el objetivo `%s' se proporcionó más de una vez en la misma regla." # No me gusta esta traducción de override. Mira a ver # si encaja mejor alguna de las dos que se proponen arriba # em+ # Aunque no me acaba de convencer, que te parece ésto? mm #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "atención: se imponen comandos para el objetivo `%s'" # Ojo con ignora. sv #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "atención: se ignoran las instrucciones viejas para el objetivo `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "atención: hay un carácter NUL; se ignora el resto de la línea" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "No se hace nada para `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' está actualizado." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Se continúa actualizando el archivo `%s'.\n" # Sugerencia: No hay ninguna regla... sv # Como una no hay ninguna. mm #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sNo hay ninguna regla para construir el objetivo `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%sNo hay ninguna regla para construir el objetivo `%s', necesario para `%s'%s" # ¿target file no sería "archivo objetivo"? sv # Literalmente si pero un archivo make puede tener varios objetivos. mm # Max , pero no existe un archivo de objetivos. Esta línea, que es # de las que aparecen al hacer un make con la opción -d ( debug ) # se refiere a lo que dice Santiago, es decir, 'archivo objetivo' em+ # Ok creo que tienen razón. mm #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Se considera el archivo objetivo `%s'.\n" # Un compañero mío dice que una buena regla es poner siempre que se pueda # un número par de comas. # Es decir: "Se intentó, sin éxito, actualizar ..." # o bien "Se intentó sin éxito actualizar ..." # ¿Qué te parece? sv # Bien y tiene razón. mm #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Se intentó, sin éxito, actualizar el archivo `%s'.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "El archivo `%s' ya fue considerado.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Se continúa actualizando el archivo `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Se terminó de actualizar el archivo `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "El archivo `%s' no existe.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Atención: el archivo .LOW_RESOLUTION_TIME `%s' tiene una resolución " "demasiado alta" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Se encontró una regla implícita para `%s'.\n" # Se ha encontrado em+ # Ok, pero procuro evitar como a la muerte los gerundios. mm #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "No se ha encontrado una regla implícita para `%s'.\n" # Por defecto, como haces arriba em+ # en efecto, mm #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Se utilizan las instrucciones por defecto para `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Se elimina la dependencia circular %s <- %s." # Lo mismo de antes con "target file". sv # Estoy de acuerdo con él ( por una vez ;) ) em+ # Ok. mm #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Se terminaron las dependencias del archivo objetivo `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Se están construyendo las dependencias de `%s'.\n" # Give up no es enfocar, es abandonar, o desistir em+ # Si, metí la pata. mm #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Se abandona el archivo objetivo `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Debido a los errores, el objetivo `%s' no se reconstruyó." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "El prerequisito `%s' es posterior al objetivo `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "La dependencia `%s' del blanco `%s' no existe.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "La dependencia `%s' es más reciente que el objetivo `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "La dependencia `%s' es posterior al objetivo `%s'.\n" # Ahorra espacio, y pon '::' en vez de eso :) em+ # Bueno, no es mala idea. A ver si te gusta lo que puse. mm #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "" "El objetivo `%s' es de tipo dos puntos dos veces (::)\n" "y no tiene dependencias.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "No hay instrucciones para `%s' y ninguna dependencia cambió.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Haciendo `%s' debido a la bandera always-make.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "No es necesario reconstruir el objetivo `%s'." #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; se usa el nombre del VPATH `%s'" # Revisa todo el po con un search, y mira a ver si decides usar # regenerar o reconstruir ( prefiero lo último 10000 veces ) em+ # Ok, buena propuesta. mm #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Se debe reconstruir el objetivo `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Se ignora el nombre del VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Las instrucciones de `%s' se están ejecutando.\n" # Target file no es archivo de objetivos, sino el archivo objetivo # make no tiene ningún archivo de objetivos em+ # Ok. mm #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Fallo al reconstruir el archivo objetivo `%s'.\n" # Lo mismo em+ # Ok. mm #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Se reconstruyó con éxito el archivo objetivo `%s'.\n" # Otra vez em+ # Ok, no te puedes quejar de falta de consistencia en este caso! mm #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Se necesita reconstruir el archivo objetivo `%s' con la opción -q.\n" # Ubicada :)) , que tal futura, a secas ? em+ # Bueno, sonaba como StarTrek, muy chido, pero acepto tu sugerencia. mm #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Atención: El archivo `%s' tiene una hora de modificación en el futuro" # Ubicada :)) , que tal futura, a secas ? em+ # Bueno, sonaba como StarTrek, muy chido, pero acepto tu sugerencia. mm #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" "Atención: El archivo `%s' tiene una hora de modificación %.2g en el futuro" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "El elemento .LIBPATTERNS `%s' no es un patrón" # ¿Las aduanas? sv # Si, las aduanas de exportación de procesos. Suena rarísimo pero # revisé el código y todo parece apuntar a que así son las cosas. # Creo que esto es otra cosa. Custom se refiere a los valores dados # por el usuario ( customizables ) , y que no se exportarán se refiere # a que al llamar a otros makefiles, no serán pasados como valores # que se antepongan ( otro término para override ) a los que make # tiene por defecto . # La traducción exacta por tanto es, los valores definidos por el usuario # no se exportarán em+ # Muchísimo más claro (es más me gusta más en español que en inglés con tu # arreglo) mm #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Los valores definidos por el usuario no se exportarán: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Reglas implícitas." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# No hay reglas implícitas." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u reglas implícitas, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." # ## Añado ¡ con tu permiso. sv # Gracias. mm # ¿ qué tal erróneo ? em+ # Si, suena mejor. mm #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG: ¡num_pattern_rules erróneo! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "señal desconocida" #: signame.c:93 msgid "Hangup" msgstr "Colgado" # ¿ Y por qué no Interrupción ? em+ # Porque es una acción. De hecho es un mensaje que se envía a través # del sistema en este caso le enviarías un kill -INT num_proceso para # interrumpir al programa. Lo revisé contra el fuente. mm #: signame.c:96 msgid "Interrupt" msgstr "Interrumpir" #: signame.c:99 msgid "Quit" msgstr "Finalizar" #: signame.c:102 msgid "Illegal Instruction" msgstr "Instrucción no válida" # Los trap los hemos dejado como traps, simplemente. em+ # Ok. mm #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Trace/breakpoint trap" #: signame.c:110 msgid "Aborted" msgstr "Abortado" # Ponte de acuerdo con Enrique en cómo se traduce esto. # Enrique tiene esta misma frase en glibc. sv # Eso es :) IOT trap em+ # Ok. mm #: signame.c:113 msgid "IOT trap" msgstr "IOT trap" # Otra em+ # Ok. mm #: signame.c:116 msgid "EMT trap" msgstr "EMT trap" # Coma flotante, por favor. sv # Creeme que aquí lo de coma flotante no vale. Somos pro-yanquis y # por eso usamos el punto flotante. Debemos llegar a un acuerdo. # Por ahora pongo coma flotante para facilitar las cosas, pero bajo # protesta ;-) mm #: signame.c:119 msgid "Floating point exception" msgstr "Excepción de coma flotante" # "Terminado por la señal kill" quedaría un poco más suave ... sv # Enrique tiene en glibc "Terminado (killed)". sv # Bueno, creo que mi traducción es más exacta, concisa y clara # pero si insisten... Además recuerda en que estoy en un país # en donde asesinado es palabra de todos los días. mm #: signame.c:122 msgid "Killed" msgstr "Terminado (killed)" #: signame.c:125 msgid "Bus error" msgstr "Error en el bus" #: signame.c:128 msgid "Segmentation fault" msgstr "Fallo de segmentación" #: signame.c:131 msgid "Bad system call" msgstr "Llamada al sistema errónea" #: signame.c:134 msgid "Broken pipe" msgstr "Tubería rota" # ¿Temporizador? (así lo tradujo Enrique en glibc). sv # Suena como StarTrek. Mejor lo platico con él. A lo mejor # hasta lo convenzo. mm # Pues tendrás que darme razones em+ # Bueno, un alarm clock es una alarma del reloj. No tiene pierde. # Temporizador es una bonita palabra pero en donde dice que va a # sonar una campana para despertarte? mm #: signame.c:137 msgid "Alarm clock" msgstr "Alarma del reloj" #: signame.c:140 msgid "Terminated" msgstr "Finalizado" #: signame.c:143 msgid "User defined signal 1" msgstr "Señal 1 definida por el usuario" #: signame.c:146 msgid "User defined signal 2" msgstr "Señal 2 definida por el usuario" # Proceso hijo terminado em+ # Ok. mm #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Proceso hijo terminado" # Fallo. sv # Alimentación eléctrico em+ # Ok. mm #: signame.c:157 msgid "Power failure" msgstr "Falla de alimentación eléctrica" #: signame.c:160 msgid "Stopped" msgstr "Detenido" # Enrique hizo una preciosa traducción de este mensaje que, según él, # mejora el original. Era algo así como: # "Detenido (requiere entrada de terminal)". sv # Tiene razón se ve bien. mm # Requiere 'de';) , como te vea Santiago que le metes # otro 'de' otra vez ... em+ # Ok. mm #: signame.c:163 msgid "Stopped (tty input)" msgstr "Detenido (se requiere entrada de terminal)" # lo mismo, se requiere entrada de terminal , em+ # Ok. mm #: signame.c:166 msgid "Stopped (tty output)" msgstr "Detenido (se requiere salida de terminal)" # idem em+ #: signame.c:169 msgid "Stopped (signal)" msgstr "Detenido (se requiere una señal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Se agotó el tiempo de CPU permitido" #: signame.c:175 msgid "File size limit exceeded" msgstr "Se excedió el tamaño máximo de archivo permitido" #: signame.c:178 msgid "Virtual timer expired" msgstr "El contador de tiempo virtual ha expirado" # Nunca me enteré de cómo se traducía profile, pero perfil me suena raro. # ¿De dónde lo has sacado? sv # Es lo que quiere decir, ni modo. Perfil de un avión es plane profile. # Por cierto, lo más probable es que esta "traducción" haya que # modificarla para que sea entendible. mm # Esto lo tengo en glibc, lo mirare otro día. Estos mensajes no son # importantes em+ # Agregué unas palabras en aras de claridad (espero) mm #: signame.c:181 msgid "Profiling timer expired" msgstr "El contador de tiempo para la generación del perfil ha expirado" #: signame.c:187 msgid "Window changed" msgstr "La ventana ha cambiado" #: signame.c:190 msgid "Continued" msgstr "Continuado" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Condición urgente de I/O" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "Posible I/O" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Recurso perdido" #: signame.c:215 msgid "Danger signal" msgstr "Señal de peligro" #: signame.c:218 msgid "Information request" msgstr "Petición de información" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Coprocesador de punto flotante no disponible" #: 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 "por defecto" #: variable.c:1372 msgid "environment" msgstr "entorno" # Sugerencia: No poner archivo. sv # Ok. mm #: variable.c:1375 msgid "makefile" msgstr "makefile" # 'bajo -e' = 'con -e activo' em+ # Ok. Esta inversión en los idiomas sajones se pega. mm #: variable.c:1378 msgid "environment under -e" msgstr "con -e activo" # Línea de comandos me parece correcto em+ # Ver arriba. Estoy de acuerdo si así han traducido en otros lados. mm #: variable.c:1381 msgid "command line" msgstr "línea de instrucciones" # Creo que tendremos un problema con instrucción, comando # , programa y directiva . Está claro que aquí es directiva em+ # Ok, pero no deja de sonar a RoboCop. A ver que te parece como quedó. mm #: variable.c:1384 msgid "`override' directive" msgstr "directiva de sobreposición `override'" # Lo he cmabiado em+ # Ok. Deberíamos platicarlo con Ulrich. mm #: variable.c:1387 msgid "automatic" msgstr "automática/o" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (de `%s', línea %lu):" # Bueno. Aquí un punto de discusión. Traduzco buckets por cubetas o # mejor las dejo tal cual? Opiniones bienvenidas. mm # Estos mensajes son para debug, no creo que haga falta usar cubetas ;) em+ # Tienes razón, si el debugueador no lo entiende pues, ... que se # dedique a otra cosa. mm #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# estadísticas del conjunto de variables de la tabla de hash:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variables\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Valores de variables específicas al patrón" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# No hay valores de variables específicas al patrón." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u valores de variables específicas al patrón" # ¿Qué te parece "atención"? Lo hemos usado mucho en otros programas. sv # Pero que bestia soy. Perdón por el desbarre. mm #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "atención: la variable `%.*s' no ha sido definida" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "fallo en sys$search con %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Atención: redirección vacía\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "error interno: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-atención, CTRL-Y dejará vivos a los subprocesos.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-atención, deberás rehabilitar el manejo del CTRL-Y desde el DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "INTERCONSTRUIDO [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "CD INTERCONSTRUIDO %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "RM INTERCONSTRUIDO %s\n" # Por defecto, como haces arriba em+ # en efecto, mm #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Instrucción interconstruida desconocida `%s'.\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Error, comando vacío\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Entrada redirigida desde %s\n" # Probablemente sea aquí donde haya que ponerle el "el" para que "Entering" # concuerde bien con esta frase y con la anterior simultáneamente. sv # No. Ya revisé el fuente y transcribo el trozo pertinente: # char *message = entering ? "Entering" : "Leaving"; # if (makelevel == 0) # printf ("%s: %s ", program, message); # else # printf ("%s[%u]: %s ", program, makelevel, message); # Como notarás lo del directorio va en otro lado. #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Se redirecciona el error a %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Salida redirigida a %s\n" # "en sustituto" me suena muy raro. Propongo: "en su lugar" en su lugar :-) sv # Ok. mm #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "En su lugar, se ejecuta %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Error al lanzar el proceso %d\n" # ¿Y al revés?: Rutas de búsqueda VPATH. sv # Mejora #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# Rutas de búsqueda VPATH\n" # Rutas creo que queda mejor. sv # Ok. Es más común. mm #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# No hay rutas de búsqueda `vpath'." # ¡Ah! Aquí si que pones el vpath al final, ¿eh? :-) sv # You really got me! mm #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u rutas de búsqueda `vpath'.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# No hay ruta de búsqueda general (variable `VPATH')." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Ruta de búsqueda general (variable `VPATH'):\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "No especifique -j o --jobs si sh.exe no está disponible." #~ msgid "Resetting make for single job mode." #~ msgstr "Reajustando a make para el modo monotarea." # Esto habría que revisarlo. sv # En efecto, había que revisarlo, no es número de archivos # sino que no hay archivos. mm #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# No hay archivos." # Sugerencia: hash buckets -> `hash buckets' # (al menos hasta que sepamos lo que es, creo que me salió algo parecido # en recode). sv # Literalmente un hash bucket es un tonel de trozos. En un proceso de # partición por picadillo (hash) se deben definir "toneles" o "cubetas" # para guardar allí la información "hasheada". En otras palabras es el # tamaño de las entradas de índice hash. Claro como el lodo? # Finalmente, ok. Por ahora no traducimos hasta ponernos de acuerdo. #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u archivos en %u `hash buckets'.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# promedio de %.3f archivos por `bucket', max %u archivos en un " #~ "`bucket'.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Error de sintáxis, aún se está dentro de '\"'\n" # Recibida o capturada, pero por Dios , no pongas # 'se tiene' . En vez de hijo pon proceso hijo , y quita lo # que tienes entre paréntesis em+ # Lo del paréntesis era para escoger. mm #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Recibí una señal SIGCHLD; %u proceso hijo descarriado.\n" #~ msgid "DIRECTORY" #~ msgstr "DIRECTORIO" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "" #~ "Debe desplazarse al directorio DIRECTORY antes de hacer cualquier cosa" #~ msgid "FLAGS" #~ msgstr "BANDERAS" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Suspender el proceso para permitir que un depurador se utilice" #~ msgid "Environment variables override makefiles" #~ msgstr "Las variables de entorno tienen prioridad sobre los makefiles" #~ msgid "FILE" #~ msgstr "ARCHIVO" #~ msgid "Read FILE as a makefile" #~ msgstr "Se leyó el ARCHIVO como makefile" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Se buscan en DIRECTORIO los archivos makefile incluídos" # Esto me suena a descripción de una opción, más que a un mensaje de error. # Sugerencia por lo tanto: "No se lanzan ..." sv # Estás en lo correcto. mm #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "" #~ "No se lanzan varios trabajos a menos que la carga\n" #~ "sea inferior a N" # Lo mismo de antes. sv # Ok. mm #~ msgid "Don't actually run any commands; just print them" #~ msgstr "No se ejecutan las instrucciones; sólamente se muestran" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Se considera el ARCHIVO demasiado viejo y no se reconstruye" # ¿ qué te parece ... # No se hace echo de las instrucciones em+ # No me gusta. Que te parece lo que puse ahora? mm #~ msgid "Don't echo commands" #~ msgstr "Los comandos no se muestran con eco" # Corregido error de tecleos ;) em+ # Ok. #~ msgid "Turns off -k" #~ msgstr "Se deshabilita -k" # Lo mismo. sv # Se considera siempre como nuevo em+ # Ok. Elimino el 'se' porque está describiendo a una opción. mm #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Considera al ARCHIVO siempre como nuevo" # "Entrando en el" (fíjate que esto lo dice cuando entra en un directorio). # Habría que ver cómo queda. sv # Ver nota más adelante. mm # Cambiando a , me pareceria mucho mejor em+ # En efecto. mm #~ msgid "Entering" #~ msgstr "Cambiando a" # "Dejando el", "Abandonando el". sv # Que tal "saliendo"? mm # Prefiero 'abandonando' , o 'saliendo de' em+ # Que tal saliendo? mm #~ msgid "Leaving" #~ msgstr "Saliendo" # corregido el efecto indio , añado un 'un'em+ # Ok. mm #~ msgid "no file name for `%sinclude'" #~ msgstr "no hay un nombre de archivo para `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "El objetivo `%s' deja a los patrones de dependencias vacíos" #~ msgid "# No variables." #~ msgstr "# No hay variables." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# promedio de %.1f variables por `bucket', máx %u en un `bucket'.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# promedio de %d.%d variables por `bucket', máx %u en un `bucket'.\n" #~ msgid "Error in lbr$ini_control, %d\n" #~ msgstr "Error en lbr$ini_control, %d\n" #~ msgid "Error looking up module %s in library %s, %d\n" #~ msgstr "Error al buscar el módulo %s en la biblioteca %s, %d\n" #~ msgid "Error getting module info, %d\n" #~ msgstr "Error al intentar obtener la información del módulo, %d\n" #~ msgid "touch: " #~ msgstr "touch: " #~ msgid " not" #~ msgstr " no" #~ msgid "# Last modified %.24s (%0lx)\n" #~ msgstr "# Última modificación %.24s (%0lx)\n" #~ msgid "undefined" #~ msgstr "indefinido" #~ msgid "file" #~ msgstr "archivo" # ¿ crees sinceramente que esto lo puede entender alguien ? em+ # ¿ qué tal ? con preferencia sobre el entorno em+ # No, está en AIX, ahora lo arreglo. mm #~ msgid "environment override" #~ msgstr "con preferencia sobre el entorno" # Habra que compilar esto inmediatamente e instalar # el .po a ver que es esto em+ # No se puede por ahora pues make no ha sido internacionalizado aún. # Será una de las primeras cosas que haga en cuanto se pueda. mm #~ msgid "override" #~ msgstr "sobreposición" # Sugerencia: Borrar el "de" en "requiere de ..." sv # Perdón, siempre se me vá a pesar de haberlo discutido un buen rato. mm #~ msgid "the `word' function takes a one-origin index argument" #~ msgstr "la función `word' requiere un argumento indexado de tipo origen-uno" #~ msgid "implicit" #~ msgstr "implícita" #~ msgid "rule" #~ msgstr "regla" #~ msgid "Trying %s dependency `%s'.\n" #~ msgstr "Se intenta la dependencia %s `%s'.\n" #~ msgid "Found dependency as `%s'.%s\n" #~ msgstr "Se encuentra la dependencia como `%s'.%s\n" #~ msgid "intermediate" #~ msgstr "intermedia" # Preferiría mil veces "sin efecto" o algo parecido. sv # Ok. Habíamos quedado en `no tiene efecto'. mm #~ msgid " (ignored)" #~ msgstr " (no tiene efecto)" # Protestar al autor. No hay forma de poner trabajo(s) desconocido(s) # con coherencia. sv # Si, si no tienen identificado a su padre. Ni modo. mm # Pongo /s em+ # Ok. mm #~ msgid "Unknown%s job %d" #~ msgstr "Trabajo%s desconocido/s %d" #~ msgid " remote" #~ msgstr " remoto" #~ msgid "%s finished." #~ msgstr "%s terminado." #~ msgid "losing" #~ msgstr "se pierde" #~ msgid "winning" #~ msgstr "se gana" # No me gusta como queda así. # Sugerencia: "%sGNU Make versión %s" sv # Aceptada. mm #~ msgid "%sGNU Make version %s" #~ msgstr "%sGNU Make versión %s" #~ msgid "Unknown error 12345678901234567890" #~ msgstr "Error desconocido 12345678901234567890" #~ msgid "User" #~ msgstr "Usuario" #~ msgid "Make" #~ msgstr "Make" #~ msgid "Child" #~ msgstr "Hijo" #~ msgid "Dependency `%s' does not exist.\n" #~ msgstr "La dependencia `%s' no existe.\n" #~ msgid "newer" #~ msgstr "más reciente" #~ msgid "older" #~ msgstr "más antigua" # Sugerencia: `socket' sv # Ok. mm #~ msgid "exporting: Couldn't create return socket." #~ msgstr "exportando: No se puede crear el `socket' de regreso." #~ msgid "exporting: " #~ msgstr "exportando: " #~ msgid "exporting: %s" #~ msgstr "exportando: %s" #~ msgid "Job exported to %s ID %u\n" #~ msgstr "El trabajo ha sido exportado a %s ID %u\n" #~ msgid "Error getting load average" #~ msgstr "Error al obtener la carga promedio" #~ msgid "1-minute: %f " #~ msgstr "1-minuto: %f " #~ msgid "5-minute: %f " #~ msgstr "5-minutos: %f " #~ msgid "15-minute: %f " #~ msgstr "15-minutos: %f " # argv-elements -> elementos argv. sv # (A poco C que sepas, sabrás lo que es). # Algunos si, algunos no. Pero tienes razón. mm #~ msgid "digits occur in two different argv-elements.\n" #~ msgstr "los dígitos están en dos elementos argv distintos.\n" #~ msgid "option %c\n" #~ msgstr "opción %c\n" #~ msgid "option a\n" #~ msgstr "opción a\n" #~ msgid "option b\n" #~ msgstr "opción b\n" # Sugerencia: La opción c tiene el valor `%s' # Hay un mensaje idéntico en hello. sv # Me gusta mucho. mm #~ msgid "option c with value `%s'\n" #~ msgstr "La opción c tiene el valor `%s'\n" #~ msgid "?? getopt returned character code 0%o ??\n" #~ msgstr "?? getopt() regresó un cáracter con código 0%o ??\n" # Elementos ARGV que no son opciones: sv # Ok. mm. # Esto es: # Elementos de ARGV 'que' no son opciones: # pero tambien es un mensaje de debug del propio make, asi # que no me preocupa ( no aparecerá a usuarios normales de make ) em+ # Bueno, pero de todas formas se corrige. mm #~ msgid "non-option ARGV-elements: " #~ msgstr "los elementos ARGV que no son opciones: " #~ msgid "option d with value `%s'\n" #~ msgstr "opción d con valor `%s'\n" #~ msgid "%s: unknown signal" #~ msgstr "%s: señal desconocida" #~ msgid "Signal 12345678901234567890" #~ msgstr "Señal 12345678901234567890" #~ msgid "Signal %d" #~ msgstr "Señal %d" make-dfsg-3.81.orig/po/fi.gmo0000644000175000017500000010644210416553102016240 0ustar srivastasrivastaÞ•h\ çœ89V&o–¦!¯-Ñÿ -2`'v#žÂ Ùç "# "F i … L¦ Pó MD!@’!oÓ!oC"P³"F#JK#€–#9$CQ$f•$_ü$;\%;˜%OÔ%J$&}o&wí&~e'>ä'O#(Cs(3·(Fë(I2);|) ¸)Â)"ß) **(* G*U*l*…* * ²*¼*Ë*Ô*%å* +7+L+[+.s+1¢+Ô+í+,,(=,f,&{,*¢,+Í,+ù,%-#:-#^-)‚--¬-Ú-ó-$ .9/.i.3ˆ.¼..Ö./!/È5 6+6*=6h6€6 ˆ6"”6'·6ß6î6ý67 7 +757M7 m7 z7%‡7­7$Í7ò7= 8:J80…8¶8 Õ8ß8ø8+9!>9 `9 m9{9„9˜9®9$Ä9'é9:#1:U:"p:“:,¬:Ù:)÷:!;!:;&\;ƒ;£; ª;·;À;%Ô;ú;< !<+<2<0H<'y<3¡< Õ<+á< =-)=%W=-}='«=Ó=í=!ð=> 0>*;>f> ƒ>6> Ä>-Ò>-?1.?`?x?3Œ?À?Å?×?í?/@63@j@‚@œ@ µ@1Á@-ó@-!AOA"oA#’A ¶AÄAÍAÕAèAB BB0B&EB+lB)˜B ÂB*ÍBøB#C&2CYCyC—C¨CÀC!ÕC ÷CDD!/DQDgD=ƒD6ÁDøDEE3E(HE qE1{E9­EçE3F 7F%DFjF}F…F ¢F°F!ËFíF G G"G2G6EG.|G8«GäGûGH"'H3JH0~H¯HÌH'êH9ILI&UI|IŒI©I½IÔIíI0ðI1!J-SJ1J2³JæJ2K9K.HKwK,’K2¿K*òKL5=L6sL,ªL"×L3úL).M"XM1{M&­MÔMãM0ýM.NNN=gN9¥N1ßN.OH@O,‰O"¶O0ÙO PP&Pd6P›Q¶Q#ÒQöQ R&R+9ReR!yR-›RÉR%ãR# S-S AS+OS6{S;²S?îS4.T9cTGTPåTx6U=¯UiíUxWV|ÐVOMWRWðWM~XEÌXnYyY?ûYP;ZVŒZ{ãZ_[{ß[ˆ[\Dä\w)]M¡]6ï]C&^Fj^:±^ì^"û^&_E_\_<q_®_¿_Ý_ý_`-` 5` B`O`"_`‚`@–`×`ë`5a?6ava‘a®a Êa&ëab%.b*Tb1b1±bãb&üb(#c&Lc1sc¥cÃc%âc5d>d/^dŽd+©dÕdòd e(e&AeEhe®eÌeÕeÜe,öe"#f,Ff!sf•f7´f ìf g).g%Xg$~g)£g*Íg(øg%!h"Gh"jhBh0ÐhQi³Si0j&8j0_j%j7¶jîjýjk):kUdk<ºk!÷kl+l"?l8blO›lël+ôl( m Im jm vm&„m*«mÖmðm n'nGn Wndn)n©n Én"×n+ún+&oRoTno9Ão:ýo8pWp#`p#„p6¨p)ßp q q,q5qRqiq6‰q9Àq:úq75rmr"r°r,Ìrùr+sAs(Ss1|s!®sÐsßsïsøs5 t BtOt ntxt€t,›t-Èt=öt4uYTu$®u:Óu>v6Mv-„v$²v×v/Úv* w 5w3Aw+uw ¡w>®w íw-úw.(x3Wx‹xªx:Äx ÿx y(yGy9gy7¡y,Ùy%z',zTz-kz2™z5Ìz{I{"h{‹{ž{§{¯{(Ã{ ì{ø{| /|6P|;‡|5Ã| ù|)}.}0J}-{}5©}+ß} ~'~G~&`~‡~'¥~'Í~-õ~#!@Db6§Þï €"€<:€ w€:…€:À€&û€G" j-v¤¶½Ûø+‚C‚ Y‚e‚~‚“‚8«‚.ä‚AƒUƒqƒŽƒ#®ƒ>Òƒ4„$F„#k„'„C·„û„+…0…"A…d…v…Š…ž…M¡…Lï…7<†;t†5°†$æ†6 ‡B‡.R‡!‡*£‡:·5 ˆ#?ˆ5cˆ9™ˆ5Óˆ$ ‰C.‰0r‰&£‰5ʉ,Š-ŠAŠ4`Š!•Š·ŠWÏŠJ'‹;r‹7®‹kæ‹/RŒ-‚Œ6°ŒçŒöŒ %žÜ?,ó©”b´¼[…›°2P|V³9]N ;vŠQ>A™Ùœ· >(&"`xSú ¥WW n05 Ž=+u ;Fæ)6ÑöZcC&'.Ï[ 7)TÔA?Ký¢ B<’¤ôßFþ40+K:8‘JÁì{ƒ•3fá¹ÅÛüdM*Q=j_òkÉÎ$%Ê«ñLU 8#èÇg3ç-ІDb-Y²åðÌ(*¦_ÀNÞM ª^TXõïÿdÍûe»\½1¡÷a€“ê£lPãË~e/­.ÆYp‰"g G !ùV—G4Úfµ5hmîäJ@2ÕŸO˜š‚wE¬SéEXݺÒh<LDí@¾¿z#ØÖ9È7OoZR$6‹IÄ1®tø'×,¶`CRÓ!§iaÂy]^±câÃëà/qB}\:¨„¸ˆ–¯IrŒ ‡HsUH # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeDanger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLoad=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' not remade because of errors.TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-07-06 21:36+0300 Last-Translator: Lauri Nurmi Language-Team: Finnish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit # %u "vpath"-hakupolkua. # %u oletussääntöä, %u # %u hahmokohtaista muuttuja-arvoa # Hakemistot # Tiedostot # Make-tietokanta saatu valmiiksi %s # Yleinen ("VPATH"-muuttuja) hakupolku: # # Oletussäännöt # Make-tietokanta, tulostettu %s # Ei yleistä ("VPATH"-muuttuja) hakupolkua. # Ei oletussääntöjä. # Ei hahmokohtaisia muuttuja-arvoja. # Hahmokohtaisia muuttujien arvoja # VPATH-hakupolut # Muuttujat # tilasto tiedostojen hajautustaulusta: # %sTämä ohjelma on käännetty järjestelmälle %s. %sTämä ohjelma on käännetty järjestelmälle %s (%s). Laskettiin %d argumenttia epäonnistuneessa käynnistyksessä Tämä ohjelma on käännetty järjestelmälle %s. Tämä ohjelma on käännetty järjestelmälle %s (%s). --debug[=LIPUT] Näytä monenlaisia vianetsintätietoja. --no-print-directory Kumoa -w, vaikka se olisi käytössä oletuksena. --warn-undefined-variables Varoita viittauksista määrittelemättömiin muuttujiin. -B, --always-make Tuota kaikki kohteet ehdoitta. -C HAKEMISTO, --directory=HAKEMISTO Siirry HAKEMISTOon ennen jatkamista. -I HAKEMISTO, --include-dir=HAKEMISTO Etsi sisällytettäviä makefile:ja HAKEMISTOsta. -L, --check-symlink-times Käytä uusinta mtime-aikaa symlinkkien ja kohteen välillä. -R, --no-builtin-variables Poista käytöstä sisäiset muuttuja-asetukset. -S, --no-keep-going, --stop Kumoaa valitsimen -k. -W TIEDOSTO, --what-if=TIEDOSTO, --new-file=TIEDOSTO, --assume-new=TIEDOSTO Käsittele TIEDOSTO aina uutena. -b, -m Yhteensopivuuden vuoksi jätetään huomiotta. -d Näytä runsaasti vianetsintätietoja. -e, --environment-overrides Ympäristömuuttujat kumoavat makefile-tiedostot. -f TIEDOSTO, --file=TIEDOSTO, --makefile=TIEDOSTO Käytä TIEDOSTOa makefile-tiedostona. -h, --help Näytä tämä viesti ja poistu. -i, --ignore-errors Älä huomioi suoritettujen komentojen virheitä. -j [N], --jobs[=N] Salli N yhtäaikaista työtä; ilman N:ää ääretön. -k, --keep-going Jatka vaikka joidenkin kohteiden tuottaminen epäonnistuisi. -l [N], --load-average[=N], --max-load[=N] Älä aloita useita töitä ellei kuormitus alle N. -n, --just-print, --dry-run, --recon Näytä ajettavat komennot, älä käynnistä niitä. -o TIEDOSTO, --old-file=TIEDOSTO, --assume-old=TIEDOSTO Käsittele TIEDOSTO vanhana, älä tuota sitä. -p, --print-data-base Näytä make:in sisäinen tietokanta. -q, --question Älä aja komentoja; paluuarvo kertoo ajan- tasaisuuden. -r, --no-builtin-rules Poista käytöstä sisäiset oletussäännöt. -s, --silent, --quiet Älä kaiuta komentoja. -t, --touch Kosketa kohteita tuottamisen sijaan. -v, --version Näytä make:in versionumero ja poistu. -w, --print-directory Näytä nykyinen hakemisto. Päiväys %s Ei huomioida VPATH-nimeä "%s". uid = %d, gid = %d, oikeudet = 0%o. (sisäänrakennettu): (muisti vedostettu) (ehkä tarkoitit sarkainta eikä kahdeksaa välilyöntiä?) (ei välitetä) (tiedostosta "%s", rivi %lu) (tiedostosta "%s", rivi %lu): (nimi voi olla typistynyt) (ei ~-laajennusta) (etä) (hakupolku) tiedostoa, mahdottomuutta mahdottomuutta %lu hakemistossa. tähän mennessä.# Oletus-, MAKEFILES- tai -include/sinclude -makefile-tiedosto.# Tuotetaan myös:# Komentorivikohde.# Ajossa olevat komennot (TÄMÄ ON OHJELMISTOVIKA).# Ajossa olevat riippuvuuskomennot (TÄMÄ ON OHJELMISTOVIKA).# Päivitys epäonnistui.# Tiedosto ei ole olemassa.# Tiedosto on päivitetty.# Tiedostoa ei ole päivitetty.# Tiedosto on välitason ennakkoehto.# Tiedosto on hyvin vanha.# Oletussääntöhaku on suoritettu.# Oletussääntöhakua ei ole suoritettu.# Virheellinen arvo "command_state"-jäsenessä!# Virheellinen arvo "update_status"-jäsenessä!# Viimeksi muutettu %s # Muutosaikaa ei koskaan tarkastettu.# Vaatii päivitystä (-q on asetettu).# Valekohde (ennakkoehto .PHONY:lle).# Arvokas tiedosto (ennakkoehto .PRECIOUS:ille).# Päivitetty onnistuneesti.# käynnisetttävät komennot# %s (laite %d, i-solmu [%d,%d,%d]): # %s (laite %d, i-solmu [%d,%d,%d]): ei voitu avata. # %s (laite %ld, i-solmu %ld): # %s (laite %ld, i-solmu %ld): ei voitu avata. # %s (avain %s, maika %d: # %s (avain %s, maika %d): ei voitu avata. # %s: tilaa ei voitu lukea. # Ei "vpath"-hakupolkuja.# Ei kohde:# muuttujajoukon hajautustaulutilastot: $SHELL muuttunut (oli "%s", nyt "%s") %s (rivi %d) Väärä kuoriympäristö (!unixy && !batch_mode_shell) %s keskeytyy 30 sekunniksi...%s%s: %s%s: %s%s: Komentoa ei löytynyt%s: Siirrytään tuntemattomaan hakemistoon %s: Siirrytään hakemistoon "%s" %s: Poistutaan tuntemattomasta hakemistosta %s: Poistutaan hakemistosta "%s" %s: Kuoriohjelmaa ei löytynyt%s: Aikaleima ei ole sallitulla välillä, korvataan %s%s: virheellinen valitsin -- %c %s: virheellinen valitsin -- %c %s: valitsin "%c%s" ei salli argumenttia %s: valitsin "%s" on moniselitteinen %s: valitsin "%s" vaatii argumentin %s: valitsin "--%s" ei salli argumenttia %s: valitsin "-W %s" ei salli argumenttia %s: valitsin "-W %s" on moniselitteinen %s: valitsin vaatii argumentin -- %c %s: tunnistamaton valitsin "%c%s" %s: tunnistamaton valitsin "--%s" %s: käyttäjä %lu (todellinen %lu), ryhmä %lu (todellinen %lu) %sKohteen "%s" tuottamiseen ei ole sääntöä%s%1$s"%3$s"-kohteen tarvitseman kohteen "%2$s" tuottamiseen ei ole sääntöä%4$s%sTämä on vapaa ohjelmisto; katso kopiointiehdot lähdekoodista. %sTakuuta EI ole, ei edes KAUPALLISESTI HYVÄKSYTTÄVÄSTÄ LAADUSTA tai %sSOPIVUUDESTA TIETTYYN TARKOITUKSEEN. %s[%u]: Siirrytään tuntemattomaan hakemistoon %s[%u]: Siirrytään hakemistoon "%s" %s[%u]: Poistutaan tuntemattomasta hakemistosta %s[%u]: Poistutaan hakemistosta "%s" *** Arkistojäsen "%s" voi olla viallinen - ei poisteta*** Katkaisu. *** Poistetaan tiedosto "%s"*** Poistetaan aputiedosto "%s"*** Odotetaan keskeneräisiä töitä....*** Varoitus: .LOW_RESOLUTION_TIME-tiedostolla "%s" on korkearesoluutioinen aikaleima*** [%s] Arkistojäsen "%s" voi olla viallinen - ei poisteta*** [%s] Poistetaan tiedosto "%s"*** [%s] Virhe %d*** [%s] Virhe 0x%x*** [%s] Virhe 0x%x (ei huomioida)-varoitus, Ctrl-Y jättää aliprosessi(n/t) käyntiin. -varoitus, Ctrl-Y-käsittely on ehkä otettava uudelleen käyttöön DCL:stä. . Seis. .DEFAULT_GOAL sisältää yli yhden kohteen.LIBPATTERNS-elementti "%s" ei ole hahmo; käytetään VPATH-nimeä "%s"KeskeytettyHerätyskelloVältetään oletussääntörekursio. VIKA: num_pattern_rules väärä! %u != %uSISÄÄNRAKENNETTU CD %s SISÄÄNRAKENNETTU RM %s SISÄÄNRAKENNETTU [%s][%s] Virheellinen järjestelmäkutsuKatkennut putkiVäylävirheSuoritinaikaraja ylittynytVäliaikaistiedoston luominen ei onnistu Lapsiprosessin käyttöoikeudetLapsi lopettiKehäriippuvuus %s <- %s hylätty.Siivotaan väliaikainen komentotiedosto %s Siivotaan väliaikainen komentotiedosto %s Törmäykset=%ld/%ld=%.0f%%Tiedoston "%s" komentoja ei huomioida, vaan käytetään komentoja tiedostosta "%s".Tiedostolle "%s" löytyi komentoja oletussääntöhaussa,Tiedostolle "%s" määriteltiin komentoja paikassa %s:%lu,Tarkastellaan tiedostoa "%s". JatkettuVakiosyötettä ei voitu palauttaa Vakiotulostetta ei voitu palauttaa Ei voitu siirtyä takaisin alkuperäiseen hakemistoon.Luodaan väliaikainen komentotiedosto %s Tämänhetkinen aikaVaarasignaaliEMT-ansaVirhe käynnistyksessä, %d Virhe, tyhjä komento Käynnistetään sen sijaan %s Ylimääräistä tekstiä "%s"-toimintaohjeen jälkeenYlimääräistä tekstiä "endef"-toimintaohjeen jälkeenMakefile-tiedoston "%s" uudelleentuottaminen epäonnistui.Kohdetiedoston "%s" uudelleentuottaminen epäonnistui. Tiedosto "%s" ei ole olemassa. Tiedostoa "%s" on jo tarkasteltu. Tiedoston kokoraja ylitettyKohdetiedoston "%s" ennakkoehdot täytetty. Tiedosto "%s" päivitetty. Käytettävissä ei ole liukulukusuoritintaLiukulukupoikkeusKohteelle "%s" löytyi oletussääntö. Löydettiin ennakkoehto "%s", joka on VPATH "%s" Luovutaan kohdetiedostosta "%s". LinjankatkaisuI/O mahdollistaIOT-ansaVirheellinen käskySisällytettyä makefile-tiedostoa "%s" ei löytynyt.TietopyyntöAlkuperäiset käyttöoikeudetKeskeytysTapettuKuormitus=%ld/%ld=%.0f%%, Etsitään sääntöä aputiedostolla "%s". Etsitään oletussääntöä kohteelle "%s". Etsitään arkistojäsenen oletussääntöä kohteelle "%s". Make-prosessin käyttöoikeudetEi uudelleentuoteta makefile-tiedostoa "%s" - vältetään mahdollinen ikuinen silmukka. Makefile-tiedostoa "%s" ei löytynytMakefile-tiedosto vakiosyötteestä määritelty kahdesti.Tuotetaan "%s", koska --always-make -valitsin on käytössä. Väärin muotoiltu kohdekohtainen muuttujamäärittelyJäsen "%s"%s: %ld tavua kohdassa %ld (%ld). Kohde "%s" on tuotettava uudelleen. EiKohteelle "%s" ei löytynyt oletussääntöä. Ei tarvetta uudelleentuottaa kohdetta "%s"Ei kohteitaKohteita ei ole annettu, eikä makefileä löytynytKohteelle "%s" ei tarvitse tehdä mitään.Valitsimet: Rinnakkaiset työt (-j) eivät ole tuettuja tällä alustalla.SähkökatkoEnnakkoehto "%s" on uudempi kuin kohde "%s". Ennakkoehto "%s" on vanhempi kuin kohde "%s". Kohteen "%2$s" ennakkoehto "%1$s" ei ole olemassa. Profilointiajastin vanhentunutKarsitaan tiedosto "%s". Lisätään ketjuun lapsiprosessi 0x%08lx (%s) PID %ld%s. LopetettuUudelleenkäynnistetään[%u]:Luetaan makefile-tiedosto "%s"Luetaan makefile-tiedostoja... Tiedoston "%s" päivitysyritys epäonnistui äskettäin. Rekursiivinen muuttuja "%s" viittaa (lopulta) itseensäVirhetuloste uudelleenohjattu kohteeseen %s Syöte uudelleenohjattu kohteesta %s Tuloste uudelleenohjattu kohteeseen %s Uudelleenhajautus=%d, Hylätään mahdoton oletusennakkoehto "%s". Hylätään mahdoton säännön ennakkoehto "%s". Poistetaan ketjusta lapsiprosessi 0x%08lx PID %ld%s. Poistetaan aputiedostot... Ilmoita ohjelmistovioista (englanniksi) osoitteeseen . Palataan yhden työn (-j1) tilaan.Resurssi menetettySIGPHONESIGWINDMuistialueen ylitysPäivitetään edelleen tiedostoa "%s". PysäytettyPysäytetty (signaali)Pysäytetty (päätteen syöte)Pysäytetty (päätteen tuloste)Kohdetiedosto "%s" uudelleentuotettiin onnistuneesti. Ei tukea symbolisille linkeille: poistetaan -L käytöstä.Kohdetta "%s" ei tuotettu uudelleen virheiden vuoksi.PäätettyKohteen "%s" ennakkoehtoja täytetään. Jäljitys/katkaisupisteansaYritetään käyttää oletusennakkoehtoa "%s". Kokeillaan hahmosääntöä rungolla "%.*s". Yritetään käyttää säännön ennakkoehtoa "%s". Tuntematon sisäänrakennettu komento "%s" Tuntematon virhe %dPäivitetään makefile-tiedostoja.... Kiireellinen I/O-tilanneKäyttö: %s [valitsimet] [kohde] ... Käyttäjän käyttöoikeudetKäyttäjän määrittelemä signaali 1Käyttäjän määrittelemä signaali 2Käytetään oletuskomentoja kohteelle "%s". Virtuaaliajastin vanhentunutVaroitus: Tyhjä uudelleenohjaus Varoitus: Tiedoston "%s" muutosaika on %.2g sekuntia tulevaisuudessaVaroitus: Tiedoston "%s" muutosaika on tulevaisuudessaIkkuna vaihtunut[%s] Virhe %d (ei huomioida)"%s" on ajan tasalla."override"-toimintaohjeyritettiin käyttää ominaisuutta, jolle ei ole tukea: "%s"automaattinenmutta "%s":n katsotaan nyt olevan sama tiedosto kuin "%s".ei voida varata %ld tavua hajautustaululle: muisti lopussakuormarajaa ei voi ottaa käyttöön: kuormarajoja ei voi ottaa käyttöön tässä käyttöjärjestelmässäkomentorivikomennot alkavat ennen ensimmäistä kohdettaluodaan työputkioletussleep(30) valmis. Jatketaan. kaksinkertainen työpalvelintyhjä "override"-toimintaohjetyhjä merkkijono ei kelpaa tiedostonimeksityhjä muuttujan nimiympäristö-e:n alainen ympäristöylimääräinen "%s"ylimääräinen "endef"find_and_set_shell: polkuhaku asetti default_shell = %s find_and_set_shell asettaa default_shell = %s "word"-funktion ensimmäisen argumentin on oltava suurempi kuin 0fopen (väliaikaistiedosto)fwrite (väliaikaistiedosto)alustetaan työpalvelimen putkisisäinen virhe: "%s" command_statesisäinen virhe: virheellinen --jobserver-fds -merkkijono "%s"sisäinen virhe: useitan --jobserver-fds -valitsimiavirheellinen "override"-toimintaohjevirheellinen syntaksi ehtolauseessalbr$ini_control epäonnistui, tila = %dlbr$set_module epäonnistui moduulitietojen noutamisessa, tila = %dmakefilepuuttuva "endef", päättämätön "define"puuttuva "endif"puuttuva sääntö ennen komentojapuuttuva erotin%spuuttuva kohdehahmouseita kohdehahmojaeitiedostokahvoja ei ole enempää: vakiosyötteen kahdentaminen ei onnistunut tiedostokahvoja ei ole enempää: vakiotulosteen kahdentaminen epäonnistui ei-numeerinen ensimmäinen argumentti "word"-funktiolleei-numeerinen ensimmäinen argumentti "wordlist"-funktiolleei-numeerinen toinen argumentti "wordlist"-funktiollevain yksi "else" ehtolausetta kohdenennakkoehtoja ei voi määritellä komentoskripteissätyöputken lukuspawnvpe: ympäristötila saattaa olla lopussasys$search epäonnistui, arvo %d kohde "%s" ei täsmää kohdehahmon kanssakohde "%s" annettu yli yhden kerran samassa säännössä.kohdetiedostolla "%s" on sekä :- että ::-merkinnätkohdehahmo ei sisällä %%-merkkiävalitsin "-%c" vaatii ei-tyhjän merkkijonoargumentinvalitsin "-%c" vaatii positiivisen kokonaislukuargumentinarkistojäsenten kosketus ei ole mahdollista VMS:ssätouch: Arkistoa "%s" ei ole olemassatouch: ar_member_touch antoi virheellisen paluuarvon kohteesta "%s"touch: Arkistossa "%1$s" ei ole jäsentä "%2$s"touch: "%s" ei ole kelvollinen arkistokirjastoa "%s" ei voi avata jäsenen "%s" etsimiseksituntematon vianetsintätason määritys "%s"tuntematon signaaliunlink (väliaikaistiedosto): päättämätön kutsu funktioon "%s": puuttuva "%c"päättämätön muuttujaviittausvirtuaalimuisti lopussavaroitus: Havaittu väärä kellonaika. Käännösversio saattaa olla epätäydellinen.varoitus: -jN pakotettu ali-make:ssa: poistetaan työpalvelin käytöstä.varoitus: havaittu NUL-merkki, rivin loppuosaa ei huomioidavaroitus: ei huomioida vanhoja komentoja kohteelle "%s"varoitus: työpalvelin ei käytettävissä: käytetään -j1. Lisää "+" ylemmän tason make-sääntöön.varoitus: syrjäytetään kohteen "%s" komennotvaroitus: määrittelemätön muuttuja "%.*s"windows32_openpipe (): process_init_fd() epäonnistui kirjoitusvirhekirjoitusvirhe: %styöpalvelimen kirjoitusmake-dfsg-3.81.orig/po/fi.po0000644000175000017500000013670010416553102016074 0ustar srivastasrivasta# 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 , 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 \n" "Language-Team: Finnish \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 \n" msgstr "" "Ilmoita ohjelmistovioista (englanniksi) osoitteeseen .\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" make-dfsg-3.81.orig/po/fr.gmo0000644000175000017500000011353410416553102016251 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H=imi„i+œiCÈi% j=2j"pj-“jÁj(ÞjkDk>^kKk#ék lll'7l&_l#†l"ªl*Íl6øl/mKm/gm!—m+¹m/åm0n$Fn*kn"–n"¹n6Ün/oGCo¼‹o+Hp*tp'Ÿp&ÇpCîp 2q!>q/`q(qQ¹qH r&Tr{rŽr£r/ÂrDòr 7s'As2is$œsÁsÈs1Ïs,t.tFt^tyt t ›t©t$Ætët út*u#3u#Wu{uJ•u[àu3N},}'º} â}9ð}*~:D~ ~J‰~Ô~:å~4 =UA“Õï< €H€O€a€|€F–€FÝ€>$@c¤¾!Ýÿ4‚3K‚1‚>±‚+ð‚2ƒ?Oƒƒ ƒ©ƒ±ƒ(ȃñƒøƒ„!„/;„Bk„B®„>ñ„E0…v….~…­…*Â…-í…(†*D†o†"‚†¥†Ć!܆þ†‡%‡2:‡m‡ ‚‡K£‡Fï‡"6ˆYˆrˆ…ˆ?œˆ ܈LèˆD5‰Pz‰Pˉ-ŠHJŠ“Š0¥Š"ÖŠùŠ ‹(!‹J‹3f‹š‹ ¯‹½‹Ü‹ì‹Tÿ‹@TŒB•ŒØŒóŒ+%;;a3Ñ"ñ)ŽF>Ž…Ž*ŽŽ¹Ž#ÌŽðŽ( 4I~™89Ö6@G@ˆÉCè,‘4L‘‘4ž‘<Ó‘7’)H’<r’4¯’@ä’$%“<J“0‡“*¸“>ã“"”A”P”8m”#¦”Ê”Rä”O7•C‡•=Ë•s –9}–'·–1ß–—#—"9—­ä;—Ò<wÞ[`v,,0×Z65’l$ ÐDó"7O³ ªM4S<`Ñ |5DeÁã‚IJúákFù\¹fohõð/2©ßF>ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: GNU make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-06-29 08:00-0500 Last-Translator: Michel Robitaille Language-Team: French MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=2; plural=(n > 1); # %u chemins de recherche « vpath ». # %u règles implicites, %u # %u valeurs de variable avec modèle spécifique # Répertoires # Fichiers # Fin de la base de données de Make le %s # Chemin de recherche général (variable « VPATH ») : # # Régles Implicites # Base de données de Make, imprimée le %s # Pas de chemin de recherche général (variable « VPATH »). # Pas de règles implicites. # pas de valeurs de variable avec modèle spécifique # Valeurs de variable avec modèle spécifique # Chemins de Recherche VPATH # Variables # statistiques des fichiers de la table de hachage: # %sCe logiciel est construit pour %s %sCe logiciel est construit pour %s (%s) Dénombré %d arguments lors du lancement en échec Ce logiciel est construit pour %s Ce logiciel est construit pour %s (%s) --debug[=FANIONS] afficher divers types d'informations de débugging --no-print-directory désactiver l'option -w, même si elle a été activée implicitement --warn-undefined-variables prévenir lorsqu'une variable non définie est référencée -B, --always-make traiter toutes les cibles sans condition -C RÉPERTOIRE, --directory=RÉPERTOIRE changer de répertoire avant de faire quoi que ce soit -I RÉPERTOIRE, --include-dir=RÉPERTOIRE RÉPERTOIRE de recherche pour les fichiers inclus lors du makefile -L, --check-symlink-times utiliser le dernier mtime entre les liens symboliques et la cible. -R, --no-builtin-variables désactiver les variables d'initialisation des règles implicites internes -S, --no-keep-going, --stop désactivier -k -W FICHIER, --what-if=FICHIER, --new-file=FICHIER, --assume-new=FICHIER considérer le FICHIER comme étant toujours nouveau -b, -m ignoré pour compatibilité -d afficher beaucoup d'informations de débugging -e, --environment-overrides les variable d'environment écrase celles de makefile -f FICHIER, --file=FICHIER, --makefile=FICHIER lire le FICHIER comme fichier makefile -h, --help afficher ce message et quitter -i, --ignore-errors ignorer les erreurs d'exécution des commandes -j [N], --jobs[=N] autoriser N tâches simultanées ; nombre de tâches est infini si utilisé sans argument -k, --keep-going poursuivre même si certaines cibles n'ont pas pu être fabriquées -l [N], --load-average[=N], --max-load[=N] na pas lancer de multiples tâches à moins que la charge soit inférieure à N -n, --just-print, --dry-run, --recon ne pas exécuter aucune commande; seulement les afficher -o FICHIER, --old-file=FICHIER, --assume-old=FICHIER considérer le FICHIER comme étant très âgé et ne pas le retraiter -p, --print-data-base afficher la base de données interne de make -q, --question ne pas exécuter de commandes ; le statut de sortie indique si la cible est à jour -r, --no-builtin-rules désactiver les règles implicites internes -s, --silent, --quiet ne pas faire l'écho des commandes -t, --touch assigner l'heure actuelle aux cibles au lieu de les refabriquer -v, --version afficher le numéro de version de make et quitter -w, --print-directory afficher le répertoire courant Date %s Ignorer le nom « %s » du VPATH. uid = %d, gid = %d, mode = 0%o. (commande interne): (vidange mémoire) (voulez-vous dire TAB au lieu de 8 blancs d'espacement?) (n'importe pas) (de « %s », ligne %lu) (de « %s », ligne %lu): (le nom peut être tronqué) (pas de cible par défaut) (pas de remplacement du ~) (distant) (chemin de recherche) fichiers, impossibilités impossibilités dans %lu répertoires. jusqu'ici. terminales.# Une valeur par défaut MAKEFILES ou -include/sinclude makefile.# Fabrique également :# Cible provenant de la ligne de commande.# Commandes en cours d'exécution (CECI EST UN BUG).# Commandes de dépendances en cours d'exécution (CECI EST UN BUG).# N'a pas pu être mis à jour.# Fichier inexistant.# Fichier a été mis à jour.# Fichier n'a pas été mis à jour.# Ce fichier est une dépendance intermédiaire.# Fichier très âgé.# Recherche de règle implicite effectuée.# Recherche de règle implicite n'a pas été effectuée.# Préfixe de schéma implicite/statique : « %s » # Valeur non valable dans le membre « command_state » !# Valeur non valable dans le membre « update_status » !# Dernière modification %s # Heure de modification jamais vérifiée.# A besoin d'être mis à jour (l'option -q est activée).# Cible factice (dépendance de .PHONY).# Fichier précieux (dépendance de .PRECIOUS).# Mise à jour réussie# commandes à exécuter# %s (périphérique %d, inode [%d,%d,%d]) : # %s (périphérique %d, inode [%d,%d,%d]) : n'a pas pu être ouvert. # %s (périphérique %ld, inode %ld) : # %s (périphérique %ld, inode %ld) : n'a pas pu être ouvert. # %s (périphérique %s, mtime %d): # %s (clé %s, mtime %d): n'a pu être ouvert. # %s : statut indisponible. # Pas de chemins de recherche « vpath ».# Pas une cible :# variables initialisées dans les statistiques de table de hachage: $SHELL a été modifié (était « %s » et maintenant est « %s ») %s (ligne %d) contexte erroné d'interpréteur (!unixy && !batch_mode_shell) %s est suspendu pour 30 secondes...%s%s: %s%s: %s%s : commande introuvable%s: entrant dans un répertoire inconnu %s: entrant dans le répertoire « %s » %s: quittant un répertoire inconnu %s: quittant le répertoire « %s » %s : interpréteur de commandes introuvable%s: tampon date-heure hors limite; substitution par %s%s : option illégale -- %c %s : option invalide -- %c %s : l'option « %c%s » ne prend pas d'argument %s : l'option « %s » est ambiguë %s : l'option « %s » nécessite un argument %s : l'option « --%s » ne prend pas d'argument %s : l'option « -W %s » ne prend pas d'argument %s : l'option « -W %s » est ambiguë %s : l'option nécessite un argument -- %c %s : option non reconnue « %c%s » %s : option non reconnue « --%s » %s: utilisateur %lu (reél %lu), groupe %lu (réel %lu) %sPas de règle pour fabriquer la cible « %s »%s%sPas de règle pour fabriquer la cible « %s », nécessaire pour « %s »%s%sCeci est un logiciel libre ; voir le source pour les conditions de copie. %sIl n'y a PAS de garantie ; tant pour une utilisation COMMERCIALE que pour %sRÉPONDRE À UN BESOIN PARTICULIER. %s[%u]: entrant dans un répertoire inconnu %s[%u]: entrant dans le répertoire « %s » %s[%u]: quittant un répertoire inconnu %s[%u]: quittant le répertoire « %s » *** membre d'archive « %s » peut être corrompu; n'a pas été détruit*** Break. *** Destruction du fichier « %s »*** Suppression du fichier intermédiaire « %s »*** Attente des tâches non terminées....AVERTISSEMENT: fichier .LOW_RESOLUTION_TIME « %s » a une date de haute résolution*** [%s] membre d'archive « %s » peut être corrompu; n'a pas été détruit*** [%s] Destruction du fichier « %s »*** [%s] Erreur %d*** [%s] Erreur 0x%x*** [%s] Erreur 0x%x (ignorée)-warning, CTRL-Y laissera les sous-processsus. -warning, vous devrez ré-activier par CTRL-Y le traitement par DCL. . Arrêt. .DEFAULT_GOAL conteitn plus d'une cible.LIBPATTERNS: l'élément « %s » n'est pas un modèle; utilisation du nom « %s » du VPATHAvortéAlarmeÉvitement de récursion dans une régle implicite. BUG : num_pattern_rules est faux ! %u != %uCommande interne CD %s Commande internr RM %s Commande interne [%s][%s] Appel système invalideTube casséErreur de busLimite du temps CPU atteinteNe peut créer un fichier temporaire Accès des filsFin d'un filsDépendance circulaire %s <- %s abandonnée.Nettoyage du fichier temporaire %s Nettoyage du fichier temporaire %s Collisions=%ld/%ld=%.0f%%Les commandes pour « %s » seront ignorées en faveur de celles pour « %s ».Les commandes pour le fichier « %s » ont été trouvées par une recherche de règle implicite,Les commandes de « %s » sont en cours d'exécution. Les commandes pour le fichier « %s » ont été spécifiées à %s:%lu,Étude du fichier cible « %s ». RepriseNe peut restaurer stdin Ne peut restaurer stdout Impossible de revenir dans le répertoire d'origine.Création d'un fichier temporaire %s Heure couranteLa douane n'exportera pas : %s Signal de dangerAppel émulateurErreur de lancement de tâche, %d Erreur, commande vide Exécution de %s à la place Texte superflu après la directive « %s »Texte superflu après la directive « endef »Échec de refabrication du makefile « %s ».Échec de refabrication du fichier cible « %s ». Le fichier « %s » n'existe pas. Le fichier « %s » a déjà été étudié. Limite de taille de fichier atteinteFin des dépendances du fichier cible « %s ». Fin de la mise à jour du fichier « %s ». Co-processeur en virgule flottante n'est pas disponibleException numériqueRègle implicite trouvée pour « %s ». Dépendance trouvée « %s » comme VPATH « %s » Abandon du fichier cible « %s ». RaccrochéE/S possibleAppel IOTInstruction IllégaleLe makefile inclus « %s » n'a pas été trouvé.Demande d'informationsAccès initialiséInterruptionTuéProcessus fils actif 0x%08lx (%s) PID %ld %s Charge=%ld/%ld=%.0f%%, Recherche d'une règle contenant le fichier intermédaire « %s ». Recherche d'une règle implicite pour « %s ». Recherche d'une règle implicite de membre d'archive pour « %s ». Accès de MakeLe makefile « %s » peut boucler ; pas de refabrication. Le makefile « %s » n'a pas été trouvéMakefile depuis l'entrée stadnard spécifié deux fois.Traitement de « %s » en raison du fanion de construction permanent. Définition de variable par cible spécifique mal-composéeMembre « %s »%s: %ld octets a %ld (%ld). Il faut refabriquer la cible « %s ». Pas dePas de commandes pour « %s » et aucune dépendance n'a changé. Pas de règle implicite trouvée pour « %s ». Inutile de refabriquer la cible « %s ».Pas de ciblesPas de cibles spécifiées et aucun makefile n'a été trouvéRien à faire pour « %s ».Obtention d'un jeton pour le processus fils 0x%08lx (%s). Options: Les tâches en parallèle (-j) ne sont pas supportées sur cette plate-forme.Panne de courantLa dépendance « %s » est plus récente que la cile « %s ». La dépendance « %s » est vieux que la cible « %s ». Prérequis « %s » est d'ordre seulement pour la cible « %s ». Le fichier de dépendance « %s » de la cible « %s » n'existe pas. Timer de profiling expiréÉlagage du fichier « %s ». Ajout du processus fils 0x%08lx (%s) PID %ld%s à la chaîne. QuitteRé-exécution[%u]:Lecture du makefile « %s »Lecture des makefiles... Récupération du statut de sortie du processus fils 0x%08lx PID %ld %s Récupération du statut de sortie du processus fils 0x%08lx PID %ld %s Tentative récente échouée de mettre à jour le fichier « %s ». La variable récursive « %s » se référence elle-même (finalement)Erreur redirigée vers %s Redirection de l'entrée de %s Redirection de la sortie vers %s Refait le hachage=%d, Rejet impossible d'une dépendance implicite « %s ». Rejet impossible d'une dépendance de règle « %s ». Relâche du jeton du processus fils 0x%08lx (%s). Suppression du processus fils 0x%08lx PID %ld%s de la chaîne. Suppression des fichiers intermédiaires... Rapporter toutes anomalies à . Réinitialisation en mode simple de traitement des tâches (-j1).Ressource perdueSIGPHONESIGWINDErreur de segmentationMise à jour du fichier « %s » en cours. ArrêtéArrêté (signal)Arrêté (lecture sur tty)Arrêté (écriture sur tty)Refabrication du fichier cible « %s » réussie. Les liens symboliques ne sont pas supportées: désactivation de -L.La cible « %s » est double deux-points et n'a pas de dépendances. La cible « %s » n'a pas pu être refabriquée à cause d'erreurs.Le fichier cible « %s » a besoin d'être refabriqué avec l'option -q. TerminéLes dépendances de « %s » ont été fabriquées. Point de trace/arrêtEssaie de la dépendance implicite « %s ». Essai du schéma avec « %.*s » comme préfixe. Essai de la règle de dépendance « %s ». Utilisation des commandes internes « %s » Erreur inconnue %dMise à jour des cibles visées.... Mise à jour des makefiles.... Condition d'E/S urgenteUsage : %s [options] [cible] ... Accès utilisateurSignal utilisateur 1Signal utilisateur 2Utilisation des commandes par défaut pour « %s ». Timer virtuel expiréAVERTISSEMENT: redirection vide AVERTISSEMENT: fichier « %s » a une date de modification %.2g dans le futurAVERTISSEMENT: fichier « %s » a une date de modification dans le futurChangement de taille de la fenêtre[%s] Erreur %d (ignorée)« %s » est à jour.directive « override »tentative d'utiliser une caractéristique non supportée : « %s »automatiquemais « %s » est maintenant considéré comme étant le même fichier que « %s ».ne peut allouer %ld octets pour la table de hachage: mémoire épuiséeimpossible de renommer le double deux-points « %s » en simple deux-points « %s »impossible de renommer le simple deux-points « %s » en double deux-points « %s »impossible d'imposer des limites de charge : impossible d'imposer des limites de charge sur ce système d'exploitationligne de commandeles commandes commencent avant la première ciblecréation des pipes pour les tâchesdéfautsommeil terminé(30). Poursuite. duplication par dup du serveur de tâchesdirective « override » videune chaîne vide n'est pas un nom de fichier valablenom de variable videenvironnementenvironnement avec l'option -e« %s » superflu« endef » superflufind_and_set_shell chemin de recherche initialisé aux paramètres default_shell = %s find_and_set_shell initialisé aux paramètres default_shell = %s premier argument de la fonction « word » dot être plus grand que 0fopen (fichier temporaire)fwrite (fichier temporaire)initialisation du pipe du serveur de tâcheserreur interne : « %s » command_stateerreur interne: chaîne « %s » invalide dans --jobserver-fdserreur interne: options multiple de --jobserver-fdsdirective « override » invalidesyntaxe invalide dans la conditionlbr$ini_control en échec avec l'état = %dlbr$set_module en échec lors de l'extraction du module info, état = %dmakefile« endef » manquant, « define » non terminé« endif » manquantrègle manquante avant les commandesséparateur manquant %sschéma de cible manquantmélange de règles implicites et normalesmélange de schémas de règles implicites et statiquesschémas de cible multiplesnonplus de pointeurs de fichiers: ne peut duplicater stdin plus de pointeurs de fichiers: ne peut duplicater stdout premier argument de la fonction « word » non numériquepremier argument de la fonction « wordlist » n'est pas numériquepremier argument de la fonction « wordlist » n'est pas numériqueun seul « else » par conditionles prérequis ne peuvent être définis dans des scripts de commandeslecture des pipes des processusspawnvpe: l'espace de l'environment peut être épuisésys$serach en échec avec %d la cible « %s » ne correspond pas au schéma de ciblela cible « %s » apparaît plus d'une fois dans la même règle.le fichier cible « %s » a à la fois des entrées : et ::le schéma de cible ne contient pas « %% »l'option « -%c » requiert une chaîne non vide comme argumentl'option « -%c » prend en argument un entier positifimpossible de modifier la date d'un membre d'une archive sur VMStouch: L'archive « %s » n'existe pastouch: Mauvais code de retour de ar_member_touch pour « %s »touch: Le membre « %s » n'existe pas dans « %s »touch: « %s » n'est pas une archive validene peut ouvrir la librairie %s pour y repérer le membre « %s »niveau de débug inconnu « %s »signal inconnuunlink (fichier temporaire):appel à la fonction « %s » non terminé : « %c » manquantréférence incomplète à une variablemémoire virtuelle épuiséeAVERTISSEMENT: changement d'horloge détecté. La construction peut être incomplète.AVERTISSEMENT: -jN forcé dans submake: désactivation du mode serveur de taches.attention : caractère NUL détecté ; le reste de la ligne est ignoréattention : anciennes commandes ignorées pour la cible « %s »AVERTISSEMENT: serveur de tâches n'est pas disponible: utilisation de -j1. Ajouter « + » à la règle parent du make.attention : écrasement des commandes pour la cible « %s »attention : variable indéfinie « %.*s »windows32_openpipe(): process_init_fd() en échec erreur d'écritureErreur d'écriture: %sécriture vers le serveur de tâchesmake-dfsg-3.81.orig/po/fr.po0000644000175000017500000015522410416553102016107 0ustar srivastasrivasta# Messages français pour make. # Copyright © 2004 Free Software Foundation, Inc. # Michel Robitaille , traducteur depuis/since 1996. # # 30-juillet-2001, n'avons plus de nouvelle de Marc depuis 5 janvier 1997 # Marc Baudoin , Frédéric Liné , 1996. # msgid "" msgstr "" "Project-Id-Version: GNU 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-06-29 08:00-0500\n" "Last-Translator: Michel Robitaille \n" "Language-Team: French \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "tentative d'utiliser une caractéristique non supportée : « %s »" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "impossible de modifier la date d'un membre d'une archive sur VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: L'archive « %s » n'existe pas" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: « %s » n'est pas une archive valide" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Le membre « %s » n'existe pas dans « %s »" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Mauvais code de retour de ar_member_touch pour « %s »" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module en échec lors de l'extraction du module info, état = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control en échec avec l'état = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "ne peut ouvrir la librairie %s pour y repérer le membre « %s »" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Membre « %s »%s: %ld octets a %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (le nom peut être tronqué)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Date %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Break.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "" "*** [%s] membre d'archive « %s » peut être corrompu; n'a pas été détruit" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** membre d'archive « %s » peut être corrompu; n'a pas été détruit" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Destruction du fichier « %s »" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Destruction du fichier « %s »" #: commands.c:599 msgid "# commands to execute" msgstr "# commandes à exécuter" #: commands.c:602 msgid " (built-in):" msgstr " (commande interne):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (de « %s », ligne %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Répertoires\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s : statut indisponible.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (clé %s, mtime %d): n'a pu être ouvert.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (périphérique %d, inode [%d,%d,%d]) : n'a pas pu être ouvert.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (périphérique %ld, inode %ld) : n'a pas pu être ouvert.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (périphérique %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (périphérique %d, inode [%d,%d,%d]) : " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (périphérique %ld, inode %ld) : " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Pas de" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " fichiers, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "non" #: dir.c:1058 msgid " impossibilities" msgstr " impossibilités" #: dir.c:1062 msgid " so far." msgstr " jusqu'ici." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " impossibilités dans %lu répertoires.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "La variable récursive « %s » se référence elle-même (finalement)" #: expand.c:266 msgid "unterminated variable reference" msgstr "référence incomplète à une variable" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Les commandes pour le fichier « %s » ont été spécifiées à %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Les commandes pour le fichier « %s » ont été trouvées par une recherche de " "règle implicite," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "" "mais « %s » est maintenant considéré comme étant le même fichier que « %s »." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Les commandes pour « %s » seront ignorées en faveur de celles pour « %s »." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "impossible de renommer le simple deux-points « %s » en double deux-points « %" "s »" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "impossible de renommer le double deux-points « %s » en simple deux-points « %" "s »" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Suppression du fichier intermédiaire « %s »" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Suppression des fichiers intermédiaires...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: tampon date-heure hors limite; substitution par %s" #: file.c:782 msgid "Current time" msgstr "Heure courante" #: file.c:881 msgid "# Not a target:" msgstr "# Pas une cible :" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Fichier précieux (dépendance de .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Cible factice (dépendance de .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Cible provenant de la ligne de commande." #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Une valeur par défaut MAKEFILES ou -include/sinclude makefile." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Recherche de règle implicite effectuée." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Recherche de règle implicite n'a pas été effectuée." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Préfixe de schéma implicite/statique : « %s »\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Ce fichier est une dépendance intermédiaire." #: file.c:919 msgid "# Also makes:" msgstr "# Fabrique également :" #: file.c:925 msgid "# Modification time never checked." msgstr "# Heure de modification jamais vérifiée." #: file.c:927 msgid "# File does not exist." msgstr "# Fichier inexistant." #: file.c:929 msgid "# File is very old." msgstr "# Fichier très âgé." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Dernière modification %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Fichier a été mis à jour." #: file.c:937 msgid "# File has not been updated." msgstr "# Fichier n'a pas été mis à jour." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Commandes en cours d'exécution (CECI EST UN BUG)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Commandes de dépendances en cours d'exécution (CECI EST UN BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Mise à jour réussie" #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# A besoin d'être mis à jour (l'option -q est activée)." #: file.c:960 msgid "# Failed to be updated." msgstr "# N'a pas pu être mis à jour." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Valeur non valable dans le membre « update_status » !" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Valeur non valable dans le membre « command_state » !" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Fichiers" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# statistiques des fichiers de la table de hachage:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "premier argument de la fonction « word » non numérique" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "premier argument de la fonction « word » dot être plus grand que 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "premier argument de la fonction « wordlist » n'est pas numérique" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "premier argument de la fonction « wordlist » n'est pas numérique" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process(): DuplicateHandle(In) en échec (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) en échec (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() en échec (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe(): process_init_fd() en échec\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Nettoyage du fichier temporaire %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "nombre insuffisant d'argument (%d) de la fonction « %s »" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Non implanté sur cette plate-forme: fonction « %s »" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "appel à la fonction « %s » non terminé : « %c » manquant" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s : l'option « %s » est ambiguë\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s : l'option « --%s » ne prend pas d'argument\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s : l'option « %c%s » ne prend pas d'argument\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s : l'option « %s » nécessite un argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s : option non reconnue « --%s »\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s : option non reconnue « %c%s »\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s : option illégale -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s : option invalide -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s : l'option nécessite un argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s : l'option « -W %s » est ambiguë\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s : l'option « -W %s » ne prend pas d'argument\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "ne peut allouer %ld octets pour la table de hachage: mémoire épuisée" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Charge=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Refait le hachage=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Collisions=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Recherche d'une règle implicite pour « %s ».\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Recherche d'une règle implicite de membre d'archive pour « %s ».\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Évitement de récursion dans une régle implicite.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Essai du schéma avec « %.*s » comme préfixe.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Rejet impossible d'une dépendance implicite « %s ».\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Rejet impossible d'une dépendance de règle « %s ».\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Essaie de la dépendance implicite « %s ».\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Essai de la règle de dépendance « %s ».\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Dépendance trouvée « %s » comme VPATH « %s »\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Recherche d'une règle contenant le fichier intermédaire « %s ».\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "Ne peut créer un fichier temporaire\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Erreur 0x%x (ignorée)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Erreur 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Erreur %d (ignorée)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Erreur %d" #: job.c:399 msgid " (core dumped)" msgstr " (vidange mémoire)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Attente des tâches non terminées...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Processus fils actif 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (distant)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "" "Récupération du statut de sortie du processus fils 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "" "Récupération du statut de sortie du processus fils 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Nettoyage du fichier temporaire %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Suppression du processus fils 0x%08lx PID %ld%s de la chaîne.\n" #: job.c:862 msgid "write jobserver" msgstr "écriture vers le serveur de tâches" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Relâche du jeton du processus fils 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() en échec du lancement du processus (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Dénombré %d arguments lors du lancement en échec\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Ajout du processus fils 0x%08lx (%s) PID %ld%s à la chaîne.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Obtention d'un jeton pour le processus fils 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "lecture des pipes des processus" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" "impossible d'imposer des limites de charge sur ce système d'exploitation" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "impossible d'imposer des limites de charge : " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "plus de pointeurs de fichiers: ne peut duplicater stdin\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "plus de pointeurs de fichiers: ne peut duplicater stdout\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "Ne peut restaurer stdin\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "Ne peut restaurer stdout\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "process_easy() en échec du lancement du processus (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make a récupéré le processus fils pid %d, en attente du pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s : commande introuvable" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s : interpréteur de commandes introuvable" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: l'espace de l'environment peut être épuisé" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL a été modifié (était « %s » et maintenant est « %s »)\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Création d'un fichier temporaire %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "%s (ligne %d) contexte erroné d'interpréteur (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Options:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m ignoré pour compatibilité\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make traiter toutes les cibles sans condition\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C RÉPERTOIRE, --directory=RÉPERTOIRE\n" " changer de répertoire avant de faire quoi que " "ce soit\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d afficher beaucoup d'informations de débugging\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=FANIONS] afficher divers types d'informations de " "débugging\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " les variable d'environment écrase celles de " "makefile\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f FICHIER, --file=FICHIER, --makefile=FICHIER\n" " lire le FICHIER comme fichier makefile\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help afficher ce message et quitter\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" " -i, --ignore-errors ignorer les erreurs d'exécution des commandes\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I RÉPERTOIRE, --include-dir=RÉPERTOIRE\n" " RÉPERTOIRE de recherche pour les fichiers " "inclus lors du makefile\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] autoriser N tâches simultanées ; nombre de " "tâches est infini si utilisé sans argument\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going poursuivre même si certaines cibles n'ont pas " "pu être fabriquées\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" " na pas lancer de multiples tâches à moins que " "la charge soit inférieure à N\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times utiliser le dernier mtime entre les liens " "symboliques et la cible.\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" " ne pas exécuter aucune commande; seulement les " "afficher\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 FICHIER, --old-file=FICHIER, --assume-old=FICHIER\n" " considérer le FICHIER comme étant très âgé et " "ne pas le retraiter\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base afficher la base de données interne de make\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question ne pas exécuter de commandes ; le statut de " "sortie indique si la cible est à jour\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules désactiver les règles implicites internes\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables désactiver les variables d'initialisation des " "règles implicites internes\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet ne pas faire l'écho des commandes\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " désactivier -k\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch assigner l'heure actuelle aux cibles au lieu " "de les refabriquer\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version afficher le numéro de version de make et " "quitter\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory afficher le répertoire courant\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory désactiver l'option -w, même si elle a été " "activée implicitement\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 FICHIER, --what-if=FICHIER, --new-file=FICHIER, --assume-new=FICHIER\n" " considérer le FICHIER comme étant toujours " "nouveau\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables prévenir lorsqu'une variable non définie est " "référencée\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "une chaîne vide n'est pas un nom de fichier valable" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "niveau de débug inconnu « %s »" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" "%s: interception de l'Interruption/Exception (code = 0x%x, addr = 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" "Filtre d'exception à ne pas traiter appelé par le programme %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Violation d'accès: opération d'écriture à l'adresse %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Violoation d'accès: opération de lecture à l'adresse %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 initialisé aux paramètres 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 chemin de recherche initialisé aux paramètres " "default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s est suspendu pour 30 secondes..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "sommeil terminé(30). Poursuite.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile depuis l'entrée stadnard spécifié deux fois." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (fichier temporaire)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (fichier temporaire)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "" "Les tâches en parallèle (-j) ne sont pas supportées sur cette plate-forme." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Réinitialisation en mode simple de traitement des tâches (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "erreur interne: options multiple de --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "erreur interne: chaîne « %s » invalide dans --jobserver-fds" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "AVERTISSEMENT: -jN forcé dans submake: désactivation du mode serveur de " "taches." #: main.c:1684 msgid "dup jobserver" msgstr "duplication par dup du serveur de tâches" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "AVERTISSEMENT: serveur de tâches n'est pas disponible: utilisation de -j1. " "Ajouter « + » à la règle parent du make." #: main.c:1710 msgid "creating jobs pipe" msgstr "création des pipes pour les tâches" #: main.c:1725 msgid "init jobserver pipe" msgstr "initialisation du pipe du serveur de tâches" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "Les liens symboliques ne sont pas supportées: désactivation de -L." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Mise à jour des makefiles....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Le makefile « %s » peut boucler ; pas de refabrication.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Échec de refabrication du makefile « %s »." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Le makefile inclus « %s » n'a pas été trouvé." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Le makefile « %s » n'a pas été trouvé" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Impossible de revenir dans le répertoire d'origine." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Ré-exécution[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (fichier temporaire):" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr ".DEFAULT_GOAL conteitn plus d'une cible" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Pas de cibles spécifiées et aucun makefile n'a été trouvé" #: main.c:2191 msgid "No targets" msgstr "Pas de cibles" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Mise à jour des cibles visées....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "AVERTISSEMENT: changement d'horloge détecté. La construction peut être " "incomplète." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Usage : %s [options] [cible] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Ce logiciel est construit pour %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Ce logiciel est construit pour %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Rapporter toutes anomalies à .\n" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "l'option « -%c » requiert une chaîne non vide comme argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "l'option « -%c » prend en argument un entier positif" #: 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 "" "%sCeci est un logiciel libre ; voir le source pour les conditions de copie.\n" "%sIl n'y a PAS de garantie ; tant pour une utilisation COMMERCIALE que pour\n" "%sRÉPONDRE À UN BESOIN PARTICULIER.\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "%sCe logiciel est construit pour %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sCe logiciel est construit pour %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Base de données de Make, imprimée le %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Fin de la base de données de Make le %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: entrant dans un répertoire inconnu\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: quittant un répertoire inconnu\n" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: entrant dans le répertoire « %s »\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: quittant le répertoire « %s »\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: entrant dans un répertoire inconnu\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: quittant un répertoire inconnu\n" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: entrant dans le répertoire « %s »\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: quittant le répertoire « %s »\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Arrêt.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Erreur inconnue %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 "mémoire virtuelle épuisée" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: utilisateur %lu (reél %lu), groupe %lu (réel %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Accès initialisé" #: misc.c:746 msgid "User access" msgstr "Accès utilisateur" #: misc.c:794 msgid "Make access" msgstr "Accès de Make" #: misc.c:828 msgid "Child access" msgstr "Accès des fils" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "Erreur d'écriture: %s" #: misc.c:894 msgid "write error" msgstr "erreur d'écriture" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Lecture des makefiles...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Lecture du makefile « %s »" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (pas de cible par défaut)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (chemin de recherche)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (n'importe pas)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (pas de remplacement du ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "syntaxe invalide dans la condition" #: read.c:633 msgid "extraneous `endef'" msgstr "« endef » superflu" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "nom de variable vide" #: read.c:662 msgid "empty `override' directive" msgstr "directive « override » vide" #: read.c:687 msgid "invalid `override' directive" msgstr "directive « override » invalide" #: read.c:854 msgid "commands commence before first target" msgstr "les commandes commencent avant la première cible" #: read.c:905 msgid "missing rule before commands" msgstr "règle manquante avant les commandes" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "séparateur manquant %s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (voulez-vous dire TAB au lieu de 8 blancs d'espacement?)" #: read.c:1152 msgid "missing target pattern" msgstr "schéma de cible manquant" #: read.c:1154 msgid "multiple target patterns" msgstr "schémas de cible multiples" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "le schéma de cible ne contient pas « %% »" #: read.c:1286 msgid "missing `endif'" msgstr "« endif » manquant" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Texte superflu après la directive « endef »" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "« endef » manquant, « define » non terminé" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Texte superflu après la directive « %s »" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "« %s » superflu" #: read.c:1482 msgid "only one `else' per conditional" msgstr "un seul « else » par condition" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "Définition de variable par cible spécifique mal-composée" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "les prérequis ne peuvent être définis dans des scripts de commandes" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "mélange de schémas de règles implicites et statiques" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "mélange de règles implicites et normales" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "la cible « %s » ne correspond pas au schéma de cible" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "le fichier cible « %s » a à la fois des entrées : et ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "la cible « %s » apparaît plus d'une fois dans la même règle." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "attention : écrasement des commandes pour la cible « %s »" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "attention : anciennes commandes ignorées pour la cible « %s »" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "attention : caractère NUL détecté ; le reste de la ligne est ignoré" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Rien à faire pour « %s »." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "« %s » est à jour." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Élagage du fichier « %s ».\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sPas de règle pour fabriquer la cible « %s »%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%sPas de règle pour fabriquer la cible « %s », nécessaire pour « %s »%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Étude du fichier cible « %s ».\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Tentative récente échouée de mettre à jour le fichier « %s ».\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Le fichier « %s » a déjà été étudié.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Mise à jour du fichier « %s » en cours.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Fin de la mise à jour du fichier « %s ».\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Le fichier « %s » n'existe pas.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "AVERTISSEMENT: fichier .LOW_RESOLUTION_TIME « %s » a une date de haute " "résolution" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Règle implicite trouvée pour « %s ».\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Pas de règle implicite trouvée pour « %s ».\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Utilisation des commandes par défaut pour « %s ».\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Dépendance circulaire %s <- %s abandonnée." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Fin des dépendances du fichier cible « %s ».\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Les dépendances de « %s » ont été fabriquées.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Abandon du fichier cible « %s ».\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "La cible « %s » n'a pas pu être refabriquée à cause d'erreurs." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Prérequis « %s » est d'ordre seulement pour la cible « %s ».\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Le fichier de dépendance « %s » de la cible « %s » n'existe pas.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "La dépendance « %s » est plus récente que la cile « %s ».\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "La dépendance « %s » est vieux que la cible « %s ».\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "La cible « %s » est double deux-points et n'a pas de dépendances.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Pas de commandes pour « %s » et aucune dépendance n'a changé.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Traitement de « %s » en raison du fanion de construction permanent.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Inutile de refabriquer la cible « %s »." #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; utilisation du nom « %s » du VPATH" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Il faut refabriquer la cible « %s ».\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignorer le nom « %s » du VPATH.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Les commandes de « %s » sont en cours d'exécution.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Échec de refabrication du fichier cible « %s ».\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Refabrication du fichier cible « %s » réussie.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Le fichier cible « %s » a besoin d'être refabriqué avec l'option -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "AVERTISSEMENT: fichier « %s » a une date de modification dans le futur" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" "AVERTISSEMENT: fichier « %s » a une date de modification %.2g dans le futur" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS: l'élément « %s » n'est pas un modèle" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "La douane n'exportera pas : %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Régles Implicites" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Pas de règles implicites." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u règles implicites, %u" #: rule.c:575 msgid " terminal." msgstr " terminales." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG : num_pattern_rules est faux ! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "signal inconnu" #: signame.c:93 msgid "Hangup" msgstr "Raccroché" #: signame.c:96 msgid "Interrupt" msgstr "Interruption" #: signame.c:99 msgid "Quit" msgstr "Quitte" #: signame.c:102 msgid "Illegal Instruction" msgstr "Instruction Illégale" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Point de trace/arrêt" #: signame.c:110 msgid "Aborted" msgstr "Avorté" #: signame.c:113 msgid "IOT trap" msgstr "Appel IOT" #: signame.c:116 msgid "EMT trap" msgstr "Appel émulateur" #: signame.c:119 msgid "Floating point exception" msgstr "Exception numérique" #: signame.c:122 msgid "Killed" msgstr "Tué" #: signame.c:125 msgid "Bus error" msgstr "Erreur de bus" #: signame.c:128 msgid "Segmentation fault" msgstr "Erreur de segmentation" #: signame.c:131 msgid "Bad system call" msgstr "Appel système invalide" #: signame.c:134 msgid "Broken pipe" msgstr "Tube cassé" #: signame.c:137 msgid "Alarm clock" msgstr "Alarme" #: signame.c:140 msgid "Terminated" msgstr "Terminé" #: signame.c:143 msgid "User defined signal 1" msgstr "Signal utilisateur 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Signal utilisateur 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Fin d'un fils" #: signame.c:157 msgid "Power failure" msgstr "Panne de courant" #: signame.c:160 msgid "Stopped" msgstr "Arrêté" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Arrêté (lecture sur tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Arrêté (écriture sur tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Arrêté (signal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Limite du temps CPU atteinte" #: signame.c:175 msgid "File size limit exceeded" msgstr "Limite de taille de fichier atteinte" #: signame.c:178 msgid "Virtual timer expired" msgstr "Timer virtuel expiré" #: signame.c:181 msgid "Profiling timer expired" msgstr "Timer de profiling expiré" #: signame.c:187 msgid "Window changed" msgstr "Changement de taille de la fenêtre" #: signame.c:190 msgid "Continued" msgstr "Reprise" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Condition d'E/S urgente" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "E/S possible" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Ressource perdue" #: signame.c:215 msgid "Danger signal" msgstr "Signal de danger" #: signame.c:218 msgid "Information request" msgstr "Demande d'informations" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Co-processeur en virgule flottante n'est pas disponible" #: 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 "défaut" #: variable.c:1372 msgid "environment" msgstr "environnement" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "environnement avec l'option -e" #: variable.c:1381 msgid "command line" msgstr "ligne de commande" #: variable.c:1384 msgid "`override' directive" msgstr "directive « override »" #: variable.c:1387 msgid "automatic" msgstr "automatique" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (de « %s », ligne %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# variables initialisées dans les statistiques de table de hachage:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variables\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Valeurs de variable avec modèle spécifique" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# pas de valeurs de variable avec modèle spécifique" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u valeurs de variable avec modèle spécifique " #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "attention : variable indéfinie « %.*s »" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$serach en échec avec %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "AVERTISSEMENT: redirection vide\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "erreur interne : « %s » command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-warning, CTRL-Y laissera les sous-processsus.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-warning, vous devrez ré-activier par CTRL-Y le traitement par DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "Commande interne [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "Commande interne CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "Commande internr RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Utilisation des commandes internes « %s »\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Erreur, commande vide\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Redirection de l'entrée de %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Erreur redirigée vers %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Redirection de la sortie vers %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Exécution de %s à la place\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Erreur de lancement de tâche, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# Chemins de Recherche VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Pas de chemins de recherche « vpath »." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u chemins de recherche « vpath ».\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Pas de chemin de recherche général (variable « VPATH »)." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Chemin de recherche général (variable « VPATH ») :\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Ne pas spécifier -j ou --jobs si sh.exe n'est pas disponible." #~ msgid "Resetting make for single job mode." #~ msgstr "Réinitialisation de make en mode de traitement simple des tâches." #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Erreur de syntaxe, toujours à l'intérieur de « \" »\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "" #~ "Réception du signal SIGCHLD ; %u processus fils dont le statut de\n" #~ "sortie n'a pas été récupé.\n" #~ msgid "no file name for `%sinclude'" #~ msgstr "pas de nom de fichier pour « %sinclude »" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "la cible « %s » a laissé un schéma de dépendance vide" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Pas de fichiers." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u fichiers dans %u tables de hachage.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# moyenne de %.3f fichiers par table, maximum de %u fichiers dans une " #~ "table.\n" #~ msgid "DIRECTORY" #~ msgstr "RÉPERTOIRE" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Changer de RÉPERTOIRE avant de faire quoi que ce soit" #~ msgid "FLAGS" #~ msgstr "FANIONS" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Suspension de processus pour permettre au déboggeur de se rattacher" #~ msgid "Environment variables override makefiles" #~ msgstr "" #~ "Les variables d'environnement écrasent celles définies dans les makefiles" #~ msgid "FILE" #~ msgstr "FICHIER" #~ msgid "Read FILE as a makefile" #~ msgstr "Lit FICHIER en tant que makefile" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Recherche les makefiles inclus dans DIRECTORY" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "N'exécute pas de tâches multiples si la charge dépasse N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "N'exécute pas les commandes ; elles sont juste affichées" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Considère FILE comme étant très vieux et ne le refabrique pas" #~ msgid "Don't echo commands" #~ msgstr "N'affiche pas les commandes" #~ msgid "Turns off -k" #~ msgstr "Désactive -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Considère FILE comme étant infiniment récent" #~ msgid "Entering" #~ msgstr "Entre dans" #~ msgid "Leaving" #~ msgstr "Quitte" #~ msgid "# No variables." #~ msgstr "# Pas de variables." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# moyenne de %.1f variables par table, maximum de %u dans une table.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# moyenne de %d.%d variables par table, maximum de %u dans une table.\n" #~ msgid "Error in lbr$ini_control, %d\n" #~ msgstr "Erreur dans lbr$ini_control, %d\n" #~ msgid "Error looking up module %s in library %s, %d\n" #~ msgstr "Erreur en recherchant le module %s dans la bibliothèque %s, %d\n" #~ msgid "Error getting module info, %d\n" #~ msgstr "Erreur lors de l'obtention des informations du module, %d\n" #~ msgid "touch: " #~ msgstr "touch: " #~ msgid " not" #~ msgstr " non" #~ msgid "# Last modified %.24s (%0lx)\n" #~ msgstr "# Dernière modification %.24s (%0lx)\n" #~ msgid "undefined" #~ msgstr "indéfini" #~ msgid "file" #~ msgstr "fichier" #~ msgid "environment override" #~ msgstr "écrasement par l'environnement" #~ msgid "override" #~ msgstr "écrasement" #~ msgid "the `word' function takes a one-origin index argument" #~ msgstr "la fonction `word' prend un argument d'index à une seule origine" #~ msgid "implicit" #~ msgstr "dépendance implicite" #~ msgid "rule" #~ msgstr "règle de dépendance" #~ msgid "Trying %s dependency `%s'.\n" #~ msgstr "Essai de la %s `%s'.\n" #~ msgid "Found dependency as `%s'.%s\n" #~ msgstr "Dépendance trouvée en tant que `%s'.%s\n" #~ msgid "intermediate" #~ msgstr "intermédiaire" #~ msgid " (ignored)" #~ msgstr " (ignorée)" #~ msgid "Unknown%s job %d" #~ msgstr "Tâche%s inconnue %d" #~ msgid " remote" #~ msgstr " distante" #~ msgid "%s finished." #~ msgstr "%s terminée." #~ msgid "losing" #~ msgstr "perdant" #~ msgid "winning" #~ msgstr "gagnant" #~ msgid "%sGNU Make version %s" #~ msgstr "%sGNU Make version %s" #~ msgid "Unknown error 12345678901234567890" #~ msgstr "Erreur inconnue 12345678901234567890" #~ msgid "User" #~ msgstr "utilisateur" #~ msgid "Make" #~ msgstr "make" #~ msgid "Child" #~ msgstr "enfant" #~ msgid "Dependency `%s' does not exist.\n" #~ msgstr "La dépendance `%s' n'existe pas.\n" #~ msgid "newer" #~ msgstr "plus récente" #~ msgid "older" #~ msgstr "plus ancienne" #~ msgid "exporting: Couldn't create return socket." #~ msgstr "exportation : N'a pas pu créer la socket de retour." #~ msgid "exporting: " #~ msgstr "exportation : " #~ msgid "exporting: %s" #~ msgstr "exportation : %s" #~ msgid "Job exported to %s ID %u\n" #~ msgstr "Tâche exportée vers %s ID %u\n" #~ msgid "Error getting load average" #~ msgstr "Erreur lors de l'obtention de la charge moyenne" #~ msgid "1-minute: %f " #~ msgstr "1 minute : %f " #~ msgid "5-minute: %f " #~ msgstr "5 minutes : %f " #~ msgid "15-minute: %f " #~ msgstr "15 minutes : %f " #~ msgid "digits occur in two different argv-elements.\n" #~ msgstr "des chiffres apparaissent dans deux éléments différents de argv.\n" #~ msgid "option %c\n" #~ msgstr "option %c\n" #~ msgid "option a\n" #~ msgstr "option a\n" #~ msgid "option b\n" #~ msgstr "option b\n" #~ msgid "option c with value `%s'\n" #~ msgstr "option c ayant pour valeur `%s'\n" #~ msgid "?? getopt returned character code 0%o ??\n" #~ msgstr "?? getopt a renvoyé le caractère de code 0%o ??\n" #~ msgid "non-option ARGV-elements: " #~ msgstr "éléments de ARGV qui ne sont pas des options : " #~ msgid "option d with value `%s'\n" #~ msgstr "option d ayant pour valeur `%s'\n" #~ msgid "%s: unknown signal" #~ msgstr "%s : signal inconnu" #~ msgid "Signal 12345678901234567890" #~ msgstr "Signal 12345678901234567890" #~ msgid "Signal %d" #~ msgstr "Signal %d" make-dfsg-3.81.orig/po/ga.gmo0000644000175000017500000011216310416553102016226 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H=c gcrc†c)œc#Æcêc ûcd d$d*x…·…%Î…ô…†5!† W†2d†F—†FÞ†G%‡(m‡E–‡܇%0ˆ/@ˆpˆƒˆ2œˆψ äˆñˆ ‰‰B‰2b‰E•‰Û‰ô‰Š&.Š=UŠ5“ŠÉŠ$çŠ' ‹N4‹ƒ‹+Œ‹¸‹ ̋틌8"Œ<[Œ˜Œ°Œ@´ŒAõŒ97?q?±9ñ:+ŽfŽ9}Ž·Ž7ÔŽ8 :E€BŸDâ-' U7v*®#ÙNý1L‘~‘’‘4®‘ã‘’F’Da’R¦’Gù’\A“9ž“&Ø“2ÿ“2”E”\”­ä;—Ò<wÞ[`v,,0×Z65’l$ ÐDó"7O³ ªM4S<`Ñ |5DeÁã‚IJúákFù\¹fohõð/2©ßF>ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-06-28 10:16-0500 Last-Translator: Kevin Patrick Scannell Language-Team: Irish MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit # %u conair chuardaigh `vpath'. # %u riail intuigthe, %u # %u luach athróige atá sainiúil don phatrún # Comhadlanna # Comhaid # Críochnaíodh an bunachar sonraí Make seo ar %s # Conair ghinearálta cuardaigh (athróg `VPATH'): # # Rialacha Intuigthe # Bunachar sonraí Make, priontáilte ar %s # Níl aon chonair ghinearálta cuardaigh (athróg `VPATH'). # Níl aon riail intuigthe. # Níl aon luach athróige atá sainiúil don phatrún. # Luachanna Athróige sainiúil don phatrún # VPATH Conairí Cuardaigh # Athróga # comhaid hais-tábla stait: # %sTógadh an clár seo le haghaidh %s %sTógadh an clár seo le haghaidh %s (%s) %d argóint sa tosú theipthe Tógadh an clár seo le haghaidh %s Tógadh an clár seo le haghaidh %s (%s) --debug[=BRATACHA] Taispeáin eolas fabhtaithe de chineálacha éagsúla. --no-print-directory Múch -w, fiú má tá sé i bhfeidhm go hintuigthe. --warn-undefined-variables Tabhair rabhadh má dhéantar tagairt d'athróg gan sainmhíniú. -B, --always-make Déan gach sprioc, gan choinníollacha. -C COMHADLANN, --directory=COMHADLANN Téigh go COMHADLANN roimh dhéanamh aon rud. -I COMHADLANN, --include-dir=COMHADLANN Cuardaigh i gCOMHADLANN ar makefileanna breise. -L, --check-symlink-times Úsáid an t-am modhnaithe is déanaí, ar an nasc siombalach nó ar an sprioc. -R, --no-builtin-variables Díchumasaigh na hathróga insuite. -S, --no-keep-going, --stop Múch -k. -W COMHAD, --what-if=COMHAD, --new-file=COMHAD, --assume-new=COMHAD Caith le COMHAD mar cheann úrnua (go héigríoch). -b, -m Déan neamhshuim (comhoiriúnacht) -d Taispeáin go leor eolas dífhabhtaithe. -e, --environment-overrides Sáraíonn athróga timpeallachta makefileanna. -f COMHAD, --file=COMHAD, --makefile=COMHAD Léigh COMHAD mar makefile. -h, --help Taispeáin an chabhair seo agus scoir. -i, --ignore-errors Déan neamhshuim ar earráidí ó orduithe. -j [N], --jobs[=N] Ceadaigh N jab le chéile; éigríoch mura gceaptar arg. -k, --keep-going Lean ar aghaidh fiú nach féidir sprioc a dhéanamh. -l [N], --load-average[=N], --max-load[=N] Ná tosaigh jabanna iomadúla mura bhfuil an lód níos lú ná N. -n, --just-print, --dry-run, --recon Ná rith aon ordú; taispeáin torthaí mar dhea amháin. -o COMHAD, --old-file=COMHAD, --assume-old=COMHAD Caith le COMHAD mar cheann cianaosta; ná hathdhéan é. -p, --print-data-base Taispeáin an bunachar sonraí inmheánach. -q, --question Ná rith aon ordú; stádas scortha = 0 mura gá le nuashonrú. -r, --no-builtin-rules Díchumasaigh na rialacha intuigthe insuite. -s, --silent, --quiet Ná déan macalla ar orduithe. -t, --touch Teagmhaigh spriocanna in ionad iad a athdhéanamh. -v, --version Taispeáin eolas faoin leagan agus scoir. -w, --print-directory Taispeáin an chomhadlann reatha. Dáta %s Ag déanamh neamhshuim ar ainm VPATH `%s'. uid = %d, gid = %d, mód = 0%o. (insuite): (córdhumpa) (Ar mhian leat TÁB in ionad ocht spás?) (is cuma) (ó `%s', líne %lu) (ó `%s', líne %lu): (is féidir go bhfuil an t-ainm teasctha) (gan ceann sprice réamhshocraithe) (ná fairsing ~) (cianda) (conair chuardaigh) comhad, rudaí neamhfhéideartha rudaí neamhfhéideartha i %lu comhadlann. go dtí seo. teirminéal.# Makefile réamhshocraithe, nó ó MAKEFILES, nó -include/sinclude.# Déantar fosta:# Sprioc líne na n-orduithe.# Tá orduithe ann atá ag rith faoi láthair (IS FABHT É SEO).# Tá orduithe spleáchais ag rith (IS FABHT É SEO).# Theip ar nuashonrú.# Níl a leithéid de chomhad ann.# Nuashonraíodh an comhad.# Níor nuashonraíodh an comhad.# Tá an comhad ina réamhriachtanas idirmheánach.# Is cianaosta an comhad seo.# Rinneadh cuardach ar rialacha intuigthe.# Ní dhearna cuardach ar rialacha intuigthe.# Stoc patrúin intuigthe/statach: `%s' # Luach neamhbhailí sa bhall `command_state'!# Luach neamhbhailí sa bhall `update_status'!# Athraithe %s # Níor seiceáladh an t-am mionathraithe riamh.# Tá gá le nuashonrú (-q ceaptha).# Sprioc bhréige (réamhriachtanas de .PHONY).# Comhad luachmhar (réamhriachtanas de .PRECIOUS).# D'éirigh leis an nuashonrú.# orduithe le rith# %s (gléas %d, i-nód [%d,%d,%d]): # %s (gléas %d, i-nód [%d,%d,%d]): ní féidir é a oscailt. # %s (gléas %ld, i-nód %ld): # %s (gléas %ld, i-nód %ld): níorbh fhéidir é a oscailt. # %s (eochair %s, am-m %d): # %s (eochair %s, am-m %d): ní féidir é a oscailt. # %s: níorbh fhéidir é a stat. # Níl aon chonair chuardaigh `vpath'.# Ní sprioc é:# athróg tacar hais-tábla stait: Athraíodh $SHELL (ba `%s' é, agus is `%s' é anois) %s (líne %d) Droch-chomhthéacs blaoisce (!unixy && !batch_mode_shell) cuirfear %s ar fionraí ar feadh tréimhse 30 soicind...%s%s: %s%s: %s%s: Ní bhfuarthas an t-ordú%s: Ag dul isteach i gcomhadlann anaithnid %s: Ag dul isteach sa chomhadlann `%s' %s: Ag dul amach as comhadlann anaithnid %s: Ag dul amach as an gcomhadlann `%s' %s: Ní bhfuarthas an clár blaoisce%s: Stampa ama as raon; %s á úsáid ina ionad%s: rogha neamhcheadaithe -- %c %s: rogha neamhbhailí -- %c %s: ní cheadaítear argóint i ndiaidh na rogha `%c%s' %s: Tá an rogha `%s' débhríoch %s: ní foláir argóint don rogha `%s' %s: ní cheadaítear argóint i ndiaidh na rogha `--%s' %s: ní cheadaítear argóint i ndiaidh na rogha `-W %s' %s: Tá an rogha `-W %s' débhríoch %s: ní foláir argóint don rogha -- %c %s: rogha anaithnid `%c%s' %s: rogha anaithnid `--%s' %s: úsáideoir %lu (fíor %lu), grúpa %lu (fíor %lu) %sNíl aon riail chun an sprioc `%s' a dhéanamh%s%sNíl aon riail chun an sprioc `%s' a dhéanamh, riachtanach le haghaidh `%s'%s%sIs saorbhogearra an ríomhchlár seo; féach ar an bhunchód le haghaidh %scoinníollacha cóipeála. Níl baránta ar bith ann; go fiú níl baránta ann %sd'INDÍOLTACHT nó FEILIÚNACHT DO FHEIDHM AR LEITH. %s[%u]: Ag dul isteach i gcomhadlann anaithnid %s[%u]: Ag dul isteach sa chomhadlann `%s' %s[%u]: Ag dul amach as comhadlann anaithnid %s[%u]: Ag dul amach as an gcomhadlann `%s' *** Is féidir gur ball bréige é `%s'; ní scriosadh*** Briseadh. *** Comhad `%s' á scriosadh*** Comhad idirmheánach `%s' á scriosadh*** Ag fanacht le jabanna neamhchríochnaithe...*** Warning: comhad .LOW_RESOLUTION_TIME `%s' le stampa ama ardtaifeach*** [%s] Is féidir gur ball bréige é `%s'; ní scriosadh*** [%s] Comhad `%s' á scriosadh*** [%s] Earráid %d*** [%s] Earráid 0x%x*** [%s] Earráid 0x%x (rinneadh neamhshuim air)-rabhadh, fágfaidh CTRL-Y fo-phróisis gan ghlanadh. -rabhadh, is féidir gur gá duit ionramháil CTRL-Y a athchumasú ó DCL. . Stop. tá níos mó ná aon sprioc amháin i .DEFAULT_GOALNíl eilimint .LIBPATTERNS `%s' ina patrún; ag baint úsáid as ainm VPATH `%s'TobscorthaClog aláraimAthchúrsáil de bharr rialacha intuigthe á seachaint. FABHT: num_pattern_rules mícheart! %u != %uCD INSUITE %s RM INSUITE %s INSUITE [%s][%s] Drochghlao ar an gcórasPíopa bristeBusearráidTeorainn ama LAP sáraitheNí féidir comhad sealadach a chruthú Rochtain micScoir an mhacphróiseasTréigeadh an spleáchas ciorclach %s <- %s.Baisc-chomhad sealadach %s á ghlanadh Baisc-chomhad sealadach %s á ghlanadh Tuairteanna haiseála=%ld/%ld=%.0f%%Déanfar neamhshuim ar orduithe le haghaidh `%s'; úsáidfear na cinn le haghaidh `%s' ina n-ionad.Aimsíodh orduithe le haghaidh `%s' trí chuardach ar rialacha intuigthe,Orduithe de `%s' á rith. Sonraíodh orduithe le haghaidh comhaid `%s' ag %s:%lu,Comhad sprice `%s' idir lámha. LeantaNíorbh fhéidir stdin a athchóiriú Níorbh fhéidir stdout a athchóiriú Níorbh fhéidir an chomhadlann oibre a athrú ar ais.Baisc-chomhad sealadach %s á chruthú An t-am anoisNí easpórtálfar Customs: %s Comhartha guaiseGaiste EMTEarráid le linn sceitheadh, %d Earráid, ordú folamh %s á rith ina áit Téacs gan mhaith i ndiaidh treorach `%s'Téacs gan mhaith i ndiaidh treorach `endef'Theip ar athdhéanamh an makefile `%s'.Theip ar athdhéanamh an sprioc-chomhaid `%s'. Níl a leithéid de chomhad `%s' ann. Rinneadh scrúdú ar an chomhad `%s' cheana. Uasmhéid na gcomhad sáraitheCríochnaíodh na réamhriachtanais den chomhad sprice `%s'. Nuashonraíodh an comhad `%s'. Níl comhphróiseálaí snámhphointe ar fáilEisceacht snámhphointeAimsíodh riail intuigthe le haghaidh `%s'. Aimsíodh réamhriachtanas `%s' mar VPATH `%s' Ag tréigean an chomhaid sprice `%s'. Croch suasA/I indéantaGaiste IOTTreoir NeamhcheadaitheNíor aimsíodh an makefile `%s' san áireamh.Iarratas ar eolasRochtain túsaitheIdirbhriseadhMaraitheMac beo 0x%08lx (%s) PID %ld %s Lód=%ld/%ld=%.0f%%, Ag déanamh cuardach ar riail le comhad idirmheánach `%s'. Ag déanamh cuardach ar riail intuigthe le haghaidh `%s'. Ag déanamh cuardach ar riail intuigthe le haghaidh bhall cartlainne `%s'. Rochtain makeis féidir go lúbfar an Makefile `%s'; ní athdhéanfar é. Níor aimsíodh an makefile `%s'Sonraíodh Makefile ón ionchur caighdeánach faoi dhó.`%s' á dhéanamh de bharr bratach --always-make. Is míchumtha é an sainmhíniú athróige (le haghaidh aon sprioc amháin)Ball `%s'%s: %ld beart ag %ld (%ld). Caithfidh an sprioc `%s' a athdhéanamh. NílNíl aon ordú le haghaidh `%s' agus níor athraigh aon réamhriachtanas. Níor aimsíodh aon riail intuigthe le haghaidh `%s'. Ní gá leis an sprioc `%s' a athdhéanamhNíl aon sprioc annNíor sonraíodh aon sprioc agus níor aimsíodh aon makefileNíl faic le déanamh i gcomhair `%s'.Fuarthas ceadchomhartha le haghaidh mac 0x%08lx (%s). Roghanna: Níl jabanna parailéalacha (-j) ar fáil ar an gcóras seo.Cliseadh cumhachtaTá an réamhriachtanas `%s' níos nuaí ná an sprioc `%s'. Tá an réamhriachtanas `%s' níos sine ná an sprioc `%s'. Sonraíonn an réamhriachtanas `%s' ord rite amháin le haghaidh sprice `%s'. Níl an réamhriachtanas `%s' den sprioc `%s' ann. Am próifíle caiteComhad `%s' á bhearradh. Ag cur mac 0x%08lx (%s) PID %ld%s ar an slabhra. ScoirÁ rith arís[%u]:Makefile `%s' á léamhMakefileanna á léamh... Mac caillteach á bhaint: 0x%08lx PID %ld %s Mac buaiteach á bhaint: 0x%08lx PID %ld %s Rinneadh iarracht ar an chomhad `%s' a nuashonrú le déanaí, agus theip air. Déanann an athróg athchúrsach `%s' tagairt dó féin (sa deireadh)Atreoraíodh earráidí go %s Atreoraíodh ionchur ó %s Atreoraíodh aschur go %s Ath-haiseáil=%d, Réamhriachtanas intuigthe neamhfhéideartha `%s' á dhiúltú. Réamhriachtanas neamhfhéideartha rialach `%s' á dhiúltú. Saoradh ceadchomhartha le haghaidh mac 0x%08lx (%s). Mac 0x%08lx PID %ld%s á dhealú ón slabhra. Comhaid idirmheánacha á mbaint... Seol tuairiscí fabhtanna chuig Á athshocrú le haghaidh jabanna aonair (-j1).Acmhainn caillteSIGPHONESIGWINDFabht deighilteComhad `%s' á nuashonrú fós. StopthaStoptha (comhartha)Stoptha (ionchur tty)Stoptha (aschur tty)D'éirigh le hathdhéanamh an sprioc-chomhaid `%s'. ní thacaítear le naisc shiombalacha: -L á dhíchumasú.Tá dhá idirstad ag an sprioc `%s' agus níl aon réamhriachtanas aice. Ní dhearna an sprioc `%s' arís ós rud é go bhfuil earráidí ann.Tá gá leis an chomhad sprice `%s' a athdhéanamh leis an rogha -q. ScorthaRéamhriachtanais de `%s' á ndéanamh anois. Rianaigh/brisphointeAg baint triail as an réamhriachtanas intuigthe `%s'. Ag baint triail as riail phatrúin le stoc `%.*s'. Ag baint triail as an réamhriachtanas rialach `%s'. Ordú anaithnid insuite '%s' Earráid anaithnid %dCinn sprice á nuashonrú.... Makefileanna á nuashonrú.... Staid phráinneach A/IÚsáid: %s [roghanna] [sprioc] ... Rochtain úsáideoraComhartha saincheaptha 1Comhartha saincheaptha 2Ag baint úsáid as orduithe réamhshocraithe le haghaidh `%s'. Am fíorúil caiteRabhadh: Atreorú folamh Rabhadh: Tá an t-am mionathraithe den chomhad `%s' %.2g soicind sa todhchaíRabhadh: Tá an t-am mionathraithe den chomhad `%s' sa todhchaíAthraíodh an fhuinneog[%s] Earráid %d (rinneadh neamhshuim)Ní gá le `%s' a nuashonrú.treoir `override'rinneadh iarracht ar ghné gan tacaíocht a úsáid: `%s'uathoibríochach anois is ionann iad na comhaid `%s' agus `%s'.ní féidir %ld beart a dháileadh le haghaidh hais-tábla: cuimhne ídithení féidir idirstad dúbailte `%s' a athainmniú le hidirstad aonair `%s'ní féidir idirstad aonair `%s' a athainmnigh le hidirstad dúbailte `%s'ní féidir srian lóid a chur i bhfeidhm: ní féidir srianta lóid a chur i bhfeidhm ar an chóras oibriúcháin seolíne na n-orduithetá orduithe ann roimh an chéad spriocpíopa na jabanna á chruthúréamhshocraithesleep(30) críochnaithe. Ag gabháil ar aghaidh. jabfhreastalaí duptreoir `override' folamhní féidir teaghrán folamh a úsáid mar ainm comhaidainm folamh athróigetimpeallachttimpeallacht le -e`%s' breise`endef' breiseshocraigh find_and_set_shell conair chuardaigh default_shell = %s tá find_and_set_shell ag socrú default_shell = %s caithfidh an chéad argóint leis an fheidhm `word' a bheith deimhneachfopen (comhad sealadach)fwrite (comhad sealadach)píopa an jabfhreastalaí á thúsúearráid inmheánach: `%s' command_stateearráid inmheánach: teaghrán neamhbhailí --jobserver-fds `%s'earráid inmheánach: roghanna --jobserver-fds iomadúlatreoir neamhbhailí `override'comhréir neamhbhailí i gcoinníollachtheip ar lbr$ini_control le stádas = %dníorbh fhéidir le lbr$set_module an t-eolas modúil a bhaint amach, stádas = %dmakefile`endef' ar iarraidh, `define' gan chríochnú`endif' ar iarraidhriail ar iarraidh roimh orduithedeighilteoir%s ar iarraidhpatrún sprice ar iarraidhrialacha intuigthe agus gnáthrialacha measctha le chéilerialacha intuigthe agus rialacha statacha measctha le chéilepatrúin iomadúla spricenílníl aon hanla comhaid le fáil: níorbh fhéidir stdin a chóipeáil níl aon hanla comhaid le fáil: níorbh fhéidir stdout a chóipeáil tá an chéad argóint neamhuimhriúil leis an fheidhm `word'is neamhuimhriúil í an chéad argóint leis an fheidhm `wordlist'is neamhuimhriúil í an dara hargóint leis an fheidhm `wordlist'ní cheadaítear ach aon `else' amháin le gach coinníollachní féidir réamhriachtanais a shonrú i scripteanna ordaitheléadh píopa na jabannaspawnvpe: is féidir gur ídithe í cuimhne na timpeallachtaTheip ar sys$cuardach le %d níl an sprioc `%s' comhoiriúnach leis an phatrún spricetá an sprioc `%s' i riail amháin níos mó ná uair amháin.tá iontrálacha : agus :: araon ann don chomhad sprice `%s'níl aon `%%' sa phatrún spricecaithfidh tú teaghrán nach folamh a thabhairt mar argóint le `-%c'caithfidh tú slánuimhir dheimhneach a thabhairt mar argóint le `-%c'ní féidir ball cartlainne a `touch'áil ar VMStouch: Níl an chartlann `%s' anntouch: Droch-chód aisfhillidh ó ar_member_touch ar `%s'touch: Níl a leithéid de bhall `%s' i `%s'touch: Níl `%s' ina cartlann bhailíní féidir leabharlann `%s' a oscailt chun cuardach a dhéanamh ar an mball `%s'sonrú anaithnid `%s' ar an leibhéal dífhabhtaithecomhartha anaithnidunlink (comhad sealadach): glao ar fheidhm `%s' gan chríochnú: `%c' ar iarraidhtagairt athróige gan chríochnúcuimhne fhíorúil íditherabhadh: Clog ar sceabha. Is féidir go bhfuil an tógáil neamhiomlán.rabhadh: -jN fórsáilte i bhfo-make: mód jabfhreastalaí á dhíchumasú.rabhadh: chonacthas carachtar NUL; ag déanamh neamhshuim ar an chuid eile den línerabhadh: ag déanamh neamhshuim ar sheanorduithe le haghaidh sprice `%s'rabhadh: níl jabfhreastalaí ar fáil: ag baint úsáid as -j1. Cuir `+' leis an máthair-riail.rabhadh: ag sárú na n-orduithe le haghaidh na sprice `%s'rabhadh: athróg gan sainmhíniú: `%.*s'windows32_openpipe (): theip ar process_init_fd() earráid sa scríobhearráid sa scríobh: %sscríobh jabfhreastalaímake-dfsg-3.81.orig/po/ga.po0000644000175000017500000014027510416553102016067 0ustar srivastasrivasta# Irish translations for make. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the make package. # Kevin Patrick Scannell , 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-06-28 10:16-0500\n" "Last-Translator: Kevin Patrick Scannell \n" "Language-Team: Irish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "rinneadh iarracht ar ghné gan tacaíocht a úsáid: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "ní féidir ball cartlainne a `touch'áil ar VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Níl an chartlann `%s' ann" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: Níl `%s' ina cartlann bhailí" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Níl a leithéid de bhall `%s' i `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Droch-chód aisfhillidh ó ar_member_touch ar `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" "níorbh fhéidir le lbr$set_module an t-eolas modúil a bhaint amach, stádas = %" "d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "theip ar lbr$ini_control le stádas = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "" "ní féidir leabharlann `%s' a oscailt chun cuardach a dhéanamh ar an mball `%" "s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Ball `%s'%s: %ld beart ag %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (is féidir go bhfuil an t-ainm teasctha)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Dáta %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mód = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Briseadh.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Is féidir gur ball bréige é `%s'; ní scriosadh" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Is féidir gur ball bréige é `%s'; ní scriosadh" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Comhad `%s' á scriosadh" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Comhad `%s' á scriosadh" #: commands.c:599 msgid "# commands to execute" msgstr "# orduithe le rith" #: commands.c:602 msgid " (built-in):" msgstr " (insuite):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (ó `%s', líne %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Comhadlanna\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: níorbh fhéidir é a stat.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (eochair %s, am-m %d): ní féidir é a oscailt.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (gléas %d, i-nód [%d,%d,%d]): ní féidir é a oscailt.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (gléas %ld, i-nód %ld): níorbh fhéidir é a oscailt.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (eochair %s, am-m %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (gléas %d, i-nód [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (gléas %ld, i-nód %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Níl" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " comhad, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "níl" #: dir.c:1058 msgid " impossibilities" msgstr " rudaí neamhfhéideartha" #: dir.c:1062 msgid " so far." msgstr " go dtí seo." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " rudaí neamhfhéideartha i %lu comhadlann.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Déanann an athróg athchúrsach `%s' tagairt dó féin (sa deireadh)" #: expand.c:266 msgid "unterminated variable reference" msgstr "tagairt athróige gan chríochnú" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Sonraíodh orduithe le haghaidh comhaid `%s' ag %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Aimsíodh orduithe le haghaidh `%s' trí chuardach ar rialacha intuigthe," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ach anois is ionann iad na comhaid `%s' agus `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Déanfar neamhshuim ar orduithe le haghaidh `%s'; úsáidfear na cinn le " "haghaidh `%s' ina n-ionad." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "ní féidir idirstad aonair `%s' a athainmnigh le hidirstad dúbailte `%s'" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "ní féidir idirstad dúbailte `%s' a athainmniú le hidirstad aonair `%s'" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Comhad idirmheánach `%s' á scriosadh" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Comhaid idirmheánacha á mbaint...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Stampa ama as raon; %s á úsáid ina ionad" #: file.c:782 msgid "Current time" msgstr "An t-am anois" #: file.c:881 msgid "# Not a target:" msgstr "# Ní sprioc é:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Comhad luachmhar (réamhriachtanas de .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Sprioc bhréige (réamhriachtanas de .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Sprioc líne na n-orduithe." #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Makefile réamhshocraithe, nó ó MAKEFILES, nó -include/sinclude." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Rinneadh cuardach ar rialacha intuigthe." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Ní dhearna cuardach ar rialacha intuigthe." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Stoc patrúin intuigthe/statach: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Tá an comhad ina réamhriachtanas idirmheánach." #: file.c:919 msgid "# Also makes:" msgstr "# Déantar fosta:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Níor seiceáladh an t-am mionathraithe riamh." #: file.c:927 msgid "# File does not exist." msgstr "# Níl a leithéid de chomhad ann." #: file.c:929 msgid "# File is very old." msgstr "# Is cianaosta an comhad seo." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Athraithe %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Nuashonraíodh an comhad." #: file.c:937 msgid "# File has not been updated." msgstr "# Níor nuashonraíodh an comhad." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Tá orduithe ann atá ag rith faoi láthair (IS FABHT É SEO)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Tá orduithe spleáchais ag rith (IS FABHT É SEO)." #: file.c:953 msgid "# Successfully updated." msgstr "# D'éirigh leis an nuashonrú." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Tá gá le nuashonrú (-q ceaptha)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Theip ar nuashonrú." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Luach neamhbhailí sa bhall `update_status'!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Luach neamhbhailí sa bhall `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Comhaid" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# comhaid hais-tábla stait:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "tá an chéad argóint neamhuimhriúil leis an fheidhm `word'" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "caithfidh an chéad argóint leis an fheidhm `word' a bheith deimhneach" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "is neamhuimhriúil í an chéad argóint leis an fheidhm `wordlist'" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "is neamhuimhriúil í an dara hargóint leis an fheidhm `wordlist'" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: theip ar DuplicateHandle(In) (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "create_child_process: theip ar DuplicateHandle(Err) (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "Theip ar CreatePipe() (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): theip ar process_init_fd()\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Baisc-chomhad sealadach %s á ghlanadh\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Easpa argóintí (%d) d'fheidhm `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Níl an fheidhm `%s' ar fáil ar an chóras seo" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "glao ar fheidhm `%s' gan chríochnú: `%c' ar iarraidh" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: Tá an rogha `%s' débhríoch\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `--%s'\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `%c%s'\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ní foláir argóint don rogha `%s'\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: rogha anaithnid `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: rogha anaithnid `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: rogha neamhcheadaithe -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: rogha neamhbhailí -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ní foláir argóint don rogha -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: Tá an rogha `-W %s' débhríoch\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ní cheadaítear argóint i ndiaidh na rogha `-W %s'\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "ní féidir %ld beart a dháileadh le haghaidh hais-tábla: cuimhne ídithe" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Lód=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Ath-haiseáil=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Tuairteanna haiseála=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Ag déanamh cuardach ar riail intuigthe le haghaidh `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "" "Ag déanamh cuardach ar riail intuigthe le haghaidh bhall cartlainne `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Athchúrsáil de bharr rialacha intuigthe á seachaint.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Ag baint triail as riail phatrúin le stoc `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Réamhriachtanas intuigthe neamhfhéideartha `%s' á dhiúltú.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Réamhriachtanas neamhfhéideartha rialach `%s' á dhiúltú.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Ag baint triail as an réamhriachtanas intuigthe `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Ag baint triail as an réamhriachtanas rialach `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Aimsíodh réamhriachtanas `%s' mar VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Ag déanamh cuardach ar riail le comhad idirmheánach `%s'.\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "Ní féidir comhad sealadach a chruthú\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Earráid 0x%x (rinneadh neamhshuim air)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Earráid 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Earráid %d (rinneadh neamhshuim)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Earráid %d" #: job.c:399 msgid " (core dumped)" msgstr " (córdhumpa)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Ag fanacht le jabanna neamhchríochnaithe..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Mac beo 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (cianda)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Mac caillteach á bhaint: 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Mac buaiteach á bhaint: 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Baisc-chomhad sealadach %s á ghlanadh\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Mac 0x%08lx PID %ld%s á dhealú ón slabhra.\n" #: job.c:862 msgid "write jobserver" msgstr "scríobh jabfhreastalaí" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Saoradh ceadchomhartha le haghaidh mac 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "theip ar process_easy(); níor tosaíodh próiseas (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "%d argóint sa tosú theipthe\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Ag cur mac 0x%08lx (%s) PID %ld%s ar an slabhra.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Fuarthas ceadchomhartha le haghaidh mac 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "léadh píopa na jabanna" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "ní féidir srianta lóid a chur i bhfeidhm ar an chóras oibriúcháin seo" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ní féidir srian lóid a chur i bhfeidhm: " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "níl aon hanla comhaid le fáil: níorbh fhéidir stdin a chóipeáil\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "níl aon hanla comhaid le fáil: níorbh fhéidir stdout a chóipeáil\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "Níorbh fhéidir stdin a athchóiriú\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "Níorbh fhéidir stdout a athchóiriú\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "theip ar process_easy(); níor tosaíodh próiseas (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "ghin make mac le pid %d, ag fanacht le pid %d fós\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Ní bhfuarthas an t-ordú" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Ní bhfuarthas an clár blaoisce" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: is féidir gur ídithe í cuimhne na timpeallachta" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "Athraíodh $SHELL (ba `%s' é, agus is `%s' é anois)\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Baisc-chomhad sealadach %s á chruthú\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "%s (líne %d) Droch-chomhthéacs blaoisce (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Roghanna:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Déan neamhshuim (comhoiriúnacht)\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make Déan gach sprioc, gan choinníollacha.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C COMHADLANN, --directory=COMHADLANN\n" " Téigh go COMHADLANN roimh dhéanamh aon rud.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr " -d Taispeáin go leor eolas dífhabhtaithe.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=BRATACHA] Taispeáin eolas fabhtaithe de chineálacha " "éagsúla.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Sáraíonn athróga timpeallachta makefileanna.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f COMHAD, --file=COMHAD, --makefile=COMHAD\n" " Léigh COMHAD mar makefile.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Taispeáin an chabhair seo agus scoir.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" " -i, --ignore-errors Déan neamhshuim ar earráidí ó orduithe.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I COMHADLANN, --include-dir=COMHADLANN\n" " Cuardaigh i gCOMHADLANN ar makefileanna " "breise.\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] Ceadaigh N jab le chéile; éigríoch mura " "gceaptar arg.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Lean ar aghaidh fiú nach féidir sprioc a " "dhéanamh.\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" " Ná tosaigh jabanna iomadúla mura bhfuil an lód " "níos lú ná N.\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times Úsáid an t-am modhnaithe is déanaí, ar an " "nasc\n" " siombalach nó ar an sprioc.\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á rith aon ordú; taispeáin torthaí mar dhea " "amháin.\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 COMHAD, --old-file=COMHAD, --assume-old=COMHAD\n" " Caith le COMHAD mar cheann cianaosta; ná " "hathdhéan é.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base Taispeáin an bunachar sonraí inmheánach.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Ná rith aon ordú; stádas scortha = 0 mura gá " "le nuashonrú.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules Díchumasaigh na rialacha intuigthe insuite.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr " -R, --no-builtin-variables Díchumasaigh na hathróga insuite.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Ná déan macalla ar orduithe.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Múch -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Teagmhaigh spriocanna in ionad iad a " "athdhéanamh.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Taispeáin eolas faoin leagan agus scoir.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Taispeáin an chomhadlann reatha.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Múch -w, fiú má tá sé i bhfeidhm go " "hintuigthe.\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 COMHAD, --what-if=COMHAD, --new-file=COMHAD, --assume-new=COMHAD\n" " Caith le COMHAD mar cheann úrnua (go " "héigríoch).\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Tabhair rabhadh má dhéantar tagairt d'athróg " "gan sainmhíniú.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "ní féidir teaghrán folamh a úsáid mar ainm comhaid" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "sonrú anaithnid `%s' ar an leibhéal dífhabhtaithe" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Fuarthas idirbhriseadh/eisceacht (cód = 0x%x, seoladh = 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" "Glaodh scagaire eisceachta gan láimhseáil ón chlár %s\n" "CódEisceachta = %x\n" "BratachaEisceachta = %x\n" "SeoladhEisceachta = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Sárú rochtana: oibríocht scríofa ag seoladh %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Sárú rochtana: oibríocht léimh ag seoladh %x\n" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "tá find_and_set_shell ag socrú default_shell = %s\n" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "shocraigh find_and_set_shell conair chuardaigh default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "cuirfear %s ar fionraí ar feadh tréimhse 30 soicind..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "sleep(30) críochnaithe. Ag gabháil ar aghaidh.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Sonraíodh Makefile ón ionchur caighdeánach faoi dhó." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (comhad sealadach)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (comhad sealadach)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Níl jabanna parailéalacha (-j) ar fáil ar an gcóras seo." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Á athshocrú le haghaidh jabanna aonair (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "earráid inmheánach: roghanna --jobserver-fds iomadúla" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "earráid inmheánach: teaghrán neamhbhailí --jobserver-fds `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "rabhadh: -jN fórsáilte i bhfo-make: mód jabfhreastalaí á dhíchumasú." #: main.c:1684 msgid "dup jobserver" msgstr "jabfhreastalaí dup" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "rabhadh: níl jabfhreastalaí ar fáil: ag baint úsáid as -j1. Cuir `+' leis " "an máthair-riail." #: main.c:1710 msgid "creating jobs pipe" msgstr "píopa na jabanna á chruthú" #: main.c:1725 msgid "init jobserver pipe" msgstr "píopa an jabfhreastalaí á thúsú" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "ní thacaítear le naisc shiombalacha: -L á dhíchumasú." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Makefileanna á nuashonrú....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "is féidir go lúbfar an Makefile `%s'; ní athdhéanfar é.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Theip ar athdhéanamh an makefile `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Níor aimsíodh an makefile `%s' san áireamh." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Níor aimsíodh an makefile `%s'" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Níorbh fhéidir an chomhadlann oibre a athrú ar ais." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Á rith arís[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (comhad sealadach): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "tá níos mó ná aon sprioc amháin i .DEFAULT_GOAL" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Níor sonraíodh aon sprioc agus níor aimsíodh aon makefile" #: main.c:2191 msgid "No targets" msgstr "Níl aon sprioc ann" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Cinn sprice á nuashonrú....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "rabhadh: Clog ar sceabha. Is féidir go bhfuil an tógáil neamhiomlán." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Úsáid: %s [roghanna] [sprioc] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Tógadh an clár seo le haghaidh %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Tógadh an clár seo le haghaidh %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Seol tuairiscí fabhtanna chuig \n" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "caithfidh tú teaghrán nach folamh a thabhairt mar argóint le `-%c'" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "caithfidh tú slánuimhir dheimhneach a thabhairt mar argóint le `-%c'" #: 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 "" "%sIs saorbhogearra an ríomhchlár seo; féach ar an bhunchód le haghaidh\n" "%scoinníollacha cóipeála. Níl baránta ar bith ann; go fiú níl baránta ann\n" "%sd'INDÍOLTACHT nó FEILIÚNACHT DO FHEIDHM AR LEITH.\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "%sTógadh an clár seo le haghaidh %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sTógadh an clár seo le haghaidh %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Bunachar sonraí Make, priontáilte ar %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Críochnaíodh an bunachar sonraí Make seo ar %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Ag dul isteach i gcomhadlann anaithnid\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Ag dul amach as comhadlann anaithnid\n" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Ag dul isteach sa chomhadlann `%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Ag dul amach as an gcomhadlann `%s'\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Ag dul isteach i gcomhadlann anaithnid\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Ag dul amach as comhadlann anaithnid\n" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Ag dul isteach sa chomhadlann `%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Ag dul amach as an gcomhadlann `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Stop.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Earráid anaithnid %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 "cuimhne fhíorúil ídithe" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: úsáideoir %lu (fíor %lu), grúpa %lu (fíor %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Rochtain túsaithe" #: misc.c:746 msgid "User access" msgstr "Rochtain úsáideora" #: misc.c:794 msgid "Make access" msgstr "Rochtain make" #: misc.c:828 msgid "Child access" msgstr "Rochtain mic" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "earráid sa scríobh: %s" #: misc.c:894 msgid "write error" msgstr "earráid sa scríobh" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Makefileanna á léamh...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Makefile `%s' á léamh" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (gan ceann sprice réamhshocraithe)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (conair chuardaigh)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (is cuma)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (ná fairsing ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "comhréir neamhbhailí i gcoinníollach" #: read.c:633 msgid "extraneous `endef'" msgstr "`endef' breise" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "ainm folamh athróige" #: read.c:662 msgid "empty `override' directive" msgstr "treoir `override' folamh" #: read.c:687 msgid "invalid `override' directive" msgstr "treoir neamhbhailí `override'" #: read.c:854 msgid "commands commence before first target" msgstr "tá orduithe ann roimh an chéad sprioc" #: read.c:905 msgid "missing rule before commands" msgstr "riail ar iarraidh roimh orduithe" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "deighilteoir%s ar iarraidh" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (Ar mhian leat TÁB in ionad ocht spás?)" #: read.c:1152 msgid "missing target pattern" msgstr "patrún sprice ar iarraidh" #: read.c:1154 msgid "multiple target patterns" msgstr "patrúin iomadúla sprice" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "níl aon `%%' sa phatrún sprice" #: read.c:1286 msgid "missing `endif'" msgstr "`endif' ar iarraidh" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Téacs gan mhaith i ndiaidh treorach `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "`endef' ar iarraidh, `define' gan chríochnú" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Téacs gan mhaith i ndiaidh treorach `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "`%s' breise" #: read.c:1482 msgid "only one `else' per conditional" msgstr "ní cheadaítear ach aon `else' amháin le gach coinníollach" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "Is míchumtha é an sainmhíniú athróige (le haghaidh aon sprioc amháin)" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "ní féidir réamhriachtanais a shonrú i scripteanna ordaithe" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "rialacha intuigthe agus rialacha statacha measctha le chéile" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "rialacha intuigthe agus gnáthrialacha measctha le chéile" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "níl an sprioc `%s' comhoiriúnach leis an phatrún sprice" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "tá iontrálacha : agus :: araon ann don chomhad sprice `%s'" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "tá an sprioc `%s' i riail amháin níos mó ná uair amháin." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "rabhadh: ag sárú na n-orduithe le haghaidh na sprice `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "" "rabhadh: ag déanamh neamhshuim ar sheanorduithe le haghaidh sprice `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "" "rabhadh: chonacthas carachtar NUL; ag déanamh neamhshuim ar an chuid eile " "den líne" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Níl faic le déanamh i gcomhair `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "Ní gá le `%s' a nuashonrú." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Comhad `%s' á bhearradh.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sNíl aon riail chun an sprioc `%s' a dhéanamh%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%sNíl aon riail chun an sprioc `%s' a dhéanamh, riachtanach le haghaidh `%s'%" "s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Comhad sprice `%s' idir lámha.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "" "Rinneadh iarracht ar an chomhad `%s' a nuashonrú le déanaí, agus theip air.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Rinneadh scrúdú ar an chomhad `%s' cheana.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Comhad `%s' á nuashonrú fós.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Nuashonraíodh an comhad `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Níl a leithéid de chomhad `%s' ann.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Warning: comhad .LOW_RESOLUTION_TIME `%s' le stampa ama ardtaifeach" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Aimsíodh riail intuigthe le haghaidh `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Níor aimsíodh aon riail intuigthe le haghaidh `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Ag baint úsáid as orduithe réamhshocraithe le haghaidh `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Tréigeadh an spleáchas ciorclach %s <- %s." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Críochnaíodh na réamhriachtanais den chomhad sprice `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Réamhriachtanais de `%s' á ndéanamh anois.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Ag tréigean an chomhaid sprice `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Ní dhearna an sprioc `%s' arís ós rud é go bhfuil earráidí ann." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "" "Sonraíonn an réamhriachtanas `%s' ord rite amháin le haghaidh sprice `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Níl an réamhriachtanas `%s' den sprioc `%s' ann.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Tá an réamhriachtanas `%s' níos nuaí ná an sprioc `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Tá an réamhriachtanas `%s' níos sine ná an sprioc `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Tá dhá idirstad ag an sprioc `%s' agus níl aon réamhriachtanas aice.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "" "Níl aon ordú le haghaidh `%s' agus níor athraigh aon réamhriachtanas.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "`%s' á dhéanamh de bharr bratach --always-make.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Ní gá leis an sprioc `%s' a athdhéanamh" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; ag baint úsáid as ainm VPATH `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Caithfidh an sprioc `%s' a athdhéanamh.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ag déanamh neamhshuim ar ainm VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Orduithe de `%s' á rith.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Theip ar athdhéanamh an sprioc-chomhaid `%s'.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "D'éirigh le hathdhéanamh an sprioc-chomhaid `%s'.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Tá gá leis an chomhad sprice `%s' a athdhéanamh leis an rogha -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Rabhadh: Tá an t-am mionathraithe den chomhad `%s' sa todhchaí" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" "Rabhadh: Tá an t-am mionathraithe den chomhad `%s' %.2g soicind sa todhchaí" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "Níl eilimint .LIBPATTERNS `%s' ina patrún" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Ní easpórtálfar Customs: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Rialacha Intuigthe" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Níl aon riail intuigthe." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u riail intuigthe, %u" #: rule.c:575 msgid " terminal." msgstr " teirminéal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "FABHT: num_pattern_rules mícheart! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "comhartha anaithnid" #: signame.c:93 msgid "Hangup" msgstr "Croch suas" #: signame.c:96 msgid "Interrupt" msgstr "Idirbhriseadh" #: signame.c:99 msgid "Quit" msgstr "Scoir" #: signame.c:102 msgid "Illegal Instruction" msgstr "Treoir Neamhcheadaithe" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Rianaigh/brisphointe" #: signame.c:110 msgid "Aborted" msgstr "Tobscortha" #: signame.c:113 msgid "IOT trap" msgstr "Gaiste IOT" #: signame.c:116 msgid "EMT trap" msgstr "Gaiste EMT" #: signame.c:119 msgid "Floating point exception" msgstr "Eisceacht snámhphointe" #: signame.c:122 msgid "Killed" msgstr "Maraithe" #: signame.c:125 msgid "Bus error" msgstr "Busearráid" #: signame.c:128 msgid "Segmentation fault" msgstr "Fabht deighilte" #: signame.c:131 msgid "Bad system call" msgstr "Drochghlao ar an gcóras" #: signame.c:134 msgid "Broken pipe" msgstr "Píopa briste" #: signame.c:137 msgid "Alarm clock" msgstr "Clog aláraim" #: signame.c:140 msgid "Terminated" msgstr "Scortha" #: signame.c:143 msgid "User defined signal 1" msgstr "Comhartha saincheaptha 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Comhartha saincheaptha 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Scoir an mhacphróiseas" #: signame.c:157 msgid "Power failure" msgstr "Cliseadh cumhachta" #: signame.c:160 msgid "Stopped" msgstr "Stoptha" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Stoptha (ionchur tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Stoptha (aschur tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Stoptha (comhartha)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Teorainn ama LAP sáraithe" #: signame.c:175 msgid "File size limit exceeded" msgstr "Uasmhéid na gcomhad sáraithe" #: signame.c:178 msgid "Virtual timer expired" msgstr "Am fíorúil caite" #: signame.c:181 msgid "Profiling timer expired" msgstr "Am próifíle caite" #: signame.c:187 msgid "Window changed" msgstr "Athraíodh an fhuinneog" #: signame.c:190 msgid "Continued" msgstr "Leanta" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Staid phráinneach A/I" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "A/I indéanta" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Acmhainn caillte" #: signame.c:215 msgid "Danger signal" msgstr "Comhartha guaise" #: signame.c:218 msgid "Information request" msgstr "Iarratas ar eolas" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Níl comhphróiseálaí snámhphointe ar fá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 "réamhshocraithe" #: variable.c:1372 msgid "environment" msgstr "timpeallacht" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "timpeallacht le -e" #: variable.c:1381 msgid "command line" msgstr "líne na n-orduithe" #: variable.c:1384 msgid "`override' directive" msgstr "treoir `override'" #: variable.c:1387 msgid "automatic" msgstr "uathoibríoch" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (ó `%s', líne %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# athróg tacar hais-tábla stait:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Athróga\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Luachanna Athróige sainiúil don phatrún" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Níl aon luach athróige atá sainiúil don phatrún." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u luach athróige atá sainiúil don phatrún" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "rabhadh: athróg gan sainmhíniú: `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "Theip ar sys$cuardach le %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Rabhadh: Atreorú folamh\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "earráid inmheánach: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-rabhadh, fágfaidh CTRL-Y fo-phróisis gan ghlanadh.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-rabhadh, is féidir gur gá duit ionramháil CTRL-Y a athchumasú ó DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "INSUITE [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "CD INSUITE %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "RM INSUITE %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Ordú anaithnid insuite '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Earráid, ordú folamh\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Atreoraíodh ionchur ó %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Atreoraíodh earráidí go %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Atreoraíodh aschur go %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "%s á rith ina áit\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Earráid le linn sceitheadh, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH Conairí Cuardaigh\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Níl aon chonair chuardaigh `vpath'." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u conair chuardaigh `vpath'.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Níl aon chonair ghinearálta cuardaigh (athróg `VPATH')." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Conair ghinearálta cuardaigh (athróg `VPATH'):\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Ná sonraigh -j ná --jobs mura bhfuil sh.exe le fáil." #~ msgid "Resetting make for single job mode." #~ msgstr "make á athshocrú le haghaidh jabanna aonair." #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Earráid chomhréire, isteach i '\"' fós\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Fuarthas SIGCHLD; %u mac gan bhaint.\n" #~ msgid "no file name for `%sinclude'" #~ msgstr "níl aon ainm comhaid do `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "fágann an sprioc `%s' an patrún réamhriachtanais folamh" make-dfsg-3.81.orig/po/gl.gmo0000644000175000017500000010540310416553102016240 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðNaO bPƒP0ŸPÐP àP(íP/QFQ)[Q7…Q½Q)ÛQR R..R3]R ‘R%²RPØRt)S}žSKTqhTžÚTMyUJÇU—V<ªVFçV˜.WxÇW:@X={Xv¹Xu0Y ¦YoGZŠ·ZFB[†‰[I\<Z\J—\Iâ\:,] g]q]"‘] ´]Â]7×]^^3^J^#i^^ §^±^ Ä^ Ñ^ Ý^ þ^ __ %_;F_E‚_È_ä_þ_"`,@`m`'‰`,±`+Þ`/ a/:aja.†a1µa-ça2bHbbb)|b=¦b#äb7c@c/\c.Œc"»cÞc7ôcY,d)†d°d¹dÀd Ødùd&e1?eqeŽe,«eØe(õe,f-Kfyf)™f!Ãf!åf1g29gDlg£±g$Uh"zh?hÝhðh' i-5i]ciDÁi!j(j9jLj+jjD–j Ûj/æjk4k =k+Jk/vk¦kµkÄkÖk ôk l l-l=l.Ul)„l)®lØl9ñlG+m(sm4œm(Ñm úm+n*1n \nhn‚n ’nn±nÈn$àn'o--o0[oŒo%©o&Ïo:öo)1p4[pp'«p0Óp(q-q4q DqRq/eq•q­q ÁqÎq+Õqr1r)Jr;tr°r>¿r%þrC$s-hs'–s!¾sàs=äs."t&QtxtC‹t Ït8ðt )uD3uxu4–u5Ëu6v38vlv…v9ŸvÙvÞvüv8w7Tw@Œw>Íw x$x>x Ux5ax+—x9Ãx7ýx%5ym[y5Éyÿyzz z,2z_zfzuz‘z7«z<ãz0 {4Q{†{,{$¼{)á{, |8|"X|{|$|&´|Û|"ô|})}G}*e}}®}FÊ}>~P~b~z~‘~5¦~ Ü~<ç~C$AhAª(ì=€S€/d€”€ °€"¼€ ߀í€2 =V_q€A’3Ô;‚D‚^‚+y‚ ¥‚3Æ‚/ú‚*ƒ!Jƒ2lƒQŸƒñƒ#„ &„#4„X„m„&‡„2®„á„…1…56…4l…¡…¾…%Û…4†76†-n†"œ†6¿†Dö† ;‡>\‡'›‡#Ç=ç‡6%ˆ\ˆnˆ/‰ˆ"¹ˆ܈RõˆLH‰6•‰6̉_Š.cŠ#’Š<¶ŠóŠCÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-10-05 14:46+0200 Last-Translator: Jacobo Tarrio Language-Team: Galician MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit # %u camiños de busca `vpath'. # %u regras implícitas, %u # %u valores de variables específicos do patrón # Directorios # Ficheiros # Base de datos de Make rematada en %s # Camiño de busca xeral (variable `VPATH'): # # Regras Implícitas # Base de datos de Make, imprimida en %s # Non hai un camiño de busca xeral (variable `VPATH'). # Non hai regras implícitas. # Non hai valores específicos do patrón. # Camiños de Busca VPATH # Variables # estatísticas da táboa hash de ficheiros: # Contáronse %d argumentos no lanzamento que fallou Este programa compilou para %s Este programa compilou para %s (%s) --debug[=MODIFICADORES] Amosar varios tipos de información de depuración. --no-print-directory Desactivar -w, incluso se se activou implicitamente. --warn-undefined-variables Avisar cando se faga referencia a unha variable non definida. -B, --always-make Facer tódolos obxectivos incondicionalmente. -C DIRECTORIO, --directory=DIRECTORIO Cambiar ao DIRECTORIO antes de facer nada. -I DIRECTORIO, --include-dir=DIRECTORIO Busca-los ficheiros de make incluídos no directorio. -R, --no-builtin-variables Desactiva-los valores das variables incluidos. -S, --no-keep-going, --stop Desactiva -k. -W FICHEIRO, --what-if=FICHEIRO, --new-file=FICHEIRO, --assume-new=FICHEIRO Trata-lo FICHEIRO coma infinitamente novo. -b, -m Ignorado por compatibilidade. -d Amosar moita información de depuración. -e, --environment-overrides As variables de ambiente substitúen aos ficheiros de make. -f FICHEIRO, --file=FICHEIRO, --makefile=FICHEIRO Le-lo FICHEIRO coma ficheiro de make. -h, --help Amosar esta mensaxe e saír. -i, --ignore-errors Ignora-los erros dos comandos. -j [N], --jobs[=N] Admitir N traballos á vez; infinitos sen un argumento. -k, --keep-going Continuar cando no se poidan facer algúns obxectivos. -l [N], --load-average[=N], --max-load[=N] Non iniciar varios traballos con carga superior a N. -n, --just-print, --dry-run, --recon Non executar ningún comando; só amosalos. -o FICHEIRO, --old-file=FICHEIRO, --assume-old=FICHEIRO Trata-lo FICHEIRO coma moi antigo e non refacelo. -p, --print-data-base Amosa-la base de datos interna de make. -q, --question Non executar ningún comando; o estado de saída di se está actualizado. -r, --no-builtin-rules Desactiva-las regras implícitas incluidas. -s, --silent, --quiet Non amosa-los comandos. -t, --touch Toca-los obxectivos no canto de os refacer. -v, --version Amosa-lo número de versión de make e saír. -w, --print-directory Amosa-lo directorio actual. Data %s Ignorando o nome VPATH `%s'. uid = %d, gid = %d, modo = 0%o. (incluidas): (memoria envorcada) (¿se cadra unha tabulación no canto de oito espacios?) (non importa) (de `%s', liña %lu) (de `%s', liña %lu): (o nome pode quedar truncado) (non hai un obxectivo por defecto) (non hai expansión de ~) (remoto) (camiño de busca) ficheiros, imposibles imposibles en %lu directorios. ata aquí. terminal.# Tamén se fai:# Obxectivo da liña de comando.# Comandos que se están a executar agora (ISTO É UN ERRO).# Comandos de dependencias que se están a executar (ISTO É UN ERRO).# Non se puido actualizar.# O ficheiro non existe.# O ficheiro foi actualizado.# O ficheiro non foi actualizado.# O ficheiro é un prerrequisito intermedio.# O ficheiro é moi antigo.# Fíxose a busca de regras implícitas.# Non se fixo a busca de regras implícitas.# Raiz do patrón implícito/estático: `%s' # ¡Valor non válido no membro `command_state'!# ¡Valor non válido no membro `update_status'!# Última modificación: %s # Nunca se comprobou o tempo de modificación.# Ten que ser actualizado (-q está estabrecido).# Obxectivo falso (prerrequisito de .PHONY).# Ficheiro precioso (prerrequisito de .PRECIOUS).# Actualizado con éxito.# comandos para executar# %s (dispositivo %d, inode [%d,%d,%d]): # %s (dispositivo %d, inode [%d,%d,%d]): non se puido abrir. # %s (dispositivo %ld, inode %ld): # %s (dispositivo %ld, inode %ld): non se puido abrir. # %s (clave %s, mtime %d): # %s (clave %s, mtime %d): non se puido abrir. # %s: non se puido face-la operación de stat. # Non hai camiños de busca `vpath'# Non é un obxectivo:# estatísticas da táboa hash de conxunto de variables: %s (liña %d) Contexto do intérprete de comandos incorrecto (!unixy && !batch_mode_shell) %s está suspendido durante 30 segundos...%s%s: %s%s: %s%s: Comando non atopado%s: Entrando no directorio `%s' %s: Saíndo do directorio `%s' %s: Intérprete de comandos non atopado%s: Marca de tempo fóra de rango; substituíndo %s%s: opción non válida -- %c %s: opción non válida -- %c %s: a opción `%c%s' non admite un argumento %s: a opción `%s' é ambigua %s: a opción `%s' precisa dun argumento %s: a opción `--%s' non admite un argumento %s: a opción `-W %s' non admite un argumento %s: a opción `-W %s' é ambigua %s: a opción precisa dun argumento -- %c %s: opción `%c%s' non recoñecida %s: opción `--%s' non recoñecida %s: usuario %lu (real %lu), grupo %lu (real %lu) %sNon hai unha regra para face-lo obxectivo `%s'%s%sNon hai unha regra para face-lo obxectivo `%s', que precisa `%s'%s%sIsto é software libre; vexa o código fonte polas condicións de copia. %sNON hai garantía; nin sequera de COMERCIABILIDADE ou APTITUDE PARA %sUN FIN DETERMINADO. %s[%u]: Entrando no directorio `%s' %s[%u]: Saíndo do directorio `%s' *** O membro do arquivo `%s' pode non ser correcto; non borrado*** Interrompido. *** Borrando o ficheiro `%s'*** Borrando o ficheiro intermedio `%s'*** Agardando por traballos non rematados....*** Aviso: o ficheiro `%s' de .LOW_RESOLUTION_TIME ten unha marca de tempo de alta resolución*** [%s] O membro do arquivo `%s' pode non ser correcto; non borrado*** [%s] Borrando o ficheiro `%s'*** [%s] Erro %d*** [%s] Erro 0x%x*** [%s] Erro 0x%x (ignorado)-aviso, CTRL-Y deixará subprocesos ceibos. -aviso, pode que teña que reactiva-lo manexo de CTRL-Y dende o DCL. . Detido. O elemento de .LIBPATTERNS `%s' non é un patrón; usando o nome de VPATH `%s'AbortadoTemporizadorEvitando a recursión de regras implícitas. ERRO: ¡num_pattern_rules é incorrecto! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Chamada ao sistema incorrectaCano rompidoErro do busLímite de tempo de CPU superadoAcceso de filloO proceso fillo rematouA dependencia circular %s <- %s foi eliminada.Limpando o ficheiro de lotes temporal %s Limpando o ficheiro de lotes temporal %s Colisións=%ld/%ld=%.0f%%Os comandos de `%s' serán ignorados en favor dos de `%s'.Atopáronse os comandos do ficheiro `%s' por busca de regras implícitas,Estanse a executa-los comandos de `%s'. Especificáronse comandos do ficheiro `%s' en %s:%lu,Considerando o ficheiro obxectivo `%s'. ContinuadoNon se puido voltar ao directorio orixinal.Creando un ficheiro por lotes temporal %s Hora actualA Aduana non exporta: %s Sinal de perigoTrampa EMTErro ao lanzar, %d Erro, comando baleiro Executando %s no canto Texto superfluo trala directiva `%s'Texto superfluo trala directiva `endef'Non se puido reface-lo ficheiro de make `%s'.Non se puido reface-lo ficheiro obxectivo `%s'. O ficheiro `%s' non existe. O ficheiro `%s' xa fora considerado. Límite de tamaño de ficheiros superadoRematáronse os prerrequisitos do ficheiro obxectivo `%s'. Rematouse de actualiza-lo ficheiro `%s'. O co-procesador de coma flotante non está dispoñibleExcepción de coma flotanteAtopouse unha regra implícita de `%s'. Atopouse a o prerrequisito `%s' coma VPATH `%s' Abandonando no ficheiro obxectivo `%s'. ColgarA E/S é posibleTrampa de IOTInstrucción IlegalNon se atopou o ficheiro de make incluido `%s'.Petición de informaciónAcceso inicializadoInterrompidoMatadoProceso fillo vivo 0x%08lx (%s) PID %ld %s Carga=%ld/%ld=%.0f%%, Buscando unha regra co ficheiro intermedio `%s'. Buscando unha regra implícita para `%s'. Buscando unha regra implícita membro do arquivo para `%s'. Acceso de makeO ficheiro de make `%s' podería causar un lazo; non se refai. Non se atopou o ficheiro de make `%s'O ficheiro de make da entrada estándar foi especificado dúas veces.Facendo `%s' debido á marca de sempre-facer. Membro `%s'%s: %ld bytes en %ld (%ld). Debe refacerse o obxectivo `%s'. NonNon hai comandos de `%s', e non cambiaron os prerrequisitos. Non se atopou unha regra implícita para `%s'. Non é preciso reface-lo obxectivo `%s'Non hai obxectivosNon se especificaron obxectivos e non se atopou un ficheiro de makeNon hai nada que facer para `%s'Obtívose un elemento para o proceso fillo 0x%08lx (%s). Opcións: Os traballos en paralelo (-j) non están soportados nesta plataforma.Fallo de suministro eléctricoO prerrequisito `%s' é máis novo có obxectivo `%s'. O prerrequisito `%s' é máis vello có obxectivo `%s'. O prerrequisito `%s' é só-orde para o obxectivo `%s'. O prerrequisito `%s' do obxectivo `%s' non existe. O temporizador esgotousePodando o ficheiro `%s'. Poñendo o proceso fillo 0x%08lx (%s) PID %ld%s na cadea. SaírLendo o ficheiro de make `%s'Lendo os ficheiros de make... Colleitando o proceso fillo perdedor 0x%08lx PID %ld %s Colleitando o proceso fillo gañador 0x%08lx PID %ld %s Hai pouco probouse a actualiza-lo ficheiro `%s' e non se puido. A variable recursiva `%s' fai referencia a si mesma (ao final)Erros redirixidos a %s Entrada redirixida de %s Saída redirixida a %s Rehash=%d, Rexeitando o prerrequisito implícito imposible `%s'. Rexeitando o prerrequisito imposible `%s'. Liberouse un elemento para o proceso fillo 0x%08lx (%s). Eliminando o proceso fillo 0x%08lx PID %ld%s da cadea. Borrando os ficheiros intermedios... Informe dos erros no programa a . Informe dos erros na traducción a . Reiniciando para entrar no modo de un traballo (-j1).Recurso perdidoSIGPHONESIGWINDFallo de segmentoAinda se está actualizando o ficheiro `%s'. DetidoDetido (sinal)Detido (entrada de consola)Detido (saída de consola)O ficheiro obxectivo `%s' foi feito de novo con éxito. O obxectivo `%s' ten catro puntos e non ten prerrequisitos. Non se refai o obxectivo `%s' a causa dos erros.O ficheiro obxectivo `%s' precisa refacerse con -q. RematadoEstan a se face-los prerrequisitos de `%s'. Trampa de trazado/punto de detenciónProbando o prerrequisito implícito `%s'. Probando a regra de patrón con raiz `%.*s'. Probando o prerrequisito `%s'. Comando incluido descoñecido '%s' Erro %d descoñecidoActualizando os obxectivos meta.... Actualizando os ficheiros de make.... Condición de E/S urxenteUso: %s [opcións] [obxectivo] ... Acceso de usuarioSinal definido polo usuario 1Sinal definido polo usuario 2Usando os comandos por defecto para `%s'. Temporizador virtual esgotadoAviso: Redirección baleira Aviso: O ficheiro `%s' ten unha data de modificación %.2g s. no futuroAviso: O ficheiro `%s' ten unha data de modificación no futuroA fiestra cambiou[%s] Erro %d (ignorado)`%s' está actualizado.directiva `override'tentouse usar unha característica non soportada: `%s'automáticopero agora considérase que `%s' é o mesmo ficheiro que `%s'.non se poden reservar %ld bytes para a táboa hash: memoria esgotadanon se pode renomear `%s' con catro puntos a `%s' con dous puntosnon se pode renomear `%s' con dous puntos a `%s' con catro puntosnon se pode impoñer un límite de carga: non se poden impoñer límites de carga neste sistema operativoliña de comandosos comandos comezan antes do primeiro obxectivocreando o cano de traballospor defectorematouse sleep(30). Continuando. dup jobserverdirectiva `override' baleiraa cadea baleira non é válida coma nome de ficheironome de variable baleiroambienteambiente baixo -e`%s' superfluo`endef' superfluofind_and_set_shell busca de camiños estabrece default_shell = %s find_and_set_shell estabrecendo default_shell = %s o primeiro argumento da función `word' debe ser maior que 0fopen (ficheiro temporal)fwrite (ficheiro temporal)inicializa-lo cano do servidor de traballoserro interno: `%s' command_stateerro interno: cadea --jobserver-fds non válida `%s'erro interno: opcións --jobserver-fds múltiplesdirectiva `override' non válidasintaxe non válida no condicionala chamada a lbr$ini_control fallou con status = %da chamada a lbr$set_module non puido extrae-la información do módulo, status = %dficheiro de makefalla `endef', `define' sen rematarfalla `endif'falla unha regra antes dos comandosfalla un separador%sfalla un patrón obxectivoregras implícitas e normais mesturadasregrás de patrón implícitas e estáticas mesturadaspatróns de obxectivo múltiplesnonprimeiro argumento da función `word' non numéricoprimeiro argumento da función `wordlist' non numéricosegundo argumento da función `wordlist' non numéricosó un `else' por condicionallectura do cano de traballosa chamada a sys$search fallou con %d o obxectivo `%s' non coincide co patrón do obxectivoo obxectivo `%s' aparece máis dunha vez na mesma regra.o ficheiro obxectivo `%s' ten entradas : e ::o patrón obxectivo non contén `%%'a opción `-%c' precisa dun argumento integral positivoa operación de tocar un membro do arquivo non está dispoñible en VMStouch: O arquivo `%s' non existetouch: Código de retorno incorrecto de ar_member_touch en `%s'touch: O membro `%s' non existe en `%s'touch: `%s' non é un arquivo válidonon se pode abri-la biblioteca `%s' para busca-lo membro `%s'especificación de nivel de depuración descoñecido `%s'sinal descoñecidounlink (ficheiro temporal)chamada á función `%s' non rematada: falla `%c'referencia a variable non rematadamemoria virtual esgotadaaviso: Detectáronse inconsistencias de reloxo. A operación pode quedar incompleta.aviso: -jN forzado no submake: desactivando o modo de servidor de traballos.aviso: viuse un carácter NUL; ignórase o resto da liñaaviso: ignóranse os comandos antigos do obxectivo `%s'aviso: o servidor de traballos non está dispoñible: usando -j1. Engada `+' á regra do make pai.aviso: ignorando os comandos do obxectivo `%s'aviso: variable non definida `%.*s'windows32_openpipe (): a chamada a process_init_fd() fallou write jobservermake-dfsg-3.81.orig/po/gl.po0000644000175000017500000015523610416553102016105 0ustar srivastasrivasta# Galician translation of GNU make. # Copyright (C) 2000, 2002 Free Software Foundation, Inc. # Jacobo Tarrio , 2000, 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 14:46+0200\n" "Last-Translator: Jacobo Tarrio \n" "Language-Team: Galician \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "tentouse usar unha característica non soportada: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "a operación de tocar un membro do arquivo non está dispoñible en VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: O arquivo `%s' non existe" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' non é un arquivo válido" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: O membro `%s' non existe en `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Código de retorno incorrecto de ar_member_touch en `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" "a chamada a lbr$set_module non puido extrae-la información do módulo, status " "= %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "a chamada a lbr$ini_control fallou con status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "non se pode abri-la biblioteca `%s' para busca-lo membro `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Membro `%s'%s: %ld bytes en %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (o nome pode quedar truncado)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Data %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, modo = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Interrompido.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] O membro do arquivo `%s' pode non ser correcto; non borrado" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** O membro do arquivo `%s' pode non ser correcto; non borrado" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Borrando o ficheiro `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Borrando o ficheiro `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# comandos para executar" #: commands.c:602 msgid " (built-in):" msgstr " (incluidas):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (de `%s', liña %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Directorios\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: non se puido face-la operación de stat.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (clave %s, mtime %d): non se puido abrir.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (dispositivo %d, inode [%d,%d,%d]): non se puido abrir.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (dispositivo %ld, inode %ld): non se puido abrir.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (clave %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (dispositivo %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (dispositivo %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Non" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " ficheiros, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "non" #: dir.c:1058 msgid " impossibilities" msgstr " imposibles" #: dir.c:1062 msgid " so far." msgstr " ata aquí." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " imposibles en %lu directorios.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "A variable recursiva `%s' fai referencia a si mesma (ao final)" #: expand.c:266 msgid "unterminated variable reference" msgstr "referencia a variable non rematada" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Especificáronse comandos do ficheiro `%s' en %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Atopáronse os comandos do ficheiro `%s' por busca de regras implícitas," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "pero agora considérase que `%s' é o mesmo ficheiro que `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Os comandos de `%s' serán ignorados en favor dos de `%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "non se pode renomear `%s' con dous puntos a `%s' con catro puntos" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "non se pode renomear `%s' con catro puntos a `%s' con dous puntos" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Borrando o ficheiro intermedio `%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Borrando os ficheiros intermedios...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Marca de tempo fóra de rango; substituíndo %s" #: file.c:782 msgid "Current time" msgstr "Hora actual" #: file.c:881 msgid "# Not a target:" msgstr "# Non é un obxectivo:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Ficheiro precioso (prerrequisito de .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Obxectivo falso (prerrequisito de .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Obxectivo da liña de comando." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Un ficheiro de make por defecto ou de MAKEFILES." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Fíxose a busca de regras implícitas." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Non se fixo a busca de regras implícitas." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Raiz do patrón implícito/estático: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# O ficheiro é un prerrequisito intermedio." #: file.c:919 msgid "# Also makes:" msgstr "# Tamén se fai:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Nunca se comprobou o tempo de modificación." #: file.c:927 msgid "# File does not exist." msgstr "# O ficheiro non existe." #: file.c:929 msgid "# File is very old." msgstr "# O ficheiro é moi antigo." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Última modificación: %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# O ficheiro foi actualizado." #: file.c:937 msgid "# File has not been updated." msgstr "# O ficheiro non foi actualizado." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Comandos que se están a executar agora (ISTO É UN ERRO)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Comandos de dependencias que se están a executar (ISTO É UN ERRO)." #: file.c:953 msgid "# Successfully updated." msgstr "# Actualizado con éxito." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Ten que ser actualizado (-q está estabrecido)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Non se puido actualizar." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# ¡Valor non válido no membro `update_status'!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# ¡Valor non válido no membro `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Ficheiros" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# estatísticas da táboa hash de ficheiros:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "primeiro argumento da función `word' non numérico" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "o primeiro argumento da función `word' debe ser maior que 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "primeiro argumento da función `wordlist' non numérico" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "segundo argumento da función `wordlist' non numérico" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: a chamada a DuplicateHandle(In) fallou (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "create_child_process: a chamada a DuplicateHandle(Err) fallou (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "A chamada a CreatePipe() fallou (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): a chamada a process_init_fd() fallou\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Limpando o ficheiro de lotes temporal %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Número de argumentos insuficiente (%d) na chamada á función `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Non implementada nesta plataforma: función `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "chamada á función `%s' non rematada: falla `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: a opción `%s' é ambigua\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: a opción `--%s' non admite un argumento\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: a opción `%c%s' non admite un argumento\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: a opción `%s' precisa dun argumento\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opción `--%s' non recoñecida\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opción `%c%s' non recoñecida\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opción non válida -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opción non válida -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: a opción precisa dun argumento -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: a opción `-W %s' é ambigua\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: a opción `-W %s' non admite un argumento\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "non se poden reservar %ld bytes para a táboa hash: memoria esgotada" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Carga=%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 "Colisións=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Buscando unha regra implícita para `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Buscando unha regra implícita membro do arquivo para `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Evitando a recursión de regras implícitas.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Probando a regra de patrón con raiz `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Rexeitando o prerrequisito implícito imposible `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Rexeitando o prerrequisito imposible `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Probando o prerrequisito implícito `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Probando o prerrequisito `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Atopouse a o prerrequisito `%s' coma VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Buscando unha regra co ficheiro intermedio `%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (ficheiro temporal)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Erro 0x%x (ignorado)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Erro 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Erro %d (ignorado)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Erro %d" #: job.c:399 msgid " (core dumped)" msgstr " (memoria envorcada)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Agardando por traballos non rematados...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Proceso fillo vivo 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (remoto)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Colleitando o proceso fillo perdedor 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Colleitando o proceso fillo gañador 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Limpando o ficheiro de lotes temporal %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Eliminando o proceso fillo 0x%08lx PID %ld%s da cadea.\n" #: job.c:862 msgid "write jobserver" msgstr "write jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Liberouse un elemento para o proceso fillo 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() non puido lanza-lo proceso (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Contáronse %d argumentos no lanzamento que fallou\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Poñendo o proceso fillo 0x%08lx (%s) PID %ld%s na cadea.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Obtívose un elemento para o proceso fillo 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "lectura do cano de traballos" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "non se poden impoñer límites de carga neste sistema operativo" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "non se pode impoñer un límite de carga: " #: 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 "process_easy() non puido lanza-lo proceso (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "" "make colleitou un proceso fillo de pid %d, ainda se agarda polo pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Comando non atopado" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Intérprete de comandos non atopado" #: 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 "O valor de $SHELL cambiou (antes era `%s', agora `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Creando un ficheiro por lotes temporal %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "%s (liña %d) Contexto do intérprete de comandos incorrecto (!unixy && !" "batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opcións:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Ignorado por compatibilidade.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make Facer tódolos obxectivos incondicionalmente.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C DIRECTORIO, --directory=DIRECTORIO\n" " Cambiar ao DIRECTORIO antes de facer nada.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d Amosar moita información de depuración.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=MODIFICADORES] Amosar varios tipos de información de " "depuración.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " As variables de ambiente substitúen aos " "ficheiros\n" " de make.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f FICHEIRO, --file=FICHEIRO, --makefile=FICHEIRO\n" " Le-lo FICHEIRO coma ficheiro de make.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Amosar esta mensaxe e saír.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Ignora-los erros dos comandos.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I DIRECTORIO, --include-dir=DIRECTORIO\n" " Busca-los ficheiros de make incluídos\n" " no directorio.\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] Admitir N traballos á vez; infinitos sen\n" " un argumento.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Continuar cando no se poidan facer\n" " algúns obxectivos.\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" " Non iniciar varios traballos con carga\n" " superior a N.\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" " Non executar ningún comando; só amosalos.\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 FICHEIRO, --old-file=FICHEIRO, --assume-old=FICHEIRO\n" " Trata-lo FICHEIRO coma moi antigo e non " "refacelo.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base Amosa-la base de datos interna de make.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Non executar ningún comando; o estado de\n" " saída di se está actualizado.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules Desactiva-las regras implícitas incluidas.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Desactiva-los valores das variables " "incluidos.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Non amosa-los comandos.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Desactiva -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Toca-los obxectivos no canto de os refacer.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Amosa-lo número de versión de make e saír.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Amosa-lo directorio actual.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Desactivar -w, incluso se se activou\n" " implicitamente.\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 FICHEIRO, --what-if=FICHEIRO, --new-file=FICHEIRO, --assume-" "new=FICHEIRO\n" " Trata-lo FICHEIRO coma infinitamente novo.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Avisar cando se faga referencia a\n" " unha variable non definida.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "a cadea baleira non é válida coma nome de ficheiro" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "especificación de nivel de depuración descoñecido `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" "%s: Atrapouse unha Interrupción/Excepción (código = 0x%x, enderezo = 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" "Filtro de excepcións non manexadas chamado dende o programa %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Violación de acceso: operación de escritura no enderezo %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Violación de acceso: operación de lectura no enderezo %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 estabrecendo 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 busca de camiños estabrece default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s está suspendido durante 30 segundos..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "rematouse sleep(30). Continuando.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "O ficheiro de make da entrada estándar foi especificado dúas veces." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (ficheiro temporal)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (ficheiro temporal)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Os traballos en paralelo (-j) non están soportados nesta plataforma." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Reiniciando para entrar no modo de un traballo (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "erro interno: opcións --jobserver-fds múltiples" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "erro interno: cadea --jobserver-fds non válida `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "aviso: -jN forzado no submake: desactivando o modo de servidor de traballos." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "aviso: o servidor de traballos non está dispoñible: usando -j1. Engada `+' á " "regra do make pai." #: main.c:1710 msgid "creating jobs pipe" msgstr "creando o cano de traballos" #: main.c:1725 msgid "init jobserver pipe" msgstr "inicializa-lo cano do servidor de traballos" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Actualizando os ficheiros de make....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "O ficheiro de make `%s' podería causar un lazo; non se refai.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Non se puido reface-lo ficheiro de make `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Non se atopou o ficheiro de make incluido `%s'." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Non se atopou o ficheiro de make `%s'" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Non se puido voltar ao directorio orixinal." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Re-executando:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (ficheiro temporal)" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Non se especificaron obxectivos e non se atopou un ficheiro de make" #: main.c:2191 msgid "No targets" msgstr "Non hai obxectivos" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Actualizando os obxectivos meta....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "aviso: Detectáronse inconsistencias de reloxo. A operación pode quedar " "incompleta." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Uso: %s [opcións] [obxectivo] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Este programa compilou para %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Este programa compilou para %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "" "Informe dos erros no programa a .\n" "Informe dos erros na traducción a .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "a opción `-%c' precisa dun argumento integral positivo" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "a opción `-%c' precisa dun argumento integral positivo" #: 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 "" "%sIsto é software libre; vexa o código fonte polas condicións de copia.\n" "%sNON hai garantía; nin sequera de COMERCIABILIDADE ou APTITUDE PARA\n" "%sUN FIN DETERMINADO.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "Este programa compilou para %s\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "Este programa compilou para %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Base de datos de Make, imprimida en %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Base de datos de Make rematada en %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Entrando nun directorio descoñecido" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Saíndo dun directorio descoñecido" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Entrando no directorio `%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Saíndo do directorio `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Entrando nun directorio descoñecido" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Saíndo dun directorio descoñecido" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Entrando no directorio `%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Saíndo do directorio `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Detido.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Erro %d descoñecido" #: 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 "memoria virtual esgotada" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: usuario %lu (real %lu), grupo %lu (real %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Acceso inicializado" #: misc.c:746 msgid "User access" msgstr "Acceso de usuario" #: misc.c:794 msgid "Make access" msgstr "Acceso de make" #: misc.c:828 msgid "Child access" msgstr "Acceso de fillo" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Erros redirixidos a %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "write jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Lendo os ficheiros de make...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Lendo o ficheiro de make `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (non hai un obxectivo por defecto)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (camiño de busca)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (non importa)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (non hai expansión de ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "sintaxe non válida no condicional" #: read.c:633 msgid "extraneous `endef'" msgstr "`endef' superfluo" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "nome de variable baleiro" #: read.c:662 msgid "empty `override' directive" msgstr "directiva `override' baleira" #: read.c:687 msgid "invalid `override' directive" msgstr "directiva `override' non válida" #: read.c:854 msgid "commands commence before first target" msgstr "os comandos comezan antes do primeiro obxectivo" #: read.c:905 msgid "missing rule before commands" msgstr "falla unha regra antes dos comandos" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "falla un separador%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (¿se cadra unha tabulación no canto de oito espacios?)" #: read.c:1152 msgid "missing target pattern" msgstr "falla un patrón obxectivo" #: read.c:1154 msgid "multiple target patterns" msgstr "patróns de obxectivo múltiples" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "o patrón obxectivo non contén `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "falla `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Texto superfluo trala directiva `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "falla `endef', `define' sen rematar" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Texto superfluo trala directiva `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "`%s' superfluo" #: read.c:1482 msgid "only one `else' per conditional" msgstr "só un `else' por condicional" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Definición dunha variable por obxectivo mal formada" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "regrás de patrón implícitas e estáticas mesturadas" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "regras implícitas e normais mesturadas" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "o obxectivo `%s' non coincide co patrón do obxectivo" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "o ficheiro obxectivo `%s' ten entradas : e ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "o obxectivo `%s' aparece máis dunha vez na mesma regra." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "aviso: ignorando os comandos do obxectivo `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "aviso: ignóranse os comandos antigos do obxectivo `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "aviso: viuse un carácter NUL; ignórase o resto da liña" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Non hai nada que facer para `%s'" #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' está actualizado." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Podando o ficheiro `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sNon hai unha regra para face-lo obxectivo `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sNon hai unha regra para face-lo obxectivo `%s', que precisa `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Considerando o ficheiro obxectivo `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Hai pouco probouse a actualiza-lo ficheiro `%s' e non se puido.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "O ficheiro `%s' xa fora considerado.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Ainda se está actualizando o ficheiro `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Rematouse de actualiza-lo ficheiro `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "O ficheiro `%s' non existe.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Aviso: o ficheiro `%s' de .LOW_RESOLUTION_TIME ten unha marca de tempo " "de alta resolución" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Atopouse unha regra implícita de `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Non se atopou unha regra implícita para `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Usando os comandos por defecto para `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "A dependencia circular %s <- %s foi eliminada." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Rematáronse os prerrequisitos do ficheiro obxectivo `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Estan a se face-los prerrequisitos de `%s'.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Abandonando no ficheiro obxectivo `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Non se refai o obxectivo `%s' a causa dos erros." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "O prerrequisito `%s' é só-orde para o obxectivo `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "O prerrequisito `%s' do obxectivo `%s' non existe.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "O prerrequisito `%s' é máis novo có obxectivo `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "O prerrequisito `%s' é máis vello có obxectivo `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "O obxectivo `%s' ten catro puntos e non ten prerrequisitos.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Non hai comandos de `%s', e non cambiaron os prerrequisitos.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Facendo `%s' debido á marca de sempre-facer.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Non é preciso reface-lo obxectivo `%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; usando o nome de VPATH `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Debe refacerse o obxectivo `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignorando o nome VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Estanse a executa-los comandos de `%s'.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Non se puido reface-lo ficheiro obxectivo `%s'.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "O ficheiro obxectivo `%s' foi feito de novo con éxito.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "O ficheiro obxectivo `%s' precisa refacerse con -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Aviso: O ficheiro `%s' ten unha data de modificación no futuro" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Aviso: O ficheiro `%s' ten unha data de modificación %.2g s. no futuro" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "O elemento de .LIBPATTERNS `%s' non é un patrón" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "A Aduana non exporta: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Regras Implícitas" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Non hai regras implícitas." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u regras implícitas, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "ERRO: ¡num_pattern_rules é incorrecto! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "sinal descoñecido" #: signame.c:93 msgid "Hangup" msgstr "Colgar" #: signame.c:96 msgid "Interrupt" msgstr "Interrompido" #: signame.c:99 msgid "Quit" msgstr "Saír" #: signame.c:102 msgid "Illegal Instruction" msgstr "Instrucción Ilegal" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Trampa de trazado/punto de detención" #: signame.c:110 msgid "Aborted" msgstr "Abortado" #: signame.c:113 msgid "IOT trap" msgstr "Trampa de IOT" #: signame.c:116 msgid "EMT trap" msgstr "Trampa EMT" #: signame.c:119 msgid "Floating point exception" msgstr "Excepción de coma flotante" #: signame.c:122 msgid "Killed" msgstr "Matado" #: signame.c:125 msgid "Bus error" msgstr "Erro do bus" #: signame.c:128 msgid "Segmentation fault" msgstr "Fallo de segmento" #: signame.c:131 msgid "Bad system call" msgstr "Chamada ao sistema incorrecta" #: signame.c:134 msgid "Broken pipe" msgstr "Cano rompido" #: signame.c:137 msgid "Alarm clock" msgstr "Temporizador" #: signame.c:140 msgid "Terminated" msgstr "Rematado" #: signame.c:143 msgid "User defined signal 1" msgstr "Sinal definido polo usuario 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Sinal definido polo usuario 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "O proceso fillo rematou" #: signame.c:157 msgid "Power failure" msgstr "Fallo de suministro eléctrico" #: signame.c:160 msgid "Stopped" msgstr "Detido" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Detido (entrada de consola)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Detido (saída de consola)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Detido (sinal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Límite de tempo de CPU superado" #: signame.c:175 msgid "File size limit exceeded" msgstr "Límite de tamaño de ficheiros superado" #: signame.c:178 msgid "Virtual timer expired" msgstr "Temporizador virtual esgotado" #: signame.c:181 msgid "Profiling timer expired" msgstr "O temporizador esgotouse" #: signame.c:187 msgid "Window changed" msgstr "A fiestra cambiou" #: signame.c:190 msgid "Continued" msgstr "Continuado" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Condición de E/S urxente" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "A E/S é posible" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Recurso perdido" #: signame.c:215 msgid "Danger signal" msgstr "Sinal de perigo" #: signame.c:218 msgid "Information request" msgstr "Petición de información" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "O co-procesador de coma flotante non está dispoñible" #: 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 "por defecto" #: variable.c:1372 msgid "environment" msgstr "ambiente" #: variable.c:1375 msgid "makefile" msgstr "ficheiro de make" #: variable.c:1378 msgid "environment under -e" msgstr "ambiente baixo -e" #: variable.c:1381 msgid "command line" msgstr "liña de comandos" #: variable.c:1384 msgid "`override' directive" msgstr "directiva `override'" #: variable.c:1387 msgid "automatic" msgstr "automático" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (de `%s', liña %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# estatísticas da táboa hash de conxunto de variables:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variables\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Valores de variables específicos do patrón" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Non hai valores específicos do patrón." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u valores de variables específicos do patrón" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "aviso: variable non definida `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "a chamada a sys$search fallou con %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Aviso: Redirección baleira\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "erro interno: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-aviso, CTRL-Y deixará subprocesos ceibos.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-aviso, pode que teña que reactiva-lo manexo de CTRL-Y dende o DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Comando incluido descoñecido '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Erro, comando baleiro\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Entrada redirixida de %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Erros redirixidos a %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Saída redirixida a %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Executando %s no canto\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Erro ao lanzar, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# Camiños de Busca VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Non hai camiños de busca `vpath'" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u camiños de busca `vpath'.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Non hai un camiño de busca xeral (variable `VPATH')." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Camiño de busca xeral (variable `VPATH'):\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Erro de sintaxe, ainda dentro de '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Recibiuse un sinal SIGCHLD; %u procesos fillos non colleitados.\n" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Non especifique -j ou --jobs se sh.exe non está dispoñible." #~ msgid "Resetting make for single job mode." #~ msgstr "Reiniciando make para entrar no modo de un traballo." #~ msgid "no file name for `%sinclude'" #~ msgstr "non hai un home de ficheiro en `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "o obxectivo `%s' deixa o patrón prerrequisito baleiro" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Non hai ficheiros." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u ficheiros en %u baldes hash.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# %.3f ficheiros de media por balde, máximo de %u ficheiros nun balde.\n" #~ msgid "DIRECTORY" #~ msgstr "DIRECTORIO" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Entrar no DIRECTORIO antes de facer nada" #~ msgid "FLAGS" #~ msgstr "MODIFICADORES" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Suspende-lo proceso para poder conectar un depurador" #~ msgid "Environment variables override makefiles" #~ msgstr "" #~ "As variables de ambiente teñen prioridade sobre os ficheiros de make" #~ msgid "FILE" #~ msgstr "FICHEIRO" #~ msgid "Read FILE as a makefile" #~ msgstr "Le-lo FICHEIRO coma un ficheiro de make" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Busca-los ficheiros de make incluidos no DIRECTORIO" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Non comezar traballos múltiples se a carga non é inferior a N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "Non executar ningún comando; só amosalos" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Considerar que o FICHEIRO é moi vello, e non o refacer" #~ msgid "Don't echo commands" #~ msgstr "Non amosa-los comandos" #~ msgid "Turns off -k" #~ msgstr "Desactiva -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Considerar que o FICHEIRO é infinitamente novo" #~ msgid "Entering" #~ msgstr "Entrando" #~ msgid "Leaving" #~ msgstr "Saindo" #~ msgid "# No variables." #~ msgstr "# Non hai variables." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# %.1f variables de media por balde, máximo de %u nun balde.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# %d.%d variables de media por balde, máximo de %u nun balde.\n" #~ msgid "the `word' function takes a positive index argument" #~ msgstr "a función `word' toma un argumento índice positivo" #~ msgid " (ignored)" #~ msgstr " (ignorado)" #~ msgid " not" #~ msgstr " non" #~ msgid " remote" #~ msgstr " remoto" #~ msgid " with arg %s" #~ msgstr " co argumento %s" #~ msgid "%s finished." #~ msgstr "%s rematou." #~ msgid "%s: unknown signal" #~ msgstr "%s: sinal descoñecido" #~ msgid "%sGNU Make version %s" #~ msgstr "%sGNU Make versión %s" #~ msgid "1-minute: %f " #~ msgstr "1 minuto: %f " #~ msgid "15-minute: %f " #~ msgstr "15 minutos: %f " #~ msgid "5-minute: %f " #~ msgstr "5 minutos: %f " #~ msgid "?? getopt returned character code 0%o ??\n" #~ msgstr "?? getopt devolveu o código do carácter 0%o ??\n" #~ msgid "Child" #~ msgstr "Fillo" #~ msgid "Dependency `%s' does not exist.\n" #~ msgstr "A dependencia `%s' non existe.\n" #~ msgid "Error %ld" #~ msgstr "Erro %ld" #~ msgid "Error getting load average" #~ msgstr "Erro ao obte-la carga media" #~ msgid "Error mallocing for FAB\n" #~ msgstr "Erro ao reservar memoria para FAB\n" #~ msgid "Error mallocing for NAM\n" #~ msgstr "Erro ao reservar memoria para NAM\n" #~ msgid "Error mallocing for direct\n" #~ msgstr "Erro ao reservar memoria para direct\n" #~ msgid "Error mallocing for searchspec\n" #~ msgstr "Erro ao reservar memoria para searchspec\n" #~ msgid "ExceptionAddress = %x\\r\n" #~ msgstr "ExceptionAddress = %x\\r\n" #~ msgid "ExceptionCode = %x\\r\n" #~ msgstr "ExceptionCode = %s\\r\n" #~ msgid "ExceptionFlags = %x\\r\n" #~ msgstr "ExceptionFlags = %x\\r\n" #~ msgid "Job exported to %s ID %u\n" #~ msgstr "Traballo exportado a %s ID %u\n" #~ msgid "MyExecute: Cannot allocate space for calling a command" #~ msgstr "MyExecute: Non se pode reservar espacio para chamar un comando" #~ msgid "Trying %s dependency `%s'.\n" #~ msgstr "Probando a dependencia %s `%s'.\n" #~ msgid "Unknown error 12345678901234567890" #~ msgstr "Erro 12345678901234567890 descoñecido" #~ msgid "Unknown%s job %d" #~ msgstr "Traballo%s %d descoñecido" #~ msgid "User" #~ msgstr "Usuario" #~ msgid "arg with white space or doublequotes: %s\n" #~ msgstr "argumento con espacios en branco ou comiñas dobres: %s\n" #~ msgid "digits occur in two different argv-elements.\n" #~ msgstr "aparecen díxitos en dous elementos de argv distintos.\n" #~ msgid "empty string arg: %s\n" #~ msgstr "argumento de cadea baleiro: %s\n" #~ msgid "environment override" #~ msgstr "supli-lo ambiente" #~ msgid "execve: " #~ msgstr "execve: " #~ msgid "execvp: " #~ msgstr "execvp: " #~ msgid "expand_function: unable to launch process (e=%d)\n" #~ msgstr "expand_function: non se puido lanza-lo proceso (e=%d)\n" #~ msgid "exporting: " #~ msgstr "exportando: " #~ msgid "exporting: %s" #~ msgstr "exportando: %s" #~ msgid "exporting: Couldn't create return socket." #~ msgstr "exportando: Non se puido crea-lo socket de retorno." #~ msgid "getcwd: " #~ msgstr "getcwd: " #~ msgid "getwd: %s" #~ msgstr "getwd: %s" #~ msgid "implicit" #~ msgstr "implícita" #~ msgid "intermediate" #~ msgstr "intermedia" #~ msgid "losing" #~ msgstr "que perde" #~ msgid "never" #~ msgstr "nunca" #~ msgid "newer" #~ msgstr "máis novo" #~ msgid "non-option ARGV-elements: " #~ msgstr "elementos ARGV que non son opcións: " #~ msgid "older" #~ msgstr "máis vello" #~ msgid "option %c\n" #~ msgstr "opción %c\n" #~ msgid "option %s" #~ msgstr "opción %s" #~ msgid "option a\n" #~ msgstr "opción a\n" #~ msgid "option b\n" #~ msgstr "opción b\n" #~ msgid "option c with value `%s'\n" #~ msgstr "opción c co valor `%s'\n" #~ msgid "option d with value `%s'\n" #~ msgstr "opción d co valor `%s'\n" #~ msgid "original arg: %s\n" #~ msgstr "argumento orixinal: %s\n" #~ msgid "override" #~ msgstr "suplir" #~ msgid "plain arg: %s\n" #~ msgstr "argumento simple: %s\n" #~ msgid "process_begin: CreateProcess(%s, %s, ...) failed.\n" #~ msgstr "process_begin: a chamada a CreateProcess(%s, %s, ...) fallou.\n" #~ msgid "process_easy: DuplicateHandle(Err) failed (e=%d)\n" #~ msgstr "process_easy: a chamada a DuplicateHandle(Err) fallou (e=%d)\n" #~ msgid "process_easy: DuplicateHandle(In) failed (e=%d)\n" #~ msgstr "process_easy: a chamada a DuplicateHandle(In) fallou (e=%d)\n" #~ msgid "process_easy: DuplicateHandle(Out) failed (e=%d)\n" #~ msgstr "process_easy: a chamada a DuplicateHandle(Out) fallou (e=%d)\n" #~ msgid "read" #~ msgstr "lectura" #~ msgid "rule" #~ msgstr "regra" #~ msgid "touch %s" #~ msgstr "tocar %s" #~ msgid "undefined" #~ msgstr "non definido" #~ msgid "unlink: " #~ msgstr "unlink: " #~ msgid "winning" #~ msgstr "que gaña" #~ msgid "write" #~ msgstr "escritura" make-dfsg-3.81.orig/po/he.gmo0000644000175000017500000006020510416553102016232 0ustar srivastasrivastaÞ•)d ¬àáþ&>N!W-y §-Èö' 4 K"Y |†"£ ÆÓ(â 2M` r|‹”¥ ®¹È.à1AZrŒ(ªÓ&è*&:+a+¹#Î#ò)-@n‡$ž9Ãý3P.j™µÐ=à" A W +s Ÿ ¹ ,Ó !%!,D!-q! Ÿ!&À!ç!"'"/G"1w" ©"µ"#Ì"#ð"6#K#g#y##4«#>à# $*)$T$l$ t$"€$'£$Ë$Ú$é$û$ % %!% 9%%F%l%$Œ%=±%:ï% *&0K&|& ›&+¥&!Ñ& ó&' '('1'E'['$q''–'¾'#Þ'("(@(,Y(†()¤(Î(!ç(& )0)P) W)d)m)%)§) »)Å)#Ì)0ð)'!*3I*+}*©*-Å*'ó*+5+<8+!u+—+ µ+*À+ë+', 0,6:, q,-,-­,1Û, -%-39-m-r-ˆ-(ž-)Ç-/ñ-6!.X.p.Š.1£.-Õ.'/#+/ O/]/f/n//œ/¤/µ/É/&Þ/60)<0(f0 0*š0Å0#Û0&ÿ0&1F1d1u11¨1!½1ß1õ1! 2-2C2_2n2†2š2(¯2 Ø21â2333H3|33˜3 Ì3%Ù3ÿ344 74E4!`4‚4 –4¢4·4Ç46Ú4.58@5y55¨5"¼53ß506D6a6'69§6á6&ê67!7>7R7i7'‰7±7Ê7-Í71û72-8`8€88,ª82×8* 9596U9,Œ9"¹93Ü9):"::1]:&:¶:Å:0ß:;0;=I;9‡;1Á;.ó;H"<,k<"˜<0»<ì<Jü<G>d>&}>¤>´>!½>-ß> ?-.?\?'r?š? ±? ¿? à?ê?"@ &@3@$R@ w@…@ž@¹@Ì@Þ@ç@ö@ÿ@A A$A3A.KA1zA¬AÅAÝA÷A(B>B&SB*zB&¥B+ÌB+øB$C#9C#]C)C-«CÙCòC$ D9.DhD3‡D»D.ÕDE E;EIKE•E¬EÂE6ÛEF .F.OF(~F(§F.ÐF/ÿF+/G[G'{G'£GËG.êG6HPH`HwH!•H;·HóHI I7I-WI6…I ¼I%ÆIìIJ JJ'3J[JjJyJ‹J ›J §J±J ÉJÖJòJ K)(K:RKK/¥KÕK ëKõKL .L9L PL^LgLL“L¦LÁL"ßLMM5MRM(kM”M)­M×M ðM!N!3NUN \NiNrN†N£N ·NÁN%ÈNîN O,+O<XO•O+«O'×OÿOP4P'SP{P ™P&£PÊP)áP7 Q&CQ jQ!xQ!šQ'¼QäQüQ5RNRSRiR(€R)©R)ÓR5ýR3SGSXS8iS,¢S*ÏS úS T)T2T:TMTeTmT~T’T§T4ÀT#õT#U =UHUdU!zUœU¼UÖUóUVV0V&EVlV‚V$˜V½VÓVèV÷V WW$2W WW-aW;W;ËWX##X GXTXtX‡X X ™X§X ½X ÞX ëX÷X Y Y6%Y.\Y/‹Y»YÒYêY$þY;#Z0_ZZ§Z ºZ8ÛZ[$[ B[N[ d[p[#[(£[Ì[ß[(â[, \*8\c\€\\"¦\)É\)ó\]%1]4W]!Œ]3®]%â]!^,*^+W^ƒ^’^¬^ Ê^ë^5_-7_%e_+‹_I·_"`$`0D`u`# —cœ~¾k(;ÙýN"¬ªÍÔnlG`ìW6ŒøöÀ_®*QL'…”ÐÌt,õÏ×ÅmÑuˆáfŠ j•iè€FåDÞh$EÝ¥-b&ÃTæƒ[X{3¢ôp<ñØH¡©™š8˜ã7Ò½ŸÖ"r³òSBž– ßÿ Ž éà‹:„ùv9RV#O})Ua)x0£Z§ÉwÇ›yþº YÁâÊ|²¹2P¤Æ+s!^&î‡(µ·Ú  ‰ä  zK»°1Ó’‚dë\Jü  %Ûq]¼¸ð´­ÎÄ$M%“goeúÜ/‘5¦†¨¶ê¿Ëíç.«>ûÈ!I÷±?4ïÕC=óA'¯@ # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.79.1 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-03-30 21:33+0300 Last-Translator: Eli Zaretskii Language-Team: Hebrew MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-8 Content-Transfer-Encoding: 8bit # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables ìùëðù øåâéùá åðîð íéèðîåâøà %d Date %s .`%s' VPATH íùî íìòúî uid = %d, gid = %d, mode = 0%o. (built-in): (core õáå÷á íùøð ïåøëæä ïëåú)(?íéçååø 8 íå÷îá TAB-ì úðååëúä íàä) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion)(ú÷çåøî) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:(!unixy && !batch_mode_shell) shell-mode úòéá÷á äì÷ú :%s õáå÷ ìù %d äøåù .úåéðù 30 ìù %s úééäùääàöîð àì åæ äãå÷ô :%säàöîð àì shell úãå÷ô :%søúåîä íåçúì õåçî äðéäù ,%s ìù ïîæä úîéúç úà %s-á óéìçî%s: é÷åç-éúìá ïééôàî -- %c %s úéðëú øåáò éåâù ïééôàî -- %c %s úéðëú øåáò èðîåâøà ìá÷î åðéà `%c%s' ïééôàî %s úéðëú øåáò éòîùî-ãç åðéà `%s' ïééôàî %s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî %s úéðëú øåáò èðîåâøà ìá÷î åðéà `--%s' ïééôàî %s úéðëú øåáò èðîåâøà ìá÷î åðéà `-W %s' ïééôàî %s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî %s: èðîåâøà áééçî ïééôàî -- %c %s úéðëú øåáò `%c%s' ääåæî-éúìá ïééôàî %s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî %s`%s'%s äøèî úééðáì íéììë ïéà%säúééðáì íéììë ïéà êà ,`%s' úùøåã `%s'%s äøèî*** ÷çîéé àì ;ïé÷ú-éúìá úåéäì ìåìò `%s' ïåéëøà øáà ****** Break. *** *** `%s' õáå÷ ÷çåî ****** `%s' íééðéá õáå÷ ÷çåî ****** ...åîééúñð íøèù úåãåáòì ïéúîî*** [%s] ÷çîéé àì ;ïé÷ú-éúìá úåéäì ìåìò `%s' ïåéëøà øáà ****** [%s] `%s' õáå÷ ÷çåî ****** [%s] %d äì÷ú*** [%s] 0x%x äì÷ú ****** [%s] 0x%x äì÷úî éúîìòúä ***.úåìéòô úá-úåéðëú øéàùäì ìåìò CTRL-Y :úåøéäæ .DCL-î CTRL-Y-á ìåôéè øåùôéàá êøåö úåéäì ìåìò :úåøéäæ . Stop. úéðáú åðéà .LIBPATTERNS ìù `%s' èðîìà (`%s' :VPATH õáå÷ íù)AbortedAlarm clock.úùøåôî-éúìá äéñøå÷øî òðîð BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exited.%s <- %s úéìâòî ìåìú èéîùî`%s' éðîæ batch õáå÷ ÷ìñî `%s' éðîæ batch õáå÷ ÷ìñî .`%s' øåáò åìà ìò úåôéãò `%s' øåáò úåãå÷ô,íéùøåôî-éúìá íéììëá ùåôéç é"ò åàöîð `%s' õáå÷ øåáò úåãå÷ô.`%s' øåáò úåãå÷ô õéøî ,`%s' õáå÷ øåáò úåãå÷ô åðúéð %s õáå÷á %lu äøåùá.`%s' äøèî õáå÷ ïçåá Continued.úéøå÷îä äé÷éúì øåæçì ïúéð àì`%s' éðîæ batch õáå÷ øöåé úëøòî ïåòù%s àöééî åðéà Customs Danger signalEMT trap%d :úá-úéðëú úìòôäá äì÷ú ä÷éø äãå÷ô :äì÷ú %s õéøî úàæ íå÷îá `%s' úàøåä éøçà øúåéî èñ÷è`endef' úàøåä éøçà øúåéî èñ÷è.`%s' makefile ìù ùãçî-äøéöéá äì÷ú.ùãçî `%s' úåðáì ïåéñð ìùëð .íéé÷ åðéà `%s' õáå÷ .ïë-éðôì ïçáð øáë `%s' õáå÷ File size limit exceeded.`%s' äøèî õáå÷ ìù íã÷-úåùéøã íò éúîééñ .`%s' õáå÷ ïëãòì éúîééñ Floating point co-processor not availableFloating point exception.`%s' øåáò ùøåôî-éúìá ììë éúàöî `%s' íã÷ úùéøãë VPATH `%s' éúàöî .`%s' äøèî õáå÷ éáâì íééãé éúîøä HangupI/O possibleIOT trapIllegal Instruction.àöîð àì `%s' ììëåî makefileInformation requestInterruptKilledäöø 0x%08lx (%s) PID=%ld %s úá-úéðëú .`%s' éðîæ õáå÷ íò ììë ùôçî .`%s' øåáò ùøåôî-éúìá ììë ùôçî .`%s' øåáò ïåéëøà éøáàì ùøåôî-éúìá ììë ùôçî .ùãçî åøöééìî òðîð ;úéôåñðéà äàìåì øåöéì ìåìò `%s' Makefile àöîð àì `%s' Makefile.úçà íòôî øúåé ïúéð éð÷ú èì÷ õåøòî MakefileMember `%s'%s: %ld bytes at %ld (%ld). .`%s' äøèî ùãçî úåðáì áééç No.äùòîì äúðúùä àì íã÷ úùéøã óàå `%s' øåáò úåãå÷ô ïéà .`%s' øåáò íéùøåôî-éúìá íéììë åàöîð àì `%s' äøèî ùãçî úåðáì êøåö ïéàúåøèî ïéàmakefile éöá÷ åàöîð àìå úåøèî ïåéö ïéà.`%s øåáò úåùòì äî ïéà.0x%08lx (%s) úá-úéðëú øåáò ïåîéñà ìá÷úä :íéðééôàî .åæ úëøòîá êîúð åðéà (-j) éìéá÷î òåöéáPower failure.`%s' íã÷ä úùéøãî äðùé `%s' äøèî .`%s' íã÷ä úùéøãî äùãç `%s' äøèî .íéé÷ åðéàù `%s' éàðúë úùøåã `%s' äøèî Profiling timer expired.`%s' øåáò úåéåìú óøâ õö÷î .úåãåáò úøùøùì 0x%08lx (%s) PID=%ld %s úá-úéðëú óøöî QuitReading makefile `%s'...makefile éöá÷ àøå÷ äìùëðù 0x%08lx PID=%ld %s úá-úéðëú óñåà äçéìöäù 0x%08lx PID=%ld %s úá-úéðëú óñåà .`%s' õáå÷ ïåëãòá éúìùëðå éúéñéð ïîæî àì (øáã ìù åôåñá) åîöòì äééðôäì íøåâ `%s' éáéñøå÷ø äðúùî%s-ì úåàéâù úééðôä %s-î èì÷ úééðôä %s-ì èìô úééðôä .úéøùôà-éúìá äðéäù íåùî `%s' úùøåôî-éúìá íã÷ úùéøã äçåã .úéøùôà-éúìá äðéäù íåùî `%s' íã÷ úùéøã äçåã .øøçåù 0x%08lx (%s) úá-úéðëú øåáò ïåîéñàä .(-j1) éúøãñ ïôåàá åòöåáé úåãå÷ôResource lostSIGPHONESIGWINDSegmentation fault.`%s' õáå÷ ïëãòî ïééãò StoppedStopped (signal)Stopped (tty input)Stopped (tty output).`%s' ùãçî úééðáá äçìöä .íã÷ úåùéøã àììå íéìåôë íééúåãå÷ð íò äðéä `%s' äøèî .úåàéâù á÷ò ùãçî äúðáð àì `%s' äøèî.-q íò úåðáéäì êéøö `%s' äøèî õáå÷ Terminated.äéðáá `%s' ìù íã÷ä úåùéøã Trace/breakpoint trap.`%s' úùøåôî-éúìá íã÷ úùéøã äñðî .`%.*s' ùøåù íò úéðáú ììë äñðî .`%s' íã÷ úùéøã ììë äñðî úøëåî äðéà '%s'úéðáåî äãå÷ô Unknown error %d...ãòé úåøèî ïëãòî ...makefile éöá÷ ïëãòî Urgent I/O condition%s [íéðééôàî] [äøèî] ... :ùåîéù ïôåà User defined signal 1User defined signal 2.`%s' øåáò ìãçî úøéøá úåãå÷ôá ùîúùî Virtual timer expiredä÷éø äééðôä :úåøéäæ Window changed[%s] %d äì÷úî éúîìòúä.éðëãò øáë `%s'`override' directiveúëîúð äððéàù `%s' äðåëúá ùåîéù ïåéñðautomatic.õáå÷ åúåàì äúò íéáùçð `%s' ïäå `%s' ïä íìåàå`%s' íéìåôë íééúåãå÷ðî `%s' íéããåá íééúåãå÷ðì êåôäì ïúéð àì`%s' íéããåá íééúåãå÷ðî `%s' íéìåôë íééúåãå÷ðì êåôäì ïúéð àìcannot enforce load limit: åæ úëøòîá ñîåò úåìáâî úåôëì ïúéð àìcommand lineäðåùàø äøèî éðôì úåìéçúî úåãå÷ôcreating jobs pipedefault äîééúñð dup jobserverä÷éø `override' úàøåäõáå÷ íùë úìá÷úî äðéà ä÷éø úæåøçî÷éø äðúùî íùenvironmentenvironment under -eøúåéî `%s'øúåéî `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s éáåéç úåéäì áééç `word' úééö÷ðåôì ïåùàø èðîåâøàfopen (temporary file)fwrite (temporary file)init jobserver pipecommand_state `%s' :úéîéðô äðëú úì÷ú--jobserver-fds ïééôàîá `%s' äéåâù úæåøçî :úéîéðô äðëú úì÷úíéáåøî --jobserver-fds éðééôàî :úéîéðô äðëú úì÷úäéåâù `override' úàøåäéàðú ìù éåâù øéáçú%d ñåèèñ íò ìùëð lbr$ini_control%d ñåèèñ ,lib$rset_module é"ò ìåãåî ìò òãéî úôéìùá ïåìùëmakefileíåéñ àìì `define' úàøåä ,øñç `endef'øñç `endif'ïäéðôì ììë àìì úåãå÷ô%sãéøôî øñçäøèî úéðáú ïéàíéùøåôî-éúìáå íéìéâø íéììë ìù áåáøòíéùøåôî-éúìáå íééèèñ úéðáú éììë ìù áåáøòúåáåøî äøèî úåéðáúnoøôñî åðéà `word' úééö÷ðåôì ïåùàø èðîåâøàøôñî åðéà `wordlist' úééö÷ðåôì ïåùàø èðîåâøàøôñî åðéà `wordlist' úééö÷ðåôì éðù èðîåâøàéàðú ìëì ãéçé `else' ÷ø øúåîread jobs pipe%d íò ìùëð sys$search ãòéä úéðáú úà úîàåú äðéà `%s' äøèî.ììë åúåàá úçà íòôî øúåé äòéôåî `%s' äøèî:: ïäå : âåñî ïä íéììë ùé `%s' äøèî õáå÷ì`%%' àìì äøèî úéðáúéáåéçå íìù èðîåâøà áééçî `-%c' ïééôàîVMS úëøòîá ïåéëøàá øáà ìù äòù/êéøàú éåðéùá äëéîú ïéàíéé÷ åðéà `%s' ïåéëøà õáå÷ :touch`%s' øåáò ïé÷ú-àì ãå÷ äøéæçä ar_member_touch :touch`%s' øáà ìéëî åðéà `%s' ïåéëøà :touchïé÷ú ïåéëøà õáå÷ åðéà `%s' :touch(`%s' äéøôñ) `%s' øáà øåáò äéøôñ úçéúôá äì÷úúåàéâù éåôéðì òãéî ìù `%s' øëåî-éúìá ïééôàîunknown signalunlink (temporary file): `%s' äéö÷ðåôì äàéø÷á `%c' øñçäëìäë úîééúñî äðéà äðúùîì äééðôäéìàåèøéåä ïåøëæä øîâð.äîìù àì úåéäì äìåìò äéðáä .ïåòù úùéìâ äúìâúð :úåøéäæjobserver ïôåà ìèáî ;-jN áééçî Make-úú :äøäæàäçðæð äøåùä úøúé ;NUL åú éúùâô :äøäæà`%s' äøèî øåáò úåîãå÷ úåãå÷ôî íìòúî :úåøéäæ.Make ìù áàä ììëì `+' óñåä .-j1-á ùåîéù äùòéé ;ïéîæ åðéà jobserver :äøäæà`%s' äøèî øåáò úåãå÷ô ñøåã :úåøéäæ`%.*s' øãâåî-éúìá äðúùî :úåøéäæwindows32_openpipe (): process_init_fd() failed write jobservermake-dfsg-3.81.orig/po/he.po0000644000175000017500000013323710416553102016074 0ustar srivastasrivasta# Hebrew messages for GNU Make # Copyright (C) 2002 Free Software Foundation, Inc. # Eli Zaretskii , 2002. # msgid "" msgstr "" "Project-Id-Version: make 3.79.1\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: 2002-03-30 21:33+0300\n" "Last-Translator: Eli Zaretskii \n" "Language-Team: Hebrew \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-8\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "úëîúð äððéàù `%s' äðåëúá ùåîéù ïåéñð" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "VMS úëøòîá ïåéëøàá øáà ìù äòù/êéøàú éåðéùá äëéîú ïéà" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "íéé÷ åðéà `%s' ïåéëøà õáå÷ :touch" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "ïé÷ú ïåéëøà õáå÷ åðéà `%s' :touch" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "`%s' øáà ìéëî åðéà `%s' ïåéëøà :touch" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "`%s' øåáò ïé÷ú-àì ãå÷ äøéæçä ar_member_touch :touch" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "%d ñåèèñ ,lib$rset_module é\"ò ìåãåî ìò òãéî úôéìùá ïåìùë" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "%d ñåèèñ íò ìùëð lbr$ini_control" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "(`%s' äéøôñ) `%s' øáà øåáò äéøôñ úçéúôá äì÷ú" # These are not translated, since they belong to a test program. #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Member `%s'%s: %ld bytes at %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (name might be truncated)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Date %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Break. ***\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] ÷çîéé àì ;ïé÷ú-éúìá úåéäì ìåìò `%s' ïåéëøà øáà ***" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** ÷çîéé àì ;ïé÷ú-éúìá úåéäì ìåìò `%s' ïåéëøà øáà ***" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] `%s' õáå÷ ÷çåî ***" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** `%s' õáå÷ ÷çåî ***" # I decided to retain the English text of what Make prints under -p, # since it is notoriously hard to get right in right-to-left languages, # and because its primary use is for programmers who write Makefiles. #: commands.c:599 msgid "# commands to execute" msgstr "# commands to execute" #: commands.c:602 msgid " (built-in):" msgstr " (built-in):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (from `%s', line %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Directories\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: could not be stat'd.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (key %s, mtime %d): could not be opened.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (device %ld, inode %ld): could not be opened.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (key %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (device %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (device %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "No" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " files, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "no" #: dir.c:1058 msgid " impossibilities" msgstr " impossibilities" #: dir.c:1062 msgid " so far." msgstr " so far." #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr " impossibilities in %u directories.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "(øáã ìù åôåñá) åîöòì äééðôäì íøåâ `%s' éáéñøå÷ø äðúùî" #: expand.c:266 msgid "unterminated variable reference" msgstr "äëìäë úîééúñî äðéà äðúùîì äééðôä" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr ",`%s' õáå÷ øåáò úåãå÷ô åðúéð %s õáå÷á %lu äøåùá" #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr ",íéùøåôî-éúìá íéììëá ùåôéç é\"ò åàöîð `%s' õáå÷ øåáò úåãå÷ô" #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr ".õáå÷ åúåàì äúò íéáùçð `%s' ïäå `%s' ïä íìåàå" #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr ".`%s' øåáò åìà ìò úåôéãò `%s' øåáò úåãå÷ô" #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "`%s' íéããåá íééúåãå÷ðî `%s' íéìåôë íééúåãå÷ðì êåôäì ïúéð àì" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "`%s' íéìåôë íééúåãå÷ðî `%s' íéããåá íééúåãå÷ðì êåôäì ïúéð àì" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** `%s' íééðéá õáå÷ ÷çåî ***" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** `%s' íééðéá õáå÷ ÷çåî ***" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "øúåîä íåçúì õåçî äðéäù ,%s ìù ïîæä úîéúç úà %s-á óéìçî" #: file.c:782 msgid "Current time" msgstr "úëøòî ïåòù" # See the comment above about translations of text printed under -p. #: file.c:881 msgid "# Not a target:" msgstr "# Not a target:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Precious file (prerequisite of .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Phony target (prerequisite of .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Command-line target." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# A default or MAKEFILES makefile." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Implicit rule search has been done." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Implicit rule search has not been done." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Implicit/static pattern stem: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# File is an intermediate prerequisite." #: file.c:919 msgid "# Also makes:" msgstr "# Also makes:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Modification time never checked." #: file.c:927 msgid "# File does not exist." msgstr "# File does not exist." #: file.c:929 msgid "# File is very old." msgstr "# File is very old." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Last modified %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# File has been updated." #: file.c:937 msgid "# File has not been updated." msgstr "# File has not been updated." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Commands currently running (THIS IS A BUG)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Dependencies commands running (THIS IS A BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Successfully updated." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Needs to be updated (-q is set)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Failed to be updated." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Invalid value in `update_status' member!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Invalid value in `command_state' member!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Files" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "øôñî åðéà `word' úééö÷ðåôì ïåùàø èðîåâøà" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "éáåéç úåéäì áééç `word' úééö÷ðåôì ïåùàø èðîåâøà" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "øôñî åðéà `wordlist' úééö÷ðåôì ïåùàø èðîåâøà" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "øôñî åðéà `wordlist' úééö÷ðåôì éðù èðîåâøà" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) failed (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) failed (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() failed (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() failed\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "`%s' éðîæ batch õáå÷ ÷ìñî\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "÷ôñî åðéàù (%d) íéèðîåâøà øôñî íò äàø÷ð `%s' äéö÷ðåô" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "åæ úëøòîá úùîåîî äðéà `%s' äéö÷ðåô" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "`%s' äéö÷ðåôì äàéø÷á `%c' øñç" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `%s' ïééôàî\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `--%s' ïééôàî\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `%c%s' ïééôàî\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s úéðëú øåáò èðîåâøà áééçî `%s' ïééôàî\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s úéðëú øåáò `--%s' ääåæî-éúìá ïééôàî\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s úéðëú øåáò `%c%s' ääåæî-éúìá ïééôàî\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: é÷åç-éúìá ïééôàî -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s úéðëú øåáò éåâù ïééôàî -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: èðîåâøà áééçî ïééôàî -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s úéðëú øåáò éòîùî-ãç åðéà `-W %s' ïééôàî\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s úéðëú øåáò èðîåâøà ìá÷î åðéà `-W %s' ïééôàî\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr ".`%s' øåáò ùøåôî-éúìá ììë ùôçî\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr ".`%s' øåáò ïåéëøà éøáàì ùøåôî-éúìá ììë ùôçî\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr ".úùøåôî-éúìá äéñøå÷øî òðîð\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr ".`%.*s' ùøåù íò úéðáú ììë äñðî\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr ".úéøùôà-éúìá äðéäù íåùî `%s' úùøåôî-éúìá íã÷ úùéøã äçåã\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr ".úéøùôà-éúìá äðéäù íåùî `%s' íã÷ úùéøã äçåã\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr ".`%s' úùøåôî-éúìá íã÷ úùéøã äñðî\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr ".`%s' íã÷ úùéøã ììë äñðî\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "`%s' íã÷ úùéøãë VPATH `%s' éúàöî\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr ".`%s' éðîæ õáå÷ íò ììë ùôçî\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (temporary file)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] 0x%x äì÷úî éúîìòúä ***" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] 0x%x äì÷ú ***" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] %d äì÷úî éúîìòúä" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] %d äì÷ú" #: job.c:399 msgid " (core dumped)" msgstr " (core õáå÷á íùøð ïåøëæä ïëåú)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ...åîééúñð íøèù úåãåáòì ïéúîî" #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "äöø 0x%08lx (%s) PID=%ld %s úá-úéðëú\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr "(ú÷çåøî)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "äìùëðù 0x%08lx PID=%ld %s úá-úéðëú óñåà\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "äçéìöäù 0x%08lx PID=%ld %s úá-úéðëú óñåà\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "`%s' éðîæ batch õáå÷ ÷ìñî\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr ".úåãåáò úøùøùî 0x%08lx PID=%ld %s úá-úéðëú ÷éçøî\n" # Here and elsewhere leading strings passed to perror are not translated, # since they will be followed by an error message in English. #: job.c:862 msgid "write jobserver" msgstr "write jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr ".øøçåù 0x%08lx (%s) úá-úéðëú øåáò ïåîéñàä\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "(e=%d) úéðëú-úú øåâéùá ìùëð process_easy()\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "ìùëðù øåâéùá åðîð íéèðîåâøà %d\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr ".úåãåáò úøùøùì 0x%08lx (%s) PID=%ld %s úá-úéðëú óøöî\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr ".0x%08lx (%s) úá-úéðëú øåáò ïåîéñà ìá÷úä\n" #: job.c:1718 msgid "read jobs pipe" msgstr "read jobs pipe" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "åæ úëøòîá ñîåò úåìáâî úåôëì ïúéð àì" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "cannot enforce load limit: " #: 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 "(e=%d) úéðëú-úú øåâéùá ìùëð process_easy()\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "äôñàð pid %d úá-úéðëú ,pid %d-ì äëçî ïééãò\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "äàöîð àì åæ äãå÷ô :%s" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "äàöîð àì shell úãå÷ô :%s" #: 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 "(`%s' äéä íãå÷ ,`%s' åéùëò) äðúùä $SHELL ìù åëøò" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "`%s' éðîæ batch õáå÷ øöåé\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "(!unixy && !batch_mode_shell) shell-mode úòéá÷á äì÷ú :%s õáå÷ ìù %d äøåù\n" #: main.c:291 msgid "Options:\n" msgstr " :íéðééôàî\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "úåîéàú ïòîì èîùåî" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "úåàéâù éåôéð úáåèì òãéî ìù òôù âöä" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "úåàéâù éåôéð úáåèì òãéî ìù íéðåù íéâåñ âöä" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "úéðëúäî àöå äæ äøæò êñî âöä" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "úåéðëú-úúá úåàéâùî íìòúä" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "äìáâî ïéà èðîåâøà àìì ;úéðîæ-åá úåãåáò N-î øúåé àì" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "äéðáì úåðúéð ïðéà úåøèîäî äîë íà åìéôà êùîä" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "Make ìù éîéðô íéðåúð ñéñá âöä" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "úðëãåòî äøèî íàá øîåà äàéöé ãå÷ ;úåãå÷ô õéøú ìà" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "íéùøåôî-éúìá íéðáåî íéììë ìøèð" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "íéðúùî ìù úåðáåî úåøãâä ìøèð" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "ïúåðáì íå÷îá úåøèî ìù ïîæ úîéúç ïëãò" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "úéðëúäî àöå Make ìù àñøéâ øôñî âöä" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "úéçëåð äé÷éú íù âöä" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "ùøåôîá ïéåö àåä íà åìéôà -w ìèá" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "øãâåä àìù äðúùîì äééðôä äø÷îá äøäæà âöä" #: main.c:549 msgid "empty string invalid as file name" msgstr "õáå÷ íùë úìá÷úî äðéà ä÷éø úæåøçî" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "úåàéâù éåôéðì òãéî ìù `%s' øëåî-éúìá ïééôàî" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s úéðëúá (code = 0x%x, addr = 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" "%s úéðëú êåúî àø÷ð ìåôéè àìì úåâéøç ïðñî\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "%x úáåúëì äáéúë :ïåøëæì äùéâ úì÷ú\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "%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 setting 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 path search set default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr ".úåéðù 30 ìù %s úééäùä" # Pay attention: this is written to the _right_ of the previous string, # but should look like a single sentence together with it. #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr " äîééúñð\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr ".úçà íòôî øúåé ïúéð éð÷ú èì÷ õåøòî Makefile" #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (temporary file)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (temporary file)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr ".åæ úëøòîá êîúð åðéà (-j) éìéá÷î òåöéá" #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr ".(-j1) éúøãñ ïôåàá åòöåáé úåãå÷ô" #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "íéáåøî --jobserver-fds éðééôàî :úéîéðô äðëú úì÷ú" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "--jobserver-fds ïééôàîá `%s' äéåâù úæåøçî :úéîéðô äðëú úì÷ú" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "jobserver ïôåà ìèáî ;-jN áééçî Make-úú :äøäæà" #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" ".Make ìù áàä ììëì `+' óñåä .-j1-á ùåîéù äùòéé ;ïéîæ åðéà jobserver :äøäæà" #: main.c:1710 msgid "creating jobs pipe" msgstr "creating jobs pipe" #: main.c:1725 msgid "init jobserver pipe" msgstr "init jobserver pipe" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "...makefile éöá÷ ïëãòî\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr ".ùãçî åøöééìî òðîð ;úéôåñðéà äàìåì øåöéì ìåìò `%s' Makefile\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr ".`%s' makefile ìù ùãçî-äøéöéá äì÷ú" #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr ".àöîð àì `%s' ììëåî makefile" #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "àöîð àì `%s' Makefile" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr ".úéøå÷îä äé÷éúì øåæçì ïúéð àì" #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Re-executing:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (temporary file): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "makefile éöá÷ åàöîð àìå úåøèî ïåéö ïéà" #: main.c:2191 msgid "No targets" msgstr "úåøèî ïéà" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "...ãòé úåøèî ïëãòî\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr ".äîìù àì úåéäì äìåìò äéðáä .ïåòù úùéìâ äúìâúð :úåøéäæ" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "%s [íéðééôàî] [äøèî] ... :ùåîéù ïôåà\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" ".-ì äì÷ú éçååéã çåìùì àð\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "éáåéçå íìù èðîåâøà áééçî `-%c' ïééôàî" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "éáåéçå íìù èðîåâøà áééçî `-%c' ïééôàî" #: main.c:2942 #, fuzzy, 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 "" ", by Richard Stallman and Roland McGrath.\n" "%s %s øåáò äúðáð\n" "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" "%s\tFree Software Foundation, Inc.\n" "%s .øå÷î éöá÷á ïééò ä÷úòä úåéåëæì ;úéùôç äðëú éäåæ\n" "%s äîàúä åà úåøéçñ øåáò àì åìéôà ;úåéøçà áúëá äååìî äðéà åæ úéðëåú\n" "%s .éäùìë úéìëúì\n" "\n" "%s -ì äì÷ú éçååéã çåìùì àð\n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Make data base, printed on %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Finished Make data base on %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "an unknown directory" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "an unknown directory" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "directory `%s'\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "directory `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "an unknown directory" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "an unknown directory" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "directory `%s'\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "directory `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Stop.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Unknown error %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "éìàåèøéåä ïåøëæä øîâð" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s access: user %lu (real %lu), group %lu (real %lu)\n" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "Initialized" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "%s-ì úåàéâù úééðôä\n" # Here and elsewhere leading strings passed to perror are not translated, # since they will be followed by an error message in English. #: misc.c:894 #, fuzzy msgid "write error" msgstr "write jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "...makefile éöá÷ àøå÷\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Reading makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (no default goal)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (search path)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (don't care)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (no ~ expansion)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "éàðú ìù éåâù øéáçú" #: read.c:633 msgid "extraneous `endef'" msgstr "øúåéî `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "÷éø äðúùî íù" #: read.c:662 msgid "empty `override' directive" msgstr "ä÷éø `override' úàøåä" #: read.c:687 msgid "invalid `override' directive" msgstr "äéåâù `override' úàøåä" #: read.c:854 msgid "commands commence before first target" msgstr "äðåùàø äøèî éðôì úåìéçúî úåãå÷ô" #: read.c:905 msgid "missing rule before commands" msgstr "ïäéðôì ììë àìì úåãå÷ô" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "%sãéøôî øñç" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr "(?íéçååø 8 íå÷îá TAB-ì úðååëúä íàä) " #: read.c:1152 msgid "missing target pattern" msgstr "äøèî úéðáú ïéà" #: read.c:1154 msgid "multiple target patterns" msgstr "úåáåøî äøèî úåéðáú" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "`%%' àìì äøèî úéðáú" #: read.c:1286 msgid "missing `endif'" msgstr "øñç `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "`endef' úàøåä éøçà øúåéî èñ÷è" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "íåéñ àìì `define' úàøåä ,øñç `endef'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "`%s' úàøåä éøçà øúåéî èñ÷è" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "øúåéî `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "éàðú ìëì ãéçé `else' ÷ø øúåî" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "äøèîì éôéöôñ äðúùî ìù äéåâù äøãâä" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "ãòéä úéðáú úà úîàåú äðéà `%s' äøèî" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr ":: ïäå : âåñî ïä íéììë ùé `%s' äøèî õáå÷ì" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr ".ììë åúåàá úçà íòôî øúåé äòéôåî `%s' äøèî" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "`%s' äøèî øåáò úåãå÷ô ñøåã :úåøéäæ" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "`%s' äøèî øåáò úåîãå÷ úåãå÷ôî íìòúî :úåøéäæ" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "äçðæð äøåùä úøúé ;NUL åú éúùâô :äøäæà" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr ".`%s øåáò úåùòì äî ïéà" #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr ".éðëãò øáë `%s'" #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr ".`%s' øåáò úåéåìú óøâ õö÷î\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%s`%s'%s äøèî úééðáì íéììë ïéà" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%säúééðáì íéììë ïéà êà ,`%s' úùøåã `%s'%s äøèî" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr ".`%s' äøèî õáå÷ ïçåá\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr ".`%s' õáå÷ ïåëãòá éúìùëðå éúéñéð ïîæî àì\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr ".ïë-éðôì ïçáð øáë `%s' õáå÷\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr ".`%s' õáå÷ ïëãòî ïééãò\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr ".`%s' õáå÷ ïëãòì éúîééñ\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr ".íéé÷ åðéà `%s' õáå÷\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr ".`%s' øåáò ùøåôî-éúìá ììë éúàöî\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr ".`%s' øåáò íéùøåôî-éúìá íéììë åàöîð àì\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr ".`%s' øåáò ìãçî úøéøá úåãå÷ôá ùîúùî\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr ".%s <- %s úéìâòî ìåìú èéîùî" #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr ".`%s' äøèî õáå÷ ìù íã÷-úåùéøã íò éúîééñ\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr ".äéðáá `%s' ìù íã÷ä úåùéøã\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr ".`%s' äøèî õáå÷ éáâì íééãé éúîøä\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr ".úåàéâù á÷ò ùãçî äúðáð àì `%s' äøèî" #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr ".`%s' íã÷ä úùéøãî äùãç `%s' äøèî\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr ".íéé÷ åðéàù `%s' éàðúë úùøåã `%s' äøèî\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr ".`%s' íã÷ä úùéøãî äðùé `%s' äøèî\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr ".`%s' íã÷ä úùéøãî äùãç `%s' äøèî\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr ".íã÷ úåùéøã àììå íéìåôë íééúåãå÷ð íò äðéä `%s' äøèî\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr ".äùòîì äúðúùä àì íã÷ úùéøã óàå `%s' øåáò úåãå÷ô ïéà\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "`%s' äøèî ùãçî úåðáì êøåö ïéà" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr " (`%s' :VPATH õáå÷ íù)" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr ".`%s' äøèî ùãçî úåðáì áééç\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " .`%s' VPATH íùî íìòúî\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr ".`%s' øåáò úåãå÷ô õéøî\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr ".ùãçî `%s' úåðáì ïåéñð ìùëð\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr ".`%s' ùãçî úééðáá äçìöä\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr ".-q íò úåðáéäì êéøö `%s' äøèî õáå÷\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** `%s' õáå÷ øåáò (%s > %s) ãéúòá åðéä ïåøçà éåðéù ïîæ :äøäæà ***" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** `%s' õáå÷ øåáò (%s > %s) ãéúòá åðéä ïåøçà éåðéù ïîæ :äøäæà ***" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "úéðáú åðéà .LIBPATTERNS ìù `%s' èðîìà" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "%s àöééî åðéà Customs\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# No implicit rules." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# No implicit rules." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u implicit rules, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG: num_pattern_rules wrong! %u != %u" # It's no use to try to translate the signal names. #: signame.c:85 msgid "unknown signal" msgstr "unknown signal" #: signame.c:93 msgid "Hangup" msgstr "Hangup" #: signame.c:96 msgid "Interrupt" msgstr "Interrupt" #: signame.c:99 msgid "Quit" msgstr "Quit" #: signame.c:102 msgid "Illegal Instruction" msgstr "Illegal Instruction" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Trace/breakpoint trap" #: signame.c:110 msgid "Aborted" msgstr "Aborted" #: signame.c:113 msgid "IOT trap" msgstr "IOT trap" #: signame.c:116 msgid "EMT trap" msgstr "EMT trap" #: signame.c:119 msgid "Floating point exception" msgstr "Floating point exception" #: signame.c:122 msgid "Killed" msgstr "Killed" #: signame.c:125 msgid "Bus error" msgstr "Bus error" #: signame.c:128 msgid "Segmentation fault" msgstr "Segmentation fault" #: signame.c:131 msgid "Bad system call" msgstr "Bad system call" #: signame.c:134 msgid "Broken pipe" msgstr "Broken pipe" #: signame.c:137 msgid "Alarm clock" msgstr "Alarm clock" #: signame.c:140 msgid "Terminated" msgstr "Terminated" #: signame.c:143 msgid "User defined signal 1" msgstr "User defined signal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "User defined signal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Child exited" #: signame.c:157 msgid "Power failure" msgstr "Power failure" #: signame.c:160 msgid "Stopped" msgstr "Stopped" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Stopped (tty input)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Stopped (tty output)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Stopped (signal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU time limit exceeded" #: signame.c:175 msgid "File size limit exceeded" msgstr "File size limit exceeded" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtual timer expired" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profiling timer expired" #: signame.c:187 msgid "Window changed" msgstr "Window changed" #: signame.c:190 msgid "Continued" msgstr "Continued" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Urgent I/O condition" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O possible" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Resource lost" #: signame.c:215 msgid "Danger signal" msgstr "Danger signal" #: signame.c:218 msgid "Information request" msgstr "Information request" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Floating point co-processor not available" #: 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 "" # These are printed under -p, so they are left in English. #: variable.c:1369 msgid "default" msgstr "default" #: variable.c:1372 msgid "environment" msgstr "environment" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "environment under -e" #: variable.c:1381 msgid "command line" msgstr "command line" #: variable.c:1384 msgid "`override' directive" msgstr "`override' directive" #: variable.c:1387 msgid "automatic" msgstr "automatic" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (from `%s', line %lu):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %u variables in %u hash buckets.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variables\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Pattern-specific variable values" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# No pattern-specific variable values." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u pattern-specific variable values" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "`%.*s' øãâåî-éúìá äðúùî :úåøéäæ" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "%d íò ìùëð sys$search\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "ä÷éø äééðôä :úåøéäæ\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "command_state `%s' :úéîéðô äðëú úì÷ú" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr ".úåìéòô úá-úåéðëú øéàùäì ìåìò CTRL-Y :úåøéäæ\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr ".DCL-î CTRL-Y-á ìåôéè øåùôéàá êøåö úåéäì ìåìò :úåøéäæ\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "úøëåî äðéà '%s'úéðáåî äãå÷ô\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "ä÷éø äãå÷ô :äì÷ú\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "%s-î èì÷ úééðôä\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "%s-ì úåàéâù úééðôä\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "%s-ì èìô úééðôä\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "%s õéøî úàæ íå÷îá\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "%d :úá-úéðëú úìòôäá äì÷ú\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH Search Paths\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# No `vpath' search paths." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u `vpath' search paths.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# No general (`VPATH' variable) search path." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# General (`VPATH' variable) search path:\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# No files." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "'\"' êåúá ïééãò ,øéáçú úàéâù\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr ".åôñàð íøèù úá-úåéðëú %u ;SIGCHLD ìá÷úä\n" #~ msgid "DIRECTORY" #~ msgstr "DIRECTORY" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "äãåáò úìéçú éðôì DIRECTORY-ì äé÷éú äðù" #~ msgid "FLAGS" #~ msgstr "FLAGS" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "äéìà äôðîä øåáéç êøåöì úéðëúä á÷ò" #~ msgid "Environment variables override makefiles" #~ msgstr "makefile-á íéðúùî íéñøåã äáéáñ éðúùî" #~ msgid "FILE" #~ msgstr "FILE" #~ msgid "Read FILE as a makefile" #~ msgstr "makefile-ë FILE àø÷" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "DIRECTORY-á íéììëð makefile éöá÷ ùôç" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "N-ì úçúî ñîåòä íà àìà úåáåøî úåãåáò ìéçúú ìà" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "íúåà ñôãä ÷ø ;ììë úåãå÷ô õéøú ìà" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "ùãçî åúåà äðáú ìàå ,ïùé ãàî äéä åìéàë FILE-á âäð" #~ msgid "Don't echo commands" #~ msgstr "úåòöåáî úãå÷ô âéöú ìà" #~ msgid "Turns off -k" #~ msgstr "-k ìèáî" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "øùôàù ùãç éëä äéä FILE åìéàë âäð" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr ".ïéîæ åðéà sh.exe íà --jobs åà -j-á êåîúì ïúéð àì" #~ msgid "Resetting make for single job mode." #~ msgstr ".éúøãñ ïôåàá åòöåáé úåãå÷ô" #~ msgid "Entering" #~ msgstr "Entering" #~ msgid "Leaving" #~ msgstr "Leaving" #~ msgid "no file name for `%sinclude'" #~ msgstr "õáå÷ íù àìì `%sinclude' úàøåä" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "ä÷éø íã÷ä úùéøã úéðáú úà äøéàùî `%s' äøèî" #~ msgid "# No variables." #~ msgstr "# No variables." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# average of %d.%d variables per bucket, max %u in one bucket.\n" make-dfsg-3.81.orig/po/hr.gmo0000644000175000017500000010263610416553102016254 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðNYO&ZPP0ŸPÐPàPéP9Q?QUQ;uQ±Q3ÎQ R #R#1R1UR‡R¢ROÂRMSQ`S=²SsðSudTHÚTK#U{oU?ëUC+V’oVbW9eW:ŸWÚWQ\Xª®XœYY¤öY;›Z}×ZEU[2›[KÎ[<\:W\ ’\\"¼\ ß\ì\-ü\ *]8]O]g]€]Ÿ] ³]¾]Ø] à]!í]^ ^"^8^4U^<Š^Ç^à^ô^ _ _A_,W_-„_.²_4á_4`K`+b`)Ž`(¸`.á`a&a$@a?ea¥a9Äaþa6bQb&lb “b# b@Äb!c'c0c7cOc mcŽc2­càcþc&dBd#ad%…d'«d!Ód õde3e.Pe$e6¤e Ûe!|f$žf9Ãf ýf gg#=gUag>·gögh#h!8h8ZhH“h Üh%êhi,i4i*=i*hi“i¢i±iÃiÜiëi#ýi!j 1j#?j cj!„j¦j6¾jBõj8k,Xk%…k «k,¶k!ãkll5l HlRlml…l"¡l%Äl+êl-mDm)[m&…m'¬m"Ôm%÷mn!5n&Wn~nn ­n ·nÁn(Ùnoo1o8o$?odo'o"©o?Ìo pAp]p-{p)©p'Óp"ûpq>&q/eq&•q ¼q<Æqr&rFr7Or‡r)–r*Àr8ër'$sLsks0~s ¯s¹sÍs+ãs*t0:t5kt¡tºtÒtêt$ýt."u'Qu,yu¦u6Àu$÷uv-v6v>vTv tv€v—vµv)Õv,ÿv+,w-Xw †w‘w±w,Ðw,ýw(*x Sxtxˆx¢x¼x Ïxðxy!y*?yjy#†y>ªy7éy!z4zPzbz.wz ¦z0±zBâzD%{Dj{-¯{GÝ{%|5|U|k|!{| |«|%È|î|} } }%}@5}1v}1¨}Ú}ò} ~%~6:~?q~±~Ñ~+ì~>W%`†˜·Ï(å/€>€U€']€-…€+³€߀û€ !'1I){¥1À+ò‚9<‚"v‚™‚3¹‚#킃!ƒ-<ƒ!jƒŒƒM¨ƒCöƒ7:„0r„U£„5ù„)/…4Y…Ž…CÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2003-10-12 18:01+0200 Last-Translator: Hrvoje Niksic Language-Team: Croatian MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-2 Content-Transfer-Encoding: 8bit # %u `vpath' staza za pretra¾ivanje. # %u implicitnih propisa, %u # %u uzorcima svojstvenih vrijednosti varijabli # Direktoriji # Spisi # Kraj Makeove baze na %s # Opæa (iz varijable `VPATH') staza za pretra¾ivanje: # # Implicitni Propisi # Makeova baza, ispisana na %s # Nema opæe (iz varijable `VPATH') staze za pretra¾ivanje. # Nema implicitnih propisa. # Nema uzorcima svojstvenih vrijednosti varijabli. # VPATH staze za pretra¾ivanje # Varijable # statistike hash tablice spisa # Prebrojao %d argumenata u neuspjelom pokretanju Program sastavljen za %s Program sastavljen za %s (%s) --debug[=FLAGOVI] Ispi¹i razne vrste informacija za debugiranje. --no-print-directory Iskljuèi -w, èak i ako je implicitno ukljuèen. --warn-undefined-variables Upozori kad se referencira nedefinirana varijabla. -B, --always-make Bezuvjetno proizvedi sve mete. -C DIRECTORY, --directory=DIRECTORY Prijeði u DIREKTORIJ prije no ¹to i¹ta obavi¹. -I DIREKTORIJ, --include-dir=DIREKTORIJ Potra¾i u DIREKTORIJU ukljuèene makefileove. -R, --no-builtin-variables Onemoguæi ugraðene vrijednosti varijabli. -S, --no-keep-going, --stop Iskljuèuje -k. -W SPIS, --what-if=SPIS, --new-file=SPIS, --assume-new=SPIS Smatraj SPIS beskonaèno novim. -b, -m Ignorira se zbog kompatibilnosti -d Ispi¹i puno podataka za debugiranje. -e, --environment-overrides Varijable iz okoline imaju veæu va¾nost od makefileova. -f SPIS, --file=SPIS, --makefile=SPIS Proèitaj SPIS kao makefile. -h, --help Ispi¹i ovu poruku i izaði. -i, --ignore-errors Zanemari gre¹ke od naredbi. -j [N], --jobs[=N] Dopusti N istovremenih poslova; bez argumenta ih dopusti beskonaèno. -k, --keep-going Nastavi s radom ako se neke mete ne mogu izraditi. -l [N], --load-average[=N], --max-load[=N] Ne pokreæi vi¹estruke poslove, osim ako pri optereæenju ispod N. -n, --just-print, --dry-run, --recon Nemoj zapravo pokrenuti nijednu naredbu; samo ih ispi¹i. -o SPIS, --old-file=SPIS, --assume-old=SPIS Smatraj da je SPIS vrlo star i nemoj ga ponovo napraviti. -p, --print-data-base Ispi¹i makeovu internu bazu. -q, --question Ne pokreæi naredbe; izlazni status oznaèava je li sve a¾urirano. -r, --no-builtin-rules Onemoguæi ugraðene implicitne propise. -s, --silent, --quiet Ne ispisuj naredbe. -t, --touch Dodirni mete umjesto da ih ponovo izraðuje¹. -v, --version Ispi¹i verziju makea i izaði. -w, --print-directory Ispi¹i trenutni direktorij. Datum %s Ignoriram VPATH imena `%s'. uid = %d, gid = %d, mode = 0%o. (ugraðeno): (izbaèen core) (jeste li mislili na TAB umjesto 8 razmaka?) (nije va¾no) (iz `%s', redak %lu): (iz `%s', redak %lu): (ime je mo¾da odrezano) (nema podrazumijevanog cilja) (bez ekspanzije ~) (udaljen) (staza za pretra¾ivanje) spis, nemoguænost nemoguænosti u %lu direktorija. do sad. zavr¹ni.# Takoðer proizvodi:# Meta na komandnoj liniji.# Naredbe koje se trenutno izvr¹avaju (OVO JE BUG).# Ovisnosti izmeðu naredbi koje se izvr¹avaju (OVO JE BUG).# Nije ga se a¾uriralo.# Spis ne postoji.# Spis je a¾uriran.# Spis nije a¾uriran.# Spis je posredni prerekvizit.# Spis je vrlo star.# Implicitna pretraga propisa je izvr¹ena.# Implicitna pretraga propisa nije izvr¹ena.# Korijen implicitnog/statièkog uzorka: `%s' # Neispravna vrijednost u elementu `command_state'!# Neispravna vrijednost u elementu `update_status'!# Zadnja promjena %s # Vrijeme promjene nikada nije provjereno.# Treba ga a¾urirati (-q je postavljen).# La¾na meta (prerekvizit mete .PHONY).# Vrijedan spis (prerekvizit mete .PRECIOUS).# Uspje¹no a¾uriran.# naredbe za izvr¹avanje# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): nije ga se moglo otvoriti. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): nije ga se moglo otvoriti. # %s (tipka %s, mtime %d): # %s (tipka %s, mtime %d): nije ga se moglo otvoriti. # %s: ne mo¾e se statati. # Nema `vpath' staza za pretra¾ivanje.# Nije meta:# hash table statistike varijabli: %s (redak %d) Lo¹ kontekst ljuske (!unixy && !batch_mode_shell) %s se zaustavlja na 30 sekundi...%s%s: %s%s: %s%s: Naredba nije naðena%s: Ulazim u direktorij `%s' %s: Izlazim iz direktorija `%s' %s: Ljuskin program nije naðen%s: Vremenska oznaka van granica; zamjenjujem s %s%s: nedopu¹tena opcija -- %c %s: neispravna opcija -- %c %s: opcija `%c%s' ne dopu¹ta argument %s: opcija `%s' je vi¹eznaèna %s: opcija `%s' zahtijeva argument %s: uz opciju `--%s' ne ide argument %s: opcija `-W %s' ne dopu¹ta argument %s: opcija `-W %s' je vi¹eznaèna %s: opcija tra¾i argument -- %c %s: nepoznata opcija `%c%s' %s: nepoznata opcija `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNema propisa za izradu mete `%s'%s%sNema propisa za izradu mete `%s', kojeg tra¾i `%s'%s%sOvaj program je slobodan; u izvornom kodu nalaze se uvjeti kopiranja. %sNema NIKAKVOG jamstva, èak ni za PROIZVODNOST ili UPOTREBLJIVOST ZA %sPOJEDINU SVRHU. %s[%u]: Ulazim u direktorij `%s' %s[%u]: Izlazim iz direktorija `%s' *** Èlan arhive '%s' mogao bi biti bezvezan; nije obrisan*** Prekid. *** Bri¹em spis `%s'*** Bri¹em posredni spis `%s'*** èekam na nedovr¹ene poslove....*** Upozorenje: .LOW_RESOLUTION_TIME spis `%s' ima vremensku oznaku visoke rezolucije*** [%s] Èlan arhive '%s' mogao bi biti bezvezan; nije obrisan*** [%s] Bri¹em spis `%s'*** [%s] Gre¹ka %d*** [%s] Gre¹ka 0x%x*** [%s] Gre¹ka 0x%x (ignorirana)-upozorenje, CTRL-Y æe ostaviti potproces(e) na ¾ivotu. -upozorenje, mo¾da æete morati ponovo omoguæiti obradu CTRL-Y iz DCL-a. . Zaustavi. Element .LIBPATTERNS `%s' nije uzorak; koristim VPATH imena `%s'OtkazanBudilicaIzbjegavam rekurziju implicitnog propisa. BUG: pogre¹an num_pattern_rules! %u != %uUGRAÐEN CD %s UGRAÐEN RM %s UGRAÐEN [%s][%s] Nevaljan sistemski pozivPrekinut kanalSabirnièka gre¹kaprekoraèeno ogranièenje CPU vremenaPristup djetetaDijete iza¹loKru¾na ovisnost %s <- %s ispu¹tena.Èistim privremeni batch spis %s Èistim privremeni batch spis %s. Kolizije=%ld/%ld=%.0f%%Naredbe za `%s' ignorirat æe se u korist onih za `%s'.Naredbe za spis `%s' naðene su implicitnim pretra¾ivanjem propisa,Naredbe od `%s' se izvr¹avaju. Naredbe su naznaèene za spis `%s' na %s:%lu,Uzimam u razmatranje spis metu `%s'. NastavljenNisam se mogao vratiti u prvotni direktorij.Stvaram privremeni batch spis %s Trenutno vrijemeCustoms neæe eksportirati: %s Signal za opasnostEMT zamjaGre¹ka pri pokretanju, %d Gre¹ka, prazna naredba Umjesto toga, izvr¹avam %s Suvi¹an tekst nakon direktive `%s'Suvi¹an tekst nakon direktive `endef'Nisam uspio ponovo izgraditi makefile `%s'.Nije uspjela ponovna izrada spisa mete `%s'. Spis `%s' ne postoji. Spis `%s' veæ je bio uzet u razmatranje. Prekoraèeno ogranièenje velièine spisaZavr¹eni prerekviziti spisa mete `%s'. Zavr¹io s a¾uriranjem spisa `%s'. Aritmetièki koprocesor nije dostupan.Iznimka floating pointaNa¹ao implicitni propis za `%s'. Na¹ao prerekvizit `%s' kao VPATH `%s' Odustajem od spisa mete `%s'. Izgubljena vezaI/O moguæIOT zamkaNedopu¹tena instrukcijaUkljuèeni makefile `%s' ne mo¾e se naæi.Zahtjev za informacijomInicijaliziran pristupPrekidUbijen®ivo dijete 0x%08lx (%s) PID %ld %s Optereæenje=%ld/%ld=%.0f%%, Tra¾im propis s posrednim spisom `%s'. Tra¾im implicitni propis za `%s'. Tra¾im implicitni propis za `%s' koji pripada elementu arhive. Makeov pristupMakefile `%s' bi mogao upasti u petlju; ne izgraðujem ga ponovo. Makefile `%s' ne mo¾e se naæiMakefile sa standardnog ulaza naveden dvaput.Proizvodim `%s' zbog opcije always-make. èlan `%s'%s: %ld bajtova na %ld (%ld). Moram ponovo izgraditi metu `%s'. NijedanNema naredbi za `%s', a nijedan prerekvizit nije promijenjen. Nijedan implicitni propis nisam na¹ao za `%s'. Nema potrebe ponovo izraditi metu `%s'Nema metaNijedna meta nije navedena, niti je ijedan makefile pronaðenNi¹ta za napraviti za `%s'.Preuzeo token za dijete 0x%08lx (%s). Opcije: Paralelni poslovi (-j) nisu podr¾ani na ovoj platformi.Nestalo strujePrerekvizit `%s' noviji je od mete `%s': Prerekvizit `%s' stariji je od mete `%s'. Prerekvizit `%s' slu¾i samo za redosljed pri meti `%s'. Prerekvizit `%s' mete `%s' ne postoji. Profajlerska ¹toperica isteklaÈistim spis `%s'. Smje¹tam dijete 0x%08lx (%s) PID %ld%s u lanac. PrestanakÈitam makefile `%s'Èitam makefileove... ®anjem proma¹eno dijete 0x%08lx PID %ld %s ®anjem uspje¹no dijete 0x%08lx PID %ld %s Nedavno bezuspje¹no poku¹ao a¾urirati spis `%s' Rekurzivna varijabla `%s' pokazuje (na kraju) na sebePreusmjerio gre¹ke u %s Preusmjerio ulaz iz %s Preusmjerio izlaz u %s Preraspodjela=%d, Odbacujem nemoguæ prerekvizit `%s'. Odbacujem nemoguæe pravilo prerekvizita `%s'. Otpustio token za dijete 0x%08lx (%s). Uklanjam dijete 0x%08lx PID %ld%s iz lanca. Bri¹em posredne spise... Uoèene gre¹ke prijavite na adresu . Resetiram na mod jednog posla (-j1).Izgubljen resursSIGPHONESIGWINDSegmentacijska gre¹kaJo¹ uvijek a¾uriram spis `%s'. ZaustavljenZaustavljen (signalom)Zaustavljen (unosom s TTY-ja)Zaustavljen (outputom s TTY-ja)Uspje¹no ponovno izradio spis metu `%s'. Meta `%s' je dvotoèka, a nema prerekvizita. Meta `%s' nije ponovo izraðen zbog gre¹aka.Spis meta `%s' treba ponovnu izradu zbog -q. TerminiranPrerekviziti `%s' su u izradi. Zamka za slijed/prekidnu toèkuPoku¹avam s implicitnim prerekvizitom `%s'. Poku¹avam propis uzorka s korijenom `%.*s'. Poku¹avam s propisom prerekvizita `%s'. Nepoznata ugraðena naredba `%s' Nepoznata gre¹ka %dA¾uriram ciljne mete.... A¾uriram makefileove.... Hitno stanje I/O-aUporaba: %s [opcije] [meta] ... Korisnièki pristupKorisnièki definiran signal 1Korisnièki definiran signal 2Koristim podrazumijevane naredbe za `%s'. Virtualna ¹toperica isteklaUpozorenje: Prazno preusmjeravanje Upozorenje: Spis `%s' ima vrijeme promjene %.2g s u buduænostiUpozorenje: Spis `%s' ima vrijeme promjene u buduænostiPromijenjen prozor[%s] Gre¹ka %d (ignorirana)`%s' je a¾uriran.direktiva `override'poku¹aj kori¹tenja nepodr¾ane moguænosti: `%s'automatskoali `%s' se sada smatra istim spisom kao i `%s'.ne mogu alocirati %ld bajtova za hash tablicu; memorija iscrpljenane mogu preimenovati `%s' s dvije dvotoèke u `%s' s jednom dvotoèkomne mogu preimenovati `%s' s jednom dvotoèkom u `%s' s dvije dvotoèkene mogu silom primijeniti ogranièenje loada: ne mogu silom primijeniti ogranièenje loada na ovom operativnom sustavukomandna linijanaredbe poèinju prije prve metekreiram pipe za posaopodrazumijevanogotov sa sleep(30). Nastavljam. dup jobserverprazna direktiva `ovverride'prazan string nije valjan naziv spisaprazno ime varijableokoli¹okoli¹ pod -esuvi¹an `%s'suvi¹an `endef'find_and_set_shell pretraga staze postavljam default_shell = %s find_and_set_shell postavljam default_shell = %s prvi argument funkcije `word' mora biti veæi od 0fopen (privremeni spis)fwrite(privremeni spis)prevesti?unutra¹nja gre¹ka: `%s' command_stateinterna gre¹ka: neispravan --jobserver-fds string `%s'interna gre¹ja: vi¹estruko pojavljivanje opcije --jobserver-fdsneispravna direktiva `override'neispravna sintaksa uvjetalbr$ini_control nije uspio sa statusom = %dlbr$set_module nije izdvojio informacije o modulu, status = %dmakefilenedostaje `endef', nedovr¹en `define'nedostaje `endif'nedostaje propis prije naredbinedostaju separatori-%snedostaje uzorak metepomije¹ani implicitni i normalni propisipomije¹ani implicitni i statièki propisi uzorkavi¹estruki uzorci metanijednaprvi argument funkcije `word' nije brojdrugi argument funkcije `wordllist' nije brojdrugi arument funkcije `wordlist' nije brojsamo jedan `else' po uvjeturead jobs pipesys$search je zatajila s %d meta `%s' ne odgovara uzorku metemeta `%s' zadan vi¹e nego jednom u istom propisu.spis meta `%s' ima unose i kod : i kod ::uzorak mete ne sadr¾i `%%'opcija `-%c' tra¾i pozitivan cjelobrojni argumenttouch dijela arhive nije rapolo¾iv na VMS-utouch: Arhiva `%s' ne postojitouch: Neispravan povratni kod iz ar_member_touch na `%s'touch: èlan `%s' ne postoji u `%s'touch: `%s' nije valjana arhivane mogu otvoriti biblioteku `%s' da naðem èlan `%s'nepoznata naznaka nivoa debuga `%s'nepoznat signalunlink (privremeni spis): nedovr¹en poziv funkciji `%s': nedostaje `%c'nedovr¹ena referenca na varijabluprividna memorija potro¹enaupozorenje: uoèena je nepravilnost sata. Izgradnja bi mogla biti nedovr¹ena.upozorenje: -jN se forsira u pod-makeu: onemoguæujem jobserver mod.upozorenje: NUL znak uoèen; ostatak retka se zanemarujeupozorenje: ignoriram stare naredbe za metu `%s'upozorenje: jobserver nedostupan: koristim -j1. Dodaj `+' na roditeljev make propis.upozorenje: poni¹tavam postojeæe naredbe za metu `%s'upozorenje: nedefinirana varijabla `%.*s'windows32_openpipe (): process_init_fd() je zakazao write jobservermake-dfsg-3.81.orig/po/hr.po0000644000175000017500000014145510416553102016112 0ustar srivastasrivasta# Translation of GNU make. # Copyright (C) 2002 Free Software Foundation, Inc. # Hrvoje Niksic , 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: 2003-10-12 18:01+0200\n" "Last-Translator: Hrvoje Niksic \n" "Language-Team: Croatian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-2\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "poku¹aj kori¹tenja nepodr¾ane moguænosti: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "touch dijela arhive nije rapolo¾iv na VMS-u" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Arhiva `%s' ne postoji" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' nije valjana arhiva" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: èlan `%s' ne postoji u `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Neispravan povratni kod iz ar_member_touch na `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module nije izdvojio informacije o modulu, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control nije uspio sa statusom = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "ne mogu otvoriti biblioteku `%s' da naðem èlan `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "èlan `%s'%s: %ld bajtova na %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (ime je mo¾da odrezano)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Datum %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Prekid.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Èlan arhive '%s' mogao bi biti bezvezan; nije obrisan" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Èlan arhive '%s' mogao bi biti bezvezan; nije obrisan" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Bri¹em spis `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Bri¹em spis `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# naredbe za izvr¹avanje" #: commands.c:602 msgid " (built-in):" msgstr " (ugraðeno):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (iz `%s', redak %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Direktoriji\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: ne mo¾e se statati.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (tipka %s, mtime %d): nije ga se moglo otvoriti.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (device %d, inode [%d,%d,%d]): nije ga se moglo otvoriti.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (device %ld, inode %ld): nije ga se moglo otvoriti.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (tipka %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (device %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (device %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Nijedan" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " spis, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "nijedna" #: dir.c:1058 msgid " impossibilities" msgstr " nemoguænost" #: dir.c:1062 msgid " so far." msgstr " do sad." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " nemoguænosti u %lu direktorija.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Rekurzivna varijabla `%s' pokazuje (na kraju) na sebe" #: expand.c:266 msgid "unterminated variable reference" msgstr "nedovr¹ena referenca na varijablu" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Naredbe su naznaèene za spis `%s' na %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "Naredbe za spis `%s' naðene su implicitnim pretra¾ivanjem propisa," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ali `%s' se sada smatra istim spisom kao i `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Naredbe za `%s' ignorirat æe se u korist onih za `%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "ne mogu preimenovati `%s' s jednom dvotoèkom u `%s' s dvije dvotoèke" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "ne mogu preimenovati `%s' s dvije dvotoèke u `%s' s jednom dvotoèkom" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Bri¹em posredni spis `%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Bri¹em posredne spise...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Vremenska oznaka van granica; zamjenjujem s %s" #: file.c:782 msgid "Current time" msgstr "Trenutno vrijeme" #: file.c:881 msgid "# Not a target:" msgstr "# Nije meta:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Vrijedan spis (prerekvizit mete .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# La¾na meta (prerekvizit mete .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Meta na komandnoj liniji." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Podrazumijevani ili MAKEFILES makefile." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Implicitna pretraga propisa je izvr¹ena." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Implicitna pretraga propisa nije izvr¹ena." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Korijen implicitnog/statièkog uzorka: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Spis je posredni prerekvizit." #: file.c:919 msgid "# Also makes:" msgstr "# Takoðer proizvodi:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Vrijeme promjene nikada nije provjereno." #: file.c:927 msgid "# File does not exist." msgstr "# Spis ne postoji." #: file.c:929 msgid "# File is very old." msgstr "# Spis je vrlo star." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Zadnja promjena %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Spis je a¾uriran." #: file.c:937 msgid "# File has not been updated." msgstr "# Spis nije a¾uriran." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Naredbe koje se trenutno izvr¹avaju (OVO JE BUG)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Ovisnosti izmeðu naredbi koje se izvr¹avaju (OVO JE BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Uspje¹no a¾uriran." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Treba ga a¾urirati (-q je postavljen)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Nije ga se a¾uriralo." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Neispravna vrijednost u elementu `update_status'!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Neispravna vrijednost u elementu `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Spisi" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# statistike hash tablice spisa\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "prvi argument funkcije `word' nije broj" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "prvi argument funkcije `word' mora biti veæi od 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "drugi argument funkcije `wordllist' nije broj" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "drugi arument funkcije `wordlist' nije broj" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) je zakazao (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) je zakazao (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() je zakazao (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() je zakazao\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Èistim privremeni batch spis %s.\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Nedovoljan broj argumenata (%d) funkciji `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Neimplementirano na ovoj platformi: funkcija `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "nedovr¹en poziv funkciji `%s': nedostaje `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opcija `%s' je vi¹eznaèna\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: uz opciju `--%s' ne ide argument\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opcija `%c%s' ne dopu¹ta argument\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opcija `%s' zahtijeva argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: nepoznata opcija `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: nepoznata opcija `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: nedopu¹tena opcija -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: neispravna opcija -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opcija tra¾i argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opcija `-W %s' je vi¹eznaèna\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opcija `-W %s' ne dopu¹ta argument\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "ne mogu alocirati %ld bajtova za hash tablicu; memorija iscrpljena" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Optereæenje=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Preraspodjela=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Kolizije=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Tra¾im implicitni propis za `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Tra¾im implicitni propis za `%s' koji pripada elementu arhive.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Izbjegavam rekurziju implicitnog propisa.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Poku¹avam propis uzorka s korijenom `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Odbacujem nemoguæ prerekvizit `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Odbacujem nemoguæe pravilo prerekvizita `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Poku¹avam s implicitnim prerekvizitom `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Poku¹avam s propisom prerekvizita `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Na¹ao prerekvizit `%s' kao VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Tra¾im propis s posrednim spisom `%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite(privremeni spis)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Gre¹ka 0x%x (ignorirana)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Gre¹ka 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Gre¹ka %d (ignorirana)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Gre¹ka %d" #: job.c:399 msgid " (core dumped)" msgstr " (izbaèen core)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** èekam na nedovr¹ene poslove...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "®ivo dijete 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (udaljen)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "®anjem proma¹eno dijete 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "®anjem uspje¹no dijete 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Èistim privremeni batch spis %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Uklanjam dijete 0x%08lx PID %ld%s iz lanca.\n" # ©to bi ovdje trebalo iæi? #: job.c:862 msgid "write jobserver" msgstr "write jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Otpustio token za dijete 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() nije uspio pokrenuti proces (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Prebrojao %d argumenata u neuspjelom pokretanju\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Smje¹tam dijete 0x%08lx (%s) PID %ld%s u lanac.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Preuzeo token za dijete 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "read jobs pipe" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" "ne mogu silom primijeniti ogranièenje loada na ovom operativnom sustavu" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ne mogu silom primijeniti ogranièenje loada: " #: 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 "process_easy() nije uspio pokrenuti proces (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make je po¾njeo dijete pid %d, jo¹ uvijek èeka na pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Naredba nije naðena" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Ljuskin program nije naðen" #: 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 se promijenio (prije `%s', sad `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Stvaram privremeni batch spis %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (redak %d) Lo¹ kontekst ljuske (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opcije:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Ignorira se zbog kompatibilnosti\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make Bezuvjetno proizvedi sve mete.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C DIRECTORY, --directory=DIRECTORY\n" " Prijeði u DIREKTORIJ prije no ¹to i¹ta " "obavi¹.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr " -d Ispi¹i puno podataka za debugiranje.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=FLAGOVI] Ispi¹i razne vrste informacija za " "debugiranje.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Varijable iz okoline imaju veæu va¾nost od\n" " makefileova.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f SPIS, --file=SPIS, --makefile=SPIS\n" " Proèitaj SPIS kao makefile.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Ispi¹i ovu poruku i izaði.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Zanemari gre¹ke od naredbi.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I DIREKTORIJ, --include-dir=DIREKTORIJ\n" " Potra¾i u DIREKTORIJU ukljuèene makefileove.\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] Dopusti N istovremenih poslova; bez argumenta\n" " ih dopusti beskonaèno.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Nastavi s radom ako se neke mete ne mogu " "izraditi.\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" " Ne pokreæi vi¹estruke poslove, osim ako pri\n" " optereæenju ispod N.\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" " Nemoj zapravo pokrenuti nijednu naredbu;\n" " samo ih ispi¹i.\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 SPIS, --old-file=SPIS, --assume-old=SPIS\n" " Smatraj da je SPIS vrlo star i nemoj ga\n" " ponovo napraviti.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr " -p, --print-data-base Ispi¹i makeovu internu bazu.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Ne pokreæi naredbe; izlazni status oznaèava\n" " je li sve a¾urirano.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr " -r, --no-builtin-rules Onemoguæi ugraðene implicitne propise.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Onemoguæi ugraðene vrijednosti varijabli.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Ne ispisuj naredbe.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Iskljuèuje -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Dodirni mete umjesto da ih ponovo izraðuje¹.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr " -v, --version Ispi¹i verziju makea i izaði.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Ispi¹i trenutni direktorij.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Iskljuèi -w, èak i ako je implicitno " "ukljuèen.\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 SPIS, --what-if=SPIS, --new-file=SPIS, --assume-new=SPIS\n" " Smatraj SPIS beskonaèno novim.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Upozori kad se referencira nedefinirana " "varijabla.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "prazan string nije valjan naziv spisa" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "nepoznata naznaka nivoa debuga `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Prekid/Iznimka uhvaæena (code = 0x%x, addr = 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" "Filter neobraðene iznimke pozvan iz programa %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Pristupni prekr¹aj: operacija pisanja na adresi %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Pristupni prekr¹aj: operacija èitanja na adresi %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 postavljam 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 pretraga staze postavljam default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s se zaustavlja na 30 sekundi..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "gotov sa sleep(30). Nastavljam.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile sa standardnog ulaza naveden dvaput." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (privremeni spis)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite(privremeni spis)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Paralelni poslovi (-j) nisu podr¾ani na ovoj platformi." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Resetiram na mod jednog posla (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "interna gre¹ja: vi¹estruko pojavljivanje opcije --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "interna gre¹ka: neispravan --jobserver-fds string `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "upozorenje: -jN se forsira u pod-makeu: onemoguæujem jobserver mod." # Treba li ovo prevesti? #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "upozorenje: jobserver nedostupan: koristim -j1. Dodaj `+' na roditeljev " "make propis." #: main.c:1710 msgid "creating jobs pipe" msgstr "kreiram pipe za posao" #: main.c:1725 msgid "init jobserver pipe" msgstr "prevesti?" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "A¾uriram makefileove....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefile `%s' bi mogao upasti u petlju; ne izgraðujem ga ponovo.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Nisam uspio ponovo izgraditi makefile `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Ukljuèeni makefile `%s' ne mo¾e se naæi." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefile `%s' ne mo¾e se naæi" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Nisam se mogao vratiti u prvotni direktorij." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Ponovo izvr¹avam:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (privremeni spis): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Nijedna meta nije navedena, niti je ijedan makefile pronaðen" #: main.c:2191 msgid "No targets" msgstr "Nema meta" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "A¾uriram ciljne mete....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "upozorenje: uoèena je nepravilnost sata. Izgradnja bi mogla biti nedovr¹ena." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Uporaba: %s [opcije] [meta] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Program sastavljen za %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Program sastavljen za %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Uoèene gre¹ke prijavite na adresu .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "opcija `-%c' tra¾i pozitivan cjelobrojni argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "opcija `-%c' tra¾i pozitivan cjelobrojni argument" #: 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 "" "%sOvaj program je slobodan; u izvornom kodu nalaze se uvjeti kopiranja.\n" "%sNema NIKAKVOG jamstva, èak ni za PROIZVODNOST ili UPOTREBLJIVOST ZA\n" "%sPOJEDINU SVRHU.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "Program sastavljen za %s\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "Program sastavljen za %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Makeova baza, ispisana na %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Kraj Makeove baze na %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Ulazim u nepoznat direktorij" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Izlazim iz nepoznatog direktorija" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Ulazim u direktorij `%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Izlazim iz direktorija `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Ulazim u nepoznat direktorij" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Izlazim iz nepoznatog direktorija" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Ulazim u direktorij `%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Izlazim iz direktorija `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Zaustavi.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Nepoznata gre¹ka %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 "prividna memorija potro¹ena" # Da prevedem ovo? #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: user %lu (real %lu), group %lu (real %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Inicijaliziran pristup" #: misc.c:746 msgid "User access" msgstr "Korisnièki pristup" #: misc.c:794 msgid "Make access" msgstr "Makeov pristup" #: misc.c:828 msgid "Child access" msgstr "Pristup djeteta" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Preusmjerio gre¹ke u %s\n" # ©to bi ovdje trebalo iæi? #: misc.c:894 #, fuzzy msgid "write error" msgstr "write jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Èitam makefileove...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Èitam makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (nema podrazumijevanog cilja)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (staza za pretra¾ivanje)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (nije va¾no)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (bez ekspanzije ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "neispravna sintaksa uvjeta" #: read.c:633 msgid "extraneous `endef'" msgstr "suvi¹an `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "prazno ime varijable" #: read.c:662 msgid "empty `override' directive" msgstr "prazna direktiva `ovverride'" #: read.c:687 msgid "invalid `override' directive" msgstr "neispravna direktiva `override'" #: read.c:854 msgid "commands commence before first target" msgstr "naredbe poèinju prije prve mete" #: read.c:905 msgid "missing rule before commands" msgstr "nedostaje propis prije naredbi" # Grr, ¾ivjela engleska mno¾ina! I ¹to sad da radim s onim %s-om? #: read.c:992 #, c-format msgid "missing separator%s" msgstr "nedostaju separatori-%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (jeste li mislili na TAB umjesto 8 razmaka?)" #: read.c:1152 msgid "missing target pattern" msgstr "nedostaje uzorak mete" #: read.c:1154 msgid "multiple target patterns" msgstr "vi¹estruki uzorci meta" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "uzorak mete ne sadr¾i `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "nedostaje `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Suvi¹an tekst nakon direktive `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "nedostaje `endef', nedovr¹en `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Suvi¹an tekst nakon direktive `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "suvi¹an `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "samo jedan `else' po uvjetu" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Izoblièena definicija o meti ovisne varijable" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "pomije¹ani implicitni i statièki propisi uzorka" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "pomije¹ani implicitni i normalni propisi" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "meta `%s' ne odgovara uzorku mete" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "spis meta `%s' ima unose i kod : i kod ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "meta `%s' zadan vi¹e nego jednom u istom propisu." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "upozorenje: poni¹tavam postojeæe naredbe za metu `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "upozorenje: ignoriram stare naredbe za metu `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "upozorenje: NUL znak uoèen; ostatak retka se zanemaruje" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Ni¹ta za napraviti za `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' je a¾uriran." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Èistim spis `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sNema propisa za izradu mete `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sNema propisa za izradu mete `%s', kojeg tra¾i `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Uzimam u razmatranje spis metu `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Nedavno bezuspje¹no poku¹ao a¾urirati spis `%s'\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Spis `%s' veæ je bio uzet u razmatranje.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Jo¹ uvijek a¾uriram spis `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Zavr¹io s a¾uriranjem spisa `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Spis `%s' ne postoji.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Upozorenje: .LOW_RESOLUTION_TIME spis `%s' ima vremensku oznaku visoke " "rezolucije" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Na¹ao implicitni propis za `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Nijedan implicitni propis nisam na¹ao za `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Koristim podrazumijevane naredbe za `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Kru¾na ovisnost %s <- %s ispu¹tena." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Zavr¹eni prerekviziti spisa mete `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Prerekviziti `%s' su u izradi.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Odustajem od spisa mete `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Meta `%s' nije ponovo izraðen zbog gre¹aka." # Nisam siguran da sam ovo ispravno shvatio. #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Prerekvizit `%s' slu¾i samo za redosljed pri meti `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Prerekvizit `%s' mete `%s' ne postoji.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Prerekvizit `%s' noviji je od mete `%s':\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Prerekvizit `%s' stariji je od mete `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Meta `%s' je dvotoèka, a nema prerekvizita.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Nema naredbi za `%s', a nijedan prerekvizit nije promijenjen.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Proizvodim `%s' zbog opcije always-make.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Nema potrebe ponovo izraditi metu `%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; koristim VPATH imena `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Moram ponovo izgraditi metu `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignoriram VPATH imena `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Naredbe od `%s' se izvr¹avaju.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Nije uspjela ponovna izrada spisa mete `%s'.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Uspje¹no ponovno izradio spis metu `%s'.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Spis meta `%s' treba ponovnu izradu zbog -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Upozorenje: Spis `%s' ima vrijeme promjene u buduænosti" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Upozorenje: Spis `%s' ima vrijeme promjene %.2g s u buduænosti" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "Element .LIBPATTERNS `%s' nije uzorak" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs neæe eksportirati: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Implicitni Propisi" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Nema implicitnih propisa." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u implicitnih propisa, %u" #: rule.c:575 msgid " terminal." msgstr " zavr¹ni." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG: pogre¹an num_pattern_rules! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "nepoznat signal" #: signame.c:93 msgid "Hangup" msgstr "Izgubljena veza" #: signame.c:96 msgid "Interrupt" msgstr "Prekid" #: signame.c:99 msgid "Quit" msgstr "Prestanak" #: signame.c:102 msgid "Illegal Instruction" msgstr "Nedopu¹tena instrukcija" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Zamka za slijed/prekidnu toèku" #: signame.c:110 msgid "Aborted" msgstr "Otkazan" #: signame.c:113 msgid "IOT trap" msgstr "IOT zamka" #: signame.c:116 msgid "EMT trap" msgstr "EMT zamja" #: signame.c:119 msgid "Floating point exception" msgstr "Iznimka floating pointa" #: signame.c:122 msgid "Killed" msgstr "Ubijen" #: signame.c:125 msgid "Bus error" msgstr "Sabirnièka gre¹ka" #: signame.c:128 msgid "Segmentation fault" msgstr "Segmentacijska gre¹ka" #: signame.c:131 msgid "Bad system call" msgstr "Nevaljan sistemski poziv" #: signame.c:134 msgid "Broken pipe" msgstr "Prekinut kanal" #: signame.c:137 msgid "Alarm clock" msgstr "Budilica" #: signame.c:140 msgid "Terminated" msgstr "Terminiran" #: signame.c:143 msgid "User defined signal 1" msgstr "Korisnièki definiran signal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Korisnièki definiran signal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Dijete iza¹lo" #: signame.c:157 msgid "Power failure" msgstr "Nestalo struje" #: signame.c:160 msgid "Stopped" msgstr "Zaustavljen" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Zaustavljen (unosom s TTY-ja)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Zaustavljen (outputom s TTY-ja)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Zaustavljen (signalom)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "prekoraèeno ogranièenje CPU vremena" #: signame.c:175 msgid "File size limit exceeded" msgstr "Prekoraèeno ogranièenje velièine spisa" # Kako prevesti "virtual timer"? #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtualna ¹toperica istekla" # Kako prevesti "profiling timer"? #: signame.c:181 msgid "Profiling timer expired" msgstr "Profajlerska ¹toperica istekla" #: signame.c:187 msgid "Window changed" msgstr "Promijenjen prozor" #: signame.c:190 msgid "Continued" msgstr "Nastavljen" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Hitno stanje I/O-a" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O moguæ" # Jesu li ova dva signala vic ili ¹to? U svakom sluèaju, ovo su samo # descriptioni. Za svaki sluèaj, nisam ih dirao. #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Izgubljen resurs" #: signame.c:215 msgid "Danger signal" msgstr "Signal za opasnost" #: signame.c:218 msgid "Information request" msgstr "Zahtjev za informacijom" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Aritmetièki koprocesor nije dostupan." #: 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 "podrazumijevano" #: variable.c:1372 msgid "environment" msgstr "okoli¹" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "okoli¹ pod -e" #: variable.c:1381 msgid "command line" msgstr "komandna linija" #: variable.c:1384 msgid "`override' directive" msgstr "direktiva `override'" #: variable.c:1387 msgid "automatic" msgstr "automatsko" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (iz `%s', redak %lu):" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# hash table statistike varijabli:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Varijable\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Uzorcima svojstvene vrijednosti varijabli" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Nema uzorcima svojstvenih vrijednosti varijabli." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u uzorcima svojstvenih vrijednosti varijabli" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "upozorenje: nedefinirana varijabla `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search je zatajila s %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Upozorenje: Prazno preusmjeravanje\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "unutra¹nja gre¹ka: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-upozorenje, CTRL-Y æe ostaviti potproces(e) na ¾ivotu.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-upozorenje, mo¾da æete morati ponovo omoguæiti obradu CTRL-Y iz DCL-a.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "UGRAÐEN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "UGRAÐEN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "UGRAÐEN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Nepoznata ugraðena naredba `%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Gre¹ka, prazna naredba\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Preusmjerio ulaz iz %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Preusmjerio gre¹ke u %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Preusmjerio izlaz u %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Umjesto toga, izvr¹avam %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Gre¹ka pri pokretanju, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH staze za pretra¾ivanje\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Nema `vpath' staza za pretra¾ivanje." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u `vpath' staza za pretra¾ivanje.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Nema opæe (iz varijable `VPATH') staze za pretra¾ivanje." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Opæa (iz varijable `VPATH') staza za pretra¾ivanje:\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Gre¹ka u sintaksi, jo¹ uvijek unutar '\"'\n" # Nepo¾etene ili nepo¾njete? #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Dobio SIGCHLD; %u nepo¾etene djece.\n" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Nemojte koristiti -j ili --jobs ako sh.exe nije dostupan." #~ msgid "Resetting make for single job mode." #~ msgstr "Resetiram make u mod jednog posla." #~ msgid "no file name for `%sinclude'" #~ msgstr "nedostaje naziv spisa za `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "meta `%s' ostavlja prerekvizitni uzorak praznim" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Nijedan spis." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u spisa u %u raspr¹enih d¾epova.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# prosjeèno %.3f spisa po d¾epu, maks. %u spisa u jednom d¾epu.\n" #~ msgid "DIRECTORY" #~ msgstr "DIREKTORIJ" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Promijeni u DIREKTORIJ prije nego ¹to i¹ta napravi¹" #~ msgid "FLAGS" #~ msgstr "ZASTAVICE" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Zaustavi proces tako da se debugger mo¾e zakaèiti" #~ msgid "Environment variables override makefiles" #~ msgstr "Varijable iz okoli¹a imaju veæu va¾nost od makefilea" #~ msgid "FILE" #~ msgstr "SPIS" #~ msgid "Read FILE as a makefile" #~ msgstr "Proèitaj SPIS kao makefile" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Pretra¾i DIREKTORIJ za ukljuèenim makefileovima" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Ne pokreæi vi¹estruke poslove osim ako je optereæenje ispod N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "Nemoj zapravo pokrenuti nijednu naredbu; samo ih ispi¹i" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Pretpostavi da je SPIS vrlo star i nemoj ga ponovo napraviti" #~ msgid "Don't echo commands" #~ msgstr "Ne ispisuj naredbe" #~ msgid "Turns off -k" #~ msgstr "Iskljuèuje -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Smatraj SPIS beskonaèno novim" #~ msgid "Entering" #~ msgstr "Ulazim u" #~ msgid "Leaving" #~ msgstr "Izlazim iz" #~ msgid "# No variables." #~ msgstr "# Nema varijabli." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# prosjeèno %.1f varijabli po d¾epu, maks. %u u jednom d¾epu.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# prosjeèno %d.%d varijabli po d¾epu, maks. %u u jednom d¾epu.\n" make-dfsg-3.81.orig/po/id.gmo0000644000175000017500000006310210416553102016231 0ustar srivastasrivastaÞ•%D l ¡¾&×þ!-9 g-ˆ¶'Ìô " <F"c †“(¢ ËÙò   2<KTe nyˆ. 1Ï2L(j&“*º&å+ +8d#y#)Á-ë2$I9n¨3Çû.D`{=‹"Éì  8 ,R  % ,à -ð !&?!f!†!¦!/Æ!1ö! ("4"#K"#o"6“"Ê"æ"ø" #4*#>_# ž#*¨#Ó#ë# ó#"ÿ#'"$J$Y$h$z$ Š$ –$ $ ¸$%Å$ë$$ %=0%:n% ©%0Ê%û% &+$&!P&r& Œ&š&£&·&Í&$ã&''0'#P't'"'²',Ë'ø')(@(!Y(&{(¢(Â( É(Ö(ß(%ó() -)7)#>)0b)'“)3»)+ï)*-7*'e**§*<ª*!ç* + '+*2+]+'z+ ¢+6¬+ ã+-ñ+-,1M,,—,3«,ß,ä,ú,(-)9-/c-6“-Ê-â-ü-1.-G.'u.#. Á.Ï.Ø.à.ó.//'/;/&P/6w/)®/(Ø/ 0* 070#M0&q0˜0¸0Ö0ç011!/1Q1g1!}1Ÿ1µ1Ñ1à1ø1 2(!2 J21T23†23º2î23 3 >3%K3q3„3Œ3 ©3·3!Ò3ô3 44)4946L4.ƒ4²4É4á4"õ4350L5}5š5'¸59à56&#6J6Z6w6‹6¢6'Â6ê67-71472f7™7¹7È7,ã728*C8n86Ž8,Å8"ò839)I9"s91–9&È9ï9þ90:I:i:=‚:9À:1ú:.,;H[;,¤;"Ñ;0ô;%<w5<­=Í=%ç= >>*$>7O>'‡>@¯>ð>1?@? Z?-g? •?¡?!À? â?ï?6ÿ?6@F@`@@"ž@ Á@Ë@Þ@ç@ ö@ AAA77ABoA²AÍAàAøA7B+IB+uB(¡B3ÊB3þB!2CTC#rC)–C/ÀCðCD$D8ADzD2™DÌD-æD%E*:EeEE|E ÂEãE!úEF4F-PF~F)žF-ÈF5öF',G*TGGŸG3¿GIóG<=HzH‰H$¡H(ÆHAïH1INI`ItI4”IHÉI J7JWJ uJ €J%ŠJ&°J×JæJõJK K &K 0KQK,fK%“K%¹K9ßKCL&]L7„L#¼L àL&ìL M!4M VMdMmMMœM%µM(ÛM$N%)NON%eN*‹N;¶NòN%O8O-QO.O)®OØO ßOëOôO'P-P BP LP8VP(P$¸P9ÝP7QOQ7mQ*¥Q ÐQñQ=÷Q35R$iRŽR3¥R2ÙR1 S>S6ES |S9‰S8ÃS4üS1TMTBaT¤T­TÃT(ÙT)U8,U4eUšU¶UÐU6íU4$V0YV'ŠV²VÂVËVÓVïV WW1WKW)eW>W<ÎWB X NX.XX‡X#X(ÁX&êX&Y8YUYrYY#¡YÅYàY)ûY%Z?Z_ZnZˆZŸZ:´ZïZHøZ@A[C‚[*Æ[@ñ[ 2\*?\j\|\ „\ ¥\³\-Ï\ý\ ]]:]I]B[]1ž]Ð]ç]ÿ]&^3>^4r^ §^È^(ç^?_P_2Y_Œ_*›_Æ_Ø_+ë_)`A`T`1Z`5Œ`2Â`&õ`a .a*Oa:za3µaéaA b>KbŠb;¨b-äb$c;7c,sc c·c+Ñc%ýc#dH3ìÒB<ð@'¬? # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Customs won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: GNU make 3.79 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-07-17 22:00+0700 Last-Translator: Arif E. Nugroho Language-Team: Indonesian MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit # %u `vpath' jalur pencarian. # %u aturan implisit, %u # %u Nilai Variabel Pattern-specific # Direktori # Files # Selesai membuat Make data base pada %s # Jalur pencarian yang umum untuk variabel `VPATH': # # Make data base, di tampilkan pada %s # Tidak ada (`VPATH' variabel) yang umum dalam jalur pencarian. # Tidak ada aturan implisit. # Tidak terdapat nilai variabel pattern-specific # VPATH Jalur Pencarian # Variabel Terhitung %d argumen gagal untuk dijalankan Tanggal %s Mengabaikan nama VPATH `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core di-dump) (apakah yang anda maksud TAB dari pada 8 buah spasi?) (tidak peduli) (dari `%s', baris %lu): (nama mungkin akan di potong) (tidak terdapat goal default) (tidak terdapat ekspansi tilde ~) (remote) (jalur pencarian) files, tidak mungkin sejauh ini. terminal.# Juga membuat:# Command-line target.# Perintah sedang berjalan (INI MERUPAKAN SEBUAH BUG).# Perintah dependensi sedang berjalan (INI MERUPAKAN SEBUAH BUG).# Gagal untuk mengupdate.# File tidak ada.# File sudah diupdate.# File belum di-update.# File merupakan persyaratan perantara (intermediate).# Pencarian aturan implisit sudah selesai.# Pencarian aturan implisit belum selesai.# Pola implisit atau statis stem: `%s' # Nilai yang salah dalam anggota `command_state' !# Nilai yang salah dalam anggota `update_status' !# Terakhir dimodifikasi pada %s # Waktu ubah sudah di check.# Perlu untuk diupdate (-q diset).# Phony target (dibutuhkan oleh .PHONY).# File sebelumnya (dibutuhkan oleh .PRECIOUS).# Sukses mengupdate.# perintah dijalankan# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): tidak dapat dibuka. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): tidak dapat dibuka. # %s (key %s, mtime %d): # %s (key %s, mtime %d): tidak dapat dibuka. # %s: tidak dapat melihat statistik. # Tidak ada `vpath' dalam jalur pencarian.# Bukan sebuah target:%s (baris %d) shell context tidak baik (!unixy && !batch_mode_shell) %s dihentikan selama 30 detik...%s: Perintah tidak ada%s: Shell program tidak ditemukan%s: opsi illegal -- %c %s: opsi tidak valid -- %c %s: opsi `%c%s' tidak memperbolehkan argumen %s: opsi `%s' merupakan ambigu %s: opsi `%s' membutuhkan sebuah argumen %s: opsi `--%s' tidak memperbolehkan argumen %s: opsi `-W %s' tidak memperbolehkan sebuah argumen %s: opsi `-W %s' merupakan opsi ambigu %s: opsi membutuhkan sebuah argumen -- %c %s: opsi tidak dikenali `%c%s' %s: opsi tidak dikenali `--%s' %sTidak terdapat aturan untuk membuat target `%s'%s%sTidak terdapat aturan untuk membuat target `%s', dibutuhkan oleh `%s'%s*** Anggota archive `%s' mungkin berupa bogus; tidak dihapus*** Berhenti. *** Menghapus file `%s'*** Menghapus file intermediate `%s'*** Menunggu jobs yang belum selesai....*** [%s] Anggota archive `%s' mungkin berupa bogus: tidak dihapus*** [%s] Menghapus file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (diabaikan)-warning, CTRL-Y akan meninggalkan sub-process(es). -warning, kamu mungkin telah mengaktifkan pengontrolan CTRL-Y dari DCL. . Berhenti. .LIBPATTERNS elemen `%s' bukan merupakan sebuah pattern; menggunakan nama VPATH `%s'DibatalkanJam alarmMenghindari aturan implisit rekursi. BUG: num_pattern_rules salah! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] system call jelek`pipe' rusakBus errorBatas waktu CPU telah terlampauiProses anak berakhirCircular %s <- %s ketergantungan dijatuhkan.Membersihkan file batch sementara %s Membersihkan file batch sementara %s Perintah untuk `%s' akan diabaikan untuk menghargai `%s'.Perintah untuk file `%s' ditemukan dalam pencarian aturan implisit,Perintah dari `%s' sedang dijalankan. Perintah di spesifikasikan untuk file `%s' pada %s:%lu,Mempertimbangkan target file `%s'. DilanjutkanTidak dapat kembali ke direktori asal.Membuat file batch sementara %s Custom tidak akan men-export: %s Sinyal bahayaEMT trapGagal spawning, %d Error, tidak ada perintah Menjalankan perintah %s Kelebihan text sesudah `%s' directiveKelebihan text sesudah `endef' directiveGagal membuat lagi target file `%s'.Gagal membuat lagi target file `%s'. File `%s' tidak ada. File `%s' baru saja dipertimbangkan. Batas maksimal ukuran file sudah dilampauiSelesai melakukan semua persyaratan dari target file `%s'. Selesai meng-update file `%s'. Floating point co-processor tidak adaFloating point exceptionDitemukan sebuah aturan implisit untuk `%s'. Menemukan persyaratan `%s' sebagai VPATH `%s' Menyerah untuk membuat target file `%s'. HangupI/O mungkinIOT trapInstruksi IlegalIncluded makefile `%s' tidak ditemukan.Permintaan informasiInterupsiDimatikanProses anak yang masih berjalan 0x%08lx (%s) PID %ld %s Mencari aturan dengan file antara `%s'. Mencari aturan implisit untuk `%s'. Mencari aturan implisit untuk anggota-archive pada `%s'. Makefile `%s' mungkin berupa loop; tidak membuat lagi. Makefile `%s' tidak ditemukanMakefile dari standard input dispesifikasikan dua kali.Anggota `%s'%s: %ld bytes pada %ld (%ld). Harus membuat lagi target `%s'. TidakTidak ada perintah untuk `%s' dan persyaratan tidak berubah. Tidak terdapat aturan implisit untuk membuat `%s'. Tidak perlu membuat lagi target `%s'Tidak terdapat targetsTidak diberikan target dan tidak ditemukan makefileTidak ada yang harus dilakukan untuk membuat `%s'.Memperoleh token untuk proses anak 0x%08lx (%s). Opsi: Parallel jobs (-j) tidak disupport dalam platform ini.Listrik matiPersyaratan untuk `%s' lebih baru dari pada target `%s'. Persyaratan untuk `%s' lebih tua dari pada target `%s'. Persyaratan untuk `%s' untuk target `%s' tidak ada. Profiling timer sudah lewatPruning file `%s'. Meletakkan proses anak 0x%08lx (%s) PID %ld%s pada rantai proses. BerhentiMembaca makefile `%s'Membaca makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Baru saja dicoba dan gagal untuk meng-update file `%s'. Variabel rekursif `%s' menunjuk pada dirinya sendiriMeneruskan error menuju %s Meneruskan input dari %s Meneruskan output menuju %s Menolak persyaratan implisit yang tidak mungkin `%s'. Menolak persyaratan aturan yang tidak mungkin `%s'. Melepaskan token dari proses anak 0x%08lx (%s). Mereset kembali ke mode satu job (-j1).Resource hilangSIGPHONESIGWINDKesalahan segmentasi memorySedang meng-update file `%s'. DihentikkanDihentikan oleh sinyalDihentikan (masukkan tty)Dihentikan (keluaran tty)Sukses membuat kembali target file `%s'. Target `%s' merupakan double-colon dan tidak memiliki syarat. Target `%s' tidak dibuat lagi karena ada kesalahan (errors).Target file `%s' dibutuhkan untuk membuat kembali dengan opsi -q. DimatikanPersyaratan untuk membuat `%s' sedang dibuat. Trace/breakpoint trapMencoba persyaratan implisit `%s'. Mencoba aturan pola dengan stem `%.*s'. Mencoba persyaratan dari aturan `%s'. Perintah builtin '%s' tidak diketahui Tidak diketahui kesalahan %dMen-update target akhir.... Meng-update makefiles.... Kondisi I/O pentingPenggunaan: %s [opsi] [target] ... Sinyal definisi pengguna 1Sinyal definisi pengguna 2Menggunakan perintah default untuk `%s'. Virtual timer sudah lewatPeringatan: redirection kosong Window berubah[%s] Error %d (diabaikan)`%s' sudah up to date.`override' directiveusaha untuk menggunakan feature yang tidak disupport: `%s'otomatistetapi `%s' sekarang dipertimbangkan sebagai file yang sama dengan `%s'.tidak dapat mengubah nama dua-colon `%s' menjadi satu-colon `%s'tidak dapat mengubah nama dari satu-colon `%s' ke double-colon `%s'tidak dapat memaksa mencapai batas beban: tidak dapat memaksa mencapai batas beban pada sistem operasi inicommand lineperintah dijalankan sebelum target pertamamembuat jobs pipedefaultselesai tidur(30). Melanjutkan. dup jobserverdirective `override' kosong`string' kosong tidak valid sebagai nama filenama variabel kosongenvironmentenvirenment dibawah opsi -ekelebihan `%s'kelebihan `endef'find_and_set_shell jalur pencarian di set pada default_shell = %s find_and_set_shell diset pada default_shell = %s fopen (file sementara)fwrite (file sementara)inisiasi jobserver pipekesalahan internal: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: opsi --jobserver-fds lebih dari satudirective `override' tidak validsintak salah dalam kondisionallbr$ini_control gagal dengan status = %dlbr$set_module gagal untuk mengekstrak info module, status = %dmakefilehilang syntak `endef', tidak diselesaikan `define'hilang `endif'hilang aturan sebelum menjalankan perintahpemisah %s hilangpola target hilangaturan implisit dan aturan normal tercampuraturan pola implisit dan static tercampurpola target banyaktidakargumen pertama untuk fungsi `word' bukan numerikargumen pertama untuk fungsi `wordlist' bukan numerikargumen kedua dari fungsi `wordlist' bukan numerikhanya satu `else' dalam setiap kondisimembaca jobs pipesys$search gagal dengan kode %d target `%s' tidak cocok dengan pola targettarget `%s' diberikan lebih dari sekali dalam satu aturan.target file `%s' keduanya memiliki : dan :: entriespola target tidak memiliki `%%'opsi `-%c' membutuhkan sebuah argument `string' yang tidak kosongtidak dapat memodifikasi tanggal pada anggota archive pada VMStouch: Archive `%s' tidak adatouch: Kode balik tidak baik dari ar_member_touch pada `%s'touch: Anggota `%s' tidak terdapat dalam `%s'touch: `%s' bukan archive yang validtidak dapat membuka library `%s' untuk melihat anggota `%s'spesifikasi level debug tidak diketahui `%s'sinyal tidak diketahuiunlink (file sementara): fungsi `%s' tidak diselesaikan: hilang `%c'referensi variabel tidak diselesaikanKehabisan memori virtualPeringatan: Clock skew terdeteksi. Pembuatan anda mungkin tidak sempurnaPeringatan: -jN dipaksakan dalam submake: disabling jobserver mode.Peringatan: karakter NUL terlihat; baris selanjutnya dihiraukanPeringatan: menghiraukan perintah lama untuk target `%s'Peringatan: jobserver tidak ada: menggunakan -j1. Tambahkan `+' pada aturan make paling atas.Peringatan: overriding perintah untuk target `%s'peringatan: variabel `%.*s' tidak terdefinisiwindows32_openpipe (): process_init_fd() gagal menulis jobservermake-dfsg-3.81.orig/po/id.po0000644000175000017500000013677610416553102016107 0ustar srivastasrivasta# Pesan Bahasa Indonesia untuk GNU make # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the GNU make package. # Arif E. Nugroho , 2005. # msgid "" msgstr "" "Project-Id-Version: GNU make 3.79\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-17 22:00+0700\n" "Last-Translator: Arif E. Nugroho \n" "Language-Team: Indonesian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "usaha untuk menggunakan feature yang tidak disupport: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "tidak dapat memodifikasi tanggal pada anggota archive pada VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Archive `%s' tidak ada" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' bukan archive yang valid" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Anggota `%s' tidak terdapat dalam `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: Kode balik tidak baik dari ar_member_touch pada `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module gagal untuk mengekstrak info module, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control gagal dengan status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "tidak dapat membuka library `%s' untuk melihat anggota `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Anggota `%s'%s: %ld bytes pada %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (nama mungkin akan di potong)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Tanggal %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Berhenti.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Anggota archive `%s' mungkin berupa bogus: tidak dihapus" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Anggota archive `%s' mungkin berupa bogus; tidak dihapus" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Menghapus file `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Menghapus file `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# perintah dijalankan" #: commands.c:602 msgid " (built-in):" msgstr " (built-in):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (dari `%s', baris %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Direktori\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: tidak dapat melihat statistik.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (key %s, mtime %d): tidak dapat dibuka.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (device %d, inode [%d,%d,%d]): tidak dapat dibuka.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (device %ld, inode %ld): tidak dapat dibuka.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (key %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (device %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (device %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Tidak" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " files, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "tidak" #: dir.c:1058 msgid " impossibilities" msgstr " tidak mungkin" #: dir.c:1062 msgid " so far." msgstr " sejauh ini." #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr " tidak mungkin dalam direktori %u.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Variabel rekursif `%s' menunjuk pada dirinya sendiri" #: expand.c:266 msgid "unterminated variable reference" msgstr "referensi variabel tidak diselesaikan" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Perintah di spesifikasikan untuk file `%s' pada %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "Perintah untuk file `%s' ditemukan dalam pencarian aturan implisit," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "" "tetapi `%s' sekarang dipertimbangkan sebagai file yang sama dengan `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Perintah untuk `%s' akan diabaikan untuk menghargai `%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "tidak dapat mengubah nama dari satu-colon `%s' ke double-colon `%s'" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "tidak dapat mengubah nama dua-colon `%s' menjadi satu-colon `%s'" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Menghapus file intermediate `%s'" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** Menghapus file intermediate `%s'" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "" #: file.c:782 msgid "Current time" msgstr "" #: file.c:881 msgid "# Not a target:" msgstr "# Bukan sebuah target:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# File sebelumnya (dibutuhkan oleh .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Phony target (dibutuhkan oleh .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Command-line target." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# merupakan sebuah default atau MAKEFILES makefile." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Pencarian aturan implisit sudah selesai." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Pencarian aturan implisit belum selesai." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Pola implisit atau statis stem: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# File merupakan persyaratan perantara (intermediate)." #: file.c:919 msgid "# Also makes:" msgstr "# Juga membuat:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Waktu ubah sudah di check." #: file.c:927 msgid "# File does not exist." msgstr "# File tidak ada." #: file.c:929 #, fuzzy msgid "# File is very old." msgstr "# File sudah diupdate." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Terakhir dimodifikasi pada %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# File sudah diupdate." #: file.c:937 msgid "# File has not been updated." msgstr "# File belum di-update." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Perintah sedang berjalan (INI MERUPAKAN SEBUAH BUG)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Perintah dependensi sedang berjalan (INI MERUPAKAN SEBUAH BUG)." #: file.c:953 msgid "# Successfully updated." msgstr "# Sukses mengupdate." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Perlu untuk diupdate (-q diset)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Gagal untuk mengupdate." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Nilai yang salah dalam anggota `update_status' !" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Nilai yang salah dalam anggota `command_state' !" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Files" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "argumen pertama untuk fungsi `word' bukan numerik" #: function.c:764 #, fuzzy msgid "first argument to `word' function must be greater than 0" msgstr "argumen pertama untuk fungsi `word' bukan numerik" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "argumen pertama untuk fungsi `wordlist' bukan numerik" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "argumen kedua dari fungsi `wordlist' bukan numerik" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) gagal (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) gagal (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() gagal (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() gagal\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Membersihkan file batch sementara %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Argumen kurang (%d) untuk fungsi `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Tidak terimplementasi dalam platform ini: fungsi `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "fungsi `%s' tidak diselesaikan: hilang `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opsi `%s' merupakan ambigu\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opsi `--%s' tidak memperbolehkan argumen\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opsi `%c%s' tidak memperbolehkan argumen\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opsi `%s' membutuhkan sebuah argumen\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: opsi tidak dikenali `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: opsi tidak dikenali `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: opsi illegal -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: opsi tidak valid -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opsi membutuhkan sebuah argumen -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opsi `-W %s' merupakan opsi ambigu\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opsi `-W %s' tidak memperbolehkan sebuah argumen\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Mencari aturan implisit untuk `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Mencari aturan implisit untuk anggota-archive pada `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Menghindari aturan implisit rekursi.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Mencoba aturan pola dengan stem `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Menolak persyaratan implisit yang tidak mungkin `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Menolak persyaratan aturan yang tidak mungkin `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Mencoba persyaratan implisit `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Mencoba persyaratan dari aturan `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Menemukan persyaratan `%s' sebagai VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Mencari aturan dengan file antara `%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (file sementara)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Error 0x%x (diabaikan)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Error 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Error %d (diabaikan)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Error %d" #: job.c:399 msgid " (core dumped)" msgstr " (core di-dump)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Menunggu jobs yang belum selesai...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Proses anak yang masih berjalan 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (remote)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Reaping losing child 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Reaping winning child 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Membersihkan file batch sementara %s\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Menghilangkan proses anak 0x%08lx PID %ld%s dari rantai.\n" #: job.c:862 msgid "write jobserver" msgstr "menulis jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Melepaskan token dari proses anak 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() gagal untuk menjalankan proses (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Terhitung %d argumen gagal untuk dijalankan\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Meletakkan proses anak 0x%08lx (%s) PID %ld%s pada rantai proses.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Memperoleh token untuk proses anak 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "membaca jobs pipe" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "tidak dapat memaksa mencapai batas beban pada sistem operasi ini" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "tidak dapat memaksa mencapai batas beban: " #: 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 "process_easy() gagal untuk menjalankan proses (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make reaped child pid %d, tetap menunggu untuk pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Perintah tidak ada" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Shell program tidak ditemukan" #: 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 berubah (sebelumnya `%s', sekarang `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Membuat file batch sementara %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (baris %d) shell context tidak baik (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opsi:\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "Diabaikan untuk kompatibilitas." #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "Menampilkan banyak informasi debug" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "Menampilkan berbagai tipe informasi debug." #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "Tampilkan pesan ini dan keluar" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "Abaikan kesalahan dari perintah yang dijalankan" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" "Melakukan N jobs secara bersamaan. Jobs tidak terhingga jika tidak diberikan " "argumen." #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "Tetap jalan ketika target tidak dapat dibuat." #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "Tampilkan make's internal database" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" "Tidak menjalankan perintah. Mengeluarkan status saja dan mengatakan up to " "date" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "Aturan implisit builtin tidak digunakan." #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "Builtin variabel seting tidak digunakan" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "Touch target dari pada membuat kembali" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "Tampilkan versi dari make dan keluar" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "Tampilkan directory saat ini" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "Matikan opsi -w, walaupun opsi ini diaktifkan secara implisit" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "Peringatkan akan adanya variabel yang tidak terdefinisi." #: main.c:549 msgid "empty string invalid as file name" msgstr "`string' kosong tidak valid sebagai nama file" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "spesifikasi level debug tidak diketahui `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Interupsi/Exception diterima (kode = 0x%x, alamat = 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" "Exception filter tidak dapat diatasi dari program %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Akses dilanggar: operasi tulis pada alamat %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Akses dilanggar: operasi baca pada alamat %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 diset pada 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 jalur pencarian di set pada default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s dihentikan selama 30 detik..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "selesai tidur(30). Melanjutkan.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile dari standard input dispesifikasikan dua kali." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (file sementara)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (file sementara)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Parallel jobs (-j) tidak disupport dalam platform ini." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Mereset kembali ke mode satu job (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "internal error: opsi --jobserver-fds lebih dari satu" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "internal error: invalid --jobserver-fds string `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "Peringatan: -jN dipaksakan dalam submake: disabling jobserver mode." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "Peringatan: jobserver tidak ada: menggunakan -j1. Tambahkan `+' pada aturan " "make paling atas." #: main.c:1710 msgid "creating jobs pipe" msgstr "membuat jobs pipe" #: main.c:1725 msgid "init jobserver pipe" msgstr "inisiasi jobserver pipe" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Meng-update makefiles....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefile `%s' mungkin berupa loop; tidak membuat lagi.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Gagal membuat lagi target file `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Included makefile `%s' tidak ditemukan." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefile `%s' tidak ditemukan" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Tidak dapat kembali ke direktori asal." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Menjalankan kembali:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (file sementara): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Tidak diberikan target dan tidak ditemukan makefile" #: main.c:2191 msgid "No targets" msgstr "Tidak terdapat targets" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Men-update target akhir....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "Peringatan: Clock skew terdeteksi. Pembuatan anda mungkin tidak sempurna" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Penggunaan: %s [opsi] [target] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" "Laporkan bugs kepada \n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "opsi `-%c' membutuhkan sebuah argument `string' yang tidak kosong" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "opsi `-%c' membutuhkan sebuah argument `string' yang tidak kosong" #: main.c:2942 #, fuzzy, 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 "" ", oleh Richard Stallman dan Roland McGrath.\n" "%sDibuat untuk %s\n" "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99\n" "%s\tFree Software Foundation, Inc.\n" "%sIni adalah free software; lihat kode program untuk syarat mengkopinya.\n" "%sTIDAK TERDAPAT GARANSI; bahkan untuk PENJUALAN atau \n" "%sKESESUAIAN UNTUK TUJUAN TERTENTU.\n" "\n" "%sLaporkan bugs kepada \n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Make data base, di tampilkan pada %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Selesai membuat Make data base pada %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "sebuah direktori yang tidak diketahui" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "sebuah direktori yang tidak diketahui" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "direktori `%s'\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "direktori `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "sebuah direktori yang tidak diketahui" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "sebuah direktori yang tidak diketahui" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "direktori `%s'\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "direktori `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Berhenti.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Tidak diketahui kesalahan %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "Kehabisan memori virtual" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: pengguna %lu (nyata %lu), grup %lu (nyata %lu)\n" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "Terinisialisasi" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Meneruskan error menuju %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "menulis jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Membaca makefiles...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Membaca makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (tidak terdapat goal default)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (jalur pencarian)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (tidak peduli)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (tidak terdapat ekspansi tilde ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "sintak salah dalam kondisional" #: read.c:633 msgid "extraneous `endef'" msgstr "kelebihan `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "nama variabel kosong" #: read.c:662 msgid "empty `override' directive" msgstr "directive `override' kosong" #: read.c:687 msgid "invalid `override' directive" msgstr "directive `override' tidak valid" #: read.c:854 msgid "commands commence before first target" msgstr "perintah dijalankan sebelum target pertama" #: read.c:905 msgid "missing rule before commands" msgstr "hilang aturan sebelum menjalankan perintah" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "pemisah %s hilang" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (apakah yang anda maksud TAB dari pada 8 buah spasi?)" #: read.c:1152 msgid "missing target pattern" msgstr "pola target hilang" #: read.c:1154 msgid "multiple target patterns" msgstr "pola target banyak" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "pola target tidak memiliki `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "hilang `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Kelebihan text sesudah `endef' directive" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "hilang syntak `endef', tidak diselesaikan `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Kelebihan text sesudah `%s' directive" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "kelebihan `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "hanya satu `else' dalam setiap kondisi" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Definisi variable target-specific memiliki format salah" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "aturan pola implisit dan static tercampur" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "aturan implisit dan aturan normal tercampur" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "target `%s' tidak cocok dengan pola target" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "target file `%s' keduanya memiliki : dan :: entries" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "target `%s' diberikan lebih dari sekali dalam satu aturan." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "Peringatan: overriding perintah untuk target `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "Peringatan: menghiraukan perintah lama untuk target `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "Peringatan: karakter NUL terlihat; baris selanjutnya dihiraukan" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Tidak ada yang harus dilakukan untuk membuat `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' sudah up to date." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Pruning file `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sTidak terdapat aturan untuk membuat target `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%sTidak terdapat aturan untuk membuat target `%s', dibutuhkan oleh `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Mempertimbangkan target file `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Baru saja dicoba dan gagal untuk meng-update file `%s'.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "File `%s' baru saja dipertimbangkan.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Sedang meng-update file `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Selesai meng-update file `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "File `%s' tidak ada.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Ditemukan sebuah aturan implisit untuk `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Tidak terdapat aturan implisit untuk membuat `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Menggunakan perintah default untuk `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Circular %s <- %s ketergantungan dijatuhkan." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Selesai melakukan semua persyaratan dari target file `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Persyaratan untuk membuat `%s' sedang dibuat.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Menyerah untuk membuat target file `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Target `%s' tidak dibuat lagi karena ada kesalahan (errors)." #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Persyaratan untuk `%s' lebih tua dari pada target `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Persyaratan untuk `%s' untuk target `%s' tidak ada.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Persyaratan untuk `%s' lebih baru dari pada target `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Persyaratan untuk `%s' lebih tua dari pada target `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Target `%s' merupakan double-colon dan tidak memiliki syarat.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Tidak ada perintah untuk `%s' dan persyaratan tidak berubah.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Tidak perlu membuat lagi target `%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; menggunakan nama VPATH `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Harus membuat lagi target `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Mengabaikan nama VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Perintah dari `%s' sedang dijalankan.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Gagal membuat lagi target file `%s'.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Sukses membuat kembali target file `%s'.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Target file `%s' dibutuhkan untuk membuat kembali dengan opsi -q.\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "" "*** Peringatan: File `%s' memiliki waktu modifikasi lebih baru (%s > %s)" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" "*** Peringatan: File `%s' memiliki waktu modifikasi lebih baru (%s > %s)" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS elemen `%s' bukan merupakan sebuah pattern" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Custom tidak akan men-export: %s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Tidak ada aturan implisit." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Tidak ada aturan implisit." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u aturan implisit, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "BUG: num_pattern_rules salah! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "sinyal tidak diketahui" #: signame.c:93 msgid "Hangup" msgstr "Hangup" #: signame.c:96 msgid "Interrupt" msgstr "Interupsi" #: signame.c:99 msgid "Quit" msgstr "Berhenti" #: signame.c:102 msgid "Illegal Instruction" msgstr "Instruksi Ilegal" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Trace/breakpoint trap" #: signame.c:110 msgid "Aborted" msgstr "Dibatalkan" #: signame.c:113 msgid "IOT trap" msgstr "IOT trap" #: signame.c:116 msgid "EMT trap" msgstr "EMT trap" #: signame.c:119 msgid "Floating point exception" msgstr "Floating point exception" #: signame.c:122 msgid "Killed" msgstr "Dimatikan" #: signame.c:125 msgid "Bus error" msgstr "Bus error" #: signame.c:128 msgid "Segmentation fault" msgstr "Kesalahan segmentasi memory" #: signame.c:131 msgid "Bad system call" msgstr "system call jelek" #: signame.c:134 msgid "Broken pipe" msgstr "`pipe' rusak" #: signame.c:137 msgid "Alarm clock" msgstr "Jam alarm" #: signame.c:140 msgid "Terminated" msgstr "Dimatikan" #: signame.c:143 msgid "User defined signal 1" msgstr "Sinyal definisi pengguna 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Sinyal definisi pengguna 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Proses anak berakhir" #: signame.c:157 msgid "Power failure" msgstr "Listrik mati" #: signame.c:160 msgid "Stopped" msgstr "Dihentikkan" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Dihentikan (masukkan tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Dihentikan (keluaran tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Dihentikan oleh sinyal" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Batas waktu CPU telah terlampaui" #: signame.c:175 msgid "File size limit exceeded" msgstr "Batas maksimal ukuran file sudah dilampaui" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtual timer sudah lewat" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profiling timer sudah lewat" #: signame.c:187 msgid "Window changed" msgstr "Window berubah" #: signame.c:190 msgid "Continued" msgstr "Dilanjutkan" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Kondisi I/O penting" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O mungkin" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Resource hilang" #: signame.c:215 msgid "Danger signal" msgstr "Sinyal bahaya" #: signame.c:218 msgid "Information request" msgstr "Permintaan informasi" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Floating point co-processor tidak ada" #: 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 "default" #: variable.c:1372 msgid "environment" msgstr "environment" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "envirenment dibawah opsi -e" #: variable.c:1381 msgid "command line" msgstr "command line" #: variable.c:1384 msgid "`override' directive" msgstr "`override' directive" #: variable.c:1387 msgid "automatic" msgstr "otomatis" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (dari `%s', baris %lu):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %u variabel dalam %u hash buckets.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variabel\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Nilai Variabel Pattern-specific" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Tidak terdapat nilai variabel pattern-specific" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u Nilai Variabel Pattern-specific" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "peringatan: variabel `%.*s' tidak terdefinisi" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search gagal dengan kode %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Peringatan: redirection kosong\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "kesalahan internal: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-warning, CTRL-Y akan meninggalkan sub-process(es).\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-warning, kamu mungkin telah mengaktifkan pengontrolan CTRL-Y dari DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Perintah builtin '%s' tidak diketahui\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Error, tidak ada perintah\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Meneruskan input dari %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Meneruskan error menuju %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Meneruskan output menuju %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Menjalankan perintah %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Gagal spawning, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH Jalur Pencarian\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Tidak ada `vpath' dalam jalur pencarian." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u `vpath' jalur pencarian.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Tidak ada (`VPATH' variabel) yang umum dalam jalur pencarian." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Jalur pencarian yang umum untuk variabel `VPATH':\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Tidak terdapat files." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u files dalam %u hash buckets.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# rata - rata %.3f files per bucket, maksimal %u files dalam satu " #~ "bucket.\n" #~ msgid "the `word' function takes a positive index argument" #~ msgstr "fungsi `word' mengambil sebuah argumen index yang positif" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Sintak error, masih didalam '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Mendapat sinyal SIGCHLD; %u unreaped childern.\n" #~ msgid "DIRECTORY" #~ msgstr "DIREKTORI" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Pindah ke DIRECTORY sebelum melakukan sesuatu." #~ msgid "FLAGS" #~ msgstr "FLAGS" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Proses dihentikan untuk memberikan kesempatan debugger" #~ msgid "Environment variables override makefiles" #~ msgstr "Variabel environment digunakan dalam makefiles" #~ msgid "FILE" #~ msgstr "FILE" #~ msgid "Read FILE as a makefile" #~ msgstr "Baca FILE sebagai sebuah makefile" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Cari DIREKTORI untuk makefiles yang dibutuhkan" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Tidak melakukan banyak jobs jika beban lebih dari N." #~ msgid "Don't actually run any commands; just print them" #~ msgstr "" #~ "Jangan menjalankan perintah apapun. Hanya tampilkan saja apa yang akan " #~ "dilakukan" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "" #~ "Anggap FILE sudah sangat tua dan jangan dibuat kembali file tersebut" #~ msgid "Don't echo commands" #~ msgstr "Jangan menampilkan perintah yang dijalankan" #~ msgid "Turns off -k" #~ msgstr "Matikan opsi -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Pertimbangkan FILE sebagai file yang baru." #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Jangan menspesifikasi -j atau --jobs jika sh.exe tidak ada." #~ msgid "Resetting make for single job mode." #~ msgstr "Mereset kembali make pada mode job tunggal." #~ msgid "Entering" #~ msgstr "Memasuki" #~ msgid "Leaving" #~ msgstr "Meninggalkan" #~ msgid "no file name for `%sinclude'" #~ msgstr "tidak terdapat nama file untuk `%s include'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "target `%s' meninggalkan persyaratan pola kosong" #~ msgid "# No variables." #~ msgstr "# Tidak ada variabel." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# rata - rata dari %.1f variabel per bucket, maksimal %u dalam satu " #~ "bucket.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# rata - rata dari %d.%d variabel per bucket, maksimal %u dalam satu " #~ "bucket.\n" make-dfsg-3.81.orig/po/insert-header.sin0000644000175000017500000000124010416553102020371 0ustar srivastasrivasta# Sed script that inserts the file called HEADER before the header entry. # # At each occurrence of a line starting with "msgid ", we execute the following # commands. At the first occurrence, insert the file. At the following # occurrences, do nothing. The distinction between the first and the following # occurrences is achieved by looking at the hold space. /^msgid /{ x # Test if the hold space is empty. s/m/m/ ta # Yes it was empty. First occurrence. Read the file. r HEADER # Output the file's contents by reading the next line. But don't lose the # current line while doing this. g N bb :a # The hold space was nonempty. Following occurrences. Do nothing. x :b } make-dfsg-3.81.orig/po/ja.gmo0000644000175000017500000010277110416553102016235 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðNiOjP‡P P¿P ÐPÜP%ùP Q-Q&IQpQƒQ Q³Q%¼Q.âQ*R/o[ ®[¸["×[ú[ \,\L\`\v\Ž\)ª\Ô\ ä\ ð\ü\ ]2$]W]f]m]}]/š]3Ê]þ]^0^ O^p^^"¬^(Ï^ø^$_$=_b_,r_,Ÿ_%Ì_,ò_`6`$J`6o`¦`0Å`ö`+a"iSi ri}i˜i«i'ºi'âi' j2j7Lj=„jÂj5àj*kAk#Pk'tkœk)¥k Ïk Ükékýkl--l0[l'Œl2´lçlm%m2Dm$wm œm½m'Ìm2ôm$'n LnYn knxn8nÈnÑnænïn'ÿn'o&=o#do-ˆo ¶o4Äo$ùo-p8Lp(…p&®pÕpA×p%q.?qnq7…q$½q.âq r;rZr.cr,’r>¿r4þr3sJs>gs¦s«sÆs1âs3t'Ht4pt"¥t"Èt ët u,u.Eu,tu7¡u Ùu(úu(#vLvcvlv tv v v©v½vÑv2åv:w7SwB‹wÎw×w!÷w x*:x"exˆx§x·xÓx êx)øx"y1yFy)[y…y”y8¬y.åyz)zIz]z2qz¤z5­zOãz@3{@t{.µ{@ä{%|&8|_| r|$}| ¢|°|&É| ð|û|} },}B?}6‚}8¹}ò}~~6~.U~-„~²~Í~)ä~> M/[‹*¢Í æ$€,,€Y€v€.x€2§€2Ú€. < R2s5¦;Ü*‚*C‚1n‚ ‚9¾‚)ø‚&"ƒ8Iƒ‚ƒ ƒ¯ƒ.ǃöƒ „@&„Jg„0²„4ã„M…0f…—…0±…â…CÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2004-05-18 00:47+0900 Last-Translator: GOTO Masanori Language-Team: Japanese MIME-Version: 1.0 Content-Type: text/plain; charset=EUC-JP Content-Transfer-Encoding: 8bit # %u ¸Ä¤Î `vpath' õº÷¥Ñ¥¹ # %u ¸Ä¤Î°ÅÌۥ롼¥ë, %u # %u ¸Ä¤Î¥Ñ¥¿¡¼¥ó»ØÄêÊÑ¿ô¤ÎÃÍ # ¥Ç¥£¥ì¥¯¥È¥ê # ¥Õ¥¡¥¤¥ë # Make ¥Ç¡¼¥¿¥Ù¡¼¥¹½ªÎ» %s # °ìÈ̤Π(`VPATH' ÊÑ¿ô) õº÷¥Ñ¥¹: # # °ÅÌۥ롼¥ë # Make ¥Ç¡¼¥¿¥Ù¡¼¥¹½ÐÎÏ %s # °ìÈ̤Π(`VPATH' ÊÑ¿ô) õº÷¥Ñ¥¹¤Ê¤·. # °ÅÌۥ롼¥ë¤Ê¤·. # ¥Ñ¥¿¡¼¥ó»ØÄêÊÑ¿ô¤ÎÃͤʤ·. # VPATH õº÷¥Ñ¥¹ # ÊÑ¿ô # ¥Õ¥¡¥¤¥ë¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ë¤Î¾õÂÖ: # µ¯Æ°¤Î¼ºÇÔ¤Ç %d ¸Ä¤Î°ú¿ô¤¬¥«¥¦¥ó¥È¤µ¤ì¤Þ¤·¤¿ ¤³¤Î¥×¥í¥°¥é¥à¤Ï %s ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿ ¤³¤Î¥×¥í¥°¥é¥à¤Ï %s (%s) ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿ --debug[=FLAGS] ÍÍ¡¹¤Ê¥¿¥¤¥×¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òɽ¼¨¤¹¤ë. --no-print-directory -w ¤ò¥ª¥Õ¤Ë¤¹¤ë. °ÅÌÛ¤ËÍ­¸ú¤Ê¾ì¹ç¤Ç¤â¥ª¥Õ¤Ë¤¹¤ë. --warn-undefined-variables ̤ÄêµÁ¤ÎÊÑ¿ô¤¬»²¾È¤µ¤ì¤¿¤È¤­¤Ë·Ù¹ð¤òȯ¤¹¤ë. -B, --always-make ̵¾ò·ï¤ËÁ´¥¿¡¼¥²¥Ã¥È¤ò make ¤¹¤ë. -C DIRECTORY, --directory=DIRECTORY make ³«»ÏÁ°¤Ë¥Ç¥£¥ì¥¯¥È¥ê DIRECTORY ¤Ø°Üư¤¹¤ë. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. ¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë makefile ¤òõº÷¤¹¤ë DIRECTORY. -R, --no-builtin-variables ¥Ó¥ë¥È¥¤¥ó¤ÎÊÑ¿ôÀßÄê¤ò̵¸ú¤Ë¤¹¤ë. -S, --no-keep-going, --stop -k ¥ª¥×¥·¥ç¥ó¤ò¥ª¥Õ¤Ë¤¹¤ë. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE FILE ¤ò¤¤¤Ä¤Ç¤âºÇ¿·¤È¤·¤Æ¸«¤Ê¤¹. -b, -m ¸ß´¹À­¤Î¤¿¤á¤Î¤â¤Î¤Ç, ̵»ë¤µ¤ì¤ë. -d ¥Ç¥Ð¥Ã¥°¾ðÊó¤òÂçÎ̤Ëɽ¼¨¤¹¤ë. -e, --environment-overrides ´Ä¶­ÊÑ¿ô¤¬ makefile Ãæ¤Îµ­½Ò¤ËÍ¥À褹¤ë -f FILE, --file=FILE, --makefile=FILE FILE ¤ò makefile ¤È¤·¤ÆÆÉ¤ß¹þ¤à -h, --help ¤³¤Î¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë. -i, --ignore-errors ¥³¥Þ¥ó¥É¤«¤éÊÖ¤µ¤ì¤¿¥¨¥é¡¼¤ò̵»ë¤¹¤ë. -j [N], --jobs[=N] °ìÅÙ¤Ë N ¸Ä¤Þ¤Ç¤Î¥¸¥ç¥Ö¤òµö²Ä; ̵°ú¿ô¤À¤È¥¸¥ç¥Ö¿ôÀ©¸Â¤Ê¤·. -k, --keep-going ¤¢¤ë¥¿¡¼¥²¥Ã¥È¤¬ make ¤Ç¤­¤Ê¤¯¤Æ¤â¼Â¹Ô¤ò³¤±¤ë. -l [N], --load-average[=N], --max-load[=N] Éé²Ù ¤¬ N ̤Ëþ¤Ç¤Ê¤¤¸Â¤êÊ£¿ô¤Î¥¸¥ç¥Ö¤ò³«»Ï¤·¤Ê¤¤. -n, --just-print, --dry-run, --recon ¥³¥Þ¥ó¥É¤ò¼ÂºÝ¤Ë¼Â¹Ô¤·¤Ê¤¤; ɽ¼¨¤¹¤ë¤Î¤ß. -o FILE, --old-file=FILE, --assume-old=FILE FILE ¤ò¤È¤Æ¤â¸Å¤¤¤â¤Î¤È¸«¤Ê¤·¤Æ, ºÆ make ¤·¤Ê¤¤. -p, --print-data-base make ¤ÎÆâÉô¥Ç¡¼¥¿¥Ù¡¼¥¹¤òɽ¼¨¤¹¤ë. -q, --question ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Ê¤¤; ¹¹¿·ºÑ¤Ç¤¢¤ë¤«¤É¤¦¤«¤ò½ªÎ»¥¹¥Æ¡¼¥¿¥¹¤ÇÄÌÃÎ. -r, --no-builtin-rules ¥Ó¥ë¥È¥¤¥ó¤Î°ÅÌۥ롼¥ë¤ò̵¸ú¤Ë¤¹¤ë. -s, --silent, --quiet ¥³¥Þ¥ó¥Éɽ¼¨¤ò¥¨¥³¡¼¤·¤Ê¤¤. -t, --touch ¥¿¡¼¥²¥Ã¥È¤òºÆ make ¤¹¤ëÂå¤ï¤ê¤Ë¥¿¥Ã¥Á¤¹¤ë. -v, --version make ¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë. -w, --print-directory ¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤òɽ¼¨¤¹¤ë. ÆüÉÕ %s VPATH ̾ `%s' ¤ò̵»ë¤·¤Þ¤¹. uid = %d, gid = %d, mode = 0%o. (¥Ó¥ë¥È¥¤¥ó): (¥³¥¢¥À¥ó¥×¤·¤Þ¤·¤¿) (8 ¸Ä¤Î¶õÇò¤Ç¤·¤¿¤¬, TAB ¤Î¤Ä¤â¤ê¤Ç¤·¤¿¤«?) (µ¤¤Ë¤·¤Ê¤¯¤Æ¤è¤¤) (`%s', %lu ¹ÔÌܤ«¤é) (`%s', %lu ¹ÔÌܤ«¤é): (̾Á°¤¬ÀÚ¤êµÍ¤á¤é¤ì¤¿¤«¤â) (¥Ç¥Õ¥©¥ë¥È¤ÎºÇ½ª¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤»¤ó) (~ ¤ÎŸ³«¤Ê¤·) (¥ê¥â¡¼¥È) (õº÷¥Ñ¥¹) ¸Ä¤Î¥Õ¥¡¥¤¥ë, ¸Ä¤ÎŬÍÑÉÔǽ¥Õ¥¡¥¤¥ë̾ ¸Ä¤ÎŬÍÑÉÔǽ¥Õ¥¡¥¤¥ë̾ (%lu ¸Ä¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ). (¤³¤³¤Þ¤Ç¤Ë). °Ê¾å.# ¤µ¤é¤Ë make:# ¥³¥Þ¥ó¥É¥é¥¤¥ó¥¿¡¼¥²¥Ã¥È.# ¥³¥Þ¥ó¥É¤¬¸½ºß¼Â¹ÔÃæ¤Ç¤¹ (*¤³¤ì¤Ï¥Ð¥°¤Ç¤¹*).# °Í¸´Ø·¸¥³¥Þ¥ó¥É¤¬¼Â¹ÔÃæ¤Ç¤¹ (*¤³¤ì¤Ï¥Ð¥°¤Ç¤¹*).# ¹¹¿·¤Ë¼ºÇÔ¤·¤Þ¤·¤¿.# ¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤»¤ó.# ¥Õ¥¡¥¤¥ë¤Ï¹¹¿·¤µ¤ì¤Æ¤¤¤Þ¤¹.# ¥Õ¥¡¥¤¥ë¤Ï¹¹¿·¤µ¤ì¤Æ¤¤¤Þ¤»¤ó.# ¥Õ¥¡¥¤¥ë¤ÏÃæ´ÖɬÍ×¾ò·ï¤Ç¤¹.# ¥Õ¥¡¥¤¥ë¤¬Èó¾ï¤Ë¸Å¤¤¤Ç¤¹.# °ÅÌۥ롼¥ë¤Îõº÷¤¬¹Ô¤ï¤ì¤Þ¤·¤¿.# °ÅÌۥ롼¥ë¤Îõº÷¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿.# °ÅÌÛ/ÀÅŪ¥Ñ¥¿¡¼¥ó¸ì´´: `%s' # `command_state' ¥á¥ó¥Ð¤Ë̵¸ú¤ÊÃÍ!# `update_status' ¥á¥ó¥Ð¤Ë̵¸ú¤ÊÃÍ!# ºÇ½ª½¤Àµ %s # ½¤Àµ»þ¹ï¤¬¥Á¥§¥Ã¥¯¤µ¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó.# ¹¹¿·¤¬É¬ÍפǤ¹ (-q ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Þ¤¹).# µ¿»÷¥¿¡¼¥²¥Ã¥È (.PHONY ¤ÎɬÍ×¾ò·ï)# ÆÃḚ̂·¤¤¤Î¥Õ¥¡¥¤¥ë (.PRECIOUS ¤ÎɬÍ×¾ò·ï)# ¹¹¿·¤ËÀ®¸ù¤·¤Þ¤·¤¿.# ¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿. # %s (key %s, mtime %d): # %s (key %s, mtime %d): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿. # %s: ¾õÂÖ¤òÄ´¤Ù¤é¤ì¤Þ¤»¤ó¤Ç¤·¤¿. # `vpath' õº÷¥Ñ¥¹¤Ï¤¢¤ê¤Þ¤»¤ó# ¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó:# ÊÑ¿ô¥»¥Ã¥È¤Î¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ë¤Î¾õÂÖ: %s (%d ¹ÔÌÜ) ÉÔÀµ¤Ê¥·¥§¥ë¥³¥ó¥Æ¥­¥¹¥È (!unixy && !batch_mode_shell) %s ¤Ï 30 ÉôÖÄä»ß¤·¤Þ¤¹...%s%s: %s%s: %s%s: ¥³¥Þ¥ó¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿%s: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤ËÆþ¤ê¤Þ¤¹ %s: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤«¤é½Ð¤Þ¤¹ %s: ¥·¥§¥ë¥×¥í¥°¥é¥à¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿%s: ¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬Èϰϳ°¤Ç¤¹ -- Âå¤ê¤Ë %s ¤È¤·¤Þ¤¹%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó ¡½ %c %s: ̵¸ú¤Ê¥ª¥×¥·¥ç¥ó ¡½ %c %s: ¥ª¥×¥·¥ç¥ó `%c%s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó %s: ¥ª¥×¥·¥ç¥ó `%s' ¤ÏÛ£Ëæ¤Ç¤¹ %s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹ %s: ¥ª¥×¥·¥ç¥ó `--%s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó %s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó %s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤ÏÛ£Ëæ¤Ç¤¹ %s: ¥ª¥×¥·¥ç¥ó¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹ ¡½ %c %s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `%c%s' %s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `--%s' %s: ¥æ¡¼¥¶ %lu (¼Â¸ú %lu), ¥°¥ë¡¼¥× %lu (¼Â¸ú %lu) %s¥¿¡¼¥²¥Ã¥È `%s' ¤ò make ¤¹¤ë¥ë¡¼¥ë¤¬¤¢¤ê¤Þ¤»¤ó%s%1$s`%3$s' ¤ËɬÍפʥ¿¡¼¥²¥Ã¥È `%2$s' ¤ò make ¤¹¤ë¥ë¡¼¥ë¤¬¤¢¤ê¤Þ¤»¤ó%4$s%s¤³¤ì¤Ï¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹. ÍøÍѵöÂú¤Ë¤Ä¤¤¤Æ¤Ï¥½¡¼¥¹¤ò %s¤´Í÷¤¯¤À¤µ¤¤. %s¾¦¶ÈÀ­¤äÆÃÄê¤ÎÌÜŪ¤Ø¤ÎŬ¹çÀ­¤ÎÇ¡²¿¤Ë´Ø¤ï¤é¤º, ̵ÊݾڤǤ¹. %s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤ËÆþ¤ê¤Þ¤¹ %s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤«¤é½Ð¤Þ¤¹ *** ½ñ¸Ë¥á¥ó¥Ð `%s' ¤Ï¿ʬµ¶Êª¤Ç¤¹ ¡½ ºï½ü¤·¤Þ¤»¤ó¤Ç¤·¤¿*** ÃæÃÇ. *** ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹*** Ãæ´Ö¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹*** ̤´°Î»¤Î¥¸¥ç¥Ö¤òÂԤäƤ¤¤Þ¤¹....*** ·Ù¹ð: .LOW_RESOLUTION_TIME ¥Õ¥¡¥¤¥ë `%s' ¤¬¹â²òÁüÅÙ¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹*** [%s] ½ñ¸Ë¥á¥ó¥Ð `%s' ¤Ï¿ʬµ¶Êª¤Ç¤¹ ¡½ ºï½ü¤·¤Þ¤»¤ó¤Ç¤·¤¿*** [%s] ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹*** [%s] ¥¨¥é¡¼ %d*** [%s] ¥¨¥é¡¼ 0x%x*** [%s] ¥¨¥é¡¼ 0x%x (̵»ë¤µ¤ì¤Þ¤·¤¿)-·Ù¹ð, CTRL-Y ¤Ï»Ò¥×¥í¥»¥¹¤ò»¶¤é¤«¤·¤¿¤Þ¤Þ¤Ë¤¹¤ë¤Ç¤·¤ç¤¦. -·Ù¹ð, DCL ¤«¤é¤Î CTRL-Y Áàºî¤òºÆ¤ÓÍ­¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ë¤«¤âÃΤì¤Þ¤»¤ó. . Ãæ»ß. .LIBPATTERNS Í×ÁÇ `%s' ¤¬¥Ñ¥¿¡¼¥ó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó; VPATH ̾ `%s' ¤ò»ÈÍѤ·¤Þ¤¹Abort ¤·¤Þ¤·¤¿¥¢¥é¡¼¥à¥¯¥í¥Ã¥¯°ÅÌۥ롼¥ë¤ÎºÆµ¢¤ò²óÈò¤·¤Þ¤¹. ¥Ð¥°: num_pattern_rules ¤¬´Ö°ã¤Ã¤Æ¤¤¤ë! %u != %u¥Ó¥ë¥È¥¤¥ó CD %s ¥Ó¥ë¥È¥¤¥ó RM %s ¥Ó¥ë¥È¥¤¥ó [%s][%s] ÉÔÀµ¤Ê¥·¥¹¥Æ¥à¥³¡¼¥ëÆÉ¤ß¼ê¤Î¤Ê¤¤¥Ñ¥¤¥×¤Ø¤Î½ñ¤­¹þ¤ß¥Ð¥¹¥¨¥é¡¼CPU »þ´Ö¤¬À©¸Â¤ò±Û¤¨¤Þ¤·¤¿»Ò¥×¥í¥»¥¹¥¢¥¯¥»¥¹»Ò¥×¥í¥»¥¹½ªÎ»½Û´Ä %s <- %s °Í¸´Ø·¸¤¬ÇË´þ¤µ¤ì¤Þ¤·¤¿.°ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤òÊÒÉÕ¤±¤Þ¤¹ °ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤ò¾Ãµî¤·¤Þ¤¹ Collisions=%ld/%ld=%.0f%%`%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤Ï, `%s' ¤òÁª¤Ö¤³¤È¤Çº£¸å̵»ë¤µ¤ì¤Þ¤¹.¥Õ¥¡¥¤¥ë `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤Ï°ÅÌۥ롼¥ë¤Îõº÷¤Ç¸«¤Ä¤«¤ê¤Þ¤·¤¿,`%s' ¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹. ¥Õ¥¡¥¤¥ë `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤¬ %s:%lu ¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿.¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤Î¸¡Æ¤¤ò¹Ô¤¤¤Þ¤¹. ºÆ³«¤µ¤ì¤Þ¤·¤¿¸µ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÌá¤ì¤Þ¤»¤ó¤Ç¤·¤¿.°ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤òºîÀ®¤·¤Þ¤¹ ¸½ºß»þ¹ïCustoms ¤¬¥¨¥¯¥¹¥Ý¡¼¥È¤·¤Æ¤¯¤ì¤Þ¤»¤ó: %s ´í¸±¥·¥°¥Ê¥ëEMT ¥È¥é¥Ã¥×spawn ¤Î¥¨¥é¡¼, %d ¥¨¥é¡¼, ¶õ¤Î¥³¥Þ¥ó¥É Âå¤ï¤ê¤Ë %s ¤ò¼Â¹Ô¤·¤Þ¤¹ `%s' µ¿»÷Ì¿Îá¤Î¸å¤í¤Ë̵´Ø·¸¤Êʸ»úÎ󤬤¢¤ê¤Þ¤¹`endef' µ¿»÷Ì¿Îá¤Î¸å¤í¤Ë̵´Ø·¸¤Êʸ»úÎ󤬤¢¤ê¤Þ¤¹makefile `%s' ¤ÎºÆ make ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿.¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎºÆ make ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿. ¥Õ¥¡¥¤¥ë `%s' ¤¬Â¸ºß¤·¤Þ¤»¤ó. ¥Õ¥¡¥¤¥ë `%s' ¤Ï¸¡Æ¤ºÑ¤ß¤Ç¤¹. ¥Õ¥¡¥¤¥ë¥µ¥¤¥ºÀ©¸Â¤ò±Û¤¨¤Þ¤·¤¿¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎɬÍ×¾ò·ï¤òËþ¤¿¤·¤Þ¤·¤¿. ¥Õ¥¡¥¤¥ë `%s' ¤Î¹¹¿·¤¬½ªÎ»¤·¤Þ¤·¤¿. ÉâÆ°¾®¿ôÅÀ¥³¥×¥í¥»¥Ã¥µ¤¬ÍøÍÑÉÔǽÉâÆ°¾®¿ôÅÀÎã³°`%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤ò¸«¤Ä¤±¤Þ¤·¤¿. VPATH `%2$s' ¤È¤·¤ÆÉ¬Í×¾ò·ï `%1$s' ¤ò¸«¤Ä¤±¤Þ¤·¤¿ ¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤òÄü¤á¤Þ¤¹. ¥Ï¥ó¥°¥¢¥Ã¥×È󯱴ü I/O ²ÄǽÀ­IOT ¥È¥é¥Ã¥×ÉÔÀµ¤Ê¥Ï¡¼¥É¥¦¥§¥¢Ì¿Îᥤ¥ó¥¯¥ë¡¼¥É¤µ¤ì¤ë makefile `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿.¾ðÊóÍ׵ᥢ¥¯¥»¥¹¸¢¸Â¤ò½é´ü²½³ä¤ê¹þ¤ßKill ¤µ¤ì¤Þ¤·¤¿À¸Â¸»Ò¥×¥í¥»¥¹ 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Ãæ´Ö¥Õ¥¡¥¤¥ë `%s' ¤Î¥ë¡¼¥ë¤òõ¤·¤Þ¤¹. `%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤òõ¤·¤Þ¤¹. `%s' ¤Î¤¿¤á¤Î½ñ¸Ë¥á¥ó¥Ð°ÅÌۥ롼¥ë¤òõ¤·¤Þ¤¹. make ¥¢¥¯¥»¥¹makefile `%s' ¼«¸ÊºÆµ¢¤Î¤ª¤½¤ì ¡½ ºÆ make ¤·¤Þ¤»¤ó. makefile `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿É¸½àÆþÎϤ«¤é¤Î makefile ¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿.akways-make ¥Õ¥é¥°¤¬¤¿¤Ã¤Æ¤¤¤ë¤Î¤Ç `%s' ¤ò make ¤·¤Þ¤¹. ¥á¥ó¥Ð `%s'%s: %ld ¥Ð¥¤¥È at %ld (%ld). ¥¿¡¼¥²¥Ã¥È `%s' ¤ÎºÆ make ¤¬É¬ÍפǤ¹. 0`%s' ¤Î¤¿¤á¤Î¥³¥Þ¥ó¥É¤¬Ìµ¤¯, ¤«¤Ä¼ÂºÝ¤ËÊѹ¹¤µ¤ì¤¿É¬Í×¾ò·ï¤¬¤Ê¤¤. `%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤¬¤¢¤ê¤Þ¤»¤ó. ¥¿¡¼¥²¥Ã¥È `%s' ¤òºÆ make ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤»¤ó¥¿¡¼¥²¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤ª¤é¤º, makefile ¤â¸«¤Ä¤«¤ê¤Þ¤»¤ó`%s' ¤ËÂФ·¤Æ¹Ô¤¦¤Ù¤­»ö¤Ï¤¢¤ê¤Þ¤»¤ó.»Ò¥×¥í¥»¥¹ 0x%08lx (%s) ¤Ë°õ¤¬¤Ä¤±¤é¤ì¤Þ¤·¤¿. ¥ª¥×¥·¥ç¥ó: ÊÂÎ󥸥ç¥Ö (-j) ¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó.ÅŸ»¾ã³²É¬Í×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤è¤ê¤â¿·¤·¤¤. ɬÍ×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤è¤ê¤â¸Å¤¤. ɬÍ×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤Ë¤Ä¤¤¤Æ½çÈÖÄ̤ê¤Î¤ß¹Ô¤¤¤Þ¤¹. ¥¿¡¼¥²¥Ã¥È `%2$s' ¤ÎɬÍ×¾ò·ï `%1$s' ¤¬Â¸ºß¤·¤Þ¤»¤ó. ¥×¥í¥Õ¥¡¥¤¥ë¥¿¥¤¥ÞËþλ¥Õ¥¡¥¤¥ë `%s' ¤òÀ°Íý¤·¤Þ¤¹. ¥Á¥§¥¤¥ó¤Ë»Ò¥×¥í¥»¥¹ 0x%08lx (%s) PID %ld%s ¤ò¼è¤ê¹þ¤ß¤Þ¤·¤¿. ½ªÎ»makefile `%s' ¤ÎÆÉ¤ß¹þ¤ßÃæmakefile ¤òÆÉ¤ß¹þ¤ß¤Þ¤¹... ¼º¤Ã¤¿»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld %s ¤ò²ó¼ý¤·¤Þ¤¹ À®¸ù¤·¤¿»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld %s ¤ò²ó¼ý¤·¤Þ¤¹ ºÇ¶á»î¤·¤Æ¹¹¿·¤Ë¼ºÇÔ¤·¤¿¥Õ¥¡¥¤¥ë `%s'. ºÆµ¢ÅªÊÑ¿ô `%s' ¤¬(ºÇ½ªÅª¤Ë)¤½¤ì¼«¿È¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹%s ¤Ø¥¨¥é¡¼¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿ %s ¤«¤éÆþÎÏ¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿ %s ¤Ø½ÐÎÏ¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿ Rehash=%d, ŬÍÑÉÔǽ¤Ê°ÅÌÛ¤ÎɬÍ×¾ò·ï `%s' ¤òµÑ²¼¤·¤Þ¤¹. ŬÍÑÉÔǽ¤Ê¥ë¡¼¥ë¤ÎɬÍ×¾ò·ï `%s' ¤òµÑ²¼¤·¤Þ¤¹. »Ò¥×¥í¥»¥¹ 0x%08lx (%s) ¤Î°õ¤ò²òÊü¤·¤Þ¤·¤¿. ¥Á¥§¥¤¥ó¤«¤é»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld%s ¤òºï½ü¤·¤Þ¤¹. Ãæ´Ö¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Æ¤¤¤Þ¤¹... ¥Ð¥°¥ì¥Ý¡¼¥È¤Ï ¤Þ¤Ç. ñ°ì¥¸¥ç¥Ö (-j1) ¥â¡¼¥É¤Ë¥ê¥»¥Ã¥È¤·¤Þ¤¹.¥ê¥½¡¼¥¹¤¬¼º¤ï¤ì¤Þ¤·¤¿SIGPHONESIGWIND¥á¥â¥ê°ãÈ¿¤Þ¤À¥Õ¥¡¥¤¥ë `%s' ¤Î¹¹¿·Ãæ¤Ç¤¹. °ì»þÄä»ß°ì»þÄä»ß (¥·¥°¥Ê¥ë)°ì»þÄä»ß (tty ÆþÎÏ)°ì»þÄä»ß (tty ½ÐÎÏ)¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎºÆ make ¤ËÀ®¸ù¤·¤Þ¤·¤¿. ¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥À¥Ö¥ë¥³¥í¥ó¤Ç, ¤«¤ÄɬÍ×¾ò·ï¤ò»ý¤¿¤Ê¤¤. ¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥¨¥é¡¼¤Ë¤è¤êºÆ make ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿.¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤Ï -q ¥ª¥×¥·¥ç¥óÉÕ¤Ç¤ÎºÆ make ¤¬É¬ÍפǤ¹. ¶¯À©½ªÎ»`%s' ¤ÎɬÍ×¾ò·ï¤ò make ¤·¤Þ¤¹. ¥È¥ì¡¼¥¹/¥Ö¥ì¥¤¥¯¥Ý¥¤¥ó¥È¥È¥é¥Ã¥×°ÅÌÛ¤ÎɬÍ×¾ò·ï `%s' ¤ò»î¤·¤Þ¤¹. ¸ì´´ `%.*s' ¤È¤Î¥Ñ¥¿¡¼¥ó¥ë¡¼¥ë¤ò»î¤·¤Þ¤¹. ¥ë¡¼¥ë¤ÎɬÍ×¾ò·ï `%s' ¤ò»î¤·¤Þ¤¹. ÉÔÌÀ¤Ê¥Ó¥ë¥È¥¤¥ó¥³¥Þ¥ó¥É '%s' ̤ÃΤΥ¨¥é¡¼ %dºÇ½ª¥¿¡¼¥²¥Ã¥È¤ò¹¹¿·Ãæ.... makefile ¤Î¹¹¿·Ãæ.... ¶ÛµÞ I/O ¾ò·ï»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó] [¥¿¡¼¥²¥Ã¥È] ... ¥æ¡¼¥¶¥¢¥¯¥»¥¹¥æ¡¼¥¶ÄêµÁ¥·¥°¥Ê¥ë 1¥æ¡¼¥¶ÄêµÁ¥·¥°¥Ê¥ë 2`%s' ÍѤΥǥե©¥ë¥È¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹. ²¾ÁÛ¥¿¥¤¥ÞËþλ·Ù¹ð: ¶õ¤Î¥ê¥À¥¤¥ì¥¯¥È ·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤Î½¤Àµ»þ¹ï¤¬ %.2g ÉÃʬ̤Íè¤Î»þ¹ï¤Ç¤¹·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤Î½¤Àµ»þ¹ï¤¬Ì¤Íè¤Î»þ¹ï¤Ç¤¹¥¦¥£¥ó¥É¥¦¥µ¥¤¥ºÊѹ¹[%s] ¥¨¥é¡¼ %d (̵»ë¤µ¤ì¤Þ¤·¤¿)`%s' ¤Ï¹¹¿·ºÑ¤ß¤Ç¤¹`override' µ¿»÷Ì¿Î᥵¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤µ¡Ç½¤ò»È¤ª¤¦¤È¤·¤Æ¤¤¤Þ¤¹: `%s'¼«Æ°ÊÑ¿ô¤·¤«¤·º£¤Ï `%s' ¤È `%s' ¤ÏƱ¤¸¥Õ¥¡¥¤¥ë¤È¸«¤Ê¤µ¤ì¤Þ¤¹.¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ëÍÑ %ld ¥Ð¥¤¥È¤Î³ä¤êÅö¤Æ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿: ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·¤¿¥À¥Ö¥ë¥³¥í¥ó `%s' ¤«¤é¥·¥ó¥°¥ë¥³¥í¥ó `%s' ¤Ë̾Á°¤òÊѤ¨¤é¤ì¤Þ¤»¤ó¥·¥ó¥°¥ë¥³¥í¥ó `%s' ¤«¤é¥À¥Ö¥ë¥³¥í¥ó `%s' ¤Ë̾Á°¤òÊѤ¨¤é¤ì¤Þ¤»¤ó¥·¥¹¥Æ¥àÉé²ÙÀ©¸Â¤Î²Ý¤¹¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿: ¤³¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¤Ï¥·¥¹¥Æ¥àÉé²ÙÀ©¸Â¤ò²Ã¤¨¤é¤ì¤Þ¤»¤ó¥³¥Þ¥ó¥É¥é¥¤¥óÊÑ¿ôºÇ½é¤Î¥¿¡¼¥²¥Ã¥È¤è¤êÁ°¤Ë¥³¥Þ¥ó¥É¤òµ¯Æ°¥¸¥ç¥Ö¥Ñ¥¤¥×ºîÀ®Ãæ¥Ç¥Õ¥©¥ë¥Èsleep(30) ¤¬½ª¤ï¤ê¤Þ¤·¤¿. ³¤±¤Þ¤¹. dup jobserver¶õ¤Î `override' µ¿»÷Ì¿Îá¶õ¤Îʸ»úÎó¤Ï¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ¤Ï̵¸ú¤Ç¤¹¶õ¤ÎÊÑ¿ô̾´Ä¶­ÊÑ¿ô-e ¥ª¥×¥·¥ç¥ó¤Ç¤Î´Ä¶­ÊÑ¿ô̵´Ø·¸¤Ê `%s'´Ø·¸¤Î¤Ê¤¤ `endef'find_and_set_shell ¥Ñ¥¹Ãµº÷¤Ç default_shell = %s ¤Ë¥»¥Ã¥È¤·¤Þ¤·¤¿ find_and_set_shell ¤Ï default_shell = %s ¤ËÀßÄꤷ¤Þ¤¹ `word' ´Ø¿ô¤Ø¤ÎÂè°ì°ú¿ô¤Ï 0 ¤è¤êÂ礭¤¯¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ófopen (°ì»þ¥Õ¥¡¥¤¥ë)fwrite (°ì»þ¥Õ¥¡¥¤¥ë)jobserver ¥Ñ¥¤¥×¤Î½é´ü²½ÆâÉô¥¨¥é¡¼: `%s' command_stateÆâÉô¥¨¥é¡¼: ̵¸ú¤Ê --jobserver-fds ʸ»úÎó `%s'ÆâÉô¥¨¥é¡¼: Ê£¿ô¤Î --jobserver-fds ¥ª¥×¥·¥ç¥ó̵¸ú¤Ê `override' µ¿»÷Ì¿Îá¾ò·ïÉô¤Îʸˡ¤¬Ìµ¸ú¤Ç¤¹lbr$ini_control ¤¬¼ºÇÔ¤·¤Þ¤·¤¿. ¾õÂÖ = %dlbr$set_module ¤¬¥â¥¸¥å¡¼¥ë¾ðÊó¤ÎÃê½Ð¤Ë¼ºÇÔ¤·¤Þ¤·¤¿. ¾õÂÖ = %dmakefile ÊÑ¿ô`endef' ¤ò·ç¤¤¤Æ¤ª¤ê, `define' ¤¬½ªÎ»¤µ¤ì¤Þ¤»¤ó`endif' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹¥³¥Þ¥ó¥É¤è¤êÁ°¤Ç¥ë¡¼¥ë¤¬»Ø¼¨¤µ¤ì¤Æ¤¤¤Þ¤»¤óʬΥµ­¹æ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹%s¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹°ÅÌۥ롼¥ë¤ÈÄ̾ï¥ë¡¼¥ë¤¬º®¤¶¤ê¤Þ¤·¤¿°ÅÌۥ롼¥ë¤ÈÀÅŪ¥Ñ¥¿¡¼¥ó¥ë¡¼¥ë¤¬º®¤¶¤ê¤Þ¤·¤¿Ê£¿ô¤Î¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤Ç¤¹0Èó¿ôÃͤÎÂè°ì°ú¿ô¤¬ `word' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿Èó¿ôÃͤÎÂè°ì°ú¿ô¤¬ `wordlist' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿Èó¿ôÃͤÎÂèÆó°ú¿ô¤¬ `wordlist' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿°ì¤Ä¤Î¾ò·ïÉô¤Ë¤Ä¤­°ì¤Ä¤·¤« `else' ¤ò»È¤¨¤Þ¤»¤ó¥¸¥ç¥Ö¤Î¥Ñ¥¤¥×¤Î readsys$search ¤¬ %d ¤Ç¼ºÇÔ¤·¤Þ¤·¤¿ ¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤È°ìÃפ·¤Þ¤»¤óƱ°ì¥ë¡¼¥ëÆâ¤Ç¥¿¡¼¥²¥Ã¥È `%s' ¤¬Ê£¿ô²óÍ¿¤¨¤é¤ì¤Þ¤·¤¿.¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤¬ : ¤È :: ¹àÌܤÎξÊý¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤¬ `%%' ¤ò´Þ¤ó¤Ç¤¤¤Þ¤»¤ó`-%c' ¥ª¥×¥·¥ç¥ó¤ÏÀµ¤ÎÀ°¿ô°ú¿ô¤òÍ׵ᤷ¤Þ¤¹VMS ¤Ç¤Ï½ñ¸Ë¤Î¥á¥ó¥Ð¤ò touch ¤¹¤ëµ¡Ç½¤¬¤¢¤ê¤Þ¤»¤ótouch: ½ñ¸Ë `%s' ¤¬¤¢¤ê¤Þ¤»¤ótouch: `%s' ¤Ø¤Î ar_member_touch ¤«¤é°Û¾ï¤ÊÃͤ¬ÊÖ¤ê¤Þ¤·¤¿touch: ¥á¥ó¥Ð `%s' ¤Ï `%s' Æâ¤Ë¤¢¤ê¤Þ¤»¤ótouch: `%s' ¤ÏÀµ¾ï¤Ê½ñ¸Ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó¥é¥¤¥Ö¥é¥ê `%s' ¤ò³«¤±¤º, ¥á¥ó¥Ð `%s' ¤Î¸¡º÷¤¬¤Ç¤­¤Þ¤»¤óÉÔÌÀ¤Ê¥Ç¥Ð¥Ã¥°¥ì¥Ù¥ë»ØÄê `%s'̤ÃΤΥ·¥°¥Ê¥ëunlink (°ì»þ¥Õ¥¡¥¤¥ë): ½ªÃ¼¤¬¤Ê¤¤´Ø¿ô¸Æ¤Ó½Ð¤· `%s': `%c' ¤¬¤¢¤ê¤Þ¤»¤ó½ªÃ¼¤Î¤Ê¤¤ÊÑ¿ô»²¾È²¾ÁÛ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·¤¿·Ù¹ð: »þ¹ï¤Î¤º¤ì¤ò¸¡½Ð. ÉÔ´°Á´¤Ê¥Ó¥ë¥É·ë²Ì¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó.·Ù¹ð: Éû¼¡ make ¤Ç -jN ¤ò¶¯À©»ØÄꤷ¤Þ¤·¤¿: jobserver ¥â¡¼¥É¤ò̵¸ú¤Ë¤·¤Þ¤¹.·Ù¹ð: NUL ʸ»ú¤¬¤¢¤ê¤Þ¤¹; ¹Ô¤Î»Ä¤ê¤Ï̵»ë¤µ¤ì¤Þ¤¹·Ù¹ð: ¥¿¡¼¥²¥Ã¥È `%s' ¤Ø¤Î¸Å¤¤¥³¥Þ¥ó¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹·Ù¹ð: jobserver ¤¬ÍøÍÑÉÔ²Ä: -j1 ¤ò»È¤¤, ¿Æ make ¥ë¡¼¥ë¤Ë `+' ¤òÄɲä·¤Þ¤·¤ç¤¦·Ù¹ð: ¥¿¡¼¥²¥Ã¥È `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤òÃÖ¤­´¹¤¨¤Þ¤¹·Ù¹ð: ̤ÄêµÁ¤ÎÊÑ¿ô `%.*s'windows32_openpipe (): process_init_fd() ¤¬¼ºÇÔ ¥¸¥ç¥Ö¥µ¡¼¥Ð¤Ø¤Î writemake-dfsg-3.81.orig/po/ja.po0000644000175000017500000013660110416553102016070 0ustar srivastasrivasta# Japanese message for make 3.80 # Copyright (C) 2001, 2003, 2004 Free Software Foundation, Inc. # GOTO Masanori , 2003-2004. # Daisuke Yamashita , 2001. # Thanks to NISHIJIMA Takanori # 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: 2004-05-18 00:47+0900\n" "Last-Translator: GOTO Masanori \n" "Language-Team: Japanese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=EUC-JP\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤Ê¤¤µ¡Ç½¤ò»È¤ª¤¦¤È¤·¤Æ¤¤¤Þ¤¹: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "VMS ¤Ç¤Ï½ñ¸Ë¤Î¥á¥ó¥Ð¤ò touch ¤¹¤ëµ¡Ç½¤¬¤¢¤ê¤Þ¤»¤ó" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: ½ñ¸Ë `%s' ¤¬¤¢¤ê¤Þ¤»¤ó" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' ¤ÏÀµ¾ï¤Ê½ñ¸Ë¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: ¥á¥ó¥Ð `%s' ¤Ï `%s' Æâ¤Ë¤¢¤ê¤Þ¤»¤ó" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: `%s' ¤Ø¤Î ar_member_touch ¤«¤é°Û¾ï¤ÊÃͤ¬ÊÖ¤ê¤Þ¤·¤¿" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module ¤¬¥â¥¸¥å¡¼¥ë¾ðÊó¤ÎÃê½Ð¤Ë¼ºÇÔ¤·¤Þ¤·¤¿. ¾õÂÖ = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control ¤¬¼ºÇÔ¤·¤Þ¤·¤¿. ¾õÂÖ = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "¥é¥¤¥Ö¥é¥ê `%s' ¤ò³«¤±¤º, ¥á¥ó¥Ð `%s' ¤Î¸¡º÷¤¬¤Ç¤­¤Þ¤»¤ó" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "¥á¥ó¥Ð `%s'%s: %ld ¥Ð¥¤¥È at %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (̾Á°¤¬ÀÚ¤êµÍ¤á¤é¤ì¤¿¤«¤â)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " ÆüÉÕ %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** ÃæÃÇ.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] ½ñ¸Ë¥á¥ó¥Ð `%s' ¤Ï¿ʬµ¶Êª¤Ç¤¹ ¡½ ºï½ü¤·¤Þ¤»¤ó¤Ç¤·¤¿" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** ½ñ¸Ë¥á¥ó¥Ð `%s' ¤Ï¿ʬµ¶Êª¤Ç¤¹ ¡½ ºï½ü¤·¤Þ¤»¤ó¤Ç¤·¤¿" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** ¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹" #: commands.c:599 msgid "# commands to execute" msgstr "# ¼Â¹Ô¤¹¤ë¥³¥Þ¥ó¥É" #: commands.c:602 msgid " (built-in):" msgstr " (¥Ó¥ë¥È¥¤¥ó):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (`%s', %lu ¹ÔÌܤ«¤é):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# ¥Ç¥£¥ì¥¯¥È¥ê\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: ¾õÂÖ¤òÄ´¤Ù¤é¤ì¤Þ¤»¤ó¤Ç¤·¤¿.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (key %s, mtime %d): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (device %d, inode [%d,%d,%d]): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (device %ld, inode %ld): ³«¤±¤Þ¤»¤ó¤Ç¤·¤¿.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (key %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (device %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (device %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "0" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " ¸Ä¤Î¥Õ¥¡¥¤¥ë, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "0" #: dir.c:1058 msgid " impossibilities" msgstr " ¸Ä¤ÎŬÍÑÉÔǽ¥Õ¥¡¥¤¥ë̾" #: dir.c:1062 msgid " so far." msgstr " (¤³¤³¤Þ¤Ç¤Ë)." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " ¸Ä¤ÎŬÍÑÉÔǽ¥Õ¥¡¥¤¥ë̾ (%lu ¸Ä¤Î¥Ç¥£¥ì¥¯¥È¥êÆâ).\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "ºÆµ¢ÅªÊÑ¿ô `%s' ¤¬(ºÇ½ªÅª¤Ë)¤½¤ì¼«¿È¤ò»²¾È¤·¤Æ¤¤¤Þ¤¹" #: expand.c:266 msgid "unterminated variable reference" msgstr "½ªÃ¼¤Î¤Ê¤¤ÊÑ¿ô»²¾È" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤¬ %s:%lu ¤Ç»ØÄꤵ¤ì¤Þ¤·¤¿." #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤Ï°ÅÌۥ롼¥ë¤Îõº÷¤Ç¸«¤Ä¤«¤ê¤Þ¤·¤¿," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "¤·¤«¤·º£¤Ï `%s' ¤È `%s' ¤ÏƱ¤¸¥Õ¥¡¥¤¥ë¤È¸«¤Ê¤µ¤ì¤Þ¤¹." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "`%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤Ï, `%s' ¤òÁª¤Ö¤³¤È¤Çº£¸å̵»ë¤µ¤ì¤Þ¤¹." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "¥·¥ó¥°¥ë¥³¥í¥ó `%s' ¤«¤é¥À¥Ö¥ë¥³¥í¥ó `%s' ¤Ë̾Á°¤òÊѤ¨¤é¤ì¤Þ¤»¤ó" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "¥À¥Ö¥ë¥³¥í¥ó `%s' ¤«¤é¥·¥ó¥°¥ë¥³¥í¥ó `%s' ¤Ë̾Á°¤òÊѤ¨¤é¤ì¤Þ¤»¤ó" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Ãæ´Ö¥Õ¥¡¥¤¥ë `%s' ¤òºï½ü¤·¤Þ¤¹" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Ãæ´Ö¥Õ¥¡¥¤¥ë¤òºï½ü¤·¤Æ¤¤¤Þ¤¹...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: ¥¿¥¤¥à¥¹¥¿¥ó¥×¤¬Èϰϳ°¤Ç¤¹ -- Âå¤ê¤Ë %s ¤È¤·¤Þ¤¹" #: file.c:782 msgid "Current time" msgstr "¸½ºß»þ¹ï" #: file.c:881 msgid "# Not a target:" msgstr "# ¥¿¡¼¥²¥Ã¥È¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# ÆÃḚ̂·¤¤¤Î¥Õ¥¡¥¤¥ë (.PRECIOUS ¤ÎɬÍ×¾ò·ï)" #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# µ¿»÷¥¿¡¼¥²¥Ã¥È (.PHONY ¤ÎɬÍ×¾ò·ï)" #: file.c:907 msgid "# Command-line target." msgstr "# ¥³¥Þ¥ó¥É¥é¥¤¥ó¥¿¡¼¥²¥Ã¥È." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# ¥Ç¥Õ¥©¥ë¥È¤Þ¤¿¤Ï MAKEFILES ¥á¥¤¥¯¥Õ¥¡¥¤¥ë." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# °ÅÌۥ롼¥ë¤Îõº÷¤¬¹Ô¤ï¤ì¤Þ¤·¤¿." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# °ÅÌۥ롼¥ë¤Îõº÷¤Ï¹Ô¤ï¤ì¤Þ¤»¤ó¤Ç¤·¤¿." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# °ÅÌÛ/ÀÅŪ¥Ñ¥¿¡¼¥ó¸ì´´: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# ¥Õ¥¡¥¤¥ë¤ÏÃæ´ÖɬÍ×¾ò·ï¤Ç¤¹." #: file.c:919 msgid "# Also makes:" msgstr "# ¤µ¤é¤Ë make:" #: file.c:925 msgid "# Modification time never checked." msgstr "# ½¤Àµ»þ¹ï¤¬¥Á¥§¥Ã¥¯¤µ¤ì¤ë¤³¤È¤Ï¤¢¤ê¤Þ¤»¤ó." #: file.c:927 msgid "# File does not exist." msgstr "# ¥Õ¥¡¥¤¥ë¤¬Â¸ºß¤·¤Þ¤»¤ó." #: file.c:929 msgid "# File is very old." msgstr "# ¥Õ¥¡¥¤¥ë¤¬Èó¾ï¤Ë¸Å¤¤¤Ç¤¹." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# ºÇ½ª½¤Àµ %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# ¥Õ¥¡¥¤¥ë¤Ï¹¹¿·¤µ¤ì¤Æ¤¤¤Þ¤¹." #: file.c:937 msgid "# File has not been updated." msgstr "# ¥Õ¥¡¥¤¥ë¤Ï¹¹¿·¤µ¤ì¤Æ¤¤¤Þ¤»¤ó." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# ¥³¥Þ¥ó¥É¤¬¸½ºß¼Â¹ÔÃæ¤Ç¤¹ (*¤³¤ì¤Ï¥Ð¥°¤Ç¤¹*)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# °Í¸´Ø·¸¥³¥Þ¥ó¥É¤¬¼Â¹ÔÃæ¤Ç¤¹ (*¤³¤ì¤Ï¥Ð¥°¤Ç¤¹*)." #: file.c:953 msgid "# Successfully updated." msgstr "# ¹¹¿·¤ËÀ®¸ù¤·¤Þ¤·¤¿." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# ¹¹¿·¤¬É¬ÍפǤ¹ (-q ¤¬¥»¥Ã¥È¤µ¤ì¤Æ¤¤¤Þ¤¹)." #: file.c:960 msgid "# Failed to be updated." msgstr "# ¹¹¿·¤Ë¼ºÇÔ¤·¤Þ¤·¤¿." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# `update_status' ¥á¥ó¥Ð¤Ë̵¸ú¤ÊÃÍ!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# `command_state' ¥á¥ó¥Ð¤Ë̵¸ú¤ÊÃÍ!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# ¥Õ¥¡¥¤¥ë" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# ¥Õ¥¡¥¤¥ë¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ë¤Î¾õÂÖ:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "Èó¿ôÃͤÎÂè°ì°ú¿ô¤¬ `word' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "`word' ´Ø¿ô¤Ø¤ÎÂè°ì°ú¿ô¤Ï 0 ¤è¤êÂ礭¤¯¤Ê¤±¤ì¤Ð¤Ê¤ê¤Þ¤»¤ó" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "Èó¿ôÃͤÎÂè°ì°ú¿ô¤¬ `wordlist' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "Èó¿ôÃͤÎÂèÆó°ú¿ô¤¬ `wordlist' ´Ø¿ô¤ËÍ¿¤¨¤é¤ì¤Þ¤·¤¿" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) ¤¬¼ºÇÔ (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) ¤¬¼ºÇÔ (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() ¤¬¼ºÇÔ (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() ¤¬¼ºÇÔ\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "°ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤ò¾Ãµî¤·¤Þ¤¹\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "°ú¿ô¤Î¿ô(%d)¤¬´Ø¿ô `%s' ¤Ë¤È¤Ã¤ÆÉÔ½½Ê¬¤Ç¤¹" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¤Ï¼ÂÁõ¤µ¤ì¤Æ¤¤¤Þ¤»¤ó: ´Ø¿ô `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "½ªÃ¼¤¬¤Ê¤¤´Ø¿ô¸Æ¤Ó½Ð¤· `%s': `%c' ¤¬¤¢¤ê¤Þ¤»¤ó" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤ÏÛ£Ëæ¤Ç¤¹\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `--%s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%c%s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `%s' ¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ǧ¼±¤Ç¤­¤Ê¤¤¥ª¥×¥·¥ç¥ó `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ÉÔÀµ¤Ê¥ª¥×¥·¥ç¥ó ¡½ %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ̵¸ú¤Ê¥ª¥×¥·¥ç¥ó ¡½ %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó¤Ë¤Ï°ú¿ô¤¬É¬ÍפǤ¹ ¡½ %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤ÏÛ£Ëæ¤Ç¤¹\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ¥ª¥×¥·¥ç¥ó `-W %s' ¤Ï°ú¿ô¤ò¼è¤ê¤Þ¤»¤ó\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" "¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ëÍÑ %ld ¥Ð¥¤¥È¤Î³ä¤êÅö¤Æ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿: ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·" "¤¿" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Load=%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 "Collisions=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "`%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤òõ¤·¤Þ¤¹.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "`%s' ¤Î¤¿¤á¤Î½ñ¸Ë¥á¥ó¥Ð°ÅÌۥ롼¥ë¤òõ¤·¤Þ¤¹.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "°ÅÌۥ롼¥ë¤ÎºÆµ¢¤ò²óÈò¤·¤Þ¤¹.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "¸ì´´ `%.*s' ¤È¤Î¥Ñ¥¿¡¼¥ó¥ë¡¼¥ë¤ò»î¤·¤Þ¤¹.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "ŬÍÑÉÔǽ¤Ê°ÅÌÛ¤ÎɬÍ×¾ò·ï `%s' ¤òµÑ²¼¤·¤Þ¤¹.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "ŬÍÑÉÔǽ¤Ê¥ë¡¼¥ë¤ÎɬÍ×¾ò·ï `%s' ¤òµÑ²¼¤·¤Þ¤¹.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "°ÅÌÛ¤ÎɬÍ×¾ò·ï `%s' ¤ò»î¤·¤Þ¤¹.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "¥ë¡¼¥ë¤ÎɬÍ×¾ò·ï `%s' ¤ò»î¤·¤Þ¤¹.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "VPATH `%2$s' ¤È¤·¤ÆÉ¬Í×¾ò·ï `%1$s' ¤ò¸«¤Ä¤±¤Þ¤·¤¿\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Ãæ´Ö¥Õ¥¡¥¤¥ë `%s' ¤Î¥ë¡¼¥ë¤òõ¤·¤Þ¤¹.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (°ì»þ¥Õ¥¡¥¤¥ë)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] ¥¨¥é¡¼ 0x%x (̵»ë¤µ¤ì¤Þ¤·¤¿)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] ¥¨¥é¡¼ 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] ¥¨¥é¡¼ %d (̵»ë¤µ¤ì¤Þ¤·¤¿)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] ¥¨¥é¡¼ %d" #: job.c:399 msgid " (core dumped)" msgstr " (¥³¥¢¥À¥ó¥×¤·¤Þ¤·¤¿)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ̤´°Î»¤Î¥¸¥ç¥Ö¤òÂԤäƤ¤¤Þ¤¹...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "À¸Â¸»Ò¥×¥í¥»¥¹ 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (¥ê¥â¡¼¥È)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "¼º¤Ã¤¿»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld %s ¤ò²ó¼ý¤·¤Þ¤¹\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "À®¸ù¤·¤¿»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld %s ¤ò²ó¼ý¤·¤Þ¤¹\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "°ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤òÊÒÉÕ¤±¤Þ¤¹\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "¥Á¥§¥¤¥ó¤«¤é»Ò¥×¥í¥»¥¹ 0x%08lx PID %ld%s ¤òºï½ü¤·¤Þ¤¹.\n" #: job.c:862 msgid "write jobserver" msgstr "¥¸¥ç¥Ö¥µ¡¼¥Ð¤Ø¤Î write" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "»Ò¥×¥í¥»¥¹ 0x%08lx (%s) ¤Î°õ¤ò²òÊü¤·¤Þ¤·¤¿.\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() ¤¬¼ºÇÔ¤·¥×¥í¥»¥¹µ¯Æ°¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿ (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "µ¯Æ°¤Î¼ºÇÔ¤Ç %d ¸Ä¤Î°ú¿ô¤¬¥«¥¦¥ó¥È¤µ¤ì¤Þ¤·¤¿\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "¥Á¥§¥¤¥ó¤Ë»Ò¥×¥í¥»¥¹ 0x%08lx (%s) PID %ld%s ¤ò¼è¤ê¹þ¤ß¤Þ¤·¤¿.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "»Ò¥×¥í¥»¥¹ 0x%08lx (%s) ¤Ë°õ¤¬¤Ä¤±¤é¤ì¤Þ¤·¤¿.\n" #: job.c:1718 msgid "read jobs pipe" msgstr "¥¸¥ç¥Ö¤Î¥Ñ¥¤¥×¤Î read" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "¤³¤Î¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¥·¥¹¥Æ¥à¤Ç¤Ï¥·¥¹¥Æ¥àÉé²ÙÀ©¸Â¤ò²Ã¤¨¤é¤ì¤Þ¤»¤ó" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "¥·¥¹¥Æ¥àÉé²ÙÀ©¸Â¤Î²Ý¤¹¤³¤È¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿: " #: 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 "process_easy() ¤¬¼ºÇÔ¤·¥×¥í¥»¥¹µ¯Æ°¤¬¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿ (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 ¤Î»Ò¥×¥í¥»¥¹¤ò²ó¼ý¤·, pid %d ¤òÂÔ¤Á³¤±¤Þ¤¹\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: ¥³¥Þ¥ó¥É¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: ¥·¥§¥ë¥×¥í¥°¥é¥à¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿" #: 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 ¤¬Êѹ¹¤µ¤ì¤Þ¤·¤¿ (Á°¤Ï `%s', º£¤Ï `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "°ì»þŪ¤Ê¥Ð¥Ã¥Á¥Õ¥¡¥¤¥ë %s ¤òºîÀ®¤·¤Þ¤¹\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (%d ¹ÔÌÜ) ÉÔÀµ¤Ê¥·¥§¥ë¥³¥ó¥Æ¥­¥¹¥È (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "¥ª¥×¥·¥ç¥ó:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m ¸ß´¹À­¤Î¤¿¤á¤Î¤â¤Î¤Ç, ̵»ë¤µ¤ì¤ë.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make ̵¾ò·ï¤ËÁ´¥¿¡¼¥²¥Ã¥È¤ò make ¤¹¤ë.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C DIRECTORY, --directory=DIRECTORY\n" " make ³«»ÏÁ°¤Ë¥Ç¥£¥ì¥¯¥È¥ê DIRECTORY ¤Ø°Üư¤¹" "¤ë.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr " -d ¥Ç¥Ð¥Ã¥°¾ðÊó¤òÂçÎ̤Ëɽ¼¨¤¹¤ë.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr " --debug[=FLAGS] ÍÍ¡¹¤Ê¥¿¥¤¥×¤Î¥Ç¥Ð¥Ã¥°¾ðÊó¤òɽ¼¨¤¹¤ë.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " ´Ä¶­ÊÑ¿ô¤¬ makefile Ãæ¤Îµ­½Ò¤ËÍ¥À褹¤ë\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f FILE, --file=FILE, --makefile=FILE\n" " FILE ¤ò makefile ¤È¤·¤ÆÆÉ¤ß¹þ¤à\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help ¤³¤Î¥á¥Ã¥»¡¼¥¸¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors ¥³¥Þ¥ó¥É¤«¤éÊÖ¤µ¤ì¤¿¥¨¥é¡¼¤ò̵»ë¤¹¤ë.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" " ¥¤¥ó¥¯¥ë¡¼¥É¤¹¤ë makefile ¤òõº÷¤¹¤ë " "DIRECTORY.\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] °ìÅÙ¤Ë N ¸Ä¤Þ¤Ç¤Î¥¸¥ç¥Ö¤òµö²Ä; ̵°ú¿ô¤À¤È¥¸¥ç¥Ö" "¿ôÀ©¸Â¤Ê¤·.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going ¤¢¤ë¥¿¡¼¥²¥Ã¥È¤¬ make ¤Ç¤­¤Ê¤¯¤Æ¤â¼Â¹Ô¤ò³¤±" "¤ë.\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" " Éé²Ù ¤¬ N ̤Ëþ¤Ç¤Ê¤¤¸Â¤êÊ£¿ô¤Î¥¸¥ç¥Ö¤ò³«»Ï¤·¤Ê" "¤¤.\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" " ¥³¥Þ¥ó¥É¤ò¼ÂºÝ¤Ë¼Â¹Ô¤·¤Ê¤¤; ɽ¼¨¤¹¤ë¤Î¤ß.\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 FILE, --old-file=FILE, --assume-old=FILE\n" " FILE ¤ò¤È¤Æ¤â¸Å¤¤¤â¤Î¤È¸«¤Ê¤·¤Æ, ºÆ make ¤·¤Ê" "¤¤.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr " -p, --print-data-base make ¤ÎÆâÉô¥Ç¡¼¥¿¥Ù¡¼¥¹¤òɽ¼¨¤¹¤ë.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question ¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Ê¤¤; ¹¹¿·ºÑ¤Ç¤¢¤ë¤«¤É¤¦¤«¤ò½ª" "λ¥¹¥Æ¡¼¥¿¥¹¤ÇÄÌÃÎ.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr " -r, --no-builtin-rules ¥Ó¥ë¥È¥¤¥ó¤Î°ÅÌۥ롼¥ë¤ò̵¸ú¤Ë¤¹¤ë.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr " -R, --no-builtin-variables ¥Ó¥ë¥È¥¤¥ó¤ÎÊÑ¿ôÀßÄê¤ò̵¸ú¤Ë¤¹¤ë.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet ¥³¥Þ¥ó¥Éɽ¼¨¤ò¥¨¥³¡¼¤·¤Ê¤¤.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " -k ¥ª¥×¥·¥ç¥ó¤ò¥ª¥Õ¤Ë¤¹¤ë.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch ¥¿¡¼¥²¥Ã¥È¤òºÆ make ¤¹¤ëÂå¤ï¤ê¤Ë¥¿¥Ã¥Á¤¹¤ë.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version make ¤Î¥Ð¡¼¥¸¥ç¥óÈÖ¹æ¤òɽ¼¨¤·¤Æ½ªÎ»¤¹¤ë.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory ¥«¥ì¥ó¥È¥Ç¥£¥ì¥¯¥È¥ê¤òɽ¼¨¤¹¤ë.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory -w ¤ò¥ª¥Õ¤Ë¤¹¤ë. °ÅÌÛ¤ËÍ­¸ú¤Ê¾ì¹ç¤Ç¤â¥ª¥Õ¤Ë¤¹" "¤ë.\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 FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " FILE ¤ò¤¤¤Ä¤Ç¤âºÇ¿·¤È¤·¤Æ¸«¤Ê¤¹.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables ̤ÄêµÁ¤ÎÊÑ¿ô¤¬»²¾È¤µ¤ì¤¿¤È¤­¤Ë·Ù¹ð¤òȯ¤¹¤ë.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "¶õ¤Îʸ»úÎó¤Ï¥Õ¥¡¥¤¥ë̾¤È¤·¤Æ¤Ï̵¸ú¤Ç¤¹" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "ÉÔÌÀ¤Ê¥Ç¥Ð¥Ã¥°¥ì¥Ù¥ë»ØÄê `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: ³ä¤ê¹þ¤ß/Îã³°¤òÊ᪤·¤Þ¤·¤¿ (code = 0x%x, addr = 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" "¥Ï¥ó¥É¥ë¤µ¤ì¤Ê¤«¤Ã¤¿Îã³°¥Õ¥£¥ë¥¿¤¬¥×¥í¥°¥é¥à %s ¤«¤é¸Æ¤Ð¤ì¤Þ¤·¤¿\n" "Îã³°¥³¡¼¥É = %x\n" "Îã³°¥Õ¥é¥° = %x\n" "Îã³°¥¢¥É¥ì¥¹ = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "¥¢¥¯¥»¥¹Êݸî°ãÈ¿: ¥¢¥É¥ì¥¹ %x ¤Ç¤Î½ñ¤­¹þ¤ßÁàºî\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "¥¢¥¯¥»¥¹Êݸî°ãÈ¿: ¥¢¥É¥ì¥¹ %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 ¤Ï 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 ¥Ñ¥¹Ãµº÷¤Ç default_shell = %s ¤Ë¥»¥Ã¥È¤·¤Þ¤·¤¿\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s ¤Ï 30 ÉôÖÄä»ß¤·¤Þ¤¹..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "sleep(30) ¤¬½ª¤ï¤ê¤Þ¤·¤¿. ³¤±¤Þ¤¹.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "ɸ½àÆþÎϤ«¤é¤Î makefile ¤¬Æó²ó»ØÄꤵ¤ì¤Þ¤·¤¿." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (°ì»þ¥Õ¥¡¥¤¥ë)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (°ì»þ¥Õ¥¡¥¤¥ë)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "ÊÂÎ󥸥ç¥Ö (-j) ¤Ï¤³¤Î¥×¥é¥Ã¥È¥Õ¥©¡¼¥à¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Þ¤»¤ó." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "ñ°ì¥¸¥ç¥Ö (-j1) ¥â¡¼¥É¤Ë¥ê¥»¥Ã¥È¤·¤Þ¤¹." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "ÆâÉô¥¨¥é¡¼: Ê£¿ô¤Î --jobserver-fds ¥ª¥×¥·¥ç¥ó" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "ÆâÉô¥¨¥é¡¼: ̵¸ú¤Ê --jobserver-fds ʸ»úÎó `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "·Ù¹ð: Éû¼¡ make ¤Ç -jN ¤ò¶¯À©»ØÄꤷ¤Þ¤·¤¿: jobserver ¥â¡¼¥É¤ò̵¸ú¤Ë¤·¤Þ¤¹." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "·Ù¹ð: jobserver ¤¬ÍøÍÑÉÔ²Ä: -j1 ¤ò»È¤¤, ¿Æ make ¥ë¡¼¥ë¤Ë `+' ¤òÄɲä·¤Þ¤·¤ç¤¦" #: main.c:1710 msgid "creating jobs pipe" msgstr "¥¸¥ç¥Ö¥Ñ¥¤¥×ºîÀ®Ãæ" #: main.c:1725 msgid "init jobserver pipe" msgstr "jobserver ¥Ñ¥¤¥×¤Î½é´ü²½" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "makefile ¤Î¹¹¿·Ãæ....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "makefile `%s' ¼«¸ÊºÆµ¢¤Î¤ª¤½¤ì ¡½ ºÆ make ¤·¤Þ¤»¤ó.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "makefile `%s' ¤ÎºÆ make ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "¥¤¥ó¥¯¥ë¡¼¥É¤µ¤ì¤ë makefile `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "makefile `%s' ¤¬¸«¤Ä¤«¤ê¤Þ¤»¤ó¤Ç¤·¤¿" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "¸µ¤Î¥Ç¥£¥ì¥¯¥È¥ê¤ËÌá¤ì¤Þ¤»¤ó¤Ç¤·¤¿." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "ºÆ¼Â¹Ô¤·¤Þ¤¹:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (°ì»þ¥Õ¥¡¥¤¥ë): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "¥¿¡¼¥²¥Ã¥È¤¬»ØÄꤵ¤ì¤Æ¤ª¤é¤º, makefile ¤â¸«¤Ä¤«¤ê¤Þ¤»¤ó" #: main.c:2191 msgid "No targets" msgstr "¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤»¤ó" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "ºÇ½ª¥¿¡¼¥²¥Ã¥È¤ò¹¹¿·Ãæ....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "·Ù¹ð: »þ¹ï¤Î¤º¤ì¤ò¸¡½Ð. ÉÔ´°Á´¤Ê¥Ó¥ë¥É·ë²Ì¤Ë¤Ê¤ë¤«¤â¤·¤ì¤Þ¤»¤ó." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "»È¤¤Êý: %s [¥ª¥×¥·¥ç¥ó] [¥¿¡¼¥²¥Ã¥È] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "¤³¤Î¥×¥í¥°¥é¥à¤Ï %s ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "¤³¤Î¥×¥í¥°¥é¥à¤Ï %s (%s) ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "¥Ð¥°¥ì¥Ý¡¼¥È¤Ï ¤Þ¤Ç.\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "`-%c' ¥ª¥×¥·¥ç¥ó¤ÏÀµ¤ÎÀ°¿ô°ú¿ô¤òÍ׵ᤷ¤Þ¤¹" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "`-%c' ¥ª¥×¥·¥ç¥ó¤ÏÀµ¤ÎÀ°¿ô°ú¿ô¤òÍ׵ᤷ¤Þ¤¹" #: 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 "" "%s¤³¤ì¤Ï¥Õ¥ê¡¼¥½¥Õ¥È¥¦¥§¥¢¤Ç¤¹. ÍøÍѵöÂú¤Ë¤Ä¤¤¤Æ¤Ï¥½¡¼¥¹¤ò\n" "%s¤´Í÷¤¯¤À¤µ¤¤.\n" "%s¾¦¶ÈÀ­¤äÆÃÄê¤ÎÌÜŪ¤Ø¤ÎŬ¹çÀ­¤ÎÇ¡²¿¤Ë´Ø¤ï¤é¤º, ̵ÊݾڤǤ¹.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "¤³¤Î¥×¥í¥°¥é¥à¤Ï %s ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "¤³¤Î¥×¥í¥°¥é¥à¤Ï %s (%s) ÍѤ˥ӥë¥É¤µ¤ì¤Þ¤·¤¿\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Make ¥Ç¡¼¥¿¥Ù¡¼¥¹½ÐÎÏ %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Make ¥Ç¡¼¥¿¥Ù¡¼¥¹½ªÎ» %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê(¥Ç¥£¥ì¥¯¥È¥ê̾ÉÔÌÀ)¤ËÆþ¤ê¤Þ¤¹" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê(¥Ç¥£¥ì¥¯¥È¥ê̾ÉÔÌÀ)¤«¤é½Ð¤Þ¤¹" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤ËÆþ¤ê¤Þ¤¹\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤«¤é½Ð¤Þ¤¹\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê(¥Ç¥£¥ì¥¯¥È¥ê̾ÉÔÌÀ)¤ËÆþ¤ê¤Þ¤¹" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê(¥Ç¥£¥ì¥¯¥È¥ê̾ÉÔÌÀ)¤«¤é½Ð¤Þ¤¹" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤ËÆþ¤ê¤Þ¤¹\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: ¥Ç¥£¥ì¥¯¥È¥ê `%s' ¤«¤é½Ð¤Þ¤¹\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Ãæ»ß.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "̤ÃΤΥ¨¥é¡¼ %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 "²¾ÁÛ¥á¥â¥ê¤ò»È¤¤²Ì¤¿¤·¤Þ¤·¤¿" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: ¥æ¡¼¥¶ %lu (¼Â¸ú %lu), ¥°¥ë¡¼¥× %lu (¼Â¸ú %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "¥¢¥¯¥»¥¹¸¢¸Â¤ò½é´ü²½" #: misc.c:746 msgid "User access" msgstr "¥æ¡¼¥¶¥¢¥¯¥»¥¹" #: misc.c:794 msgid "Make access" msgstr "make ¥¢¥¯¥»¥¹" #: misc.c:828 msgid "Child access" msgstr "»Ò¥×¥í¥»¥¹¥¢¥¯¥»¥¹" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "%s ¤Ø¥¨¥é¡¼¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "¥¸¥ç¥Ö¥µ¡¼¥Ð¤Ø¤Î write" #: read.c:160 msgid "Reading makefiles...\n" msgstr "makefile ¤òÆÉ¤ß¹þ¤ß¤Þ¤¹...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "makefile `%s' ¤ÎÆÉ¤ß¹þ¤ßÃæ" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (¥Ç¥Õ¥©¥ë¥È¤ÎºÇ½ª¥¿¡¼¥²¥Ã¥È¤¬¤¢¤ê¤Þ¤»¤ó)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (õº÷¥Ñ¥¹)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (µ¤¤Ë¤·¤Ê¤¯¤Æ¤è¤¤)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (~ ¤ÎŸ³«¤Ê¤·)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "¾ò·ïÉô¤Îʸˡ¤¬Ìµ¸ú¤Ç¤¹" #: read.c:633 msgid "extraneous `endef'" msgstr "´Ø·¸¤Î¤Ê¤¤ `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "¶õ¤ÎÊÑ¿ô̾" #: read.c:662 msgid "empty `override' directive" msgstr "¶õ¤Î `override' µ¿»÷Ì¿Îá" #: read.c:687 msgid "invalid `override' directive" msgstr "̵¸ú¤Ê `override' µ¿»÷Ì¿Îá" #: read.c:854 msgid "commands commence before first target" msgstr "ºÇ½é¤Î¥¿¡¼¥²¥Ã¥È¤è¤êÁ°¤Ë¥³¥Þ¥ó¥É¤òµ¯Æ°" #: read.c:905 msgid "missing rule before commands" msgstr "¥³¥Þ¥ó¥É¤è¤êÁ°¤Ç¥ë¡¼¥ë¤¬»Ø¼¨¤µ¤ì¤Æ¤¤¤Þ¤»¤ó" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ʬΥµ­¹æ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (8 ¸Ä¤Î¶õÇò¤Ç¤·¤¿¤¬, TAB ¤Î¤Ä¤â¤ê¤Ç¤·¤¿¤«?)" #: read.c:1152 msgid "missing target pattern" msgstr "¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" #: read.c:1154 msgid "multiple target patterns" msgstr "Ê£¿ô¤Î¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤Ç¤¹" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤¬ `%%' ¤ò´Þ¤ó¤Ç¤¤¤Þ¤»¤ó" #: read.c:1286 msgid "missing `endif'" msgstr "`endif' ¤ò·ç¤¤¤Æ¤¤¤Þ¤¹" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "`endef' µ¿»÷Ì¿Îá¤Î¸å¤í¤Ë̵´Ø·¸¤Êʸ»úÎ󤬤¢¤ê¤Þ¤¹" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "`endef' ¤ò·ç¤¤¤Æ¤ª¤ê, `define' ¤¬½ªÎ»¤µ¤ì¤Þ¤»¤ó" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "`%s' µ¿»÷Ì¿Îá¤Î¸å¤í¤Ë̵´Ø·¸¤Êʸ»úÎ󤬤¢¤ê¤Þ¤¹" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "̵´Ø·¸¤Ê `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "°ì¤Ä¤Î¾ò·ïÉô¤Ë¤Ä¤­°ì¤Ä¤·¤« `else' ¤ò»È¤¨¤Þ¤»¤ó" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "¥¿¡¼¥²¥Ã¥ÈËè¤ÎÊÑ¿ôÄêµÁ¤¬°Û¾ï¤Ç¤¹" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥¿¡¼¥²¥Ã¥È¥Ñ¥¿¡¼¥ó¤È°ìÃפ·¤Þ¤»¤ó" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤¬ : ¤È :: ¹àÌܤÎξÊý¤ò»ý¤Ã¤Æ¤¤¤Þ¤¹" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "Ʊ°ì¥ë¡¼¥ëÆâ¤Ç¥¿¡¼¥²¥Ã¥È `%s' ¤¬Ê£¿ô²óÍ¿¤¨¤é¤ì¤Þ¤·¤¿." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "·Ù¹ð: ¥¿¡¼¥²¥Ã¥È `%s' ¤Ø¤Î¥³¥Þ¥ó¥É¤òÃÖ¤­´¹¤¨¤Þ¤¹" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "·Ù¹ð: ¥¿¡¼¥²¥Ã¥È `%s' ¤Ø¤Î¸Å¤¤¥³¥Þ¥ó¥É¤Ï̵»ë¤µ¤ì¤Þ¤¹" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "·Ù¹ð: NUL ʸ»ú¤¬¤¢¤ê¤Þ¤¹; ¹Ô¤Î»Ä¤ê¤Ï̵»ë¤µ¤ì¤Þ¤¹" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "`%s' ¤ËÂФ·¤Æ¹Ô¤¦¤Ù¤­»ö¤Ï¤¢¤ê¤Þ¤»¤ó." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' ¤Ï¹¹¿·ºÑ¤ß¤Ç¤¹" #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤òÀ°Íý¤·¤Þ¤¹.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%s¥¿¡¼¥²¥Ã¥È `%s' ¤ò make ¤¹¤ë¥ë¡¼¥ë¤¬¤¢¤ê¤Þ¤»¤ó%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" "%1$s`%3$s' ¤ËɬÍפʥ¿¡¼¥²¥Ã¥È `%2$s' ¤ò make ¤¹¤ë¥ë¡¼¥ë¤¬¤¢¤ê¤Þ¤»¤ó%4$s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤Î¸¡Æ¤¤ò¹Ô¤¤¤Þ¤¹.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "ºÇ¶á»î¤·¤Æ¹¹¿·¤Ë¼ºÇÔ¤·¤¿¥Õ¥¡¥¤¥ë `%s'.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Ï¸¡Æ¤ºÑ¤ß¤Ç¤¹.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "¤Þ¤À¥Õ¥¡¥¤¥ë `%s' ¤Î¹¹¿·Ãæ¤Ç¤¹.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤Î¹¹¿·¤¬½ªÎ»¤·¤Þ¤·¤¿.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "¥Õ¥¡¥¤¥ë `%s' ¤¬Â¸ºß¤·¤Þ¤»¤ó.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** ·Ù¹ð: .LOW_RESOLUTION_TIME ¥Õ¥¡¥¤¥ë `%s' ¤¬¹â²òÁüÅÙ¥¿¥¤¥à¥¹¥¿¥ó¥×¤ò»ý¤Ã¤Æ" "¤¤¤Þ¤¹" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "`%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤ò¸«¤Ä¤±¤Þ¤·¤¿.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "`%s' ¤Î¤¿¤á¤Î°ÅÌۥ롼¥ë¤¬¤¢¤ê¤Þ¤»¤ó.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "`%s' ÍѤΥǥե©¥ë¥È¥³¥Þ¥ó¥É¤ò»ÈÍѤ·¤Þ¤¹.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "½Û´Ä %s <- %s °Í¸´Ø·¸¤¬ÇË´þ¤µ¤ì¤Þ¤·¤¿." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎɬÍ×¾ò·ï¤òËþ¤¿¤·¤Þ¤·¤¿.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "`%s' ¤ÎɬÍ×¾ò·ï¤ò make ¤·¤Þ¤¹.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤òÄü¤á¤Þ¤¹.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥¨¥é¡¼¤Ë¤è¤êºÆ make ¤Ç¤­¤Þ¤»¤ó¤Ç¤·¤¿." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "ɬÍ×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤Ë¤Ä¤¤¤Æ½çÈÖÄ̤ê¤Î¤ß¹Ô¤¤¤Þ¤¹.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "¥¿¡¼¥²¥Ã¥È `%2$s' ¤ÎɬÍ×¾ò·ï `%1$s' ¤¬Â¸ºß¤·¤Þ¤»¤ó.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "ɬÍ×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤è¤ê¤â¿·¤·¤¤.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "ɬÍ×¾ò·ï `%s' ¤Ï¥¿¡¼¥²¥Ã¥È `%s' ¤è¤ê¤â¸Å¤¤.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "¥¿¡¼¥²¥Ã¥È `%s' ¤Ï¥À¥Ö¥ë¥³¥í¥ó¤Ç, ¤«¤ÄɬÍ×¾ò·ï¤ò»ý¤¿¤Ê¤¤.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "`%s' ¤Î¤¿¤á¤Î¥³¥Þ¥ó¥É¤¬Ìµ¤¯, ¤«¤Ä¼ÂºÝ¤ËÊѹ¹¤µ¤ì¤¿É¬Í×¾ò·ï¤¬¤Ê¤¤.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "akways-make ¥Õ¥é¥°¤¬¤¿¤Ã¤Æ¤¤¤ë¤Î¤Ç `%s' ¤ò make ¤·¤Þ¤¹.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "¥¿¡¼¥²¥Ã¥È `%s' ¤òºÆ make ¤¹¤ëɬÍפϤ¢¤ê¤Þ¤»¤ó" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; VPATH ̾ `%s' ¤ò»ÈÍѤ·¤Þ¤¹" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È `%s' ¤ÎºÆ make ¤¬É¬ÍפǤ¹.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " VPATH ̾ `%s' ¤ò̵»ë¤·¤Þ¤¹.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "`%s' ¤Î¥³¥Þ¥ó¥É¤ò¼Â¹Ô¤·¤Þ¤¹.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎºÆ make ¤Ë¼ºÇÔ¤·¤Þ¤·¤¿.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤ÎºÆ make ¤ËÀ®¸ù¤·¤Þ¤·¤¿.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "¥¿¡¼¥²¥Ã¥È¥Õ¥¡¥¤¥ë `%s' ¤Ï -q ¥ª¥×¥·¥ç¥óÉÕ¤Ç¤ÎºÆ make ¤¬É¬ÍפǤ¹.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤Î½¤Àµ»þ¹ï¤¬Ì¤Íè¤Î»þ¹ï¤Ç¤¹" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "·Ù¹ð: ¥Õ¥¡¥¤¥ë `%s' ¤Î½¤Àµ»þ¹ï¤¬ %.2g ÉÃʬ̤Íè¤Î»þ¹ï¤Ç¤¹" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS Í×ÁÇ `%s' ¤¬¥Ñ¥¿¡¼¥ó¤Ç¤Ï¤¢¤ê¤Þ¤»¤ó" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs ¤¬¥¨¥¯¥¹¥Ý¡¼¥È¤·¤Æ¤¯¤ì¤Þ¤»¤ó: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# °ÅÌۥ롼¥ë" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# °ÅÌۥ롼¥ë¤Ê¤·." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u ¸Ä¤Î°ÅÌۥ롼¥ë, %u" #: rule.c:575 msgid " terminal." msgstr " °Ê¾å." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "¥Ð¥°: num_pattern_rules ¤¬´Ö°ã¤Ã¤Æ¤¤¤ë! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "̤ÃΤΥ·¥°¥Ê¥ë" #: signame.c:93 msgid "Hangup" msgstr "¥Ï¥ó¥°¥¢¥Ã¥×" #: signame.c:96 msgid "Interrupt" msgstr "³ä¤ê¹þ¤ß" #: signame.c:99 msgid "Quit" msgstr "½ªÎ»" #: signame.c:102 msgid "Illegal Instruction" msgstr "ÉÔÀµ¤Ê¥Ï¡¼¥É¥¦¥§¥¢Ì¿Îá" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "¥È¥ì¡¼¥¹/¥Ö¥ì¥¤¥¯¥Ý¥¤¥ó¥È¥È¥é¥Ã¥×" #: signame.c:110 msgid "Aborted" msgstr "Abort ¤·¤Þ¤·¤¿" #: signame.c:113 msgid "IOT trap" msgstr "IOT ¥È¥é¥Ã¥×" #: signame.c:116 msgid "EMT trap" msgstr "EMT ¥È¥é¥Ã¥×" #: signame.c:119 msgid "Floating point exception" msgstr "ÉâÆ°¾®¿ôÅÀÎã³°" #: signame.c:122 msgid "Killed" msgstr "Kill ¤µ¤ì¤Þ¤·¤¿" #: signame.c:125 msgid "Bus error" msgstr "¥Ð¥¹¥¨¥é¡¼" #: signame.c:128 msgid "Segmentation fault" msgstr "¥á¥â¥ê°ãÈ¿" #: signame.c:131 msgid "Bad system call" msgstr "ÉÔÀµ¤Ê¥·¥¹¥Æ¥à¥³¡¼¥ë" #: signame.c:134 msgid "Broken pipe" msgstr "ÆÉ¤ß¼ê¤Î¤Ê¤¤¥Ñ¥¤¥×¤Ø¤Î½ñ¤­¹þ¤ß" #: signame.c:137 msgid "Alarm clock" msgstr "¥¢¥é¡¼¥à¥¯¥í¥Ã¥¯" #: signame.c:140 msgid "Terminated" msgstr "¶¯À©½ªÎ»" #: signame.c:143 msgid "User defined signal 1" msgstr "¥æ¡¼¥¶ÄêµÁ¥·¥°¥Ê¥ë 1" #: signame.c:146 msgid "User defined signal 2" msgstr "¥æ¡¼¥¶ÄêµÁ¥·¥°¥Ê¥ë 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "»Ò¥×¥í¥»¥¹½ªÎ»" #: signame.c:157 msgid "Power failure" msgstr "ÅŸ»¾ã³²" #: signame.c:160 msgid "Stopped" msgstr "°ì»þÄä»ß" #: signame.c:163 msgid "Stopped (tty input)" msgstr "°ì»þÄä»ß (tty ÆþÎÏ)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "°ì»þÄä»ß (tty ½ÐÎÏ)" #: signame.c:169 msgid "Stopped (signal)" msgstr "°ì»þÄä»ß (¥·¥°¥Ê¥ë)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU »þ´Ö¤¬À©¸Â¤ò±Û¤¨¤Þ¤·¤¿" #: signame.c:175 msgid "File size limit exceeded" msgstr "¥Õ¥¡¥¤¥ë¥µ¥¤¥ºÀ©¸Â¤ò±Û¤¨¤Þ¤·¤¿" #: signame.c:178 msgid "Virtual timer expired" msgstr "²¾ÁÛ¥¿¥¤¥ÞËþλ" #: signame.c:181 msgid "Profiling timer expired" msgstr "¥×¥í¥Õ¥¡¥¤¥ë¥¿¥¤¥ÞËþλ" #: signame.c:187 msgid "Window changed" msgstr "¥¦¥£¥ó¥É¥¦¥µ¥¤¥ºÊѹ¹" #: signame.c:190 msgid "Continued" msgstr "ºÆ³«¤µ¤ì¤Þ¤·¤¿" #: signame.c:193 msgid "Urgent I/O condition" msgstr "¶ÛµÞ I/O ¾ò·ï" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "È󯱴ü I/O ²ÄǽÀ­" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "¥ê¥½¡¼¥¹¤¬¼º¤ï¤ì¤Þ¤·¤¿" #: signame.c:215 msgid "Danger signal" msgstr "´í¸±¥·¥°¥Ê¥ë" #: signame.c:218 msgid "Information request" msgstr "¾ðÊóÍ×µá" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "ÉâÆ°¾®¿ôÅÀ¥³¥×¥í¥»¥Ã¥µ¤¬ÍøÍÑÉÔǽ" #: 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 "¥Ç¥Õ¥©¥ë¥È" #: variable.c:1372 msgid "environment" msgstr "´Ä¶­ÊÑ¿ô" #: variable.c:1375 msgid "makefile" msgstr "makefile ÊÑ¿ô" #: variable.c:1378 msgid "environment under -e" msgstr "-e ¥ª¥×¥·¥ç¥ó¤Ç¤Î´Ä¶­ÊÑ¿ô" #: variable.c:1381 msgid "command line" msgstr "¥³¥Þ¥ó¥É¥é¥¤¥óÊÑ¿ô" #: variable.c:1384 msgid "`override' directive" msgstr "`override' µ¿»÷Ì¿Îá" #: variable.c:1387 msgid "automatic" msgstr "¼«Æ°ÊÑ¿ô" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (`%s', %lu ¹ÔÌܤ«¤é)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# ÊÑ¿ô¥»¥Ã¥È¤Î¥Ï¥Ã¥·¥å¥Æ¡¼¥Ö¥ë¤Î¾õÂÖ:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# ÊÑ¿ô\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# ¥Ñ¥¿¡¼¥ó»ØÄêÊÑ¿ô¤ÎÃÍ" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# ¥Ñ¥¿¡¼¥ó»ØÄêÊÑ¿ô¤ÎÃͤʤ·." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u ¸Ä¤Î¥Ñ¥¿¡¼¥ó»ØÄêÊÑ¿ô¤ÎÃÍ" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "·Ù¹ð: ̤ÄêµÁ¤ÎÊÑ¿ô `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search ¤¬ %d ¤Ç¼ºÇÔ¤·¤Þ¤·¤¿\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "·Ù¹ð: ¶õ¤Î¥ê¥À¥¤¥ì¥¯¥È\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "ÆâÉô¥¨¥é¡¼: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-·Ù¹ð, CTRL-Y ¤Ï»Ò¥×¥í¥»¥¹¤ò»¶¤é¤«¤·¤¿¤Þ¤Þ¤Ë¤¹¤ë¤Ç¤·¤ç¤¦.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-·Ù¹ð, DCL ¤«¤é¤Î CTRL-Y Áàºî¤òºÆ¤ÓÍ­¸ú¤Ë¤¹¤ëɬÍפ¬¤¢¤ë¤«¤âÃΤì¤Þ¤»¤ó.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "¥Ó¥ë¥È¥¤¥ó [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "¥Ó¥ë¥È¥¤¥ó CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "¥Ó¥ë¥È¥¤¥ó RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "ÉÔÌÀ¤Ê¥Ó¥ë¥È¥¤¥ó¥³¥Þ¥ó¥É '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "¥¨¥é¡¼, ¶õ¤Î¥³¥Þ¥ó¥É\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "%s ¤«¤éÆþÎÏ¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "%s ¤Ø¥¨¥é¡¼¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "%s ¤Ø½ÐÎÏ¥ê¥À¥¤¥ì¥¯¥È¤µ¤ì¤Þ¤·¤¿\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Âå¤ï¤ê¤Ë %s ¤ò¼Â¹Ô¤·¤Þ¤¹\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "spawn ¤Î¥¨¥é¡¼, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH õº÷¥Ñ¥¹\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# `vpath' õº÷¥Ñ¥¹¤Ï¤¢¤ê¤Þ¤»¤ó" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u ¸Ä¤Î `vpath' õº÷¥Ñ¥¹\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# °ìÈ̤Π(`VPATH' ÊÑ¿ô) õº÷¥Ñ¥¹¤Ê¤·." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# °ìÈ̤Π(`VPATH' ÊÑ¿ô) õº÷¥Ñ¥¹:\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "ʸˡ¥¨¥é¡¼, '\"' Æâ¤Î¤Þ¤Þ¤Ç¤¹\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "SIGCHLD ¤¬È¯À¸; %u ¸Ä¤Î̤²ó¼ý»Ò¥×¥í¥»¥¹.\n" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "sh.exe ¤¬»È¤¨¤Ê¤¤¾õÂÖ¤Ç -j ¤ä --jobs ¤ò»ØÄꤷ¤Æ¤Ï¤¤¤±¤Þ¤»¤ó." #~ msgid "Resetting make for single job mode." #~ msgstr "ñ°ì¥¸¥ç¥Ö¥â¡¼¥É¤Î make ¤Ë¥ê¥»¥Ã¥È¤·¤Þ¤¹." #~ msgid "no file name for `%sinclude'" #~ msgstr "`%sinclude' ¤Ë¥Õ¥¡¥¤¥ë̾¤¬¤¢¤ê¤Þ¤»¤ó" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "¥¿¡¼¥²¥Ã¥È `%s' ¤ÎɬÍ×¾ò·ï¥Ñ¥¿¡¼¥ó¤¬¶õ¤Î¤Þ¤Þ¤Ç¤¹" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# ¥Ï¥Ã¥·¥åÍ×ÁǤ¢¤¿¤ê¡¢Ê¿¶Ñ %.3f ¸Ä¡¢ºÇÂç %u ¸Ä¤Î¥Õ¥¡¥¤¥ë¤¬¤¢¤ê¤Þ¤¹¡£\n" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "¥Ç¥Ð¥Ã¥¬¤Ë attach ¤¹¤ë¤¿¤á¥×¥í¥»¥¹¤Î°ì»þÄä»ß¤òµö²Ä¤¹¤ë" #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# ¥Ï¥Ã¥·¥åÍ×ÁǤ¢¤¿¤ê¡¢Ê¿¶Ñ %.1f ¸Ä¡¢ºÇÂç %u ¸Ä¤ÎÊÑ¿ô¤¬¤¢¤ê¤Þ¤¹¡£\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# ¥Ï¥Ã¥·¥åÍ×ÁǤ¢¤¿¤êÊ¿¶Ñ %d.%d ¸Ä¡¢ºÇÂç %u ¸Ä¤ÎÊÑ¿ô¤¬¤¢¤ê¤Þ¤¹¡£\n" #~ msgid "the `word' function takes a positive index argument" #~ msgstr "`word' ´Ø¿ô¤ÏÈóÉé¤Î¥¤¥ó¥Ç¥Ã¥¯¥¹°ú¿ô¤ò¤È¤ê¤Þ¤¹" #~ msgid " (ignored)" #~ msgstr " (̵»ë¤µ¤ì¤Þ¤·¤¿)" make-dfsg-3.81.orig/po/ko.gmo0000644000175000017500000006171410416553102016255 0ustar srivastasrivastaÞ•)d ¬àáþ&>N!W-y §-Èö' 4 K"Y |†"£ ÆÓ(â 2M` r|‹”¥ ®¹È.à1AZrŒ(ªÓ&è*&:+a+¹#Î#ò)-@n‡$ž9Ãý3P.j™µÐ=à" A W +s Ÿ ¹ ,Ó !%!,D!-q! Ÿ!&À!ç!"'"/G"1w" ©"µ"#Ì"#ð"6#K#g#y##4«#>à# $*)$T$l$ t$"€$'£$Ë$Ú$é$û$ % %!% 9%%F%l%$Œ%=±%:ï% *&0K&|& ›&+¥&!Ñ& ó&' '('1'E'['$q''–'¾'#Þ'("(@(,Y(†()¤(Î(!ç(& )0)P) W)d)m)%)§) »)Å)#Ì)0ð)'!*3I*+}*©*-Å*'ó*+5+<8+!u+—+ µ+*À+ë+', 0,6:, q,-,-­,1Û, -%-39-m-r-ˆ-(ž-)Ç-/ñ-6!.X.p.Š.1£.-Õ.'/#+/ O/]/f/n//œ/¤/µ/É/&Þ/60)<0(f0 0*š0Å0#Û0&ÿ0&1F1d1u11¨1!½1ß1õ1! 2-2C2_2n2†2š2(¯2 Ø21â2333H3|33˜3 Ì3%Ù3ÿ344 74E4!`4‚4 –4¢4·4Ç46Ú4.58@5y55¨5"¼53ß506D6a6'69§6á6&ê67!7>7R7i7'‰7±7Ê7-Í71û72-8`8€88,ª82×8* 9596U9,Œ9"¹93Ü9):"::1]:&:¶:Å:0ß:;0;=I;9‡;1Á;.ó;H"<,k<"˜<0»<ì<Kü<H>f>€>  >­>%µ>(Û>!?,&?S?$h??¡?ª? Æ?$Ð?"õ?@!@22@ e@r@"Œ@¯@Ã@Ò@ Ú@ç@ï@ ÷@A AA*/A,ZA‡A™A¶AÐA$ïAB%3B*YB„B/¤B.ÔBC$C";C!^C*€C«CÁC%ÒC5øC.D/ND~D+šDÆDæDE@E$REwEŽE7¬EäEûE+F@F"^F+F,­F%ÚF&G'GGG gGBˆG<ËG HH!0H,RHAH!ÁHãHôHI<#I>`I ŸI.©I"ØIûI JJ'*J RJ ^JjJyJ ŒJ šJ¤J¹J"ËJ!îJ!KA2K8tK­K/ÍK!ýKL#&L!JL lL'vL žL¨L±LÀLÑL#ãL$M',M.TMƒM!£MÅM(ÛMN'$NLN&]N2„N!·NÙN àNìN õN)O +O5O>O/EO3uO)©O6ÓO@ P!KP?mP(­P"ÖPùP?ýP+=Q*iQ ”Q,žQËQ2èQR2"R UR9_R7™R5ÑRS%S;ESS†S¦S;ÂS;þS9:T5tT#ªTÎTîT0U.?U7nU"¦U ÉUÓUÜUäU$öUV"V2VDV/VV?†V/ÆV5öV,W'3W[W&lW$“W%¸WÞWûWX'*XRXeXƒX–X"©XÌXäX YY$Y@Y(RY{Y1€Y6²Y6éY Z1AZsZ.zZ©ZºZÁZ ØZåZ&úZ ![.[ 3[ @[L[G[[=£[-á[\!\4\K\,i\(–\¿\Ø\)ö\7 ] X](c]Œ]]µ]Î] á]+^.^=^+A^/m^/^/Í^ý^(_)7_2a_7”_Ì_(é_0`$C`7h`+ `$Ì`>ñ`*0a[aka2€a³aËaHàaE)b9ob1©b\Ûb68coc.c ¾c# —cœ~¾k(;ÙýN"¬ªÍÔnlG`ìW6ŒøöÀ_®*QL'…”ÐÌt,õÏ×ÅmÑuˆáfŠ j•iè€FåDÞh$EÝ¥-b&ÃTæƒ[X{3¢ôp<ñØH¡©™š8˜ã7Ò½ŸÖ"r³òSBž– ßÿ Ž éà‹:„ùv9RV#O})Ua)x0£Z§ÉwÇ›yþº YÁâÊ|²¹2P¤Æ+s!^&î‡(µ·Ú  ‰ä  zK»°1Ó’‚dë\Jü  %Ûq]¼¸ð´­ÎÄ$M%“goeúÜ/‘5¦†¨¶ê¿Ëíç.«>ûÈ!I÷±?4ïÕC=óA'¯@ # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: GNU make 3.79.1 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2001-06-08 01:30+0900 Last-Translator: Changwoo Ryu Language-Team: Korean MIME-Version: 1.0 Content-Type: text/plain; charset=EUC-KR Content-Transfer-Encoding: 8-bit # %u°³ÀÇ `vpath' Ž»ö °æ·Î. # %u°³ÀÇ ¹¬½ÃÀû ±ÔÄ¢, %u # %u°³ÀÇ ÆÐÅÏÀ» À§ÇÑ º¯¼ö °ªµé # µð·ºÅ丮 # ÆÄÀÏ # ¸ÞÀÌÅ© µ¥ÀÌŸ º£À̽º ¸¶Ä§, %s¿¡¼­ # ÀϹÝÀûÀÎ (`VPATH' º¯¼ö) Ž»ö °æ·Î: # # ¸ÞÀÌÅ© µ¥ÀÌŸº£À̽º, %s¿¡ Ç¥½Ã # ÀϹÝÀûÀÎ (`VPATH' º¯¼ö) Ž»ö °æ·Î°¡ ¾øÀ½. # ¹¬½ÃÀû ±ÔÄ¢ ¾øÀ½. # ÆÐÅÏÀ» À§ÇÑ º¯¼ö °ªµéÀÌ ¾ø½À´Ï´Ù. # VPATH Ž»ö °æ·Î # º¯¼ö ½ÇÇà ½ÇÆÐ¿¡¼­ %d°³ÀÇ Àμö ³¯Â¥ %s VPATH À̸§ `%s'À»(¸¦) ¹«½ÃÇÕ´Ï´Ù. uid = %d, gid = %d, ¸ðµå = 0%o. (³»Àå): (¸Þ¸ð¸® ´ýÇÁµÊ) (8°³ÀÇ °ø¹é ¸»°í ÅÇÀ» ¾²·Á°í ÇÑ °Í ¾Æ´Ï¾ú½À´Ï±î?) (»ó°ü ¾ÈÇÔ) (`%s'¿¡¼­, %lu¹øÂ° ÁÙ): (À̸§ÀÌ Àß·Á³ª°¬À» ¼öµµ ÀÖ½À´Ï´Ù) (ÃÖÁ¾ Ÿ°ÙÀÌ ¾øÀ½) (~ È®Àå ¾øÀ½) (¿ø°Ý) (Ž»ö °æ·Î) ÆÄÀÏ, ºÒ°¡´É Áö±Ý±îÁö. Å͹̳Î.# ´ÙÀ½µµ ¸¸µì´Ï´Ù:# ¸í·ÉÇà Ÿ°Ù.# ÇöÀç ½ÇÇàÁßÀÎ ¸í·É (À̰ÍÀº ¹ö±×ÀÔ´Ï´Ù).# ÇöÀç ½ÇÇàÁßÀÎ ÀÇÁ¸¼º (À̰ÍÀº ¹ö±×ÀÔ´Ï´Ù).# °»½Å¿¡ ½ÇÆÐÇÔ.# ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.# ÆÄÀÏÀÌ °»½ÅµÇ¾ú½À´Ï´Ù.# ÆÄÀÏÀÌ °»½ÅµÇÁö ¾Ê¾Ò½À´Ï´Ù.# ÆÄÀÏÀÌ Áß°£´Ü°èÀÇ ¼±ÇàÁ¶°ÇÀÔ´Ï´Ù.# ÆÄÀÏÀÌ ¸Å¿ì ¿À·¡µÇ¾ú½À´Ï´Ù.# ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀÌ ¿Ï·áµÇ¾ú½À´Ï´Ù.# ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀÌ ¿Ï·áµÇÁö ¾Ê¾Ò½À´Ï´Ù.# ¹¬½ÃÀû/°íÁ¤ ÆÐÅÏ ½ºÅÛ: `%s' # `command_status' ¸â¹ö¿¡ °ªÀÌ À߸øµÇ¾ú½À´Ï´Ù!# `update_status' ¸â¹ö¿¡ °ªÀÌ À߸øµÇ¾ú½À´Ï´Ù!# ¸¶Áö¸· º¯°æ %s # º¯°æ ½Ã°¢ÀÌ °áÄÚ °Ë»çµÇÁö ¾Ê¾ÒÀ½.# °»½ÅµÉ Çʿ䰡 ÀÖÀ½ (-q ¼³Á¤µÊ).# Æ÷´Ï Ÿ°Ù (.PHONYÀÇ ¼±ÇàÁ¶°Ç).# ÇÁ·¹½Ã¾î½º ÆÄÀÏ (.PRECIOUSÀÇ ¼±ÇàÁ¶°Ç).# ¼º°øÀûÀ¸·Î °»½ÅµÊ.# ½ÇÇàÇÒ ¸í·É¾î# %s (ÀåÄ¡ %d, ¾ÆÀ̳ëµå [%d,%d,%d]): # %s (ÀåÄ¡ %d, ¾ÆÀ̳ëµå [%d,%d,%d]): ¿­ ¼ö ¾ø½À´Ï´Ù. # %s (ÀåÄ¡ %ld, ¾ÆÀ̳ëµå %ld): # %s (ÀåÄ¡ %ld, ¾ÆÀ̳ëµå %ld): ¿­ ¼ö ¾ø½À´Ï´Ù. # %s (Ű %s, º¯°æ½Ã°¢ %d): # %s (Ű %s, º¯°æ½Ã°¢ %d): ¿­ ¼ö ¾ø½À´Ï´Ù. # %s: statÀ» ÇÒ ¼ö ¾ø¾ú½À´Ï´Ù. # `vpath' Ž»ö °æ·Î°¡ ¾øÀ½.# Ÿ°ÙÀÌ ¾Æ´Ô:%s (%d¹øÂ° ÁÙ) À߸øµÈ ½© ÄÁÅØ½ºÆ® (!unixy && !batch_mode_shell) %sÀÌ(°¡) 30Ãʵ¿¾È ÀϽà ÁßÁöµË´Ï´Ù...%s: ¸í·ÉÀ» ãÁö ¸øÇßÀ½%s: ¼Ð ÇÁ·Î±×·¥À» ãÁö ¸øÇßÀ½%s: ŸÀÓ½ºÅÆÇÁ°¡ ¹üÀ§¸¦ ¹þ¾î³³´Ï´Ù; %sÀ»(¸¦) ´ëüÇÕ´Ï´Ù%s: À߸øµÈ ¿É¼Ç -- %c %s: ºÎÀûÀýÇÑ ¿É¼Ç -- %c %s: `%c%s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù %s: `%s'´Â ¾Ö¸ÅÇÑ ¿É¼ÇÀÔ´Ï´Ù %s: `%s' ¿É¼ÇÀº Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù %s: `--%s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù %s: `-W %s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù %s: `-W %s' ¿É¼ÇÀº ¾Ö¸ÅÇÑ ¿É¼ÇÀÔ´Ï´Ù %s: ÀÌ ¿É¼ÇÀº Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù -- %c %s: ÀνÄÇÒ ¼ö ¾ø´Â ¿É¼Ç `%c%s' %s: ÀνÄÇÒ ¼ö ¾ø´Â ¿É¼Ç `--%s' %sŸ°Ù `%s'¸¦ ¸¸µé ±ÔÄ¢ÀÌ ¾øÀ½%s%1$s`%3$s'¿¡¼­ ÇÊ¿ä·Î Çϴ Ÿ°Ù `%2$s'¸¦ ¸¸µé ±ÔÄ¢ÀÌ ¾ø½À´Ï´Ù%4$s*** ¾ÆÄ«ÀÌºê ¸â¹ö `%s'´Â °¡Â¥ÀÏ ¼ö ÀÖ½À´Ï´Ù; Áö¿ìÁö ¾Ê½À´Ï´Ù*** ÁßÁö. *** ÆÄÀÏ `%s'À»(¸¦) Áö¿ó´Ï´Ù*** Áß°£ ÆÄÀÏ `%s'À»(¸¦) ÁÖÀÔ´Ï´Ù*** ³¡³ªÁö ¾ÊÀº ÀÛ¾÷À» ±â´Ù¸®°í ÀÖ½À´Ï´Ù....*** [%s] ¾ÆÄ«ÀÌºê ¸â¹ö `%s'´Â °¡Â¥ÀÏ ¼ö ÀÖ½À´Ï´Ù; Áö¿ìÁö ¾Ê½À´Ï´Ù*** [%s] ÆÄÀÏ `%s'À»(¸¦) ÁÖÀÔ´Ï´Ù*** [%s] ¿À·ù %d*** [%s] ¿À·ù 0x%x*** [%s] ¿À·ù 0x%x (¹«½ÃµÊ)-°æ°í, CTRL-Y´Â ÆÄ»ýµÈ ÇÁ·Î¼¼½ºµéÀ» ±×´ë·Î ³²°ÜµÑ °ÍÀÔ´Ï´Ù. -°æ°í, DCL¿¡¼­ CTRL-Y¸¦ ´Ù½Ã »ç¿ë°¡´ÉÇϵµ·Ï ÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù. . ¸ØÃã. .LIBPATTERNSÀÇ ¿ø¼Ò `%s'ÀÌ(°¡) ÆÐÅÏÀÌ ¾Æ´Õ´Ï´Ù; VPATH À̸§ `%s'À»(¸¦) »ç¿ëÇÕ´Ï´ÙÁߴܵÊÀÚ¸íÁ¾ ½Ã°è¹¬½ÃÀû ±ÔÄ¢ÀÇ Àç±Í¸¦ ÇÇÇÔ. ¹ö±×: num_pattern_rules ¿À·ù! %u != %u³»Àå CD %s ³»Àå RM %s ³»Àå [%s][%s] À߸øµÈ ½Ã½ºÅÛ È£Ãâ±ú¾îÁø ÆÄÀÌÇÁ¹ö½º ¿À·ùCPU ½Ã°£ Á¦ÇÑ ÃʰúµÊÀÚ½ÄÀÌ Á¾·áµÇ¾úÀ½%s <- %s »óÈ£ ÀÇÁ¸¼ºÀº ¹«½ÃµË´Ï´Ù.Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) Áö¿ó´Ï´Ù Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) Áö¿ó´Ï´Ù `%s'¿¡ ´ëÇÑ ¸í·É¾î´Â `%s'¿¡ ´ëÇÑ ¸í·É¾î°¡ ¿ì¼±ÇϹǷΠ¹«½ÃµË´Ï´Ù..ÆÄÀÏ `%s'¸¦ À§ÇÑ ¸í·ÉÀ» ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀ¸·Î ã¾Ò½À´Ï´Ù.`%s'¶ó´Â ¸í·ÉÀÌ ½ÇÇà ÁßÀÔ´Ï´Ù. ÆÄÀÏ `%s'ÀÇ %s:%lu¿¡¼­ ¸í·É¾î°¡ ÁöÁ¤µÇ¾ú½À´Ï´Ù,Ÿ°Ù ÆÄÀÏ `%s'À»(¸¦) °í·ÁÇÕ´Ï´Ù. °è¼ÓµÊ¿ø·¡ µð·ºÅ丮·Î µ¹¾Æ°¥ ¼ö ¾ø½À´Ï´Ù.Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) ¸¸µì´Ï´Ù ÇöÀç ½Ã°¢CustomsÀº exportµÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù: %s À§Çè ½ÅÈ£EMT Æ®·¦½ÇÇà ¿À·ù, %d ¿À·ù, ºó ¸í·É¾î ´ë½Å %s¸¦ ½ÇÇàÇÔ `%s' Áö½ÃÀÚ µÚ¿¡ ¿©ºÐÀÇ ¹®ÀåÀÌ ÀÖÀ½`endef' Áö½ÃÀÚ µÚ¿¡ ¿©ºÐÀÇ ±ÛÀÌ ÀÖÀ½¸ÞÀÌÅ©ÆÄÀÏ `%s'À» ´Ù½Ã ¸¸µå´Âµ¥ ½ÇÆÐÇÔ.Ÿ°Ù ÆÄÀÏ `%s'¸¦ ´Ù½Ã ¸¸µå´Â µ¥ ½ÇÆÐÇß½À´Ï´Ù. `%s' ÆÄÀÏÀº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÆÄÀÏ `%s'´Â ÀÌ¹Ì °ËÅäµÇ¾ú½À´Ï´Ù. ÆÄÀÏ Å©±â Á¦ÇÑ ÃʰúµÊŸ°Ù ÆÄÀÏ `%s'ÀÇ ¼±ÇàÁ¶°ÇÀ» ¸¶ÃƽÀ´Ï´Ù. `%s' ÆÄÀÏÀÇ °»½ÅÀ» ¸¶ÃƽÀ´Ï´Ù. ºÎµ¿¼Ò¼öÁ¡ ¿¬»ê º¸Á¶ÇÁ·Î¼¼¼­°¡ ¾ø½À´Ï´ÙºÎµ¿ ¼Ò¼öÁ¡ ¿¹¿Ü`%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã¾Ò½À´Ï´Ù. VPATH `%2$s'¿¡¼­ ¼±ÇàÁ¶°Ç `%1$s'À»(¸¦) ã¾Ò½À´Ï´Ù Ÿ°Ù ÆÄÀÏ `%s'À»(¸¦) Æ÷±âÇÕ´Ï´Ù. ²÷¾îÁüÀÔÃâ·Â °¡´ÉIOT Æ®·¦À߸øµÈ ¸í·ÉÆ÷ÇÔµÈ ¸ÞÀÌÅ©ÆÄÀÏ `%s'¸¦ ãÁö ¸øÇß½À´Ï´Ù.Á¤º¸ ¿äûÀÎÅÍ·´Æ®Á×¾úÀ½»ì¾ÆÀÖ´Â ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx (%s) PID %ld %s Áß°£ ÆÄÀÏ `%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù. `%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù. `%s'¿¡ ´ëÇÑ ¾ÆÄ«À̺ê¸â¹ö ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù. ¸ÞÀÌÅ©ÆÄÀÏ `%s'Àº(´Â) ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù; ´Ù½Ã ¸¸µéÁö ¾Ê½À´Ï´Ù. ¸ÞÀÌÅ©ÆÄÀÏ `%s'À» ãÁö ¸øÇß½À´Ï´ÙÇ¥ÁØÀԷ¿¡¼­ ¹Þ¾ÆµéÀÌ´Â ¸ÞÀÌÅ©ÆÄÀÏÀÌ µÎ ¹ø ÀÌ»ó ÁöÁ¤µÇ¾ú½À´Ï´Ù.¸â¹ö `%s'%s: %ld¹ÙÀÌÆ®, %ld (%ld) ¿¡¼­. Ÿ°Ù `%s'¸¦ ´Ù½Ã ¸¸µé¾î¾ß ÇÕ´Ï´Ù. 0°³`%s'¿¡ ´ëÇÑ ¸í·É¾î°¡ ¾ø°í ¾î¶² ¼±ÇàÁ¶°Çµµ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù. `%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ãÁö ¸øÇß½À´Ï´Ù. Ÿ°Ù `%s'À»(¸¦) ´Ù½Ã ¸¸µé Çʿ䰡 ¾ø½À´Ï´Ù.Ÿ°Ù ¾øÀ½Å¸°ÙÀÌ ÁöÁ¤µÇÁö ¾Ê¾Ò°í ¸ÞÀÌÅ©ÆÄÀÏÀÌ ¾ø½À´Ï´Ù`%s'¸¦ À§ÇØ ÇÒ ÀÏÀÌ ¾ø½À´Ï´ÙÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx (%s)¿¡¼­ ÅäÅ«À» ¹Þ¾Ò½À´Ï´Ù. ¿É¼Ç: ÀÌ Ç÷§Æû¿¡¼­´Â º´·Ä ÀÛ¾÷(-j)ÀÌ Áö¿øµÇÁö ¾Ê½À´Ï´Ù.Àü·Â Áߴܼ±ÇàÁ¶°Ç `%s'ÀÌ(°¡) Ÿ°Ù `%s'º¸´Ù ÃÖ±Ù¿¡ ¸¸µé¾îÁ³½À´Ï´Ù. ¼±ÇàÁ¶°Ç `%s'ÀÌ(°¡) Ÿ°Ù `%s'º¸´Ù ¸ÕÀú ¸¸µé¾îÁ³½À´Ï´Ù. Ÿ°Ù `%2$s'ÀÇ ¼±ÇàÁ¶°Ç %1$sÀº(´Â) Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù. ÇÁ·ÎÆÄÀϸµ ŸÀÌ¸Ó ½Ã°£ ÃʰúµÊ`%s' ÆÄÀÏÀ» Àß¶ó³»°í ÀÖ½À´Ï´Ù. ÀÚ½ÄÇÁ·Î¼¼½º 0x%08lx (%s) PID %ld%sÀ»(¸¦) üÀο¡ ³Ö½À´Ï´Ù. Á¾·á¸ÞÀÌÅ©ÆÄÀÏ `%s'¸¦ Àаí ÀÖ½À´Ï´Ù¸ÞÀÌÅ©ÆÄÀÏÀ» Àаí ÀÖ½À´Ï´Ù ½ÇÆÐÇÑ ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx PID %ld %sÀ»(¸¦) °ÅµÖµéÀÔ´Ï´Ù ¼º°øÇÑ ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx PID %ld %sÀ»(¸¦) °ÅµÖµéÀÔ´Ï´Ù ÃÖ±Ù¿¡ `%s' ÆÄÀÏÀ» °»½ÅÇÏ·Á°í ½ÃµµÇÏ¿´°í ½ÇÆÐÇÏ¿´½À´Ï´Ù. Àç±Í º¯¼ö `%s'´Â ÀÚ±â ÀÚ½ÅÀ» ÂüÁ¶Çϰí ÀÖ½À´Ï´Ù (°á±¹)¿À·ù¸¦ %sÀ¸·Î(·Î) ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù ÀÔ·ÂÀ» %s¿¡¼­ ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù Ãâ·ÂÀ» %s¿¡¼­ ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù ºÒ°¡´ÉÇÑ ¹¬½ÃÀû ¼±ÇàÁ¶°Ç `%s'Àº(´Â) °ÅºÎµË´Ï´Ù. ºÒ°¡´ÉÇÑ ±ÔÄ¢ ¼±ÇàÁ¶°Ç `%s'Àº(´Â) °ÅºÎµË´Ï´Ù. ÀÚ½ÄÇÁ·Î¼¼½º child 0x%08lx (%s) ¿¡ ÅäÅ«À» ³»¾î ÁÝ´Ï´Ù. ´ÜÀÏ ÀÛ¾÷ (-j1) ¸ðµå·Î µ¹¾Æ°©´Ï´Ù.ÀÚ¿ø ¼Õ½ÇSIGPHONESIGWIND¼¼±×¸àÅ×ÀÌ¼Ç ¿À·ù¾ÆÁ÷ `%s' ÆÄÀÏÀ» °»½ÅÇϰí ÀÖ½À´Ï´Ù. ÁßÁöµÊÁßÁöµÊ (½Ã±×³Î)ÁßÁöµÊ (tty ÀÔ·Â)ÁßÁöµÊ (tty Ãâ·Â)Ÿ°Ù ÆÄÀÏ `%s'¸¦ ¼º°øÀûÀ¸·Î ´Ù½Ã ¸¸µé¾ú½À´Ï´Ù. Ÿ°Ù `%s'ÀÌ(°¡) µÎ °³ÀÇ ÄÝ·ÐÀÌ ºÙ¿©Á³Áö¸¸ ¼±ÇàÁ¶°ÇÀÌ ¾ø½À´Ï´Ù. ¿À·ù·Î ÀÎÇØ Ÿ°Ù `%s'¸¦ ´Ù½Ã ¸¸µéÁö ¸øÇß½À´Ï´Ù.Ÿ°Ù ÆÄÀÏ `%s'ÀÌ(°¡) -q ÇÏ¿¡ ´Ù½Ã ¸¸µé¾îÁ®¾ß ÇÕ´Ï´Ù. Á¾·áµÊ`%s'ÀÇ ¼±ÇàÁ¶°ÇÀÌ ¸¸µé¾îÁö°í ÀÖ½À´Ï´Ù. ÃßÀû/Áß´ÜÁ¡ Æ®·¦¹¬½ÃÀû ¼±ÇàÁ¶°Ç `%s'À»(¸¦) ½ÃµµÇÕ´Ï´Ù ½ºÅÛ `%.*s'¿¡¼­ºÎÅÍ ÆÐÅÏ ±ÔÄ¢ ½Ãµµ. ±ÔÄ¢ ¼±ÇàÁ¶°Ç `%s'À»(¸¦) ½ÃµµÇÕ´Ï´Ù. ¾Ë ¼ö ¾ø´Â ³»Àå ¸í·É¾î `%s' ¾Ë ¼ö ¾ø´Â ¿À·ù %dÃÖÁ¾ Ÿ°ÙÀ» °»½ÅÇÕ´Ï´Ù.... ¸ÞÀÌÅ©ÆÄÀÏÀ» ¾÷µ¥ÀÌÆ®Çϰí ÀÖ½À´Ï´Ù.... ±ä±ÞÇÑ ÀÔÃâ·Â »óȲ»ç¿ë¹ý: %s [¿É¼Ç] [Ÿ°Ù] ... »ç¿ëÀÚ Á¤ÀÇ ½ÅÈ£ 1»ç¿ëÀÚ Á¤ÀÇ ½ÅÈ£ 2`%s'¿¡ ´ëÇØ ³»Á¤µÈ ¸í·ÉÀ» »ç¿ëÇÔ. °¡»ó ŸÀÌ¸Ó ½Ã°£ ÃʰúµÊ°æ°í: ºñ¾î ÀÖ´Â ¸®´ÙÀÌ·º¼Ç âÀÌ ¹Ù²î¾úÀ½[%s] ¿À·ù %d (¹«½ÃµÊ)`%s'´Â ÀÌ¹Ì °»½ÅµÇ¾ú½À´Ï´Ù.`override' Áö½ÃÀÚÁö¿øµÇÁö ¾Ê´Â ±â´ÉÀ» »ç¿ëÇÏ·Á°í ÇÔ: `%s'ÀÚµ¿ÇÏÁö¸¸ `%s'´Â ÀÌÁ¦ `%s'¿Í °°Àº ÆÄÀÏ·Î °£Áֵ˴ϴÙ.ÀÌÁß ÄÝ·Ð `%s'¸¦ ´ÜÀÏ ÄÝ·Ð `%s'·Î À̸§¹Ù²Ü ¼ö ¾ø½À´Ï´Ù´ÜÀÏ ÄÝ·Ð `%s'¸¦ ÀÌÁß ÄÝ·Ð `%s'·Î À̸§¹Ù²Ü ¼ö ¾ø½À´Ï´ÙºÎÇÏ Á¦ÇÑÀ» °­Á¦ÇÒ ¼ö ¾ø½À´Ï´Ù: ÀÌ ¿î¿µ üÁ¦¿¡¼­´Â ºÎÇÏ Á¦ÇÑÀ» °­Á¦ÇÒ ¼ö ¾ø½À´Ï´Ù¸í·ÉÇàù¹øÂ° Ÿ°Ùº¸´Ù ¾Õ¿¡¼­ ¸í·É¾î°¡ ½ÃÀ۵Ǿú½À´Ï´ÙÀÛ¾÷ ÆÄÀÌÇÁ »ý¼º±âº»°ª¿Ï·á sleep(30). °è¼Ó. dup ÀÛ¾÷¼­¹öºó `override' Áö½ÃÀÚºó ¹®ÀÚ¿­Àº ÆÄÀÏ À̸§À¸·Î ºÎÀûÀýÇÕ´Ï´Ùºó º¯¼ö À̸§È¯°æ-e ÇÏÀÇ È¯°æ¿©ºÐÀÇ `%s'¿©ºÐÀÇ `endef'find_and_set_shell °æ·Î Ž»öÀÌ default_shell = %s À¸·Î(·Î) ¼¼ÆÃÇÕ´Ï´Ù. find_and_set_shellÀÌ default_shell = %s À¸·Î(·Î) ¼¼ÆÃÇÕ´Ï´Ù. `word' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ´Â 0º¸´Ù Ä¿¾ß ÇÕ´Ï´Ùfopen (Àӽà ÆÄÀÏ)fwrite (Àӽà ÆÄÀÏ)ÀÛ¾÷¼­¹ö ÆÄÀÌÇÁ ÃʱâÈ­³»ºÎ ¿À·ù: `%s' command_state³»ºÎ ¿À·ù: À߸øµÈ -jobserver-fds ¹®ÀÚ¿­ `%s'³»ºÎ ¿À·ù: ¿©·¯ °³ÀÇ -jobserver-fds ¿É¼ÇÀ߸øµÈ `override' Áö½ÃÀÚÁ¶°Ç¹®¿¡ ºÎÀûÀýÇÑ ¹®¹ýÀÌ ¾²ÀÓlbr$ini_controlÀÌ »óÅ = %d·Î(À¸·Î) ½ÇÆÐ lbr$set_moduleÀÌ ¸ðµâÁ¤º¸¸¦ ÃßÃâÇÏ´Â µ¥ ½ÇÆÐ, »óÅ = %d¸ÞÀÌÅ©ÆÄÀÏ`endef'°¡ ºüÁ³À½. Á¾·áµÇÁö ¾ÊÀº `define'`endif'°¡ ºüÁ³À½¸í·É ¾Õ¿¡ ±ÔÄ¢ÀÌ ºüÁ³À½ºÐ¸®±âÈ£ %sÀÌ(°¡) ºüÁ³À½Å¸°Ù ÆÐÅÏÀÌ ºüÁ³À½È¥ÇÕµÈ ¹¬½ÃÀû ±ÔÄ¢°ú ÀϹÝÀû ±ÔÄ¢¹¬½ÃÀû ÆÐÅÏ ·ê°ú °íÁ¤µÈ ÆÐÅÏ·êÀÌ ¼¯¿´½À´Ï´Ù´ÙÁß Å¸°Ù ÆÐÅÏ0°³`word' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù`wordlist' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù`wordlist' ÇÔ¼öÀÇ µÎ¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´ÙÇÑ °³ÀÇ Á¶°Ç¿¡´Â ÇÑ °³ÀÇ `else'¸¸ ÀÖ¾î¾ß ÇÕ´Ï´ÙÀÛ¾÷ ÆÄÀÌÇÁ Àбâsys$search°¡ %d¸¦ ¸®ÅÏÇÏ¸ç ½ÇÆÐÇß½À´Ï´Ù Ÿ°Ù `%s'Àº(´Â) Ÿ°Ù ÆÐÅÏ¿¡ ¸ÂÁö ¾Ê½À´Ï´ÙŸ°Ù `%s'ÀÌ(°¡) °°Àº ±ÔÄ¢¿¡¼­ ¿©·¯ ¹ø ÁÖ¾îÁ³½À´Ï´ÙŸ°Ù ÆÄÀÏ `%s'Àº(´Â) :¿Í :: Ç׸ñÀ» µ¿½Ã¿¡ °®°í ÀÖ½À´Ï´ÙŸ°Ù ÆÐÅÏ¿¡ `%%'°¡ ¾ø½À´Ï´Ù.`-%c' ¿É¼ÇÀº ¾çÀÇ ÀûºÐ Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù¾ÆÄ«ÀÌºê ¸â¹ö touch´Â VMS¿¡¼­ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ùtouch: ¹®¼­ `%s'°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ùtouch: `%s'¿¡ ´ëÇÏ¿© ar_member_touch¿¡¼­ ½ÇÆÐ ¸®ÅÏ ÄÚµåtouch: ¸â¹ö `%s'°¡ `%s'¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ùtouch: `%s'´Â Àû¹ýÇÑ ¹®¼­°¡ ¾Æ´Õ´Ï´Ù¸â¹ö `%2$s'¸¦ ÂüÁ¶Çϱâ À§ÇØ ¶óÀ̺귯¸® `%1$s'¸¦ ¿­ ¼ö ¾ø½À´Ï´Ùµð¹ö±ë ´Ü°è ÁöÁ¤ `%s'ÀÌ(°¡) À߸øµÇ¾ú½À´Ï´Ù¾Ë ¼ö ¾ø´Â ½ÅÈ£unlink (Àӽà ÆÄÀÏ): ÇÔ¼ö `%s'¿¡ ´ëÇØ Á¾·áµÇÁö ¾ÊÀº È£Ãâ: `%c'°¡ ºüÁ³À½Á¾°áµÇÁö ¾ÊÀº º¯¼ö ÂüÁ¶°¡»ó ¸Þ¸ð¸®°¡ °í°¥µÊ°æ°í: ½Ã°è°¡ À߸øµÇ¾úÀ½ÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù. ºôµå°¡ ºÒ¿ÏÀüÇÒ ¼ö ÀÖ½À´Ï´Ù.°æ°í: ÆÄ»ýµÈ ¸ÞÀÌÅ©¿¡¼­ -jNÀÌ °­Á¦µÇ¾ú½À´Ï´Ù: ÀÛ¾÷¼­¹ö ¸ðµå¸¦ ²ü´Ï´Ù.°æ°í: NUL ¹®ÀÚ°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù; ÁÙÀÇ ³ª¸ÓÁö´Â ¹«½ÃµË´Ï´Ù°æ°í: Ÿ°Ù `%s'¿¡ ´ëÇÑ °ú°Å ¸í·É¾îµéÀ» ¹«½ÃÇÕ´Ï´Ù°æ°í: ÀÛ¾÷¼­¹ö¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù: -j1À» »ç¿ëÇÕ´Ï´Ù. ºÎ¸ð ¸ÞÀÌÅ© ±ÔÄ¢¿¡ `+'¸¦ Ãß°¡ÇÕ´Ï´Ù.°æ°í: Ÿ°Ù `%s'¿¡ ´ëÇÑ ¸í·É¾îº¸´Ù ´Ù¸¥ °ÍÀÌ ¿ì¼±ÇÕ´Ï´Ù°æ°í: Á¤ÀǵÇÁö ¾ÊÀº º¯¼ö `%.*s'windows32_openpipe (): process_init_fd() ½ÇÆÐ ÀÛ¾÷¼­¹ö ¾²±âmake-dfsg-3.81.orig/po/ko.po0000644000175000017500000013472110416553102016110 0ustar srivastasrivasta# Korean messages for GNU make. # Copyright (C) 1996, 2001 Free Software Foundation, Inc. # Bang Jun-Young , 1996. # msgid "" msgstr "" "Project-Id-Version: GNU make 3.79.1\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: 2001-06-08 01:30+0900\n" "Last-Translator: Changwoo Ryu \n" "Language-Team: Korean \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=EUC-KR\n" "Content-Transfer-Encoding: 8-bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "Áö¿øµÇÁö ¾Ê´Â ±â´ÉÀ» »ç¿ëÇÏ·Á°í ÇÔ: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "¾ÆÄ«ÀÌºê ¸â¹ö touch´Â VMS¿¡¼­ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: ¹®¼­ `%s'°¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s'´Â Àû¹ýÇÑ ¹®¼­°¡ ¾Æ´Õ´Ï´Ù" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: ¸â¹ö `%s'°¡ `%s'¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: `%s'¿¡ ´ëÇÏ¿© ar_member_touch¿¡¼­ ½ÇÆÐ ¸®ÅÏ ÄÚµå" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_moduleÀÌ ¸ðµâÁ¤º¸¸¦ ÃßÃâÇÏ´Â µ¥ ½ÇÆÐ, »óÅ = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_controlÀÌ »óÅ = %d·Î(À¸·Î) ½ÇÆÐ " #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "¸â¹ö `%2$s'¸¦ ÂüÁ¶Çϱâ À§ÇØ ¶óÀ̺귯¸® `%1$s'¸¦ ¿­ ¼ö ¾ø½À´Ï´Ù" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "¸â¹ö `%s'%s: %ld¹ÙÀÌÆ®, %ld (%ld) ¿¡¼­.\n" # ÀÌ¹Ì Àß·ÁÁø À̸§À» Ç¥½ÃÇϸ鼭 À̸§ÀÌ Àß·ÁÁ³À» ¼öµµ ÀÖÀ¸´Ï À¯ÀÇÇ϶ó´Â ¶æ #: arscan.c:826 msgid " (name might be truncated)" msgstr " (À̸§ÀÌ Àß·Á³ª°¬À» ¼öµµ ÀÖ½À´Ï´Ù)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " ³¯Â¥ %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, ¸ðµå = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** ÁßÁö.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] ¾ÆÄ«ÀÌºê ¸â¹ö `%s'´Â °¡Â¥ÀÏ ¼ö ÀÖ½À´Ï´Ù; Áö¿ìÁö ¾Ê½À´Ï´Ù" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** ¾ÆÄ«ÀÌºê ¸â¹ö `%s'´Â °¡Â¥ÀÏ ¼ö ÀÖ½À´Ï´Ù; Áö¿ìÁö ¾Ê½À´Ï´Ù" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] ÆÄÀÏ `%s'À»(¸¦) ÁÖÀÔ´Ï´Ù" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** ÆÄÀÏ `%s'À»(¸¦) Áö¿ó´Ï´Ù" #: commands.c:599 msgid "# commands to execute" msgstr "# ½ÇÇàÇÒ ¸í·É¾î" #: commands.c:602 msgid " (built-in):" msgstr " (³»Àå):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (`%s'¿¡¼­, %lu¹øÂ° ÁÙ):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# µð·ºÅ丮\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: statÀ» ÇÒ ¼ö ¾ø¾ú½À´Ï´Ù.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (Ű %s, º¯°æ½Ã°¢ %d): ¿­ ¼ö ¾ø½À´Ï´Ù.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (ÀåÄ¡ %d, ¾ÆÀ̳ëµå [%d,%d,%d]): ¿­ ¼ö ¾ø½À´Ï´Ù.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (ÀåÄ¡ %ld, ¾ÆÀ̳ëµå %ld): ¿­ ¼ö ¾ø½À´Ï´Ù.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (Ű %s, º¯°æ½Ã°¢ %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (ÀåÄ¡ %d, ¾ÆÀ̳ëµå [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (ÀåÄ¡ %ld, ¾ÆÀ̳ëµå %ld): " # ¿©±â¼­ No´Â "No files"¶ó°í ¾²ÀδÙ. ±Ã±ØÀûÀ¸·Î msgid°¡ °íÃÄÁ®¾ß ÇÔ #: dir.c:1050 dir.c:1071 msgid "No" msgstr "0°³" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " ÆÄÀÏ, " # ¿©±â¼­ no´Â "no impossibilities"¶ó°í ¾²ÀδÙ. ±Ã±ØÀûÀ¸·Î msgid°¡ °íÃÄÁ®¾ß ÇÔ #: dir.c:1055 dir.c:1076 msgid "no" msgstr "0°³" #: dir.c:1058 msgid " impossibilities" msgstr " ºÒ°¡´É" #: dir.c:1062 msgid " so far." msgstr " Áö±Ý±îÁö." #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr " %u°³ÀÇ µð·ºÅ丮¿¡¼­ ºÒ°¡´É.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Àç±Í º¯¼ö `%s'´Â ÀÚ±â ÀÚ½ÅÀ» ÂüÁ¶Çϰí ÀÖ½À´Ï´Ù (°á±¹)" #: expand.c:266 msgid "unterminated variable reference" msgstr "Á¾°áµÇÁö ¾ÊÀº º¯¼ö ÂüÁ¶" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "ÆÄÀÏ `%s'ÀÇ %s:%lu¿¡¼­ ¸í·É¾î°¡ ÁöÁ¤µÇ¾ú½À´Ï´Ù," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "ÆÄÀÏ `%s'¸¦ À§ÇÑ ¸í·ÉÀ» ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀ¸·Î ã¾Ò½À´Ï´Ù." #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ÇÏÁö¸¸ `%s'´Â ÀÌÁ¦ `%s'¿Í °°Àº ÆÄÀÏ·Î °£Áֵ˴ϴÙ." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "`%s'¿¡ ´ëÇÑ ¸í·É¾î´Â `%s'¿¡ ´ëÇÑ ¸í·É¾î°¡ ¿ì¼±ÇϹǷΠ¹«½ÃµË´Ï´Ù.." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "´ÜÀÏ ÄÝ·Ð `%s'¸¦ ÀÌÁß ÄÝ·Ð `%s'·Î À̸§¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "ÀÌÁß ÄÝ·Ð `%s'¸¦ ´ÜÀÏ ÄÝ·Ð `%s'·Î À̸§¹Ù²Ü ¼ö ¾ø½À´Ï´Ù" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Áß°£ ÆÄÀÏ `%s'À»(¸¦) ÁÖÀÔ´Ï´Ù" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** Áß°£ ÆÄÀÏ `%s'À»(¸¦) ÁÖÀÔ´Ï´Ù" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: ŸÀÓ½ºÅÆÇÁ°¡ ¹üÀ§¸¦ ¹þ¾î³³´Ï´Ù; %sÀ»(¸¦) ´ëüÇÕ´Ï´Ù" #: file.c:782 msgid "Current time" msgstr "ÇöÀç ½Ã°¢" #: file.c:881 msgid "# Not a target:" msgstr "# Ÿ°ÙÀÌ ¾Æ´Ô:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# ÇÁ·¹½Ã¾î½º ÆÄÀÏ (.PRECIOUSÀÇ ¼±ÇàÁ¶°Ç)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Æ÷´Ï Ÿ°Ù (.PHONYÀÇ ¼±ÇàÁ¶°Ç)." #: file.c:907 msgid "# Command-line target." msgstr "# ¸í·ÉÇà Ÿ°Ù." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# ±âº» ¸ÞÀÌÅ©ÆÄÀÏ È¤Àº MAKEFILES ¸ÞÀÌÅ©ÆÄÀÏ." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀÌ ¿Ï·áµÇ¾ú½À´Ï´Ù." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# ¹¬½ÃÀû ±ÔÄ¢ Ž»öÀÌ ¿Ï·áµÇÁö ¾Ê¾Ò½À´Ï´Ù." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# ¹¬½ÃÀû/°íÁ¤ ÆÐÅÏ ½ºÅÛ: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# ÆÄÀÏÀÌ Áß°£´Ü°èÀÇ ¼±ÇàÁ¶°ÇÀÔ´Ï´Ù." #: file.c:919 msgid "# Also makes:" msgstr "# ´ÙÀ½µµ ¸¸µì´Ï´Ù:" #: file.c:925 msgid "# Modification time never checked." msgstr "# º¯°æ ½Ã°¢ÀÌ °áÄÚ °Ë»çµÇÁö ¾Ê¾ÒÀ½." #: file.c:927 msgid "# File does not exist." msgstr "# ÆÄÀÏÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù." #: file.c:929 msgid "# File is very old." msgstr "# ÆÄÀÏÀÌ ¸Å¿ì ¿À·¡µÇ¾ú½À´Ï´Ù." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# ¸¶Áö¸· º¯°æ %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# ÆÄÀÏÀÌ °»½ÅµÇ¾ú½À´Ï´Ù." #: file.c:937 msgid "# File has not been updated." msgstr "# ÆÄÀÏÀÌ °»½ÅµÇÁö ¾Ê¾Ò½À´Ï´Ù." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# ÇöÀç ½ÇÇàÁßÀÎ ¸í·É (À̰ÍÀº ¹ö±×ÀÔ´Ï´Ù)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# ÇöÀç ½ÇÇàÁßÀÎ ÀÇÁ¸¼º (À̰ÍÀº ¹ö±×ÀÔ´Ï´Ù)." #: file.c:953 msgid "# Successfully updated." msgstr "# ¼º°øÀûÀ¸·Î °»½ÅµÊ." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# °»½ÅµÉ Çʿ䰡 ÀÖÀ½ (-q ¼³Á¤µÊ)." #: file.c:960 msgid "# Failed to be updated." msgstr "# °»½Å¿¡ ½ÇÆÐÇÔ." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# `update_status' ¸â¹ö¿¡ °ªÀÌ À߸øµÇ¾ú½À´Ï´Ù!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# `command_status' ¸â¹ö¿¡ °ªÀÌ À߸øµÇ¾ú½À´Ï´Ù!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# ÆÄÀÏ" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "`word' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "`word' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ´Â 0º¸´Ù Ä¿¾ß ÇÕ´Ï´Ù" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "`wordlist' ÇÔ¼öÀÇ Ã¹¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "`wordlist' ÇÔ¼öÀÇ µÎ¹øÂ° ÀÎÀÚ°¡ ¼ýÀÚ°¡ ¾Æ´Õ´Ï´Ù" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) ½ÇÆÐ (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) ½ÇÆÐ (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() ½ÇÆÐ (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() ½ÇÆÐ\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) Áö¿ó´Ï´Ù\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "ÇÔ¼ö `%2$s'¿¡ ÀÎÀÚ °¹¼ö(%1$d)°¡ ºÎÁ·ÇÕ´Ï´Ù " #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "ÀÌ Ç÷§Æû¿¡¼­´Â ±¸ÇöµÇÁö ¾Ê¾Ò½À´Ï´Ù: `%s' ÇÔ¼ö" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "ÇÔ¼ö `%s'¿¡ ´ëÇØ Á¾·áµÇÁö ¾ÊÀº È£Ãâ: `%c'°¡ ºüÁ³À½" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: `%s'´Â ¾Ö¸ÅÇÑ ¿É¼ÇÀÔ´Ï´Ù\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: `--%s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: `%c%s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: `%s' ¿É¼ÇÀº Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ÀνÄÇÒ ¼ö ¾ø´Â ¿É¼Ç `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ÀνÄÇÒ ¼ö ¾ø´Â ¿É¼Ç `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: À߸øµÈ ¿É¼Ç -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ºÎÀûÀýÇÑ ¿É¼Ç -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ÀÌ ¿É¼ÇÀº Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: `-W %s' ¿É¼ÇÀº ¾Ö¸ÅÇÑ ¿É¼ÇÀÔ´Ï´Ù\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: `-W %s' ¿É¼ÇÀº Àμö¸¦ Çã¿ëÇÏÁö ¾Ê½À´Ï´Ù\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "`%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "`%s'¿¡ ´ëÇÑ ¾ÆÄ«À̺ê¸â¹ö ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "¹¬½ÃÀû ±ÔÄ¢ÀÇ Àç±Í¸¦ ÇÇÇÔ.\n" # ½ºÅÛstemÀ̶õ ÆÐÅÏ ·ê¿¡¼­ prefix/suffix¸¦ Á¦¿ÜÇÑ ³ª¸ÓÁö¸¦ ¸»ÇÑ´Ù. # ¿¹¸¦ µé¾î `%.c'¶ó´Â ÆÐÅÏ¿¡ `hello.c'°¡ µé¾î ¸Â¾ÒÀ» °æ¿ì stemÀº `hello'ÀÌ´Ù. #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "½ºÅÛ `%.*s'¿¡¼­ºÎÅÍ ÆÐÅÏ ±ÔÄ¢ ½Ãµµ.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "ºÒ°¡´ÉÇÑ ¹¬½ÃÀû ¼±ÇàÁ¶°Ç `%s'Àº(´Â) °ÅºÎµË´Ï´Ù.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "ºÒ°¡´ÉÇÑ ±ÔÄ¢ ¼±ÇàÁ¶°Ç `%s'Àº(´Â) °ÅºÎµË´Ï´Ù.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "¹¬½ÃÀû ¼±ÇàÁ¶°Ç `%s'À»(¸¦) ½ÃµµÇÕ´Ï´Ù\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "±ÔÄ¢ ¼±ÇàÁ¶°Ç `%s'À»(¸¦) ½ÃµµÇÕ´Ï´Ù.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "VPATH `%2$s'¿¡¼­ ¼±ÇàÁ¶°Ç `%1$s'À»(¸¦) ã¾Ò½À´Ï´Ù\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Áß°£ ÆÄÀÏ `%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã°í ÀÖ½À´Ï´Ù.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (Àӽà ÆÄÀÏ)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] ¿À·ù 0x%x (¹«½ÃµÊ)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] ¿À·ù 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] ¿À·ù %d (¹«½ÃµÊ)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] ¿À·ù %d" #: job.c:399 msgid " (core dumped)" msgstr " (¸Þ¸ð¸® ´ýÇÁµÊ)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ³¡³ªÁö ¾ÊÀº ÀÛ¾÷À» ±â´Ù¸®°í ÀÖ½À´Ï´Ù...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "»ì¾ÆÀÖ´Â ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (¿ø°Ý)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "½ÇÆÐÇÑ ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx PID %ld %sÀ»(¸¦) °ÅµÖµéÀÔ´Ï´Ù\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "¼º°øÇÑ ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx PID %ld %sÀ»(¸¦) °ÅµÖµéÀÔ´Ï´Ù\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) Áö¿ó´Ï´Ù\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "üÀο¡¼­ ÀÚ½ÄÇÁ·Î¼¼½º 0x%08lx PID %ld %sÀ»(¸¦) Áö¿ó´Ï´Ù.\n" # ??? µð¹ö±ë ¸Þ¼¼Áö #: job.c:862 msgid "write jobserver" msgstr "ÀÛ¾÷¼­¹ö ¾²±â" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "ÀÚ½ÄÇÁ·Î¼¼½º child 0x%08lx (%s) ¿¡ ÅäÅ«À» ³»¾î ÁÝ´Ï´Ù.\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy()°¡ ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ´Â µ¥ ½ÇÆÐÇß½À´Ï´Ù (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "½ÇÇà ½ÇÆÐ¿¡¼­ %d°³ÀÇ Àμö\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "ÀÚ½ÄÇÁ·Î¼¼½º 0x%08lx (%s) PID %ld%sÀ»(¸¦) üÀο¡ ³Ö½À´Ï´Ù.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "ÀÚ½Ä ÇÁ·Î¼¼½º 0x%08lx (%s)¿¡¼­ ÅäÅ«À» ¹Þ¾Ò½À´Ï´Ù.\n" #: job.c:1718 msgid "read jobs pipe" msgstr "ÀÛ¾÷ ÆÄÀÌÇÁ Àбâ" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "ÀÌ ¿î¿µ üÁ¦¿¡¼­´Â ºÎÇÏ Á¦ÇÑÀ» °­Á¦ÇÒ ¼ö ¾ø½À´Ï´Ù" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ºÎÇÏ Á¦ÇÑÀ» °­Á¦ÇÒ ¼ö ¾ø½À´Ï´Ù: " #: 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 "process_easy()°¡ ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ´Â µ¥ ½ÇÆÐÇß½À´Ï´Ù (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "" "ÀÚ½ÄÇÁ·Î¼¼½º pid %d¸¦ °ÅµÖµéÀ̰í, ¾ÆÁ÷ pid %dÀ»(¸¦) ±â´Ù¸®°í ÀÖ½À´Ï´Ù\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: ¸í·ÉÀ» ãÁö ¸øÇßÀ½" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: ¼Ð ÇÁ·Î±×·¥À» ãÁö ¸øÇßÀ½" #: 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ÀÌ ¹Ù²î¾ú½À´Ï´Ù (°ú°Å `%s', ÇöÀç `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Àӽà ¹èÄ¡ ÆÄÀÏ %sÀ»(¸¦) ¸¸µì´Ï´Ù\n" # ??? µð¹ö±ë ¸Þ¼¼Áö #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (%d¹øÂ° ÁÙ) À߸øµÈ ½© ÄÁÅØ½ºÆ® (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "¿É¼Ç:\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "ȣȯ¼ºÀ» À§ÇØ ¹«½ÃµÊ" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "¿©·¯ °¡Áö µð¹ö±ë Á¤º¸¸¦ Ãâ·ÂÇÕ´Ï´Ù" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "¿©·¯ °¡Áö Á¾·ùÀÇ µð¹ö±ë Á¤º¸¸¦ Ãâ·ÂÇÕ´Ï´Ù" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "ÀÌ ¸Þ½ÃÁö¸¦ Ãâ·ÂÇÏ°í ³¡³À´Ï´Ù" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "¸í·É¿¡ ÀÖ´Â ¿À·ù¸¦ ¹«½ÃÇÕ´Ï´Ù" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "µ¿½Ã¿¡ N°³ÀÇ ÀÛ¾÷À» Çã¿ëÇÕ´Ï´Ù; ÀÎÀÚ°¡ ¾øÀ¸¸é ¹«ÇÑ´ë·Î Çã¿ëÇÕ´Ï´Ù" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "¸î¸î Ÿ°ÙÀ» ¸¸µé ¼ö ¾ø´õ¶óµµ °è¼Ó ÁøÇàÇÕ´Ï´Ù" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "makeÀÇ ³»ºÎ µ¥ÀÌŸº£À̽º¸¦ Ãâ·ÂÇÕ´Ï´Ù" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "¸í·ÉÀ» ½ÇÇàÇÏÁö ¾Ê½À´Ï´Ù; Á¾·á »óȲÀÌ °»½Å ¿©ºÎ¸¦ ¸»ÇØ ÁÝ´Ï´Ù" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "³»Àå ¹¬½ÃÀû ±ÔÄ¢À» »ç¿ë ºÒ°¡´ÉÇÏ°Ô ÇÕ´Ï´Ù" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "³»Àå º¯¼ö¸¦ ÁöÁ¤ÇÏÁö ¸øÇÏ°Ô ÇÕ´Ï´Ù" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "Ÿ°ÙÀ» ´Ù½Ã ¸¸µéÁö ¾Ê°í touch¸¸ ÇÕ´Ï´Ù" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "makeÀÇ ¹öÀü ¹øÈ£¸¦ Ãâ·ÂÇÏ°í ³¡³À´Ï´Ù" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "ÇöÀç µð·ºÅ丮¸¦ Ãâ·ÂÇÕ´Ï´Ù" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "¹¬½ÃÀûÀ¸·Î ÄÑÁ® ÀÖ´õ¶óµµ -w¸¦ ²ü´Ï´Ù" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "Á¤ÀǵÇÁö ¾ÊÀº º¯¼ö¸¦ ÂüÁ¶ÇÒ ¶§ °æ°í¸¦ ³À´Ï´Ù" #: main.c:549 msgid "empty string invalid as file name" msgstr "ºó ¹®ÀÚ¿­Àº ÆÄÀÏ À̸§À¸·Î ºÎÀûÀýÇÕ´Ï´Ù" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "µð¹ö±ë ´Ü°è ÁöÁ¤ `%s'ÀÌ(°¡) À߸øµÇ¾ú½À´Ï´Ù" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: ÀÎÅÍ·´Æ®/¿¹¿Ü°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù (ÄÚ¤§ = 0x%x, ÁÖ¼Ò = 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" "ÇÁ·Î±×·¥ %s¿¡¼­ 󸮵ÇÁö ¾ÊÀº ¿¹¿Ü°¡ ¹ß»ýÇß½À´Ï´Ù\n" "¿¹¿ÜÄÚµå = %x\n" "¿¹¿ÜÇ÷¡±× = %x\n" "¿¹¿ÜÁÖ¼Ò = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Á¢±Ù±ÇÇÑ À§¹Ý: ÁÖ¼Ò %x¿¡ ¾²±â\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Á¢±Ù±ÇÇÑ À§¹Ý: ÁÖ¼Ò %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ÀÌ 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 °æ·Î Ž»öÀÌ default_shell = %s À¸·Î(·Î) ¼¼ÆÃÇÕ´Ï´Ù.\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%sÀÌ(°¡) 30Ãʵ¿¾È ÀϽà ÁßÁöµË´Ï´Ù..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "¿Ï·á sleep(30). °è¼Ó.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Ç¥ÁØÀԷ¿¡¼­ ¹Þ¾ÆµéÀÌ´Â ¸ÞÀÌÅ©ÆÄÀÏÀÌ µÎ ¹ø ÀÌ»ó ÁöÁ¤µÇ¾ú½À´Ï´Ù." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (Àӽà ÆÄÀÏ)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (Àӽà ÆÄÀÏ)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "ÀÌ Ç÷§Æû¿¡¼­´Â º´·Ä ÀÛ¾÷(-j)ÀÌ Áö¿øµÇÁö ¾Ê½À´Ï´Ù." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "´ÜÀÏ ÀÛ¾÷ (-j1) ¸ðµå·Î µ¹¾Æ°©´Ï´Ù." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "³»ºÎ ¿À·ù: ¿©·¯ °³ÀÇ -jobserver-fds ¿É¼Ç" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "³»ºÎ ¿À·ù: À߸øµÈ -jobserver-fds ¹®ÀÚ¿­ `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "°æ°í: ÆÄ»ýµÈ ¸ÞÀÌÅ©¿¡¼­ -jNÀÌ °­Á¦µÇ¾ú½À´Ï´Ù: ÀÛ¾÷¼­¹ö ¸ðµå¸¦ ²ü´Ï´Ù." # ??? µð¹ö±ë ¸Þ¼¼Áö #: main.c:1684 msgid "dup jobserver" msgstr "dup ÀÛ¾÷¼­¹ö" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "°æ°í: ÀÛ¾÷¼­¹ö¸¦ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù: -j1À» »ç¿ëÇÕ´Ï´Ù. ºÎ¸ð ¸ÞÀÌÅ© ±ÔÄ¢¿¡ `" "+'¸¦ Ãß°¡ÇÕ´Ï´Ù." #: main.c:1710 msgid "creating jobs pipe" msgstr "ÀÛ¾÷ ÆÄÀÌÇÁ »ý¼º" #: main.c:1725 msgid "init jobserver pipe" msgstr "ÀÛ¾÷¼­¹ö ÆÄÀÌÇÁ ÃʱâÈ­" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "¸ÞÀÌÅ©ÆÄÀÏÀ» ¾÷µ¥ÀÌÆ®Çϰí ÀÖ½À´Ï´Ù....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "¸ÞÀÌÅ©ÆÄÀÏ `%s'Àº(´Â) ¹Ýº¹ÇÒ ¼ö ÀÖ½À´Ï´Ù; ´Ù½Ã ¸¸µéÁö ¾Ê½À´Ï´Ù.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "¸ÞÀÌÅ©ÆÄÀÏ `%s'À» ´Ù½Ã ¸¸µå´Âµ¥ ½ÇÆÐÇÔ." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Æ÷ÇÔµÈ ¸ÞÀÌÅ©ÆÄÀÏ `%s'¸¦ ãÁö ¸øÇß½À´Ï´Ù." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "¸ÞÀÌÅ©ÆÄÀÏ `%s'À» ãÁö ¸øÇß½À´Ï´Ù" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "¿ø·¡ µð·ºÅ丮·Î µ¹¾Æ°¥ ¼ö ¾ø½À´Ï´Ù." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Àç½ÇÇà:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (Àӽà ÆÄÀÏ): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Ÿ°ÙÀÌ ÁöÁ¤µÇÁö ¾Ê¾Ò°í ¸ÞÀÌÅ©ÆÄÀÏÀÌ ¾ø½À´Ï´Ù" #: main.c:2191 msgid "No targets" msgstr "Ÿ°Ù ¾øÀ½" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "ÃÖÁ¾ Ÿ°ÙÀ» °»½ÅÇÕ´Ï´Ù....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "°æ°í: ½Ã°è°¡ À߸øµÇ¾úÀ½ÀÌ ¹ß°ßµÇ¾ú½À´Ï´Ù. ºôµå°¡ ºÒ¿ÏÀüÇÒ ¼ö ÀÖ½À´Ï´Ù." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "»ç¿ë¹ý: %s [¿É¼Ç] [Ÿ°Ù] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" "¹®Á¦Á¡À» ·Î ¾Ë·Á ÁֽʽÿÀ.\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "`-%c' ¿É¼ÇÀº ¾çÀÇ ÀûºÐ Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "`-%c' ¿É¼ÇÀº ¾çÀÇ ÀûºÐ Àμö°¡ ÇÊ¿äÇÕ´Ï´Ù" #: main.c:2942 #, fuzzy, 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 "" ", Richard Stallman°ú Roland McGrath.\n" "%s%s¿¡ ´ëÇÑ ºôµå\n" "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" "%s\tFree Software Foundation, Inc.\n" "%sÀÌ ÇÁ·Î±×·¥Àº ÀÚÀ¯¼ÒÇÁÆ®¿þ¾îÀÔ´Ï´Ù; º¹»çÁ¶°ÇÀº ¼Ò½º¸¦ Âü°íÇϽʽÿÀ.\n" "%s»óǰ¼ºÀ̳ª ƯÁ¤ ¸ñÀû¿¡ ´ëÇÑ ÀûÇÕ¼ºÀ» ºñ·ÔÇÏ¿©, ¾î¶°ÇÑ º¸Áõµµ ÇÏÁö \n" "%s¾Ê½À´Ï´Ù.\n" "\n" "%s¹®Á¦Á¡Àº ·Î ¾Ë·ÁÁֽʽÿÀ.\n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# ¸ÞÀÌÅ© µ¥ÀÌŸº£À̽º, %s¿¡ Ç¥½Ã" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# ¸ÞÀÌÅ© µ¥ÀÌŸ º£À̽º ¸¶Ä§, %s¿¡¼­\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "¾Ë ¼ö ¾ø´Â µð·ºÅ丮" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "¾Ë ¼ö ¾ø´Â µð·ºÅ丮" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "`%s' µð·ºÅ丮\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "`%s' µð·ºÅ丮\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "¾Ë ¼ö ¾ø´Â µð·ºÅ丮" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "¾Ë ¼ö ¾ø´Â µð·ºÅ丮" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "`%s' µð·ºÅ丮\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "`%s' µð·ºÅ丮\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". ¸ØÃã.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "¾Ë ¼ö ¾ø´Â ¿À·ù %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "°¡»ó ¸Þ¸ð¸®°¡ °í°¥µÊ" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s Á¢±Ù: »ç¿ëÀÚ %lu (½ÇÁ¦ %lu), ±×·ì %lu (½ÇÁ¦ %lu)\n" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "ÃʱâÈ­µÊ" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "¿À·ù¸¦ %sÀ¸·Î(·Î) ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù\n" # ??? µð¹ö±ë ¸Þ¼¼Áö #: misc.c:894 #, fuzzy msgid "write error" msgstr "ÀÛ¾÷¼­¹ö ¾²±â" #: read.c:160 msgid "Reading makefiles...\n" msgstr "¸ÞÀÌÅ©ÆÄÀÏÀ» Àаí ÀÖ½À´Ï´Ù\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "¸ÞÀÌÅ©ÆÄÀÏ `%s'¸¦ Àаí ÀÖ½À´Ï´Ù" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (ÃÖÁ¾ Ÿ°ÙÀÌ ¾øÀ½)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (Ž»ö °æ·Î)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (»ó°ü ¾ÈÇÔ)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (~ È®Àå ¾øÀ½)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "Á¶°Ç¹®¿¡ ºÎÀûÀýÇÑ ¹®¹ýÀÌ ¾²ÀÓ" #: read.c:633 msgid "extraneous `endef'" msgstr "¿©ºÐÀÇ `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "ºó º¯¼ö À̸§" #: read.c:662 msgid "empty `override' directive" msgstr "ºó `override' Áö½ÃÀÚ" #: read.c:687 msgid "invalid `override' directive" msgstr "À߸øµÈ `override' Áö½ÃÀÚ" #: read.c:854 msgid "commands commence before first target" msgstr "ù¹øÂ° Ÿ°Ùº¸´Ù ¾Õ¿¡¼­ ¸í·É¾î°¡ ½ÃÀ۵Ǿú½À´Ï´Ù" #: read.c:905 msgid "missing rule before commands" msgstr "¸í·É ¾Õ¿¡ ±ÔÄ¢ÀÌ ºüÁ³À½" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ºÐ¸®±âÈ£ %sÀÌ(°¡) ºüÁ³À½" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (8°³ÀÇ °ø¹é ¸»°í ÅÇÀ» ¾²·Á°í ÇÑ °Í ¾Æ´Ï¾ú½À´Ï±î?)" #: read.c:1152 msgid "missing target pattern" msgstr "Ÿ°Ù ÆÐÅÏÀÌ ºüÁ³À½" #: read.c:1154 msgid "multiple target patterns" msgstr "´ÙÁß Å¸°Ù ÆÐÅÏ" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "Ÿ°Ù ÆÐÅÏ¿¡ `%%'°¡ ¾ø½À´Ï´Ù." #: read.c:1286 msgid "missing `endif'" msgstr "`endif'°¡ ºüÁ³À½" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "`endef' Áö½ÃÀÚ µÚ¿¡ ¿©ºÐÀÇ ±ÛÀÌ ÀÖÀ½" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "`endef'°¡ ºüÁ³À½. Á¾·áµÇÁö ¾ÊÀº `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "`%s' Áö½ÃÀÚ µÚ¿¡ ¿©ºÐÀÇ ¹®ÀåÀÌ ÀÖÀ½" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "¿©ºÐÀÇ `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "ÇÑ °³ÀÇ Á¶°Ç¿¡´Â ÇÑ °³ÀÇ `else'¸¸ ÀÖ¾î¾ß ÇÕ´Ï´Ù" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Ÿ°Ùº° º¯¼ö Á¤ÀÇ Çü½ÄÀÌ Æ²·È½À´Ï´Ù" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "Ÿ°Ù `%s'Àº(´Â) Ÿ°Ù ÆÐÅÏ¿¡ ¸ÂÁö ¾Ê½À´Ï´Ù" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "Ÿ°Ù ÆÄÀÏ `%s'Àº(´Â) :¿Í :: Ç׸ñÀ» µ¿½Ã¿¡ °®°í ÀÖ½À´Ï´Ù" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "Ÿ°Ù `%s'ÀÌ(°¡) °°Àº ±ÔÄ¢¿¡¼­ ¿©·¯ ¹ø ÁÖ¾îÁ³½À´Ï´Ù" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "°æ°í: Ÿ°Ù `%s'¿¡ ´ëÇÑ ¸í·É¾îº¸´Ù ´Ù¸¥ °ÍÀÌ ¿ì¼±ÇÕ´Ï´Ù" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "°æ°í: Ÿ°Ù `%s'¿¡ ´ëÇÑ °ú°Å ¸í·É¾îµéÀ» ¹«½ÃÇÕ´Ï´Ù" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "°æ°í: NUL ¹®ÀÚ°¡ ¹ß°ßµÇ¾ú½À´Ï´Ù; ÁÙÀÇ ³ª¸ÓÁö´Â ¹«½ÃµË´Ï´Ù" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "`%s'¸¦ À§ÇØ ÇÒ ÀÏÀÌ ¾ø½À´Ï´Ù" #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s'´Â ÀÌ¹Ì °»½ÅµÇ¾ú½À´Ï´Ù." # pruneÀÌ truncateÀÇ ÀǹÌÀΰ¡ Áö¿î´Ù´Â ÀǹÌÀΰ¡?? #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "`%s' ÆÄÀÏÀ» Àß¶ó³»°í ÀÖ½À´Ï´Ù.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sŸ°Ù `%s'¸¦ ¸¸µé ±ÔÄ¢ÀÌ ¾øÀ½%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%1$s`%3$s'¿¡¼­ ÇÊ¿ä·Î Çϴ Ÿ°Ù `%2$s'¸¦ ¸¸µé ±ÔÄ¢ÀÌ ¾ø½À´Ï´Ù%4$s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'À»(¸¦) °í·ÁÇÕ´Ï´Ù.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "ÃÖ±Ù¿¡ `%s' ÆÄÀÏÀ» °»½ÅÇÏ·Á°í ½ÃµµÇÏ¿´°í ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "ÆÄÀÏ `%s'´Â ÀÌ¹Ì °ËÅäµÇ¾ú½À´Ï´Ù.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "¾ÆÁ÷ `%s' ÆÄÀÏÀ» °»½ÅÇϰí ÀÖ½À´Ï´Ù.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "`%s' ÆÄÀÏÀÇ °»½ÅÀ» ¸¶ÃƽÀ´Ï´Ù.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "`%s' ÆÄÀÏÀº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "`%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ã¾Ò½À´Ï´Ù.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "`%s'¿¡ ´ëÇÑ ¹¬½ÃÀû ±ÔÄ¢À» ãÁö ¸øÇß½À´Ï´Ù.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "`%s'¿¡ ´ëÇØ ³»Á¤µÈ ¸í·ÉÀ» »ç¿ëÇÔ.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "%s <- %s »óÈ£ ÀÇÁ¸¼ºÀº ¹«½ÃµË´Ï´Ù." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'ÀÇ ¼±ÇàÁ¶°ÇÀ» ¸¶ÃƽÀ´Ï´Ù.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "`%s'ÀÇ ¼±ÇàÁ¶°ÇÀÌ ¸¸µé¾îÁö°í ÀÖ½À´Ï´Ù.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'À»(¸¦) Æ÷±âÇÕ´Ï´Ù.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "¿À·ù·Î ÀÎÇØ Ÿ°Ù `%s'¸¦ ´Ù½Ã ¸¸µéÁö ¸øÇß½À´Ï´Ù." #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "¼±ÇàÁ¶°Ç `%s'ÀÌ(°¡) Ÿ°Ù `%s'º¸´Ù ¸ÕÀú ¸¸µé¾îÁ³½À´Ï´Ù.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Ÿ°Ù `%2$s'ÀÇ ¼±ÇàÁ¶°Ç %1$sÀº(´Â) Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "¼±ÇàÁ¶°Ç `%s'ÀÌ(°¡) Ÿ°Ù `%s'º¸´Ù ÃÖ±Ù¿¡ ¸¸µé¾îÁ³½À´Ï´Ù.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "¼±ÇàÁ¶°Ç `%s'ÀÌ(°¡) Ÿ°Ù `%s'º¸´Ù ¸ÕÀú ¸¸µé¾îÁ³½À´Ï´Ù.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Ÿ°Ù `%s'ÀÌ(°¡) µÎ °³ÀÇ ÄÝ·ÐÀÌ ºÙ¿©Á³Áö¸¸ ¼±ÇàÁ¶°ÇÀÌ ¾ø½À´Ï´Ù.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "`%s'¿¡ ´ëÇÑ ¸í·É¾î°¡ ¾ø°í ¾î¶² ¼±ÇàÁ¶°Çµµ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Ÿ°Ù `%s'À»(¸¦) ´Ù½Ã ¸¸µé Çʿ䰡 ¾ø½À´Ï´Ù." #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; VPATH À̸§ `%s'À»(¸¦) »ç¿ëÇÕ´Ï´Ù" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Ÿ°Ù `%s'¸¦ ´Ù½Ã ¸¸µé¾î¾ß ÇÕ´Ï´Ù.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " VPATH À̸§ `%s'À»(¸¦) ¹«½ÃÇÕ´Ï´Ù.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "`%s'¶ó´Â ¸í·ÉÀÌ ½ÇÇà ÁßÀÔ´Ï´Ù.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'¸¦ ´Ù½Ã ¸¸µå´Â µ¥ ½ÇÆÐÇß½À´Ï´Ù.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'¸¦ ¼º°øÀûÀ¸·Î ´Ù½Ã ¸¸µé¾ú½À´Ï´Ù.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Ÿ°Ù ÆÄÀÏ `%s'ÀÌ(°¡) -q ÇÏ¿¡ ´Ù½Ã ¸¸µé¾îÁ®¾ß ÇÕ´Ï´Ù.\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** ÆÄÀÏ `%s'°¡ ¹Ì·¡ÀÇ º¯°æ ½Ã°¢À» °¡Áö°í ÀÖ½À´Ï´Ù (%s > %s)" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** ÆÄÀÏ `%s'°¡ ¹Ì·¡ÀÇ º¯°æ ½Ã°¢À» °¡Áö°í ÀÖ½À´Ï´Ù (%s > %s)" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNSÀÇ ¿ø¼Ò `%s'ÀÌ(°¡) ÆÐÅÏÀÌ ¾Æ´Õ´Ï´Ù" # ??? µð¹ö±ë ¸Þ¼¼Áö -- ¹ºÁö ¾Ë±â ¾î·Á¿ò #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "CustomsÀº exportµÇÁö ¾ÊÀ» °ÍÀÔ´Ï´Ù: %s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# ¹¬½ÃÀû ±ÔÄ¢ ¾øÀ½." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# ¹¬½ÃÀû ±ÔÄ¢ ¾øÀ½." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u°³ÀÇ ¹¬½ÃÀû ±ÔÄ¢, %u" #: rule.c:575 msgid " terminal." msgstr " Å͹̳Î." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "¹ö±×: num_pattern_rules ¿À·ù! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "¾Ë ¼ö ¾ø´Â ½ÅÈ£" #: signame.c:93 msgid "Hangup" msgstr "²÷¾îÁü" #: signame.c:96 msgid "Interrupt" msgstr "ÀÎÅÍ·´Æ®" #: signame.c:99 msgid "Quit" msgstr "Á¾·á" #: signame.c:102 msgid "Illegal Instruction" msgstr "À߸øµÈ ¸í·É" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "ÃßÀû/Áß´ÜÁ¡ Æ®·¦" #: signame.c:110 msgid "Aborted" msgstr "ÁߴܵÊ" #: signame.c:113 msgid "IOT trap" msgstr "IOT Æ®·¦" #: signame.c:116 msgid "EMT trap" msgstr "EMT Æ®·¦" #: signame.c:119 msgid "Floating point exception" msgstr "ºÎµ¿ ¼Ò¼öÁ¡ ¿¹¿Ü" #: signame.c:122 msgid "Killed" msgstr "Á×¾úÀ½" #: signame.c:125 msgid "Bus error" msgstr "¹ö½º ¿À·ù" #: signame.c:128 msgid "Segmentation fault" msgstr "¼¼±×¸àÅ×ÀÌ¼Ç ¿À·ù" #: signame.c:131 msgid "Bad system call" msgstr "À߸øµÈ ½Ã½ºÅÛ È£Ãâ" #: signame.c:134 msgid "Broken pipe" msgstr "±ú¾îÁø ÆÄÀÌÇÁ" #: signame.c:137 msgid "Alarm clock" msgstr "ÀÚ¸íÁ¾ ½Ã°è" #: signame.c:140 msgid "Terminated" msgstr "Á¾·áµÊ" #: signame.c:143 msgid "User defined signal 1" msgstr "»ç¿ëÀÚ Á¤ÀÇ ½ÅÈ£ 1" #: signame.c:146 msgid "User defined signal 2" msgstr "»ç¿ëÀÚ Á¤ÀÇ ½ÅÈ£ 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "ÀÚ½ÄÀÌ Á¾·áµÇ¾úÀ½" #: signame.c:157 msgid "Power failure" msgstr "Àü·Â Áß´Ü" #: signame.c:160 msgid "Stopped" msgstr "ÁßÁöµÊ" #: signame.c:163 msgid "Stopped (tty input)" msgstr "ÁßÁöµÊ (tty ÀÔ·Â)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "ÁßÁöµÊ (tty Ãâ·Â)" #: signame.c:169 msgid "Stopped (signal)" msgstr "ÁßÁöµÊ (½Ã±×³Î)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU ½Ã°£ Á¦ÇÑ ÃʰúµÊ" #: signame.c:175 msgid "File size limit exceeded" msgstr "ÆÄÀÏ Å©±â Á¦ÇÑ ÃʰúµÊ" #: signame.c:178 msgid "Virtual timer expired" msgstr "°¡»ó ŸÀÌ¸Ó ½Ã°£ ÃʰúµÊ" #: signame.c:181 msgid "Profiling timer expired" msgstr "ÇÁ·ÎÆÄÀϸµ ŸÀÌ¸Ó ½Ã°£ ÃʰúµÊ" #: signame.c:187 msgid "Window changed" msgstr "âÀÌ ¹Ù²î¾úÀ½" #: signame.c:190 msgid "Continued" msgstr "°è¼ÓµÊ" #: signame.c:193 msgid "Urgent I/O condition" msgstr "±ä±ÞÇÑ ÀÔÃâ·Â »óȲ" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "ÀÔÃâ·Â °¡´É" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "ÀÚ¿ø ¼Õ½Ç" #: signame.c:215 msgid "Danger signal" msgstr "À§Çè ½ÅÈ£" #: signame.c:218 msgid "Information request" msgstr "Á¤º¸ ¿äû" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "ºÎµ¿¼Ò¼öÁ¡ ¿¬»ê º¸Á¶ÇÁ·Î¼¼¼­°¡ ¾ø½À´Ï´Ù" #: 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 "±âº»°ª" #: variable.c:1372 msgid "environment" msgstr "ȯ°æ" #: variable.c:1375 msgid "makefile" msgstr "¸ÞÀÌÅ©ÆÄÀÏ" #: variable.c:1378 msgid "environment under -e" msgstr "-e ÇÏÀÇ È¯°æ" #: variable.c:1381 msgid "command line" msgstr "¸í·ÉÇà" #: variable.c:1384 msgid "`override' directive" msgstr "`override' Áö½ÃÀÚ" #: variable.c:1387 msgid "automatic" msgstr "ÀÚµ¿" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (`%s'¿¡¼­, %lu¹øÂ° ÁÙ):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %2$u°³ÀÇ ÇØ½¬ ¹öŶ¿¡ %1$u°³ÀÇ º¯¼ö.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# º¯¼ö\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# ÆÐÅÏÀ» À§ÇÑ º¯¼ö °ªµé" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# ÆÐÅÏÀ» À§ÇÑ º¯¼ö °ªµéÀÌ ¾ø½À´Ï´Ù." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u°³ÀÇ ÆÐÅÏÀ» À§ÇÑ º¯¼ö °ªµé" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "°æ°í: Á¤ÀǵÇÁö ¾ÊÀº º¯¼ö `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search°¡ %d¸¦ ¸®ÅÏÇÏ¸ç ½ÇÆÐÇß½À´Ï´Ù\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "°æ°í: ºñ¾î ÀÖ´Â ¸®´ÙÀÌ·º¼Ç\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "³»ºÎ ¿À·ù: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-°æ°í, CTRL-Y´Â ÆÄ»ýµÈ ÇÁ·Î¼¼½ºµéÀ» ±×´ë·Î ³²°ÜµÑ °ÍÀÔ´Ï´Ù.\n" # DCL - Digital Command Language, VMS¿¡¼­¸¸ Á¸ÀçÇÏ´Â shell languageÀÇ ÀÏÁ¾ #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-°æ°í, DCL¿¡¼­ CTRL-Y¸¦ ´Ù½Ã »ç¿ë°¡´ÉÇϵµ·Ï ÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "³»Àå [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "³»Àå CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "³»Àå RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "¾Ë ¼ö ¾ø´Â ³»Àå ¸í·É¾î `%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "¿À·ù, ºó ¸í·É¾î\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "ÀÔ·ÂÀ» %s¿¡¼­ ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "¿À·ù¸¦ %sÀ¸·Î(·Î) ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Ãâ·ÂÀ» %s¿¡¼­ ¸®´ÙÀÌ·ºÆ®ÇÕ´Ï´Ù\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "´ë½Å %s¸¦ ½ÇÇàÇÔ\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "½ÇÇà ¿À·ù, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH Ž»ö °æ·Î\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# `vpath' Ž»ö °æ·Î°¡ ¾øÀ½." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u°³ÀÇ `vpath' Ž»ö °æ·Î.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# ÀϹÝÀûÀÎ (`VPATH' º¯¼ö) Ž»ö °æ·Î°¡ ¾øÀ½." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# ÀϹÝÀûÀÎ (`VPATH' º¯¼ö) Ž»ö °æ·Î:\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# ÆÄÀÏ ¾øÀ½." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %2$u°³ÀÇ ÇØ½¬ ¹öŶ¿¡ %1$u°³ÀÇ ÆÄÀÏ.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# ¹öŶ´ç %.3f°³ÀÇ ÆÄÀÏ, ÇÑ °³ÀÇ ¹öŶ¿¡ ÃÖ´ë %u°³ÀÇ ÆÄÀÏ.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "¹®¹ý ¿À·ù, ¾ÆÁ÷ '\"' ¾È¿¡ ÀÖ½À´Ï´Ù\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "" #~ "SIGCHLD ½Ã±×³ÎÀ» ¹Þ¾Ò½À´Ï´Ù; %u°³ÀÇ ÀÚ½ÄÇÁ·Î¼¼½º°¡ ³¡³ªÁö ¾Ê¾Ò½À´Ï´Ù.\n" #~ msgid "DIRECTORY" #~ msgstr "<µð·ºÅ丮>" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "ÀÏÀ» ó¸®Çϱâ Àü¿¡ ¸ÕÀú <µð·ºÅ丮>·Î À̵¿ÇÕ´Ï´Ù" #~ msgid "FLAGS" #~ msgstr "<Ç÷¡±×>" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "µð¹ö°Å¸¦ ºÙÀÏ ¼ö ÀÖµµ·Ï ÇÁ·Î¼¼½º¸¦ ÀϽà ÁߴܽÃŵ´Ï´Ù" #~ msgid "Environment variables override makefiles" #~ msgstr "ȯ°æº¯¼ö°¡ ¸ÞÀÌÅ©ÆÄÀϺ¸´Ù ¿ì¼±ÇÕ´Ï´Ù" #~ msgid "FILE" #~ msgstr "<ÆÄÀÏ>" #~ msgid "Read FILE as a makefile" #~ msgstr "<ÆÄÀÏ>À» ¸ÞÀÌÅ©ÆÄÀÏ·Î ÀнÀ´Ï´Ù" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Æ÷ÇÔ½Ãų ¸ÞÀÌÅ©ÆÄÀÏÀ» <µð·ºÅ丮>¿¡¼­ ã½À´Ï´Ù" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "ºÎÇϰ¡ N º¸´Ù ÀÛÁö ¾ÊÀ¸¸é ´ÙÁß ÀÛ¾÷À» ½ÃÀÛÇÏÁö ¾Ê½À´Ï´Ù" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "½ÇÁ¦·Î ¾î¶² ¸í·Éµµ ½ÇÇàÇÏÁö ¾Ê½À´Ï´Ù; ±×³É Àμ⸸ ÇÕ´Ï´Ù" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "FILEÀ» ¸Å¿ì ¿À·¡µÈ °ÍÀ¸·Î °£ÁÖÇÏ°í ´Ù½Ã ¸¸µéÁö ¾Ê½À´Ï´Ù" #~ msgid "Don't echo commands" #~ msgstr "¸í·ÉÀ» ¹ÝÇâÇÏÁö ¾Ê½À´Ï´Ù" #~ msgid "Turns off -k" #~ msgstr "-k¸¦ ²ü´Ï´Ù" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "ÆÄÀÏÀ» ¿µ¿øÈ÷ »õ·Î¿î °ÍÀ¸·Î °£ÁÖÇÕ´Ï´Ù" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "sh.exe¸¦ »ç¿ëÇÒ ¼ö ¾øÀ¸¸é -j ȤÀº -jobs¸¦ ÁöÁ¤ÇÏÁö ¾Ê½À´Ï´Ù" #~ msgid "Resetting make for single job mode." #~ msgstr "make°¡ ´ÜÀÏ ÀÛ¾÷ ¸ðµå·Î º¹±ÍÇÕ´Ï´Ù" #~ msgid "Entering" #~ msgstr "µé¾î°¨" #~ msgid "Leaving" #~ msgstr "³ª°¨" #~ msgid "no file name for `%sinclude'" #~ msgstr "`%sinclude'¿¡ ÆÄÀÏÀ̸§ÀÌ ¾ø½À´Ï´Ù" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "Ÿ°Ù `%s'Àº(´Â) ¼±ÇàÁ¶°Ç ÆÐÅÏÀ» ºó °ªÀ¸·Î ³»¹ö·Á µÎ°Ô µË´Ï´Ù" #~ msgid "# No variables." #~ msgstr "# º¯¼ö ¾øÀ½." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# ¹öŶ´ç Æò±Õ %.1f°³ÀÇ º¯¼ö, ÇÑ °³ÀÇ ¹öŶ¿¡ ÃÖ´ë %u°³.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# ¹öŶ´ç Æò±Õ %d.%d°³ÀÇ º¯¼ö, ÇÑ °³ÀÇ ¹öŶ¿¡ ÃÖ´ë %u°³.\n" make-dfsg-3.81.orig/po/make.pot0000644000175000017500000007577610416553102016616 0ustar srivastasrivasta# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR Free Software Foundation, Inc. # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "" #: arscan.c:826 msgid " (name might be truncated)" msgstr "" #: arscan.c:828 #, c-format msgid " Date %s" msgstr "" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr "" #: commands.c:422 msgid "*** Break.\n" msgstr "" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "" #: commands.c:599 msgid "# commands to execute" msgstr "" #: commands.c:602 msgid " (built-in):" msgstr "" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr "" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "" #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "" #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "" #: dir.c:1050 dir.c:1071 msgid "No" msgstr "" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr "" #: dir.c:1055 dir.c:1076 msgid "no" msgstr "" #: dir.c:1058 msgid " impossibilities" msgstr "" #: dir.c:1062 msgid " so far." msgstr "" #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr "" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "" #: expand.c:266 msgid "unterminated variable reference" msgstr "" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "" #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "" #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" #: 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 "" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "" #: file.c:782 msgid "Current time" msgstr "" #: file.c:881 msgid "# Not a target:" msgstr "" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "" #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "" #: file.c:907 msgid "# Command-line target." msgstr "" #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "" #: file.c:911 msgid "# Implicit rule search has been done." msgstr "" #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "" #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "" #: file.c:919 msgid "# Also makes:" msgstr "" #: file.c:925 msgid "# Modification time never checked." msgstr "" #: file.c:927 msgid "# File does not exist." msgstr "" #: file.c:929 msgid "# File is very old." msgstr "" #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "" #: file.c:937 msgid "# File has been updated." msgstr "" #: file.c:937 msgid "# File has not been updated." msgstr "" #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "" #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "" #: file.c:953 msgid "# Successfully updated." msgstr "" #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "" #: file.c:960 msgid "# Failed to be updated." msgstr "" #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "" #: file.c:989 msgid "" "\n" "# Files" msgstr "" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "" #: function.c:1453 #, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "" #: function.c:1464 #, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "" #: function.c:1469 #, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "" #: function.c:2101 #, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "" #: function.c:2113 #, c-format msgid "unimplemented on this platform: function `%s'" msgstr "" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "" #: job.c:399 msgid " (core dumped)" msgstr "" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "" #: 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 "" #: 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 "" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "" #: job.c:862 msgid "write jobserver" msgstr "" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "" #: job.c:1383 #, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "" #: job.c:1718 msgid "read jobs pipe" msgstr "" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "" #: 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 #, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "" #: 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 "" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" #: main.c:291 msgid "Options:\n" msgstr "" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr "" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr "" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr "" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" #: main.c:549 msgid "empty string invalid as file name" msgstr "" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "" #: main.c:670 #, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" #: main.c:677 #, c-format msgid "" "\n" "Unhandled exception filter called from program %s\n" "ExceptionCode = %lx\n" "ExceptionFlags = %lx\n" "ExceptionAddress = %lx\n" msgstr "" #: main.c:685 #, c-format msgid "Access violation: write operation at address %lx\n" msgstr "" #: main.c:686 #, c-format msgid "Access violation: read operation at address %lx\n" msgstr "" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "" #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "" #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "" #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "" #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" #: main.c:1684 msgid "dup jobserver" msgstr "" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" #: main.c:1710 msgid "creating jobs pipe" msgstr "" #: main.c:1725 msgid "init jobserver pipe" msgstr "" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "" #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "" #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "" #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "" #: main.c:2140 msgid "unlink (temporary file): " msgstr "" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "" #: main.c:2191 msgid "No targets" msgstr "" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "" #: 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 "" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "" #: misc.c:285 msgid ". Stop.\n" msgstr "" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "" #: misc.c:667 msgid "Initialized access" msgstr "" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "" #: misc.c:894 msgid "write error" msgstr "" #: read.c:160 msgid "Reading makefiles...\n" msgstr "" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "" #: read.c:317 #, c-format msgid " (no default goal)" msgstr "" #: read.c:319 #, c-format msgid " (search path)" msgstr "" #: read.c:321 #, c-format msgid " (don't care)" msgstr "" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr "" #: read.c:623 msgid "invalid syntax in conditional" msgstr "" #: read.c:633 msgid "extraneous `endef'" msgstr "" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "" #: read.c:662 msgid "empty `override' directive" msgstr "" #: read.c:687 msgid "invalid `override' directive" msgstr "" #: read.c:854 msgid "commands commence before first target" msgstr "" #: read.c:905 msgid "missing rule before commands" msgstr "" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr "" #: read.c:1152 msgid "missing target pattern" msgstr "" #: read.c:1154 msgid "multiple target patterns" msgstr "" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "" #: read.c:1286 msgid "missing `endif'" msgstr "" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "" #: read.c:1482 msgid "only one `else' per conditional" msgstr "" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "" #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "" #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "" #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "" #: 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 "" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "" #: 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 "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr "" #: 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 "" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "" #: 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 "" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" #: rule.c:575 msgid " terminal." msgstr "" #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "" #: signame.c:85 msgid "unknown signal" msgstr "" #: signame.c:93 msgid "Hangup" msgstr "" #: signame.c:96 msgid "Interrupt" msgstr "" #: signame.c:99 msgid "Quit" msgstr "" #: signame.c:102 msgid "Illegal Instruction" msgstr "" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "" #: signame.c:110 msgid "Aborted" msgstr "" #: signame.c:113 msgid "IOT trap" msgstr "" #: signame.c:116 msgid "EMT trap" msgstr "" #: signame.c:119 msgid "Floating point exception" msgstr "" #: signame.c:122 msgid "Killed" msgstr "" #: signame.c:125 msgid "Bus error" msgstr "" #: signame.c:128 msgid "Segmentation fault" msgstr "" #: signame.c:131 msgid "Bad system call" msgstr "" #: signame.c:134 msgid "Broken pipe" msgstr "" #: signame.c:137 msgid "Alarm clock" msgstr "" #: signame.c:140 msgid "Terminated" msgstr "" #: signame.c:143 msgid "User defined signal 1" msgstr "" #: signame.c:146 msgid "User defined signal 2" msgstr "" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "" #: signame.c:157 msgid "Power failure" msgstr "" #: signame.c:160 msgid "Stopped" msgstr "" #: signame.c:163 msgid "Stopped (tty input)" msgstr "" #: signame.c:166 msgid "Stopped (tty output)" msgstr "" #: signame.c:169 msgid "Stopped (signal)" msgstr "" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "" #: signame.c:175 msgid "File size limit exceeded" msgstr "" #: signame.c:178 msgid "Virtual timer expired" msgstr "" #: signame.c:181 msgid "Profiling timer expired" msgstr "" #: signame.c:187 msgid "Window changed" msgstr "" #: signame.c:190 msgid "Continued" msgstr "" #: signame.c:193 msgid "Urgent I/O condition" msgstr "" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "" #: signame.c:203 msgid "SIGWIND" msgstr "" #: signame.c:206 msgid "SIGPHONE" msgstr "" #: signame.c:212 msgid "Resource lost" msgstr "" #: signame.c:215 msgid "Danger signal" msgstr "" #: signame.c:218 msgid "Information request" msgstr "" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "" #: 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 "" #: variable.c:1372 msgid "environment" msgstr "" #: variable.c:1375 msgid "makefile" msgstr "" #: variable.c:1378 msgid "environment under -e" msgstr "" #: variable.c:1381 msgid "command line" msgstr "" #: variable.c:1384 msgid "`override' directive" msgstr "" #: variable.c:1387 msgid "automatic" msgstr "" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr "" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" make-dfsg-3.81.orig/po/nl.gmo0000644000175000017500000011131310416553102016244 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H=\KU\H¡\oê\@Z]=›]UÙ]V/^•†^r_‹_I`ie`FÏ`9aKPaLœa8éa "b#-b#Qb ubƒb*—bÂbÔbëbcc4cGc Pc [chc yc šc §c>²c ñc$ÿc?$dPddµdÎdçde' eHe/_e4e*Äe1ïe1!fSf)kf,•f!Âf.äfg,g&Hg?og ¯g9Ðg& h?1h#qh•h ¯h4¼h+ñhCi"ai„ii”i)¯i Ùi%úi j!=j<_jœj·j)Òj!üj$k)Ck*mk$˜k%½kãkÿk3l*Ol;zl­¶l-dm$’m)·m ám;n>n On,pn#nYÁn@o%\o‚o“o¦o6ÅoUüo Rp'_p)‡p ±pÒp åp)ïp7qQqcquq‰q ¡q¯q#·q$Ûq r r1r)Qr){r¥rJ¾rO s*Ys8„s"½s às$ës%t-6t%dt Št —t ¸t$Ætëtu&uBu_u+u/«uÛu÷u$v.qŽ °Ž*ÑŽ*üŽ"'?J+ж%Ç5í&#JVhN¿D‘=S‘\‘‘Bî‘.1’4`’ •’¡’±’­ä;—Ò<wÞ[`v,,0×Z65’l$ ÐDó"7O³ ªM4S<`Ñ |5DeÁã‚IJúákFù\¹fohõð/2©ßF>ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-06-29 22:55+0200 Last-Translator: Benno Schulenberg Language-Team: Dutch MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 1.10.1 # %u 'vpath'-zoekpaden. # %u impliciete regels, %u # %u patroonspecifieke variabelewaarden # Mappen # Bestanden # Make-gegevensbank voltooid op %s # Algemeen zoekpad ('VPATH'-variabele): # # Impliciete regels # Make-gegevensbank, weergegeven op %s # Geen algemeen zoekpad ('VPATH'-variabele). # Geen impliciete regels. # Geen patroonspecifieke variabelewaarden # Patroonspecifieke variabelewaarden # VPATH-zoekpaden # Variabelen # hashtabel-statistieken van bestanden: # %sDit programma is gemaakt voor %s %sDit programma is gemaakt voor %s (%s) %d argumenten geteld bij mislukte start Dit programma is gemaakt voor %s Dit programma is gemaakt voor %s (%s) --debug[=VLAGGEN] Verschillende soorten debuginformatie weergeven. --no-print-directory Optie -w uitzetten, zelfs als het impliciet aangezet was. --warn-undefined-variables Waarschuwen als naar een ongedefinieerde variabele wordt verwezen. -B, --always-make Onvoorwaardelijk alle doelen maken. -C MAP, --directory=MAP Naar MAP gaan alvorens iets te doen. -I MAP, --include-dir=MAP MAP doorzoeken naar ingesloten makefiles. -L, --check-symlink-times De laatste mtime tussen symbolische koppeling en doel gebruiken. -R, --no-builtin-variables Ingebouwde variabele-instellingen uitzetten. -S, --no-keep-going, --stop Optie -k uitzetten. -W BESTAND, --what-if=BESTAND, --new-file=BESTAND, --assume-new=BESTAND BESTAND als oneindig nieuw beschouwen. -b, -m Genegeerd voor compatibiliteit. -d Veel informatie weergeven voor het debuggen. -e, --environment-overrides Omgevingsvariabelen gaan boven makefiles. -f BESTAND, --file=BESTAND, --makefile=BESTAND BESTAND lezen als een makefile. -h, --help Dit bericht weergeven en stoppen. -i, --ignore-errors Fouten van opdrachten negeren. -j [N], --jobs[=N] N taken tegelijk toestaan; oneindig bij geen argument. -k, --keep-going Doorgaan als sommige doelen niet gemaakt kunnen worden. -l [N], --load-average[=N], --max-load[=N] Niet meerdere taken starten, behalve als systeembelasting lager is dan N. -n, --just-print, --dry-run, --recon Opdrachten niet uitvoeren, alleen weergeven. -o BESTAND, --old-file=BESTAND, --assume-old=BESTAND BESTAND als erg oud beschouwen en niet opnieuw maken. -p, --print-data-base Interne gegevensbank van 'make' weergeven. -q, --question Geen opdrachten uitvoeren; afsluitstatus geeft aan of alles bijgewerkt is. -r, --no-builtin-rules Ingebouwde impliciete regels uitzetten. -s, --silent, --quiet Opdrachten niet weergeven. -t, --touch Doelen aanraken in plaats van opnieuw maken. -v, --version Versienummer van 'make' weergeven en stoppen. -w, --print-directory De huidige map weergeven. Datum %s VPATH-naam '%s' wordt genegeerd. uid = %d, gid = %d, modus = 0%o. (ingebouwd): (coredump gemaakt) (bedoelde u TAB in plaats van 8 spaties?) (maakt niet uit) (van '%s', regel %lu) (van '%s', regel %lu): (naam kan afgekapt zijn) (geen standaarddoel) (geen ~-expansie) (ginds) (zoekpad) bestanden, onmogelijkheden onmogelijkheden in %lu mappen. tot nu toe. terminal.# Een standaard, of MAKEFILES, of -include/sinclude makefile.# Maakt ook:# Doel afkomstig van opdrachtregel.# Op dit moment lopende opdrachten (DIT IS EEN PROGRAMMAFOUT).# Op dit moment lopende afhankelijkheden-opdrachten (DIT IS EEN PROGRAMMAFOUT).# Bijwerken is mislukt.# Bestand bestaat niet.# Bestand is bijgewerkt.# Bestand is niet bijgewerkt.# Bestand is een tussentijds vereiste.# Bestand is erg oud.# Impliciete regel-zoekopdracht is uitgevoerd.# Impliciete regel-zoekopdracht is niet uitgevoerd.# Impliciete/statische patroonstam: '%s' # Ongeldige waarde in 'command_state'-onderdeel!# Ongeldige waarde in 'update_status'-onderdeel!# Laatst gewijzigd %s # Wijzigingstijd is nooit gecontroleerd.# Moet worden bijgewerkt (-q is ingesteld).# Nepdoel (vereiste van .PHONY).# Waardevol bestand (vereiste van .PRECIOUS).# Succesvol bijgewerkt.# uit te voeren opdrachten# %s (apparaat %d, inode [%d,%d,%d]): # %s (apparaat %d, inode [%d,%d,%d]): kan niet worden geopend. # %s (apparaat %ld, inode %ld): # %s (apparaat %ld, inode %ld): kan niet worden geopend. # %s (sleutel %s, wijzigingstijd %d): # %s (sleutel %s, wijzigingstijd %d): kan niet worden geopend. # kan status van %s niet opvragen. # Geen 'vpath'-zoekpaden.# Geen doel:# variabele verzameling van hashtabel-statistieken: $SHELL is gewijzigd (was '%s', is nu '%s') %s (regel %d) Onjuiste shell-context (!unixy && !batch_mode_shell) %s slaapt gedurende 30 seconden...%s%s: %s%s: %s%s: Opdracht niet gevonden%s: Een onbekende map wordt binnengegaan %s: Map '%s' wordt binnengegaan %s: Een onbekende map wordt verlaten %s: Map '%s' wordt verlaten %s: Shell-programma niet gevonden%s: Tijdsstempel ligt buiten bereik; wordt vervangen door %s%s: ongeldige optie -- %c %s: ongeldige optie -- %c %s: optie '%c%s' staat geen argument toe %s: optie '%s' is niet eenduidig %s: optie '%s' vereist een argument %s: optie '--%s' staat geen argument toe %s: optie '-W %s' staat geen argument toe %s: optie '-W %s' is niet eenduidig %s: optie vereist een argument -- %c %s: onbekende optie '%c%s' %s: onbekende optie '--%s' %s: gebruiker %lu (echt %lu), groep %lu (echt %lu) %sEr is geen regel om doel '%s' te maken%s%sEr is geen regel om doel '%s' te maken, nodig voor '%s'%s%sDit is vrije programmatuur; zie de brontekst voor de kopieervoorwaarden. %sEr is GEEN garantie; zelfs niet voor VERHANDELBAARHEID of %sGESCHIKTHEID VOOR EEN BEPAALD DOEL. %s[%u]: Een onbekende map wordt binnengegaan %s[%u]: Map '%s' wordt binnengegaan %s[%u]: Een onbekende map wordt verlaten %s[%u]: Map '%s' wordt verlaten *** Archiefonderdeel '%s' kan foutief zijn; niet verwijderd*** Afgebroken. *** Verwijderen van bestand '%s'*** Verwijderen van tussentijds bestand '%s'*** Wachten op onvoltooide taken...*** Waarschuwing: .LOW_RESOLUTION_TIME-bestand '%s' heeft een hoge-resolutie tijdsstempel*** [%s] Archiefonderdeel '%s' kan foutief zijn; niet verwijderd*** [%s] Verwijderen van bestand '%s'*** [%s] Fout %d*** [%s] Fout 0x%x*** [%s] Fout 0x%x (genegeerd)-waarschuwing: CTRL-Y zal subproces(sen) achterlaten. -waarschuwing: mogelijk dient u CTRL-Y-afhandeling opnieuw aan te zetten vanuit DCL. . Gestopt. .DEFAULT_GOAL bevat meer dan één doel.LIBPATTERNS-element '%s' is geen patroon; VPATH-naam '%s' wordt gebruiktAfgebroken (abort)AlarmklokImpliciete regelrecursie wordt ontweken. PROGRAMMAFOUT: num_pattern_rules is verkeerd! %u != %uINGEBOUWDE CD %s INGEBOUWDE RM %s INGEBOUWD [%s][%s] Onjuiste systeemaanroepGebroken pijpBusfoutProcessortijdsgrens is overschredenKan geen tijdelijk bestand aanmaken KindtoegangKind is afgeslotenCirculaire afhankelijkheid %s <- %s is verworpen.Opschonen van tijdelijk batch-bestand %s Opschonen van tijdelijk batch-bestand %s Botsingen=%ld/%ld=%.0f%%Opdrachten voor '%s' zullen worden genegeerd ten gunste van die voor '%s'.Opdrachten voor bestand '%s' werden gevonden met impliciete regel-zoekopdracht,Opdrachten van '%s' worden nu uitgevoerd. Opdrachten waren opgegeven voor bestand '%s' bij %s:%lu,Doelbestand '%s' wordt overwogen. DoorgegaanKan standaardinvoer niet herstellen Kan standaarduitvoer niet herstellen Kan niet terugkeren naar oorspronkelijke map.Maken van tijdelijk batch-bestand %s Huidige tijdCustoms kan niet exporteren: %s GevaarsignaalOngeïmplementeerde instructie (EMT)Fout bij proces-start, %d Fout: lege opdracht In plaats daarvan wordt %s uitgevoerd Extra tekst na '%s'-opdrachtExtra tekst na 'endef'-opdrachtOpnieuw maken van makefile '%s' is mislukt.Opnieuw maken van doelbestand '%s' is mislukt. Bestand '%s' bestaat niet. Bestand '%s' was al overwogen. Bestandsgroottegrens is overschredenVereisten van doelbestand '%s' zijn voltooid. Bijwerken van bestand '%s' is voltooid. Drijvende-komma-co-processor is niet beschikbaarDrijvende-komma-berekeningsfoutImpliciete regel voor '%s' gevonden. Vereiste '%s' gevonden als VPATH '%s'. Pogingen voor doelbestand '%s' worden gestaakt. Afgebroken (HUP)I/O mogelijkAfgebroken (IOT)Onjuiste bewerkingIngesloten makefile '%s' is niet gevonden.Verzoek om informatieToegang geïnitialiseerdAfgebroken (interrupt)Afgebroken (killed)Levend kind 0x%08lx (%s) PID %ld %s Belasting=%ld/%ld=%.0f%%, Zoeken naar een regel met tussentijds bestand '%s'. Zoeken naar impliciete regel voor '%s'. Zoeken naar archiefonderdeel-impliciete regel voor '%s'. Make-toegangMakefile '%s' bevat mogelijk een lus; wordt niet opnieuw gemaakt. Makefile '%s' is niet gevonden.Makefile op standaardinvoer is dubbel opgegeven.Maken van '%s' vanwege 'always-make'-vlag. Onjuiste doelspecifieke variabele-definitieOnderdeel '%s'%s: %ld bytes bij %ld (%ld). '%s' moet opnieuw gemaakt worden. GeenEr zijn geen opdrachten voor '%s' en geen van de vereisten zijn veranderd. Geen impliciete regel voor '%s' gevonden. Doel '%s' hoeft niet opnieuw gemaakt te wordenGeen doelenGeen doelen opgegeven en geen makefile gevondenEr is niets te doen voor '%s'.Token verkregen voor kind 0x%08lx (%s). Opties: Parallele taken (-j) worden op dit platform niet ondersteund.StroomstoringVereiste '%s' is nieuwer dan doel '%s'. Vereiste '%s' is ouder dan doel '%s'. Vereiste '%s' is alleen-ordenen voor doel '%s'. Vereiste '%s' van doel '%s' bestaat niet. Profilerende tijdopnemer is verlopenBijknippen van bestand '%s'. Opname van kind 0x%08lx (%s) PID %ld%s in de ketting. AfgeslotenOpnieuw uitvoeren[%u]:Lezen van makefile '%s'Lezen van makefiles... Beëindigen van verliezend kind 0x%08lx PID %ld %s Beëindigen van winnend kind 0x%08lx PID %ld %s Bijwerken van bestand '%s' is recent geprobeerd en mislukt. Recursieve variabele '%s' verwijst naar zichzelf (uiteindelijk)Foutuitvoer wordt omgeleid naar %s Invoer wordt omgeleid van %s Uitvoer wordt omgeleid naar %s Rehash=%d, Onmogelijke impliciete vereiste '%s' wordt verworpen. Onmogelijke regelvereiste '%s' wordt verworpen. Token losgelaten voor kind 0x%08lx (%s). Verwijderen van kind 0x%08lx PID %ld%s uit ketting. Verwijderen van tussentijdse bestanden... Rapporteer programmafouten aan , meld fouten in de vertaling aan . Opnieuw instellen op enkele-taakmodus (-j1).Hulpbron verlorenSIGPHONESIGWINDSegmentatiefoutBestand '%s' wordt nog bijgewerkt. GestoptGestopt (signaal)Gestopt (tty-invoer)Gestopt (tty-uitvoer)Doelbestand '%s' is succesvol opnieuw gemaakt. Symbolische koppelingen worden niet ondersteund: -L wordt uitgeschakeld.Doel '%s' is dubbele dubbele punt en heeft geen vereisten. Doel '%s' is niet opnieuw gemaakt vanwege fouten.Doelbestand '%s' moet opnieuw worden gemaakt onder -q. Afgebroken (terminated)De vereisten van '%s' worden nu gemaakt. BreekpuntProberen van impliciete vereiste '%s'. Patroonregel wordt geprobeerd met stam '%.*s'. Proberen van regelvereiste '%s'. Onbekende ingebouwde opdracht '%s' Onbekende fout %dBijwerken van doelen... Bijwerken van makefiles... Spoedeisende I/O-omstandigheidGebruik: %s [opties] [doel] ... GebruikerstoegangDoor gebruiker gedefinieerd signaal 1Door gebruiker gedefinieerd signaal 2Standaardopdrachten worden gebruikt voor '%s'. Virtuele tijdopnemer is verlopenWaarschuwing: lege omleiding Waarschuwing: bestand '%s' heeft een wijzigingstijd %.2g s in de toekomstWaarschuwing: bestand '%s' heeft een wijzigingstijd in de toekomstVenster is veranderd[%s] Fout %d (genegeerd)'%s' is bijgewerkt.'override'-opdrachtpoging tot gebruik van niet-ondersteunde functie: '%s'automatischmaar '%s' wordt nu als hetzelfde bestand beschouwd als '%s'.kan geen %ld bytes toewijzen voor hashtabel: onvoldoende geheugenkan dubbele dubbele punt '%s' niet hernoemen tot enkele dubbele punt '%s'kan enkele dubbele punt '%s' niet hernoemen tot dubbele dubbele punt '%s'kan belastingsgrens niet afdwingen: kan belastingsgrenzen niet afdwingen op dit besturingssysteemopdrachtregelopdrachten beginnen voor eerste doelmaken van taken-pijpstandaardklaar met 30 seconden slapen. Make gaat verder. dubbele taakserverlege 'override'-opdrachtlege tekenreeks is ongeldig als bestandsnaamlege naam van variabeleomgevingomgeving onder -eextra '%s'extra 'endef'find_and_set_shell stelt na doorzoeken van pad default_shell = %s in find_and_set_shell stelt default_shell = %s in eerste argument van 'word'-functie moet groter zijn dan 0fopen (tijdelijk bestand)fwrite (tijdelijk bestand)initialiseren van taakserver-pijpinterne fout: '%s' command_stateinterne fout: ongeldige tekenreeks '%s' voor --jobserver-fdsinterne fout: meerdere opties --jobserver-fdsongeldige 'override'-opdrachtongeldige syntaxis in voorwaardelijk deellbr$ini_control is mislukt, status = %duitpakken van module-info door lbr$set_module is mislukt, status = %dmakefileontbrekende 'endef', onafgemaakte 'define'ontbrekende 'endif'ontbrekende regel voor opdrachtenontbrekend scheidingsteken%sontbrekend doelpatroongemengde impliciete en normale regelsgemengde impliciete en statische patroonregelsmeerdere doelpatronengeengeen bestandshandvatten meer beschikbaar: kan standaardinvoer niet dupliceren geen bestandshandvatten meer beschikbaar: kan standaarduitvoer niet dupliceren niet-numeriek eerste argument van 'word'-functieniet-numeriek eerste argument van 'wordlist'-functieniet-numeriek tweede argument van 'wordlist'-functieslechts één 'else' per voorwaardelijk deelvereisten kunnen niet in opdrachtscripts gedefinieerd wordenlezen van taken-pijpspawnvpe: mogelijk geen omgevingsruimte meer beschikbaarsys$search is mislukt met %d doel '%s' komt niet overeen met doelpatroondoel '%s' is meerdere keren gegeven in dezelfde regel.doelbestand '%s' heeft zowel ':' als '::' ingangendoelpatroon bevat geen '%%'de optie '-%c' vereist een niet-lege tekenreeks als argumentde optie '-%c' vereist een positief, geheel argumenthet 'touchen' van een archiefonderdeel is niet mogelijk op VMStouch: Archief '%s' bestaat niettouch: ar_member_touch van '%s' is mislukttouch: Onderdeel '%s' bestaat niet in '%s'touch: '%s' is geen geldig archiefkan bibliotheek '%s' niet openen om onderdeel '%s' op te zoekenonbekende aanduiding '%s' voor debug-niveauonbekend signaalverwijderen (van tijdelijk bestand): onafgemaakte aanroep van functie '%s': '%c' ontbreektonafgemaakte verwijzing naar variabeleonvoldoende virtueel geheugenWaarschuwing: Klokafwijking geconstateerd. Het maken is mogelijk onvolledig gebeurd.Waarschuwing: -jN is afgedwongen in een deelproces: taakserver-modus uitgezet.Waarschuwing: NUL-teken gezien; de rest van de regel wordt genegeerdWaarschuwing: oude opdrachten voor doel '%s' worden genegeerdWaarschuwing: taakserver onbeschikbaar: -j1 wordt gebruikt. Voeg '+' toe aan de ouderregel.Waarschuwing: er wordt voorbijgegaan aan opdrachten voor doel '%s'Waarschuwing: ongedefinieerde variabele '%.*s'windows32_openpipe (): process_init_fd() is mislukt schrijffoutschrijffout: %sschrijven naar taakservermake-dfsg-3.81.orig/po/nl.po0000644000175000017500000013671010416553102016110 0ustar srivastasrivasta# Translation of make-3.81-b3 to Dutch. # Copyright (C) 2004, 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the make package. # Benno Schulenberg , 2005. # Taco Witte , 2004. # 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-06-29 22:55+0200\n" "Last-Translator: Benno Schulenberg \n" "Language-Team: Dutch \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 1.10.1\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "poging tot gebruik van niet-ondersteunde functie: '%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "het 'touchen' van een archiefonderdeel is niet mogelijk op VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Archief '%s' bestaat niet" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: '%s' is geen geldig archief" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Onderdeel '%s' bestaat niet in '%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: ar_member_touch van '%s' is mislukt" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "uitpakken van module-info door lbr$set_module is mislukt, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control is mislukt, status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "kan bibliotheek '%s' niet openen om onderdeel '%s' op te zoeken" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Onderdeel '%s'%s: %ld bytes bij %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (naam kan afgekapt zijn)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Datum %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, modus = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Afgebroken.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Archiefonderdeel '%s' kan foutief zijn; niet verwijderd" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Archiefonderdeel '%s' kan foutief zijn; niet verwijderd" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Verwijderen van bestand '%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Verwijderen van bestand '%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# uit te voeren opdrachten" #: commands.c:602 msgid " (built-in):" msgstr " (ingebouwd):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (van '%s', regel %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Mappen\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# kan status van %s niet opvragen.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (sleutel %s, wijzigingstijd %d): kan niet worden geopend.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (apparaat %d, inode [%d,%d,%d]): kan niet worden geopend.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (apparaat %ld, inode %ld): kan niet worden geopend.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (sleutel %s, wijzigingstijd %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (apparaat %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (apparaat %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Geen" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " bestanden, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "geen" #: dir.c:1058 msgid " impossibilities" msgstr " onmogelijkheden" #: dir.c:1062 msgid " so far." msgstr " tot nu toe." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " onmogelijkheden in %lu mappen.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Recursieve variabele '%s' verwijst naar zichzelf (uiteindelijk)" #: expand.c:266 msgid "unterminated variable reference" msgstr "onafgemaakte verwijzing naar variabele" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Opdrachten waren opgegeven voor bestand '%s' bij %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Opdrachten voor bestand '%s' werden gevonden met impliciete regel-" "zoekopdracht," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "maar '%s' wordt nu als hetzelfde bestand beschouwd als '%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Opdrachten voor '%s' zullen worden genegeerd ten gunste van die voor '%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "kan enkele dubbele punt '%s' niet hernoemen tot dubbele dubbele punt '%s'" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "kan dubbele dubbele punt '%s' niet hernoemen tot enkele dubbele punt '%s'" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Verwijderen van tussentijds bestand '%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Verwijderen van tussentijdse bestanden...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Tijdsstempel ligt buiten bereik; wordt vervangen door %s" #: file.c:782 msgid "Current time" msgstr "Huidige tijd" #: file.c:881 msgid "# Not a target:" msgstr "# Geen doel:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Waardevol bestand (vereiste van .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Nepdoel (vereiste van .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Doel afkomstig van opdrachtregel." #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Een standaard, of MAKEFILES, of -include/sinclude makefile." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Impliciete regel-zoekopdracht is uitgevoerd." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Impliciete regel-zoekopdracht is niet uitgevoerd." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Impliciete/statische patroonstam: '%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Bestand is een tussentijds vereiste." #: file.c:919 msgid "# Also makes:" msgstr "# Maakt ook:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Wijzigingstijd is nooit gecontroleerd." #: file.c:927 msgid "# File does not exist." msgstr "# Bestand bestaat niet." #: file.c:929 msgid "# File is very old." msgstr "# Bestand is erg oud." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Laatst gewijzigd %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Bestand is bijgewerkt." #: file.c:937 msgid "# File has not been updated." msgstr "# Bestand is niet bijgewerkt." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Op dit moment lopende opdrachten (DIT IS EEN PROGRAMMAFOUT)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "" "# Op dit moment lopende afhankelijkheden-opdrachten (DIT IS EEN " "PROGRAMMAFOUT)." #: file.c:953 msgid "# Successfully updated." msgstr "# Succesvol bijgewerkt." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Moet worden bijgewerkt (-q is ingesteld)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Bijwerken is mislukt." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Ongeldige waarde in 'update_status'-onderdeel!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Ongeldige waarde in 'command_state'-onderdeel!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Bestanden" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# hashtabel-statistieken van bestanden:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "niet-numeriek eerste argument van 'word'-functie" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "eerste argument van 'word'-functie moet groter zijn dan 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "niet-numeriek eerste argument van 'wordlist'-functie" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "niet-numeriek tweede argument van 'wordlist'-functie" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) is mislukt (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) is mislukt (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() is mislukt (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() is mislukt\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Opschonen van tijdelijk batch-bestand %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Onvoldoende aantal argumenten (%d) voor functie '%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Niet-geïmplementeerd op dit platform: functie '%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "onafgemaakte aanroep van functie '%s': '%c' ontbreekt" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: optie '%s' is niet eenduidig\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: optie '--%s' staat geen argument toe\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: optie '%c%s' staat geen argument toe\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: optie '%s' vereist een argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: onbekende optie '--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: onbekende optie '%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ongeldige optie -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ongeldige optie -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: optie vereist een argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: optie '-W %s' is niet eenduidig\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: optie '-W %s' staat geen argument toe\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "kan geen %ld bytes toewijzen voor hashtabel: onvoldoende geheugen" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Belasting=%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 "Botsingen=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Zoeken naar impliciete regel voor '%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Zoeken naar archiefonderdeel-impliciete regel voor '%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Impliciete regelrecursie wordt ontweken.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Patroonregel wordt geprobeerd met stam '%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Onmogelijke impliciete vereiste '%s' wordt verworpen.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Onmogelijke regelvereiste '%s' wordt verworpen.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Proberen van impliciete vereiste '%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Proberen van regelvereiste '%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Vereiste '%s' gevonden als VPATH '%s'.\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Zoeken naar een regel met tussentijds bestand '%s'.\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "Kan geen tijdelijk bestand aanmaken\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Fout 0x%x (genegeerd)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Fout 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Fout %d (genegeerd)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Fout %d" #: job.c:399 msgid " (core dumped)" msgstr " (coredump gemaakt)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Wachten op onvoltooide taken..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Levend kind 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (ginds)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Beëindigen van verliezend kind 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Beëindigen van winnend kind 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Opschonen van tijdelijk batch-bestand %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Verwijderen van kind 0x%08lx PID %ld%s uit ketting.\n" #: job.c:862 msgid "write jobserver" msgstr "schrijven naar taakserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Token losgelaten voor kind 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() kan geen proces starten (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "%d argumenten geteld bij mislukte start\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Opname van kind 0x%08lx (%s) PID %ld%s in de ketting.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Token verkregen voor kind 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "lezen van taken-pijp" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "kan belastingsgrenzen niet afdwingen op dit besturingssysteem" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "kan belastingsgrens niet afdwingen: " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "" "geen bestandshandvatten meer beschikbaar: kan standaardinvoer niet " "dupliceren\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "" "geen bestandshandvatten meer beschikbaar: kan standaarduitvoer niet " "dupliceren\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "Kan standaardinvoer niet herstellen\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "Kan standaarduitvoer niet herstellen\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "process_easy() kan geen proces starten (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "'make' heeft kind met PID %d verwerkt, wacht nog op PID %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Opdracht niet gevonden" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Shell-programma niet gevonden" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: mogelijk geen omgevingsruimte meer beschikbaar" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL is gewijzigd (was '%s', is nu '%s')\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Maken van tijdelijk batch-bestand %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (regel %d) Onjuiste shell-context (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opties:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Genegeerd voor compatibiliteit.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr " -B, --always-make Onvoorwaardelijk alle doelen maken.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr " -C MAP, --directory=MAP Naar MAP gaan alvorens iets te doen.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d Veel informatie weergeven voor het debuggen.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=VLAGGEN] Verschillende soorten debuginformatie " "weergeven.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides Omgevingsvariabelen gaan boven makefiles.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f BESTAND, --file=BESTAND, --makefile=BESTAND\n" " BESTAND lezen als een makefile.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Dit bericht weergeven en stoppen.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Fouten van opdrachten negeren.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I MAP, --include-dir=MAP MAP doorzoeken naar ingesloten makefiles.\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] N taken tegelijk toestaan; oneindig bij geen " "argument.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Doorgaan als sommige doelen niet gemaakt " "kunnen worden.\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" " Niet meerdere taken starten, behalve als " "systeembelasting lager is dan N.\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times De laatste mtime tussen symbolische koppeling " "en doel gebruiken.\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" " Opdrachten niet uitvoeren, alleen weergeven.\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 BESTAND, --old-file=BESTAND, --assume-old=BESTAND\n" " BESTAND als erg oud beschouwen en niet opnieuw " "maken.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base Interne gegevensbank van 'make' weergeven.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Geen opdrachten uitvoeren; afsluitstatus geeft " "aan of alles bijgewerkt is.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules Ingebouwde impliciete regels uitzetten.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Ingebouwde variabele-instellingen uitzetten.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Opdrachten niet weergeven.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr " -S, --no-keep-going, --stop Optie -k uitzetten.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Doelen aanraken in plaats van opnieuw maken.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Versienummer van 'make' weergeven en stoppen.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory De huidige map weergeven.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Optie -w uitzetten, zelfs als het impliciet " "aangezet was.\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 BESTAND, --what-if=BESTAND, --new-file=BESTAND, --assume-new=BESTAND\n" " BESTAND als oneindig nieuw beschouwen.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Waarschuwen als naar een ongedefinieerde " "variabele wordt verwezen.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "lege tekenreeks is ongeldig als bestandsnaam" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "onbekende aanduiding '%s' voor debug-niveau" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Onderbreking/uitzondering gekregen (code = 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" "Filter voor onbehandelde uitzondering is aangeroepen vanuit programma %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Toegangsovertreding: schrijfopdracht op adres %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Toegangsovertreding: leesopdracht op adres %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 stelt default_shell = %s in\n" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "find_and_set_shell stelt na doorzoeken van pad default_shell = %s in\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s slaapt gedurende 30 seconden..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "klaar met 30 seconden slapen. Make gaat verder.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile op standaardinvoer is dubbel opgegeven." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (tijdelijk bestand)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (tijdelijk bestand)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Parallele taken (-j) worden op dit platform niet ondersteund." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Opnieuw instellen op enkele-taakmodus (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "interne fout: meerdere opties --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "interne fout: ongeldige tekenreeks '%s' voor --jobserver-fds" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "Waarschuwing: -jN is afgedwongen in een deelproces: taakserver-modus " "uitgezet." #: main.c:1684 msgid "dup jobserver" msgstr "dubbele taakserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "Waarschuwing: taakserver onbeschikbaar: -j1 wordt gebruikt. Voeg '+' toe " "aan de ouderregel." #: main.c:1710 msgid "creating jobs pipe" msgstr "maken van taken-pijp" #: main.c:1725 msgid "init jobserver pipe" msgstr "initialiseren van taakserver-pijp" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" "Symbolische koppelingen worden niet ondersteund: -L wordt uitgeschakeld." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Bijwerken van makefiles...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefile '%s' bevat mogelijk een lus; wordt niet opnieuw gemaakt.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Opnieuw maken van makefile '%s' is mislukt." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Ingesloten makefile '%s' is niet gevonden." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefile '%s' is niet gevonden." #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Kan niet terugkeren naar oorspronkelijke map." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Opnieuw uitvoeren[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "verwijderen (van tijdelijk bestand): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr ".DEFAULT_GOAL bevat meer dan één doel" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Geen doelen opgegeven en geen makefile gevonden" #: main.c:2191 msgid "No targets" msgstr "Geen doelen" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Bijwerken van doelen...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "Waarschuwing: Klokafwijking geconstateerd. Het maken is mogelijk " "onvolledig gebeurd." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Gebruik: %s [opties] [doel] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Dit programma is gemaakt voor %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Dit programma is gemaakt voor %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "" "Rapporteer programmafouten aan ,\n" "meld fouten in de vertaling aan .\n" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "de optie '-%c' vereist een niet-lege tekenreeks als argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "de optie '-%c' vereist een positief, geheel argument" #: 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 "" "%sDit is vrije programmatuur; zie de brontekst voor de kopieervoorwaarden.\n" "%sEr is GEEN garantie; zelfs niet voor VERHANDELBAARHEID of\n" "%sGESCHIKTHEID VOOR EEN BEPAALD DOEL.\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "%sDit programma is gemaakt voor %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sDit programma is gemaakt voor %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Make-gegevensbank, weergegeven op %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Make-gegevensbank voltooid op %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Een onbekende map wordt binnengegaan\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Een onbekende map wordt verlaten\n" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Map '%s' wordt binnengegaan\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Map '%s' wordt verlaten\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Een onbekende map wordt binnengegaan\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Een onbekende map wordt verlaten\n" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Map '%s' wordt binnengegaan\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Map '%s' wordt verlaten\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Gestopt.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Onbekende fout %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 "onvoldoende virtueel geheugen" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: gebruiker %lu (echt %lu), groep %lu (echt %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Toegang geïnitialiseerd" #: misc.c:746 msgid "User access" msgstr "Gebruikerstoegang" #: misc.c:794 msgid "Make access" msgstr "Make-toegang" #: misc.c:828 msgid "Child access" msgstr "Kindtoegang" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "schrijffout: %s" #: misc.c:894 msgid "write error" msgstr "schrijffout" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Lezen van makefiles...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Lezen van makefile '%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (geen standaarddoel)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (zoekpad)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (maakt niet uit)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (geen ~-expansie)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "ongeldige syntaxis in voorwaardelijk deel" #: read.c:633 msgid "extraneous `endef'" msgstr "extra 'endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "lege naam van variabele" #: read.c:662 msgid "empty `override' directive" msgstr "lege 'override'-opdracht" #: read.c:687 msgid "invalid `override' directive" msgstr "ongeldige 'override'-opdracht" #: read.c:854 msgid "commands commence before first target" msgstr "opdrachten beginnen voor eerste doel" #: read.c:905 msgid "missing rule before commands" msgstr "ontbrekende regel voor opdrachten" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ontbrekend scheidingsteken%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (bedoelde u TAB in plaats van 8 spaties?)" #: read.c:1152 msgid "missing target pattern" msgstr "ontbrekend doelpatroon" #: read.c:1154 msgid "multiple target patterns" msgstr "meerdere doelpatronen" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "doelpatroon bevat geen '%%'" #: read.c:1286 msgid "missing `endif'" msgstr "ontbrekende 'endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Extra tekst na 'endef'-opdracht" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "ontbrekende 'endef', onafgemaakte 'define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Extra tekst na '%s'-opdracht" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "extra '%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "slechts één 'else' per voorwaardelijk deel" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "Onjuiste doelspecifieke variabele-definitie" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "vereisten kunnen niet in opdrachtscripts gedefinieerd worden" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "gemengde impliciete en statische patroonregels" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "gemengde impliciete en normale regels" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "doel '%s' komt niet overeen met doelpatroon" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "doelbestand '%s' heeft zowel ':' als '::' ingangen" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "doel '%s' is meerdere keren gegeven in dezelfde regel." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "Waarschuwing: er wordt voorbijgegaan aan opdrachten voor doel '%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "Waarschuwing: oude opdrachten voor doel '%s' worden genegeerd" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "Waarschuwing: NUL-teken gezien; de rest van de regel wordt genegeerd" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Er is niets te doen voor '%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "'%s' is bijgewerkt." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Bijknippen van bestand '%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sEr is geen regel om doel '%s' te maken%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sEr is geen regel om doel '%s' te maken, nodig voor '%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Doelbestand '%s' wordt overwogen.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Bijwerken van bestand '%s' is recent geprobeerd en mislukt.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Bestand '%s' was al overwogen.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Bestand '%s' wordt nog bijgewerkt.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Bijwerken van bestand '%s' is voltooid.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Bestand '%s' bestaat niet.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Waarschuwing: .LOW_RESOLUTION_TIME-bestand '%s' heeft een hoge-resolutie " "tijdsstempel" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Impliciete regel voor '%s' gevonden.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Geen impliciete regel voor '%s' gevonden.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Standaardopdrachten worden gebruikt voor '%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Circulaire afhankelijkheid %s <- %s is verworpen." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Vereisten van doelbestand '%s' zijn voltooid.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "De vereisten van '%s' worden nu gemaakt.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Pogingen voor doelbestand '%s' worden gestaakt.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Doel '%s' is niet opnieuw gemaakt vanwege fouten." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Vereiste '%s' is alleen-ordenen voor doel '%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Vereiste '%s' van doel '%s' bestaat niet.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Vereiste '%s' is nieuwer dan doel '%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Vereiste '%s' is ouder dan doel '%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Doel '%s' is dubbele dubbele punt en heeft geen vereisten.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "" "Er zijn geen opdrachten voor '%s' en geen van de vereisten zijn veranderd.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Maken van '%s' vanwege 'always-make'-vlag.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Doel '%s' hoeft niet opnieuw gemaakt te worden" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; VPATH-naam '%s' wordt gebruikt" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "'%s' moet opnieuw gemaakt worden.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " VPATH-naam '%s' wordt genegeerd.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Opdrachten van '%s' worden nu uitgevoerd.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Opnieuw maken van doelbestand '%s' is mislukt.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Doelbestand '%s' is succesvol opnieuw gemaakt.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Doelbestand '%s' moet opnieuw worden gemaakt onder -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Waarschuwing: bestand '%s' heeft een wijzigingstijd in de toekomst" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "" "Waarschuwing: bestand '%s' heeft een wijzigingstijd %.2g s in de toekomst" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS-element '%s' is geen patroon" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs kan niet exporteren: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Impliciete regels" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Geen impliciete regels." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u impliciete regels, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "PROGRAMMAFOUT: num_pattern_rules is verkeerd! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "onbekend signaal" #: signame.c:93 msgid "Hangup" msgstr "Afgebroken (HUP)" #: signame.c:96 msgid "Interrupt" msgstr "Afgebroken (interrupt)" #: signame.c:99 msgid "Quit" msgstr "Afgesloten" #: signame.c:102 msgid "Illegal Instruction" msgstr "Onjuiste bewerking" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Breekpunt" #: signame.c:110 msgid "Aborted" msgstr "Afgebroken (abort)" #: signame.c:113 msgid "IOT trap" msgstr "Afgebroken (IOT)" #: signame.c:116 msgid "EMT trap" msgstr "Ongeïmplementeerde instructie (EMT)" #: signame.c:119 msgid "Floating point exception" msgstr "Drijvende-komma-berekeningsfout" #: signame.c:122 msgid "Killed" msgstr "Afgebroken (killed)" #: signame.c:125 msgid "Bus error" msgstr "Busfout" #: signame.c:128 msgid "Segmentation fault" msgstr "Segmentatiefout" #: signame.c:131 msgid "Bad system call" msgstr "Onjuiste systeemaanroep" #: signame.c:134 msgid "Broken pipe" msgstr "Gebroken pijp" #: signame.c:137 msgid "Alarm clock" msgstr "Alarmklok" #: signame.c:140 msgid "Terminated" msgstr "Afgebroken (terminated)" #: signame.c:143 msgid "User defined signal 1" msgstr "Door gebruiker gedefinieerd signaal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Door gebruiker gedefinieerd signaal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Kind is afgesloten" #: signame.c:157 msgid "Power failure" msgstr "Stroomstoring" #: signame.c:160 msgid "Stopped" msgstr "Gestopt" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Gestopt (tty-invoer)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Gestopt (tty-uitvoer)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Gestopt (signaal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Processortijdsgrens is overschreden" #: signame.c:175 msgid "File size limit exceeded" msgstr "Bestandsgroottegrens is overschreden" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtuele tijdopnemer is verlopen" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profilerende tijdopnemer is verlopen" #: signame.c:187 msgid "Window changed" msgstr "Venster is veranderd" #: signame.c:190 msgid "Continued" msgstr "Doorgegaan" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Spoedeisende I/O-omstandigheid" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O mogelijk" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Hulpbron verloren" #: signame.c:215 msgid "Danger signal" msgstr "Gevaarsignaal" #: signame.c:218 msgid "Information request" msgstr "Verzoek om informatie" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Drijvende-komma-co-processor is niet beschikbaar" #: 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 "standaard" #: variable.c:1372 msgid "environment" msgstr "omgeving" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "omgeving onder -e" #: variable.c:1381 msgid "command line" msgstr "opdrachtregel" #: variable.c:1384 msgid "`override' directive" msgstr "'override'-opdracht" #: variable.c:1387 msgid "automatic" msgstr "automatisch" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (van '%s', regel %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# variabele verzameling van hashtabel-statistieken:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variabelen\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Patroonspecifieke variabelewaarden" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Geen patroonspecifieke variabelewaarden" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u patroonspecifieke variabelewaarden" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "Waarschuwing: ongedefinieerde variabele '%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search is mislukt met %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Waarschuwing: lege omleiding\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "interne fout: '%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-waarschuwing: CTRL-Y zal subproces(sen) achterlaten.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-waarschuwing: mogelijk dient u CTRL-Y-afhandeling opnieuw aan te zetten " "vanuit DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "INGEBOUWD [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "INGEBOUWDE CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "INGEBOUWDE RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Onbekende ingebouwde opdracht '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Fout: lege opdracht\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Invoer wordt omgeleid van %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Foutuitvoer wordt omgeleid naar %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Uitvoer wordt omgeleid naar %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "In plaats daarvan wordt %s uitgevoerd\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Fout bij proces-start, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH-zoekpaden\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Geen 'vpath'-zoekpaden." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u 'vpath'-zoekpaden.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Geen algemeen zoekpad ('VPATH'-variabele)." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Algemeen zoekpad ('VPATH'-variabele):\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Geef geen -j of --jobs op als sh.exe niet beschikbaar is." #~ msgid "Resetting make for single job mode." #~ msgstr "Make wordt opnieuw ingesteld op enkele-taakmodus." make-dfsg-3.81.orig/po/pl.gmo0000644000175000017500000011075510416553102016257 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H= ]IJ]e”]`ú]J[^6¦^uÝ^pS_£Ä_qh`¥Ú`E€aÆaDFb4‹bCÀbHc:Mc ˆc ’c"³c Öcäc(õc d*d?dVdtdŒd £d­dÆdÏd!Þd e eCe[e!le5Že@Äe"f(f>f [f%|f¢f.½f2ìf.g.Ng.}g¬g'Ég0ñg&"h$Ihnhh*§hDÒh$i>pÏpépúp q'.q?Vq–q*Ÿq*Êqõq rr8r(Xrr’r£r·rÒr ârír&s*s9s%Js,ps$sÂsAÙsMt it)Št&´t Ûtètu)u*Iu tu‚uŸu ¸uÄuãuúu$v'ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make 3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-06-28 18:41+0200 Last-Translator: Jakub Bogusz Language-Team: Polish MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-2 Content-Transfer-Encoding: 8bit # %u ¶cie¿ek przeszukiwania `vpath'. # %u standardowych regu³, %u # %u warto¶ci zmiennych dla wzorca # Katalogi # Pliki # Zakoñczono tworzenie bazy danych Make na %s # Ogólna (zmienna `VPATH') ¶cie¿ka przeszukiwania: # # Regu³y stadardowe # Baza danych Make, wy¶wietlana na %s # Brak ogólnej (zmienna `VPATH') ¶cie¿ki przeszukiwania. # Brak standardowych regu³. # Brak warto¶ci zmiennych dla wzorca. # Warto¶ci zmiennych dla wzorca # ¦cie¿ki przeszukiwania VPATH # Zmienne # statystyki tablic haszuj±cych plików: # %sTen program zosta³ zbudowany dla %s %sTen program zosta³ zbudowany dla %s (%s) Naliczono %d parametrów nieudanego uruchomienia Ten program zosta³ zbudowany dla %s Ten program zosta³ zbudowany dla %s (%s) --debug[=FLAGI] Wy¶wietla ró¿ne rodzaje informacji diagnostycznych. --no-print-directory Wy³±cza -w, nawet je¶li by³o ono w³±czone domy¶lnie. --warn-undefined-variables Ostrzega przy odwo³aniach do niezdefiniowanych zmiennych. -B, --always-make Bezwarunkowe utworzenie wszystkich obiektów. -C KATALOG, --directory=KATALOG Przej¶cie do KATALOGu przed robieniem czegokolwiek. -I KATALOG, --include-dir=KATALOG Szuka do³±czanych makefile w KATALOGu. -L, --check-symlink-times U¿ywanie ostatniego mtime miêdzy dowi±zaniem a celem. -R, --no-builtin-variables Wy³±cza ustawianie wbudowanych zmiennych. -S, --no-keep-going, --stop Wy³±cza -k. -W PLIK, --what-if=PLIK, --new-file=PLIK, --assume-new=PLIK Uznaje PLIK za nieskoñczenie nowy. -b, -m Ignorowane dla kompatybilno¶ci. -d Wy¶wietla du¿o informacji diagnostycznych. -e, --environment-overrides Zmienne ¶rodowiska przykrywaj± makefile. -f PLIK, --file=PLIK, --makefile=PLIK Czyta PLIK jako makefile. -h, --help Wy¶wietla ten komunikat i koñczy dzia³anie. -i, --ignore-errors Ignoruje b³êdy poleceñ. -j [N], --jobs[=N] Dopuszcza N zadañ naraz; brak N oznacza brak ograniczeñ. -k, --keep-going Kontynuuj je¶li nie da siê zrobiæ jakich¶ obiektów. -l [N], --load-average[=N], --max-load[=N] Nie uruchamiaj wielu zadañ je¶li load nie jest poni¿ej N. -n, --just-print, --dry-run, --recon Nie wykonuje poleceñ; jedynie je wy¶wietla. -o PLIK, --old-file=PLIK, --assume-old=PLIK Uznanie PLIKu za bardzo stary i nie tworzenie go ponownie. -p, --print-data-base Wy¶wietla wewnêtrzn± bazê danych make. -q, --question Nie uruchamia ¿adnych poleceñ; status powrotu wskazuje aktualno¶æ. -r, --no-builtin-rules Wy³±cza wbudowane regu³y standardowe. -s, --silent, --quiet Nie wypisuje poleceñ. -t, --touch Uaktualnia obiekty zamiast je robiæ. -v, --version Wy¶wietla wersjê make i koñczy dzia³anie. -w, --print-directory Wy¶wietla aktualny katalog. Data %s Zignorowano nazwê VPATH `%s'. uid = %d, gid = %d, mode = 0%o. (wbudowane): (zrzut pamiêci) (czy¿by mia³ byæ TAB zamiast 8 spacji?) (niewa¿ne) (z `%s', linia %lu) (z `%s', linia %lu): (nazwa mo¿e zostaæ okrojona) (brak celu domy¶lnego) (brak rozszerzenia ~) (zdalne) (przeszukiwana ¶cie¿ka) pliki, niemo¿liwo¶ci niemo¿liwo¶ci w %lu katalogach. jak dot±d. terminal.# Makefile domy¶lny, wymieniony w MAKEFILES lub -include/sinclude.# Robi równie¿:# Obiekt podany w linii poleceñ.# Aktualnie uruchamiane polecenia (TO JEST PLUSKWA).# Aktualnie uruchamiane polecenia zale¿no¶ci (TO JEST PLUSKWA).# Uaktualnianie nie powiod³o siê.# Plik nie istnieje.# Plik zosta³ uaktualniony.# Plik nie zosta³ uaktualniony.# Plik jest zale¿no¶ci± przej¶ciow±.# Plik jest bardzo stary.# Szukanie regu³ domy¶lnych zosta³o wykonane.# Szukanie regu³ domy¶lnych nie zosta³o wykonane.# Ga³±¼ wzorców domy¶lnych/statycznych: `%s' # B³êdna warto¶æ w elemencie `command_state'!# B³êdna warto¶æ w elemencie `update_status'!# Ostatnio modyfikowany %s # Czas modyfikacji nie by³ sprawdzany.# Powinien byæ uaktualniony (-q jest w³±czone).# Obiekt niejawny (zale¿no¶æ .PHONY).# Cenny plik (zale¿no¶æ .PRECIOUS).# Uaktualnienie powiod³o siê.# polecenia do wykonania# %s (urz±dzenie %d, i-wêze³ [%d,%d,%d]): # %s (urz±dzenie %d, i-wêze³ [%d,%d,%d]): otwarcie by³o niemo¿liwe. # %s (urz±dzenie %ld, i-wêze³ %ld): # %s (urz±dzenie %ld, i-wêze³ %ld): otwarcie by³o niemo¿liwe. # %s (klucz %s, czas modyfikacji %d): # %s (klucz %s, czas modyfikacji %d): otwarcie by³o niemo¿liwe. # %s: stat() zwraca b³±d. # Brak ¶cie¿ek przeszukiwania `vpath'# To nie jest obiekt:# statystyki tablic haszuj±cych ustawionych zmiennych: $SHELL siê zmieni³ (by³ `%s', jest `%s') %s (linia %d) Z³y kontekst pow³oki (!unixy && !batch_mode_shell) %s jest zawieszony na 30 sekund...%s%s: %s%s: %s%s: Polecenie nie znalezione%s: Wej¶cie do nieznanego katalogu %s: Wej¶cie do katalogu `%s' %s: Opuszczenie nieznanego katalogu %s: Opuszczenie katalogu `%s' %s: Nie znaleziono programu pow³oki%s: Oznaczenie czasu spoza zakresu; zast±piono %s%s: niedozwolona opcja -- %c %s: b³êdna opcja -- %c %s: opcja `%c%s' nie przyjmuje argumentów %s: opcja `%s' jest niejednoznaczna %s: opcja `%s' wymaga argumentu %s: opcja `--%s' nie przyjmuje argumentów %s: opcja `-W %s' nie przyjmuje argumentów %s: opcja `-W %s' jest niejednoznaczna %s: opcja wymaga argumentu -- %c %s: nierozpoznan opcja `%c%s' %s: nierozpoznana opcja `--%s' %s: u¿ytkownik %lu (rzeczywisty %lu), grupa %lu (rzeczywista %lu) %sBrak regu³ do wykonania obiektu `%s'%s%sBrak regu³ do zrobienia obiektu `%s', wymaganego przez `%s'%s%sTen program jest darmowy; warunki kopiowania s± opisane w ¼ród³ach. %sAutorzy nie daj± ¯ADNYCH gwarancji, w tym nawet gwarancji SPRZEDAWALNO¦CI %slub PRZYDATNO¦CI DO KONKRETNYCH CELÓW. %s[%u]: Wej¶cie do nieznanego katalogu %s[%u]: Wej¶cie do katalogu `%s' %s[%u]: Opuszczenie nieznanego katalogu %s[%u]: Opuszczenie katalogu `%s' *** Element archiwum `%s' mo¿e byæ fa³szywy; nie usuniêty*** Przerwano. *** Kasujê plik `%s'*** Kasowanie pliku po¶redniego `%s'*** Oczekiwanie na niezakoñczone zadania....*** Uwaga: plik .LOW_RESOLUTION_TIME `%s' ma du¿± rozdzielczo¶æ znacznika czasu*** [%s] Element archiwum `%s' mo¿e byæ fa³szywy; nie usuniêty*** [%s] Kasujê plik `%s'*** [%s] B³±d %d*** [%s] B³±d 0x%x*** [%s] B³±d 0x%x (zignorowany)-uwaga, CTRL-Y pozostawi podproces(y). -uwaga, bêdzie trzeba ponownie umo¿liwiæ obs³ugê CTRL-Y z DCL. . Stop. .DEFAULT_GOAL zawiera wiêcej ni¿ jeden celelement .LIBPATTERNS `%s' nie jest wzorcem; u¿yto nazwy VPATH `%s'PrzerwanyBudzikPomijanie rekurencyjnego wywo³ania regu³y standardowej. PLUSKWA: z³e num_pattern_rules! %u != %uWBUDOWANE CD %s WBUDOWANE RM %s WBUDOWANE [%s][%s] B³êdne wywo³anie systemowePrzerwany potokB³±d szynyPrzekroczony czas CPUNie mo¿na utworzyæ pliku tymczasowego Dostêp potomkaPotomek powróci³Okrê¿na dyrektywa %s <- %s porzucona.Czyszczenie tymczasowego pliku wsadowego %s Czyszczê tymczasowy plik wsadowy %s Kolizje=%ld/%ld=%.0f%%Polecenia dla `%s' zosta³y zignorowane na rzecz poleceñ dla `%s'.Polecenia dla pliku `%s' zosta³y wyznaczone na podstawie regu³ standardowych,Uruchomiono polecenia dla `%s'. Polecenia dla pliku `%s' podano w %s:%lu,Przetwarzanie pliku obiektowego `%s'. KontynuowanyNie mo¿na odtworzyæ stdin Nie mo¿na odtworzyæ stdout Niemo¿liwy powrót do katalogu startowego.Tworzenie tymczasowego pliku wsadowego %s Aktualny czasZasady nie eksportowane: %s Sygna³ niebezpieczeñstwaPu³apka EMTB³±d podczas uruchamiania, %d B³±d, puste polecenie Zamiast tego wykonywanie %s Niezwi±zany tekst po dyrektywie `%s'Niezwi±zany tekst po dyrektywie `endef'Nie uda³o siê zrobiæ makefile `%s'.Przerabianie pliku obiektowego `%s' nie powiod³o siê. Plik `%s' nie istnieje. Plik `%s' by³ ju¿ przetwarzany. Przekroczony limit wielko¶ci plikuZakoñczono zale¿no¶ci pliku obiektu `%s'. Skoñczy³em uaktualniaæ plik `%s'. Koprocesor obliczeñ zmiennoprzecinkowych niedostêpnyWyj±tek zmiennoprzecinkowyZnaleziono standardow± regu³ê dla `%s'. Znaleziono zale¿no¶æ `%s' jako VPATH `%s' Zaniechany plik obiektowy `%s'. Roz³±czenieI/O mo¿liwePu³apka IOTB³êdna instrukcjaNie znaleziono w³±czanych makefile `%s'.¯±danie informacjiZainicjalizowany dostêpPrzerwanieZabity¯yj±cy potomek 0x%08lx (%s) PID %ld %s Wype³nienie=%ld/%ld=%.0f%%, Szukanie regu³y zawieraj±cej plik przej¶ciowy `%s'. Szukanie standardowej regu³y dla `%s'. Szukanie standardowej regu³y typu archive-member dla `%s'. Dostêp makeMakefile `%s' mo¿e siê zapêtliæ; nie przetwarzam go. Nie znaleziono makefile `%s'Makefile ze standardowego wej¶cia podano dwukrotnie.Tworzenie `%s' z powodu flagi always-make. ¬le sformu³owana definicja zmiennej dla celuElement `%s'%s: %ld bajtów pod %ld (%ld). Konieczne przerobienie obiektu `%s'. NieBrak poleceñ dla `%s' i brak zmienionych zale¿no¶ci. Brak standardowych regu³ dla `%s'. Nie ma potrzeby przerabiaæ obiektu `%s'Brak obiektówNie podano obiektów i nie znaleziono makefileNie ma nic do zrobienia w `%s'.Otrzymano token dla potomka 0x%08lx (%s). Opcje: Równoleg³e zadania (-j) nie s± obs³ugiwane na tej platformiePrzerwa w zasilaniuZale¿no¶æ `%s' jest nowsza od obiektu `%s'. Zale¿no¶æ `%s' jest starsza od obiektu `%s'. Zale¿no¶æ `%s' dotyczy tylko kolejno¶ci dla obiektu `%s'. Zale¿no¶æ `%s' obiektu `%s' nie istnieje. Wyczerpany stoper profiluj±cyCzyszczenie pliku `%s'. Wstawianie potomka 0x%08lx (%s) PID %ld%s do kolejki. Wyj¶ciePonowne uruchamianie[%u]:Czytanie makefile `%s'Czytanie makefile... Zbieranie przegrywaj±cego potomka 0x%08lx PID %ld %s Zbieranie wygrywaj±cego potomka 0x%08lx PID %ld %s Ju¿ bez powodzenia próbowa³em uaktualniæ plik `%s'. Rekurencyjna zmienna `%s' wskazuje na sam± siebiePrzekierowane wyj¶cie diagnostyczne do %s Przekierowane wej¶cie z %s Przekierowane wyj¶cie do %s Przehaszowania=%d, Odrzucenie niemo¿liwej zale¿no¶ci domy¶lnej `%s'. Odrzucenie niemo¿liwej zale¿no¶ci regu³y `%s'. Zwolniony token dla potomka 0x%08lx (%s). Usuwanie potomka 0x%08lx PID %ld%s z kolejki. Kasowanie plików po¶rednich... B³êdy proszê zg³aszaæ na adres Prze³±czanie w tryb jednozadaniowy (-j1).Zaginione zasobySIGPHONESIGWINDNaruszenie ochrony pamiêciWci±¿ uaktualniam plik `%s'. ZatrzymanyZatrzymany (sygna³)Zatrzymany (wej¶cie z tty)Zatrzymany (wyj¶cie na tty)Przerabianie pliku obiektowego `%s' powiod³o siê. Dowi±zania symboliczne nie s± obs³ugiwane: wy³±czono -L.Obiekt `%s' jest typu double-colon i nie ma ¿adnych zale¿no¶ci. Obiekt `%s' nie zosta³ wykonany z powodu b³êdów.Plik obiektowy `%s' powinien byæ przerobiony z opcj± -q. ZakoñczonyZale¿no¶ci `%s' s± wykonywane. Pu³apka ¶ledzeniaPróbowanie zale¿no¶ci domy¶lnej `%s'. Próbowanie regu³y wzorcowej z ga³êzi± `%.*s'. Próbowanie zale¿no¶ci regu³y `%s'. Nieznane polecenie wbudowane '%s' Nieznany b³±d %dUaktualnianie obiektów docelowych.... Uaktualnianie plików makefile.... Nag³a sytuacja I/OSk³adnia: %s [opcje] [obiekt] ... Dostêp u¿ytkownikaSygna³ u¿ytkownika 1Sygna³ u¿ytkownika 2Stosowanie standardowych poleceñ dla `%s'. Wyczerpany stoper wirtualnyUwaga: Puste przekierowanie Uwaga: Plik `%s' ma czas modyfikacji %.2g s w przysz³o¶ciUwaga: Plik `%s' ma czas modyfikacji z przysz³o¶ciZmienione okno[%s] B³±d %d (zignorowany)`%s' jest aktualne.dyrektywa `override'próba u¿ycia nieistniej±cej funkcji: `%s'automatycznaale `%s' jest teraz uznawany za ten sam plik co `%s'.nie mo¿na zaalokowaæ %ld bajtów na tablicê haszuj±c±: pamiêæ wyczerpananie mo¿na przemianowaæ `%s' z podwójnym dwukropkiem na `%s' z pojedynczymnie mo¿na przemianowaæ `%s' z pojedynczym dwukropkiem na `%s' z podwójnymniemo¿liwe wymuszenie limitu obci±¿enia: niemo¿liwe wymuszenie limitów obci±¿enia w tym systemiez linii poleceñpolecenia zaczynaj± siê przed pierwszym obiektemtworzenie potoku zadañdomy¶lnazakoñczono sleep(30). Kontynuacja. duplikacja serwera zadañpusta dyrektywa `override'pusty ³añcuch nie mo¿e byæ nazw± plikupusta nazwa zmiennej¶rodowiskowa¶rodowisko pod -eniezwi±zany `%s'nie zwi±zany `endef'find_and_set_shell ustawia ¶cie¿kê wyszukiwania default_shell = %s find_and_set_shell ustawia default_shell = %s pierwszy argument funkcji `word' musi byæ wiêkszy od 0fopen (plik tymczasowy)fwrite (plik tymczasowy)inicjowanie potoku serwera zadañb³±d wewnêtrzny: `%s' command_stateb³±d wewnêtrzny: b³êdny ³añcuch --jobserver-fds `%s'b³±d wewnêtrzny: wiele opcji --jobserver-fdsb³êdna dyrektywa `override'b³êdna sk³adnia wyra¿enia warunkowegolbr$ini_control nie powiod³o siê, status = %dUzyskanie informacji o module przez lnr$set_module nie uda³o siê, status = %dmakefilebrakuj±cy `endef', niezakoñczone `define'brakuj±cy `endif'brakuje regu³y przed poleceniamibrakuj±cy separator%sbrakuj±cy wzorzec obiektupomieszane standardowe i normalne regu³ypomieszane standardowe i statyczne regu³y wzorcówwielokrotne wzorce obiektunienie ma wiêcej uchwytów plików: nie mo¿na powieliæ stdin nie ma wiêcej uchwytów plików: nie mo¿na powieliæ stdout pierwszy argument funkcji `word' nie jest numerycznypierwszy argument funkcji `wordlist' nie jest numerycznydrugi argument funkcji `wordlist' nie jest numerycznytylko jedno `else' w wyra¿eniu warunkowymwymagania nie mog± byæ definiowane w skryptach poleceñstrumieñ czytaj±cy zadaniaspawnvpe: mog³o zabrakn±æ miejsca na ¶rodowiskosys$search nie powiod³o siê - %d obiekt `%s' nie pasuje do wzorca obiektuobiekt `%s' wyspecyfikowany wielokrotnie w tej samej reguleplik obiektowy `%s' ma pozycje i : i ::wzorzec obiektu nie zawiera `%%'opcja `-%c' wymaga niepustego ³añcucha jako argumentuopcja `-%c' wymaga argumentu ca³kowitego dodatniegoelement biblioteki `touch' jest niedostêpny pod VMStouch: Archiwum `%s' nie istniejetouch: B³êdny kod powrotu z ar_member_touch w `%s'touch: Brak elementu `%s' w `%s'touch: `%s' nie jest poprawnym archiwumb³±d otwarcia biblioteki `%s' podczas szukania elementu `%s'nieznany poziom diagnostyki `%s'nieznany sygna³unlink (plik tymczasowy): nie dokoñczone wywo³anie funkcji `%s': brak `%c'niezakoñczone odwo³anie do zmiennejbrak pamiêci wirtualnejuwaga: Wykryto przestawienie zegara. Budowanie mo¿e byæ niekompletne.uwaga: -jN wymuszone w podzadaniu: wy³±czanie trybu serwera zadañ.uwaga: napotka³em na znak NUL; reszta linii zignorowanauwaga: ignorujê stare polecenia dla obiektu `%s'uwaga: serwer zadañ niedostêpny: u¿ywanie -j1. Nale¿y dodaæ `+' do nadrzêdnej regu³y make.uwaga: polecenia zakrywaj±ce dla obiektu `%s'uwaga: niezdefiniowana zmienna `%.*s'windows32_openpipe (): process_init_fd() nie powiod³o siê b³±d zapisub³±d zapisu: %spisz±cy serwer zadañmake-dfsg-3.81.orig/po/pl.po0000644000175000017500000013621610416553102016113 0ustar srivastasrivasta# Polish translation for GNU make. # Copyright (C) 1996, 2002, 2005 Free Software Foundation, Inc. # Pawe³ Krawczyk , 1996. # Jakub Bogusz , 2002-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-06-28 18:41+0200\n" "Last-Translator: Jakub Bogusz \n" "Language-Team: Polish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-2\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "próba u¿ycia nieistniej±cej funkcji: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "element biblioteki `touch' jest niedostêpny pod VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Archiwum `%s' nie istnieje" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' nie jest poprawnym archiwum" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: Brak elementu `%s' w `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: B³êdny kod powrotu z ar_member_touch w `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" "Uzyskanie informacji o module przez lnr$set_module nie uda³o siê, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control nie powiod³o siê, status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "b³±d otwarcia biblioteki `%s' podczas szukania elementu `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Element `%s'%s: %ld bajtów pod %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (nazwa mo¿e zostaæ okrojona)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Data %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Przerwano.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Element archiwum `%s' mo¿e byæ fa³szywy; nie usuniêty" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Element archiwum `%s' mo¿e byæ fa³szywy; nie usuniêty" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Kasujê plik `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Kasujê plik `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# polecenia do wykonania" #: commands.c:602 msgid " (built-in):" msgstr " (wbudowane):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (z `%s', linia %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Katalogi\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: stat() zwraca b³±d.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (klucz %s, czas modyfikacji %d): otwarcie by³o niemo¿liwe.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (urz±dzenie %d, i-wêze³ [%d,%d,%d]): otwarcie by³o niemo¿liwe.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (urz±dzenie %ld, i-wêze³ %ld): otwarcie by³o niemo¿liwe.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (klucz %s, czas modyfikacji %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (urz±dzenie %d, i-wêze³ [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (urz±dzenie %ld, i-wêze³ %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Nie" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " pliki, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "nie" #: dir.c:1058 msgid " impossibilities" msgstr " niemo¿liwo¶ci" #: dir.c:1062 msgid " so far." msgstr " jak dot±d." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " niemo¿liwo¶ci w %lu katalogach.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Rekurencyjna zmienna `%s' wskazuje na sam± siebie" #: expand.c:266 msgid "unterminated variable reference" msgstr "niezakoñczone odwo³anie do zmiennej" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Polecenia dla pliku `%s' podano w %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Polecenia dla pliku `%s' zosta³y wyznaczone na podstawie regu³ standardowych," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ale `%s' jest teraz uznawany za ten sam plik co `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Polecenia dla `%s' zosta³y zignorowane na rzecz poleceñ dla `%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "nie mo¿na przemianowaæ `%s' z pojedynczym dwukropkiem na `%s' z podwójnym" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "nie mo¿na przemianowaæ `%s' z podwójnym dwukropkiem na `%s' z pojedynczym" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Kasowanie pliku po¶redniego `%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Kasowanie plików po¶rednich...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Oznaczenie czasu spoza zakresu; zast±piono %s" #: file.c:782 msgid "Current time" msgstr "Aktualny czas" #: file.c:881 msgid "# Not a target:" msgstr "# To nie jest obiekt:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Cenny plik (zale¿no¶æ .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Obiekt niejawny (zale¿no¶æ .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Obiekt podany w linii poleceñ." #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Makefile domy¶lny, wymieniony w MAKEFILES lub -include/sinclude." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Szukanie regu³ domy¶lnych zosta³o wykonane." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Szukanie regu³ domy¶lnych nie zosta³o wykonane." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Ga³±¼ wzorców domy¶lnych/statycznych: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Plik jest zale¿no¶ci± przej¶ciow±." #: file.c:919 msgid "# Also makes:" msgstr "# Robi równie¿:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Czas modyfikacji nie by³ sprawdzany." #: file.c:927 msgid "# File does not exist." msgstr "# Plik nie istnieje." #: file.c:929 msgid "# File is very old." msgstr "# Plik jest bardzo stary." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Ostatnio modyfikowany %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Plik zosta³ uaktualniony." #: file.c:937 msgid "# File has not been updated." msgstr "# Plik nie zosta³ uaktualniony." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Aktualnie uruchamiane polecenia (TO JEST PLUSKWA)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Aktualnie uruchamiane polecenia zale¿no¶ci (TO JEST PLUSKWA)." #: file.c:953 msgid "# Successfully updated." msgstr "# Uaktualnienie powiod³o siê." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Powinien byæ uaktualniony (-q jest w³±czone)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Uaktualnianie nie powiod³o siê." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# B³êdna warto¶æ w elemencie `update_status'!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# B³êdna warto¶æ w elemencie `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Pliki" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# statystyki tablic haszuj±cych plików:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "pierwszy argument funkcji `word' nie jest numeryczny" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "pierwszy argument funkcji `word' musi byæ wiêkszy od 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "pierwszy argument funkcji `wordlist' nie jest numeryczny" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "drugi argument funkcji `wordlist' nie jest numeryczny" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) nie powiod³o siê (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) nie powiod³o siê (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() nie powiod³o siê (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() nie powiod³o siê\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Czyszczê tymczasowy plik wsadowy %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Niewystarczaj±ca liczba argumentów (%d) dla funkcji `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Funkcja `%s' nie jest zaimplementowana na tej platformie" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "nie dokoñczone wywo³anie funkcji `%s': brak `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: opcja `%s' jest niejednoznaczna\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: opcja `--%s' nie przyjmuje argumentów\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: opcja `%c%s' nie przyjmuje argumentów\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: opcja `%s' wymaga argumentu\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: nierozpoznana opcja `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: nierozpoznan opcja `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: niedozwolona opcja -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: b³êdna opcja -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: opcja wymaga argumentu -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: opcja `-W %s' jest niejednoznaczna\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: opcja `-W %s' nie przyjmuje argumentów\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" "nie mo¿na zaalokowaæ %ld bajtów na tablicê haszuj±c±: pamiêæ wyczerpana" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Wype³nienie=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Przehaszowania=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Kolizje=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Szukanie standardowej regu³y dla `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Szukanie standardowej regu³y typu archive-member dla `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Pomijanie rekurencyjnego wywo³ania regu³y standardowej.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Próbowanie regu³y wzorcowej z ga³êzi± `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Odrzucenie niemo¿liwej zale¿no¶ci domy¶lnej `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Odrzucenie niemo¿liwej zale¿no¶ci regu³y `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Próbowanie zale¿no¶ci domy¶lnej `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Próbowanie zale¿no¶ci regu³y `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Znaleziono zale¿no¶æ `%s' jako VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Szukanie regu³y zawieraj±cej plik przej¶ciowy `%s'.\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "Nie mo¿na utworzyæ pliku tymczasowego\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] B³±d 0x%x (zignorowany)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] B³±d 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] B³±d %d (zignorowany)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] B³±d %d" #: job.c:399 msgid " (core dumped)" msgstr " (zrzut pamiêci)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Oczekiwanie na niezakoñczone zadania...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "¯yj±cy potomek 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (zdalne)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Zbieranie przegrywaj±cego potomka 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Zbieranie wygrywaj±cego potomka 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Czyszczenie tymczasowego pliku wsadowego %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Usuwanie potomka 0x%08lx PID %ld%s z kolejki.\n" #: job.c:862 msgid "write jobserver" msgstr "pisz±cy serwer zadañ" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Zwolniony token dla potomka 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() nie móg³ uruchomiæ procesu (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Naliczono %d parametrów nieudanego uruchomienia\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Wstawianie potomka 0x%08lx (%s) PID %ld%s do kolejki.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Otrzymano token dla potomka 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "strumieñ czytaj±cy zadania" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "niemo¿liwe wymuszenie limitów obci±¿enia w tym systemie" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "niemo¿liwe wymuszenie limitu obci±¿enia: " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "nie ma wiêcej uchwytów plików: nie mo¿na powieliæ stdin\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "nie ma wiêcej uchwytów plików: nie mo¿na powieliæ stdout\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "Nie mo¿na odtworzyæ stdin\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "Nie mo¿na odtworzyæ stdout\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "process_easy() nie móg³ uruchomiæ procesu (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make usun±³ potomka pid %d, nadal czeka na pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Polecenie nie znalezione" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Nie znaleziono programu pow³oki" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: mog³o zabrakn±æ miejsca na ¶rodowisko" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL siê zmieni³ (by³ `%s', jest `%s')\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Tworzenie tymczasowego pliku wsadowego %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (linia %d) Z³y kontekst pow³oki (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opcje:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Ignorowane dla kompatybilno¶ci.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make Bezwarunkowe utworzenie wszystkich obiektów.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C KATALOG, --directory=KATALOG\n" " Przej¶cie do KATALOGu przed robieniem\n" " czegokolwiek.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" " -d Wy¶wietla du¿o informacji diagnostycznych.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=FLAGI] Wy¶wietla ró¿ne rodzaje informacji\n" " diagnostycznych.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Zmienne ¶rodowiska przykrywaj± makefile.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f PLIK, --file=PLIK, --makefile=PLIK\n" " Czyta PLIK jako makefile.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr "" " -h, --help Wy¶wietla ten komunikat i koñczy dzia³anie.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Ignoruje b³êdy poleceñ.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I KATALOG, --include-dir=KATALOG\n" " Szuka do³±czanych makefile w KATALOGu.\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] Dopuszcza N zadañ naraz; brak N oznacza brak\n" " ograniczeñ.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Kontynuuj je¶li nie da siê zrobiæ jakich¶\n" " obiektów.\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" " Nie uruchamiaj wielu zadañ je¶li load nie " "jest\n" " poni¿ej N.\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times U¿ywanie ostatniego mtime miêdzy dowi±zaniem a " "celem.\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" " Nie wykonuje poleceñ; jedynie je wy¶wietla.\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 PLIK, --old-file=PLIK, --assume-old=PLIK\n" " Uznanie PLIKu za bardzo stary i nie tworzenie " "go\n" " ponownie.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr " -p, --print-data-base Wy¶wietla wewnêtrzn± bazê danych make.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Nie uruchamia ¿adnych poleceñ; status powrotu\n" " wskazuje aktualno¶æ.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr " -r, --no-builtin-rules Wy³±cza wbudowane regu³y standardowe.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Wy³±cza ustawianie wbudowanych zmiennych.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Nie wypisuje poleceñ.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Wy³±cza -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr " -t, --touch Uaktualnia obiekty zamiast je robiæ.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Wy¶wietla wersjê make i koñczy dzia³anie.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Wy¶wietla aktualny katalog.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Wy³±cza -w, nawet je¶li by³o ono w³±czone\n" " domy¶lnie.\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 PLIK, --what-if=PLIK, --new-file=PLIK, --assume-new=PLIK\n" " Uznaje PLIK za nieskoñczenie nowy.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Ostrzega przy odwo³aniach do " "niezdefiniowanych\n" " zmiennych.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "pusty ³añcuch nie mo¿e byæ nazw± pliku" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "nieznany poziom diagnostyki `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: z³apano Przerwanie/Wyj±tek (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" "Nie obs³ugiwany filtr wyj±tku wywo³any z programu %s\n" "ExceptionCode = %x\n" "ExceptionFlags = %x\n" "ExceptionAddress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Naruszenie praw dostêpu: zapis pod adresem %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Naruszenie praw dostêpu: odczyt spod adresu %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 ustawia 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 ustawia ¶cie¿kê wyszukiwania default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s jest zawieszony na 30 sekund..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "zakoñczono sleep(30). Kontynuacja.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile ze standardowego wej¶cia podano dwukrotnie." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (plik tymczasowy)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (plik tymczasowy)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Równoleg³e zadania (-j) nie s± obs³ugiwane na tej platformie" #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Prze³±czanie w tryb jednozadaniowy (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "b³±d wewnêtrzny: wiele opcji --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "b³±d wewnêtrzny: b³êdny ³añcuch --jobserver-fds `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "uwaga: -jN wymuszone w podzadaniu: wy³±czanie trybu serwera zadañ." #: main.c:1684 msgid "dup jobserver" msgstr "duplikacja serwera zadañ" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "uwaga: serwer zadañ niedostêpny: u¿ywanie -j1. Nale¿y dodaæ `+' do " "nadrzêdnej regu³y make." #: main.c:1710 msgid "creating jobs pipe" msgstr "tworzenie potoku zadañ" #: main.c:1725 msgid "init jobserver pipe" msgstr "inicjowanie potoku serwera zadañ" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "Dowi±zania symboliczne nie s± obs³ugiwane: wy³±czono -L." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Uaktualnianie plików makefile....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefile `%s' mo¿e siê zapêtliæ; nie przetwarzam go.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Nie uda³o siê zrobiæ makefile `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Nie znaleziono w³±czanych makefile `%s'." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Nie znaleziono makefile `%s'" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Niemo¿liwy powrót do katalogu startowego." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Ponowne uruchamianie[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (plik tymczasowy): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr ".DEFAULT_GOAL zawiera wiêcej ni¿ jeden cel" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Nie podano obiektów i nie znaleziono makefile" #: main.c:2191 msgid "No targets" msgstr "Brak obiektów" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Uaktualnianie obiektów docelowych....\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "uwaga: Wykryto przestawienie zegara. Budowanie mo¿e byæ niekompletne." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Sk³adnia: %s [opcje] [obiekt] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Ten program zosta³ zbudowany dla %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Ten program zosta³ zbudowany dla %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "B³êdy proszê zg³aszaæ na adres \n" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "opcja `-%c' wymaga niepustego ³añcucha jako argumentu" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "opcja `-%c' wymaga argumentu ca³kowitego dodatniego" #: 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 "" "%sTen program jest darmowy; warunki kopiowania s± opisane w ¼ród³ach.\n" "%sAutorzy nie daj± ¯ADNYCH gwarancji, w tym nawet gwarancji SPRZEDAWALNO¦CI\n" "%slub PRZYDATNO¦CI DO KONKRETNYCH CELÓW.\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "%sTen program zosta³ zbudowany dla %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sTen program zosta³ zbudowany dla %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Baza danych Make, wy¶wietlana na %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Zakoñczono tworzenie bazy danych Make na %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Wej¶cie do nieznanego katalogu\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Opuszczenie nieznanego katalogu\n" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Wej¶cie do katalogu `%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Opuszczenie katalogu `%s'\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Wej¶cie do nieznanego katalogu\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Opuszczenie nieznanego katalogu\n" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Wej¶cie do katalogu `%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Opuszczenie katalogu `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Stop.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Nieznany b³±d %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 "brak pamiêci wirtualnej" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: u¿ytkownik %lu (rzeczywisty %lu), grupa %lu (rzeczywista %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Zainicjalizowany dostêp" #: misc.c:746 msgid "User access" msgstr "Dostêp u¿ytkownika" #: misc.c:794 msgid "Make access" msgstr "Dostêp make" #: misc.c:828 msgid "Child access" msgstr "Dostêp potomka" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "b³±d zapisu: %s" #: misc.c:894 msgid "write error" msgstr "b³±d zapisu" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Czytanie makefile...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Czytanie makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (brak celu domy¶lnego)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (przeszukiwana ¶cie¿ka)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (niewa¿ne)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (brak rozszerzenia ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "b³êdna sk³adnia wyra¿enia warunkowego" #: read.c:633 msgid "extraneous `endef'" msgstr "nie zwi±zany `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "pusta nazwa zmiennej" #: read.c:662 msgid "empty `override' directive" msgstr "pusta dyrektywa `override'" #: read.c:687 msgid "invalid `override' directive" msgstr "b³êdna dyrektywa `override'" #: read.c:854 msgid "commands commence before first target" msgstr "polecenia zaczynaj± siê przed pierwszym obiektem" #: read.c:905 msgid "missing rule before commands" msgstr "brakuje regu³y przed poleceniami" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "brakuj±cy separator%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (czy¿by mia³ byæ TAB zamiast 8 spacji?)" #: read.c:1152 msgid "missing target pattern" msgstr "brakuj±cy wzorzec obiektu" #: read.c:1154 msgid "multiple target patterns" msgstr "wielokrotne wzorce obiektu" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "wzorzec obiektu nie zawiera `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "brakuj±cy `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Niezwi±zany tekst po dyrektywie `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "brakuj±cy `endef', niezakoñczone `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Niezwi±zany tekst po dyrektywie `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "niezwi±zany `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "tylko jedno `else' w wyra¿eniu warunkowym" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "¬le sformu³owana definicja zmiennej dla celu" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "wymagania nie mog± byæ definiowane w skryptach poleceñ" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "pomieszane standardowe i statyczne regu³y wzorców" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "pomieszane standardowe i normalne regu³y" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "obiekt `%s' nie pasuje do wzorca obiektu" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "plik obiektowy `%s' ma pozycje i : i ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "obiekt `%s' wyspecyfikowany wielokrotnie w tej samej regule" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "uwaga: polecenia zakrywaj±ce dla obiektu `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "uwaga: ignorujê stare polecenia dla obiektu `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "uwaga: napotka³em na znak NUL; reszta linii zignorowana" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Nie ma nic do zrobienia w `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' jest aktualne." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Czyszczenie pliku `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sBrak regu³ do wykonania obiektu `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sBrak regu³ do zrobienia obiektu `%s', wymaganego przez `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Przetwarzanie pliku obiektowego `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Ju¿ bez powodzenia próbowa³em uaktualniæ plik `%s'.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Plik `%s' by³ ju¿ przetwarzany.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Wci±¿ uaktualniam plik `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Skoñczy³em uaktualniaæ plik `%s'.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Plik `%s' nie istnieje.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Uwaga: plik .LOW_RESOLUTION_TIME `%s' ma du¿± rozdzielczo¶æ znacznika " "czasu" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Znaleziono standardow± regu³ê dla `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Brak standardowych regu³ dla `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Stosowanie standardowych poleceñ dla `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Okrê¿na dyrektywa %s <- %s porzucona." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Zakoñczono zale¿no¶ci pliku obiektu `%s'.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Zale¿no¶ci `%s' s± wykonywane.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Zaniechany plik obiektowy `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Obiekt `%s' nie zosta³ wykonany z powodu b³êdów." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Zale¿no¶æ `%s' dotyczy tylko kolejno¶ci dla obiektu `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Zale¿no¶æ `%s' obiektu `%s' nie istnieje.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Zale¿no¶æ `%s' jest nowsza od obiektu `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Zale¿no¶æ `%s' jest starsza od obiektu `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Obiekt `%s' jest typu double-colon i nie ma ¿adnych zale¿no¶ci.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Brak poleceñ dla `%s' i brak zmienionych zale¿no¶ci.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Tworzenie `%s' z powodu flagi always-make.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Nie ma potrzeby przerabiaæ obiektu `%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; u¿yto nazwy VPATH `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Konieczne przerobienie obiektu `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Zignorowano nazwê VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Uruchomiono polecenia dla `%s'.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Przerabianie pliku obiektowego `%s' nie powiod³o siê.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Przerabianie pliku obiektowego `%s' powiod³o siê.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Plik obiektowy `%s' powinien byæ przerobiony z opcj± -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Uwaga: Plik `%s' ma czas modyfikacji z przysz³o¶ci" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Uwaga: Plik `%s' ma czas modyfikacji %.2g s w przysz³o¶ci" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "element .LIBPATTERNS `%s' nie jest wzorcem" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Zasady nie eksportowane: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Regu³y stadardowe" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Brak standardowych regu³." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u standardowych regu³, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "PLUSKWA: z³e num_pattern_rules! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "nieznany sygna³" #: signame.c:93 msgid "Hangup" msgstr "Roz³±czenie" #: signame.c:96 msgid "Interrupt" msgstr "Przerwanie" #: signame.c:99 msgid "Quit" msgstr "Wyj¶cie" #: signame.c:102 msgid "Illegal Instruction" msgstr "B³êdna instrukcja" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Pu³apka ¶ledzenia" #: signame.c:110 msgid "Aborted" msgstr "Przerwany" #: signame.c:113 msgid "IOT trap" msgstr "Pu³apka IOT" #: signame.c:116 msgid "EMT trap" msgstr "Pu³apka EMT" #: signame.c:119 msgid "Floating point exception" msgstr "Wyj±tek zmiennoprzecinkowy" #: signame.c:122 msgid "Killed" msgstr "Zabity" #: signame.c:125 msgid "Bus error" msgstr "B³±d szyny" #: signame.c:128 msgid "Segmentation fault" msgstr "Naruszenie ochrony pamiêci" #: signame.c:131 msgid "Bad system call" msgstr "B³êdne wywo³anie systemowe" #: signame.c:134 msgid "Broken pipe" msgstr "Przerwany potok" #: signame.c:137 msgid "Alarm clock" msgstr "Budzik" #: signame.c:140 msgid "Terminated" msgstr "Zakoñczony" #: signame.c:143 msgid "User defined signal 1" msgstr "Sygna³ u¿ytkownika 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Sygna³ u¿ytkownika 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Potomek powróci³" #: signame.c:157 msgid "Power failure" msgstr "Przerwa w zasilaniu" #: signame.c:160 msgid "Stopped" msgstr "Zatrzymany" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Zatrzymany (wej¶cie z tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Zatrzymany (wyj¶cie na tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Zatrzymany (sygna³)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Przekroczony czas CPU" #: signame.c:175 msgid "File size limit exceeded" msgstr "Przekroczony limit wielko¶ci pliku" #: signame.c:178 msgid "Virtual timer expired" msgstr "Wyczerpany stoper wirtualny" #: signame.c:181 msgid "Profiling timer expired" msgstr "Wyczerpany stoper profiluj±cy" #: signame.c:187 msgid "Window changed" msgstr "Zmienione okno" #: signame.c:190 msgid "Continued" msgstr "Kontynuowany" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Nag³a sytuacja I/O" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O mo¿liwe" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Zaginione zasoby" #: signame.c:215 msgid "Danger signal" msgstr "Sygna³ niebezpieczeñstwa" #: signame.c:218 msgid "Information request" msgstr "¯±danie informacji" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Koprocesor obliczeñ zmiennoprzecinkowych niedostêpny" #: 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 "domy¶lna" #: variable.c:1372 msgid "environment" msgstr "¶rodowiskowa" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "¶rodowisko pod -e" #: variable.c:1381 msgid "command line" msgstr "z linii poleceñ" #: variable.c:1384 msgid "`override' directive" msgstr "dyrektywa `override'" #: variable.c:1387 msgid "automatic" msgstr "automatyczna" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (z `%s', linia %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# statystyki tablic haszuj±cych ustawionych zmiennych:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Zmienne\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Warto¶ci zmiennych dla wzorca" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Brak warto¶ci zmiennych dla wzorca." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u warto¶ci zmiennych dla wzorca" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "uwaga: niezdefiniowana zmienna `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search nie powiod³o siê - %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Uwaga: Puste przekierowanie\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "b³±d wewnêtrzny: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-uwaga, CTRL-Y pozostawi podproces(y).\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-uwaga, bêdzie trzeba ponownie umo¿liwiæ obs³ugê CTRL-Y z DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "WBUDOWANE [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "WBUDOWANE CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "WBUDOWANE RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Nieznane polecenie wbudowane '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "B³±d, puste polecenie\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Przekierowane wej¶cie z %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Przekierowane wyj¶cie diagnostyczne do %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Przekierowane wyj¶cie do %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Zamiast tego wykonywanie %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "B³±d podczas uruchamiania, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# ¦cie¿ki przeszukiwania VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Brak ¶cie¿ek przeszukiwania `vpath'" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u ¶cie¿ek przeszukiwania `vpath'.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Brak ogólnej (zmienna `VPATH') ¶cie¿ki przeszukiwania." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Ogólna (zmienna `VPATH') ¶cie¿ka przeszukiwania:\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Nie nale¿y podawaæ -j lub --jobs je¶li sh.exe nie jest dostêpny." #~ msgid "Resetting make for single job mode." #~ msgstr "Prze³±czanie make w tryb jednozadaniowy." make-dfsg-3.81.orig/po/pt_BR.gmo0000644000175000017500000010336610416553102016652 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðNzO{P”P2°PãP òP+þP**QUQ)kQ+•QÁQ6áQR *R8R'WR%R*¥ROÐR_ SU€SIÖSn TwTPUQXUªU<:VDwVh¼Vz%W; W;ÜW]XYvXÐXw^YŽÖYGeZc­Z>[3P[V„[GÛ[8#\ \\f\"†\ ©\¶\,Í\ú\ ]#];]Y]s] …]] ¦]²]%Ä] ê] ö] ^^*+^:V^‘^°^È^ä^-_2_)R_-|_,ª_,×_,`1`0J`,{`&¨`1Ï`aa)4a>^a#a8Áaúa0b!Gbib€b(‘b>ºb#ùbc&c-cHchc,†c,³càcüc,dGd%cd,‰d-¶däd&e"*e"Me1pe(¢e=Ëe£ f#­f!Ñf9óf -g:g&Sg+zgX¦g>ÿg>h\hlhh-h5Ëh i, i8iSi \i&hi(i¸iÈiØiëij j3j Ij Vj)cj*j)¸jâj?új=:k#xk5œk"Òk õk.l&0l Wl!bl„l “ll³lÈl&ãl) m(4m"]m€m#œmÀm'Üm'n&,nSn&nn.•nÄn án ín úno)o?oYo mo yo$„o©o7Ào.øo@'php6wp"®p3Ñp-q'3q#[qq>ƒq.Âq(ñqr5#rYr9ur¯r;¸rôr3s5Bs3xs.¬sÛsús=tUtZtwt0”t0Åt.ötB%uhu„u¡u ¾u+Êu*öu9!v8[v"”v.·v*ævw!w*w2w'Gwowvw…wšw$­w;Òw4x-Cx qx,{x¨x'¿x'çx*y$:y_y#ty&˜y¿y×yôyz$z&Bziz†z7žz2Öz {{1{G{"[{ ~{0‰{Cº{Aþ{B@|ƒ|=£|á|'ò|}9}"@} c}q}<‹}È}ß}è} ø}~>~0V~>‡~Æ~á~(ý~ &6G.~­Ê&êC€U€(^€‡€˜€·€΀)ê€4Ig4k8 7Ù$‚6‚P‚%j‚<‚'Í‚"õ‚2ƒ"KƒnƒDƒ'Òƒ#úƒ@„%_„…„$˜„7½„$õ„…C3…>w…;¶…2ò…C%†(i†!’†0´†å†CÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: GNU make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-11-16 17:06+0300 Last-Translator: Fábio Henrique F. Silva Language-Team: Brazilian Portuguese MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit # %u caminhos `vpath'. # %u regras implícitas, %u # %u valores para variável de padrões específicos # Diretórios # Arquivos # Banco de dados do Make finalizado em %s # Caminho genérico (variável `VPATH'): # # Regras implícitas. # Banco de dados do Make, impresso em %s # Sem caminho genérico (variável `VPATH'). # Faltam as regras implícitas. # Faltam valores para variável de padrões específicos # Caminho VPATH # Variáveis # tabela hash de arquivos: # Contados %d args na falha de execução Este programa foi compilado para %s Este programa foi compilado para %s (%s) --debug[=OPÇÕES] Imprime vários tipos de informações de depuração. --no-print-directory Desativa a opção -w, mesmo que ela esteja implicitamente ativada. --warn-undefined-variables Avisa quando um variável não definida for referenciada. -B, --always-make Processa todos os alvos incondicionalmente. -C DIRETÓRIO, --directory=DIRETÓRIO Muda para o DIRETÓRIO antes de fazer algo. -I DIRETÓRIO, --include-dir=DIRETÓRIO Pesquisa o DIRETÒRIO por arquivos make a incluir. -R, --no-builtin-variables Desabilita a configuração das variáveis embutidas. -S, --no-keep-going, --stop Desativa a opção -k. -W ARQUIVO, --what-if=ARQUIVO, --new-file=ARQUIVO, --assume-new=ARQUIVO Considera o ARQUIVO infinitamente novo. -b, -m Ignorado para compatibilidade. -d Imprime muita informação de depuração. -e, --environment-overrides Assume os valores das variáveis de ambiente. -f ARQUIVO, --file=ARQUIVO, --makefile=ARQUIVO Lê o ARQUIVO como se fosse um arquivo make. -h, --help Imprime esta mensagem e sai. -i, --ignore-errors Ignora os erros dos comandos. -j [N], --jobs[=N] Permite N tarefas de uma vez; tarefas infinitas sem argumentos. -k, --keep-going Continua mesmo que alguns alvos não possam ser processados. -l [N], --load-average[=N], --max-load[=N] Não inicia múltiplas tarefas a menos que a carga seja menor que N. -n, --just-print, --dry-run, --recon Não executa quaisquer comandos; apenas imprime-os. -o ARQUIVO, --old-file=ARQUIVO, --assume-old=ARQUIVO Considera o ARQUIVO como muito antigo e não reprocessá-o. -p, --print-data-base Imprime o banco de dados interno do make. -q, --question Não executa os comandos; O código de saida indica se está atualizado. -r, --no-builtin-rules Desabilita as regras implícitas. -s, --silent, --quiet Não ecoa os comandos. -t, --touch Executa um `touch' nos alvos ao invés de reprocessá-los. -v, --version Imprime o número de versão do make e sai. -w, --print-directory Imprime o diretório atual. Data %s Ignorando o nome VPATH `%s'. uid = %d, gid = %d, modo = 0%o. (embutido): (arquivo core criado) (você pensou em TAB ao invés de 8 espaços?) (sem importância) (de `%s', linha %lu) (de `%s', linha %lu): (o nome pode estar truncado) (não há objetivo padrão) (sem expansão ~) (remoto) (caminho de pesquisa) arquivos, impossibilidades impossibilidades em %lu diretórios. até agora. terminal.# Também faz:# Linha de Comando do Alvo.# Comandos em execução (ISTO É UMA FALHA).# Comandos de dependências em execução (ISTO É UMA FALHA).# Problemas com a atualização.# O Arquivo não existe.# O Arquivo foi atualizado.# O Arquivo não foi atualizado.# O arquivo é um pré-requisito intermediário.# O Arquivo está desatualizado.# Pesquisa por regra implícita concluida.# Pesquisa por regra implícita não concluida.# Derivação padrão implícita/estática: `%s' # Valor inválido no membro `command_state' !# Valor inválido no membro `update_status' !# Última modificação %s # O Período da modificação nunca foi verificado.# Precisa ser atualizado (-q está definido).# Alvo Falso (prerequisito de .PHONY).# Arquivo importante (prerequisito de .PRECIOUS).# Atualizado com sucesso.# comandos para executar# %s (dispositivo %d, inode [%d,%d,%d]): # %s (dispositivo %d, inode [%d,%d,%d]): não pôde ser aberto. # %s (dispositivo %ld, inode %ld): # %s (dispositivo %ld, inode %ld): não pôde ser aberto. # %s (chave %s, mtime %d): # %s (chave %s, mtime %d): não pôde ser aberto. # %s: não pôde ser estabelecido. # Sem caminho `vpath'.# Não é um alvo:# tabela hash do conjunto de variávies: %s (linha %d) contexto inválido (!unixy && !batch_mode_shell) %s está suspenso por 30 segundos...%s%s: %s%s: %s%s: Comando não encontrado%s: Entrando no diretório `%s' %s: Saindo do diretório `%s' %s: Interpretador de comandos não encontrado%s: Data/Hora fora de faixa; substituindo %s%s: a opção é ilegal -- %c %s: a opção é inválida -- %c %s: a opção `%c%s' não permite um argumento %s: a opção `%s' é ambigua %s: a opção `%s' requer um argumento %s: a opção `--%s' não permite um argumento %s: a opção `-W %s' não permite um argumento %s: a opção `-W %s' é ambigua %s: a opção requer um argumento -- %c %s: a opção é desconhecida `%c%s' %s: a opção é desconhecida `--%s' %s: usuário %lu (real %lu), grupo %lu (real %lu) %sSem regra para processar o alvo `%s'%s%sSem regra para processar o alvo `%s', necessário por `%s'%s%sEste é um programa livre; veja o fonte para as condições de cópia. %sNão há garantias; nem mesmo de COMERCIALIZAÇÃO OU ATENDIMENTO A UMA %sFUNÇÃO EM PARTICULAR. %s[%u]: Entrando no diretório `%s' %s[%u]: Saindo do diretório `%s' ** O arquivo membro `%s' pode ser falso. Não foi apagado.*** Quebra. ** Apagando arquivo `%s'** Apagando arquivo intermediário `%s'** Esperando que outros processos terminem.*** Aviso: arquivo .LOW_RESOLUTION_TIME `%s' tem uma etiqueta de tempo de alta resolução** [%s] O arquivo membro `%s' pode ser falso. Não foi apagado.** [%s] Apagando arquivo `%s'** [%s] Erro %d*** [%s] Erro 0x%x*** [%s] Erro 0x%x (ignorado)-warning, CTRL-Y sairá do(s) subprocesso(s). -warning, pode ser preciso reativar o CTRL-Y no DCL. . Pare. O elemento .LIBPATTERNS `%s' não é um padrão; usando o nome VPATH `%s'AbortadoDespertadorEvitando recursão em regra implícita. ERRO: num_pattern_rules errada! %u != %uCD EMBUTIDO %s RM EMBUTIDO %s EMBUTIDO [%s][%s] Chamada de sistema inválidaCanalização interrompidaErro de barramentoTempo de CPU excedidoAcesso filhoO Filho saiuDependência circular %s <- %s abandonada.Apagando o arquivo de lote temporário: %s Apagando o arquivo de lote temporário %s Colisões=%ld/%ld=%.0f%%Comandos para `%s' serão ignorados em favor daqueles para `%s'.Comandos para o arquivo `%s' encontrados por regra implícita,Os comandos de `%s' estão rodando. Comandos especificados para o arquivo `%s' em %s:%lu,Considerando o arquivo alvo `%s'. ContinuaçãoNão foi possível voltar ao diretório original.Criando arquivo de lote temporário %s Hora atualCustomizações não exportadas: %s Sinal perigosoAviso EMTErro de execução, %d Erro, comando vazio Executando %s ao invés de Texto estranho depois da diretiva `%s'Texto estranho depois da diretiva `endef'Problemas ao reprocessar o arquivo `%s'.Falha ao reprocessar o alvo `%s'. O arquivo `%s' não existe. O arquivo `%s' já foi considerado. Tamanho do arquivo excedidoPré-requisitos do alvo `%s' concluido. Atualização do arquivo `%s' concluida. Co-processador aritmético indisponívelExceção de ponto flutuanteRegra implícita encontrada para `%s'. Pré-requisito `%s' encontrado como VPATH `%s' Desistindo do arquivo `%s'. DesconectarPossível E/SAviso IOTInstrução ilegalArquivo `%s' incluido não foi encontrado.Solicitação de informaçãoAcesso inicializadoInterrupçãoFinalizadoFilho ativo 0x%08lx (%s) PID %ld %s Carga=%ld/%ld=%.0f%%, Procurando uma regra com o arquivo intermediário `%s'. Procurando por uma regra implícita para `%s'. Procurando por uma regra implícita de arquivo-membro para `%s'. Acesso do makeO arquivo `%s' pode estar em loop; não reprocessá-lo. O arquivo `%s' não foi encontrado.Makefile na entrada padrão especificado duas vezes.Processando `%s' devido a opção always-make. Membro `%s'%s: %ld bytes de %ld (%ld). O alvo `%s' deve ser reprocessado. NãoNenhum comando para `%s' e nenhum pré-requisito foi alterado. Nenhuma regra implícita encontrada para `%s'. Não é necessário reprocessar o alvo `%s'Sem alvoNenhum alvo indicado e nenhum arquivo make encontradoNada a ser feito para `%s'.Obtido o sinalizador para o processo filho 0x%08lx (%s). Opções: Tarefas paralelas (-j) não são suportadas nesta plataforma.Falha na Energia ElétricaPré-requisito `%s' é mais novo do que o alvo `%s'. Pré-requisito `%s' é mais antigo do que o alvo `%s'. Pré-requisito `%s' está ordenado para o alvo `%s'. Pré-requisitos `%s' do alvo `%s' não existem. Temporizador de perfil expirouAtualizando o arquivo `%s'. Colocando o processo filho 0x%08lx (%s) PID %ld%s na cadeia. SairLendo arquivos makefile `%s'Lendo arquivos makefile ... Descarregando processo filho 0x%08lx PID %ld %s Descarregando processo filho 0x%08lx PID %ld %s Tentativa de atualizar o arquivo `%s' falhou. Variável recursiva `%s' faz referência a ela mesma (eventualmente)Erro redirecionado para %s Entrada de %s redirecionada Saida redirecionada para %s Rehash=%d, Rejeitando pré-requisitos implícitos `%s'. Rejeitando pré-requisito para regra `%s'. Liberado sinalizador para o processo filho 0x%08lx (%s). Removendo o processo filho 0x%08lx PID %ld%s da cadeia. Apagando arquivo intermediário... Informe os problemas para . Reiniciando no modo de tarefa única (-j1).Recurso perdidoSIGPHONESIGWINDFalha de segmentaçãoAinda está atualizando o arquivo `%s'. ParadoParado (sinal)Parado (entrada tty)Parado (saida tty)Alvo `%s' reprocessado com sucesso. O alvo `%s' é dois-pontos duplos e não tem pré-requisitos. O alvo `%s' não foi reprocessado por causa de erros.O alvo `%s' precisa ser reprocessado sob -q. TerminadoPré-requisitos do `%s' estão sendo criados. Aviso Trace/breakpointTentando pré-requisito implícito `%s'. Tentando padrão para regra com `%.*s'. Tentanto pré-requisito para a regra `%s'. Comando embutido desconhecido `%s'. Erro desconhecido %dAtualizando os objetivos finais... Atualizando os arquivos makefiles ... Condição de E/S urgenteUso: %s [opções] [alvo] ... Acesso do usuárioSinal 1 definido pelo usuárioSinal 2 definido pelo usuárioUsando os comandos padrões para `%s'. Temporizador virtual expirouAviso: Redireção vazia ** Aviso: O arquivo `%s' está com a hora %.2g adiantada** Aviso: O arquivo `%s' está com a hora adiantadaJanela alterada[%s] Erro %d (ignorado)`%s' está atualizado.diretiva `override'característica não suportada: `%s'automáticomas `%s' é considerado o mesmo arquivo que `%s'.não foi possível alocar %ld bytes para a tabela hash: memória cheianão pôde renomer de dois-pontos duplos `%s' para dois-pontos `%s'não pôde renomear de dois-pontos `%s' para dois-pontos duplos `%s'não pôde forçar a carga limite:não pôde forçar os limites de carga neste sistema operacionallinha de comandocomandos começam antes do primeiro alvocriando canalização de tarefaspadrãosleep(30) concluido. Continuando. dup jobserverdiretiva `override' vaziaCadeia de caracteres vazia não é válida como nome de arquivonome de variável vazioambienteambiente sob -e`%s' estranho`endef' extranhofind_and_set_shell, caminho de pesquisa do default_shell = %s find_and_set_shell definiu o default_shell = %s o primeiro argumento para a função `word' deve ser maior que 0fopen (arquivo temporário)fwrite (arquivo temporário)inicializando a canalização do jobservererro interno: `%s' command_stateerro interno: valor `%s' inválido para --jobserver-fdserro interno: múltiplas opções --jobserver-fdsdiretiva `override' inválidasíntaxe inválida na condicionallbr$ini_control falhou com estado = %do lbr$set_module falhou ao obter informações do módulo, estado = %dmakefilefaltando `endef', `define' não terminadofaltando `endif'falta regra antes dos comandosfaltando o separador%sfaltando o padrão dos alvosAs regras implícitas e normais misturadasAs regras implícitas e de padrão estático misturadasmúltiplos padrões para o alvonãoprimeiro argumento não numérico para a função `word'primeiro argumento não numérico para a função `wordlist'segundo argumento não numérico para a função `wordlist'use apenas um `else' por condicionaltarefas canalizadas lidassys$search falhou com %d O alvo `%s' não coincide com o padrãoO alvo `%s' foi informado mais do que um vez na mesma regra.O arquivo alvo `%s' tem entradas : e ::padrão para o alvo não contém `%%'a opção `-%c' requer um argumento inteiro positivoo touch não está disponível no VMStouch: Arquivo `%s' não existetouch: O ar_member_touch retornou um código de erro inválido em `%s'touch: O membro `%s' não existe em `%s'touch: `%s' não é um arquivo válidoerro na abertura da biblioteca `%s' para localizar o membro `%s'nível de depuração desconhecido: `%s'sinal desconhecidodesvinculado (arquivos temporário): Chamada não terminada para a função `%s': faltando `%c'referência a variável não finalizadaA memória virtual encheuaviso: O relógio está errado. Sua compilação pode ficar incompleta.aviso: -jN forçado no submake: desabilitando o modo jobserver.aviso: caracter NUL detetado; o resto da linha foi ignoradoaviso: ignorando comandos antigos para o alvo `%s'aviso: jobserver indisponível: usando -j1. Inclua `+' na regra pai.aviso: impondo comandos para o alvo `%s'aviso: variável indefinida `%.*s'windows32_openpipe (): process_init_fd() falhou gravar jobservermake-dfsg-3.81.orig/po/pt_BR.po0000644000175000017500000014227610416553102016511 0ustar srivastasrivasta# Mensagem do GNU make em Português (Brasil) # Copyright (C) 2000 Free Software Foundation, Inc. # Fábio Henrique F. Silva , 2000. # # Caso você encontre alguma mensagem que não está bem traduzida, por # favor me informe dando sua sugestão. # msgid "" msgstr "" "Project-Id-Version: GNU 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-11-16 17:06+0300\n" "Last-Translator: Fábio Henrique F. Silva \n" "Language-Team: Brazilian Portuguese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=ISO-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "característica não suportada: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "o touch não está disponível no VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: Arquivo `%s' não existe" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: `%s' não é um arquivo válido" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: O membro `%s' não existe em `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: O ar_member_touch retornou um código de erro inválido em `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "o lbr$set_module falhou ao obter informações do módulo, estado = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control falhou com estado = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "erro na abertura da biblioteca `%s' para localizar o membro `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Membro `%s'%s: %ld bytes de %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (o nome pode estar truncado)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Data %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, modo = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Quebra.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "** [%s] O arquivo membro `%s' pode ser falso. Não foi apagado." #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "** O arquivo membro `%s' pode ser falso. Não foi apagado." #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "** [%s] Apagando arquivo `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "** Apagando arquivo `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# comandos para executar" #: commands.c:602 msgid " (built-in):" msgstr " (embutido):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (de `%s', linha %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Diretórios\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: não pôde ser estabelecido.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (chave %s, mtime %d): não pôde ser aberto.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (dispositivo %d, inode [%d,%d,%d]): não pôde ser aberto.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (dispositivo %ld, inode %ld): não pôde ser aberto.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (chave %s, mtime %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (dispositivo %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (dispositivo %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Não" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " arquivos, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "não" #: dir.c:1058 msgid " impossibilities" msgstr " impossibilidades" #: dir.c:1062 msgid " so far." msgstr " até agora." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " impossibilidades em %lu diretórios.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Variável recursiva `%s' faz referência a ela mesma (eventualmente)" #: expand.c:266 msgid "unterminated variable reference" msgstr "referência a variável não finalizada" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Comandos especificados para o arquivo `%s' em %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "Comandos para o arquivo `%s' encontrados por regra implícita," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "mas `%s' é considerado o mesmo arquivo que `%s'." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Comandos para `%s' serão ignorados em favor daqueles para `%s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "não pôde renomear de dois-pontos `%s' para dois-pontos duplos `%s'" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "não pôde renomer de dois-pontos duplos `%s' para dois-pontos `%s'" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "** Apagando arquivo intermediário `%s'" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Apagando arquivo intermediário...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Data/Hora fora de faixa; substituindo %s" #: file.c:782 msgid "Current time" msgstr "Hora atual" #: file.c:881 msgid "# Not a target:" msgstr "# Não é um alvo:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Arquivo importante (prerequisito de .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Alvo Falso (prerequisito de .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Linha de Comando do Alvo." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Um Padrão ou arquivo MAKEFILES" #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Pesquisa por regra implícita concluida." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Pesquisa por regra implícita não concluida." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Derivação padrão implícita/estática: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# O arquivo é um pré-requisito intermediário." #: file.c:919 msgid "# Also makes:" msgstr "# Também faz:" #: file.c:925 msgid "# Modification time never checked." msgstr "# O Período da modificação nunca foi verificado." #: file.c:927 msgid "# File does not exist." msgstr "# O Arquivo não existe." #: file.c:929 msgid "# File is very old." msgstr "# O Arquivo está desatualizado." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Última modificação %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# O Arquivo foi atualizado." #: file.c:937 msgid "# File has not been updated." msgstr "# O Arquivo não foi atualizado." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Comandos em execução (ISTO É UMA FALHA)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Comandos de dependências em execução (ISTO É UMA FALHA)." #: file.c:953 msgid "# Successfully updated." msgstr "# Atualizado com sucesso." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Precisa ser atualizado (-q está definido)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Problemas com a atualização." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Valor inválido no membro `update_status' !" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Valor inválido no membro `command_state' !" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Arquivos" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# tabela hash de arquivos:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "primeiro argumento não numérico para a função `word'" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "o primeiro argumento para a função `word' deve ser maior que 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "primeiro argumento não numérico para a função `wordlist'" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "segundo argumento não numérico para a função `wordlist'" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) falhou (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) falhou (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() falhou (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() falhou\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Apagando o arquivo de lote temporário %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "O número de argumentos é insuficiente (%d) para a função `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "A função `%s' não foi implementada nesta plataforma" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "Chamada não terminada para a função `%s': faltando `%c'" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: a opção `%s' é ambigua\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: a opção `--%s' não permite um argumento\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: a opção `%c%s' não permite um argumento\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: a opção `%s' requer um argumento\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: a opção é desconhecida `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: a opção é desconhecida `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: a opção é ilegal -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: a opção é inválida -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: a opção requer um argumento -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: a opção `-W %s' é ambigua\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: a opção `-W %s' não permite um argumento\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "não foi possível alocar %ld bytes para a tabela hash: memória cheia" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Carga=%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 "Colisões=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Procurando por uma regra implícita para `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Procurando por uma regra implícita de arquivo-membro para `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Evitando recursão em regra implícita.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Tentando padrão para regra com `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Rejeitando pré-requisitos implícitos `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Rejeitando pré-requisito para regra `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Tentando pré-requisito implícito `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Tentanto pré-requisito para a regra `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Pré-requisito `%s' encontrado como VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Procurando uma regra com o arquivo intermediário `%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (arquivo temporário)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Erro 0x%x (ignorado)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Erro 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Erro %d (ignorado)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "** [%s] Erro %d" #: job.c:399 msgid " (core dumped)" msgstr " (arquivo core criado)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "** Esperando que outros processos terminem." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Filho ativo 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (remoto)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Descarregando processo filho 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Descarregando processo filho 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Apagando o arquivo de lote temporário: %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Removendo o processo filho 0x%08lx PID %ld%s da cadeia.\n" #: job.c:862 msgid "write jobserver" msgstr "gravar jobserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Liberado sinalizador para o processo filho 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() falhou ao executar o processo (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Contados %d args na falha de execução\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Colocando o processo filho 0x%08lx (%s) PID %ld%s na cadeia.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Obtido o sinalizador para o processo filho 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "tarefas canalizadas lidas" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "não pôde forçar os limites de carga neste sistema operacional" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "não pôde forçar a carga limite:" #: 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 "process_easy() falhou ao executar o processo (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "processo filho descarregado: pid %d, aguardando pelo pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Comando não encontrado" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Interpretador de comandos não encontrado" #: 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 alterado (era `%s' e agora é `%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Criando arquivo de lote temporário %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (linha %d) contexto inválido (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Opções:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Ignorado para compatibilidade.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make Processa todos os alvos incondicionalmente.\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C DIRETÓRIO, --directory=DIRETÓRIO\n" " Muda para o DIRETÓRIO antes de fazer algo.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr " -d Imprime muita informação de depuração.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=OPÇÕES] Imprime vários tipos de informações de " "depuração.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Assume os valores das variáveis de ambiente.\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f ARQUIVO, --file=ARQUIVO, --makefile=ARQUIVO\n" " Lê o ARQUIVO como se fosse um arquivo make.\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Imprime esta mensagem e sai.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors Ignora os erros dos comandos.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I DIRETÓRIO, --include-dir=DIRETÓRIO\n" " Pesquisa o DIRETÒRIO por arquivos make a " "incluir.\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] Permite N tarefas de uma vez; tarefas infinitas " "sem argumentos.\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going Continua mesmo que alguns alvos não possam ser " "processados.\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" " Não inicia múltiplas tarefas a menos que a " "carga seja menor que N.\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" " Não executa quaisquer comandos; apenas imprime-" "os.\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 ARQUIVO, --old-file=ARQUIVO, --assume-old=ARQUIVO\n" " Considera o ARQUIVO como muito antigo e não " "reprocessá-o.\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base Imprime o banco de dados interno do make.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question Não executa os comandos; O código de saida " "indica se está atualizado.\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr " -r, --no-builtin-rules Desabilita as regras implícitas.\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables Desabilita a configuração das variáveis " "embutidas.\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr " -s, --silent, --quiet Não ecoa os comandos.\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\n" " Desativa a opção -k.\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Executa um `touch' nos alvos ao invés de " "reprocessá-los.\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version Imprime o número de versão do make e sai.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory Imprime o diretório atual.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Desativa a opção -w, mesmo que ela esteja " "implicitamente ativada.\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 ARQUIVO, --what-if=ARQUIVO, --new-file=ARQUIVO, --assume-new=ARQUIVO\n" " Considera o ARQUIVO infinitamente novo.\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables Avisa quando um variável não definida for " "referenciada.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "Cadeia de caracteres vazia não é válida como nome de arquivo" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "nível de depuração desconhecido: `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Interrupção/Exceção capturada (código = 0x%x, endereço = 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" "Não pôde tratar o filtro de exceção chamado por %s\n" "CódigoExceção = %x\n" "SinalExceção = %x\n" "EndereçoExceção = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Violação de acesso: operação de escrita no endereço %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Violação de acesso: operação de leitura no endereço %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 definiu o 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, caminho de pesquisa do default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s está suspenso por 30 segundos..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "sleep(30) concluido. Continuando.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile na entrada padrão especificado duas vezes." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (arquivo temporário)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (arquivo temporário)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Tarefas paralelas (-j) não são suportadas nesta plataforma." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Reiniciando no modo de tarefa única (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "erro interno: múltiplas opções --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "erro interno: valor `%s' inválido para --jobserver-fds" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "aviso: -jN forçado no submake: desabilitando o modo jobserver." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "aviso: jobserver indisponível: usando -j1. Inclua `+' na regra pai." #: main.c:1710 msgid "creating jobs pipe" msgstr "criando canalização de tarefas" #: main.c:1725 msgid "init jobserver pipe" msgstr "inicializando a canalização do jobserver" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Atualizando os arquivos makefiles ...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "O arquivo `%s' pode estar em loop; não reprocessá-lo.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Problemas ao reprocessar o arquivo `%s'." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Arquivo `%s' incluido não foi encontrado." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "O arquivo `%s' não foi encontrado." #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Não foi possível voltar ao diretório original." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Re-executando:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "desvinculado (arquivos temporário): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Nenhum alvo indicado e nenhum arquivo make encontrado" #: main.c:2191 msgid "No targets" msgstr "Sem alvo" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Atualizando os objetivos finais...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "aviso: O relógio está errado. Sua compilação pode ficar incompleta." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Uso: %s [opções] [alvo] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Este programa foi compilado para %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Este programa foi compilado para %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Informe os problemas para .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "a opção `-%c' requer um argumento inteiro positivo" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "a opção `-%c' requer um argumento inteiro positivo" #: 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 "" "%sEste é um programa livre; veja o fonte para as condições de cópia.\n" "%sNão há garantias; nem mesmo de COMERCIALIZAÇÃO OU ATENDIMENTO A UMA\n" "%sFUNÇÃO EM PARTICULAR.\n" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "Este programa foi compilado para %s\n" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "Este programa foi compilado para %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Banco de dados do Make, impresso em %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Banco de dados do Make finalizado em %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Entrando em um diretório desconhecido" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Saindo de um diretório desconhecido" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Entrando no diretório `%s'\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Saindo do diretório `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Entrando em um diretório desconhecido" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Saindo de um diretório desconhecido" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Entrando no diretório `%s'\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Saindo do diretório `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Pare.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Erro desconhecido %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 "A memória virtual encheu" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: usuário %lu (real %lu), grupo %lu (real %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Acesso inicializado" #: misc.c:746 msgid "User access" msgstr "Acesso do usuário" #: misc.c:794 msgid "Make access" msgstr "Acesso do make" #: misc.c:828 msgid "Child access" msgstr "Acesso filho" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Erro redirecionado para %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "gravar jobserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Lendo arquivos makefile ...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Lendo arquivos makefile `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (não há objetivo padrão)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (caminho de pesquisa)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (sem importância)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (sem expansão ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "síntaxe inválida na condicional" #: read.c:633 msgid "extraneous `endef'" msgstr "`endef' extranho" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "nome de variável vazio" #: read.c:662 msgid "empty `override' directive" msgstr "diretiva `override' vazia" #: read.c:687 msgid "invalid `override' directive" msgstr "diretiva `override' inválida" #: read.c:854 msgid "commands commence before first target" msgstr "comandos começam antes do primeiro alvo" #: read.c:905 msgid "missing rule before commands" msgstr "falta regra antes dos comandos" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "faltando o separador%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (você pensou em TAB ao invés de 8 espaços?)" #: read.c:1152 msgid "missing target pattern" msgstr "faltando o padrão dos alvos" #: read.c:1154 msgid "multiple target patterns" msgstr "múltiplos padrões para o alvo" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "padrão para o alvo não contém `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "faltando `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Texto estranho depois da diretiva `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "faltando `endef', `define' não terminado" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Texto estranho depois da diretiva `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "`%s' estranho" #: read.c:1482 msgid "only one `else' per conditional" msgstr "use apenas um `else' por condicional" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Definição de variável por alvo mau formada" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "As regras implícitas e de padrão estático misturadas" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "As regras implícitas e normais misturadas" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "O alvo `%s' não coincide com o padrão" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "O arquivo alvo `%s' tem entradas : e ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "O alvo `%s' foi informado mais do que um vez na mesma regra." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "aviso: impondo comandos para o alvo `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "aviso: ignorando comandos antigos para o alvo `%s'" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "aviso: caracter NUL detetado; o resto da linha foi ignorado" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Nada a ser feito para `%s'." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' está atualizado." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Atualizando o arquivo `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sSem regra para processar o alvo `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sSem regra para processar o alvo `%s', necessário por `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Considerando o arquivo alvo `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Tentativa de atualizar o arquivo `%s' falhou.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "O arquivo `%s' já foi considerado.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Ainda está atualizando o arquivo `%s'.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Atualização do arquivo `%s' concluida.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "O arquivo `%s' não existe.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Aviso: arquivo .LOW_RESOLUTION_TIME `%s' tem uma etiqueta de tempo de " "alta resolução" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Regra implícita encontrada para `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Nenhuma regra implícita encontrada para `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Usando os comandos padrões para `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Dependência circular %s <- %s abandonada." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Pré-requisitos do alvo `%s' concluido.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Pré-requisitos do `%s' estão sendo criados.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Desistindo do arquivo `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "O alvo `%s' não foi reprocessado por causa de erros." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Pré-requisito `%s' está ordenado para o alvo `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Pré-requisitos `%s' do alvo `%s' não existem.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Pré-requisito `%s' é mais novo do que o alvo `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Pré-requisito `%s' é mais antigo do que o alvo `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "O alvo `%s' é dois-pontos duplos e não tem pré-requisitos.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Nenhum comando para `%s' e nenhum pré-requisito foi alterado.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Processando `%s' devido a opção always-make.\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Não é necessário reprocessar o alvo `%s'" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; usando o nome VPATH `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "O alvo `%s' deve ser reprocessado.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Ignorando o nome VPATH `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Os comandos de `%s' estão rodando.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Falha ao reprocessar o alvo `%s'.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Alvo `%s' reprocessado com sucesso.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "O alvo `%s' precisa ser reprocessado sob -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "** Aviso: O arquivo `%s' está com a hora adiantada" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "** Aviso: O arquivo `%s' está com a hora %.2g adiantada" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "O elemento .LIBPATTERNS `%s' não é um padrão" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customizações não exportadas: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Regras implícitas." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Faltam as regras implícitas." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u regras implícitas, %u" #: rule.c:575 msgid " terminal." msgstr " terminal." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "ERRO: num_pattern_rules errada! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "sinal desconhecido" #: signame.c:93 msgid "Hangup" msgstr "Desconectar" #: signame.c:96 msgid "Interrupt" msgstr "Interrupção" #: signame.c:99 msgid "Quit" msgstr "Sair" #: signame.c:102 msgid "Illegal Instruction" msgstr "Instrução ilegal" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Aviso Trace/breakpoint" #: signame.c:110 msgid "Aborted" msgstr "Abortado" #: signame.c:113 msgid "IOT trap" msgstr "Aviso IOT" #: signame.c:116 msgid "EMT trap" msgstr "Aviso EMT" #: signame.c:119 msgid "Floating point exception" msgstr "Exceção de ponto flutuante" #: signame.c:122 msgid "Killed" msgstr "Finalizado" #: signame.c:125 msgid "Bus error" msgstr "Erro de barramento" #: signame.c:128 msgid "Segmentation fault" msgstr "Falha de segmentação" #: signame.c:131 msgid "Bad system call" msgstr "Chamada de sistema inválida" #: signame.c:134 msgid "Broken pipe" msgstr "Canalização interrompida" #: signame.c:137 msgid "Alarm clock" msgstr "Despertador" #: signame.c:140 msgid "Terminated" msgstr "Terminado" #: signame.c:143 msgid "User defined signal 1" msgstr "Sinal 1 definido pelo usuário" #: signame.c:146 msgid "User defined signal 2" msgstr "Sinal 2 definido pelo usuário" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "O Filho saiu" #: signame.c:157 msgid "Power failure" msgstr "Falha na Energia Elétrica" #: signame.c:160 msgid "Stopped" msgstr "Parado" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Parado (entrada tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Parado (saida tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Parado (sinal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Tempo de CPU excedido" #: signame.c:175 msgid "File size limit exceeded" msgstr "Tamanho do arquivo excedido" #: signame.c:178 msgid "Virtual timer expired" msgstr "Temporizador virtual expirou" #: signame.c:181 msgid "Profiling timer expired" msgstr "Temporizador de perfil expirou" #: signame.c:187 msgid "Window changed" msgstr "Janela alterada" #: signame.c:190 msgid "Continued" msgstr "Continuação" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Condição de E/S urgente" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "Possível E/S" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Recurso perdido" #: signame.c:215 msgid "Danger signal" msgstr "Sinal perigoso" #: signame.c:218 msgid "Information request" msgstr "Solicitação de informação" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Co-processador aritmético indisponível" #: 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 "padrão" #: variable.c:1372 msgid "environment" msgstr "ambiente" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "ambiente sob -e" #: variable.c:1381 msgid "command line" msgstr "linha de comando" #: variable.c:1384 msgid "`override' directive" msgstr "diretiva `override'" #: variable.c:1387 msgid "automatic" msgstr "automático" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (de `%s', linha %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# tabela hash do conjunto de variávies:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variáveis\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Valores da variável de padrões específicos" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Faltam valores para variável de padrões específicos" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u valores para variável de padrões específicos" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "aviso: variável indefinida `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search falhou com %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Aviso: Redireção vazia\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "erro interno: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-warning, CTRL-Y sairá do(s) subprocesso(s).\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-warning, pode ser preciso reativar o CTRL-Y no DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "EMBUTIDO [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "CD EMBUTIDO %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "RM EMBUTIDO %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Comando embutido desconhecido `%s'.\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Erro, comando vazio\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Entrada de %s redirecionada\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Erro redirecionado para %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Saida redirecionada para %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Executando %s ao invés de\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Erro de execução, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# Caminho VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Sem caminho `vpath'." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u caminhos `vpath'.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Sem caminho genérico (variável `VPATH')." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Caminho genérico (variável `VPATH'):\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Erro de sintaxe dentro de '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Recebido um SIGSHLD; %u processos filhos descarregados.\n" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Não especifique -j ou --jobs se o sh.exe não estiver disponível." #~ msgid "Resetting make for single job mode." #~ msgstr "Reiniciando o make para o modo de trabalho único." #~ msgid "no file name for `%sinclude'" #~ msgstr "sem nome de arquivo para `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "O alvo `%s' deixou pre-requisito padrão vazio" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Nenhum arquivo." # Não traduzi "hash buckets" por não encontrar uma tradução satisfatória. # Assim que encontrar farei a atualização. #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u arquivos em %u hash buckets.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# média %.3f arquivos por grupo, max %u arquivos em um grupo.\n" #~ msgid "the `word' function takes a positive index argument" #~ msgstr "a função `word' requer um argumento de índice positivo." #~ msgid " (ignored)" #~ msgstr " (ignorado)" #~ msgid "DIRECTORY" #~ msgstr "DIRETÓRIO" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Mudar para o DIRETÓRIO antes de fazer algo" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Suspende o processo para permiter o uso do depurador" #~ msgid "Environment variables override makefiles" #~ msgstr "" #~ "As variáveis de ambiente têm prioridade em relação aos arquivos make" #~ msgid "FILE" #~ msgstr "ARQUIVO" #~ msgid "Read FILE as a makefile" #~ msgstr "Lê o ARQUIVO como um arquivo make" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Pesquisa o DIRETÓRIO por arquivos make inclusos" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Não inicia múltiplas tarefas a menos que a carga esteja abaixo de N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "Não executa quaisquer comandos; apenas imprime-os" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Considera o ARQUIVO muito antigo e não o processa" #~ msgid "Don't echo commands" #~ msgstr "Não ecoa os comandos" #~ msgid "Turns off -k" #~ msgstr "Desativa -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Considera o ARQUIVO muito novo" #~ msgid "Entering" #~ msgstr "Entrando no" #~ msgid "Leaving" #~ msgstr "Saindo do" #~ msgid "# No variables." #~ msgstr "# Sem variáveis." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# média de %.1f variáveis por grupo, max %u em um grupo.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# média de %d.%d variáveis por grupo, max %u em um grupo.\n" make-dfsg-3.81.orig/po/quot.sed0000644000175000017500000000023110416553102016610 0ustar srivastasrivastas/"\([^"]*\)"/“\1â€/g s/`\([^`']*\)'/‘\1’/g s/ '\([^`']*\)' / ‘\1’ /g s/ '\([^`']*\)'$/ ‘\1’/g s/^'\([^`']*\)' /‘\1’ /g s/“â€/""/g make-dfsg-3.81.orig/po/remove-potcdate.sin0000644000175000017500000000066010416553102020742 0ustar srivastasrivasta# Sed script that remove the POT-Creation-Date line in the header entry # from a POT file. # # The distinction between the first and the following occurrences of the # pattern is achieved by looking at the hold space. /^"POT-Creation-Date: .*"$/{ x # Test if the hold space is empty. s/P/P/ ta # Yes it was empty. First occurrence. Remove the line. g d bb :a # The hold space was nonempty. Following occurrences. Do nothing. x :b } make-dfsg-3.81.orig/po/ru.gmo0000644000175000017500000006444610416553102016277 0ustar srivastasrivastaÞ•)d ¬àáþ&>N!W-y §-Èö' 4 K"Y |†"£ ÆÓ(â 2M` r|‹”¥ ®¹È.à1AZrŒ(ªÓ&è*&:+a+¹#Î#ò)-@n‡$ž9Ãý3P.j™µÐ=à" A W +s Ÿ ¹ ,Ó !%!,D!-q! Ÿ!&À!ç!"'"/G"1w" ©"µ"#Ì"#ð"6#K#g#y##4«#>à# $*)$T$l$ t$"€$'£$Ë$Ú$é$û$ % %!% 9%%F%l%$Œ%=±%:ï% *&0K&|& ›&+¥&!Ñ& ó&' '('1'E'['$q''–'¾'#Þ'("(@(,Y(†()¤(Î(!ç(& )0)P) W)d)m)%)§) »)Å)#Ì)0ð)'!*3I*+}*©*-Å*'ó*+5+<8+!u+—+ µ+*À+ë+', 0,6:, q,-,-­,1Û, -%-39-m-r-ˆ-(ž-)Ç-/ñ-6!.X.p.Š.1£.-Õ.'/#+/ O/]/f/n//œ/¤/µ/É/&Þ/60)<0(f0 0*š0Å0#Û0&ÿ0&1F1d1u11¨1!½1ß1õ1! 2-2C2_2n2†2š2(¯2 Ø21â2333H3|33˜3 Ì3%Ù3ÿ344 74E4!`4‚4 –4¢4·4Ç46Ú4.58@5y55¨5"¼53ß506D6a6'69§6á6&ê67!7>7R7i7'‰7±7Ê7-Í71û72-8`8€88,ª82×8* 9596U9,Œ9"¹93Ü9):"::1]:&:¶:Å:0ß:;0;=I;9‡;1Á;.ó;H"<,k<"˜<0»<ì<dü<a>'€>-¨> Ö>ã>(ì>-?"C?7f?ž?.µ?ä?ú?0 @ :@D@"d@‡@–@3¬@à@÷@A+ADA aAnA}A†AšA®A°A(ÃA>ìAJ+B!vB˜B¯BÅB%ÞBC$C(>C2gC+šC+ÆC!òC*D)?D&iD'D¸D%ÎD(ôD<E"ZE6}E&´E:ÛE1F#HFlFSF%ÕFûF!G@4GuG’G#«GÏGìG# H$0HUH tH•H³H$ÐH8õH;.I jIxI&I"·I@ÚIJ8JKJ#`J6„JV»J K.KNKlKuK0‡K5¸KîKLL'L DLQL%mL“L+«L$×L"üLNM8nM0§M,ØMN %N,3N%`N †N ”NµNÆNÖNöN O#/O&SO-zO5¨OÞOøOPC4P!xP)šP"ÄP"çP. Q)9QcQ|Q Q›Q$³QØQ êQ õQ.R+0R!\R1~R@°RñR- S.8S"gSŠS<ŽS&ËS)òS T$&T'KT(sTœT=¤T âT'ðT(U*AUlU‰UF UçUüUV<*V:gV=¢VAàV "W%CW%iW1W1ÁW.óW*"XMX\XeXmX'XµX½XÎXêX&YA-Y+oY4›Y ÐY>ÛYZ-:Z6hZ-ŸZ$ÍZòZ[([ D[&e[#Œ[#°[,Ô[\'\ C\Q\o\‹\6 \×\7æ\K]Kj](¶]Dß]$^-B^p^ ƒ^!^²^Í^0é^_0_ C_ Q___Cp_4´_6é_ `7`!O`%q`<—`3Ô`!a'*a&RaAya »a)Åaïa!b#b:b!Pb;rb®bÆb)Êb-ôb-"c0Pcc!˜c(ºc/ãc4dHdAfdB¨d6ëdY"e?|e2¼e8ïe.(fWfjf0‚f"³fÖfDófT8gAg9Ïgf h4ph0¥h;Öhi# —cœ~¾k(;ÙýN"¬ªÍÔnlG`ìW6ŒøöÀ_®*QL'…”ÐÌt,õÏ×ÅmÑuˆáfŠ j•iè€FåDÞh$EÝ¥-b&ÃTæƒ[X{3¢ôp<ñØH¡©™š8˜ã7Ò½ŸÖ"r³òSBž– ßÿ Ž éà‹:„ùv9RV#O})Ua)x0£Z§ÉwÇ›yþº YÁâÊ|²¹2P¤Æ+s!^&î‡(µ·Ú  ‰ä  zK»°1Ó’‚dë\Jü  %Ûq]¼¸ð´­ÎÄ$M%“goeúÜ/‘5¦†¨¶ê¿Ëíç.«>ûÈ!I÷±?4ïÕC=óA'¯@ # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.79.1 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-01-07 19:34GMT+06 Last-Translator: Denis Perchine Language-Team: Russian MIME-Version: 1.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 8bit X-Generator: KBabel 0.9.5 # %u ÐÕÔÅÊ ÐÏÉÓËÁ ÐÏ `vpath' # îÅÑ×ÎÙÈ ÐÒÁ×ÉÌ: %u, ÔÅÒÍÉÎÁÌØÎÙÈ: %u # %u ÚÎÁÞÅÎÉÊ ÐÅÒÅÍÅÎÎÙÈ ÏÓÏÂÅÎÎÙÈ ÄÌÑ ÍÁÓËÉ # ëÁÔÁÌÏÇÉ # æÁÊÌÙ # ðÅÞÁÔØ ÂÁÚÙ ÄÁÎÎÙÈ Make ÚÁ×ÅÒÛÅÎÁ %s # ïÂÝÉÊ (ÐÅÒÅÍÅÎÎÁÑ `VPATH') ÐÕÔØ ÐÏÉÓËÁ: # # âÁÚÁ ÄÁÎÎÙÈ Make, ÎÁÐÅÞÁÔÁÎÁ %s # îÅ ÏÐÒÅÄÅÌÅÎ ÏÂÝÉÊ (ÐÅÒÅÍÅÎÎÁÑ `VPATH') ÐÕÔØ ÐÏÉÓËÁ. # îÅÑ×ÎÙÈ ÐÒÁ×ÉÌ ÎÅÔ. # îÅÔ ÚÎÁÞÅÎÉÊ ÐÅÒÅÍÅÎÎÙÈ ÏÓÏÂÅÎÎÙÈ ÄÌÑ ÍÁÓËÉ # ðÕÔÉ ÐÏÉÓËÁ VPATH # ðÅÒÅÍÅÎÎÙÅ ðÒÉ ÎÅÕÓÐÅÛÎÏÍ ÚÁÐÕÓËÅ ÓÏÓÞÉÔÁÎÏ %d ÁÒÇÕÍÅÎÔÏ× äÁÔÁ %s éÇÎÏÒÉÒÕÅÔÓÑ VPATH-ÉÍÑ `%s'. uid = %d, gid = %d, mode = 0%o. (×ÓÔÒÏÅÎÎÙÅ): (ÓÄÅÌÁÎ ÄÁÍÐ ÐÁÍÑÔÉ)(ÎÅ ÉÍÅÌÉ ÌÉ ×Ù × ×ÉÄÕ TAB ×ÍÅÓÔÏ ×ÏÓØÍÉ ÐÒÏÂÅÌÏ×?) (ÉÇÎÏÒÉÒÏ×ÁÔØ ÏÛÉÂËÉ) (ÉÚ `%s', ÓÔÒÏËÁ %lu): (ÉÍÑ ÍÏÖÅÔ ÂÙÔØ ÕÓÅÞÅÎÏ) (ÎÅÔ ÃÅÌÉ ÐÏ ÕÍÏÌÞÁÎÉÀ) (ÎÅ ÒÁÓËÒÙ×ÁÔØ ÓÉÍ×ÏÌ `~') (ÕÄÁÌÅÎÎÙÊ) (ÐÕÔØ ÐÏÉÓËÁ) ÆÁÊÌÏ×, ÎÅÄÏÓÔÉÖÉÍÙÈ ÃÅÌÅÊ ÎÁ ÔÅËÕÝÉÊ ÍÏÍÅÎÔ..# óÏÂÉÒÁÅÔ ÔÁËÖÅ:# ãÅÌØ, ×ÙÚÙ×ÁÅÍÁÑ ÉÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ.# ÷ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ×ÙÐÏÌÎÑÀÔÓÑ ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ (üôï ïûéâëá).# ÷ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ×ÙÐÏÌÎÑÀÔÓÑ ËÏÍÁÎÄÙ ÎÅËÏÔÏÒÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ (üôï ïûéâëá).# ðÏÐÙÔËÁ ÏÂÎÏ×ÌÅÎÉÑ ÂÅÚÕÓÐÅÛÎÁ.# æÁÊÌ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ.# æÁÊÌ ÂÙÌ ÏÂÎÏ×ÌÅÎ.# æÁÊÌ ÎÅ ÂÙÌ ÏÂÎÏ×ÌÅÎ.# æÁÊÌ -- ÐÒÏÍÅÖÕÔÏÞÎÁÑ ÚÁ×ÉÓÉÍÏÓÔØ.# æÁÊÌ ÏÞÅÎØ ÓÔÁÒÙÊ.# ðÒÏÉÚ×ÏÄÉÌÓÑ ÐÏÉÓË ÎÅÑ×ÎÙÈ ÐÒÁ×ÉÌ# ðÏÉÓË ÎÅÑ×ÎÙÈ ÐÒÁ×ÉÌ ÎÅ ÐÒÏÉÚ×ÏÄÉÌÓÑ.# ïÓÎÏ×Á ÎÅÑ×ÎÏÇÏ ÉÌÉ ÓÔÁÔÉÞÅÓËÏÇÏ ÏÂÒÁÚÃÁ: `%s' # îÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ ÞÌÅÎÁ `command_state'!# îÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ ÞÌÅÎÁ `update_status'!# ÷ÒÅÍÑ ÐÏÓÌÅÄÎÅÇÏ ÉÚÍÅÎÅÎÉÑ %s # ÷ÒÅÍÑ ÉÚÍÅÎÅÎÉÑ ÎÉ ÒÁÚÕ ÎÅ ÐÒÏ×ÅÒÑÌÏÓØ.# äÏÌÖÎÏ ÂÙÔØ ÏÂÎÏ×ÌÅÎÏ (ÚÁÄÁÎ ËÌÀÞ -q).# ðÓÅ×ÄÏÃÅÌØ (ÚÁ×ÉÓÉÍÏÓÔØ ÏÔ .PHONY).# ãÅÎÎÙÊ ÆÁÊÌ (ÚÁ×ÉÓÉÍÏÓÔØ .PRECIOUS).# õÓÐÅÛÎÏ ÏÂÎÏ×ÌÅÎÏ.# ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÓÌÅÄÕÅÔ ×ÙÐÏÌÎÉÔØ# %s (ÕÓÔÒÏÊÓÔ×Ï %d, inode [%d,%d,%d]): # %s (ÕÓÔÒÏÊÓÔ×Ï %d, inode [%d,%d,%d]): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ. # %s (ÕÓÔÒÏÊÓÔ×Ï %ld, inode %ld): # %s (ÕÓÔÒÏÊÓÔ×Ï %ld, inode %ld): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ. # %s (ËÌÀÞ %s, ×ÒÅÍÑ ÍÏÄÉÆÉËÁÃÉÉ %d): # %s (ËÌÀÞ %s, ×ÒÅÍÑ ÍÏÄÉÆÉËÁÃÉÉ %d): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ. # %s: ÎÅ×ÏÚÍÏÖÎÏ ÐÏÌÕÞÉÔØ Ó×ÅÄÅÎÉÑ ×ÙÚÏ×ÏÍ stat. # îÅ ÏÐÒÅÄÅÌÅÎ ÐÕÔØ ÐÏÉÓËÁ `vpath'.# îÅ Ñ×ÌÑÅÔÓÑ ÃÅÌØÀ:%s (ÓÔÒÏËÁ %d) ðÌÏÈÏÊ ËÏÎÔÅËÓÔ ËÏÍÁÎÄÎÏÇÏ ÐÒÏÃÅÓÓÏÒÁ (!unixy && !batch_mode_shell) %s ÐÒÉÏÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÎÁ 30 ÓÅËÕÎÄ...%s: ëÏÍÁÎÄÁ ÎÅ ÎÁÊÄÅÎÁ%s: ëÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ ÎÅ ÎÁÊÄÅÎ%s: ÷ÒÅÍÅÎÎÏÊ ÛÔÁÍÐ ×ÙÈÏÄÉÔ ÚÁ ÐÒÅÄÅÌÙ ÄÉÁÐÁÚÏÎÁ; ÐÏÄÓÔÁ×ÌÑÅÍ %s%s: ÎÅÄÏÐÕÓÔÉÍÙÊ ËÌÀÞ -- %c %s: ÎÅ×ÅÒÎÙÊ ËÌÀÞ -- %c %s: ËÌÀÞ `%c%s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ %s: ËÌÀÞ `%s' ÎÅ ÏÄÎÏÚÎÁÞÅÎ %s: ËÌÀÞ `%s' ÔÒÅÂÕÅÔ ÁÒÇÕÍÅÎÔ %s: ËÌÀÞ `--%s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ %s: ËÌÀÞ `-W %s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ %s: ËÌÀÞ `-W %s' ÎÅÏÄÎÏÚÎÁÞÅÎ %s: ËÌÀÞ ÔÒÅÂÕÅÔ ÁÒÇÕÍÅÎÔ -- %c %s: ÎÅÉÚ×ÅÓÔ×ÎÙÊ ËÌÀÞ `%c%s' %s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `--%s' %sîÅÔ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÂÏÒËÉ ÃÅÌÉ `%s'%s%sîÅÔ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÂÏÒËÉ ÃÅÌÉ `%s', ÔÒÅÂÕÅÍÏÊ ÄÌÑ `%s'%s*** üÌÅÍÅÎÔ ÁÒÈÉ×Á `%s', ËÁÖÅÔÓÑ, ÎÅÄÅÊÓÔ×ÉÔÅÌÅÎ; ÎÅ ÕÄÁÌÅÎ*** ïÓÔÁÎÏ×. *** õÄÁÌÑÅÔÓÑ ÆÁÊÌ `%s'*** õÄÁÌÅÎÉÅ ÐÒÏÍÅÖÕÔÏÞÎÏÇÏ ÆÁÊÌÁ `%s'*** ïÖÉÄÁÎÉÅ ÚÁ×ÅÒÛÅÎÉÑ ÚÁÄÁÎÉÊ...*** [%s] üÌÅÍÅÎÔ ÁÒÈÉ×Á `%s', ËÁÖÅÔÓÑ, ÎÅÄÅÊÓÔ×ÉÔÅÌÅÎ; ÎÅ ÕÄÁÌÅÎ*** [%s] õÄÁÌÑÅÔÓÑ ÆÁÊÌ `%s'*** [%s] ïÛÉÂËÁ %d*** [%s] ïÛÉÂËÁ 0x%x*** [%s] ïÛÉÂËÁ 0x%x (ÉÇÎÏÒÉÒÏ×ÁÎÁ)-ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ, ÐÏÓÌÅ CTRL-Y ÏÓÔÁÎÕÔÓÑ ÓÕÂ-ÐÒÏÃÅÓÓÙ. -ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ, ×ÏÚÍÏÖÎÏ ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÐÏ×ÔÏÒÎÏ ÒÁÚÒÅÛÉÔØ ÏÂÒÁÂÏÔËÕ CTRL-Y ÉÚ DCL. . ïÓÔÁÎÏ×. üÌÅÍÅÎÔ .LIBPATTERNS `%s' ÎÅ Ñ×ÌÑÅÔÓÑ ÏÂÒÁÚÃÏÍ; ÉÓÐÏÌØÚÕÅÔÓÑ VPATH-ÉÍÑ `%s'ðÒÅÒ×ÁÎÏóÉÇÎÁÌ ÐÏ ÔÁÊÍÅÒÕéÚÂÅÖÁÎÉÅ ÒÅËÕÒÓÉ×ÎÏÇÏ ×ÙÚÏ×Á ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ. ïûéâëá: ÎÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ num_pattern_rules! %u != %u÷óôòïåîîùê CD %s ÷óôòïåîîùê RM %s ÷óôòïåîîùê [%s][%s] îÅÐÒÁ×ÉÌØÎÙÊ ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ×ïÂÒÙ× ËÁÎÁÌÁîÅ×ÅÒÎÏÅ ÏÂÒÁÝÅÎÉÅ Ë ÐÁÍÑÔÉðÒÅ×ÙÛÅÎ ÐÒÅÄÅÌ ÐÒÏÃÅÓÓÏÒÎÏÇÏ ×ÒÅÍÅÎÉðÏÔÏÍÏË ÚÁ×ÅÒÛÉÌ ÒÁÂÏÔÕãÉËÌÉÞÅÓËÁÑ ÚÁ×ÉÓÉÍÏÓÔØ %s <- %s ÐÒÏÐÕÝÅÎÁ.ðÏÄÞÉÝÁÀ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s ïÞÉÝÁÀ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s ëÏÍÁÎÄÙ ÄÌÑ `%s' ÉÇÎÏÒÉÒÕÀÔÓÑ, ×ÍÅÓÔÏ ÎÉÈ ÂÕÄÕÔ ÉÓÐÏÌØÚÏ×ÁÎÙ ËÏÍÁÎÄÙ ÄÌÑ `%s'.ëÏÍÁÎÄÙ ÄÌÑ ÆÁÊÌÁ `%s' ÂÙÌÉ ÎÁÊÄÅÎÙ ÉÚ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ,ëÏÍÁÎÄÙ ÄÌÑ `%s' ×ÙÐÏÌÎÑÀÔÓÑ × ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ. ëÏÍÁÎÄÙ ÄÌÑ ÆÁÊÌÁ `%s' ÂÙÌÉ ÚÁÄÁÎÙ × %s:%lu,ïÂÒÁÂÏÔËÁ ÃÅÌÅ×ÏÇÏ ÆÁÊÌÁ `%s'. ÷ÏÚÏÂÎÏ×ÌÅÎÉÅîÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÊÔÉ × ÐÅÒ×ÏÎÁÞÁÌØÎÙÊ ËÁÔÁÌÏÇ.óÏÚÄÁÅÔÓÑ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s ôÅËÕÝÅÅ ×ÒÅÍÑîÅ ÜËÓÐÏÒÔÉÒÕÅÍÙÅ ÎÁÓÔÒÏÊËÉ: %s óÉÇÎÁÌ ÏÐÁÓÎÏÓÔÉïÛÉÂËÁ ÜÍÕÌÑÃÉÉïÛÉÂËÁ ÐÏÒÏÖÄÅÎÉÑ ÐÒÏÃÅÓÓÁ, %d ïÛÉÂËÁ, ÐÕÓÔÁÑ ËÏÍÁÎÄÁ ÷ÍÅÓÔÏ ÚÁÄÁÎÎÏÇÏ ×ÙÐÏÌÎÑÅÔÓÑ %s éÚÌÉÛÎÉÊ ÔÅËÓÔ ÐÏÓÌÅ ÄÉÒÅËÔÉ×Ù `%s'éÚÌÉÛÎÉÊ ÔÅËÓÔ ÐÏÓÌÅ ÄÉÒÅËÔÉ×Ù `endef'ðÏÐÙÔËÁ ÐÅÒÅÓÏÂÒÁÔØ make-ÆÁÊÌ `%s' ÎÅÕÓÐÅÛÎÁ.ðÏÐÙÔËÁ ÐÅÒÅÓÏÚÄÁÎÉÑ ÃÅÌÅ×ÏÇÏ ÆÁÊÌÁ `%s' ÂÅÚÕÓÐÅÛÎÁ. æÁÊÌ `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔ. æÁÊÌ `%s' ÕÖÅ ÂÙÌ ÏÂÒÁÂÏÔÁÎ. ðÒÅ×ÙÛÅÎ ÐÒÅÄÅÌ ÒÁÚÍÅÒÁ ÆÁÊÌÁïÂÎÏ×ÌÅÎÉÅ ÃÅÌÅÊ, ÏÔ ËÏÔÏÒÙÈ ÚÁ×ÉÓÉÔ ÃÅÌÅ×ÏÊ ÆÁÊÌ `%s', ÚÁ×ÅÒÛÅÎÏ. ïÂÎÏ×ÌÅÎÉÅ ÆÁÊÌÁ `%s' ÚÁ×ÅÒÛÅÎÏ. óÏÐÒÏÃÅÓÓÏÒ Ó ÐÌÁ×ÁÀÝÅÊ ÔÏÞËÏÊ ÎÅÄÏÓÔÕÐÅÎïÛÉÂËÁ ÏÐÅÒÁÃÉÉ Ó ÐÌÁ×ÁÀÝÅÊ ÔÏÞËÏÊîÁÊÄÅÎÏ ÎÅÑ×ÎÏÅ ÐÒÁ×ÉÌÏ ÄÌÑ `%s'. ïÂÎÁÒÕÖÅÎÁ ÚÁ×ÉÓÉÍÏÓÔØ `%s' × ×ÉÄÅ VPATH `%s' á×ÁÒÉÊÎÙÊ ÏÓÔÁÎÏ× ÎÁ ÃÅÌÅ×ÏÍ ÆÁÊÌÅ `%s'. ïÂÒÙ× ÔÅÒÍÉÎÁÌØÎÏÊ ÌÉÎÉÉ÷ÏÚÍÏÖÅÎ ××ÏÄ/×Ù×ÏÄïÛÉÂËÁ IOTîÅÄÏÐÕÓÔÉÍÁÑ ÉÎÓÔÒÕËÃÉÑ÷ËÌÀÞÁÅÍÙÊ make-ÆÁÊÌ `%s' ÎÅ ÎÁÊÄÅÎ.úÁÐÒÏÓ ÉÎÆÏÒÍÁÃÉÉðÒÅÒÙ×ÁÎÉÅõÎÉÞÔÏÖÅÎÉÅîÅÚÁ×ÅÒÛÅÎÎÙÊ ÐÏÔÏÍÏË 0x%08lx (%s) PID %ld %s ðÏÉÓË ÐÒÁ×ÉÌÁ Ó ÐÒÏÍÅÖÕÔÏÞÎÙÍ ÆÁÊÌÏÍ `%s'. ðÏÉÓË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ `%s'. ðÏÉÓË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ ÜÌÅÍÅÎÔÁ ÁÒÈÉ×Á `%s'. Make-ÆÁÊÌ `%s', ×ÏÚÍÏÖÎÏ, ÚÁÃÉËÌÅÎ, ÏÎ ÎÅ ÂÕÄÅÔ ÐÅÒÅÓÏÂÉÒÁÔØÓÑ. Make-ÆÁÊÌ `%s' ÎÅ ÎÁÊÄÅÎMakefile ÉÚ ÓÔÁÎÄÁÒÔÎÏÇÏ ××ÏÄÁ ÕËÁÚÁÎ Ä×ÁÖÄÙ.üÌÅÍÅÎÔ `%s'%s: %ld ÂÁÊÔ ÐÏ ÁÄÒÅÓÕ %ld (%ld). îÅÏÂÈÏÄÉÍÏ ÐÅÒÅÓÏÂÒÁÔØ ÃÅÌØ `%s'. îÅÔëÏÍÁÎÄÙ ÄÌÑ `%s' ÎÅ ÚÁÄÁÎÙ, É ÚÁ×ÉÓÉÍÏÓÔÉ ÎÅ ÂÙÌÉ ÉÚÍÅÎÅÎÙ. îÅ ÎÁÊÄÅÎÏ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ `%s'. îÅÔ ÎÅÏÂÈÏÄÉÍÏÓÔÉ ÐÅÒÅÓÏÂÉÒÁÔØ ÃÅÌØ `%s'.îÅÔ ÃÅÌÅÊîÅ ÚÁÄÁÎÙ ÃÅÌÉ É ÎÅ ÎÁÊÄÅÎ make-ÆÁÊÌãÅÌØ `%s' ÎÅ ÔÒÅÂÕÅÔ ×ÙÐÏÌÎÅÎÉÑ ËÏÍÁÎÄ.ðÏÌÕÞÅÎ ÔÏËÅÎ ÄÌÑ ÐÏÔÏÍËÁ 0x%08lx (%s). ëÌÀÞÉ: ðÁÒÁÌÌÅÌØÎÙÅ ÚÁÄÁÞÉ (-j) ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÎÁ ÜÔÏÊ ÐÌÁÔÆÏÒÍÅ.ïÔËÁÚ ÐÉÔÁÎÉÑúÁ×ÉÓÉÍÏÓÔØ `%s' ÎÏ×ÅÅ, ÞÅÍ ÃÅÌØ `%s'. úÁ×ÉÓÉÍÏÓÔØ `%s' ÓÔÁÒÅÅ, ÞÅÍ ÃÅÌØ `%s'. úÁ×ÉÓÉÍÏÓÔØ `%s' ÃÅÌÉ `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔ. ÷ÒÅÍÑ ÐÒÏÆÉÌÉÒÏ×ÁÎÉÑ ÉÓÔÅËÌÏïÂÒÅÚÁÅÔÓÑ ÆÁÊÌ `%s'. ðÏÍÅÝÅÎÉÅ ÐÏÔÏÍËÁ 0x%08lx (%s) PID %ld%s × ÃÅÐÏÞËÕ ÁËÔÉ×ÎÙÈ ÐÏÔÏÍËÏ×. á×ÁÒÉÊÎÏÅ ÐÒÅÒÙ×ÁÎÉÅþÔÅÎÉÅ make-ÆÁÊÌÁ `%s'þÔÅÎÉÅ make-ÆÁÊÌÏ×... ðÏÄÂÉÒÁÀ ÎÅÕÄÁÞÎÏ ÚÁ×ÅÒÛÉ×ÛÅÇÏÓÑ ÐÏÔÏÍËÁ 0x%08lx PID %ld %s ðÏÄÂÉÒÁÀ ÕÄÁÞÎÏ ÚÁ×ÅÒÛÉ×ÛÅÇÏÓÑ ÐÏÔÏÍËÁ 0x%08lx PID %ld %s ðÒÅÄÙÄÕÝÁÑ ÐÏÐÙÔËÁ ÏÂÎÏ×ÉÔØ ÆÁÊÌ `%s' ÚÁ×ÅÒÛÉÌÁÓØ ÎÅÕÓÐÅÛÎÏ. òÅËÕÒÓÉ×ÎÁÑ ÐÅÒÅÍÅÎÎÁÑ `%s' ÓÓÙÌÁÅÔÓÑ ÓÁÍÁ ÎÁ ÓÅÂÑ (× ÒÅÚÕÌØÔÁÔÅ)ðÏÔÏË ÏÛÉÂÏË ÐÅÒÅÎÁÐÒÁ×ÌÅÎ × %s óÔÁÎÄÁÒÔÎÙÊ ××ÏÄ ÐÅÒÅÎÁÐÒÁ×ÌÅÎ ÉÚ %s óÔÁÎÄÁÒÔÎÙÊ ×Ù×ÏÄ ÐÅÒÅÎÁÐÒÁ×ÌÅÎ × %s ïÔ×ÅÒÖÅÎÉÅ ÎÅ×ÏÚÍÏÖÎÏÊ ÎÅÑ×ÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'. ïÔ×ÅÒÖÅÎÉÅ ÎÅ×ÏÚÍÏÖÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ ÐÒÁ×ÉÌÁ `%s'. ïÓ×ÏÂÏÖÄÁÅÔÓÑ ÔÏËÅÎ ÄÌÑ ÐÏÔÏÍËÁ 0x%08lx (%s). ÷ÏÚ×ÒÁÝÁÅÔÓÑ ÒÅÖÉÍ ÏÄÉÎÏÞÎÏÊ ÚÁÄÁÞÉ (-j1).òÅÓÕÒÓ ÐÏÔÅÒÑÎSIGPHONESIGWINDîÁÒÕÛÅÎÉÅ ÐÒÁ× ÄÏÓÔÕÐÁ Ë ÐÁÍÑÔÉæÁÊÌ `%s' ÏÂÎÏ×ÌÑÅÔÓÑ × ÄÁÎÎÙÊ ÍÏÍÅÎÔ. ïÓÔÁÎÏ×ïÓÔÁÎÏ× (ÓÉÇÎÁÌ)ïÓÔÁÎÏ× (××ÏÄ Ó ÔÅÒÍÉÎÁÌÁ) ïÓÔÁÎÏ× (×Ù×ÏÄ ÎÁ ÔÅÒÍÉÎÁÌ)ãÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÕÓÐÅÛÎÏ ÐÅÒÅÓÏÚÄÁÎ. ãÅÌØ `%s' ÏÂßÑ×ÌÅÎÁ Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉ É ÎÅ ÉÍÅÅÔ ÚÁ×ÉÓÉÍÏÓÔÅÊ. ãÅÌØ `%s' ÎÅ ÂÙÌÁ ÐÅÒÅÓÏÂÒÁÎÁ ÉÚ-ÚÁ ÏÛÉÂÏË.ãÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÔÒÅÂÕÅÔ ÐÅÒÅÓÏÚÄÁÎÉÑ Ó ËÌÀÞÏÍ -q. úÁ×ÅÒÛÅÎÉÅãÅÌÉ, ÏÔ ËÏÔÏÒÙÈ ÚÁ×ÉÓÉÔ `%s', × ÎÁÓÔÏÑÝÉÊ ÍÏÍÅÎÔ ÓÏÂÉÒÁÀÔÓÑ. ðÒÅÒÙ×ÁÎÉÅ ÎÁ ËÏÎÔÒÏÌØÎÏÊ ÔÏÞËÅðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÎÅÑ×ÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'. ðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÐÒÁ×ÉÌÁ Ó ÏÂÒÁÚÃÏÍ, ÏÓÎÏ×Á `%.*s'. ðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÐÒÁ×ÉÌÁ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'. îÅÉÚ×ÅÓÔÎÁÑ ×ÓÔÒÏÅÎÎÁÑ ËÏÍÁÎÄÁ '%s' îÅÉÚ×ÅÓÔÎÁÑ ÏÛÉÂËÁ %dïÂÎÏ×ÌÅÎÉÅ ÃÅÌÅÊ ÒÅÚÕÌØÔÁÔÁ... ïÂÎÏ×ÌÅÎÉÅ make-ÆÁÊÌÏ×.... õÓÌÏ×ÉÑ ÜËÓÔÒÅÎÎÏÇÏ ××ÏÄÁ/×Ù×ÏÄÁéÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ëìàþ]... [ãåìø]... ïÐÒÅÄÅÌÑÅÍÙÊ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÓÉÇÎÁÌ 1ïÐÒÅÄÅÌÑÅÍÙÊ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÓÉÇÎÁÌ 2éÓÐÏÌØÚÏ×ÁÎÉÅ ËÏÍÁÎÄ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ `%s'. ÷ÉÒÔÕÁÌØÎÏÅ ×ÒÅÍÑ ÉÓÔÅËÌÏðÒÅÄÕÐÒÅÖÄÅÎÉÅ: ðÕÓÔÏÅ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ ïËÎÏ ÉÚÍÅÎÅÎÏ[%s] ïÛÉÂËÁ %d (ÉÇÎÏÒÉÒÏ×ÁÎÁ)`%s' ÎÅ ÔÒÅÂÕÅÔ ÏÂÎÏ×ÌÅÎÉÑ.äÉÒÅËÔÉ×Á `override'ÐÏÐÙÔËÁ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÎÅÐÏÄÄÅÒÖÉ×ÁÅÍÏÇÏ ÓÒÅÄÓÔ×Á: `%s'Á×ÔÏÍÁÔÉÞÅÓËÁÑÎÏ `%s' É `%s' ÔÅÐÅÒØ ÓÞÉÔÁÀÔÓÑ ÏÄÎÉÍ É ÔÅÍ ÖÅ ÆÁÊÌÏÍ. ÎÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ `%s' Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉ × `%s' Ó ÏÄÎÉÍ Ä×ÏÅÔÏÞÉÅÍÎÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ `%s' Ó ÏÄÎÉÍ Ä×ÏÅÔÏÞÉÅÍ × `%s' Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉÎÅ×ÏÚÍÏÖÎÏ ÕÓÔÁÎÏ×ÉÔØ ÐÒÅÄÅÌÙ ÚÁÇÒÕÚËÉ: ÜÔÁ ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÎÅ ÐÏÚ×ÏÌÑÅÔ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÐÒÅÄÅÌÙ ÚÁÇÒÕÚËÉÏÐÒÅÄÅÌÅÎÁ × ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÅËÏÍÁÎÄÙ ×ÓÔÒÅÞÅÎÙ ÄÏ ÐÅÒ×ÏÇÏ ÏÐÒÅÄÅÌÅÎÉÑ ÃÅÌÉÓÏÚÄÁÀ ËÁÎÁÌ ÚÁÄÁÞÐÏ ÕÍÏÌÞÁÎÉÀsleep(30) ÚÁ×ÅÒÛÅÎ. ðÒÏÄÏÌÖÁÅÍ. ÓÏÚÄÁÀ ËÏÐÉÀ ÓÅÒ×ÅÒÁ ÚÁÄÁÞÐÕÓÔÁÑ ÄÉÒÅËÔÉ×Á `override'ÐÕÓÔÁÑ ÓÔÒÏËÁ ÎÅÄÏÐÕÓÔÉÍÁ × ËÁÞÅÓÔ×Å ÉÍÅÎÉ ÆÁÊÌÁÐÕÓÔÏÅ ÉÍÑ ÐÅÒÅÍÅÎÎÏÊÏÐÒÅÄÅÌÅÎÁ × ÓÒÅÄÅÚÁÄÁÎ ËÌÀÞ -eÉÚÌÉÛÎÑÑ `%s'ÉÚÌÉÛÎÉÊ `endef'find_and_set_shell: ÐÏÉÓË × ÐÕÔÑÈ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ default_shell = %s find_and_set_shell ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ default_shell = %s ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `word' ÄÏÌÖÅÎ ÂÙÔØ ÂÏÌØÛÅ ÎÕÌÑfopen (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)fwrite (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)ÎÁÞÁÌØÎÁÑ ÎÁÓÔÒÏÊËÁ ÓÅÒ×ÅÒÁ ÚÁÄÁÞ×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: `%s' command_state×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: ÎÅÐÒÁ×ÉÌØÎÁÑ ÓÔÒÏËÁ --jobserver-fds: `%s'×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: ÎÅÓËÏÌØËÏ ËÌÀÞÅÊ --jobserver-fdsÎÅÐÒÁ×ÉÌØÎÁÑ ÄÉÒÅËÔÉ×Á `override'ÎÅ×ÅÒÎÙÊ ÓÉÎÔÁËÓÉÓ × ÕÓÌÏ×ÎÏÍ ×ÙÒÁÖÅÎÉÉlbr$init_control ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ %dlbr$set_module ÎÅ ÓÍÏÇÌÁ ÉÚ×ÌÅÞØ ÉÎÆÏÒÍÁÃÉÀ Ï ÍÏÄÕÌÅ, ÓÔÁÔÕÓ = %dMake-ÆÁÊÌÐÒÏÐÕÝÅÎÁ `endif', ÎÅÚÁ×ÅÒÛÅÎÎÁÑ `define'ÐÒÏÐÕÝÅÎÁ `endif'ÐÅÒÅÄ ËÏÍÁÎÄÁÍÉ ÐÒÏÐÕÝÅÎÏ ÐÒÁ×ÉÌÏÐÒÏÐÕÝÅÎ ÒÁÚÄÅÌÉÔÅÌØ%sÐÒÏÐÕÝÅÎ ÏÂÒÁÚÅà ÃÅÌÉÓÍÅÛÁÎÙ ÎÅÑ×ÎÙÅ É ÏÂÙÞÎÙÅ ÐÒÁ×ÉÌÁÓÍÅÛÁÎÙ ÎÅÑ×ÎÙÅ ÐÒÁ×ÉÌÁ É ÐÒÁ×ÉÌÁ ÓÏ ÓÔÁÔÉÞÅÓËÉÍÉ ÏÂÒÁÚÃÁÍÉÎÅÓËÏÌØËÏ ÏÂÒÁÚÃÏ× ÃÅÌÉÎÅÔÎÅÞÉÓÌÏ×ÏÊ ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `word'ÎÅÞÉÓÌÏ×ÏÊ ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `wordlist'ÎÅÞÉÓÌÏ×ÏÊ ×ÔÏÒÏÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `wordlist'× ÕÓÌÏ×ÎÏÍ ×ÙÒÁÖÅÎÉÉ ×ÏÚÍÏÖÎÁ ÔÏÌØËÏ ÏÄÎÁ `else'ÞÉÔÁÀ ÚÁÄÁÞÉ ÉÚ ÐÏÔÏËÁsys$search ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ %d ÃÅÌØ `%s' ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÏÂÒÁÚÃÕ ÃÅÌÅÊÃÅÌØ `%s' ÕËÁÚÁÎÁ ÎÅÓËÏÌØËÏ ÒÁÚ × ÏÄÎÏÍ ÐÒÁ×ÉÌÅÃÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÉÍÅÅÔ ×ÈÏÖÄÅÎÉÑ É Ó `:', É Ó `::' ÏÂÒÁÚÅà ÃÅÌÉ ÎÅ ÓÏÄÅÒÖÉÔ `%%'ËÌÀÞ `-%c' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÃÅÌÙÍ ÐÏÌÏÖÉÔÅÌØÎÙÍ ÁÒÇÕÍÅÎÔÏÍÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ ÞÌÅÎÁ ÁÒÈÉ×Á ÎÅ×ÏÚÍÏÖÎÏ × ÓÉÓÔÅÍÅ VMSÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: áÒÈÉ× `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: æÕÎËÃÉÑ ar_member_touch ×ÅÒÎÕÌÁ ÏÛÉÂÏÞÎÏÅ ÚÎÁÞÅÎÉÅ ÄÌÑ `%s'ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: üÌÅÍÅÎÔ `%s' ÎÅ ÓÏÄÅÒÖÉÔÓÑ × `%s'ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: îÅ×ÅÒÎÙÊ ÁÒÈÉ×: `%s'ïÛÉÂËÁ ÏÔËÒÙÔÉÑ ÂÉÂÌÉÏÔÅËÉ `%s' ÄÌÑ ÐÏÉÓËÁ ÜÌÅÍÅÎÔÁ `%s'ÎÅÉÚ×ÅÓÔÎÙÊ ÓÐÏÓÏ ÚÁÄÁÎÉÑ ÕÒÏ×ÎÑ ÏÔÌÁÄËÉ `%s'ÎÅÉÚ×ÅÓÔÎÙÊ ÓÉÇÎÁÌunlink (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)ÎÅÚÁ×ÅÒÛÅÎÎÙÊ ×ÙÚÏ× ÆÕÎËÃÉÉ `%s': ÐÒÏÐÕÝÅÎÏ `%c'ÎÅÚÁ×ÅÒÛÅÎÎÁÑ ÓÓÙÌËÁ ÎÁ ÐÅÒÅÍÅÎÎÕÀ×ÉÒÔÕÁÌØÎÁÑ ÐÁÍÑÔØ ÉÓÞÅÒÐÁÎÁÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: îÅÐÒÁ×ÉÌØÎÙÊ ÈÏÄ ÞÁÓÏ×. óÂÏÒËÁ ÍÏÖÅÔ ÂÙÔØ ÎÅÐÏÌÎÏÊ.ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: × ÓÕÂ-Makefile ÐÒÉÎÕÄÉÔÅÌØÎÏ ÚÁÄÁÎ -jN; ÒÅÖÉÍ ÓÅÒ×ÅÒÁ ÚÁÄÁÞ ÚÁÐÒÅÝÅÎÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ×ÓÔÒÅÞÅÎ ÓÉÍ×ÏÌ NUL; ÉÇÎÏÒÉÒÕÅÔÓÑ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÓÔÁÒÙÅ ËÏÍÁÎÄÙ ÄÌÑ ÃÅÌÉ `%s' ÉÇÎÏÒÉÒÕÀÔÓÑÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÓÅÒ×ÅÒ ÚÁÄÁÞ ÎÅÄÏÓÔÕÐÅÎ: ÉÓÐÏÌØÚÕÅÔÓÑ -j1. äÏÂÁרÔÅ `+' Ë ÐÒÁ×ÉÌÕ × ÒÏÄÉÔÅÌØÓËÏÍ make.ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÐÅÒÅÏÐÒÅÄÅÌÅÎÉÅ ËÏÍÁÎÄ ÄÌÑ ÃÅÌÉ `%s'ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÎÅÏÐÒÅÄÅÌÅÎÎÁÑ ÐÅÒÅÍÅÎÎÁÑ `%.*s'windows32_openpipe(): process_init_fd() ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ ÐÉÛÕ × ÓÅÒ×ÅÒ ÚÁÄÁÞmake-dfsg-3.81.orig/po/ru.po0000644000175000017500000013774010416553102016131 0ustar srivastasrivasta# ìÏËÁÌÉÚÁÃÉÑ make # Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. # Oleg S. Tihonov , 1998 # Alexey Mahotkin 2001 # Denis Perchine , 2001, 2002 # msgid "" msgstr "" "Project-Id-Version: make 3.79.1\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: 2002-01-07 19:34GMT+06\n" "Last-Translator: Denis Perchine \n" "Language-Team: Russian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=KOI8-R\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: KBabel 0.9.5\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "ÐÏÐÙÔËÁ ÉÓÐÏÌØÚÏ×ÁÎÉÑ ÎÅÐÏÄÄÅÒÖÉ×ÁÅÍÏÇÏ ÓÒÅÄÓÔ×Á: `%s'" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ ÞÌÅÎÁ ÁÒÈÉ×Á ÎÅ×ÏÚÍÏÖÎÏ × ÓÉÓÔÅÍÅ VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: áÒÈÉ× `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔ" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: îÅ×ÅÒÎÙÊ ÁÒÈÉ×: `%s'" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: üÌÅÍÅÎÔ `%s' ÎÅ ÓÏÄÅÒÖÉÔÓÑ × `%s'" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "" "ÏÂÎÏ×ÌÅÎÉÅ ×ÒÅÍÅÎÉ ÉÚÍÅÎÅÎÉÑ: æÕÎËÃÉÑ ar_member_touch ×ÅÒÎÕÌÁ\n" "ÏÛÉÂÏÞÎÏÅ ÚÎÁÞÅÎÉÅ ÄÌÑ `%s'" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_module ÎÅ ÓÍÏÇÌÁ ÉÚ×ÌÅÞØ ÉÎÆÏÒÍÁÃÉÀ Ï ÍÏÄÕÌÅ, ÓÔÁÔÕÓ = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$init_control ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "ïÛÉÂËÁ ÏÔËÒÙÔÉÑ ÂÉÂÌÉÏÔÅËÉ `%s' ÄÌÑ ÐÏÉÓËÁ ÜÌÅÍÅÎÔÁ `%s'" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "üÌÅÍÅÎÔ `%s'%s: %ld ÂÁÊÔ ÐÏ ÁÄÒÅÓÕ %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (ÉÍÑ ÍÏÖÅÔ ÂÙÔØ ÕÓÅÞÅÎÏ)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " äÁÔÁ %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, mode = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** ïÓÔÁÎÏ×.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] üÌÅÍÅÎÔ ÁÒÈÉ×Á `%s', ËÁÖÅÔÓÑ, ÎÅÄÅÊÓÔ×ÉÔÅÌÅÎ; ÎÅ ÕÄÁÌÅÎ" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** üÌÅÍÅÎÔ ÁÒÈÉ×Á `%s', ËÁÖÅÔÓÑ, ÎÅÄÅÊÓÔ×ÉÔÅÌÅÎ; ÎÅ ÕÄÁÌÅÎ" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] õÄÁÌÑÅÔÓÑ ÆÁÊÌ `%s'" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** õÄÁÌÑÅÔÓÑ ÆÁÊÌ `%s'" #: commands.c:599 msgid "# commands to execute" msgstr "# ËÏÍÁÎÄÙ, ËÏÔÏÒÙÅ ÓÌÅÄÕÅÔ ×ÙÐÏÌÎÉÔØ" #: commands.c:602 msgid " (built-in):" msgstr " (×ÓÔÒÏÅÎÎÙÅ):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (ÉÚ `%s', ÓÔÒÏËÁ %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# ëÁÔÁÌÏÇÉ\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: ÎÅ×ÏÚÍÏÖÎÏ ÐÏÌÕÞÉÔØ Ó×ÅÄÅÎÉÑ ×ÙÚÏ×ÏÍ stat.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (ËÌÀÞ %s, ×ÒÅÍÑ ÍÏÄÉÆÉËÁÃÉÉ %d): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (ÕÓÔÒÏÊÓÔ×Ï %d, inode [%d,%d,%d]): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (ÕÓÔÒÏÊÓÔ×Ï %ld, inode %ld): ÎÅ×ÏÚÍÏÖÎÏ ÏÔËÒÙÔØ.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (ËÌÀÞ %s, ×ÒÅÍÑ ÍÏÄÉÆÉËÁÃÉÉ %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (ÕÓÔÒÏÊÓÔ×Ï %d, inode [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (ÕÓÔÒÏÊÓÔ×Ï %ld, inode %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "îÅÔ" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " ÆÁÊÌÏ×," #: dir.c:1055 dir.c:1076 msgid "no" msgstr "ÎÅÔ" #: dir.c:1058 msgid " impossibilities" msgstr " ÎÅÄÏÓÔÉÖÉÍÙÈ ÃÅÌÅÊ" #: dir.c:1062 msgid " so far." msgstr " ÎÁ ÔÅËÕÝÉÊ ÍÏÍÅÎÔ." #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr " ÎÅÄÏÓÔÉÖÉÍÙÈ ÃÅÌÅÊ × %u ËÁÔÁÌÏÇÁÈ.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "òÅËÕÒÓÉ×ÎÁÑ ÐÅÒÅÍÅÎÎÁÑ `%s' ÓÓÙÌÁÅÔÓÑ ÓÁÍÁ ÎÁ ÓÅÂÑ (× ÒÅÚÕÌØÔÁÔÅ)" #: expand.c:266 msgid "unterminated variable reference" msgstr "ÎÅÚÁ×ÅÒÛÅÎÎÁÑ ÓÓÙÌËÁ ÎÁ ÐÅÒÅÍÅÎÎÕÀ" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "ëÏÍÁÎÄÙ ÄÌÑ ÆÁÊÌÁ `%s' ÂÙÌÉ ÚÁÄÁÎÙ × %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "ëÏÍÁÎÄÙ ÄÌÑ ÆÁÊÌÁ `%s' ÂÙÌÉ ÎÁÊÄÅÎÙ ÉÚ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ÎÏ `%s' É `%s' ÔÅÐÅÒØ ÓÞÉÔÁÀÔÓÑ ÏÄÎÉÍ É ÔÅÍ ÖÅ ÆÁÊÌÏÍ. " #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "ëÏÍÁÎÄÙ ÄÌÑ `%s' ÉÇÎÏÒÉÒÕÀÔÓÑ, ×ÍÅÓÔÏ ÎÉÈ ÂÕÄÕÔ ÉÓÐÏÌØÚÏ×ÁÎÙ ËÏÍÁÎÄÙ ÄÌÑ `%" "s'." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "ÎÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ `%s' Ó ÏÄÎÉÍ Ä×ÏÅÔÏÞÉÅÍ × `%s' Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉ" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "ÎÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÉÍÅÎÏ×ÁÔØ `%s' Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉ × `%s' Ó ÏÄÎÉÍ Ä×ÏÅÔÏÞÉÅÍ" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** õÄÁÌÅÎÉÅ ÐÒÏÍÅÖÕÔÏÞÎÏÇÏ ÆÁÊÌÁ `%s'" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** õÄÁÌÅÎÉÅ ÐÒÏÍÅÖÕÔÏÞÎÏÇÏ ÆÁÊÌÁ `%s'" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: ÷ÒÅÍÅÎÎÏÊ ÛÔÁÍÐ ×ÙÈÏÄÉÔ ÚÁ ÐÒÅÄÅÌÙ ÄÉÁÐÁÚÏÎÁ; ÐÏÄÓÔÁ×ÌÑÅÍ %s" #: file.c:782 msgid "Current time" msgstr "ôÅËÕÝÅÅ ×ÒÅÍÑ" #: file.c:881 msgid "# Not a target:" msgstr "# îÅ Ñ×ÌÑÅÔÓÑ ÃÅÌØÀ:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# ãÅÎÎÙÊ ÆÁÊÌ (ÚÁ×ÉÓÉÍÏÓÔØ .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# ðÓÅ×ÄÏÃÅÌØ (ÚÁ×ÉÓÉÍÏÓÔØ ÏÔ .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# ãÅÌØ, ×ÙÚÙ×ÁÅÍÁÑ ÉÚ ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÉ." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# makefile ÐÏ ÕÍÏÌÞÁÎÉÀ ÉÌÉ ÉÚ MAKEFILES." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# ðÒÏÉÚ×ÏÄÉÌÓÑ ÐÏÉÓË ÎÅÑ×ÎÙÈ ÐÒÁ×ÉÌ" #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# ðÏÉÓË ÎÅÑ×ÎÙÈ ÐÒÁ×ÉÌ ÎÅ ÐÒÏÉÚ×ÏÄÉÌÓÑ." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# ïÓÎÏ×Á ÎÅÑ×ÎÏÇÏ ÉÌÉ ÓÔÁÔÉÞÅÓËÏÇÏ ÏÂÒÁÚÃÁ: `%s'\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# æÁÊÌ -- ÐÒÏÍÅÖÕÔÏÞÎÁÑ ÚÁ×ÉÓÉÍÏÓÔØ." #: file.c:919 msgid "# Also makes:" msgstr "# óÏÂÉÒÁÅÔ ÔÁËÖÅ:" #: file.c:925 msgid "# Modification time never checked." msgstr "# ÷ÒÅÍÑ ÉÚÍÅÎÅÎÉÑ ÎÉ ÒÁÚÕ ÎÅ ÐÒÏ×ÅÒÑÌÏÓØ." #: file.c:927 msgid "# File does not exist." msgstr "# æÁÊÌ ÎÅ ÓÕÝÅÓÔ×ÕÅÔ." #: file.c:929 msgid "# File is very old." msgstr "# æÁÊÌ ÏÞÅÎØ ÓÔÁÒÙÊ." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# ÷ÒÅÍÑ ÐÏÓÌÅÄÎÅÇÏ ÉÚÍÅÎÅÎÉÑ %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# æÁÊÌ ÂÙÌ ÏÂÎÏ×ÌÅÎ." #: file.c:937 msgid "# File has not been updated." msgstr "# æÁÊÌ ÎÅ ÂÙÌ ÏÂÎÏ×ÌÅÎ." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# ÷ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ×ÙÐÏÌÎÑÀÔÓÑ ÎÅËÏÔÏÒÙÅ ËÏÍÁÎÄÙ (üôï ïûéâëá)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "" "# ÷ ÄÁÎÎÙÊ ÍÏÍÅÎÔ ×ÙÐÏÌÎÑÀÔÓÑ ËÏÍÁÎÄÙ ÎÅËÏÔÏÒÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ (üôï ïûéâëá)." #: file.c:953 msgid "# Successfully updated." msgstr "# õÓÐÅÛÎÏ ÏÂÎÏ×ÌÅÎÏ." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# äÏÌÖÎÏ ÂÙÔØ ÏÂÎÏ×ÌÅÎÏ (ÚÁÄÁÎ ËÌÀÞ -q)." #: file.c:960 msgid "# Failed to be updated." msgstr "# ðÏÐÙÔËÁ ÏÂÎÏ×ÌÅÎÉÑ ÂÅÚÕÓÐÅÛÎÁ." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# îÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ ÞÌÅÎÁ `update_status'!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# îÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ ÞÌÅÎÁ `command_state'!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# æÁÊÌÙ" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "ÎÅÞÉÓÌÏ×ÏÊ ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `word'" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `word' ÄÏÌÖÅÎ ÂÙÔØ ÂÏÌØÛÅ ÎÕÌÑ" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "ÎÅÞÉÓÌÏ×ÏÊ ÐÅÒ×ÙÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `wordlist'" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "ÎÅÞÉÓÌÏ×ÏÊ ×ÔÏÒÏÊ ÁÒÇÕÍÅÎÔ ÆÕÎËÃÉÉ `wordlist'" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ (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) ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe(): process_init_fd() ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "ïÞÉÝÁÀ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "îÅÄÏÓÔÁÔÏÞÎÏ ÁÒÇÕÍÅÎÔÏ× (×ÓÅÇÏ %d) ÆÕÎËÃÉÉ `%s'" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "îÅ ÒÅÁÌÉÚÏ×ÁÎÏ ÎÁ ÜÔÏÊ ÐÌÁÔÆÏÒÍÅ: ÆÕÎËÃÉÑ `%s'" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "ÎÅÚÁ×ÅÒÛÅÎÎÙÊ ×ÙÚÏ× ÆÕÎËÃÉÉ `%s': ÐÒÏÐÕÝÅÎÏ `%c'" # óÏÏÂÝÅÎÉÑ getopt ÉÓËÌÀÞÅÎÙ, Ô.Ë. ÏÎÉ ÏÔÎÏÓÑÔÓÑ Ë ÕÖÅ # ÕÓÔÁÒÅ×ÛÅÊ ×ÅÒÓÉÉ ÜÔÏÊ ÂÉÂÌÉÏÔÅËÉ, É ÉÓÞÅÚÎÕÔ × ÓÌÅÄÕÀÝÅÊ ×ÅÒÓÉÉ make # #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: ËÌÀÞ `%s' ÎÅ ÏÄÎÏÚÎÁÞÅÎ\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ËÌÀÞ `--%s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ËÌÀÞ `%c%s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ËÌÀÞ `%s' ÔÒÅÂÕÅÔ ÁÒÇÕÍÅÎÔ\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ÎÅÉÚ×ÅÓÔÎÙÊ ËÌÀÞ `--%s'\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ÎÅÉÚ×ÅÓÔ×ÎÙÊ ËÌÀÞ `%c%s'\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ÎÅÄÏÐÕÓÔÉÍÙÊ ËÌÀÞ -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ÎÅ×ÅÒÎÙÊ ËÌÀÞ -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ËÌÀÞ ÔÒÅÂÕÅÔ ÁÒÇÕÍÅÎÔ -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: ËÌÀÞ `-W %s' ÎÅÏÄÎÏÚÎÁÞÅÎ\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ËÌÀÞ `-W %s' ÎÅ ÉÍÅÅÔ ÁÒÇÕÍÅÎÔÁ\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "ðÏÉÓË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ `%s'.\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "ðÏÉÓË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ ÜÌÅÍÅÎÔÁ ÁÒÈÉ×Á `%s'.\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "éÚÂÅÖÁÎÉÅ ÒÅËÕÒÓÉ×ÎÏÇÏ ×ÙÚÏ×Á ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "ðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÐÒÁ×ÉÌÁ Ó ÏÂÒÁÚÃÏÍ, ÏÓÎÏ×Á `%.*s'.\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "ïÔ×ÅÒÖÅÎÉÅ ÎÅ×ÏÚÍÏÖÎÏÊ ÎÅÑ×ÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'.\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "ïÔ×ÅÒÖÅÎÉÅ ÎÅ×ÏÚÍÏÖÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ ÐÒÁ×ÉÌÁ `%s'.\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "ðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÎÅÑ×ÎÏÊ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'.\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "ðÏÐÙÔËÁ ÐÒÉÍÅÎÅÎÉÑ ÐÒÁ×ÉÌÁ ÚÁ×ÉÓÉÍÏÓÔÉ `%s'.\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "ïÂÎÁÒÕÖÅÎÁ ÚÁ×ÉÓÉÍÏÓÔØ `%s' × ×ÉÄÅ VPATH `%s'\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "ðÏÉÓË ÐÒÁ×ÉÌÁ Ó ÐÒÏÍÅÖÕÔÏÞÎÙÍ ÆÁÊÌÏÍ `%s'.\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] ïÛÉÂËÁ 0x%x (ÉÇÎÏÒÉÒÏ×ÁÎÁ)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] ïÛÉÂËÁ 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] ïÛÉÂËÁ %d (ÉÇÎÏÒÉÒÏ×ÁÎÁ)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] ïÛÉÂËÁ %d" #: job.c:399 msgid " (core dumped)" msgstr " (ÓÄÅÌÁÎ ÄÁÍÐ ÐÁÍÑÔÉ)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ïÖÉÄÁÎÉÅ ÚÁ×ÅÒÛÅÎÉÑ ÚÁÄÁÎÉÊ..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "îÅÚÁ×ÅÒÛÅÎÎÙÊ ÐÏÔÏÍÏË 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (ÕÄÁÌÅÎÎÙÊ)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "ðÏÄÂÉÒÁÀ ÎÅÕÄÁÞÎÏ ÚÁ×ÅÒÛÉ×ÛÅÇÏÓÑ ÐÏÔÏÍËÁ 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "ðÏÄÂÉÒÁÀ ÕÄÁÞÎÏ ÚÁ×ÅÒÛÉ×ÛÅÇÏÓÑ ÐÏÔÏÍËÁ 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "ðÏÄÞÉÝÁÀ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "õÄÁÌÅÎÉÅ ÐÏÔÏÍËÁ 0x%08lx PID %ld %s ÉÚ ÃÅÐÏÞËÉ ÁËÔÉ×ÎÙÈ ÐÏÔÏÍËÏ×.\n" #: job.c:862 msgid "write jobserver" msgstr "ÐÉÛÕ × ÓÅÒ×ÅÒ ÚÁÄÁÞ" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "ïÓ×ÏÂÏÖÄÁÅÔÓÑ ÔÏËÅÎ ÄÌÑ ÐÏÔÏÍËÁ 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() ÎÅ ÓÍÏÇÌÁ ÚÁÐÕÓÔÉÔØ ÐÒÏÃÅÓÓ (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "ðÒÉ ÎÅÕÓÐÅÛÎÏÍ ÚÁÐÕÓËÅ ÓÏÓÞÉÔÁÎÏ %d ÁÒÇÕÍÅÎÔÏ×\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "" "ðÏÍÅÝÅÎÉÅ ÐÏÔÏÍËÁ 0x%08lx (%s) PID %ld%s × ÃÅÐÏÞËÕ ÁËÔÉ×ÎÙÈ ÐÏÔÏÍËÏ×.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "ðÏÌÕÞÅÎ ÔÏËÅÎ ÄÌÑ ÐÏÔÏÍËÁ 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "ÞÉÔÁÀ ÚÁÄÁÞÉ ÉÚ ÐÏÔÏËÁ" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "ÜÔÁ ÏÐÅÒÁÃÉÏÎÎÁÑ ÓÉÓÔÅÍÁ ÎÅ ÐÏÚ×ÏÌÑÅÔ ÕÓÔÁÎÁ×ÌÉ×ÁÔØ ÐÒÅÄÅÌÙ ÚÁÇÒÕÚËÉ" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ÎÅ×ÏÚÍÏÖÎÏ ÕÓÔÁÎÏ×ÉÔØ ÐÒÅÄÅÌÙ ÚÁÇÒÕÚËÉ: " #: 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 "process_easy() ÎÅ ÓÍÏÇÌÁ ÚÁÐÕÓÔÉÔØ ÐÒÏÃÅÓÓ (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, ×ÓÅ ÅÝÅ ÏÖÉÄÁÅÔ pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: ëÏÍÁÎÄÁ ÎÅ ÎÁÊÄÅÎÁ" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: ëÏÍÁÎÄÎÙÊ ÐÒÏÃÅÓÓÏÒ ÎÅ ÎÁÊÄÅÎ" #: 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 ÉÚÍÅÎÉÌÁÓØ (ÂÙÌÏ '%s', ÔÅÐÅÒØ '%s')" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "óÏÚÄÁÅÔÓÑ ×ÒÅÍÅÎÎÙÊ ÐÁËÅÔÎÙÊ ÆÁÊÌ %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" "%s (ÓÔÒÏËÁ %d) ðÌÏÈÏÊ ËÏÎÔÅËÓÔ ËÏÍÁÎÄÎÏÇÏ ÐÒÏÃÅÓÓÏÒÁ (!unixy && !" "batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "ëÌÀÞÉ:\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "éÇÎÏÒÉÒÕÅÔÓÑ ÄÌÑ ÓÏ×ÍÅÓÔÉÍÏÓÔÉ" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "÷Ù×ÏÄÉÔØ ÍÁÓÓÕ ÏÔÌÁÄÏÞÎÙÈ ÓÏÏÂÝÅÎÉÊ" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "÷Ù×ÏÄÉÔØ ÒÁÚÌÉÞÎÙÅ ÔÉÐÙ ÏÔÌÁÄÏÞÎÏÊ ÉÎÆÏÒÍÁÃÉÉ" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "ðÏËÁÚÁÔØ ÜÔÕ ÓÐÒÁ×ËÕ É ×ÙÊÔÉ" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "éÇÎÏÒÉÒÏ×ÁÔØ ÏÛÉÂËÉ ËÏÍÁÎÄ" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" "úÁÐÕÓËÁÔØ ÏÄÎÏ×ÒÅÍÅÎÎÏ ÄÏ N ÚÁÄÁÎÉÊ; \n" "ÅÓÌÉ ÁÒÇÕÍÅÎÔ ÎÅ ÚÁÄÁÎ, ÞÉÓÌÏ ÚÁÄÁÎÉÊ ÎÅÏÇÒÁÎÉÞÅÎÏ" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" "ðÒÏÄÏÌÖÁÔØ ÒÁÂÏÔÕ, ÄÁÖÅ ÅÓÌÉ ÎÅËÏÔÏÒÙÅ ÃÅÌÉ\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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "îÁÐÅÞÁÔÁÔØ ×ÎÕÔÒÅÎÎÀÀ ÂÁÚÕ ÄÁÎÎÙÈ make" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" "îÅ ×ÙÐÏÌÎÑÔØ ËÏÍÁÎÄÙ;\n" "ËÏÄ ÚÁ×ÅÒÛÅÎÉÑ ÐÏËÁÚÙ×ÁÅÔ, ×ÓÅ ÌÉ ÕÖÅ ÓÄÅÌÁÎÏ" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "îÅ ÉÓÐÏÌØÚÏ×ÁÔØ ×ÓÔÒÏÅÎÎÙÅ ÎÅÑ×ÎÙÅ ÐÒÁ×ÉÌÁ" # þÔÏ ÔÁËÏÅ "variable settings"? #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "÷ÙËÌÀÞÉÔØ ÎÅ ÚÁÄÁ×ÁÔØ ×ÓÔÒÏÅÎÎÙÅ ÚÎÁÞÅÎÉÑ ÐÅÒÅÍÅÎÎÙÍ" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" "õÓÔÁÎÏ×ÉÔØ ×ÒÅÍÑ ÄÏÓÔÕÐÁ ÃÅÌÅÊ × ÔÅËÕÝÅÅ,\n" "Á ÎÅ ÐÅÒÅÓÏÂÉÒÁÔØ ÉÈ" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "ðÏËÁÚÁÔØ ÉÎÆÏÒÍÁÃÉÀ Ï ×ÅÒÓÉÉ É ×ÙÊÔÉ" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "îÁÐÅÞÁÔÁÔØ ÔÅËÕÝÉÊ ËÁÔÁÌÏÇ" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "ïÔÍÅÎÉÔØ ËÌÀÞ -w, ÄÁÖÅ ÅÓÌÉ ÏÎ ÂÙÌ Ñ×ÎÏ ÕËÁÚÁÎ" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" "÷ÙÄÁ×ÁÔØ ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ ÐÒÉ ÓÓÙÌËÅ\n" "ÎÁ ÎÅÏÐÒÅÄÅÌÅÎÎÕÀ ÐÅÒÅÍÅÎÎÕÀ" #: main.c:549 msgid "empty string invalid as file name" msgstr "ÐÕÓÔÁÑ ÓÔÒÏËÁ ÎÅÄÏÐÕÓÔÉÍÁ × ËÁÞÅÓÔ×Å ÉÍÅÎÉ ÆÁÊÌÁ" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "ÎÅÉÚ×ÅÓÔÎÙÊ ÓÐÏÓÏ ÚÁÄÁÎÉÑ ÕÒÏ×ÎÑ ÏÔÌÁÄËÉ `%s'" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: ÐÏÊÍÁÎÏ ÐÒÅÒÙ×ÁÎÉÅ ÉÌÉ ÉÓËÌÀÞÅÎÉÅ (ËÏÄ = 0x%x, ÁÄÒÅÓ = 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" "îÅÏÂÒÁÂÏÔÁÎÎÏÅ ÉÓËÌÀÞÅÎÉÅ × ÐÒÏÇÒÁÍÍÅ %s\n" "ëÏÄ ÉÓËÌÀÞÅÎÉÑ = %x\n" "æÌÁÇÉ ÉÓËÌÀÞÅÎÉÑ = %x\n" "áÄÒÅÓ ÉÓËÌÀÞÅÎÉÑ = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "îÁÒÕÛÅÎÉÅ ÄÏÓÔÕÐÁ: ÏÐÅÒÁÃÉÑ ÚÁÐÉÓÉ ÐÏ ÁÄÒÅÓÕ %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "îÁÒÕÛÅÎÉÅ ÄÏÓÔÕÐÁ: ÏÐÅÒÁÃÉÑ ÞÔÅÎÉÑ ÁÄÒÅÓÁ %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 ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ 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: ÐÏÉÓË × ÐÕÔÑÈ ÕÓÔÁÎÁ×ÌÉ×ÁÅÔ default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s ÐÒÉÏÓÔÁÎÁ×ÌÉ×ÁÅÔÓÑ ÎÁ 30 ÓÅËÕÎÄ..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "sleep(30) ÚÁ×ÅÒÛÅÎ. ðÒÏÄÏÌÖÁÅÍ.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefile ÉÚ ÓÔÁÎÄÁÒÔÎÏÇÏ ××ÏÄÁ ÕËÁÚÁÎ Ä×ÁÖÄÙ." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "ðÁÒÁÌÌÅÌØÎÙÅ ÚÁÄÁÞÉ (-j) ÎÅ ÐÏÄÄÅÒÖÉ×ÁÀÔÓÑ ÎÁ ÜÔÏÊ ÐÌÁÔÆÏÒÍÅ." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "÷ÏÚ×ÒÁÝÁÅÔÓÑ ÒÅÖÉÍ ÏÄÉÎÏÞÎÏÊ ÚÁÄÁÞÉ (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: ÎÅÓËÏÌØËÏ ËÌÀÞÅÊ --jobserver-fds" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: ÎÅÐÒÁ×ÉÌØÎÁÑ ÓÔÒÏËÁ --jobserver-fds: `%s'" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: × ÓÕÂ-Makefile ÐÒÉÎÕÄÉÔÅÌØÎÏ ÚÁÄÁÎ -jN; ÒÅÖÉÍ ÓÅÒ×ÅÒÁ ÚÁÄÁÞ " "ÚÁÐÒÅÝÅÎ" #: main.c:1684 msgid "dup jobserver" msgstr "ÓÏÚÄÁÀ ËÏÐÉÀ ÓÅÒ×ÅÒÁ ÚÁÄÁÞ" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÓÅÒ×ÅÒ ÚÁÄÁÞ ÎÅÄÏÓÔÕÐÅÎ: ÉÓÐÏÌØÚÕÅÔÓÑ -j1.\n" "äÏÂÁרÔÅ `+' Ë ÐÒÁ×ÉÌÕ × ÒÏÄÉÔÅÌØÓËÏÍ make." #: main.c:1710 msgid "creating jobs pipe" msgstr "ÓÏÚÄÁÀ ËÁÎÁÌ ÚÁÄÁÞ" #: main.c:1725 msgid "init jobserver pipe" msgstr "ÎÁÞÁÌØÎÁÑ ÎÁÓÔÒÏÊËÁ ÓÅÒ×ÅÒÁ ÚÁÄÁÞ" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "ïÂÎÏ×ÌÅÎÉÅ make-ÆÁÊÌÏ×....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Make-ÆÁÊÌ `%s', ×ÏÚÍÏÖÎÏ, ÚÁÃÉËÌÅÎ, ÏÎ ÎÅ ÂÕÄÅÔ ÐÅÒÅÓÏÂÉÒÁÔØÓÑ.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "ðÏÐÙÔËÁ ÐÅÒÅÓÏÂÒÁÔØ make-ÆÁÊÌ `%s' ÎÅÕÓÐÅÛÎÁ." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "÷ËÌÀÞÁÅÍÙÊ make-ÆÁÊÌ `%s' ÎÅ ÎÁÊÄÅÎ." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Make-ÆÁÊÌ `%s' ÎÅ ÎÁÊÄÅÎ" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "îÅ×ÏÚÍÏÖÎÏ ÐÅÒÅÊÔÉ × ÐÅÒ×ÏÎÁÞÁÌØÎÙÊ ËÁÔÁÌÏÇ." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "ðÏ×ÔÏÒÎÏÅ ×ÙÐÏÌÎÅÎÉÅ:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (×ÒÅÍÅÎÎÙÊ ÆÁÊÌ)" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "îÅ ÚÁÄÁÎÙ ÃÅÌÉ É ÎÅ ÎÁÊÄÅÎ make-ÆÁÊÌ" #: main.c:2191 msgid "No targets" msgstr "îÅÔ ÃÅÌÅÊ" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "ïÂÎÏ×ÌÅÎÉÅ ÃÅÌÅÊ ÒÅÚÕÌØÔÁÔÁ...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: îÅÐÒÁ×ÉÌØÎÙÊ ÈÏÄ ÞÁÓÏ×. óÂÏÒËÁ ÍÏÖÅÔ ÂÙÔØ ÎÅÐÏÌÎÏÊ." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ: %s [ëìàþ]... [ãåìø]...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" "óÏÏÂÝÁÊÔÅ Ï ÏÛÉÂËÁÈ ÐÏ ÁÄÒÅÓÕ .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "ËÌÀÞ `-%c' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÃÅÌÙÍ ÐÏÌÏÖÉÔÅÌØÎÙÍ ÁÒÇÕÍÅÎÔÏÍ" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "ËÌÀÞ `-%c' ÄÏÌÖÅÎ ÉÓÐÏÌØÚÏ×ÁÔØÓÑ Ó ÃÅÌÙÍ ÐÏÌÏÖÉÔÅÌØÎÙÍ ÁÒÇÕÍÅÎÔÏÍ" #: main.c:2942 #, fuzzy, 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 "" ", Á×ÔÏÒÙ Richard Stallman É Roland McGrath.\n" "%sóÏÂÒÁÎÏ ÄÌÑ %s\n" "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" "%s\tFree Software Foundation, Inc.\n" "%süÔÏ Ó×ÏÂÏÄÎÁÑ ÐÒÏÇÒÁÍÍÁ; ÐÏÄÒÏÂÎÏÓÔÉ Ï ÕÓÌÏ×ÉÑÈ ÒÁÓÐÒÏÓÔÒÁÎÅÎÉÑ ÓÍÏÔÒÉÔÅ\n" "%s× ÉÓÈÏÄÎÏÍ ÔÅËÓÔÅ. íÙ îå ÐÒÅÄÏÓÔÁ×ÌÑÅÍ ÇÁÒÁÎÔÉÊ; ÄÁÖÅ ÇÁÒÁÎÔÉÊ\n" "%sëïííåòþåóëïê ãåîîïóôé ÉÌÉ ðòéçïäîïóôé äìñ ëáëïê-ìéâï ãåìé.\n" "\n" "%sóÏÏÂÝÁÊÔÅ Ï ÏÛÉÂËÁÈ ÐÏ ÁÄÒÅÓÕ .\n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# âÁÚÁ ÄÁÎÎÙÈ Make, ÎÁÐÅÞÁÔÁÎÁ %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# ðÅÞÁÔØ ÂÁÚÙ ÄÁÎÎÙÈ Make ÚÁ×ÅÒÛÅÎÁ %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "÷ÈÏÄ × ÎÅÉÚ×ÅÓÔÎÙÊ ËÁÔÁÌÏÇ" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "÷ÙÈÏÄ ÉÚ ÎÅÉÚ×ÅÓÔÎÏÇÏ ËÁÔÁÌÏÇÁ" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "÷ÈÏÄ × ËÁÔÁÌÏÇ `%s'\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "÷ÙÈÏÄ ÉÚ ËÁÔÁÌÏÇÁ `%s'\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "÷ÈÏÄ × ÎÅÉÚ×ÅÓÔÎÙÊ ËÁÔÁÌÏÇ" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "÷ÙÈÏÄ ÉÚ ÎÅÉÚ×ÅÓÔÎÏÇÏ ËÁÔÁÌÏÇÁ" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "÷ÈÏÄ × ËÁÔÁÌÏÇ `%s'\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "÷ÙÈÏÄ ÉÚ ËÁÔÁÌÏÇÁ `%s'\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". ïÓÔÁÎÏ×.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "îÅÉÚ×ÅÓÔÎÁÑ ÏÛÉÂËÁ %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "×ÉÒÔÕÁÌØÎÁÑ ÐÁÍÑÔØ ÉÓÞÅÒÐÁÎÁ" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "" "ðÒÁ×Á ÄÏÓÔÕÐÁ Ë %s: ÐÏÌØÚÏ×ÁÔÅÌØ %lu (ÄÅÊÓÔ×ÉÔÅÌØÎÙÊ %lu),\n" "ÇÒÕÐÐÁ %lu (ÄÅÊÓÔ×ÉÔÅÌØÎÁÑ %lu)\n" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "éÎÉÃÉÁÌÉÚÉÒÏ×ÁÎ" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "ðÏÔÏË ÏÛÉÂÏË ÐÅÒÅÎÁÐÒÁ×ÌÅÎ × %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "ÐÉÛÕ × ÓÅÒ×ÅÒ ÚÁÄÁÞ" #: read.c:160 msgid "Reading makefiles...\n" msgstr "þÔÅÎÉÅ make-ÆÁÊÌÏ×...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "þÔÅÎÉÅ make-ÆÁÊÌÁ `%s'" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (ÎÅÔ ÃÅÌÉ ÐÏ ÕÍÏÌÞÁÎÉÀ)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (ÐÕÔØ ÐÏÉÓËÁ)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (ÉÇÎÏÒÉÒÏ×ÁÔØ ÏÛÉÂËÉ)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (ÎÅ ÒÁÓËÒÙ×ÁÔØ ÓÉÍ×ÏÌ `~') " #: read.c:623 msgid "invalid syntax in conditional" msgstr "ÎÅ×ÅÒÎÙÊ ÓÉÎÔÁËÓÉÓ × ÕÓÌÏ×ÎÏÍ ×ÙÒÁÖÅÎÉÉ" #: read.c:633 msgid "extraneous `endef'" msgstr "ÉÚÌÉÛÎÉÊ `endef'" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "ÐÕÓÔÏÅ ÉÍÑ ÐÅÒÅÍÅÎÎÏÊ" #: read.c:662 msgid "empty `override' directive" msgstr "ÐÕÓÔÁÑ ÄÉÒÅËÔÉ×Á `override'" #: read.c:687 msgid "invalid `override' directive" msgstr "ÎÅÐÒÁ×ÉÌØÎÁÑ ÄÉÒÅËÔÉ×Á `override'" #: read.c:854 msgid "commands commence before first target" msgstr "ËÏÍÁÎÄÙ ×ÓÔÒÅÞÅÎÙ ÄÏ ÐÅÒ×ÏÇÏ ÏÐÒÅÄÅÌÅÎÉÑ ÃÅÌÉ" #: read.c:905 msgid "missing rule before commands" msgstr "ÐÅÒÅÄ ËÏÍÁÎÄÁÍÉ ÐÒÏÐÕÝÅÎÏ ÐÒÁ×ÉÌÏ" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ÐÒÏÐÕÝÅÎ ÒÁÚÄÅÌÉÔÅÌØ%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr "(ÎÅ ÉÍÅÌÉ ÌÉ ×Ù × ×ÉÄÕ TAB ×ÍÅÓÔÏ ×ÏÓØÍÉ ÐÒÏÂÅÌÏ×?)" #: read.c:1152 msgid "missing target pattern" msgstr "ÐÒÏÐÕÝÅÎ ÏÂÒÁÚÅà ÃÅÌÉ" #: read.c:1154 msgid "multiple target patterns" msgstr "ÎÅÓËÏÌØËÏ ÏÂÒÁÚÃÏ× ÃÅÌÉ" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "ÏÂÒÁÚÅà ÃÅÌÉ ÎÅ ÓÏÄÅÒÖÉÔ `%%'" #: read.c:1286 msgid "missing `endif'" msgstr "ÐÒÏÐÕÝÅÎÁ `endif'" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "éÚÌÉÛÎÉÊ ÔÅËÓÔ ÐÏÓÌÅ ÄÉÒÅËÔÉ×Ù `endef'" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "ÐÒÏÐÕÝÅÎÁ `endif', ÎÅÚÁ×ÅÒÛÅÎÎÁÑ `define'" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "éÚÌÉÛÎÉÊ ÔÅËÓÔ ÐÏÓÌÅ ÄÉÒÅËÔÉ×Ù `%s'" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "ÉÚÌÉÛÎÑÑ `%s'" #: read.c:1482 msgid "only one `else' per conditional" msgstr "× ÕÓÌÏ×ÎÏÍ ×ÙÒÁÖÅÎÉÉ ×ÏÚÍÏÖÎÁ ÔÏÌØËÏ ÏÄÎÁ `else'" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "îÅÐÒÁ×ÉÌØÎÙÊ ÆÏÒÍÁÔ ÚÁÄÁÎÉÑ ÐÅÒÅÍÅÎÎÏÊ ÄÌÑ ÃÅÌÉ" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "ÃÅÌØ `%s' ÎÅ ÓÏÏÔ×ÅÔÓÔ×ÕÅÔ ÏÂÒÁÚÃÕ ÃÅÌÅÊ" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "ÃÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÉÍÅÅÔ ×ÈÏÖÄÅÎÉÑ É Ó `:', É Ó `::' " #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "ÃÅÌØ `%s' ÕËÁÚÁÎÁ ÎÅÓËÏÌØËÏ ÒÁÚ × ÏÄÎÏÍ ÐÒÁ×ÉÌÅ" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÐÅÒÅÏÐÒÅÄÅÌÅÎÉÅ ËÏÍÁÎÄ ÄÌÑ ÃÅÌÉ `%s'" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÓÔÁÒÙÅ ËÏÍÁÎÄÙ ÄÌÑ ÃÅÌÉ `%s' ÉÇÎÏÒÉÒÕÀÔÓÑ" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ×ÓÔÒÅÞÅÎ ÓÉÍ×ÏÌ NUL; ÉÇÎÏÒÉÒÕÅÔÓÑ ÄÏ ËÏÎÃÁ ÓÔÒÏËÉ" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "ãÅÌØ `%s' ÎÅ ÔÒÅÂÕÅÔ ×ÙÐÏÌÎÅÎÉÑ ËÏÍÁÎÄ." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "`%s' ÎÅ ÔÒÅÂÕÅÔ ÏÂÎÏ×ÌÅÎÉÑ." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "ïÂÒÅÚÁÅÔÓÑ ÆÁÊÌ `%s'.\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sîÅÔ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÂÏÒËÉ ÃÅÌÉ `%s'%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sîÅÔ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÂÏÒËÉ ÃÅÌÉ `%s', ÔÒÅÂÕÅÍÏÊ ÄÌÑ `%s'%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "ïÂÒÁÂÏÔËÁ ÃÅÌÅ×ÏÇÏ ÆÁÊÌÁ `%s'.\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "ðÒÅÄÙÄÕÝÁÑ ÐÏÐÙÔËÁ ÏÂÎÏ×ÉÔØ ÆÁÊÌ `%s' ÚÁ×ÅÒÛÉÌÁÓØ ÎÅÕÓÐÅÛÎÏ.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "æÁÊÌ `%s' ÕÖÅ ÂÙÌ ÏÂÒÁÂÏÔÁÎ.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "æÁÊÌ `%s' ÏÂÎÏ×ÌÑÅÔÓÑ × ÄÁÎÎÙÊ ÍÏÍÅÎÔ.\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "ïÂÎÏ×ÌÅÎÉÅ ÆÁÊÌÁ `%s' ÚÁ×ÅÒÛÅÎÏ.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "æÁÊÌ `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔ.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "îÁÊÄÅÎÏ ÎÅÑ×ÎÏÅ ÐÒÁ×ÉÌÏ ÄÌÑ `%s'.\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "îÅ ÎÁÊÄÅÎÏ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ `%s'.\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "éÓÐÏÌØÚÏ×ÁÎÉÅ ËÏÍÁÎÄ ÐÏ ÕÍÏÌÞÁÎÉÀ ÄÌÑ `%s'.\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "ãÉËÌÉÞÅÓËÁÑ ÚÁ×ÉÓÉÍÏÓÔØ %s <- %s ÐÒÏÐÕÝÅÎÁ." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "ïÂÎÏ×ÌÅÎÉÅ ÃÅÌÅÊ, ÏÔ ËÏÔÏÒÙÈ ÚÁ×ÉÓÉÔ ÃÅÌÅ×ÏÊ ÆÁÊÌ `%s', ÚÁ×ÅÒÛÅÎÏ.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "ãÅÌÉ, ÏÔ ËÏÔÏÒÙÈ ÚÁ×ÉÓÉÔ `%s', × ÎÁÓÔÏÑÝÉÊ ÍÏÍÅÎÔ ÓÏÂÉÒÁÀÔÓÑ.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "á×ÁÒÉÊÎÙÊ ÏÓÔÁÎÏ× ÎÁ ÃÅÌÅ×ÏÍ ÆÁÊÌÅ `%s'.\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "ãÅÌØ `%s' ÎÅ ÂÙÌÁ ÐÅÒÅÓÏÂÒÁÎÁ ÉÚ-ÚÁ ÏÛÉÂÏË." #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "úÁ×ÉÓÉÍÏÓÔØ `%s' ÓÔÁÒÅÅ, ÞÅÍ ÃÅÌØ `%s'.\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "úÁ×ÉÓÉÍÏÓÔØ `%s' ÃÅÌÉ `%s' ÎÅ ÓÕÝÅÓÔ×ÕÅÔ.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "úÁ×ÉÓÉÍÏÓÔØ `%s' ÎÏ×ÅÅ, ÞÅÍ ÃÅÌØ `%s'.\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "úÁ×ÉÓÉÍÏÓÔØ `%s' ÓÔÁÒÅÅ, ÞÅÍ ÃÅÌØ `%s'.\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "ãÅÌØ `%s' ÏÂßÑ×ÌÅÎÁ Ó Ä×ÕÍÑ Ä×ÏÅÔÏÞÉÑÍÉ É ÎÅ ÉÍÅÅÔ ÚÁ×ÉÓÉÍÏÓÔÅÊ.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "ëÏÍÁÎÄÙ ÄÌÑ `%s' ÎÅ ÚÁÄÁÎÙ, É ÚÁ×ÉÓÉÍÏÓÔÉ ÎÅ ÂÙÌÉ ÉÚÍÅÎÅÎÙ.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "îÅÔ ÎÅÏÂÈÏÄÉÍÏÓÔÉ ÐÅÒÅÓÏÂÉÒÁÔØ ÃÅÌØ `%s'." #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; ÉÓÐÏÌØÚÕÅÔÓÑ VPATH-ÉÍÑ `%s'" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "îÅÏÂÈÏÄÉÍÏ ÐÅÒÅÓÏÂÒÁÔØ ÃÅÌØ `%s'.\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " éÇÎÏÒÉÒÕÅÔÓÑ VPATH-ÉÍÑ `%s'.\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "ëÏÍÁÎÄÙ ÄÌÑ `%s' ×ÙÐÏÌÎÑÀÔÓÑ × ÎÁÓÔÏÑÝÅÅ ×ÒÅÍÑ.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "ðÏÐÙÔËÁ ÐÅÒÅÓÏÚÄÁÎÉÑ ÃÅÌÅ×ÏÇÏ ÆÁÊÌÁ `%s' ÂÅÚÕÓÐÅÛÎÁ.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "ãÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÕÓÐÅÛÎÏ ÐÅÒÅÓÏÚÄÁÎ.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "ãÅÌÅ×ÏÊ ÆÁÊÌ `%s' ÔÒÅÂÕÅÔ ÐÅÒÅÓÏÚÄÁÎÉÑ Ó ËÌÀÞÏÍ -q.\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** æÁÊÌ `%s' ÂÙÌ ÉÚÍÅÎÅÎ × ÂÕÄÕÝÅÍ (%s > %s)" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** æÁÊÌ `%s' ÂÙÌ ÉÚÍÅÎÅÎ × ÂÕÄÕÝÅÍ (%s > %s)" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "üÌÅÍÅÎÔ .LIBPATTERNS `%s' ÎÅ Ñ×ÌÑÅÔÓÑ ÏÂÒÁÚÃÏÍ" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "îÅ ÜËÓÐÏÒÔÉÒÕÅÍÙÅ ÎÁÓÔÒÏÊËÉ: %s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# îÅÑ×ÎÙÈ ÐÒÁ×ÉÌ ÎÅÔ." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# îÅÑ×ÎÙÈ ÐÒÁ×ÉÌ ÎÅÔ." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# îÅÑ×ÎÙÈ ÐÒÁ×ÉÌ: %u, ÔÅÒÍÉÎÁÌØÎÙÈ: %u" #: rule.c:575 msgid " terminal." msgstr "." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "ïûéâëá: ÎÅ×ÅÒÎÏÅ ÚÎÁÞÅÎÉÅ num_pattern_rules! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "ÎÅÉÚ×ÅÓÔÎÙÊ ÓÉÇÎÁÌ" #: signame.c:93 msgid "Hangup" msgstr "ïÂÒÙ× ÔÅÒÍÉÎÁÌØÎÏÊ ÌÉÎÉÉ" #: signame.c:96 msgid "Interrupt" msgstr "ðÒÅÒÙ×ÁÎÉÅ" #: signame.c:99 msgid "Quit" msgstr "á×ÁÒÉÊÎÏÅ ÐÒÅÒÙ×ÁÎÉÅ" #: signame.c:102 msgid "Illegal Instruction" msgstr "îÅÄÏÐÕÓÔÉÍÁÑ ÉÎÓÔÒÕËÃÉÑ" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "ðÒÅÒÙ×ÁÎÉÅ ÎÁ ËÏÎÔÒÏÌØÎÏÊ ÔÏÞËÅ" #: signame.c:110 msgid "Aborted" msgstr "ðÒÅÒ×ÁÎÏ" #: signame.c:113 msgid "IOT trap" msgstr "ïÛÉÂËÁ IOT" #: signame.c:116 msgid "EMT trap" msgstr "ïÛÉÂËÁ ÜÍÕÌÑÃÉÉ" #: signame.c:119 msgid "Floating point exception" msgstr "ïÛÉÂËÁ ÏÐÅÒÁÃÉÉ Ó ÐÌÁ×ÁÀÝÅÊ ÔÏÞËÏÊ" #: signame.c:122 msgid "Killed" msgstr "õÎÉÞÔÏÖÅÎÉÅ" #: signame.c:125 msgid "Bus error" msgstr "îÅ×ÅÒÎÏÅ ÏÂÒÁÝÅÎÉÅ Ë ÐÁÍÑÔÉ" #: signame.c:128 msgid "Segmentation fault" msgstr "îÁÒÕÛÅÎÉÅ ÐÒÁ× ÄÏÓÔÕÐÁ Ë ÐÁÍÑÔÉ" #: signame.c:131 msgid "Bad system call" msgstr "îÅÐÒÁ×ÉÌØÎÙÊ ÓÉÓÔÅÍÎÙÊ ×ÙÚÏ×" #: signame.c:134 msgid "Broken pipe" msgstr "ïÂÒÙ× ËÁÎÁÌÁ" #: signame.c:137 msgid "Alarm clock" msgstr "óÉÇÎÁÌ ÐÏ ÔÁÊÍÅÒÕ" #: signame.c:140 msgid "Terminated" msgstr "úÁ×ÅÒÛÅÎÉÅ" #: signame.c:143 msgid "User defined signal 1" msgstr "ïÐÒÅÄÅÌÑÅÍÙÊ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÓÉÇÎÁÌ 1" #: signame.c:146 msgid "User defined signal 2" msgstr "ïÐÒÅÄÅÌÑÅÍÙÊ ÐÏÌØÚÏ×ÁÔÅÌÅÍ ÓÉÇÎÁÌ 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "ðÏÔÏÍÏË ÚÁ×ÅÒÛÉÌ ÒÁÂÏÔÕ" #: signame.c:157 msgid "Power failure" msgstr "ïÔËÁÚ ÐÉÔÁÎÉÑ" #: signame.c:160 msgid "Stopped" msgstr "ïÓÔÁÎÏ×" #: signame.c:163 msgid "Stopped (tty input)" msgstr "ïÓÔÁÎÏ× (××ÏÄ Ó ÔÅÒÍÉÎÁÌÁ) " #: signame.c:166 msgid "Stopped (tty output)" msgstr "ïÓÔÁÎÏ× (×Ù×ÏÄ ÎÁ ÔÅÒÍÉÎÁÌ)" #: signame.c:169 msgid "Stopped (signal)" msgstr "ïÓÔÁÎÏ× (ÓÉÇÎÁÌ)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "ðÒÅ×ÙÛÅÎ ÐÒÅÄÅÌ ÐÒÏÃÅÓÓÏÒÎÏÇÏ ×ÒÅÍÅÎÉ" #: signame.c:175 msgid "File size limit exceeded" msgstr "ðÒÅ×ÙÛÅÎ ÐÒÅÄÅÌ ÒÁÚÍÅÒÁ ÆÁÊÌÁ" #: signame.c:178 msgid "Virtual timer expired" msgstr "÷ÉÒÔÕÁÌØÎÏÅ ×ÒÅÍÑ ÉÓÔÅËÌÏ" #: signame.c:181 msgid "Profiling timer expired" msgstr "÷ÒÅÍÑ ÐÒÏÆÉÌÉÒÏ×ÁÎÉÑ ÉÓÔÅËÌÏ" #: signame.c:187 msgid "Window changed" msgstr "ïËÎÏ ÉÚÍÅÎÅÎÏ" #: signame.c:190 msgid "Continued" msgstr "÷ÏÚÏÂÎÏ×ÌÅÎÉÅ" #: signame.c:193 msgid "Urgent I/O condition" msgstr "õÓÌÏ×ÉÑ ÜËÓÔÒÅÎÎÏÇÏ ××ÏÄÁ/×Ù×ÏÄÁ" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "÷ÏÚÍÏÖÅÎ ××ÏÄ/×Ù×ÏÄ" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "òÅÓÕÒÓ ÐÏÔÅÒÑÎ" #: signame.c:215 msgid "Danger signal" msgstr "óÉÇÎÁÌ ÏÐÁÓÎÏÓÔÉ" #: signame.c:218 msgid "Information request" msgstr "úÁÐÒÏÓ ÉÎÆÏÒÍÁÃÉÉ" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "óÏÐÒÏÃÅÓÓÏÒ Ó ÐÌÁ×ÁÀÝÅÊ ÔÏÞËÏÊ ÎÅÄÏÓÔÕÐÅÎ" #: 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 "ÐÏ ÕÍÏÌÞÁÎÉÀ" #: variable.c:1372 msgid "environment" msgstr "ÏÐÒÅÄÅÌÅÎÁ × ÓÒÅÄÅ" #: variable.c:1375 msgid "makefile" msgstr "Make-ÆÁÊÌ" #: variable.c:1378 msgid "environment under -e" msgstr "ÚÁÄÁÎ ËÌÀÞ -e" #: variable.c:1381 msgid "command line" msgstr "ÏÐÒÅÄÅÌÅÎÁ × ËÏÍÁÎÄÎÏÊ ÓÔÒÏËÅ" #: variable.c:1384 msgid "`override' directive" msgstr "äÉÒÅËÔÉ×Á `override'" #: variable.c:1387 msgid "automatic" msgstr "Á×ÔÏÍÁÔÉÞÅÓËÁÑ" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (ÉÚ `%s', ÓÔÒÏËÁ %lu):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %u ÐÅÒÅÍÅÎÎÙÈ × %u ÑÞÅÊËÁÈ ÈÅÛ-ÔÁÂÌÉÃÙ.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# ðÅÒÅÍÅÎÎÙÅ\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# úÎÁÞÅÎÉÑ ÐÅÒÅÍÅÎÎÙÈ ÏÓÏÂÅÎÎÙÅ ÄÌÑ ÍÁÓËÉ" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# îÅÔ ÚÎÁÞÅÎÉÊ ÐÅÒÅÍÅÎÎÙÈ ÏÓÏÂÅÎÎÙÈ ÄÌÑ ÍÁÓËÉ" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u ÚÎÁÞÅÎÉÊ ÐÅÒÅÍÅÎÎÙÈ ÏÓÏÂÅÎÎÙÈ ÄÌÑ ÍÁÓËÉ" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ: ÎÅÏÐÒÅÄÅÌÅÎÎÁÑ ÐÅÒÅÍÅÎÎÁÑ `%.*s'" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search ×ÅÒÎÕÌÁ ËÏÄ ÏÛÉÂËÉ %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "ðÒÅÄÕÐÒÅÖÄÅÎÉÅ: ðÕÓÔÏÅ ÐÅÒÅÎÁÐÒÁ×ÌÅÎÉÅ\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "×ÎÕÔÒÅÎÎÑÑ ÏÛÉÂËÁ: `%s' command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ, ÐÏÓÌÅ CTRL-Y ÏÓÔÁÎÕÔÓÑ ÓÕÂ-ÐÒÏÃÅÓÓÙ.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "-ÐÒÅÄÕÐÒÅÖÄÅÎÉÅ, ×ÏÚÍÏÖÎÏ ×ÁÍ ÐÏÔÒÅÂÕÅÔÓÑ ÐÏ×ÔÏÒÎÏ ÒÁÚÒÅÛÉÔØ\n" "ÏÂÒÁÂÏÔËÕ CTRL-Y ÉÚ DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "÷óôòïåîîùê [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "÷óôòïåîîùê CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "÷óôòïåîîùê RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "îÅÉÚ×ÅÓÔÎÁÑ ×ÓÔÒÏÅÎÎÁÑ ËÏÍÁÎÄÁ '%s'\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "ïÛÉÂËÁ, ÐÕÓÔÁÑ ËÏÍÁÎÄÁ\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "óÔÁÎÄÁÒÔÎÙÊ ××ÏÄ ÐÅÒÅÎÁÐÒÁ×ÌÅÎ ÉÚ %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "ðÏÔÏË ÏÛÉÂÏË ÐÅÒÅÎÁÐÒÁ×ÌÅÎ × %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "óÔÁÎÄÁÒÔÎÙÊ ×Ù×ÏÄ ÐÅÒÅÎÁÐÒÁ×ÌÅÎ × %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "÷ÍÅÓÔÏ ÚÁÄÁÎÎÏÇÏ ×ÙÐÏÌÎÑÅÔÓÑ %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "ïÛÉÂËÁ ÐÏÒÏÖÄÅÎÉÑ ÐÒÏÃÅÓÓÁ, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# ðÕÔÉ ÐÏÉÓËÁ VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# îÅ ÏÐÒÅÄÅÌÅÎ ÐÕÔØ ÐÏÉÓËÁ `vpath'." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u ÐÕÔÅÊ ÐÏÉÓËÁ ÐÏ `vpath'\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# îÅ ÏÐÒÅÄÅÌÅÎ ÏÂÝÉÊ (ÐÅÒÅÍÅÎÎÁÑ `VPATH') ÐÕÔØ ÐÏÉÓËÁ." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# ïÂÝÉÊ (ÐÅÒÅÍÅÎÎÁÑ `VPATH') ÐÕÔØ ÐÏÉÓËÁ:\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# æÁÊÌÏ× ÎÅÔ." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u ÆÁÊÌÏ× in %u ÑÞÅÊËÁÈ ÈÅÛ-ÔÁÂÌÉÃÙ.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# × ÓÒÅÄÎÅÍ %.3f ÆÁÊÌÏ× × ÑÞÅÊËÅ, ÍÁËÓ. %u ÆÁÊÌÏ× × ÏÄÎÏÊ ÑÞÅÊËÅ.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "óÉÎÔÁËÓÉÞÅÓËÁÑ ÏÛÉÂËÁ, ×ÓÅ ÅÝÅ ×ÎÕÔÒÉ '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "" #~ "ðÏÌÕÞÅÎ ÓÉÇÎÁÌ SIGCHLD; %u ÐÏÔÏÍËÏ× Ó ÎÅÏÂÒÁÂÏÔÁÎÎÙÍÉ ÒÅÚÕÌØÔÁÔÁÍÉ.\n" #~ msgid "DIRECTORY" #~ msgstr "ëáôáìïç" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "ðÅÒÅÊÔÉ × ëáôáìïç ÐÅÒÅÄ ÎÁÞÁÌÏÍ ÒÁÂÏÔÙ" #~ msgid "FLAGS" #~ msgstr "æìáçé" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "ðÒÉÏÓÔÁÎÏ×ÉÔØ ÐÒÏÃÅÓÓ, ÞÔÏÂÙ ÐÏÚ×ÏÌÉÔØ ÐÒÉÃÅÐÉÔØÓÑ ÏÔÌÁÄÞÉËÕ" #~ msgid "Environment variables override makefiles" #~ msgstr "" #~ "ðÅÒÅÍÅÎÎÙÅ ÓÒÅÄÙ ÐÅÒÅËÒÙ×ÁÀÔ ÐÅÒÅÍÅÎÎÙÅ, \n" #~ "ÏÐÒÅÄÅÌÅÎÎÙÅ × make-ÆÁÊÌÅ" #~ msgid "FILE" #~ msgstr "æáêì" #~ msgid "Read FILE as a makefile" #~ msgstr "éÓÐÏÌØÚÏ×ÁÔØ æáêì × ËÁÞÅÓÔ×Å make-ÆÁÊÌÁ" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "éÓËÁÔØ ×ËÌÀÞÁÅÍÙÅ make-ÆÁÊÌÙ × ëáôáìïçå" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "" #~ "îÅ ÚÁÐÕÓËÁÔØ ÐÁÒÁÌÌÅÌØÎÙÅ ÚÁÄÁÞÉ,\n" #~ "ÐÏËÁ ÚÁÇÒÕÚËÁ ÎÅ ÓÎÉÚÉÔÓÑ ÄÏ N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "îÅ ×ÙÐÏÌÎÑÔØ ËÏÍÁÎÄÙ, ÐÒÏÓÔÏ ÎÁÐÅÞÁÔÁÔØ ÉÈ" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "óÞÉÔÁÔØ æáêì ÏÞÅÎØ ÓÔÁÒÙÍ É ÎÅ ÐÅÒÅÓÏÂÉÒÁÔØ ÅÇÏ" #~ msgid "Don't echo commands" #~ msgstr "îÅ ÐÅÞÁÔÁÔØ ×ÙÐÏÌÎÑÅÍÙÅ ËÏÍÁÎÄÙ" #~ msgid "Turns off -k" #~ msgstr "ïÔÍÅÎÉÔØ ËÌÀÞ -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "óÞÉÔÁÔØ æáêì ÎÅÏÇÒÁÎÉÞÅÎÎÏ ÎÏ×ÙÍ" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "îÅ ÕËÁÚÙ×ÁÊÔÅ -j ÉÌÉ --jobs, ÅÓÌÉ ÎÅÔÕ sh.exe." #~ msgid "Resetting make for single job mode." #~ msgstr "make ÂÕÄÅÔ ×ÙÐÏÌÎÑÔØÓÑ × ÒÅÖÉÍÅ ÏÄÉÎÏÞÎÏÊ ÚÁÄÁÞÉ." #~ msgid "no file name for `%sinclude'" #~ msgstr "ÎÅ ÚÁÄÁÎÏ ÉÍÑ ÆÁÊÌÁ ÄÌÑ `%sinclude'" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "ÃÅÌØ `%s' ÏÓÔÁ×ÌÑÅÔ ÐÕÓÔÏÊ ÛÁÂÌÏÎ ÚÁ×ÉÓÉÍÏÓÔÉ" #~ msgid "# No variables." #~ msgstr "# ðÅÒÅÍÅÎÎÙÈ ÎÅÔ." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# × ÓÒÅÄÎÅÍ %.1f ÐÅÒÅÍÅÎÎÙÈ × ÑÞÅÊËÅ, ÍÁËÓ. %u × ÏÄÎÏÊ ÑÞÅÊËÅ.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# × ÓÒÅÄÎÅÍ %d.%d ÐÅÒÅÍÅÎÎÙÈ × ÑÞÅÊËÅ, ÍÁËÓ. %u × ÏÄÎÏÊ ÑÞÅÊËÅ.\n" make-dfsg-3.81.orig/po/rw.gmo0000644000175000017500000000122310416553102016261 0ustar srivastasrivastaÞ•T Œ¸ ¹ÃÆË ÓÝqåWfj q ~ ‰InterruptNoQuitStoppedautomaticdefaultProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2005-04-04 10:55-0700 Last-Translator: Steven Michael Murphy Language-Team: Kinyarwanda MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hagarikira ahoOyaKuvamoKyahagarisweByikoreshamburabuzimake-dfsg-3.81.orig/po/rw.po0000644000175000017500000012221210416553102016117 0ustar srivastasrivasta# Kinyarwanda translations for make package. # Copyright (C) 2005 Free Software Foundation, Inc. # This file is distributed under the same license as the make package. # Steve Murphy , 2005. # Steve performed initial rough translation from compendium built from translations provided by the following translators: # Philibert Ndandali , 2005. # Viateur MUGENZI , 2005. # Noëlla Mupole , 2005. # Carole Karema , 2005. # JEAN BAPTISTE NGENDAHAYO , 2005. # Augustin KIBERWA , 2005. # Donatien NSENGIYUMVA , 2005. # Antoine Bigirimana , 2005. # 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: 2005-04-04 10:55-0700\n" "Last-Translator: Steven Michael Murphy \n" "Language-Team: Kinyarwanda \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, fuzzy, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "Kuri Gukoresha" #: ar.c:137 #, fuzzy msgid "touch archive member is not available on VMS" msgstr "ni OYA Bihari ku" #: ar.c:168 #, fuzzy, c-format msgid "touch: Archive `%s' does not exist" msgstr "OYA" #: ar.c:171 #, fuzzy, c-format msgid "touch: `%s' is not a valid archive" msgstr "ni OYA a Byemewe" #: ar.c:178 #, fuzzy, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "OYA in" #: ar.c:185 #, fuzzy, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "Garuka ITEGEKONGENGA Bivuye ku" #: arscan.c:69 #, fuzzy, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "Byanze Kuri Modire Ibisobanuro Imimerere" #: arscan.c:154 #, fuzzy, c-format msgid "lbr$ini_control failed with status = %d" msgstr "Byanze Na: Imimerere" #: arscan.c:165 #, fuzzy, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "Kuri Gufungura Isomero Kuri GUSHAKISHA" #: arscan.c:825 #, fuzzy, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Bayite ku" #: arscan.c:826 #, fuzzy msgid " (name might be truncated)" msgstr "(Izina:" # svx/source\items\svxitems.src:RID_SVXITEMS_DATE_COMPLETE.text #: arscan.c:828 #, fuzzy, c-format msgid " Date %s" msgstr "Itariki:" #: arscan.c:829 #, fuzzy, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr "UID Ubwoko 0" #: commands.c:422 msgid "*** Break.\n" msgstr "" #: commands.c:545 #, fuzzy, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "***[%s]Gicurasi OYA Cyasibwe" #: commands.c:548 #, fuzzy, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "***Gicurasi OYA Cyasibwe" #: commands.c:561 #, fuzzy, c-format msgid "*** [%s] Deleting file `%s'" msgstr "***[%s]IDOSIYE" #: commands.c:563 #, fuzzy, c-format msgid "*** Deleting file `%s'" msgstr "***IDOSIYE" #: commands.c:599 #, fuzzy msgid "# commands to execute" msgstr "#Amabwiriza Kuri Gukora" #: commands.c:602 #, fuzzy msgid " (built-in):" msgstr "(in" #: commands.c:604 #, fuzzy, c-format msgid " (from `%s', line %lu):\n" msgstr "(Bivuye Umurongo" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" #: dir.c:995 #, fuzzy, c-format msgid "# %s: could not be stat'd.\n" msgstr "#%s:OYA" #: dir.c:999 #, fuzzy, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "#%s(Urufunguzo OYA" #: dir.c:1003 #, fuzzy, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "#%s(APAREYE OYA" #: dir.c:1008 #, fuzzy, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "#%s(APAREYE OYA" #: dir.c:1035 #, fuzzy, c-format msgid "# %s (key %s, mtime %d): " msgstr "#%s(Urufunguzo" #: dir.c:1039 #, fuzzy, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "#%s(APAREYE" #: dir.c:1044 #, fuzzy, c-format msgid "# %s (device %ld, inode %ld): " msgstr "#%s(APAREYE" #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Oya" # scp/source\office\dir.lng:STR_DIR_DATEIEN.text #: dir.c:1053 dir.c:1074 #, fuzzy msgid " files, " msgstr "Idosiye" #: dir.c:1055 dir.c:1076 #, fuzzy msgid "no" msgstr "Oya" #: dir.c:1058 msgid " impossibilities" msgstr "" #: dir.c:1062 msgid " so far." msgstr "" #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr "in ububiko bw'amaderese" #: expand.c:128 #, fuzzy, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "IMPINDURAGACIRO Indango" #: expand.c:266 #, fuzzy msgid "unterminated variable reference" msgstr "IMPINDURAGACIRO Indango" #: file.c:270 #, fuzzy, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "kugirango IDOSIYE ku" #: file.c:275 #, fuzzy, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "kugirango IDOSIYE Byabonetse ku Gushaka" #: file.c:278 #, fuzzy, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ni NONEAHA i IDOSIYE Nka" #: file.c:281 #, fuzzy, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "kugirango in Bya kugirango" #: file.c:301 #, fuzzy, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "Guhindura izina UMWE Kuri MAHARAKUBIRI" #: file.c:306 #, fuzzy, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "Guhindura izina MAHARAKUBIRI Kuri UMWE" #: file.c:381 #, fuzzy, c-format msgid "*** Deleting intermediate file `%s'" msgstr "***IDOSIYE" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "Idosiye" #: file.c:781 #, fuzzy, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s:Inyuma Bya Urutonde" # sfx2/sdi\sfxslots.src:SID_CURRENTTIME.text #: file.c:782 #, fuzzy msgid "Current time" msgstr "Iki Gihe" #: file.c:881 #, fuzzy msgid "# Not a target:" msgstr "#a Intego" #: file.c:903 #, fuzzy msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "#IDOSIYE Bya" #: file.c:905 #, fuzzy msgid "# Phony target (prerequisite of .PHONY)." msgstr "#Intego Bya" #: file.c:907 #, fuzzy msgid "# Command-line target." msgstr "#Umurongo Intego" #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "#A Mburabuzi Cyangwa" #: file.c:911 #, fuzzy msgid "# Implicit rule search has been done." msgstr "#Gushaka Byakozwe" #: file.c:912 #, fuzzy msgid "# Implicit rule search has not been done." msgstr "#Gushaka OYA Byakozwe" #: file.c:914 #, fuzzy, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "#Ishusho" #: file.c:916 #, fuzzy msgid "# File is an intermediate prerequisite." msgstr "#Idosiye ni" #: file.c:919 msgid "# Also makes:" msgstr "" #: file.c:925 #, fuzzy msgid "# Modification time never checked." msgstr "#Igihe Nta narimwe Ivivuwe" #: file.c:927 #, fuzzy msgid "# File does not exist." msgstr "#Idosiye OYA" #: file.c:929 #, fuzzy msgid "# File is very old." msgstr "#Idosiye ni ki/ bishaje" #: file.c:934 #, fuzzy, c-format msgid "# Last modified %s\n" msgstr "#Byahinduwe" #: file.c:937 #, fuzzy msgid "# File has been updated." msgstr "#Idosiye" #: file.c:937 #, fuzzy msgid "# File has not been updated." msgstr "#Idosiye OYA" #: file.c:941 #, fuzzy msgid "# Commands currently running (THIS IS A BUG)." msgstr "#A" #: file.c:944 #, fuzzy msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "#Amabwiriza A" #: file.c:953 msgid "# Successfully updated." msgstr "" #: file.c:957 #, fuzzy msgid "# Needs to be updated (-q is set)." msgstr "#Kuri Q ni Gushyiraho" #: file.c:960 #, fuzzy msgid "# Failed to be updated." msgstr "#Kuri" #: file.c:963 #, fuzzy msgid "# Invalid value in `update_status' member!" msgstr "#Agaciro in" #: file.c:970 #, fuzzy msgid "# Invalid value in `command_state' member!" msgstr "#Agaciro in" # LOCALIZATION NOTE (filesFolder): # This is the name of the folder that is created parallel to a HTML file # when it is saved "With Images". The %S section is replaced with the # leaf name of the file being saved (minus extension). #: file.c:989 #, fuzzy msgid "" "\n" "# Files" msgstr "#files" #: file.c:993 #, fuzzy msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "#Idosiye imbonerahamwe# stats" #: function.c:759 #, fuzzy msgid "non-numeric first argument to `word' function" msgstr "Bikurikije umubare Itangira Kuri Umumaro" #: function.c:764 #, fuzzy msgid "first argument to `word' function must be greater than 0" msgstr "Itangira Kuri Umumaro Biruta 0" #: function.c:785 #, fuzzy msgid "non-numeric first argument to `wordlist' function" msgstr "Bikurikije umubare Itangira Kuri Umumaro" #: function.c:787 #, fuzzy msgid "non-numeric second argument to `wordlist' function" msgstr "Bikurikije umubare ISEGONDA Kuri Umumaro" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "Byanze E" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "Byanze E" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "Byanze E" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "" #: function.c:1725 #, fuzzy, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Hejuru By'igihe gito IDOSIYE" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Umubare Bya ingingo Kuri Umumaro" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "ku iyi Umumaro" #: function.c:2163 #, fuzzy, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "Kuri Umumaro Ibuze" #: getopt.c:663 #, fuzzy, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s:Ihitamo ni" #: getopt.c:687 #, fuzzy, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: getopt.c:692 #, fuzzy, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: getopt.c:709 getopt.c:882 #, fuzzy, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s:Ihitamo" #: getopt.c:738 #, fuzzy, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s:Ihitamo" #: getopt.c:742 #, fuzzy, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s:Ihitamo" #: getopt.c:768 #, fuzzy, c-format msgid "%s: illegal option -- %c\n" msgstr "%s:Ihitamo" #: getopt.c:771 #, fuzzy, c-format msgid "%s: invalid option -- %c\n" msgstr "%s:Sibyo Ihitamo" #: getopt.c:801 getopt.c:931 #, fuzzy, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s:Ihitamo" #: getopt.c:848 #, fuzzy, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s:Ihitamo ni" #: getopt.c:866 #, fuzzy, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s:Ihitamo Kwemerera" #: hash.c:51 #, fuzzy, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "Bayite kugirango imbonerahamwe# Ububiko" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, fuzzy, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "kugirango kugirango" #: implicit.c:57 #, fuzzy, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "kugirango kugirango" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "" #: implicit.c:476 #, fuzzy, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Ishusho Na:" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "" #: implicit.c:710 #, fuzzy, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Nka" #: implicit.c:730 #, fuzzy, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "kugirango a Na: IDOSIYE" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "By'igihe gito IDOSIYE" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "" # sw/source\ui\utlui\initui.src:RID_SW_SHELLRES.STR_CALC_DEFAULT.text #: job.c:394 #, fuzzy, c-format msgid "*** [%s] Error %d" msgstr "***[%s]Ikosa**" #: job.c:399 msgid " (core dumped)" msgstr "" #: job.c:488 #, fuzzy msgid "*** Waiting for unfinished jobs...." msgstr "***kugirango" #: 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 "" #: 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 #, fuzzy, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Hejuru IDOSIYE" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Bivuye" #: job.c:862 #, fuzzy msgid "write jobserver" msgstr "Kwandika" #: job.c:864 #, fuzzy, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "kugirango" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "Byanze Byanze Kuri E" #: job.c:1387 job.c:2020 #, fuzzy, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "in Byanze" #: job.c:1455 #, fuzzy, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "ku i" #: job.c:1709 #, fuzzy, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "kugirango" #: job.c:1718 #, fuzzy msgid "read jobs pipe" msgstr "Gusoma" #: job.c:1832 #, fuzzy msgid "cannot enforce load limits on this operating system" msgstr "Ibirimo Imbibi ku iyi Sisitemu" #: job.c:1834 #, fuzzy msgid "cannot enforce load limit: " msgstr "Ibirimo" #: 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 "Byanze Byanze Kuri E" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "Ubwoko Tegereza kugirango" #: job.c:2085 #, fuzzy, c-format msgid "%s: Command not found" msgstr "%s:OYA Byabonetse" #: job.c:2145 #, fuzzy, c-format msgid "%s: Shell program not found" msgstr "%s:Porogaramu OYA Byabonetse" #: 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 "$Byahinduwe NONEAHA" #: job.c:2789 #, fuzzy, c-format msgid "Creating temporary batch file %s\n" msgstr "By'igihe gito IDOSIYE" #: job.c:2902 #, fuzzy, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s(Umurongo Igikonoshwa Imvugiro" # crashrep/source\all\crashrep.lng:%OPTIONS_BUTTON%.text #: main.c:291 #, fuzzy msgid "Options:\n" msgstr "Amahitamo..." #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "-B M kugirango Bihuye neza" #: main.c:294 #, fuzzy msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "-Buri gihe Ubwoko Ubwoko Byose" #: main.c:296 #, fuzzy msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "-C bushyinguro Kuri Mbere" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "-D Bya Ibisobanuro" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "--Kosora amakosa Bya Ibisobanuro" #: main.c:303 #, fuzzy msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "-E Ibihinduka" #: main.c:306 #, fuzzy msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "-F IDOSIYE Nka a" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "-h Ifashayobora iyi Ubutumwa Na Gusohoka" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "-i Kwirengagiza Amakosa Amakosa Bivuye Amabwiriza" #: main.c:313 #, fuzzy msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "-Gushyiramo kugirango" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "-j ku Rimwe Bidashira Na: Oya" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "-K Gumana: Ryari:" #: main.c:320 #, fuzzy msgid "" " -l [N], --load-average[=N], --max-load[=N]\n" " Don't start multiple jobs unless load is below " "N.\n" msgstr "" "-L Ibirimo Impuzandengo KININI Ibirimo Gutangira Igikubo Ibirimo ni munsi" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" #: main.c:325 #, fuzzy msgid "" " -n, --just-print, --dry-run, --recon\n" " Don't actually run any commands; just print " "them.\n" msgstr "-N Gucapa Gukoresha Gukoresha Amabwiriza Gucapa" #: main.c:328 #, fuzzy msgid "" " -o FILE, --old-file=FILE, --assume-old=FILE\n" " Consider FILE to be very old and don't remake " "it.\n" msgstr "-o ki/ bishaje IDOSIYE ki/ bishaje Kuri ki/ bishaje Na" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "-P Gucapa Ibyatanzwe SHINGIRO By'imbere Ububikoshingiro" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "-Q Oya Amabwiriza Gusohoka Imimerere NIBA Hejuru Kuri Itariki" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "-R Oya i in" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "-Oya Ibihinduka i in IMPINDURAGACIRO Amagenamiterere" #: main.c:339 #, fuzzy msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "-S Amabwiriza" #: main.c:341 #, fuzzy msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "-Oya Gumana: Bidakora K" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "-T Bya" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "-v Verisiyo i Verisiyo Umubare Bya Ubwoko Na Gusohoka" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "-W Gucapa bushyinguro i KIGEZWEHO bushyinguro" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "--Oya Gucapa bushyinguro Bidakora W ATARIIGIHARWE NIBA ku" #: main.c:352 #, fuzzy msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "-NIBA Gishya IDOSIYE Gishya Kuri Gishya" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "--kidasobanuye Ibihinduka Ryari: kidasobanuye IMPINDURAGACIRO ni" #: main.c:549 #, fuzzy msgid "empty string invalid as file name" msgstr "ubusa Ikurikiranyanyuguti Sibyo Nka IDOSIYE Izina:" #: main.c:630 #, fuzzy, c-format msgid "unknown debug level specification `%s'" msgstr "Kitazwi Kosora amakosa urwego" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s:ITEGEKONGENGA Aderesi" #: 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 "Irengayobora(-) Muyunguruzi... Bivuye Porogaramu" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Kwandika ku Aderesi" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Gusoma ku Aderesi" #: main.c:762 main.c:773 #, fuzzy, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "Igenamiterere" #: main.c:814 #, fuzzy, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "Inzira Gushaka Gushyiraho" #: main.c:1236 #, fuzzy, c-format msgid "%s is suspending for 30 seconds..." msgstr "%sni kugirango amasogonda" #: main.c:1238 #, fuzzy, c-format msgid "done sleep(30). Continuing.\n" msgstr "Byakozwe" #: main.c:1466 #, fuzzy msgid "Makefile from standard input specified twice." msgstr "Bivuye Bisanzwe Iyinjiza" #: main.c:1505 vmsjobs.c:486 #, fuzzy msgid "fopen (temporary file)" msgstr "By'igihe gito IDOSIYE" #: main.c:1511 #, fuzzy msgid "fwrite (temporary file)" msgstr "By'igihe gito IDOSIYE" #: main.c:1640 #, fuzzy msgid "Parallel jobs (-j) are not supported on this platform." msgstr "j OYA ku iyi" #: main.c:1641 #, fuzzy msgid "Resetting to single job (-j1) mode." msgstr "Kuri UMWE Ubwoko" #: main.c:1656 #, fuzzy msgid "internal error: multiple --jobserver-fds options" msgstr "By'imbere Ikosa Igikubo Amahitamo" #: main.c:1664 #, fuzzy, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "By'imbere Ikosa Sibyo Ikurikiranyanyuguti" #: main.c:1674 #, fuzzy msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "Iburira in Ubwoko" #: main.c:1684 msgid "dup jobserver" msgstr "" #: main.c:1687 #, fuzzy msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "Iburira ikoresha Kuri Ubwoko" #: main.c:1710 msgid "creating jobs pipe" msgstr "" #: main.c:1725 msgid "init jobserver pipe" msgstr "" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "" #: main.c:1845 #, fuzzy, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "OYA" #: main.c:1924 #, fuzzy, c-format msgid "Failed to remake makefile `%s'." msgstr "Kuri" #: main.c:1941 #, fuzzy, c-format msgid "Included makefile `%s' was not found." msgstr "OYA Byabonetse" #: main.c:1946 #, fuzzy, c-format msgid "Makefile `%s' was not found" msgstr "OYA Byabonetse" #: main.c:2016 #, fuzzy msgid "Couldn't change back to original directory." msgstr "Guhindura>> Inyuma Kuri Umwimerere bushyinguro" #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Gukora:%s" #: main.c:2140 #, fuzzy msgid "unlink (temporary file): " msgstr "Kureka guhuza By'igihe gito IDOSIYE" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 #, fuzzy msgid "No targets specified and no makefile found" msgstr "Na Oya Byabonetse" #: main.c:2191 msgid "No targets" msgstr "" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "" #: main.c:2222 #, fuzzy msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "Iburira SKEW Gicurasi" #: main.c:2383 #, fuzzy, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Amahitamo Intego" #: main.c:2389 #, fuzzy, c-format msgid "" "\n" "This program built for %s\n" msgstr "Porogaramu kugirango" #: main.c:2391 #, fuzzy, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "Porogaramu kugirango" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "Kuri Ubwoko org" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "i Ihitamo a Umubare Wuzuye" #: main.c:2518 #, fuzzy, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "i Ihitamo a Umubare Wuzuye" #: main.c:2942 #, fuzzy, 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 "" "%sThisni Kigenga i Inkomoko kugirango ni OYA ATARIIGIHARWE kugirango Cyangwa" #: main.c:2948 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "Porogaramu kugirango" #: main.c:2950 #, fuzzy, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "Porogaramu kugirango" #: main.c:2968 #, fuzzy, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "#Ibyatanzwe SHINGIRO Byacapwe ku" #: main.c:2978 #, fuzzy, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "#Ibyatanzwe SHINGIRO ku" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s:Kitazwi bushyinguro" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s:Kitazwi bushyinguro" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s:bushyinguro" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s:bushyinguro" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]:Kitazwi bushyinguro" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]:Kitazwi bushyinguro" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]:bushyinguro" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]:bushyinguro" #: misc.c:285 #, fuzzy msgid ". Stop.\n" msgstr ".Hagarara" # # @name OTHER # # @loc none #: misc.c:306 #, fuzzy, c-format msgid "Unknown error %d" msgstr "Ikosa itazwi" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" # desktop/source\app\ssodlg.src:DLG_SSOLOGIN.text #: misc.c:324 #, fuzzy, c-format msgid "%s: %s" msgstr "%s:%s" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 #, fuzzy msgid "virtual memory exhausted" msgstr "Kitaboneka Ububiko" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s:Ukoresha: Itsinda" #: misc.c:667 msgid "Initialized access" msgstr "" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Ikosa Kuri" #: misc.c:894 #, fuzzy msgid "write error" msgstr "Kwandika" #: read.c:160 msgid "Reading makefiles...\n" msgstr "" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "" #: read.c:317 #, fuzzy, c-format msgid " (no default goal)" msgstr "(Oya Mburabuzi" #: read.c:319 #, fuzzy, c-format msgid " (search path)" msgstr "(Gushaka Inzira" #: read.c:321 #, c-format msgid " (don't care)" msgstr "" #: read.c:323 #, fuzzy, c-format msgid " (no ~ expansion)" msgstr "(Oya" #: read.c:623 #, fuzzy msgid "invalid syntax in conditional" msgstr "Sibyo in" #: read.c:633 msgid "extraneous `endef'" msgstr "" #: read.c:645 read.c:673 variable.c:1316 #, fuzzy msgid "empty variable name" msgstr "ubusa IMPINDURAGACIRO Izina:" #: read.c:662 #, fuzzy msgid "empty `override' directive" msgstr "ubusa" #: read.c:687 #, fuzzy msgid "invalid `override' directive" msgstr "Sibyo" #: read.c:854 #, fuzzy msgid "commands commence before first target" msgstr "Amabwiriza Mbere Itangira Intego" #: read.c:905 #, fuzzy msgid "missing rule before commands" msgstr "Ibuze Mbere Amabwiriza" #: read.c:992 #, fuzzy, c-format msgid "missing separator%s" msgstr "Ibuze Mutandukanya" #: read.c:994 #, fuzzy msgid " (did you mean TAB instead of 8 spaces?)" msgstr "(Impuzandengo- Bya 8 Imyanya" #: read.c:1152 #, fuzzy msgid "missing target pattern" msgstr "Ibuze Intego Ishusho" #: read.c:1154 #, fuzzy msgid "multiple target patterns" msgstr "Igikubo Intego" #: read.c:1158 #, fuzzy, c-format msgid "target pattern contains no `%%'" msgstr "Intego Ishusho Kirimo Oya" #: read.c:1286 #, fuzzy msgid "missing `endif'" msgstr "Ibuze" #: read.c:1377 #, fuzzy msgid "Extraneous text after `endef' directive" msgstr "Umwandiko Nyuma" #: read.c:1411 #, fuzzy msgid "missing `endef', unterminated `define'" msgstr "Ibuze" #: read.c:1454 #, fuzzy, c-format msgid "Extraneous text after `%s' directive" msgstr "Umwandiko Nyuma" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "" #: read.c:1482 msgid "only one `else' per conditional" msgstr "" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Intego IMPINDURAGACIRO Insobanuro" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 #, fuzzy msgid "mixed implicit and static pattern rules" msgstr "Bivanze Na Ishusho" #: read.c:1924 #, fuzzy msgid "mixed implicit and normal rules" msgstr "Bivanze Na Bisanzwe" #: read.c:1954 #, fuzzy, c-format msgid "target `%s' doesn't match the target pattern" msgstr "Intego BIHUYE i Intego Ishusho" #: read.c:1973 read.c:2074 #, fuzzy, c-format msgid "target file `%s' has both : and :: entries" msgstr "Intego IDOSIYE Byombi Na Ibyinjijwe" #: read.c:1979 #, fuzzy, c-format msgid "target `%s' given more than once in the same rule." msgstr "Intego Birenzeho Rimwe in i" #: read.c:1988 #, fuzzy, c-format msgid "warning: overriding commands for target `%s'" msgstr "Iburira Amabwiriza kugirango Intego" #: read.c:1991 #, fuzzy, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "Iburira ki/ bishaje Amabwiriza kugirango Intego" #: read.c:2575 #, fuzzy msgid "warning: NUL character seen; rest of line ignored" msgstr "Iburira Inyuguti Bya Umurongo" #: remake.c:229 #, fuzzy, c-format msgid "Nothing to be done for `%s'." msgstr "Kuri Byakozwe kugirango" #: remake.c:230 #, fuzzy, c-format msgid "`%s' is up to date." msgstr "`%s'ni Hejuru Kuri Itariki" #: remake.c:297 #, fuzzy, c-format msgid "Pruning file `%s'.\n" msgstr "IDOSIYE" #: remake.c:349 #, fuzzy, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sNoKuri Ubwoko Intego" #: remake.c:351 #, fuzzy, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sNoKuri Ubwoko Intego ku" #: remake.c:378 #, fuzzy, c-format msgid "Considering target file `%s'.\n" msgstr "Intego IDOSIYE" #: remake.c:385 #, fuzzy, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Na Byanze Kuri Kuvugurura IDOSIYE" #: remake.c:400 #, fuzzy, c-format msgid "File `%s' was considered already.\n" msgstr "Idosiye" #: remake.c:410 #, fuzzy, c-format msgid "Still updating file `%s'.\n" msgstr "Ivugurura IDOSIYE" #: remake.c:413 #, fuzzy, c-format msgid "Finished updating file `%s'.\n" msgstr "Ivugurura IDOSIYE" #: remake.c:434 #, fuzzy, c-format msgid "File `%s' does not exist.\n" msgstr "Idosiye OYA" #: remake.c:441 #, fuzzy, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "***IDOSIYE a kirekire Imikemurire Igihe" #: remake.c:454 remake.c:962 #, fuzzy, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "kugirango" #: remake.c:456 remake.c:964 #, fuzzy, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Byabonetse kugirango" #: remake.c:462 remake.c:970 #, fuzzy, c-format msgid "Using default commands for `%s'.\n" msgstr "Mburabuzi Amabwiriza kugirango" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "" #: remake.c:601 #, fuzzy, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Bya Intego IDOSIYE" #: remake.c:607 #, fuzzy, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Bya" #: remake.c:620 #, fuzzy, c-format msgid "Giving up on target file `%s'.\n" msgstr "Hejuru ku Intego IDOSIYE" #: remake.c:625 #, fuzzy, c-format msgid "Target `%s' not remade because of errors." msgstr "OYA Bya Amakosa" #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "ni Itondekanya kugirango Intego" #: remake.c:682 #, fuzzy, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Bya Intego OYA" #: remake.c:687 #, fuzzy, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "ni Intego" #: remake.c:690 #, fuzzy, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "ni Intego" #: remake.c:708 #, fuzzy, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "ni MAHARAKUBIRI Na Oya" #: remake.c:715 #, fuzzy, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "Amabwiriza kugirango Na Oya Byahinduwe" #: remake.c:720 #, fuzzy, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Kuri Buri gihe Ubwoko Ibendera" #: remake.c:728 #, fuzzy, c-format msgid "No need to remake target `%s'" msgstr "Kuri Intego" #: remake.c:730 #, fuzzy, c-format msgid "; using VPATH name `%s'" msgstr ";ikoresha Izina:" #: remake.c:750 #, fuzzy, c-format msgid "Must remake target `%s'.\n" msgstr "Intego" #: remake.c:756 #, fuzzy, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr "Kwirengagiza Izina:" #: remake.c:765 #, fuzzy, c-format msgid "Commands of `%s' are being run.\n" msgstr "Bya Gukoresha" #: remake.c:772 #, fuzzy, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Kuri Intego IDOSIYE" #: remake.c:775 #, fuzzy, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Intego IDOSIYE" #: remake.c:778 #, fuzzy, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "IDOSIYE Q" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Idosiye Igihe in i" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Idosiye Igihe S in i" #: remake.c:1511 #, fuzzy, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "" ".Project- Id- Version: basctl\n" "POT- Creation- Date: 2003- 12- 07 17: 13+ 02\n" "PO- Revision- Date: 2004- 11- 04 10: 13- 0700\n" "Last- Translator: Language- Team:< en@ li. org> MIME- Version: 1. 0\n" "Content- Type: text/ plain; charset= UTF- 8\n" "Content- Transfer- Encoding: 8bit\n" "X- Generator: KBabel 1. 0\n" "." #: remote-cstms.c:125 #, fuzzy, c-format msgid "Customs won't export: %s\n" msgstr "Kohereza" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" #: rule.c:575 msgid " terminal." msgstr "" #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "" #: signame.c:85 #, fuzzy msgid "unknown signal" msgstr "Kitazwi" #: signame.c:93 msgid "Hangup" msgstr "" #: signame.c:96 msgid "Interrupt" msgstr "Hagarikira aho" #: signame.c:99 msgid "Quit" msgstr "Kuvamo" #: signame.c:102 msgid "Illegal Instruction" msgstr "" #: signame.c:105 #, fuzzy msgid "Trace/breakpoint trap" msgstr "Aho bahagarara" #: signame.c:110 msgid "Aborted" msgstr "" #: signame.c:113 msgid "IOT trap" msgstr "" #: signame.c:116 msgid "EMT trap" msgstr "" #: signame.c:119 #, fuzzy msgid "Floating point exception" msgstr "Akadomo Irengayobora(-)" #: signame.c:122 msgid "Killed" msgstr "" #: signame.c:125 #, fuzzy msgid "Bus error" msgstr "Ikosa" #: signame.c:128 msgid "Segmentation fault" msgstr "" #: signame.c:131 #, fuzzy msgid "Bad system call" msgstr "Sisitemu" #: signame.c:134 msgid "Broken pipe" msgstr "" #: signame.c:137 msgid "Alarm clock" msgstr "" #: signame.c:140 msgid "Terminated" msgstr "" #: signame.c:143 #, fuzzy msgid "User defined signal 1" msgstr "1." #: signame.c:146 #, fuzzy msgid "User defined signal 2" msgstr "2." #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "" #: signame.c:157 msgid "Power failure" msgstr "" #: signame.c:160 msgid "Stopped" msgstr "Kyahagariswe" #: signame.c:163 #, fuzzy msgid "Stopped (tty input)" msgstr "Iyinjiza" #: signame.c:166 #, fuzzy msgid "Stopped (tty output)" msgstr "Ibisohoka" #: signame.c:169 msgid "Stopped (signal)" msgstr "" #: signame.c:172 #, fuzzy msgid "CPU time limit exceeded" msgstr "Igihe" #: signame.c:175 #, fuzzy msgid "File size limit exceeded" msgstr "Idosiye Ingano" #: signame.c:178 #, fuzzy msgid "Virtual timer expired" msgstr "Byarengeje igihe" #: signame.c:181 #, fuzzy msgid "Profiling timer expired" msgstr "Byarengeje igihe" #: signame.c:187 #, fuzzy msgid "Window changed" msgstr "Byahinduwe" #: signame.c:190 msgid "Continued" msgstr "" #: signame.c:193 #, fuzzy msgid "Urgent I/O condition" msgstr "Ibisabwa" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "" #: signame.c:203 msgid "SIGWIND" msgstr "" #: signame.c:206 msgid "SIGPHONE" msgstr "" #: signame.c:212 msgid "Resource lost" msgstr "" #: signame.c:215 msgid "Danger signal" msgstr "" #: signame.c:218 #, fuzzy msgid "Information request" msgstr "Kubaza..." #: signame.c:221 #, fuzzy msgid "Floating point co-processor not available" msgstr "Akadomo OYA Bihari" #: 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 "" # Lock column values #: variable.c:1369 msgid "default" msgstr "mburabuzi" #: variable.c:1372 msgid "environment" msgstr "" #: variable.c:1375 msgid "makefile" msgstr "" #: variable.c:1378 #, fuzzy msgid "environment under -e" msgstr "E" #: variable.c:1381 #, fuzzy msgid "command line" msgstr "Komandi: Umurongo" #: variable.c:1384 msgid "`override' directive" msgstr "" #: variable.c:1387 msgid "automatic" msgstr "Byikoresha" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr "(Bivuye Umurongo" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "#IMPINDURAGACIRO Gushyiraho imbonerahamwe# stats" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "#IMPINDURAGACIRO Uduciro" #: variable.c:1467 #, fuzzy msgid "" "\n" "# No pattern-specific variable values." msgstr "#Ishusho IMPINDURAGACIRO Uduciro" #: variable.c:1469 #, fuzzy, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "#%uIshusho IMPINDURAGACIRO Uduciro" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "" #: vmsfunctions.c:94 #, fuzzy, c-format msgid "sys$search failed with %d\n" msgstr "sys Gushaka Byanze Na:" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "" #: vmsjobs.c:175 #, fuzzy, c-format msgid "internal error: `%s' command_state" msgstr "By'imbere Ikosa" #: vmsjobs.c:268 #, fuzzy, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-Iburira" #: vmsjobs.c:284 #, fuzzy, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-Iburira Gicurasi Kuri Gushoboza Bivuye" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "" #: vmsjobs.c:457 #, fuzzy, c-format msgid "Unknown builtin command '%s'\n" msgstr "Komandi:" #: vmsjobs.c:479 #, fuzzy, c-format msgid "Error, empty command\n" msgstr "ubusa" #: vmsjobs.c:491 #, fuzzy, c-format msgid "Redirected input from %s\n" msgstr "Iyinjiza Bivuye" #: vmsjobs.c:498 #, fuzzy, c-format msgid "Redirected error to %s\n" msgstr "Ikosa Kuri" #: vmsjobs.c:505 #, fuzzy, c-format msgid "Redirected output to %s\n" msgstr "Ibisohoka Kuri" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" #: vpath.c:588 #, fuzzy msgid "# No `vpath' search paths." msgstr "#Gushaka Inzira" #: vpath.c:590 #, fuzzy, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "#%u`Gushaka Inzira" #: vpath.c:593 #, fuzzy msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "#Rusange IMPINDURAGACIRO Gushaka Inzira" #: vpath.c:599 #, fuzzy msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "#IMPINDURAGACIRO Gushaka Inzira" #, fuzzy #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Ikosa Mo Imbere" #, fuzzy #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "a" #, fuzzy #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "OYA j Cyangwa NIBA exe ni OYA Bihari" #, fuzzy #~ msgid "Resetting make for single job mode." #~ msgstr "Ubwoko kugirango UMWE Ubwoko" #, fuzzy #~ msgid "no file name for `%sinclude'" #~ msgstr "Oya IDOSIYE Izina: kugirango" #, fuzzy #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "Intego Ibibabi Ishusho ubusa" make-dfsg-3.81.orig/po/stamp-po0000644000175000017500000000001210416553102016603 0ustar srivastasrivastatimestamp make-dfsg-3.81.orig/po/sv.gmo0000644000175000017500000006222010416553102016265 0ustar srivastasrivastaÞ•)d ¬àáþ&>N!W-y §-Èö' 4 K"Y |†"£ ÆÓ(â 2M` r|‹”¥ ®¹È.à1AZrŒ(ªÓ&è*&:+a+¹#Î#ò)-@n‡$ž9Ãý3P.j™µÐ=à" A W +s Ÿ ¹ ,Ó !%!,D!-q! Ÿ!&À!ç!"'"/G"1w" ©"µ"#Ì"#ð"6#K#g#y##4«#>à# $*)$T$l$ t$"€$'£$Ë$Ú$é$û$ % %!% 9%%F%l%$Œ%=±%:ï% *&0K&|& ›&+¥&!Ñ& ó&' '('1'E'['$q''–'¾'#Þ'("(@(,Y(†()¤(Î(!ç(& )0)P) W)d)m)%)§) »)Å)#Ì)0ð)'!*3I*+}*©*-Å*'ó*+5+<8+!u+—+ µ+*À+ë+', 0,6:, q,-,-­,1Û, -%-39-m-r-ˆ-(ž-)Ç-/ñ-6!.X.p.Š.1£.-Õ.'/#+/ O/]/f/n//œ/¤/µ/É/&Þ/60)<0(f0 0*š0Å0#Û0&ÿ0&1F1d1u11¨1!½1ß1õ1! 2-2C2_2n2†2š2(¯2 Ø21â2333H3|33˜3 Ì3%Ù3ÿ344 74E4!`4‚4 –4¢4·4Ç46Ú4.58@5y55¨5"¼53ß506D6a6'69§6á6&ê67!7>7R7i7'‰7±7Ê7-Í71û72-8`8€88,ª82×8* 9596U9,Œ9"¹93Ü9):"::1]:&:¶:Å:0ß:;0;=I;9‡;1Á;.ó;H"<,k<"˜<0»<ì<Gü<D>]>%x> ž>¬>!µ>/×>?2%?X?(r?›? ®?/¼? ì?"÷?%@ @@ L@/Z@ Š@–@®@Ê@ß@ô@ ý@A A A )A6AGA,[A-ˆA¶AÕAêAB$#BHB(cB-ŒB&ºB.áB.C?C(TC(}C$¦C+ËC÷CD"*D5MDƒD/ DÐD.ìDE8EQECaE¥EÅE áE.F1FMF&gFŽF%¬F&ÒF'ùF !G&BGiG‚G(›G>ÄG7H ;HIH aH‚H<¢HßHüH II4P7gP-ŸPÍP.êP'QAQ^QIcQ'­Q"ÕQøQ*R,R.JR yR3ƒR ·R<ÄR<S?>S~S™S8­SæSïST4T0KT3|TC°TôTU/U/LU3|U1°U&âU VVV'V#8V \VfVyV‘VªV2ÇV-úV)(WRW?[W›W%ªW(ÐW)ùW#X @XMXdX}X#‘XµXÆX%×XýXY1Y@YXYgY3{Y ¯Y*ºY>åY>$Z'cZ>‹Z ÊZ"ÖZùZ ["[6[L[%e[‹[[£[³[Ä[3Ø[* \C7\{\’\'ª\Ò\2ò\,%]R]o]0]K¾] ^"^5^D^`^s^,…^4²^ç^ø^5ý^93_8m_¦_Ä_#Û_%ÿ_,%`*R`!}`5Ÿ`4Õ`! a8,a*ea*a>»a"úa b*b*Ebpb‹bJ¢b@íb:.c4icOžc-îc$d6Adxd# —cœ~¾k(;ÙýN"¬ªÍÔnlG`ìW6ŒøöÀ_®*QL'…”ÐÌt,õÏ×ÅmÑuˆáfŠ j•iè€FåDÞh$EÝ¥-b&ÃTæƒ[X{3¢ôp<ñØH¡©™š8˜ã7Ò½ŸÖ"r³òSBž– ßÿ Ž éà‹:„ùv9RV#O})Ua)x0£Z§ÉwÇ›yþº YÁâÊ|²¹2P¤Æ+s!^&î‡(µ·Ú  ‰ä  zK»°1Ó’‚dë\Jü  %Ûq]¼¸ð´­ÎÄ$M%“goeúÜ/‘5¦†¨¶ê¿Ëíç.«>ûÈ!I÷±?4ïÕC=óA'¯@ # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Counted %d args in failed launch Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.79.1 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-08-02 14:28+0200 Last-Translator: Tomas Gradin Language-Team: Swedish MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Transfer-Encoding: 8bit # %u "vpath"-sökvägar. # %u implicita regler, %u # %u mönsterspecifika variabelvärden # Kataloger # Filer # Färdigställde Make-databas %s # Allmän sökväg (enligt "VPATH"-variabeln): # # Make-databas, utskriven %s # Ingen allmän sökväg (enligt "VPATH"-variabeln). # Inga implicita regler. # Inga mönsterspecifika variabelvärden. # VPATH-sökvägar # Variabler Räknade till %d argument vid misslyckad start Datum %s Bortser från VPATH-namnet "%s". uid = %d, gid = %d, flaggor = 0%o. (inbyggd): (minnesdump) (var avsikten TAB i stället för 8 mellanslag?) (oviktigt) (från "%s", rad %lu): (namnet kan vara avkortat) (inget standardmål) (ingen ~-expansion) (fjärr) (sökväg) filer, omöjligheter hittills. slutregler.# Skapar också:# Kommandoradsmål.# Kommandokörning pågår (DETTA ÄR ETT FEL).# Beroendekommandon körs (DETTA ÄR ETT FEL).# Uppdateringen misslyckades.# Filen finns inte.# Filen har uppdaterats.# Filen har inte uppdaterats.# Filen är ett övergående beroende.# Filen är mycket gammal.# Implicit regelsökning har genomförts.# Implicit regelsökning har inte genomförts.# Implicit/statisk mönsterstam: "%s" # Ogiltigt värde i medlem av "command_state"!# Ogiltigt värde i medlem av "update_status"!# Senast ändrad %s # Ändringstiden har inte kontrollerats.# Behöver uppdateras (-q har angivits).# Låtsasmål (nödvändig för .PHONY).# Värdefull fil (nödvändig för .PRECIOUS).# Uppdateringen lyckades.# kommandon att utföra# %s (enhet %d, inod [%d,%d,%d]): # %s (enhet %d, inod [%d,%d,%d]): kunde inte öppnas. # %s (enhet %ld, inod %ld): # %s (enhet %ld, inod %ld): kunde inte öppnas. # %s (nyckel %s, mtid %d): # %s (nyckel %s, mtid %d): kunde inte öppnas. # %s: kunde inte ta status. # Inga "vpath"-sökvägar.# Inte ett mål:%s (rad %d) Felaktigt skalsammanhang (!unixy && !batch_mode_shell) %s suspenderas i 30 sekunder...%s: Kommandot hittades inte%s: Skalprogrammet hittades inte%s: Tidsvärde utanför gränser; ersätter med %s%s: otillåten flagga -- %c %s: ogiltig flagga -- %c %s: flaggan "%c%s" tar inget argument %s: flaggan "%s" är tvetydig %s: flaggan "%s" kräver ett argument %s: flaggan "--%s" tar inget argument %s: flaggan "-W %s" tar inget argument %s: flaggan "-W %s" är tvetydig %s: flaggan kräver ett argument -- %c %s: okänd flagga "%c%s" %s: okänd flagga "--%s" %sIngen regel för att skapa målet "%s"%s%sIngen regel för att skapa målet "%s", som behövs till "%s"%s*** Arkivmedlemmen "%s" kan vara felaktig; ej borttagen*** Avbrott. *** Tar bort filen "%s"*** Tar bort övergångsfilen "%s"*** Inväntar oavslutade jobb...*** [%s] Arkivmedlemmen "%s" kan vara felaktig; ej borttagen*** [%s] Tar bort filen "%s"*** [%s] Fel %d*** [%s] Fel 0x%x*** [%s] Fel 0x%x (ignoreras)-varning, CTRL-Y lämnar efter sig underprocess(er). -varning, CTRL-Y-hantering kanske behöver återställas från DCL. . Stannar. .LIBPATTERNS-elementet "%s" är inte något mönster; använder VPATH-namnet "%s"AvbrutenAlarmklockaUndviker rekursion orsakad av implicit regel. FEL: num_pattern_rules felaktigt! %u != %uINBYGGT CD %s INBYGGT RM %s INBYGGT [%s][%s] Felaktigt systemanropLedningsbrottBussfelCPU-tidsgräns överskredsBarn avslutadesDet cirkulära beroendet %s <- %s släpptes.Städar bort tillfällig omgångsfil %s Städar bort tillfällig omgångsfil %s Kommer att bortse från kommandon för "%s" till förmån för dem som gäller "%s".Kommandon för filen "%s" hittades genom sökning med implicit regel,Kommandon för "%s" körs. Kommandon angavs för filen "%s" på %s:%lu,Överväger målfilen "%s". FortsatteKunde inte återgå till ursprungskatalogen.Skapar tillfällig omgångsfil %s Nuvarande tidCustoms kommer inte att exportera %s FarosignalEmulatorfällaFel vid avknoppning, %d Fel, tomt kommando Utför %s i stället Överflödig text efter direktivet "%s"Överflödig text efter direktivet "endef"Misslyckades med att återskapa makefilen "%s".Misslyckades med att återskapa målfilen "%s". Filen "%s" finns inte. Filen "%s" har redan övervägts. Filstorleksgräns överskredsFärdigställde de nödvändiga förutsättningarna för målfilen "%s". Slutförde uppdaterandet av filen "%s". Flyttalsprocessor inte tillgängligFlyttalsundantagHittade en implicit regel för "%s". Hittade den nödvändiga "%s" som VPATH "%s" Ger upp med målfilen "%s". AvringdI/O-tillfälleIO-fällaOtillåten instruktionDen inkluderade makefilen "%s" hittades inte.InformationsbegäranAvbrottDödadLevande barnprocess 0x%08lx (%s) PID %ld %s Letar efter en regel med övergångsfilen "%s". Letar efter en implicit regel för "%s". Letar efter en implicit regel för arkivmedlemmen "%s". Makefilen "%s" torde loopa; återskapas inte. Makefilen "%s" hittades inteMakefil från standardinkanalen angavs dubbelt.Medlem "%s"%s: %ld byte vid %ld (%ld). Måste återskapa målet "%s". IngaInga kommandon eller nödvändiga förutsättningar för "%s" har förändrats. Hittade ingen implicit regel för "%s". Målet "%s" behöver inte återskapasInga målInga mål angavs och ingen makefil hittadesInget behöver göras för "%s".Erhöll symbol för barnprocessen 0x%08lx (%s). Flaggor: Parallella jobb (-j) stöds inte på denna plattform.StrömavbrottDen nödvändiga förutsättningen "%s" är nyare än målet "%s". Den nödvändiga förutsättningen "%s" är äldre än målet "%s". Den nödvändiga förutsättningen "%s" för målet "%s" finns inte. Profileringstidur löpte utBeskär filen "%s". För upp barnprocessen 0x%08lx (%s) PID %ld%s på kedjan. AvslutadLäser makefil "%s"Läser makefiler... Inhöstar misslyckad barnprocess: 0x%08lx PID %ld %s Inhöstar lyckad barnprocess: 0x%08lx PID %ld %s Misslyckades nyligen med att uppdatera filen "%s". Den rekursiva variabeln "%s" hänvisar till sig själv (så småningom)Felkanal omdirigerad till %s Inkanal omdirigerad till %s Utkanal omdirigerad till %s Avvisar det omöjliga implicita beroendet "%s". Avvisar det omöjliga regelbaserade beroendet "%s". Frigjorde symbol för barnprocessen 0x%08lx (%s). Återställer till enkeljobbsläge (-j1).Miste resursSIGPHONESIGWINDSegmenteringsfelUppdaterar fortfarande filen "%s". StoppadesStoppades (signal)Stoppades (tty-läsning)Stoppades (tty-utskrift)Målfilen "%s" återskapades. Målet "%s" är dubbelkolon och har inga beroenden. Målet "%s" återskapades inte på grund av fel.Målfilen "%s" behöver återskapas med -q. AvslutadDe nödvändiga förutsättningarna för "%s" håller på att skapas. SpårningsfällaPrövar det implicita beroendet "%s". Prövar mönsterregel med stammen "%.*s". Prövar det regelbaserade beroendet "%s". Okänt inbyggt kommando "%s" Okänt fel %dUppdaterar slutmål... Uppdaterar makefiler... Brådskande I/O-lägeAnvändning: %s [flaggor] [mål] ... Användarsignal 1Användarsignal 2Använder standardkommandon för "%s". Virtuellt tidur löpte utVarning: Tom omdirigering Fönster ändrat[%s] Fel %d (ignoreras)"%s" är färsk."override"-direktivförsök att använda en funktion som inte stöds: "%s"automatiskmen "%s" anses nu vara samma fil som "%s".kan inte ändra namn från dubbelkolon "%s" till enkelkolon "%s"kan inte ändra namn från enkelkolon "%s" till dubbelkolon "%s"kan inte upprätthålla lastbegränsning: kan inte upprätthålla lastbegränsningar i detta operativsystemkommandoradkommandon inleds före första måletskapar jobbledningnormalfärdig med sleep(30). Fortsätter. duplicerar jobbservertomt "override"-direktiven tom sträng är ett ogiltigt filnamntomt variabelnamnmiljömiljö enligt -eöverflödigt "%s"överflödigt "endef"find_and_set_shell-sökvägen gav default_shell = %s find_and_set_shell ger default_shell = %s det första argumentet till funktionen "word" måste vara större än 0fopen (tillfällig fil)fwrite (tillfällig fil)iordningställer ledning till jobbserverinternt fel: "%s" command_stateinternt fel: ogiltig "--jobserver-fds"-sträng "%s"internt fel: flera "--jobserver-fds"-flaggorogiltigt "override"-direktivogiltig syntax i villkorssatslbr$ini_control misslyckades och gav status = %dlbr$set_module misslyckades med att extrahera modulinformation, status = %dmakefil"endef" saknas, oavslutat "define""endif" saknasregel saknas före kommandonseparator saknas%smålmönster saknasblandade implicita regler och normala reglerblandade implicita regler och statiska mönsterreglerflera målmönsteringaicke-numeriskt första argument till funktionen "word"icke-numeriskt första argument till funktionen "wordlist"icke-numeriskt andra argument till funktionen "wordlist"endast ett "else" per villkorläser från jobbledningsys$search misslyckades och gav %d målet "%s" motsvarar inte målmönstretmålet "%s" anges flera gånger i samma regel.målfilen "%s" har både poster med : och ::målmönstret innehåller inget "%%"flaggan "-%c" kräver ett positivt heltal som argumentnydatering av arkivmedlem är inte tillgängligt i VMSnydatera: Arkivet "%s" finns intenydatera: Felaktig returkod från ar_member_touch på "%s"nydatera: medlemmen "%s" finns inte i "%s"nydatera: "%s" är inte något giltigt arkivkan inte öppna biblioteket "%s" för att slå upp medlemmen "%s"okänd felsökningsnivå "%s" angivenokänd signalavlänka (tillfällig fil): oavslutat funktionsanrop "%s": "%c" saknasoavslutad variabelreferensvirtuellt minne uttömtvarning: Klockförskjutning upptäckt. Bygget kan ha blivit ofullständigt.varning: -jN framtvingat i del-make: inaktiverar jobbserverläge.varning: NUL-tecken upptäckt, bortser från resten av radenvarning: bortser från gamla kommandon för målet "%s"varning: jobbserver otillgänglig: använder -j1. Lägg till "+" i föräldraregeln.varning: åsidosätter kommandon för målet "%s"varning: odefinierad variabel "%.*s"windows32_openpipe (): process_init_fd() misslyckades skriver till jobbservermake-dfsg-3.81.orig/po/sv.po0000644000175000017500000013505410416553102016127 0ustar srivastasrivasta# @(#) Swedish messages v1.15 for make 3.79.1 # Copyright (C) 2002 Free Software Foundation, Inc. # Tomas Gradin , 1996-2002. # msgid "" msgstr "" "Project-Id-Version: make 3.79.1\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: 2002-08-02 14:28+0200\n" "Last-Translator: Tomas Gradin \n" "Language-Team: Swedish \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=iso-8859-1\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "försök att använda en funktion som inte stöds: \"%s\"" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "nydatering av arkivmedlem är inte tillgängligt i VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "nydatera: Arkivet \"%s\" finns inte" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "nydatera: \"%s\" är inte något giltigt arkiv" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "nydatera: medlemmen \"%s\" finns inte i \"%s\"" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "nydatera: Felaktig returkod från ar_member_touch på \"%s\"" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" "lbr$set_module misslyckades med att extrahera modulinformation, status = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control misslyckades och gav status = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "kan inte öppna biblioteket \"%s\" för att slå upp medlemmen \"%s\"" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Medlem \"%s\"%s: %ld byte vid %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (namnet kan vara avkortat)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Datum %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, flaggor = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Avbrott.\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Arkivmedlemmen \"%s\" kan vara felaktig; ej borttagen" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Arkivmedlemmen \"%s\" kan vara felaktig; ej borttagen" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Tar bort filen \"%s\"" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Tar bort filen \"%s\"" #: commands.c:599 msgid "# commands to execute" msgstr "# kommandon att utföra" #: commands.c:602 msgid " (built-in):" msgstr " (inbyggd):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (från \"%s\", rad %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Kataloger\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: kunde inte ta status.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (nyckel %s, mtid %d): kunde inte öppnas.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (enhet %d, inod [%d,%d,%d]): kunde inte öppnas.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (enhet %ld, inod %ld): kunde inte öppnas.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (nyckel %s, mtid %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (enhet %d, inod [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (enhet %ld, inod %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Inga" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " filer, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "inga" #: dir.c:1058 msgid " impossibilities" msgstr " omöjligheter" #: dir.c:1062 msgid " so far." msgstr " hittills." #: dir.c:1079 #, fuzzy, c-format msgid " impossibilities in %lu directories.\n" msgstr " omöjligheter i %u kataloger.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Den rekursiva variabeln \"%s\" hänvisar till sig själv (så småningom)" #: expand.c:266 msgid "unterminated variable reference" msgstr "oavslutad variabelreferens" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Kommandon angavs för filen \"%s\" på %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "Kommandon för filen \"%s\" hittades genom sökning med implicit regel," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "men \"%s\" anses nu vara samma fil som \"%s\"." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" "Kommer att bortse från kommandon för \"%s\" till förmån för dem som gäller " "\"%s\"." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "kan inte ändra namn från enkelkolon \"%s\" till dubbelkolon \"%s\"" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "kan inte ändra namn från dubbelkolon \"%s\" till enkelkolon \"%s\"" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Tar bort övergångsfilen \"%s\"" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** Tar bort övergångsfilen \"%s\"" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Tidsvärde utanför gränser; ersätter med %s" #: file.c:782 msgid "Current time" msgstr "Nuvarande tid" #: file.c:881 msgid "# Not a target:" msgstr "# Inte ett mål:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Värdefull fil (nödvändig för .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Låtsasmål (nödvändig för .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Kommandoradsmål." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# En standardmakefil (eller enligt MAKEFILES)." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Implicit regelsökning har genomförts." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Implicit regelsökning har inte genomförts." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Implicit/statisk mönsterstam: \"%s\"\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Filen är ett övergående beroende." #: file.c:919 msgid "# Also makes:" msgstr "# Skapar också:" #: file.c:925 msgid "# Modification time never checked." msgstr "# Ändringstiden har inte kontrollerats." #: file.c:927 msgid "# File does not exist." msgstr "# Filen finns inte." #: file.c:929 msgid "# File is very old." msgstr "# Filen är mycket gammal." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Senast ändrad %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Filen har uppdaterats." #: file.c:937 msgid "# File has not been updated." msgstr "# Filen har inte uppdaterats." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Kommandokörning pågår (DETTA ÄR ETT FEL)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Beroendekommandon körs (DETTA ÄR ETT FEL)." #: file.c:953 msgid "# Successfully updated." msgstr "# Uppdateringen lyckades." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Behöver uppdateras (-q har angivits)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Uppdateringen misslyckades." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# Ogiltigt värde i medlem av \"update_status\"!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# Ogiltigt värde i medlem av \"command_state\"!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Filer" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "icke-numeriskt första argument till funktionen \"word\"" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "det första argumentet till funktionen \"word\" måste vara större än 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "icke-numeriskt första argument till funktionen \"wordlist\"" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "icke-numeriskt andra argument till funktionen \"wordlist\"" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(In) misslyckades (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "create_child_process: DuplicateHandle(Fel) misslyckades (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() misslyckades (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe (): process_init_fd() misslyckades\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Städar bort tillfällig omgångsfil %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Otillräckligt antal argument (%d) till funktionen \"%s\"" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Ej implementerat på denna plattform: funktionen \"%s\"" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "oavslutat funktionsanrop \"%s\": \"%c\" saknas" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: flaggan \"%s\" är tvetydig\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: flaggan \"--%s\" tar inget argument\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: flaggan \"%c%s\" tar inget argument\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: flaggan \"%s\" kräver ett argument\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: okänd flagga \"--%s\"\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: okänd flagga \"%c%s\"\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: otillåten flagga -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ogiltig flagga -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: flaggan kräver ett argument -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: flaggan \"-W %s\" är tvetydig\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: flaggan \"-W %s\" tar inget argument\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Letar efter en implicit regel för \"%s\".\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Letar efter en implicit regel för arkivmedlemmen \"%s\".\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Undviker rekursion orsakad av implicit regel.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Prövar mönsterregel med stammen \"%.*s\".\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Avvisar det omöjliga implicita beroendet \"%s\".\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Avvisar det omöjliga regelbaserade beroendet \"%s\".\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Prövar det implicita beroendet \"%s\".\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Prövar det regelbaserade beroendet \"%s\".\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Hittade den nödvändiga \"%s\" som VPATH \"%s\"\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Letar efter en regel med övergångsfilen \"%s\".\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (tillfällig fil)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Fel 0x%x (ignoreras)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Fel 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Fel %d (ignoreras)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Fel %d" #: job.c:399 msgid " (core dumped)" msgstr " (minnesdump)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Inväntar oavslutade jobb..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Levande barnprocess 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (fjärr)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Inhöstar misslyckad barnprocess: 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Inhöstar lyckad barnprocess: 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Städar bort tillfällig omgångsfil %s\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Tar bort barnprocessen 0x%08lx PID %ld %s från kedjan.\n" #: job.c:862 msgid "write jobserver" msgstr "skriver till jobbserver" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Frigjorde symbol för barnprocessen 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() misslyckades med processtart (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Räknade till %d argument vid misslyckad start\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "För upp barnprocessen 0x%08lx (%s) PID %ld%s på kedjan.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Erhöll symbol för barnprocessen 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "läser från jobbledning" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "kan inte upprätthålla lastbegränsningar i detta operativsystem" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "kan inte upprätthålla lastbegränsning: " #: 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 "process_easy() misslyckades med processtart (e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "make inhöstade barnprocessen pid %d, inväntar pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Kommandot hittades inte" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Skalprogrammet hittades inte" #: 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 ändrades (var \"%s\", är nu \"%s\")" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Skapar tillfällig omgångsfil %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (rad %d) Felaktigt skalsammanhang (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Flaggor:\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "Ignoreras av kompatibilitetsskäl" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "Skriv ut massor av felsökningsinformation" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "Skriv ut olika sorters felsökningsinformation" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "Skriv ut detta meddelande och avsluta" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "Ignorera kommandofel" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "Tillåt N samtidiga jobb; oändligt många om inget antal anges" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "Fortsätt även om vissa mål inte kan skapas" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "Skriv ut makes interna databas" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "Kör inga kommandon; slutstatus visar färskheten" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "Inaktivera de inbyggda implicita reglerna" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "Inaktivera de inbyggda variabelinställningarna" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "Nydatera mål i stället för att återskapa dem" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "Skriv ut makes versionsnummer och avsluta" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "Skriv ut aktuell katalog" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "Stäng av -w, även om det är implicit påslaget" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "Varna vid användning av en odefinierad variabel" #: main.c:549 msgid "empty string invalid as file name" msgstr "en tom sträng är ett ogiltigt filnamn" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "okänd felsökningsnivå \"%s\" angiven" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s: Avbrott/Undantag fångat (kod = 0x%x, adress = 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" "Ett ohanterat undantagsfilter anropades från programmet %s\n" "Undantagskod = %x\n" "Undantagsflaggor = %x\n" "Undantagsadress = %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Åtkomstförseelse: skrivinstruktion på adressen %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Åtkomstförseelse: läsinstruktion på adressen %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 ger 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-sökvägen gav default_shell = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s suspenderas i 30 sekunder..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "färdig med sleep(30). Fortsätter.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Makefil från standardinkanalen angavs dubbelt." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (tillfällig fil)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (tillfällig fil)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Parallella jobb (-j) stöds inte på denna plattform." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Återställer till enkeljobbsläge (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "internt fel: flera \"--jobserver-fds\"-flaggor" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "internt fel: ogiltig \"--jobserver-fds\"-sträng \"%s\"" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "varning: -jN framtvingat i del-make: inaktiverar jobbserverläge." #: main.c:1684 msgid "dup jobserver" msgstr "duplicerar jobbserver" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "varning: jobbserver otillgänglig: använder -j1. Lägg till \"+\" i " "föräldraregeln." #: main.c:1710 msgid "creating jobs pipe" msgstr "skapar jobbledning" #: main.c:1725 msgid "init jobserver pipe" msgstr "iordningställer ledning till jobbserver" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Uppdaterar makefiler...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefilen \"%s\" torde loopa; återskapas inte.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Misslyckades med att återskapa makefilen \"%s\"." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Den inkluderade makefilen \"%s\" hittades inte." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Makefilen \"%s\" hittades inte" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Kunde inte återgå till ursprungskatalogen." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "Utför på nytt:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "avlänka (tillfällig fil): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Inga mål angavs och ingen makefil hittades" #: main.c:2191 msgid "No targets" msgstr "Inga mål" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Uppdaterar slutmål...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "varning: Klockförskjutning upptäckt. Bygget kan ha blivit ofullständigt." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Användning: %s [flaggor] [mål] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" "Anmäl fel till .\n" "Skicka synpunkter på översättningen till .\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "flaggan \"-%c\" kräver ett positivt heltal som argument" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "flaggan \"-%c\" kräver ett positivt heltal som argument" #: main.c:2942 #, fuzzy, 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 "" ", av Richard Stallman och Roland McGrath.\n" "%sByggd för %s\n" "%sCopyright © 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" "%s\tFree Software Foundation, Inc.\n" "%sDetta är fri programvara; se källkoden för kopieringsvillkor.\n" "%sINGA garantier lämnas, inte ens vid KÖP eller FÖR NÅGOT SPECIFIKT " "ÄNDAMÅL.\n" "\n" "%sAnmäl fel till .\n" "%sSkicka synpunkter på översättningen till .\n" "\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# Make-databas, utskriven %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Färdigställde Make-databas %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "en okänd katalog" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "en okänd katalog" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "katalogen \"%s\"\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "katalogen \"%s\"\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "en okänd katalog" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "en okänd katalog" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "katalogen \"%s\"\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "katalogen \"%s\"\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Stannar.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Okänt fel %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "virtuellt minne uttömt" #: misc.c:646 #, fuzzy, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s åtkomst: användare %lu (verklig %lu), grupp %lu (verklig %lu)\n" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "Inledd" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "Felkanal omdirigerad till %s\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "skriver till jobbserver" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Läser makefiler...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Läser makefil \"%s\"" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (inget standardmål)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (sökväg)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (oviktigt)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (ingen ~-expansion)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "ogiltig syntax i villkorssats" #: read.c:633 msgid "extraneous `endef'" msgstr "överflödigt \"endef\"" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "tomt variabelnamn" #: read.c:662 msgid "empty `override' directive" msgstr "tomt \"override\"-direktiv" #: read.c:687 msgid "invalid `override' directive" msgstr "ogiltigt \"override\"-direktiv" #: read.c:854 msgid "commands commence before first target" msgstr "kommandon inleds före första målet" #: read.c:905 msgid "missing rule before commands" msgstr "regel saknas före kommandon" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "separator saknas%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (var avsikten TAB i stället för 8 mellanslag?)" #: read.c:1152 msgid "missing target pattern" msgstr "målmönster saknas" #: read.c:1154 msgid "multiple target patterns" msgstr "flera målmönster" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "målmönstret innehåller inget \"%%\"" #: read.c:1286 msgid "missing `endif'" msgstr "\"endif\" saknas" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Överflödig text efter direktivet \"endef\"" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "\"endef\" saknas, oavslutat \"define\"" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Överflödig text efter direktivet \"%s\"" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "överflödigt \"%s\"" #: read.c:1482 msgid "only one `else' per conditional" msgstr "endast ett \"else\" per villkor" #: read.c:1824 #, fuzzy msgid "Malformed target-specific variable definition" msgstr "Felformad målberoende variabeldefinition" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "blandade implicita regler och statiska mönsterregler" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "blandade implicita regler och normala regler" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "målet \"%s\" motsvarar inte målmönstret" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "målfilen \"%s\" har både poster med : och ::" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "målet \"%s\" anges flera gånger i samma regel." #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "varning: åsidosätter kommandon för målet \"%s\"" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "varning: bortser från gamla kommandon för målet \"%s\"" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "varning: NUL-tecken upptäckt, bortser från resten av raden" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Inget behöver göras för \"%s\"." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "\"%s\" är färsk." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Beskär filen \"%s\".\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sIngen regel för att skapa målet \"%s\"%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sIngen regel för att skapa målet \"%s\", som behövs till \"%s\"%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Överväger målfilen \"%s\".\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Misslyckades nyligen med att uppdatera filen \"%s\".\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Filen \"%s\" har redan övervägts.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Uppdaterar fortfarande filen \"%s\".\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Slutförde uppdaterandet av filen \"%s\".\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Filen \"%s\" finns inte.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Hittade en implicit regel för \"%s\".\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Hittade ingen implicit regel för \"%s\".\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Använder standardkommandon för \"%s\".\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Det cirkulära beroendet %s <- %s släpptes." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Färdigställde de nödvändiga förutsättningarna för målfilen \"%s\".\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "De nödvändiga förutsättningarna för \"%s\" håller på att skapas.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Ger upp med målfilen \"%s\".\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Målet \"%s\" återskapades inte på grund av fel." #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "Den nödvändiga förutsättningen \"%s\" är äldre än målet \"%s\".\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Den nödvändiga förutsättningen \"%s\" för målet \"%s\" finns inte.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Den nödvändiga förutsättningen \"%s\" är nyare än målet \"%s\".\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Den nödvändiga förutsättningen \"%s\" är äldre än målet \"%s\".\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Målet \"%s\" är dubbelkolon och har inga beroenden.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "" "Inga kommandon eller nödvändiga förutsättningar för \"%s\" har förändrats.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Målet \"%s\" behöver inte återskapas" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; använder VPATH-namnet \"%s\"" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Måste återskapa målet \"%s\".\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Bortser från VPATH-namnet \"%s\".\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Kommandon för \"%s\" körs.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Misslyckades med att återskapa målfilen \"%s\".\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Målfilen \"%s\" återskapades.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Målfilen \"%s\" behöver återskapas med -q.\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** Varning: Filen \"%s\" har ett ändringsdatum i framtiden (%s > %s)" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** Varning: Filen \"%s\" har ett ändringsdatum i framtiden (%s > %s)" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS-elementet \"%s\" är inte något mönster" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Customs kommer inte att exportera %s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Inga implicita regler." #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Inga implicita regler." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u implicita regler, %u" #: rule.c:575 msgid " terminal." msgstr " slutregler." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "FEL: num_pattern_rules felaktigt! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "okänd signal" #: signame.c:93 msgid "Hangup" msgstr "Avringd" #: signame.c:96 msgid "Interrupt" msgstr "Avbrott" #: signame.c:99 msgid "Quit" msgstr "Avslutad" #: signame.c:102 msgid "Illegal Instruction" msgstr "Otillåten instruktion" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Spårningsfälla" #: signame.c:110 msgid "Aborted" msgstr "Avbruten" #: signame.c:113 msgid "IOT trap" msgstr "IO-fälla" #: signame.c:116 msgid "EMT trap" msgstr "Emulatorfälla" #: signame.c:119 msgid "Floating point exception" msgstr "Flyttalsundantag" #: signame.c:122 msgid "Killed" msgstr "Dödad" #: signame.c:125 msgid "Bus error" msgstr "Bussfel" #: signame.c:128 msgid "Segmentation fault" msgstr "Segmenteringsfel" #: signame.c:131 msgid "Bad system call" msgstr "Felaktigt systemanrop" #: signame.c:134 msgid "Broken pipe" msgstr "Ledningsbrott" #: signame.c:137 msgid "Alarm clock" msgstr "Alarmklocka" #: signame.c:140 msgid "Terminated" msgstr "Avslutad" #: signame.c:143 msgid "User defined signal 1" msgstr "Användarsignal 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Användarsignal 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Barn avslutades" #: signame.c:157 msgid "Power failure" msgstr "Strömavbrott" #: signame.c:160 msgid "Stopped" msgstr "Stoppades" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Stoppades (tty-läsning)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Stoppades (tty-utskrift)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Stoppades (signal)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU-tidsgräns överskreds" #: signame.c:175 msgid "File size limit exceeded" msgstr "Filstorleksgräns överskreds" #: signame.c:178 msgid "Virtual timer expired" msgstr "Virtuellt tidur löpte ut" #: signame.c:181 msgid "Profiling timer expired" msgstr "Profileringstidur löpte ut" #: signame.c:187 msgid "Window changed" msgstr "Fönster ändrat" #: signame.c:190 msgid "Continued" msgstr "Fortsatte" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Brådskande I/O-läge" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O-tillfälle" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Miste resurs" #: signame.c:215 msgid "Danger signal" msgstr "Farosignal" #: signame.c:218 msgid "Information request" msgstr "Informationsbegäran" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Flyttalsprocessor inte tillgänglig" #: 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 "normal" #: variable.c:1372 msgid "environment" msgstr "miljö" #: variable.c:1375 msgid "makefile" msgstr "makefil" #: variable.c:1378 msgid "environment under -e" msgstr "miljö enligt -e" #: variable.c:1381 msgid "command line" msgstr "kommandorad" #: variable.c:1384 msgid "`override' directive" msgstr "\"override\"-direktiv" #: variable.c:1387 msgid "automatic" msgstr "automatisk" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (från \"%s\", rad %lu):\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# %u variabler i %u hashbehållare.\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Variabler\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Mönsterspecifika variabelvärden" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Inga mönsterspecifika variabelvärden." #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u mönsterspecifika variabelvärden" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "varning: odefinierad variabel \"%.*s\"" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search misslyckades och gav %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Varning: Tom omdirigering\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "internt fel: \"%s\" command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "-varning, CTRL-Y lämnar efter sig underprocess(er).\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "-varning, CTRL-Y-hantering kanske behöver återställas från DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "INBYGGT [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "INBYGGT CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "INBYGGT RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Okänt inbyggt kommando \"%s\"\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Fel, tomt kommando\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Inkanal omdirigerad till %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Felkanal omdirigerad till %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Utkanal omdirigerad till %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Utför %s i stället\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Fel vid avknoppning, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH-sökvägar\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Inga \"vpath\"-sökvägar." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u \"vpath\"-sökvägar.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Ingen allmän sökväg (enligt \"VPATH\"-variabeln)." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# Allmän sökväg (enligt \"VPATH\"-variabeln):\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# Inga filer." #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u filer i %u hashbehållare.\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# i genomsnitt %.3f filer per behållare, högst %u filer i samma " #~ "behållare.\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Syntaxfel, är fortfarande innanför '\"'\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "Erhöll SIGCHLD; %u kvarvarande barnprocesser.\n" #~ msgid "DIRECTORY" #~ msgstr "KATALOG" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "Byt till KATALOG först" #~ msgid "FLAGS" #~ msgstr "FLAGGOR" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "Suspendera processen för att möjliggöra anslutning av felsökare" #~ msgid "Environment variables override makefiles" #~ msgstr "Miljövariabler åsidosätter makefiler" #~ msgid "FILE" #~ msgstr "FIL" #~ msgid "Read FILE as a makefile" #~ msgstr "Använd FIL som makefil" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "Genomsök KATALOG efter inkluderade makefiler" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "Påbörja flera jobb endast om lasten understiger N" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "Kör inte kommandona, skriv bara ut dem" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "Betrakta FIL som mycket gammal och återskapa den inte" #~ msgid "Don't echo commands" #~ msgstr "Återge inte kommandon" #~ msgid "Turns off -k" #~ msgstr "Stänger av -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "Betrakta FIL som hur ny som helst" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Ange inte -j eller --jobs om sh.exe inte finns tillgänglig." #~ msgid "Resetting make for single job mode." #~ msgstr "Återställer make för enkeljobbsläge." #~ msgid "Entering" #~ msgstr "Går till" #~ msgid "Leaving" #~ msgstr "Lämnar" #~ msgid "no file name for `%sinclude'" #~ msgstr "inget filnamn till \"%sinclude\"" #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "målet \"%s\" har ett tomt beroendemönster" #~ msgid "# No variables." #~ msgstr "# Inga variabler." #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# i genomsnitt %1.f variabler per behållare, högst %u i samma behållare.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# i genomsnitt %d.%d variabler per behållare, högst %u i samma " #~ "behållare.\n" make-dfsg-3.81.orig/po/tr.gmo0000644000175000017500000010546010416553102016266 0ustar srivastasrivastaÞ•c4 ßLÈÉæ&ÿ&6!?-a ¡-Âð'. ES"q” °LÑP Mo @½ oþ on!FÞ!J%"€p"9ñ"C+#fo#_Ö#;6$;r$O®$Jþ$}I%wÇ%~?&>¾&Oý&CM'3‘'FÅ'I (;V( ’(œ("¹( Ü(é((ø( !)/)F)_)z)) Ÿ)©)¸)Á)%Ò)ø) * **.3*1b*”*­*Å*ß*(ý*&+&;+*b+&++´++à+ ,#!,#E,)i,-“,Á,Ú,$ñ,9-P-3o-£-.½-ì-.#.!3.=U."“.¶.¿.Æ.Ü.ù./+1/]/w/,‘/¾/%Ü/,0-/0 ]0&~0¥0Å0.å01/41œd1 2"21B2 t2€2#—2#»2Lß26,3c33‘3¥34Ã3>ø3 74*A4l4„4 Œ4"˜4'»4ã4ò455 #5 /595 Q5 ^5%k5‘5$±5Ö5=ð5:.6 i60Š6»6 Ú6+ä6!7 27?7 Y7g7p7„7š7$°7'Õ7ý7#8A8"\88,˜8Å8)ã8 9!&9&H9o99 –9£9¬9%À9æ9ú9 ::#:B:0X:'‰:3±: å:+ñ:;-9;%g;';µ;Ï;<Ò;!<1< O<*Z<…<'¢< Ê<6Ô< =-=-G=1u=1§=Ù=ñ=3>9>>>T>(j>)“>/½>6í>$?L1aL&“LºLÉL0ãLM4M=MM9‹M1ÅM.÷MH&N,oN"œN0¿NðN†O‡P¢P*ºP åP ïP0ûP4,QaQ+uQ5¡Q×Q,íQR/R*AR,lR#™R(½RPæRT7S}ŒSK TJVTk¡TS UMaU€¯U<0VGmVPµVlW;sWI¯W„ùWL~X‚ËXyNY³ÈYC|ZTÀZO[?e[O¥[Jõ[8@\ y\!„\+¦\Ò\4ä\"]<]O]f]]œ]¶] Ê] Ø] æ]ó] ^ &^ 2^=^O^Gi^W±^ _ %_ 3_"T_`w_Ø_/ì_1`,N`.{`.ª`Ù`.ø`0'a.Xa6‡a¾aØa(õa7b"Vb1yb8«bGäb,cCc`c-tcE¢c)ècdd"d8d"Sd!vd:˜d Ódôd.eAe0_e0e1Áe óe/f!Df!ff>ˆf2ÇfYúfÑTg&h&Fh0mhžh±hÍh'íhfi5|i ²iÓiäi!÷i<jRVj ©j,³j àj k k-k5Ikk”k©kÁkÜkîkl l +l39l/ml7lÕl?òl?2m/rm2¢m%Õmûm$ n0/n`n9gn¡n ±n¾nÒnän(o+-o(Yo3‚o¶o&Êo#ño=p.Sp)‚p#¬p&Ðp4÷p',qTq ]q kqxq*‘q ¼qÊqãqéq8üq5r)Kr&ur0œr Ír7Ûrs.2s4as&–s½sÝsGäs",t-Ot }t.‡t$¶t1Ût u1uMu0]u0Žu.¿u5îu.$vSv.kvšv v¼v4Öv3 wE?wB…wÈwäwx #xF/xFvx9½x0÷x(y‚Fy:Éy zzz#z#8z \zgz{z—z=·zCõz19{;k{§{;¸{"ô{,|+D|,p|"|À|&Ó|ú|}(,}U}j}‰}1¨}*Ú}~E ~Ef~!¬~Î~ ê~÷~8 FGO:—BÒB€X€7x€°€&¿€æ€ ù€!(;%V|‘˜ «·HÆ8‚;H‚„‚š‚±‚Æ‚3æ‚4ƒOƒ$oƒ/”ƒKă„-!„O„ ^„„„'£„2Ë„þ„…/…3O…6ƒ…'º…â…ú…&†3A†1u†§†MĆ6‡#I‡Dm‡/²‡3â‡9ˆ1Pˆ‚ˆ”ˆ9­ˆ-爉:+‰Ef‰G¬‰5ô‰X*Š8ƒŠ&¼Š6㊋CÙ-<2Þ­®ô%E'ø¤4"-Ux6¥¢coµS»ŒPFOìR´‚@5Ye›”?G;·K¯L.ad—ÀhÓkû HrÉ‹{g _}³iú£ Ö\V…šŠa]¾'`@QJÍ^]–:.Æ2ùOž/K×NÈ&ê+FÇõ0ò‘Lè½ ذD  J*TÝuS$&=WÒü,D Ú3BW¸íY$ËÊcN1)E #¿Ä|*<ó÷Q"löVép™ÑTƒ†XZÌ„7€0A¡ŸñXnUÜ,ý3Áã?Ûm%•²ÅZ> ç Î^w9‰Žv¹§’¶!(jB+>©äHÐ6±5[œf=1ys`I¬C“˜7χ¨; ëq~_P[b8tâbÿï\Mðîåz  Âá¦I)«9ÕMæ(ßàÃRºAGþ4:ª¼ˆ#!8/Ô # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables # files hash-table stats: # Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededChild accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCouldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Member `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-10-05 18:13+0300 Last-Translator: Nilgün Belma Bugüner Language-Team: Turkish MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Generator: KBabel 0.9.6 # %u `vpath' arama yolu. # %u örtük kural, %u # %u örneÄŸe duyarlı deÄŸiÅŸken deÄŸeri # Dizin # Dosyalar # %s üzerindeki Make veri tabanı tamamlandı # Genel (`VPATH' çevre deÄŸiÅŸkeni) arama yolu: # # Örtük Kurallar # Make veri tabanı, %s üzerine basıldı # Genel arama yolu (`VPATH' çevre deÄŸiÅŸkeni) yok. # Örtük kural yok. # ÖrneÄŸe duyarlı deÄŸiÅŸken deÄŸeri yok. # VPATH Arama yolu # DeÄŸiÅŸkenler # dosyaların hash tablosu durumları: # Sayılan %d argüman ile baÅŸarısız oldu Bu program %s için kurgulanmış Bu program %s için kurgulanmış (%s) --debug[=SEÇENEKLER] ÇeÅŸitli türde hata ayıklama bilgileri basar. --no-print-directory Dolaylı olarak açılmış olsa bile -w 'yi kapatır --warn-undefined-variables Atanmamış bir deÄŸiÅŸkene bağıntı yapıldığında uyarır. -B, --always-make Tüm hedefler koÅŸulsuz olarak oluÅŸturulur. -C DİZİN, --directory=DIZIN BirÅŸey yapmadan önce DİZİNe geçilir. -I DİZİN, --include-dir=DİZİN Eklenecek makefile'ları DİZİNde arar. -R, --no-builtin-variables OluÅŸumiçi deÄŸiÅŸken ayarlarını etkisizleÅŸtirir -S, --no-keep-going, --stop Bazı hedefler yapılmadığında devam etmez. -W DOSYA, --what-if=DOSYA, --new-file=DOSYA, --assume-new=DOSYA DOSYA sonsuz yeni varsayılır. -b, -m Uyumluluk için yoksayıldı. -b, -m Bir sürü hata ayıklama bilgisi basar. -e, --environment-overrides Ortam deÄŸiÅŸkenleri makefile'ları deÄŸiÅŸtirir. -f DOSYA, --file=DOSYA, --makefile=DOSYA DOSYAyı bir makefile olarak okur. -h, --help Bu iletiyi basar ve çıkar. -i, --ignore-errors Komutların ürettiÄŸi hataları yoksayar. -j [N], --jobs[=N] Bir defada N iÅŸe izin verir; argumansız iÅŸ sayısı sınırsızdır. -k, --keep-going Bazı hedefler yapılmadığında devam eder. -l [N], --load-average[=N], --max-load[=N] Yük N'den az olmadıkça çoklu iÅŸler baÅŸlatılmaz. -n, --just-print, --dry-run, --recon Gerçekte komutlar çalıştırılmaz, gösterilir. -o DOSYA, --old-file=DOSYA, --assume-old=DOSYA DOSYAnın çok eski olduÄŸu varsayılır ve yeniden iÅŸlem yapılmaz. -p, --print-data-base make'in içsel veritabanını basar. -q, --question Komut çalıştırmaz; güncelse çıkışta belirtir -r, --no-builtin-rules OluÅŸumiçi örtük kuralları etkisizleÅŸtirir. -s, --silent, --quiet Komutlar iÅŸlenirken gösterilmez. -t, --touch Yeniden derlemek yerine hedeflere bakıp geçer. -v, --version make sürüm numarasını basar ve çıkar. -w, --print-directory Kullanılan dizini basar. Tarih %s VPATH ismi `%s' yoksayılıyor. Kull-kim = %d, Grup-kim = %d, kip = 0%o. (paket içinde): (bellek kopyası - core dosyası - diske yazıldı)(8 boÅŸluÄŸu TAB'mı zannettiniz?) (umurunda deÄŸil) (`%s'den, satır %lu) (`%s'den, satır %lu): (isim kırpılmış olmalı) (öntanımlı amaç yok)( ~ uzantısı yok) (karşıdan) (arama yolu) dosyaları,olanaksızlıklar %lu dizinde olanaksızlıklar. çok uzak. terminal.# OluÅŸtursa da:# Komut-satırı hedefi.# Komutlar ÅŸu an iÅŸlemlerini sürdürüyor (BU BİR YAZILIM HATASI).# Bağımlılıkların komutları iÅŸlemlerini sürdürüyor (BU BİR YAZILIM HATASI).# GüncellenmiÅŸ olamadı.# Dosya yok.# Dosya güncelleÅŸtirilmiÅŸti.# Dosya güncelleÅŸtirilmemiÅŸti.# Orta seviyede önceden gerekli bir dosya (öncelikle gerekli dosyalara aracılık eden dosya)# Dosya çok eski.# Örtük kural araÅŸtırması yapılmıştı.# Örtük kural araÅŸtırması yapılmamıştı.# Örtük/deÄŸiÅŸmeyen kalıp kökü: `%s' # `command_state' üyesinde geçersiz deÄŸer!# `update_status' üyesinde geçersiz deÄŸer!# Son deÄŸiÅŸiklik tarihi %s # DeÄŸiÅŸiklik zamanı hiç kontrol edilmedi.# GüncellenmiÅŸ olması gerekir (-q verildi).# Sahte hedef (.PHONY önceden gerekliliÄŸi).# Kıymetli dosya (.PRECIOUS önceden gerekliliÄŸi).# Tamamen güncellendi.# çalıştırma komutları# %s (aygıt %d, i-düğüm [%d,%d,%d]):# %s (aygıt %d, i-düğüm [%d,%d,%d]): açılamadı. # %s (aygıt %ld, i-düğüm %ld):# %s (aygıt %ld, i-düğüm %ld): açılamadı. # %s (anahtar (key) %s, deÄŸiÅŸiklik tarihi (mtime) %d):# %s (anahtar (key) %s, deÄŸiÅŸiklik tarihi (mtime) %d): açılamadı. # %s: durumlanamadı. # `vpath' arama yolları yok# Bir hedef deÄŸil:# deÄŸiÅŸken kümesi hash tablosunun durumu: %s (satır %d) kabuk baÄŸlamı hatalı (!unixy && !batch_mode_shell) %s 30 saniyeliÄŸine askıya alınıyor...%s%s: %s%s: %s%s: Komut bulunamadı%s: `%s' dizine giriliyor %s: `%s' dizininden çıkılıyor %s: Kabuk uygulaması bulunamadı%s: Tarih damgası kapsamdışı; yerine %s kullanılıyor%s: kuraldışı seçenek -- %c %s: geçersiz seçenek -- %c %s: seçenek `%c%s' argümansız kullanılır %s: `%s' seçeneÄŸi belirsiz %s: `%s' seçeneÄŸi bir argümanla kullanılır %s: `--%s' seçeneÄŸi argümansız kullanılır %s: `-W %s' seçeneÄŸi argümansız kullanılır %s: `-W %s' seçeneÄŸi belirsiz %s: seçenek bir argümanla kullanılır -- %c %s: `%c%s' seçeneÄŸi bilinmiyor %s: `--%s' seçeneÄŸi bilinmiyor %s: kullanıcı %lu (gerçekte %lu), grup %lu (gerçekte %lu) %sHedef `%s' i derlemek için hiçbir kural yok%s%sHedef `%s' i derlemek için hiçbir kural yok, `%s' tarafından gereksinim duyuluyor%s%sBu bir serbest yazılımdır; kopyalama koÅŸulları için kaynak koduna bakınız. %sHiçbir garantisi yoktur; hatta SATILABİLİRLİĞİ veya ÅžAHSİ KULLANIMINIZA %sUYGUNLUÄžU için bile garanti verilmez. %s[%u]:`%s' dizinine giriliyor %s[%u]: `%s' dizininden çıkılıyor *** ArÅŸiv üyesi `%s' sahte olabilir; silinmedi*** Bırakıldı. *** `%s' dosyası siliniyor*** Aracı dosya `%s' siliniyor*** BitmemiÅŸ iÅŸler için bekliyor....*** Uyarı: .LOW_RESOLUTION_TIME dosyası `%s' yüksek çözünürlüklü bir zaman damgası içeriyor*** [%s] ArÅŸiv üyesi `%s' sahte olabilir; silinmedi*** [%s] `%s' dosyası siliniyor*** [%s] Hata %d*** [%s] Hata 0x%x*** [%s] Hata 0x%x (yoksayıldı)-uyarı, CTRL-Y etraftaki alt-süreç(ler)i bıraktıracak. -uyarı, DCL den yönetimi almak için CTRL-Y'yi yeniden etkinleÅŸtirebilirsiniz. . Durdu. .LIBPATTERNS elemanı `%s' bir kalıp deÄŸil; VPATH ismi `%s' kullanılıyorİptal edildiAlarm saatiÖrtük kural çevrimi görmezden geliniyor. YAZILIM HATASI: num_pattern_rules yanlış! %u != %uOLUÅžUMİÇİ CD %s OLUÅžUMİÇİ RM %s OLUÅžUMİÇİ [%s][%s] Sistem çaÄŸrısı hatalıVeri alınamıyorVeri yolu hatasıCPU zaman sınırı aşıldıAsta eriÅŸimAst bıraktıÇevrimsel %s <- %s bağımlılığı iptal edildi.Geçici komut-listesi dosyası %s temizleniyor Geçici komut-listesi (batch) dosyası %s temizleniyor Çakışmalar=%ld/%ld=%.0f%%`%s' dosyası için komutlar `%s' lehine yoksayılmış olacak.`%s' dosyası için komutlar örtük kural aramasında bulundu,`%s' nin komutları çalışmaya devam ediyor. `%s' dosyası için komutlar %s:%lu de belirtildi,hedef dosya `%s' hesaba katılıyor. Devam ediliyorGeriye, özgün dizine geçilemiyor.%s geçici komut-liste dosyasını oluÅŸturuyor Åžu anÖzelleÅŸtirilmiÅŸ olanlar dışarı aktarılmayacak: %s Tehlike sinyaliEMT tuzağıdoÄŸum hatası, %d Hata, boÅŸ komut %s yerine çalıştırılıyor `%s' yönergesinden sonraki metin yersiz`endef' yönergesinden sonraki metin yersiz`%s' make dosyası yeniden derlenemiyor.Hedef dosya `%s' yeniden derlenirken hata oluÅŸtu. `%s' dosyası yok. `%s' dosyası zaten hesaba katıldı. Dosya uzunluÄŸu sınırı aşıldı`%s' hedef dosyasının önceden gereklilikleri tamamlandı. `%s' dosyasının güncellenmesi tamamlandı. Aritmetik iÅŸlemci kullanılabilir deÄŸilGerçek sayı olaÄŸandışı durumu`%s' için bir örtük kural bulundu. Önceden gereklilik `%s' VPATH `%s' olarak bulundu. `%s' hedef dosyasında umut kesiliyor. TıkanmaG/Ç mümkünIOT tuzağıYönergeler uygun deÄŸilİçerilen make dosyası `%s' bulunamadı.Bilgi isteÄŸiİlklendirilmiÅŸ eriÅŸimKesmeSüreç durdurulduAst dosya iÅŸini sürdürüyor: 0x%08lx (%s) PID %ld %s Yük=%ld/%ld=%.0f%%, Aracı dosya `%s' ile bir kural arıyor. `%s' için bir örtük kural arıyor. `%s' için arÅŸiv-üyesi örtük kural arıyor. Make eriÅŸimi`%s' make dosyası çevrime girdi; yeniden derlenemez. `%s' make dosyası bulunamadıMakefile standart girdiden iki kez belirtildi.Daima derle seçeneÄŸinden dolayı `%s' derleniyor. Üye `%s'%s: %ld bayt %ld 'de (%ld). Hedef `%s' yeniden derlenmeli. Hayır`%s' için komutlar ve önceden gerekliliklerde bir deÄŸiÅŸiklik yok. `%s' için bir örtük kural yok. Hedef `%s' nin yeniden derlenmesine gerek yokHedef yokHedefler belirtilmediÄŸinden make dosyası yok`%s' için hiçbir ÅŸey yapılmadı.Ast 0x%08lx (%s) için simge (token) saÄŸlandı. Seçenekler: Bu platformda paralel iÅŸler (-j) desteklenmiyor.Güç kesilmesiÖnceden gerekli `%s' hedef `%s' den daha yeni. Önceden gerekli `%s' hedef `%s' den daha eski. Önceden gerekli `%s' hedef `%s' için ÅŸart. Hedef `%s' in önceden gereklisi `%s' mevcut deÄŸil. Tanıtım süreölçer kullanım süresi dolduBudanmış dosya `%s'. Ast 0x%08lx (%s) PID %ld%s zincire konuluyor. Çık`%s' make dosyası okunuyorMakefile'lar okunuyor... Kaybeden ast dosya saÄŸlanıyor: 0x%08lx PID %ld %s Kazanan ast dosya saÄŸlanıyor: 0x%08lx PID %ld %s En son `%s'dosyasının güncellenmesi denendi ve baÅŸarısız oldu. Çevrimsel deÄŸiÅŸken `%s' tekrar kendine bağıntılı (sonuçta)%s e yönlendirilmiÅŸ hata %s den yönlendirilmiÅŸ girdi %s e yönlendirilmiÅŸ çıktı Rehash=%d, Örtük önceden gereklilik `%s' olanaksız olduÄŸundan reddediliyor. Kural önceden gerekliliÄŸi `%s' olanaksız olduÄŸundan reddediliyor. Ast 0x%08lx (%s) için simge (token) kullanıma sunuldu. Ast 0x%08lx PID %ld%s zincirden kaldırılıyor Aracı dosyalar siliniyor... Yazılım hatalarını adresine, çeviri hatalarını adresine bildiriniz. Tek iÅŸ kipi (-j1) için make'i baÅŸlatma konumuna alıyorKaynak kaybıSIGPHONESIGWINDParçalama arızası`%s' dosyası hala güncelleniyor. DurdurulduDurduruldu (sinyal)Durduruldu (konsol girdisi)Durduruldu (konsol çıktısı)Hedef dosya `%s' yeniden derlenmesi baÅŸarıyla tamamlandı. Hedef `%s' çift-sütunlu ve önceden gereklilikler gerektirmiyor. Hedef `%s' hatalardan dolayı yeniden derlenemez.`%s' hedef dosyasının -q ile yeniden derlenmesi gerekir. Sonlandırıldı`%s' için önceden gereklilikler derlenmeye devam ediyor. İzleme/kesmenoktası yakalayıcıÖrtük önceden gereklilik `%s' deneniyor. `%.*s' köküyle kalıp kuralı deneniyor. Kural önceden gerekliliÄŸi `%s' deneniyor. OluÅŸumiçi komut '%s' bilinmiyor Bilinmeyen hata %dAmaçlanan hedefler güncelleniyor... makefile'ları güncelliyor... Acil G/Ç koÅŸuluKullanım: %s [seçenekler] [hedef] ... Kullanıcı eriÅŸimiKullanıcı tanımlı sinyal 1Kullanıcı tanımlı sinyal 2`%s' için öntanımlı komutlar kullanılıyor. Sanal süreölçer kullanım süresi dolduUyarı: BoÅŸ yönlendirme Uyarı: `%s' dosyasının deÄŸiÅŸiklik tarihi %.2g s kadar gelecekteUyarı: `%s' dosyası gelecekteki bir deÄŸiÅŸiklik tarihini içeriyorPencere boyutları deÄŸiÅŸtirildi[%s] Hata %d (yoksayıldı)`%s' güncel`override' yönergesidesteklenmeyen özelliÄŸi kullanmaya çalışıyor: `%s'otomatikfakat `%s' ÅŸimdi `%s' dosyası ile aynı dosya olarak düşünülmeli.hash tablosu için %ld bayt ayrılamıyor: bellek tükendiçift-sütun `%s', tek-sütun `%s' olarak yeniden adlandırılamaztek-sütun `%s', çift-sütun `%s' olarak yeniden adlandırılamazulaşılamayan yük sınırı: iÅŸletim sisteminde yük sınırlarına ulaşılamadı komut satırıkomutlar ilk hedeften önce baÅŸlıyoriÅŸleri yaratıyoröntanımlısleep(30) bitti. Devam ediliyor. çift iÅŸ sunucusuboÅŸ `override' yönergesidosyaismi olarak boÅŸ dizge geçersizboÅŸ deÄŸiÅŸken ismiçevreçevre -e altında`%s' yersizyersiz `endef'find_and_set_shell yol aramasını default_shell = %s olarak belirliyor find_and_set_shell default_shell = %s olarak belirliyor `word' iÅŸlevinin ilk argümanı sıfırdan büyük olmalıfopen (geçici dosya)fwrite (geçici dosya)iÅŸleri hazırlıyoriçsel hata: `%s' command_stateiçsel hata: --jobserver-fds dizgesi `%s' geçersiziçsel hata: çok sayıda --jobserver-fds seçeneÄŸi`override' yönergesi geçersizÅŸartlı ifade de yazılış hatasılbr$ini_control durum =%d ile baÅŸarısız oldulbr$set_module modül bilgisini çıkarırken baÅŸarısız oldu, durum = %dderleme dosyası`endef' kayıp, `define' sonlandırılmamış`endif' kayıpkomutlardan önceki kural kayıpkayıp ayraç%shedef kalıp kayıpörtük ve normal kurallar karışmışörtük ve duraÄŸan kalıp kuralları karışmışçok sayıda hedef kalıphayır`word' iÅŸlevinde sayısal olmayan ilk argüman`wordlist' iÅŸlevinde sayısal olmayan ilk argüman`wordlist' iÅŸlevinde sayısal olmayan ikinci argümanher ÅŸartlı ifade de sadece bir `else'görev listesi okunuyorsys$search %d ile baÅŸarısız hedef `%s' hedef kalıpla eÅŸleÅŸmiyorhedef `%s' aynı kuralda birden fazla belirtilmiÅŸ.hedef dosya `%s'hem : hem de :: girdilerine sahiphedef kalıp `%%' içermiyor`-%c' seçeneÄŸi bir pozitif tümleyici bağımsız deÄŸiÅŸkenle kullanılırVMS'de iÅŸe yaramayan arÅŸiv üyesine dokunup geçiyorDokunulup geçildi: ArÅŸiv `%s' yokDokunulup geçildi: `%s' deki ar_member_touch'dan dönen kod hatalıDokunulup geçildi: Üye `%s', `%s' içinde yokDokunulup geçildi: `%s' geçerli bir arÅŸiv deÄŸil`%s' kaynakçası `%s' üyesine bakmak için açılamadıHata ayıklama düzeyi özelliÄŸi `%s' bilinmiyorbilinmeyen sinyalunlink (geçici dosya): `%s' iÅŸlemine çaÄŸrı sonlandırılmamış: `%c' kayıpsonlandırılmamış deÄŸiÅŸken bağıntısısanal bellek tükendiuyarı: Clock skew saptandı. Derleme tamamlanamayabilir.uyarı: alt derlemede -jN zorlandı: iÅŸ sunucusu kipi kapatılıyor.uyarı: NUL karakteri görüldü; satırın geri kalanı yoksayılıyoruyarı: hedef `%s' için eski komutlar yoksayılıyoruyarı: iÅŸ sunucusu kullanımdışı: -j1 kullanılıyor. Üst make kuralına `+' ekle.uyarı: hedef `%s' için komutlar geçersiz kılınıyoruyarı: `%.*s' deÄŸiÅŸkeni atanmamışwindows32_openpipe (): process_init_fd() baÅŸarısız iÅŸ-sunucusu yazıyormake-dfsg-3.81.orig/po/tr.po0000644000175000017500000014425110416553102016123 0ustar srivastasrivasta# Turkish translations for GNU Make messages. # Copyright (C) 2002 Free Software Foundation, Inc. # Nilgün Belma Bugüner , 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 \n" "Language-Team: Turkish \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 \n" msgstr "" "Yazılım hatalarını adresine,\n" "çeviri hatalarını 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" make-dfsg-3.81.orig/po/uk.gmo0000644000175000017500000004525210416553102016262 0ustar srivastasrivastaÞ•ã43L6O_!h-Š ¸-Ù 4 B LY hv¦ÁÔ æðÿ%? HSb.z1©Ûô &&;+b+Ž#º#Þ92l†¢½=Í 1Nj† ,ºç%,+-X †&§Îî/. ^Ÿ#¶#Úþ,@ ^h p"|'ŸÇ × ãí %8=X:– Ñò + GU^r$ˆ'­Õ#õ"4WpŽ!§Éé ðý%@ T^#e0‰'º3â+ B ^ x !{ *¨ Ó ð ú ! !%!/;!6k!¢!"Â! å!ó!ü!""2":"K"_"&t"6›")Ò"(ü" %#*0#[##q#&•#¼#Ü#ú# $&$>$!S$ u$$—$!­$Ï$=å$6#%Z%i%%•%(ª% Ó%1Ý%3&3C&w&3“& Ç&%Ô&ú&'!'?' S'_'t'„'—'®'Æ'ä'&í'($(A(U(l('Œ(´(Í(-Ð(1þ(20)c),ƒ)2°)*ã)*6.*,e*"’*3µ*)é*"+6+0E+v+–+1¯+.á+,,"=,s`,Ô-'ñ- .&.%/.-U."ƒ.8¦.ß.÷. / / #/1/ K/Y/n/…/Ÿ/¾/ Ò/à/ ï/ù/# 0/0D0F0W0'q09™0Ó0ó011011*b1*1#¸10Ü1 2"2;:2$v2,›2$È2 í2Eû2A3J3Q3i3ƒ3#3Á3Þ3,û3"(4'K4,s4- 4#Î4(ò4#5#?5(c5=Œ5Ê5è56#6$C6h6†6š6!°6 Ò6 ß6é63û65/7e7 ~7‹7'›7Ã7'Û7)8A-88o8$¨8Í8 ì8&÷89 /9:9 Z9!{9$9-Â92ð9#:8:W: v:%—:"½:+à: ;; &;1;3I;}; Ž;š;-£;'Ñ;!ù;.<?J<Š<!ª<Ì<%Ï< õ<'=&(=O= W=e=|=‚=;š=>Ö=>/0>`>p>y>>’>±>º>Ì>é>)?>0?,o?3œ? Ð?*Ú?"@(@7H@ €@!¡@Ã@×@ð@ A&(AOA!bA!„A.¦AÕA3ëA(B HBVBsBŽB3£B ×B:ãBKCKjC0¶CIçC1D-ND|DŒD1©DÛDðDE E"E1EIE'bE ŠE'”E¼E!ÎEðEF!F7AFyFF.F2¿F2òF4%G$ZG1G3±GåGBH9DH)~HV¨H3ÿH*3I^I0oI IÀI@ÝI5J-TJ'‚JâØ7ª‚+`pRfÒ¦:×®|PÖÍ–B«"IJÜ^GXV6F­k¯Ç— tQÑUã/ ¨}mÛψYu ЇÃËg§1K4£¸N2WdqÎD•„ ”_±@x9) ÉOÆ8 Z‰“h’ÊA*r·zcÐ$-j\‘ƒÕÁ]nasi½ÚTàŒ´µ¿…,MŽÔœ.>bSÄ¢¹Þ˜¬3Â?#¾È›°;¼¤0!H™Ù<Ÿe̲ºÝ¡C{%y~ o¥'[©5Åž€(lß³Óá&v»š=wÀL¶‹E† # %u `vpath' search paths. # %u implicit rules, %u # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # VPATH Search Paths # Variables Date %s (built-in): (core dumped) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File is very old.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Modification time never checked.# Needs to be updated (-q is set).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (key %s, mtime %d): # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s%s: %s%s: %s%s: Command not found%s: Entering directory `%s' %s: Leaving directory `%s' %s: Shell program not found%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%s[%u]: Entering directory `%s' %s[%u]: Leaving directory `%s' *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored). Stop. AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Considering target file `%s'. ContinuedCouldn't change back to original directory.Danger signalEMT trapError spawning, %d Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished updating file `%s'. Floating point exceptionFound an implicit rule for `%s'. Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMust remake target `%s'. NoNo implicit rule found for `%s'. No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Options: Power failureProfiling timer expiredQuitReading makefile `%s'Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Removing intermediate files... Report bugs to Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetdefaultempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'fopen (temporary file)fwrite (temporary file)invalid syntax in conditionalmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionaltarget `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunknown signalunterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: overriding commands for target `%s'warning: undefined variable `%.*s'Project-Id-Version: make 3.80 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-12-05 20:07+0200 Last-Translator: Volodymyr M. Lisivka Language-Team: Ukrainian MIME-Version: 1.0 Content-Type: text/plain; charset=koi8-u Content-Transfer-Encoding: 8bit # %u "vpath" ÛÌÑÈÉ ÐÏÛÕËÕ. # îÅÑ×ÎÉÈ ÐÒÁ×ÉÌ: %u, ÔÅÒͦÎÁÌØÎÉÈ: %u # ëÁÔÁÌÏÇÉ # æÁÊÌÉ # äÒÕË ÂÁÚÉ ÄÁÎÉÈ Make ÚÁ×ÅÒÛÅÎÏ %s # úÁÇÁÌØÎÉÊ (ÚͦÎÎÁ "VPATH") ÛÌÑÈ ÐÏÛÕËÕ: # # âÁÚÁ ÄÁÎÉÈ Make, ÎÁÄÒÕËÏ×ÁÎÁ %s # îÅ ×ÉÚÎÁÞÅÎÉÊ ÚÁÇÁÌØÎÉÊ (ÚͦÎÎÁ "VPATH") ÛÌÑÈ ÐÏÛÕËÕ. # îÅÑ×ÎÉÈ ÐÒÁ×ÉÌ ÎÅÍÁ. # ûÌÑÈÉ ÐÏÛÕËÕ VPATH # úͦÎΦ äÁÔÁ %s (×ÂÕÄÏ×ÁÎÅ): (ÚÒÏÂÌÅÎÉÊ ÄÁÍÐ ÐÁÍ'ÑÔ¦) (ÎÅ Ú×ÁÖÁÔÉ) (Ú "%s", ÒÑÄÏË %lu) (Ú "%s", ÒÑÄÏË %lu): (¦Í'Ñ ÍÏÖÅ ÂÕÔÉ ÕÓ¦ÞÅÎÅ) (ÎÅÍÁ¤ ÍÅÔÉ ÚÁ ÚÁÍÏ×ÞÕ×ÁÎÎÑÍ) (ÎÅ ÒÏÚÛÉÒÀ×ÁÔÉ ~) (צÄÄÁÌÅÎÉÊ) (ÛÌÑÈ ÐÏÛÕËÕ) ÆÁÊ̦×, ÎÅÄÏÓÑÖÎÉÈ Ã¦ÌÅÊ ÎÅÄÏÓÑÖÎÉÈ Ã¦ÌÅÊ Õ %lu ËÁÔÁÌÏÇÁÈ. ÎÁ ÐÏÔÏÞÎÉÊ ÍÏÍÅÎÔ..# úÂÉÒÁ¤ ÔÁËÏÖ:# ã¦ÌØ ËÏÍÁÎÄÎÏÇÏ ÒÑÄËÁ.# úÁÐÕÝÅΦ ÚÁÒÁÚ ËÏÍÁÎÄÉ (ãå ðïíéìëá).# úÁÐÕÝÅΦ ÚÁÒÁÚ ËÏÍÁÎÄÉ ÄÅÑËϧ ÚÁÌÅÖÎÏÓÔ¦ (ãå ðïíéìëá).# óÐÒÏÂÁ ÏÎÏ×ÌÅÎÎÑ ÂÅÚÕÓЦÛÎÁ.# æÁÊÌ ÎÅ ¦ÓÎÕ¤.# æÁÊÌ ÂÕ× ÏÎÏ×ÌÅÎÉÊ.# æÁÊÌ ÄÕÖÅ ÓÔÁÒÉÊ.# ïÓÎÏ×Á ÎÅÑ×ÎÏÇÏ ÁÂÏ ÓÔÁÔÉÞÎÏÇÏ ÛÁÂÌÏÎÕ: "%s" # îÅצÒÎÅ ÚÎÁÞÅÎÎÑ ÞÌÅÎÁ "command_state"!# îÅצÒÎÅ ÚÎÁÞÅÎÎÑ ÞÌÅÎÁ "update_status"!# þÁÓ ÚͦÎÉ Î¦ËÏÌÉ ÎÅ ÐÅÒÅצÒÑ×ÓÑ.# ðÏ×ÉÎÎÏ ÂÕÔÉ ÏÎÏ×ÌÅÎÏ (×ÓÔÁÎÏ×ÌÅÎÉÊ ËÌÀÞ -q).# õÓЦÛÎÏ ÏÎÏ×ÌÅÎÏ.# ËÏÍÁÎÄÉ ÄÏ ×ÉËÏÎÁÎÎÑ# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ [%d,%d,%d]): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ. # %s (ËÌÀÞ %s, ÞÁÓ ÍÏÄÉÆ¦ËÁæ§ %d): # %s: ÎÅÍÏÖÌÉ×Ï ÏÔÒÉÍÁÔÉ ¦ÎÆÏÒÍÁæÀ (stat). # îÅ ×ÉÚÎÁÞÅÎÉÊ ÛÌÑÈ ÐÏÛÕËÕ "vpath".# îÅ ¤ ÍÅÔÏÀ:%s (ÒÑÄÏË %d) ðÏÇÁÎÉÊ ËÏÎÔÅËÓÔ ÏÂÏÌÎÉË (!unixy && !batch_mode_shell) %s%s: %s%s: %s%s: ëÏÍÁÎÄÁ ÎÅ ÚÎÁÊÄÅÎÁ%s: ÷ÈÏÖÕ Õ ËÁÔÁÌÏÇ "%s" %s: úÁÌÉÛÁÀ ËÁÔÁÌÏÇ "%s" %s: ëÏÍÁÎÄÎÉÊ ÐÒÏÃÅÓÏÒ ÎÅ ÚÎÁÊÄÅÎÉÊ%s: ÎÅצÒÎÉÊ ÐÁÒÁÍÅÔÒ -- %c %s: ÎÅצÒÎÉÊ ÐÁÒÁÍÅÔÒ -- %c %s: ÐÁÒÁÍÅÔÒ "%c%s" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦× %s: ÐÁÒÁÍÅÔÒ "%s" - ÎÅÏÄÎÏÚÎÁÞÎÉÊ %s: ÐÁÒÁÍÅÔÒÕ "%s" ÎÅÏÂȦÄÎÉÊ ÁÒÇÕÍÅÎÔ %s: ÐÁÒÁÍÅÔÒ "--%s" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦× %s: ÐÁÒÁÍÅÔÒ "-W %s" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦× %s: ÐÁÒÁÍÅÔÒ "-W %s" ÎÅÏÄÎÏÚÎÁÞÎÉÊ %s: ÐÁÒÁÍÅÔÒÕ ÎÅÏÂȦÄÎÉÊ ÁÒÇÕÍÅÎÔ -- %c %s: ÎÅ ÒÏÚЦÚÎÁÎÉÊ ÐÁÒÁÍÅÔÒ "%c%s" %s: ÎÅ ÒÏÚЦÚÎÁÎÉÊ ÐÁÒÁÍÅÔÒ "--%s" %sîÅÍÁ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÔ×ÏÒÅÎÎÑ Ã¦Ì¦ "%s"%s%sîÅÍÁ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÔ×ÏÒÅÎÎÑ Ã¦Ì¦ "%s", ÎÅÏÂȦÄÎϧ ÄÌÑ "%s"%s%s[%u]: ÷ÈÏÖÕ Õ ËÁÔÁÌÏÇ "%s" %s[%u]: úÁÌÉÛÁÀ ËÁÔÁÌÏÇ "%s" *** ÷ÉÄÁÌÅÎÎÑ ÆÁÊÌÕ "%s"*** ÷ÉÄÁÌÅÎÎÑ ÐÒÏͦÖÎÏÇÏ ÆÁÊÌÕ "%s"*** ïÞ¦ËÕ×ÁÎÎÑ ÚÁ×ÅÒÛÅÎÎÑ ÚÁ×ÄÁÎØ...*** [%s] ÷ÉÄÁÌÅÎÎÑ ÆÁÊÌÕ "%s"*** [%s] ðÏÍÉÌËÁ %d*** [%s] ðÏÍÉÌËÁ 0x%x[%s] ðÏÍÉÌËÁ 0x%x (ÐÒϦÇÎÏÒÏ×ÁÎÁ). úÕÐÉÎËÁ. ðÒÉÐÉÎÅÎÏóÉÇÎÁÌ ÐÏ ÔÁÊÍÅÒÕúÁÐϦÇÁÎÎÑ ÒÅËÕÒÓÉ×ÎÏÇÏ ×ÉËÌÉËÕ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ. ðïíéìëá: ÎÅצÒÎÅ ÚÎÁÞÅÎÎÑ num_pattern_rules! %u != %uðÏÇÁÎÉÊ ÓÉÓÔÅÍÎÉÊ ×ÉËÌÉËïÂÒÉ× ËÁÎÁÌÕðÏÍÉÌËÁ ÎÁ ÛÉΦðÅÒÅ×ÉÝÅÎÅ ÏÂÍÅÖÅÎÎÑ ÎÁ ÐÒÏÃÅÓÏÒÎÉÊ ÞÁÓîÁÝÁÄÏË ÚÁ×ÅÒÛÉ× ÒÏÂÏÔÕãÉË̦ÞÎÁ ÚÁÌÅÖΦÓÔØ %s <- %s ÐÒÏÐÕÝÅÎÁ.úÎÉÝÅÎÎÑ ÔÉÍÞÁÓÏ×ÏÇÏ ËÏÍÁÎÄÎÏÇÏ ÆÁÊÌÕ %s ëÏÍÁÎÄÉ ÄÌÑ "%s" ¦ÇÎÏÒÏ×ÁΦ, ÂÕÄÕÔØ ×ÉËÏÒÉÓÔÁΦ ËÏÍÁÎÄÉ ÄÌÑ "%s".ëÏÍÁÎÄÉ ÄÌÑ ÆÁÊÌÕ "%s" ÂÕÌÉ ÚÎÁÊÄÅΦ Ú ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ,ëÏÍÁÎÄÉ ÄÌÑ "%s" ÚÁÒÁÚ ×ÉËÏÎÕÀÔØÓÑ. ïÂÒÏÂËÁ Ã¦ÌØÏ×ÏÇÏ ÆÁÊÌÕ "%s". ðÒÏÄÏ×ÖÅÎÏîÅÍÏÖÌÉ×Ï ÐÅÒÅÊÔÉ Õ ÐÅÒצÓÎÉÊ ËÁÔÁÌÏÇ.óÉÇÎÁÌ ÎÅÂÅÚÐÅËÉðÁÓÔËÁ EMTðÏÍÉÌËÁ ÐÏÒÏÄÖÅÎÎÑ ÐÒÏÃÅÓÕ, %d úÁͦÓÔØ ÚÁÄÁÎÏÇÏ ×ÉËÏÎÕ¤ÔØÓÑ %s úÁÊ×ÉÊ ÔÅËÓÔ Ð¦ÓÌÑ ÄÉÒÅËÔÉ×É "%s"úÁÊ×ÉÊ ÔÅËÓÔ Ð¦ÓÌÑ ÄÉÒÅËÔÉ×É "endef"óÐÒÏÂÁ ÐÅÒÅÚ¦ÂÒÁÔÉ make-ÆÁÊÌ "%s" ÂÅÚÕÓЦÛÎÁ.óÐÒÏÂÁ ÐÅÒÅÚ¦ÂÒÁÔÉ Ã¦ÌØÏ×ÉÊ ÆÁÊÌ "%s" ÂÅÚÕÓЦÛÎÁ. æÁÊÌ "%s" ÎÅ ¦ÓÎÕ¤. æÁÊÌ "%s" ×ÖÅ ÂÕÌÏ ÏÂÒÏÂÌÅÎÏ. ðÅÒÅ×ÉÝÅÎÉÊ ÍÅÖÁ ÒÏÚͦÒÕ ÆÁÊÌÕïÎÏ×ÌÅÎÎÑ ÆÁÊÌÕ "%s" ÚÁ×ÅÒÛÅÎÏ. ðÏÍÉÌËÁ ÏÐÅÒÁæ§ Ú ËÒÁÐËÏÀ, ÝÏ ÐÌÁ×Á¤úÎÁÊÄÅÎÏ ÎÅÑ×ÎÅ ÐÒÁ×ÉÌÏ ÄÌÑ "%s". á×ÁÒ¦ÊÎÉÊ ÚÕÐÉÎËÁ ÎÁ Ã¦ÌØÏ×ÏÍÕ ÆÁÊ̦ "%s". ïÂÒÉ×íÏÖÌÉ×ÉÊ ×צÄ/×ÉצÄðÁÓÔËÁ IOTîÅÐÒÉÐÕÓÔÉÍÁ ¦ÎÓÔÒÕËæÑMake-ÆÁÊÌ "%s", ÑËÉÊ ×ËÌÀÞÁ¤ÔØÓÑ, ÎÅ ÂÕÌÏ ÚÎÁÊÄÅÎÏ.úÁÐÉÔ ¦ÎÆÏÒÍÁæ§ðÅÒÅÒÉ×ÁÎÎÑúÎÉÝÅÎÎÑîÅÚÁ×ÅÒÛÅÎÉÊ ÎÁÝÁÄÏË 0x%08lx (%s) PID %ld %s ðÏÛÕË ÐÒÁ×ÉÌÁ Ú ÐÒÏͦÖÎÉÍ ÆÁÊÌÏÍ "%s". ðÏÛÕË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ "%s". ðÏÛÕË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ ÞÌÅÎÁ ÁÒȦ×Õ "%s". Make-ÆÁÊÌ "%s", ÍÏÖÌÉ×Ï, ÚÁÃÉËÌÅÎÉÊ, צΠÎÅ ÐÅÒÅÚÂÉÒÁÔÉÍÅÔØÓÑ. Make-ÆÁÊÌ "%s" ÎÅ ÂÕÌÏ ÚÎÁÊÄÅÎÏîÅÏÂȦÄÎÏ ÐÅÒÅÚ¦ÂÒÁÔÉ Ã¦ÌØ "%s". î¦îÅ ÚÎÁÊÄÅÎÏ ÎÅÑ×ÎÉÈ ÐÒÁ×ÉÌ ÄÌÑ "%s". îÅÍÁ æÌÅÊîÅ ÚÁÄÁΦ æ̦ ¦ ÎÅ ÚÎÁÊÄÅÎÉÊ make-ÆÁÊÌã¦ÌØ "%s" ÎÅ ×ÉÍÁÇÁ¤ ×ÉËÏÎÁÎÎÑ ËÏÍÁÎÄ.ëÌÀÞ¦: úÂ¦Ê ÖÉ×ÌÅÎÎÑþÁÓ ÐÒÏÆ¦ÌÀ×ÁÎÎÑ ÍÉÎÕ×÷ÉȦÄþÉÔÁÎÎÑ make-ÆÁÊÌÕ "%s"ðÏÐÅÒÅÄÎÑ ÓÐÒÏÂÁ ÏÎÏ×ÉÔÉ ÆÁÊÌ "%s" ÚÁ×ÅÒÛÉÌÁÓÑ ÂÅÚÕÓЦÛÎÏ. òÅËÕÒÓÉ×ÎÁ ÚͦÎÎÁ "%s" ÐÏÓÉÌÁ¤ÔØÓÑ ÓÁÍÁ ÎÁ ÓÅÂÅ (Õ ÒÅÚÕÌØÔÁÔ¦)÷ÉÄÁÌÑÀ ÐÒÏͦÖΦ ÆÁÊÌÉ... ðÏצÄÏÍÌÀÊÔÅ ÐÒÏ ÐÏÍÉÌËÉ ÄÏ òÅÓÕÒÓ ×ÔÒÁÞÅÎÏSIGPHONESIGWINDúÂ¦Ê ÓÅÇÍÅÎÔÁæ§÷ÓÅ ÝÅ ÏÎÏ×ÌÀ¤ÔØÓÑ ÆÁÊÌ "%s". úÕÐÉÎÅÎÏúÕÐÉÎÅÎÏ (ÓÉÇÎÁÌ)úÕÐÉÎÅÎÏ (××¦Ä Ú ÔÅÒͦÎÁÌÁ) úÕÐÉÎÅÎÏ (×É×¦Ä ÎÁ ÔÅÒͦÎÁÌ)ã¦ÌØÏ×ÉÊ ÆÁÊÌ "%s" ÕÓЦÛÎÏ ÐÅÒÅÚ¦ÂÒÁÎÉÊ. ã¦ÌØ "%s" ÏÇÏÌÏÛÅÎÁ Ú Ä×ÏÍÁ Ä×ÏËÒÁÐËÁÍÉ ¦ ÎÅ ÍÁ¤ ÚÁÌÅÖÎÏÓÔÅÊ. ã¦ÌØ "%s" ÎÅ ÂÕÌÁ ÐÅÒÅÚ¦ÂÒÁÎÁ ÞÅÒÅÚ ÐÏÍÉÌËÉ.ã¦ÌØÏ×ÉÊ ÆÁÊÌ "%s" ×ÉÍÁÇÁ¤ ÐÅÒÅÚ¦ÒËÉ Ú ËÌÀÞÏÍ -q. úÁ×ÅÒÛÅÎÏã¦Ì¦, ×¦Ä ÑËÉÈ ÚÁÌÅÖÉÔØ "%s", ÚÂÉÒÁÀÔØÓÑ. ðÁÓÔËÁ ÔÒÁÓÕ×ÁÎÎÑ ÞÉ ÔÏÞËÉ ÚÕÐÉÎËÉðÒÏÂÕÀ ÎÅÑ×Φ ÚÁÌÅÖÎÏÓÔ¦ "%s". óÐÒÏÂÁ ÚÁÓÔÏÓÕ×ÁÎÎÑ ÐÒÁ×ÉÌÁ Ú¦ ÚÒÁÚËÏÍ, ÏÓÎÏ×Á "%.*s". ðÒÏÂÕÀ ÚÁÌÅÖΦÓÔØ ÐÒÁ×ÉÌÏ "%s". îÅצÄÏÍÁ ×ÂÕÄÏ×ÁÎÁ ËÏÍÁÎÄÁ "%s". îÅצÄÏÍÁ ÐÏÍÉÌËÁ %dïÎÏ×ÌÅÎÎÑ Ã¦ÌÅÊ ÍÅÔÉ... ïÎÏ×ÌÅÎÎÑ make-ÆÁÊ̦×... õÍÏ×Á ÅËÓÔÒÅÎÏÇÏ ××ÏÄÕ/×É×ÏÄÕ÷ÉËÏÒÉÓÔÁÎÎÑ: %s [ëìàþ¶]... [ã¶ìø]... äÏÓÔÕÐ ËÏÒÉÓÔÕ×ÁÞÁïÂÕÍÏ×ÌÅÎÉÊ ËÏÒÉÓÔÕ×ÁÞÅÍ ÓÉÇÎÁÌ 1ïÂÕÍÏ×ÌÅÎÉÊ ËÏÒÉÓÔÕ×ÁÞÅÍ ÓÉÇÎÁÌ 2÷ÉËÏÒÉÓÔÁÎÎÑ ËÏÍÁÎÄ ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀ ÄÌÑ "%s". ÷¦ÒÔÕÁÌØÎÉÊ ÞÁÓ ÍÉÎÕ×õ×ÁÇÁ: æÁÊÌ "%s" ÍÁ¤ ÞÁÓ ÚͦÎÉ %.2g Ó × ÍÁÊÂÕÔÎØÏÍÕõ×ÁÇÁ: æÁÊÌ "%s" ÍÁ¤ ÍÁÊÂÕÔÎ¦Ê ÞÁÓ ÚͦÎÉ÷¦ËÎÏ ÚͦÎÅÎÏ[%s] ðÏÍÉÌËÁ %d (¦ÇÎÏÒÏ×ÁÎÁ)"%s" ÎÅ ×ÉÍÁÇÁ¤ ÏÎÏ×ÌÅÎÎÑ.äÉÒÅËÔÉ×Á `override'ÓÐÒÏÂÁ ×ÖÉÔÉ ÍÏÖÌÉצÓÔØ, ÑËÁ ΊЦÄÔÒÉÍÕ¤ÔØÓÑ: "%s"Á×ÔÏÍÁÔÉÞÎÁÁÌÅ "%s" ¦ "%s" ÔÅÐÅÒ ××ÁÖÁÀÔØÓÑ ÏÄÎÉÍ ¦ ÔÉÍ ÖÅ Ö ÆÁÊÌÏÍ. ÎÅÍÏÖÌÉ×Ï ÐÅÒÅÊÍÅÎÕ×ÁÔÉ "%s" Ú Ä×ÏÍÁ Ä×ÏËÒÁÐËÁÍÉ Õ "%s" Ú ÏÄΦ¤À Ä×ÏËÒÁÐËÏÀÎÅÍÏÖÌÉ×Ï ÐÅÒÅÊÍÅÎÕ×ÁÔÉ "%s" Ú ÏÄΦ¤À Ä×ÏËÒÁÐËÏÀ Õ "%s" Ú Ä×ÏÍÁ Ä×ÏËÒÁÐËÁÍÉÎÅÍÏÖÌÉ×Ï ×ÓÔÁÎÏ×ÉÔÉ ÏÂÍÅÖÅÎÎÑ ÎÁ ÚÁ×ÁÎÔÁÖÅÎÎÑ: ÃÑ ÏÐÅÒÁæÊÎÁ ÓÉÓÔÅÍÁ ÎÅ ÄÏÚ×ÏÌѤ ×ÓÔÁÎÏ×ÌÀ×ÁÔÉ ÏÂÍÅÖÅÎÎÑ ÎÁ ÚÁ×ÁÎÔÁÖÅÎÎÑ×ÉÚÎÁÞÅÎÁ Õ ËÏÍÁÎÄÎÏÍÕ ÒÑÄËÕËÏÍÁÎÄÉ ÚÕÓÔÒ¦ÎÕÔ¦ ÄÏ ÐÅÒÛÏÇÏ ×ÉÚÎÁÞÅÎÎÑ Ã¦Ì¦ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀÐÏÒÏÖÎÑ ÄÉÒÅËÔÉ×Á `override'ÐÏÒÏÖÎ¦Ê ÒÑÄÏË ÎÅÐÒÉÐÕÓÔÉÍÉÊ Õ ÑËÏÓÔ¦ ¦ÍÅΦ ÆÁÊÌÕÐÏÒÏÖΤ ¦Í'Ñ ÚͦÎÎϧ×ÉÚÎÁÞÅÎÁ Õ ÓÅÒÅÄÏ×ÉݦÚÁÄÁÎÉÊ ËÌÀÞ -eÚÁÊ×Á "%s"ÚÁÊ×ÉÊ "endef"fopen (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)fwrite (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)ÎÅצÒÎÉÊ ÓÉÎÔÁËÓÉÓ Õ ÕÍÏ×ÎÏÍÕ ×ÉÒÁÖÅÎΦÆÁÊÌ makeÐÒÏÐÕÝÅÎÁ "endif", ÎÅÚÁ×ÅÒÛÅÎÁ "define"ÐÒÏÐÕÝÅÎÁ "endif"ÐÅÒÅÄ ËÏÍÁÎÄÁÍÉ ÐÒÏÐÕÝÅÎÅ ÐÒÁ×ÉÌÏÐÒÏÐÕÝÅÎÉÊ ÒÏÚĦÌÀ×ÁÞ%sÐÒÏÐÕÝÅÎÉÊ ÛÁÂÌÏΠæ̦ÚͦÛÁΦ ÎÅÑ×Φ ¦ Ú×ÉÞÁÊΦ ÐÒÁ×ÉÌÁÚͦÛÁΦ ÎÅÑ×Φ ÐÒÁ×ÉÌÁ ¦ ÐÒÁ×ÉÌÁ Ú¦ ÓÔÁÔÉÞÎÉÍÉ ÚÒÁÚËÁÍÉÎÅ ÏÄÉÎ ÛÁÂÌÏΠæ̦ΦÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ "word"ÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ "wordlist"ÎÅ ÞÉÓÌÏ×ÉÊ ÄÒÕÇÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ "wordlist"× ÕÍÏ×ÎÏÍÕ ×ÉÒÁÚ¦ ÍÏÖÌÉ×Á ÌÉÛÅ ÏÄÎÁ ÄÉÒÅËÔÉ×Á `else'Ã¦ÌØ "%s" ΊצÄÐÏצÄÁ¤ ÚÒÁÚËÕ Ã¦ÌÅÊÃ¦ÌØ "%s" ÚÁÚÎÁÞÅÎÁ ÄÅË¦ÌØËÁ ÒÁÚ × ÏÄÎÏÍÕ ÐÒÁ×ÉÌ¦Ã¦ÌØÏ×ÉÊ ÆÁÊÌ "%s" ÍÁ¤ ×ÈÏÄÖÅÎÎÑ ¦ Ú ":", ¦ Ú "::" ÛÁÂÌÏΠæ̦ ΊͦÓÔÉÔØ "%%"ËÌÀÞ "-%c" ÐÏ×ÉÎÅÎ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉÓÑ Ú Ã¦ÌÉÍ ÐÏÚÉÔÉ×ÎÉÍ ÁÒÇÕÍÅÎÔÏÍÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ ÞÌÅÎÁ ÁÒȦ×Õ ÎÅÍÏÖÌÉ×Ï Õ ÓÉÓÔÅͦ VMSÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: áÒÈ¦× "%s" ÎÅ ¦ÓÎÕ¤ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: æÕÎËÃ¦Ñ ar_member_touch ÐÏ×ÅÒÎÕÌÁ ÐÏÇÁÎÉÊ ËÏÄ ×¦ÄÐÏצĦ ÄÌÑ "%s"ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: þÌÅÎ "%s" ΊͦÓÔÉÔØÓÑ Õ "%s"ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: îÅצÒÎÉÊ ÁÒȦ×: "%s"ÎÅצÄÏÍÉÊ ÓÉÇÎÁÌÎÅÚÁ×ÅÒÛÅÎÉÊ ×ÉËÌÉË ÆÕÎËæ§ "%s"; ÐÒÏÐÕÝÅÎÏ "%c"ÎÅÚÁ×ÅÒÛÅÎÁ ÐÏÓÉÌÁÎÎÑ ÎÁ ÚͦÎÎÕצÒÔÕÁÌØÎÁ ÐÁÍ'ÑÔØ ×ÉÞÅÒÐÁÎÁÐÏÐÅÒÅÄÖÅÎÎÑ: ÚÕÓÔÒ¦ÎÕÔÉÊ ÓÉÍ×ÏÌ NUL; ¦ÇÎÏÒÕ¤ÔØÓÑ ÄÏ Ë¦ÎÃÑ ÒÑÄËÉÐÏÐÅÒÅÄÖÅÎÎÑ: ¦ÇÎÏÒÕ×ÁÎÎÑ ÓÔÁÒÉÈ ËÏÍÁÎÄ ÄÌÑ Ã¦Ì¦ "%s"ÐÏÐÅÒÅÄÖÅÎÎÑ: ÐÅÒÅËÒÉÔÔÑ ËÏÍÁÎÄ ÄÌÑ Ã¦Ì¦ "%s"ÐÏÐÅÒÅÄÖÅÎÎÑ: ÎÅ×ÉÚÎÁÞÅÎÁ ÚͦÎÎÁ "%.*s"make-dfsg-3.81.orig/po/uk.po0000644000175000017500000013507710416553102016123 0ustar srivastasrivasta# ðÅÒÅËÌÁÄ make ÎÁ ÕËÒÁ§ÎÓØËÕ. # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc. # Volodymyr M. Lisivka , 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-12-05 20:07+0200\n" "Last-Translator: Volodymyr M. Lisivka \n" "Language-Team: Ukrainian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=koi8-u\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "ÓÐÒÏÂÁ ×ÖÉÔÉ ÍÏÖÌÉצÓÔØ, ÑËÁ ΊЦÄÔÒÉÍÕ¤ÔØÓÑ: \"%s\"" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ ÞÌÅÎÁ ÁÒȦ×Õ ÎÅÍÏÖÌÉ×Ï Õ ÓÉÓÔÅͦ VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: áÒÈ¦× \"%s\" ÎÅ ¦ÓÎÕ¤" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: îÅצÒÎÉÊ ÁÒȦ×: \"%s\"" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: þÌÅÎ \"%s\" ΊͦÓÔÉÔØÓÑ Õ \"%s\"" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "" "ÏÎÏ×ÌÅÎÎÑ ÞÁÓÕ ÚͦÎÉ: æÕÎËÃ¦Ñ ar_member_touch ÐÏ×ÅÒÎÕÌÁ\n" "ÐÏÇÁÎÉÊ ËÏÄ ×¦ÄÐÏצĦ ÄÌÑ \"%s\"" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "" #: arscan.c:165 #, fuzzy, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "ðÏÍÉÌËÁ צÄËÒÉ×ÁÎÎÑ Â¦Â̦ÏÔÅËÉ %s ÄÌÑ ÐÏÛÕËÕ ÞÌÅÎÁ %s; %d\n" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (¦Í'Ñ ÍÏÖÅ ÂÕÔÉ ÕÓ¦ÞÅÎÅ)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " äÁÔÁ %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr "" #: commands.c:422 msgid "*** Break.\n" msgstr "" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] ÷ÉÄÁÌÅÎÎÑ ÆÁÊÌÕ \"%s\"" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** ÷ÉÄÁÌÅÎÎÑ ÆÁÊÌÕ \"%s\"" #: commands.c:599 msgid "# commands to execute" msgstr "# ËÏÍÁÎÄÉ ÄÏ ×ÉËÏÎÁÎÎÑ" #: commands.c:602 msgid " (built-in):" msgstr " (×ÂÕÄÏ×ÁÎÅ):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (Ú \"%s\", ÒÑÄÏË %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# ëÁÔÁÌÏÇÉ\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: ÎÅÍÏÖÌÉ×Ï ÏÔÒÉÍÁÔÉ ¦ÎÆÏÒÍÁæÀ (stat).\n" #: dir.c:999 #, fuzzy, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ %d): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ [%d,%d,%d]): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ.\n" #: dir.c:1008 #, fuzzy, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ %d): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (ËÌÀÞ %s, ÞÁÓ ÍÏÄÉÆ¦ËÁæ§ %d): " #: dir.c:1039 #, fuzzy, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ [%d,%d,%d]): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ.\n" #: dir.c:1044 #, fuzzy, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (ÐÒÉÓÔÒ¦Ê %d, ¦×ÕÚÏÌ %d): ÎÅÍÏÖÌÉ×Ï ×¦ÄËÒÉÔÉ.\n" #: dir.c:1050 dir.c:1071 msgid "No" msgstr "î¦" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " ÆÁÊ̦×, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "Φ" #: dir.c:1058 msgid " impossibilities" msgstr " ÎÅÄÏÓÑÖÎÉÈ Ã¦ÌÅÊ" #: dir.c:1062 msgid " so far." msgstr " ÎÁ ÐÏÔÏÞÎÉÊ ÍÏÍÅÎÔ." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " ÎÅÄÏÓÑÖÎÉÈ Ã¦ÌÅÊ Õ %lu ËÁÔÁÌÏÇÁÈ.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "òÅËÕÒÓÉ×ÎÁ ÚͦÎÎÁ \"%s\" ÐÏÓÉÌÁ¤ÔØÓÑ ÓÁÍÁ ÎÁ ÓÅÂÅ (Õ ÒÅÚÕÌØÔÁÔ¦)" #: expand.c:266 msgid "unterminated variable reference" msgstr "ÎÅÚÁ×ÅÒÛÅÎÁ ÐÏÓÉÌÁÎÎÑ ÎÁ ÚͦÎÎÕ" #: file.c:270 #, fuzzy, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "ëÏÍÁÎÄÉ ÄÌÑ ÆÁÊÌÕ \"%s\" ÂÕÌÉ ÚÁÄÁΦ %s:%u," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "ëÏÍÁÎÄÉ ÄÌÑ ÆÁÊÌÕ \"%s\" ÂÕÌÉ ÚÎÁÊÄÅΦ Ú ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "ÁÌÅ \"%s\" ¦ \"%s\" ÔÅÐÅÒ ××ÁÖÁÀÔØÓÑ ÏÄÎÉÍ ¦ ÔÉÍ ÖÅ Ö ÆÁÊÌÏÍ. " #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "ëÏÍÁÎÄÉ ÄÌÑ \"%s\" ¦ÇÎÏÒÏ×ÁΦ, ÂÕÄÕÔØ ×ÉËÏÒÉÓÔÁΦ ËÏÍÁÎÄÉ ÄÌÑ \"%s\"." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "ÎÅÍÏÖÌÉ×Ï ÐÅÒÅÊÍÅÎÕ×ÁÔÉ \"%s\" Ú ÏÄΦ¤À Ä×ÏËÒÁÐËÏÀ Õ \"%s\" Ú Ä×ÏÍÁ " "Ä×ÏËÒÁÐËÁÍÉ" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "ÎÅÍÏÖÌÉ×Ï ÐÅÒÅÊÍÅÎÕ×ÁÔÉ \"%s\" Ú Ä×ÏÍÁ Ä×ÏËÒÁÐËÁÍÉ Õ \"%s\" Ú ÏÄΦ¤À " "Ä×ÏËÒÁÐËÏÀ" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** ÷ÉÄÁÌÅÎÎÑ ÐÒÏͦÖÎÏÇÏ ÆÁÊÌÕ \"%s\"" #: file.c:385 msgid "Removing intermediate files...\n" msgstr "÷ÉÄÁÌÑÀ ÐÒÏͦÖΦ ÆÁÊÌÉ...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "" #: file.c:782 msgid "Current time" msgstr "" #: file.c:881 msgid "# Not a target:" msgstr "# îÅ ¤ ÍÅÔÏÀ:" #: file.c:903 #, fuzzy msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# ëÏÛÔÏ×ÎÉÊ ÆÁÊÌ (ÚÁÌÅÖΦÓÔØ .PRECIOUS)." #: file.c:905 #, fuzzy msgid "# Phony target (prerequisite of .PHONY)." msgstr "# ðÓÅ×ÄÏÃ¦ÌØ (ÚÁÌÅÖΦÓÔØ ×¦Ä .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# ã¦ÌØ ËÏÍÁÎÄÎÏÇÏ ÒÑÄËÁ." #: file.c:909 #, fuzzy msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "# Makefile ÚÁ ÚÁÍÏ×ÞÕ×ÁÎÎÑÍ ÁÂÏ Ú MAKEFILES." #: file.c:911 #, fuzzy msgid "# Implicit rule search has been done." msgstr "# ðÏÛÕË ÎÅÑ×ÎÉÈ ÐÒÁ×ÉÌ%s ÚÁ×ÅÒÛÉ×ÓÑ.\n" #: file.c:912 #, fuzzy msgid "# Implicit rule search has not been done." msgstr "# ðÏÛÕË ÎÅÑ×ÎÉÈ ÐÒÁ×ÉÌ%s ÚÁ×ÅÒÛÉ×ÓÑ.\n" #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# ïÓÎÏ×Á ÎÅÑ×ÎÏÇÏ ÁÂÏ ÓÔÁÔÉÞÎÏÇÏ ÛÁÂÌÏÎÕ: \"%s\"\n" #: file.c:916 #, fuzzy msgid "# File is an intermediate prerequisite." msgstr "# æÁÊÌ -- ÐÒÏͦÖÎÁ ÚÁÌÅÖΦÓÔØ." #: file.c:919 msgid "# Also makes:" msgstr "# úÂÉÒÁ¤ ÔÁËÏÖ:" #: file.c:925 msgid "# Modification time never checked." msgstr "# þÁÓ ÚͦÎÉ Î¦ËÏÌÉ ÎÅ ÐÅÒÅצÒÑ×ÓÑ." #: file.c:927 msgid "# File does not exist." msgstr "# æÁÊÌ ÎÅ ¦ÓÎÕ¤." #: file.c:929 msgid "# File is very old." msgstr "# æÁÊÌ ÄÕÖÅ ÓÔÁÒÉÊ." #: file.c:934 #, fuzzy, c-format msgid "# Last modified %s\n" msgstr "# þÁÓ ÏÓÔÁÎÎØÏ§ ÚͦÎÉ %.24s (%ld)\n" #: file.c:937 msgid "# File has been updated." msgstr "# æÁÊÌ ÂÕ× ÏÎÏ×ÌÅÎÉÊ." #: file.c:937 #, fuzzy msgid "# File has not been updated." msgstr "# æÁÊÌ%s ÏÎÏ×ÌÅÎÏ.\n" #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# úÁÐÕÝÅΦ ÚÁÒÁÚ ËÏÍÁÎÄÉ (ãå ðïíéìëá)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# úÁÐÕÝÅΦ ÚÁÒÁÚ ËÏÍÁÎÄÉ ÄÅÑËϧ ÚÁÌÅÖÎÏÓÔ¦ (ãå ðïíéìëá)." #: file.c:953 msgid "# Successfully updated." msgstr "# õÓЦÛÎÏ ÏÎÏ×ÌÅÎÏ." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# ðÏ×ÉÎÎÏ ÂÕÔÉ ÏÎÏ×ÌÅÎÏ (×ÓÔÁÎÏ×ÌÅÎÉÊ ËÌÀÞ -q)." #: file.c:960 msgid "# Failed to be updated." msgstr "# óÐÒÏÂÁ ÏÎÏ×ÌÅÎÎÑ ÂÅÚÕÓЦÛÎÁ." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# îÅצÒÎÅ ÚÎÁÞÅÎÎÑ ÞÌÅÎÁ \"update_status\"!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# îÅצÒÎÅ ÚÎÁÞÅÎÎÑ ÞÌÅÎÁ \"command_state\"!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# æÁÊÌÉ" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "ÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ \"word\"" #: function.c:764 #, fuzzy msgid "first argument to `word' function must be greater than 0" msgstr "ÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ \"word\"" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "ÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ \"wordlist\"" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "ÎÅ ÞÉÓÌÏ×ÉÊ ÄÒÕÇÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ \"wordlist\"" #: function.c:1453 #, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "" #: function.c:1464 #, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "" #: function.c:1469 #, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "ÎÅ ÞÉÓÌÏ×ÉÊ ÐÅÒÛÉÊ ÁÒÇÕÍÅÎÔ ÄÌÑ ÆÕÎËæ§ \"word\"" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "îÅ ÒÅÁ̦ÚÏ×ÁÎÏ ÎÁ Ã¦Ê ÐÌÁÔÆÏÒͦ: ÆÕÎËÃ¦Ñ \"%s\"" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "ÎÅÚÁ×ÅÒÛÅÎÉÊ ×ÉËÌÉË ÆÕÎËæ§ \"%s\"; ÐÒÏÐÕÝÅÎÏ \"%c\"" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: ÐÁÒÁÍÅÔÒ \"%s\" - ÎÅÏÄÎÏÚÎÁÞÎÉÊ\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: ÐÁÒÁÍÅÔÒ \"--%s\" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦×\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: ÐÁÒÁÍÅÔÒ \"%c%s\" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦×\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: ÐÁÒÁÍÅÔÒÕ \"%s\" ÎÅÏÂȦÄÎÉÊ ÁÒÇÕÍÅÎÔ\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: ÎÅ ÒÏÚЦÚÎÁÎÉÊ ÐÁÒÁÍÅÔÒ \"--%s\"\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: ÎÅ ÒÏÚЦÚÎÁÎÉÊ ÐÁÒÁÍÅÔÒ \"%c%s\"\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: ÎÅצÒÎÉÊ ÐÁÒÁÍÅÔÒ -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: ÎÅצÒÎÉÊ ÐÁÒÁÍÅÔÒ -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: ÐÁÒÁÍÅÔÒÕ ÎÅÏÂȦÄÎÉÊ ÁÒÇÕÍÅÎÔ -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: ÐÁÒÁÍÅÔÒ \"-W %s\" ÎÅÏÄÎÏÚÎÁÞÎÉÊ\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: ÐÁÒÁÍÅÔÒ \"-W %s\" ÎÅ ÍÏÖÅ ÍÁÔÉ ÁÒÇÕÍÅÎÔ¦×\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "ðÏÛÕË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ \"%s\".\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "ðÏÛÕË ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ ÄÌÑ ÞÌÅÎÁ ÁÒȦ×Õ \"%s\".\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "úÁÐϦÇÁÎÎÑ ÒÅËÕÒÓÉ×ÎÏÇÏ ×ÉËÌÉËÕ ÎÅÑ×ÎÏÇÏ ÐÒÁ×ÉÌÁ.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "óÐÒÏÂÁ ÚÁÓÔÏÓÕ×ÁÎÎÑ ÐÒÁ×ÉÌÁ Ú¦ ÚÒÁÚËÏÍ, ÏÓÎÏ×Á \"%.*s\".\n" #: implicit.c:667 #, fuzzy, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "÷¦ÄËÉÄÁÎÎÑ ÎÅÍÏÖÌÉ×ϧ %s ÚÁÌÅÖÎÏÓÔ¦ \"%s\".\n" #: implicit.c:668 #, fuzzy, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "÷¦ÄËÉÄÁÎÎÑ ÎÅÍÏÖÌÉ×ϧ %s ÚÁÌÅÖÎÏÓÔ¦ \"%s\".\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "ðÒÏÂÕÀ ÎÅÑ×Φ ÚÁÌÅÖÎÏÓÔ¦ \"%s\".\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "ðÒÏÂÕÀ ÚÁÌÅÖΦÓÔØ ÐÒÁ×ÉÌÏ \"%s\".\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "ðÏÛÕË ÐÒÁ×ÉÌÁ Ú ÐÒÏͦÖÎÉÍ ÆÁÊÌÏÍ \"%s\".\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "[%s] ðÏÍÉÌËÁ 0x%x (ÐÒϦÇÎÏÒÏ×ÁÎÁ)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] ðÏÍÉÌËÁ 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] ðÏÍÉÌËÁ %d (¦ÇÎÏÒÏ×ÁÎÁ)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] ðÏÍÉÌËÁ %d" #: job.c:399 msgid " (core dumped)" msgstr " (ÚÒÏÂÌÅÎÉÊ ÄÁÍÐ ÐÁÍ'ÑÔ¦)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ïÞ¦ËÕ×ÁÎÎÑ ÚÁ×ÅÒÛÅÎÎÑ ÚÁ×ÄÁÎØ..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "îÅÚÁ×ÅÒÛÅÎÉÊ ÎÁÝÁÄÏË 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (צÄÄÁÌÅÎÉÊ)" #: job.c:698 #, fuzzy, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "ïÂÒÏÂËÁ ÒÅÚÕÌØÔÁÔ¦× %s ÐÒÁæ ÎÁÝÁÄËÁ 0x%08lx PID %d%s\n" #: job.c:699 #, fuzzy, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "ïÂÒÏÂËÁ ÒÅÚÕÌØÔÁÔ¦× %s ÐÒÁæ ÎÁÝÁÄËÁ 0x%08lx PID %d%s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "úÎÉÝÅÎÎÑ ÔÉÍÞÁÓÏ×ÏÇÏ ËÏÍÁÎÄÎÏÇÏ ÆÁÊÌÕ %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "" #: job.c:862 msgid "write jobserver" msgstr "" #: job.c:864 #, fuzzy, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "ïÂÒÏÂËÁ ÒÅÚÕÌØÔÁÔ¦× %s ÐÒÁæ ÎÁÝÁÄËÁ 0x%08lx PID %d%s\n" #: job.c:1383 #, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" #: job.c:1455 #, fuzzy, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "÷ÓÔÁ×ÌÑÀ ÎÁÝÁÄËÁ 0x%08lx PID %d%s Õ ÌÁÎÃÀÖÏË ÁËÔÉ×ÎÉÈ ÎÁÝÁÄ˦×.\n" #: job.c:1709 #, fuzzy, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "ïÂÒÏÂËÁ ÒÅÚÕÌØÔÁÔ¦× %s ÐÒÁæ ÎÁÝÁÄËÁ 0x%08lx PID %d%s\n" #: job.c:1718 msgid "read jobs pipe" msgstr "" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "" "ÃÑ ÏÐÅÒÁæÊÎÁ ÓÉÓÔÅÍÁ ÎÅ ÄÏÚ×ÏÌѤ ×ÓÔÁÎÏ×ÌÀ×ÁÔÉ ÏÂÍÅÖÅÎÎÑ ÎÁ ÚÁ×ÁÎÔÁÖÅÎÎÑ" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ÎÅÍÏÖÌÉ×Ï ×ÓÔÁÎÏ×ÉÔÉ ÏÂÍÅÖÅÎÎÑ ÎÁ ÚÁ×ÁÎÔÁÖÅÎÎÑ: " #: 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 #, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "" #: 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: ëÏÍÁÎÄÁ ÎÅ ÚÎÁÊÄÅÎÁ" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: ëÏÍÁÎÄÎÉÊ ÐÒÏÃÅÓÏÒ ÎÅ ÚÎÁÊÄÅÎÉÊ" #: 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 ÚͦÎÅÎÏ (ÂÕÌÏ \"%s\", ÔÅÐÅÒ \"%s\")" #: job.c:2789 #, fuzzy, c-format msgid "Creating temporary batch file %s\n" msgstr "fopen (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (ÒÑÄÏË %d) ðÏÇÁÎÉÊ ËÏÎÔÅËÓÔ ÏÂÏÌÎÉË (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "ëÌÀÞ¦:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr "" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr "" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr "" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr "" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" #: main.c:549 msgid "empty string invalid as file name" msgstr "ÐÏÒÏÖÎ¦Ê ÒÑÄÏË ÎÅÐÒÉÐÕÓÔÉÍÉÊ Õ ÑËÏÓÔ¦ ¦ÍÅΦ ÆÁÊÌÕ" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "" #: main.c:670 #, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" #: main.c:677 #, c-format msgid "" "\n" "Unhandled exception filter called from program %s\n" "ExceptionCode = %lx\n" "ExceptionFlags = %lx\n" "ExceptionAddress = %lx\n" msgstr "" #: main.c:685 #, c-format msgid "Access violation: write operation at address %lx\n" msgstr "" #: main.c:686 #, c-format msgid "Access violation: read operation at address %lx\n" msgstr "" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "" #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "" #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "" #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "" #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" #: main.c:1684 msgid "dup jobserver" msgstr "" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" #: main.c:1710 msgid "creating jobs pipe" msgstr "" #: main.c:1725 msgid "init jobserver pipe" msgstr "" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "ïÎÏ×ÌÅÎÎÑ make-ÆÁÊ̦×...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Make-ÆÁÊÌ \"%s\", ÍÏÖÌÉ×Ï, ÚÁÃÉËÌÅÎÉÊ, צΠÎÅ ÐÅÒÅÚÂÉÒÁÔÉÍÅÔØÓÑ.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "óÐÒÏÂÁ ÐÅÒÅÚ¦ÂÒÁÔÉ make-ÆÁÊÌ \"%s\" ÂÅÚÕÓЦÛÎÁ." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Make-ÆÁÊÌ \"%s\", ÑËÉÊ ×ËÌÀÞÁ¤ÔØÓÑ, ÎÅ ÂÕÌÏ ÚÎÁÊÄÅÎÏ." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Make-ÆÁÊÌ \"%s\" ÎÅ ÂÕÌÏ ÚÎÁÊÄÅÎÏ" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "îÅÍÏÖÌÉ×Ï ÐÅÒÅÊÔÉ Õ ÐÅÒצÓÎÉÊ ËÁÔÁÌÏÇ." #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "ðÏ×ÔÏÒÎÅ ×ÉËÏÎÁÎÎÑ:" #: main.c:2140 #, fuzzy msgid "unlink (temporary file): " msgstr "fopen (ÔÉÍÞÁÓÏ×ÉÊ ÆÁÊÌ)" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "îÅ ÚÁÄÁΦ æ̦ ¦ ÎÅ ÚÎÁÊÄÅÎÉÊ make-ÆÁÊÌ" #: main.c:2191 msgid "No targets" msgstr "îÅÍÁ æÌÅÊ" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "ïÎÏ×ÌÅÎÎÑ Ã¦ÌÅÊ ÍÅÔÉ...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "÷ÉËÏÒÉÓÔÁÎÎÑ: %s [ëìàþ¶]... [ã¶ìø]...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "ðÏצÄÏÍÌÀÊÔÅ ÐÒÏ ÐÏÍÉÌËÉ ÄÏ \n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "ËÌÀÞ \"-%c\" ÐÏ×ÉÎÅÎ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉÓÑ Ú Ã¦ÌÉÍ ÐÏÚÉÔÉ×ÎÉÍ ÁÒÇÕÍÅÎÔÏÍ" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "ËÌÀÞ \"-%c\" ÐÏ×ÉÎÅÎ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉÓÑ Ú Ã¦ÌÉÍ ÐÏÚÉÔÉ×ÎÉÍ ÁÒÇÕÍÅÎÔÏÍ" #: 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 "" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# âÁÚÁ ÄÁÎÉÈ Make, ÎÁÄÒÕËÏ×ÁÎÁ %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# äÒÕË ÂÁÚÉ ÄÁÎÉÈ Make ÚÁ×ÅÒÛÅÎÏ %s\n" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: ÷ÈÏÖÕ Õ ÎÅצÄÏÍÉÊ ËÁÔÁÌÏÇ" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: úÁÌÉÛÁÀ ÎÅצÄÏÍÉÊ ËÁÔÁÌÏÇ" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: ÷ÈÏÖÕ Õ ËÁÔÁÌÏÇ \"%s\"\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: úÁÌÉÛÁÀ ËÁÔÁÌÏÇ \"%s\"\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: ÷ÈÏÖÕ Õ ÎÅצÄÏÍÉÊ ËÁÔÁÌÏÇ " #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: úÁÌÉÛÁÀ ÎÅצÄÏÍÉÊ ËÁÔÁÌÏÇ" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: ÷ÈÏÖÕ Õ ËÁÔÁÌÏÇ \"%s\"\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: úÁÌÉÛÁÀ ËÁÔÁÌÏÇ \"%s\"\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". úÕÐÉÎËÁ.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "îÅצÄÏÍÁ ÐÏÍÉÌËÁ %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 "צÒÔÕÁÌØÎÁ ÐÁÍ'ÑÔØ ×ÉÞÅÒÐÁÎÁ" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "" #: misc.c:667 msgid "Initialized access" msgstr "" #: misc.c:746 msgid "User access" msgstr "äÏÓÔÕÐ ËÏÒÉÓÔÕ×ÁÞÁ" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "ËÁÔÁÌÏÇ \"%s\"\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "ðÏÍÉÌËÁ ÎÁ ÛÉΦ" #: read.c:160 #, fuzzy msgid "Reading makefiles...\n" msgstr "þÉÔÁÎÎÑ make-ÆÁÊ̦×..." #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "þÉÔÁÎÎÑ make-ÆÁÊÌÕ \"%s\"" #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (ÎÅÍÁ¤ ÍÅÔÉ ÚÁ ÚÁÍÏ×ÞÕ×ÁÎÎÑÍ)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (ÛÌÑÈ ÐÏÛÕËÕ)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (ÎÅ Ú×ÁÖÁÔÉ)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (ÎÅ ÒÏÚÛÉÒÀ×ÁÔÉ ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "ÎÅצÒÎÉÊ ÓÉÎÔÁËÓÉÓ Õ ÕÍÏ×ÎÏÍÕ ×ÉÒÁÖÅÎΦ" #: read.c:633 msgid "extraneous `endef'" msgstr "ÚÁÊ×ÉÊ \"endef\"" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "ÐÏÒÏÖΤ ¦Í'Ñ ÚͦÎÎϧ" #: read.c:662 msgid "empty `override' directive" msgstr "ÐÏÒÏÖÎÑ ÄÉÒÅËÔÉ×Á `override'" #: read.c:687 #, fuzzy msgid "invalid `override' directive" msgstr "äÉÒÅËÔÉ×Á `override'" #: read.c:854 msgid "commands commence before first target" msgstr "ËÏÍÁÎÄÉ ÚÕÓÔÒ¦ÎÕÔ¦ ÄÏ ÐÅÒÛÏÇÏ ×ÉÚÎÁÞÅÎÎÑ Ã¦Ì¦" #: read.c:905 msgid "missing rule before commands" msgstr "ÐÅÒÅÄ ËÏÍÁÎÄÁÍÉ ÐÒÏÐÕÝÅÎÅ ÐÒÁ×ÉÌÏ" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ÐÒÏÐÕÝÅÎÉÊ ÒÏÚĦÌÀ×ÁÞ%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr "" #: read.c:1152 msgid "missing target pattern" msgstr "ÐÒÏÐÕÝÅÎÉÊ ÛÁÂÌÏΠæ̦" #: read.c:1154 msgid "multiple target patterns" msgstr "ÎÅ ÏÄÉÎ ÛÁÂÌÏΠæ̦" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "ÛÁÂÌÏΠæ̦ ΊͦÓÔÉÔØ \"%%\"" #: read.c:1286 msgid "missing `endif'" msgstr "ÐÒÏÐÕÝÅÎÁ \"endif\"" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "úÁÊ×ÉÊ ÔÅËÓÔ Ð¦ÓÌÑ ÄÉÒÅËÔÉ×É \"endef\"" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "ÐÒÏÐÕÝÅÎÁ \"endif\", ÎÅÚÁ×ÅÒÛÅÎÁ \"define\"" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "úÁÊ×ÉÊ ÔÅËÓÔ Ð¦ÓÌÑ ÄÉÒÅËÔÉ×É \"%s\"" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "ÚÁÊ×Á \"%s\"" #: read.c:1482 msgid "only one `else' per conditional" msgstr "× ÕÍÏ×ÎÏÍÕ ×ÉÒÁÚ¦ ÍÏÖÌÉ×Á ÌÉÛÅ ÏÄÎÁ ÄÉÒÅËÔÉ×Á `else'" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "Ã¦ÌØ \"%s\" ΊצÄÐÏצÄÁ¤ ÚÒÁÚËÕ Ã¦ÌÅÊ" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "Ã¦ÌØÏ×ÉÊ ÆÁÊÌ \"%s\" ÍÁ¤ ×ÈÏÄÖÅÎÎÑ ¦ Ú \":\", ¦ Ú \"::\" " #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "Ã¦ÌØ \"%s\" ÚÁÚÎÁÞÅÎÁ ÄÅË¦ÌØËÁ ÒÁÚ × ÏÄÎÏÍÕ ÐÒÁ×É̦" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "ÐÏÐÅÒÅÄÖÅÎÎÑ: ÐÅÒÅËÒÉÔÔÑ ËÏÍÁÎÄ ÄÌÑ Ã¦Ì¦ \"%s\"" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "ÐÏÐÅÒÅÄÖÅÎÎÑ: ¦ÇÎÏÒÕ×ÁÎÎÑ ÓÔÁÒÉÈ ËÏÍÁÎÄ ÄÌÑ Ã¦Ì¦ \"%s\"" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "ÐÏÐÅÒÅÄÖÅÎÎÑ: ÚÕÓÔÒ¦ÎÕÔÉÊ ÓÉÍ×ÏÌ NUL; ¦ÇÎÏÒÕ¤ÔØÓÑ ÄÏ Ë¦ÎÃÑ ÒÑÄËÉ" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "ã¦ÌØ \"%s\" ÎÅ ×ÉÍÁÇÁ¤ ×ÉËÏÎÁÎÎÑ ËÏÍÁÎÄ." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "\"%s\" ÎÅ ×ÉÍÁÇÁ¤ ÏÎÏ×ÌÅÎÎÑ." #: remake.c:297 #, fuzzy, c-format msgid "Pruning file `%s'.\n" msgstr "÷ÓÅ ÝÅ ÏÎÏ×ÌÀ¤ÔØÓÑ ÆÁÊÌ \"%s\".\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sîÅÍÁ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÔ×ÏÒÅÎÎÑ Ã¦Ì¦ \"%s\"%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sîÅÍÁ ÐÒÁ×ÉÌÁ ÄÌÑ ÓÔ×ÏÒÅÎÎÑ Ã¦Ì¦ \"%s\", ÎÅÏÂȦÄÎϧ ÄÌÑ \"%s\"%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "ïÂÒÏÂËÁ Ã¦ÌØÏ×ÏÇÏ ÆÁÊÌÕ \"%s\".\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "ðÏÐÅÒÅÄÎÑ ÓÐÒÏÂÁ ÏÎÏ×ÉÔÉ ÆÁÊÌ \"%s\" ÚÁ×ÅÒÛÉÌÁÓÑ ÂÅÚÕÓЦÛÎÏ.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "æÁÊÌ \"%s\" ×ÖÅ ÂÕÌÏ ÏÂÒÏÂÌÅÎÏ.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "÷ÓÅ ÝÅ ÏÎÏ×ÌÀ¤ÔØÓÑ ÆÁÊÌ \"%s\".\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "ïÎÏ×ÌÅÎÎÑ ÆÁÊÌÕ \"%s\" ÚÁ×ÅÒÛÅÎÏ.\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "æÁÊÌ \"%s\" ÎÅ ¦ÓÎÕ¤.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "úÎÁÊÄÅÎÏ ÎÅÑ×ÎÅ ÐÒÁ×ÉÌÏ ÄÌÑ \"%s\".\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "îÅ ÚÎÁÊÄÅÎÏ ÎÅÑ×ÎÉÈ ÐÒÁ×ÉÌ ÄÌÑ \"%s\".\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "÷ÉËÏÒÉÓÔÁÎÎÑ ËÏÍÁÎÄ ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀ ÄÌÑ \"%s\".\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "ãÉË̦ÞÎÁ ÚÁÌÅÖΦÓÔØ %s <- %s ÐÒÏÐÕÝÅÎÁ." #: remake.c:601 #, fuzzy, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "ïÎÏ×ÌÅÎÎÑ Ã¦ÌÅÊ, ×¦Ä ÑËÉÈ ÚÁÌÅÖÉÔØ Ã¦ÌØÏ×ÉÊ ÆÁÊÌ \"%s\", ÄÏ×ÅÒÛÅÎÏ.\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "ã¦Ì¦, ×¦Ä ÑËÉÈ ÚÁÌÅÖÉÔØ \"%s\", ÚÂÉÒÁÀÔØÓÑ.\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "á×ÁÒ¦ÊÎÉÊ ÚÕÐÉÎËÁ ÎÁ Ã¦ÌØÏ×ÏÍÕ ÆÁÊ̦ \"%s\".\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "ã¦ÌØ \"%s\" ÎÅ ÂÕÌÁ ÐÅÒÅÚ¦ÂÒÁÎÁ ÞÅÒÅÚ ÐÏÍÉÌËÉ." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "" #: remake.c:682 #, fuzzy, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "æÁÊÌ \"%s\" ÎÅ ¦ÓÎÕ¤.\n" #: remake.c:687 #, fuzzy, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "úÁÌÅÖÎÁ Ã¦ÌØ \"%s\" ÏÎÏ×ÌÑÌÁÓÑ %s Î¦Ö ÚÁÌÅÖÎÁ ×¦Ä Îŧ \"%s\".\n" #: remake.c:690 #, fuzzy, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "úÁÌÅÖÎÁ Ã¦ÌØ \"%s\" ÏÎÏ×ÌÑÌÁÓÑ %s Î¦Ö ÚÁÌÅÖÎÁ ×¦Ä Îŧ \"%s\".\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "ã¦ÌØ \"%s\" ÏÇÏÌÏÛÅÎÁ Ú Ä×ÏÍÁ Ä×ÏËÒÁÐËÁÍÉ ¦ ÎÅ ÍÁ¤ ÚÁÌÅÖÎÏÓÔÅÊ.\n" #: remake.c:715 #, fuzzy, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "ëÏÍÁÎÄÉ ÄÌÑ \"%s\" ÎÅ ÚÁÄÁΦ, ¦ ÚÁÌÅÖÎÏÓÔ¦ ÎÅ ÂÕÌÉ ÚͦÎÅΦ.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, fuzzy, c-format msgid "No need to remake target `%s'" msgstr "îÅÍÁ ÎÅÏÂȦÄÎÏÓÔ¦ ÐÅÒÅÚÂÉÒÁÔÉ Ã¦ÌØ \"%s\".\n" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "îÅÏÂȦÄÎÏ ÐÅÒÅÚ¦ÂÒÁÔÉ Ã¦ÌØ \"%s\".\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr "" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "ëÏÍÁÎÄÉ ÄÌÑ \"%s\" ÚÁÒÁÚ ×ÉËÏÎÕÀÔØÓÑ.\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "óÐÒÏÂÁ ÐÅÒÅÚ¦ÂÒÁÔÉ Ã¦ÌØÏ×ÉÊ ÆÁÊÌ \"%s\" ÂÅÚÕÓЦÛÎÁ.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "ã¦ÌØÏ×ÉÊ ÆÁÊÌ \"%s\" ÕÓЦÛÎÏ ÐÅÒÅÚ¦ÂÒÁÎÉÊ.\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "ã¦ÌØÏ×ÉÊ ÆÁÊÌ \"%s\" ×ÉÍÁÇÁ¤ ÐÅÒÅÚ¦ÒËÉ Ú ËÌÀÞÏÍ -q.\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "õ×ÁÇÁ: æÁÊÌ \"%s\" ÍÁ¤ ÍÁÊÂÕÔÎ¦Ê ÞÁÓ ÚͦÎÉ" #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "õ×ÁÇÁ: æÁÊÌ \"%s\" ÍÁ¤ ÞÁÓ ÚͦÎÉ %.2g Ó × ÍÁÊÂÕÔÎØÏÍÕ" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# îÅÑ×ÎÉÈ ÐÒÁ×ÉÌ ÎÅÍÁ." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# îÅÑ×ÎÉÈ ÐÒÁ×ÉÌ: %u, ÔÅÒͦÎÁÌØÎÉÈ: %u" #: rule.c:575 msgid " terminal." msgstr "." #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "ðïíéìëá: ÎÅצÒÎÅ ÚÎÁÞÅÎÎÑ num_pattern_rules! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "ÎÅצÄÏÍÉÊ ÓÉÇÎÁÌ" #: signame.c:93 msgid "Hangup" msgstr "ïÂÒÉ×" #: signame.c:96 msgid "Interrupt" msgstr "ðÅÒÅÒÉ×ÁÎÎÑ" #: signame.c:99 msgid "Quit" msgstr "÷ÉȦÄ" #: signame.c:102 msgid "Illegal Instruction" msgstr "îÅÐÒÉÐÕÓÔÉÍÁ ¦ÎÓÔÒÕËæÑ" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "ðÁÓÔËÁ ÔÒÁÓÕ×ÁÎÎÑ ÞÉ ÔÏÞËÉ ÚÕÐÉÎËÉ" #: signame.c:110 msgid "Aborted" msgstr "ðÒÉÐÉÎÅÎÏ" #: signame.c:113 msgid "IOT trap" msgstr "ðÁÓÔËÁ IOT" #: signame.c:116 msgid "EMT trap" msgstr "ðÁÓÔËÁ EMT" #: signame.c:119 msgid "Floating point exception" msgstr "ðÏÍÉÌËÁ ÏÐÅÒÁæ§ Ú ËÒÁÐËÏÀ, ÝÏ ÐÌÁ×Á¤" #: signame.c:122 msgid "Killed" msgstr "úÎÉÝÅÎÎÑ" #: signame.c:125 msgid "Bus error" msgstr "ðÏÍÉÌËÁ ÎÁ ÛÉΦ" #: signame.c:128 msgid "Segmentation fault" msgstr "úÂ¦Ê ÓÅÇÍÅÎÔÁæ§" #: signame.c:131 msgid "Bad system call" msgstr "ðÏÇÁÎÉÊ ÓÉÓÔÅÍÎÉÊ ×ÉËÌÉË" #: signame.c:134 msgid "Broken pipe" msgstr "ïÂÒÉ× ËÁÎÁÌÕ" #: signame.c:137 msgid "Alarm clock" msgstr "óÉÇÎÁÌ ÐÏ ÔÁÊÍÅÒÕ" #: signame.c:140 msgid "Terminated" msgstr "úÁ×ÅÒÛÅÎÏ" #: signame.c:143 msgid "User defined signal 1" msgstr "ïÂÕÍÏ×ÌÅÎÉÊ ËÏÒÉÓÔÕ×ÁÞÅÍ ÓÉÇÎÁÌ 1" #: signame.c:146 msgid "User defined signal 2" msgstr "ïÂÕÍÏ×ÌÅÎÉÊ ËÏÒÉÓÔÕ×ÁÞÅÍ ÓÉÇÎÁÌ 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "îÁÝÁÄÏË ÚÁ×ÅÒÛÉ× ÒÏÂÏÔÕ" #: signame.c:157 msgid "Power failure" msgstr "úÂ¦Ê ÖÉ×ÌÅÎÎÑ" #: signame.c:160 msgid "Stopped" msgstr "úÕÐÉÎÅÎÏ" #: signame.c:163 msgid "Stopped (tty input)" msgstr "úÕÐÉÎÅÎÏ (××¦Ä Ú ÔÅÒͦÎÁÌÁ) " #: signame.c:166 msgid "Stopped (tty output)" msgstr "úÕÐÉÎÅÎÏ (×É×¦Ä ÎÁ ÔÅÒͦÎÁÌ)" #: signame.c:169 msgid "Stopped (signal)" msgstr "úÕÐÉÎÅÎÏ (ÓÉÇÎÁÌ)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "ðÅÒÅ×ÉÝÅÎÅ ÏÂÍÅÖÅÎÎÑ ÎÁ ÐÒÏÃÅÓÏÒÎÉÊ ÞÁÓ" #: signame.c:175 msgid "File size limit exceeded" msgstr "ðÅÒÅ×ÉÝÅÎÉÊ ÍÅÖÁ ÒÏÚͦÒÕ ÆÁÊÌÕ" #: signame.c:178 msgid "Virtual timer expired" msgstr "÷¦ÒÔÕÁÌØÎÉÊ ÞÁÓ ÍÉÎÕ×" #: signame.c:181 msgid "Profiling timer expired" msgstr "þÁÓ ÐÒÏÆ¦ÌÀ×ÁÎÎÑ ÍÉÎÕ×" #: signame.c:187 msgid "Window changed" msgstr "÷¦ËÎÏ ÚͦÎÅÎÏ" #: signame.c:190 msgid "Continued" msgstr "ðÒÏÄÏ×ÖÅÎÏ" #: signame.c:193 msgid "Urgent I/O condition" msgstr "õÍÏ×Á ÅËÓÔÒÅÎÏÇÏ ××ÏÄÕ/×É×ÏÄÕ" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "íÏÖÌÉ×ÉÊ ×צÄ/×ÉצÄ" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "òÅÓÕÒÓ ×ÔÒÁÞÅÎÏ" #: signame.c:215 msgid "Danger signal" msgstr "óÉÇÎÁÌ ÎÅÂÅÚÐÅËÉ" #: signame.c:218 msgid "Information request" msgstr "úÁÐÉÔ ¦ÎÆÏÒÍÁæ§" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "" #: 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 "ÐÏ ÚÁÍÏ×ÞÕ×ÁÎÎÀ" #: variable.c:1372 msgid "environment" msgstr "×ÉÚÎÁÞÅÎÁ Õ ÓÅÒÅÄÏ×Éݦ" #: variable.c:1375 msgid "makefile" msgstr "ÆÁÊÌ make" #: variable.c:1378 msgid "environment under -e" msgstr "ÚÁÄÁÎÉÊ ËÌÀÞ -e" #: variable.c:1381 msgid "command line" msgstr "×ÉÚÎÁÞÅÎÁ Õ ËÏÍÁÎÄÎÏÍÕ ÒÑÄËÕ" #: variable.c:1384 msgid "`override' directive" msgstr "äÉÒÅËÔÉ×Á `override'" #: variable.c:1387 msgid "automatic" msgstr "Á×ÔÏÍÁÔÉÞÎÁ" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (Ú \"%s\", ÒÑÄÏË %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# úͦÎΦ\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "ÐÏÐÅÒÅÄÖÅÎÎÑ: ÎÅ×ÉÚÎÁÞÅÎÁ ÚͦÎÎÁ \"%.*s\"" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "" #: vmsjobs.c:175 #, fuzzy, c-format msgid "internal error: `%s' command_state" msgstr "×ÎÕÔÒ¦ÛÎÑ ÐÏÍÉÌËÁ: \"%s\" command_state %d Õ child_handler" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "îÅצÄÏÍÁ ×ÂÕÄÏ×ÁÎÁ ËÏÍÁÎÄÁ \"%s\".\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "" #: vmsjobs.c:498 #, fuzzy, c-format msgid "Redirected error to %s\n" msgstr "ËÁÔÁÌÏÇ \"%s\"\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "úÁͦÓÔØ ÚÁÄÁÎÏÇÏ ×ÉËÏÎÕ¤ÔØÓÑ %s\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "ðÏÍÉÌËÁ ÐÏÒÏÄÖÅÎÎÑ ÐÒÏÃÅÓÕ, %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# ûÌÑÈÉ ÐÏÛÕËÕ VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# îÅ ×ÉÚÎÁÞÅÎÉÊ ÛÌÑÈ ÐÏÛÕËÕ \"vpath\"." #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u \"vpath\" ÛÌÑÈÉ ÐÏÛÕËÕ.\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# îÅ ×ÉÚÎÁÞÅÎÉÊ ÚÁÇÁÌØÎÉÊ (ÚͦÎÎÁ \"VPATH\") ÛÌÑÈ ÐÏÛÕËÕ." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# úÁÇÁÌØÎÉÊ (ÚͦÎÎÁ \"VPATH\") ÛÌÑÈ ÐÏÛÕËÕ:\n" "# " #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "óÉÎÔÁËÓÉÞÎÁ ÐÏÍÉÌËÁ, ×ÓÅ ÝÅ ×ÓÅÒÅÄÉΦ '\"'\n" #, fuzzy #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "" #~ "ïÔÒÉÍÁÎÉÊ ÓÉÇÎÁÌ SIGCHLD; ÎÁÝÁÄË¦× Ú ÎÅÏÐÒÁÃØÏ×ÁÎÉÍÉ ÒÅÚÕÌØÔÁÔÁÍÉ %d.\n" #~ msgid "no file name for `%sinclude'" #~ msgstr "ÎÅ ×ËÁÚÁÎÏ ¦Í'Ñ ÆÁÊÌÕ ÄÌÑ \"%sinclude\"" #, fuzzy #~ msgid "target `%s' leaves prerequisite pattern empty" #~ msgstr "Ã¦ÌØ \"%s\" ΊצÄÐÏצÄÁ¤ ÚÒÁÚËÕ Ã¦ÌÅÊ" #~ msgid " impossibilities in %u directories.\n" #~ msgstr " ÎÅÄÏÓÑÖÎÉÈ Ã¦ÌÅÊ Õ %u ËÁÔÁÌÏÇÁÈ.\n" #~ msgid "# %u variables in %u hash buckets.\n" #~ msgstr "# %u ÚͦÎÎÉÈ Õ %u ÏÓÅÒÅÄËÁÈ ÈÅÛ-ÔÁÂÌÉæ.\n" #~ msgid "# No variables." #~ msgstr "# úͦÎÎÉÈ ÎÅÍÁ." #, fuzzy #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "" #~ "# Õ ÓÅÒÅÄÎØÏÍÕ %.1f ÆÁÊÌ¦× Õ ÏÓÅÒÅÄËÕ, ÍÁËÓ. %u ÆÁÊÌ¦× Õ ÏÄÎÏÍÕ " #~ "ÏÓÅÒÅÄËÕ.\n" #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# Õ ÓÅÒÅÄÎØÏÍÕ %.1f ÚͦÎÎÉÈ × ÏÓÅÒÅÄËÕ, ÍÁËÓ. %u × ÏÄÎÏÍÕ ÏÓÅÒÅÄËÕ.\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "" #~ "# Õ ÓÅÒÅÄÎØÏÍÕ %d.%d ÚͦÎÎÉÈ × ÏÓÅÒÅÄËÕ, ÍÁËÓ. %u × ÏÄÎÏÍÕ ÏÓÅÒÅÄËÕ.\n" #, fuzzy #~ msgid "%s access: user %lu (real %lu), group %lu (real %lu)\n" #~ msgstr "" #~ "ðÒÁ×Á ÄÏÓÔÕÐÕ ÄÏ %s: ËÏÒÉÓÔÕ×ÁÞ %d (ĦÊÓÎÉÊ %d), ÇÒÕÐÁ %d (ĦÊÓÎÁ %d)\n" #~ msgid "*** Warning: File `%s' has modification time in the future (%s > %s)" #~ msgstr "*** õ×ÁÇÁ: ÆÁÊÌ \"%s\" ÍÁ¤ ÞÁÓ ÚͦÎÉ Õ ÍÁÊÂÕÔÎØÏÍÕ (%s > %s)" #~ msgid "" #~ ", by Richard Stallman and Roland McGrath.\n" #~ "%sBuilt for %s\n" #~ "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" #~ "%s\tFree Software Foundation, Inc.\n" #~ "%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" #~ "\n" #~ "%sReport bugs to .\n" #~ "\n" #~ msgstr "" #~ ", Á×ÔÏÒÉ Richard Stallman ¦ Roland McGrath.\n" #~ "%sðÏÂÕÄÏ×ÁÎÁ ÄÌÑ %s\n" #~ "%sCopyright (C) 1988, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 2000\n" #~ "%s Free Software Foundation, Inc.\n" #~ "%sãÅ ×¦ÌØÎÁ ÐÒÏÇÒÁÍÁ; ÐÏÄÒÏÂÉæ ÐÒÏ ÕÍÏ×ÁÈ ÐÏÛÉÒÅÎÎÑ ÄÉ×¦ÔØÓÑ\n" #~ "%sÕ ×ÉȦÄÎÏÍÕ ÔÅËÓÔ¦. íÉ îå ÎÁÄÁ¤ÍÏ ÇÁÒÁÎÔ¦Ê; ÎÁ×¦ÔØ ÇÁÒÁÎÔ¦Ê\n" #~ "%sëïíåòã¶êîï· ã¶îîïóô¶ ÁÂÏ ðòéäáôîïóô¶ äìñ ëïîëòåôîï· ã¶ì¶.\n" #~ "\n" #~ "%sðÏצÄÏÍÌÑÊÔÅ ÐÒÏ ÐÏÍÉÌËÉ .\n" #~ msgid "Allow N jobs at once; infinite jobs with no arg" #~ msgstr "" #~ "úÁÐÕÓËÁÔÉ ÏÄÎÏÞÁÓÎÏ ÄÏ î ÚÁ×ÄÁÎØ; ÑËÝÏ ÁÒÇÕÍÅÎÔ ÎÅ ÚÁÄÁÎÉÊ,\n" #~ " ÞÉÓÌÏ ÚÁ×ÄÁÎØ ÎÅÏÂÍÅÖÅÎÏ" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "ðÅÒÅÊÔÉ Õ ëáôáìïç ÐÅÒÅÄ ÐÏÞÁÔËÏÍ ÐÒÁæ" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "÷×ÁÖÁÔÉ æáêì ÎÅÏÂÍÅÖÅÎÏ ÎÏ×ÉÍ" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "÷×ÁÖÁÔÉ æáêì ÄÕÖÅ ÓÔÁÒÉÍ ¦ ÎÅ ÐÅÒÅÚÂÉÒÁÔÉ ÊÏÇÏ" #~ msgid "DIRECTORY" #~ msgstr "ëáôáìïç" #~ msgid "Disable the built-in implicit rules" #~ msgstr "îÅ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ×ÂÕÄÏ×ÁΦ ÎÅÑ×Φ ÐÒÁ×ÉÌÁ" #, fuzzy #~ msgid "Disable the built-in variable settings" #~ msgstr "îÅ ×ÉËÏÒÉÓÔÏ×Õ×ÁÔÉ ×ÂÕÄÏ×ÁΦ ÎÅÑ×Φ ÐÒÁ×ÉÌÁ" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "îÅ ×ÉËÏÎÕ×ÁÔÉ ËÏÍÁÎÄÉ, ÐÒÏÓÔÏ ÎÁÄÒÕËÕ×ÁÔÉ §È" #~ msgid "Don't echo commands" #~ msgstr "îÅ ×É×ÏÄÉÔÉ ËÏÍÁÎÄÉ" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "" #~ "îÅ ÚÁÐÕÓËÁÔÉ ÐÁÒÁÌÅÌØÎ¦ ÚÁ×ÄÁÎÎÑ ÐÏËÉ ÚÁ×ÁÎÔÁÖÅÎÎÑ ÎÅ ÚÎÉÚÉÔØÓÑ ÄÏ N" #~ msgid "Entering" #~ msgstr "÷ÈÏÖÕ Õ" #~ msgid "Environment variables override makefiles" #~ msgstr "úͦÎΦ ÓÅÒÅÄÏ×ÉÝÁ ÐÅÒÅËÒÉ×ÁÀÔØ ÚͦÎΦ, ×ÉÚÎÁÞÅΦ Õ make-ÆÁÊ̦" #~ msgid "FILE" #~ msgstr "æáêì" #~ msgid "FLAGS" #~ msgstr "ïúîáëé" #~ msgid "Ignore errors from commands" #~ msgstr "¶ÇÎÏÒÕ×ÁÔÉ ÐÏÍÉÌËÉ ËÏÍÁÎÄ" #~ msgid "Ignored for compatibility" #~ msgstr "¶ÇÎÏÒÏ×ÁÎÏ ÄÌÑ ÓÕͦÓÎÏÓÔ¦" #~ msgid "Initialized" #~ msgstr "¶Î¦Ã¦Á̦ÚÏ×ÁÎÉÊ" #~ msgid "Keep going when some targets can't be made" #~ msgstr "ðÒÏÄÏ×ÖÕ×ÁÔÉ ÒÏÂÏÔÕ, ÎÁ×¦ÔØ ÑËÝÏ ÄÅÑ˦ æ̦ ÎÅ ÄÏÓÑÇÎÕÔ¦" #~ msgid "Leaving" #~ msgstr "úÁÌÉÛÁÀ" #~ msgid "Print lots of debugging information" #~ msgstr "÷É×ÏÄÉÔÉ ÐÏצÄÏÍÌÅÎÎÑ ÄÌÑ ×¦ÄÌÁÇÏÄÖÅÎÎÑ" #~ msgid "Print make's internal database" #~ msgstr "îÁÄÒÕËÕ×ÁÔÉ ×ÎÕÔÒ¦ÛÎÀ ÂÁÚÕ ÄÁÎÉÈ make" #~ msgid "Print the current directory" #~ msgstr "îÁÄÒÕËÕ×ÁÔÉ ÐÏÔÏÞÎÉÊ ËÁÔÁÌÏÇ" #~ msgid "Print the version number of make and exit" #~ msgstr "ðÏËÁÚÁÔÉ ¦ÎÆÏÒÍÁæÀ ÐÒÏ ×ÅÒÓ¦§ ¦ ×ÉÊÔÉ" #~ msgid "Print this message and exit" #~ msgstr "ðÏËÁÚÁÔÉ ÃÀ ÄÏצÄËÕ ¦ ×ÉÊÔÉ" #, fuzzy #~ msgid "Print various types of debugging information" #~ msgstr "÷É×ÏÄÉÔÉ ÐÏצÄÏÍÌÅÎÎÑ ÄÌÑ ×¦ÄÌÁÇÏÄÖÅÎÎÑ" #~ msgid "Read FILE as a makefile" #~ msgstr "ðÒÏÞÉÔÁÔÉ æáêì ÑË make-ÆÁÊÌ" #, fuzzy #~ msgid "Removing child 0x%08lx PID %ld %s from chain.\n" #~ msgstr "÷ÉÄÁÌÅÎÎÑ ÎÁÝÁÄËÁ 0x%08lx PID %d%s Ú ÌÁÎÃÀÖËÁ ÁËÔÉ×ÎÉÈ ÎÁÝÁÄ˦×.\n" #~ msgid "Run no commands; exit status says if up to date" #~ msgstr "îÅ ×ÉËÏÎÕ×ÁÔÉ ËÏÍÁÎÄÉ, ËÏÄ ÚÁ×ÅÒÛÅÎÎÑ ÐÏËÁÖÅ ÞÉ ÏÎÏ×ÌÅÎÏ" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "ûÕËÁÔÉ make-ÆÁÊÌÉ, Ñ˦ ÎÅÏÂȦÄÎÏ ×ËÌÀÞÉÔÉ, Õ ÃØÏÍÕ ëáôáìïú¶" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "ðÒÉÚÕÐÉÎÉÔÉ ÐÒÏÃÅÓÉ ÄÌÑ ÐÒɤÄÎÁÎÎÑ ×¦ÄÌÁÇÏÄÖÕ×ÁÞÁ" #~ msgid "Touch targets instead of remaking them" #~ msgstr "ðÏÎÏ×ÉÔÉ ÞÁÓ ÓÔ×ÏÒÅÎÎÑ Ã¦ÌÅÊ, Á ÎÅ ÐÅÒÅÚÂÉÒÁÔÉ §È" #~ msgid "Turn off -w, even if it was turned on implicitly" #~ msgstr "÷¦ÄͦÎÉÔÉ ËÌÀÞ -w, ÎÁ×¦ÔØ ÑËÝÏ ÊÏÇÏ ÂÕÌÏ Ñ×ÎÏ ÚÁÚÎÁÞÅÎÏ" #~ msgid "Turns off -k" #~ msgstr "÷¦ÄͦÎÉÔÉ ËÌÀÞ -k" #~ msgid "Warn when an undefined variable is referenced" #~ msgstr "÷ÉÄÁ×ÁÔÉ ÐÏÐÅÒÅÄÖÅÎÎÑ ÐÒÉ ÐÏÓÉÌÁÎΦ ÎÁ ÎÅ×ÉÚÎÁÞÅÎÕ ÚͦÎÎÕ" #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# %u ÆÁÊÌ¦× × %u ÏÓÅÒÅÄËÁÈ ÈÅÛ-ÔÁÂÌÉæ.\n" #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# æÁÊÌ¦× ÎÅÍÁ." #~ msgid "an unknown directory" #~ msgstr "ÎÅצÄÏÍÉÊ ËÁÔÁÌÏÇ" #~ msgid "directory `%s'\n" #~ msgstr "ËÁÔÁÌÏÇ \"%s\"\n" make-dfsg-3.81.orig/po/vi.gmo0000644000175000017500000012365110416553102016261 0ustar srivastasrivastaÞ•{ô ýÌÀÁÞ&÷ . !7 -Y ‡ ™ -º è 'þ #&!J! a!o!!"«!"Î!ñ! "L."P{"MÌ"@#o[#oË#P;$FŒ$JÓ$€%9Ÿ%CÙ%f&_„&;ä&; 'O\'J¬'}÷'wu(~í(>l)O«)Cû)3?*Fs*Iº*;+ @+J+"g+ Š+—+(¦+ Ï+Ý+ô+ ,(,;, M,W,f,o,%€,¦, ¯,7º,ò,-.-1H-z-“-«-Å-(ã- .&!.*H.&s.+š.+Æ.ò.#/#+/)O/-y/§/À/$×/9ü/603U0‰0.£0Ò0î0 1!1$;1=`1"ž1Á1Ê1Ñ1"ç1 2!'2I2e2+2­2Ç2,á23%,3,R3-3 ­3&Î3õ34.54d4/„4œ´4&Q5 x5%™5¿51ß5 66#46#X6L|66É677.7B74`7>•7 Ô7+Þ7* 858M8 U8"a8'„8¬8»8Ê8Ü8 ì8 ø899 :9 G9%T9z9$š9¿9=Ù9:: R:0s:¤: Ã:Í:æ:+;!,; N;[; u;ƒ;Œ; ;¶;$Ì;'ñ;<#9<]<"x<›<,´<á<)ÿ<)=!B=&d=‹=«= ²=¿=È=%Ü=>> )>3>#:>^>0t>'¥>3Í> ?+ ?9?-U?%ƒ?-©?'×?ÿ?@<@!Y@{@ ™@*¤@Ï@'ì@ A6A UA-cA-‘A1¿A1ñA#B;B3OBƒBˆBšB°B(ÆB)ïB/C6IC€C˜C²C ËC1×C- D'7D-_DD"­D#ÐD ôDE EE&EAEIEZEnE&ƒE+ªE6ÖE) F(7F `F*kF–F#¬F&ÐF÷FG5GFGaGyG!ŽG °G¼GÒG!èG H H=YBFY7‰Y<ÁYVþYmUZlÃZX0[|‰[ž\›¥\kA]K­]Ôù]BÎ^K_”]_Žò_L`FÎ`{aT‘a–æa­}bÁ+cXícxFdk¿dR+eX~ed×e@$Š@cŠ0¤Š5ÕŠ7 ‹C‹MS‹F¡‹6è‹7Œ.WŒ/†Œ>¶ŒõŒ 42 gt¯.ÏCþdBŽ<§ŽGäŽ,>=|:—6Ò= 2Gz0’8Ã.ü4+‘`‘!z‘!œ‘4¾‘,ó‘. ’WO’J§’ò’“,“!H“Ej“ °“T½“O”db”dÇ”/,•K\• ¨•0µ•$æ• –$–9>–(x–6¡–Ø–ë–ú–'—*B—–m—s˜Tx˜3͘3™M5™0ƒ™x´™g-š3•š=Éš9›VA›˜›D¨›í›&œ(œCœJXœH£œìœaajOÌ^ž[{žYמY1Ÿ+‹Ÿ@·ŸCøŸ0< Km T¹ #¡Q2¡P„¡1Õ¡&¢Q.¢=€¢6¾¢Iõ¢3?£s£4„£K¹£)¤!/¤‚Q¤„Ô¤]Y¥@·¥„ø¥=}¦4»¦|ð¦ m§ w§#…§­ä;—Ò<wÞ[`v,,0×Z65’l$ ÐDó"7O³ ªM4S<`Ñ |5DeÁã‚IJúákFù\¹fohõð/2©ßF>ÛRb J˜ƒ)Õjþfê#iý¸íH¦“amñô¢ÎX\ON}…XA½{BÍÄe éÉ97xü+µ«%?®ÈyE&?cP'ŸœmƱ1 SjÂ~C(ïÖoå'qîʲL¨·] @;8ÅGn‡Üz.%àRkKA]¤! »Ba0d¶¯÷ Gt^-u=V–zMnÏ£Ù/¥¡gp‘ØsI[UšŠÀ1Ë¿ps3+ Hq€†bN4dẺÇ´TW ݈°Z*§!^#-U”u{*Œç‹:•™¼¬WQÚiæLöwlVÔP>C2›ìèrQºÃ_9ø(òÓÿûvž¾"$x3& 8ëtYKcyh.: @Ž_6Tg„râ)Y= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # Finished Make data base on %s # General (`VPATH' variable) search path: # # Implicit Rules # Make data base, printed on %s # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # Pattern-specific Variable Values # VPATH Search Paths # Variables # files hash-table stats: # %sThis program built for %s %sThis program built for %s (%s) Counted %d args in failed launch This program built for %s This program built for %s (%s) --debug[=FLAGS] Print various types of debugging information. --no-print-directory Turn off -w, even if it was turned on implicitly. --warn-undefined-variables Warn when an undefined variable is referenced. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -I DIRECTORY, --include-dir=DIRECTORY Search DIRECTORY for included makefiles. -L, --check-symlink-times Use the latest mtime between symlinks and target. -R, --no-builtin-variables Disable the built-in variable settings. -S, --no-keep-going, --stop Turns off -k. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. -b, -m Ignored for compatibility. -d Print lots of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. -h, --help Print this message and exit. -i, --ignore-errors Ignore errors from commands. -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no arg. -k, --keep-going Keep going when some targets can't be made. -l [N], --load-average[=N], --max-load[=N] Don't start multiple jobs unless load is below N. -n, --just-print, --dry-run, --recon Don't actually run any commands; just print them. -o FILE, --old-file=FILE, --assume-old=FILE Consider FILE to be very old and don't remake it. -p, --print-data-base Print make's internal database. -q, --question Run no commands; exit status says if up to date. -r, --no-builtin-rules Disable the built-in implicit rules. -s, --silent, --quiet Don't echo commands. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (don't care) (from `%s', line %lu) (from `%s', line %lu): (name might be truncated) (no default goal) (no ~ expansion) (remote) (search path) files, impossibilities impossibilities in %lu directories. so far. terminal.# A default, MAKEFILES, or -include/sinclude makefile.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Phony target (prerequisite of .PHONY).# Precious file (prerequisite of .PRECIOUS).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:# variable set hash-table stats: $SHELL changed (was `%s', now `%s') %s (line %d) Bad shell context (!unixy && !batch_mode_shell) %s is suspending for 30 seconds...%s%s: %s%s: %s%s: Command not found%s: Entering an unknown directory %s: Entering directory `%s' %s: Leaving an unknown directory %s: Leaving directory `%s' %s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %s: user %lu (real %lu), group %lu (real %lu) %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s%sThis is free software; see the source for copying conditions. %sThere is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A %sPARTICULAR PURPOSE. %s[%u]: Entering an unknown directory %s[%u]: Entering directory `%s' %s[%u]: Leaving an unknown directory %s[%u]: Leaving directory `%s' *** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored)-warning, CTRL-Y will leave sub-process(es) around. -warning, you may have to re-enable CTRL-Y handling from DCL. . Stop. .DEFAULT_GOAL contains more than one target.LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Bad system callBroken pipeBus errorCPU time limit exceededCannot create a temporary file Child accessChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Collisions=%ld/%ld=%.0f%%Commands for `%s' will be ignored in favor of those for `%s'.Commands for file `%s' were found by implicit rule search,Commands of `%s' are being run. Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. ContinuedCould not restore stdin Could not restore stdout Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError spawning, %d Error, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Found prerequisite `%s' as VPATH `%s' Giving up on target file `%s'. HangupI/O possibleIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInitialized accessInterruptKilledLive child 0x%08lx (%s) PID %ld %s Load=%ld/%ld=%.0f%%, Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Make accessMakefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Making `%s' due to always-make flag. Malformed target-specific variable definitionMember `%s'%s: %ld bytes at %ld (%ld). Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundNothing to be done for `%s'.Obtained token for child 0x%08lx (%s). Options: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' is order-only for target `%s'. Prerequisite `%s' of target `%s' does not exist. Profiling timer expiredPruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitRe-executing[%u]:Reading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Recursive variable `%s' references itself (eventually)Redirected error to %s Redirected input from %s Redirected output to %s Rehash=%d, Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Removing child 0x%08lx PID %ld%s from chain. Removing intermediate files... Report bugs to Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Symbolic links not supported: disabling -L.Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating goal targets.... Updating makefiles.... Urgent I/O conditionUsage: %s [options] [target] ... User accessUser defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Warning: File `%s' has modification time %.2g s in the futureWarning: File `%s' has modification time in the futureWindow changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't allocate %ld bytes for hash table: memory exhaustedcan't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecommands commence before first targetcreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentenvironment under -eextraneous `%s'extraneous `endef'find_and_set_shell path search set default_shell = %s find_and_set_shell setting default_shell = %s first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnono more file handles: could not duplicate stdin no more file handles: could not duplicate stdout non-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalprerequisites cannot be defined in command scriptsread jobs pipespawnvpe: environment space might be exhaustedsys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a non-empty string argumentthe `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: -jN forced in submake: disabling jobserver mode.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: jobserver unavailable: using -j1. Add `+' to parent make rule.warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write errorwrite error: %swrite jobserverProject-Id-Version: make-3.81-b3 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2006-02-05 19:19+1030 Last-Translator: Clytie Siddall Language-Team: Vietnamese MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Plural-Forms: nplurals=1; plural=0 X-Generator: LocFactoryEditor 1.6b36 # %u ÄÆ°á»ng dẫn tìm kiếm « vpath ». # %u quy tắc ngầm, %u # %u giá trị biến đặc trưng cho mẫu # Thư mục # Tập tin # Má»›i xong cÆ¡ sở dữ liệu Make vào %s # ÄÆ°á»ng dẫn tìm kiếm chung (biến « VPATH »). # # Quy tắc ngầm # CÆ¡ sở dữ liệu Make, được in ra vào %s # Không có đưá»ng dẫn tìm kiếm chung (biến « VPATH »). # Không có quy tắc ngầm. # Không có giá trị biến đặc trưng cho mẫu # Giá trị biến đặc trưng cho mẫu # ÄÆ°á»ng dẫn tìm kiếm VPATH # Biến # thống kê bảng băm các tập tin: # %sChương trình này đã được xây dụng cho %s %sChương trình này đã được xây dụng cho %s (%s) Äã đếm %d đối số trong việc khởi chạy bị lá»—i Chương trình này đã được xây dụng cho %s Chương trình này đã được xây dụng cho %s (%s) --debug[=CỜ...] In ra các kiểu thông tin _gỡ lá»—i_ khác nhau. --no-print-directory Tắt « -w », dù khi nó được bật ngầm (_không in ra thư mục_) --warn-undefined-variables _Cảnh báo_ khi tham chiếu má»™t _biến chưa được định nghÄ©a_. -B, --always-make _Luôn luôn tạo_ má»i đích (không Ä‘iá»u kiện). -C THƯ_MỤC, --directory=THƯ_MỤC Chuyển đổi sang thư mục này, trước hết. -I THƯ_MỤC, --include-dir=THƯ_MỤC Tìm kiếm tập tin tạo (makefile) đã _bao gồm_ trong _thư mục_ này. -L, --check-symlink-times Dùng giá»_m cuối cùng giữa liên kết tượng trưng và đích. (_kiểm tra giá» liên kết tượng trưng_) -R, --no-builtin-variables Tắt các thiết lập biến có sẵn. (_không có biến có sẵn_) -S, --no-keep-going, --stop Tắt « -k ». (không cứ làm, dừng) -W TẬP_TIN --what-if=TẬP_TIN --new-file=TẬP_TIN --assume-new=TẬP_TIN Xem là tập tin này là má»›i vô hạn. (_gì nếu, tập tin má»›i, giả sá»­ má»›i_) -b, -m Bị bá» qua để tương thích. -d In ra rất nhiá»u thông tin _gỡ lá»—i_. -e, --environment-overrides Các biến _môi trưá»ng có quyá»n cao hÆ¡n_ các tập tin tạo (makefile). -f TẬP_TIN, --file=TẬP_TIN, --makefile=TẬP_TIN Äá»c tập tin này dạng tập tin tạo (makefile). -h, --help Hiển thị _trợ giúp_ này rồi thoát. -i, --ignore-errors _Bá» qua các lá»—i_ từ các lệnh. -j [N], --jobs[=N] Cho phép N (số) _công việc_ đồng thá»i; vô hạn khi không có đối số -k, --keep-going _Cứ làm_ khi không thể tạo má»™t số đích. -l [N], --load-average[=N], --max-load[=N] Äừng khởi chạy nhiá»u công việc, trừ trá»ng tải dưới N (số). -n, --just-print, --dry-run, --recon Äừng thật chạy lệnh nào, chỉ in ra hết. (_chỉ in, chạy thá»±c hành, sá»± thăm dò_) -o TẬP_TIN, --old-file=TẬP_TIN, --assume-old=TẬP_TIN Xem tập tin này là rất cÅ© nên đừng tạo lại nó. (_cÅ©, tập tin cÅ©, giả sá»­ cÅ©_) -p, --print-data-base _In ra cÆ¡ sở dữ liệu_ ná»™i bá»™ cá»§a trình make. -q, --question Äừng chạy lệnh nào; trạng thái thoát nói nếu hiện thá»i hay không. (_câu há»i_) -r, --no-builtin-rules Tắt các quy tắc ngầm có sẵn. (_không có quy tắc có sẵn_) -s, --silent, --quiet Äừng vá»ng (hiển thị) lệnh. (_câm, im_) -t, --touch Touch các đích thay vào tạo lại chúng. (_sá»_) -v, --version In ra số thứ tá»± _phiên bản_ cá»§a trình make, rồi thoát. -w, --print-directory _In ra thư mục_ hiện thá»i. Ngày %s Äang bá» qua tên đưá»ng dẫn VPATH « %s ». uid = %d, gid = %d, chế độ = 0%o. (sẵn có): (lõi bị đổ) (bạn có muốn dùng TAB thay vào 8 dấu cách chứ?) (cÅ©ng được) (từ « %s », dòng %lu) (từ « %s », dòng %lu): (có lẽ tên bị cụt) (không có mục tiêu mặc định) (không mở rá»™ng ~) (từ xa) (đưá»ng dẫn tìm kiếm) tập tin, Ä‘iá»u không thể Ä‘iá»u không thể trong %lu thư mục. cho đến đây. thiết bị cuối# Tập tin tạo (makefile) mặc định, kiểu MAKEFILES, hay kiểu « -include/sinclude ».# CÅ©ng tạo :# Äích dòng lệnh.# Các lệnh Ä‘ang chạy (ÄÂY LÀ Lá»–I).# Các lệnh phụ thuá»™c Ä‘ang chạy (ÄÂY LÀ Lá»–I).# Việc cập nhật bị lá»—i.# Tập tin không tồn tại.# Tập tin đã được cập nhật.# Tập tin chưa được cập nhật.# Tập tin là Ä‘iá»u kiện tiên quyết trung cấp.# Tập tin rất cÅ©.# Má»›i tìm kiếm kiểu quy tắc ngầm.# Chưa tìm kiếm kiểu quy tắc ngầm.# Cuống mẫu ngầm/tÄ©nh: « %s » # Giá trị không hợp lệ trong bá»™ phạn « command_state » (tính trạng lệnh)!# Giá trị không hợp lệ trong bá»™ phạn « update_status » (trạng thái cập nhật)!# Sá»­a đổi cuối cùng %s # Chưa bao giá» kiểm tra giá» sá»­a đổi.# Cần thiết cập nhật (« -q » đã lập).# Äích giả (Ä‘iá»u kiện tiên quyết cá»§a .PHONY).# Tập tin qúy (Ä‘iá»u kiện tiên quyết cá»§a .PRECIOUS).# Äã được cập nhật.# các lệnh cần thi hành# %s (thiết bị %d, nút thông tin [%d,%d,%d]): # %s (thiết bị %d, nút thông tin [%d,%d,%d]): không thể được mở. # %s (thiết bị %ld, nút thông tin %ld): # %s (thiết bị %ld, nút thông tin %ld): không thể được mở. # %s (khóa %s, giá»_m %d): # %s (khóa %s, giá»_m %d): không thể được mở. # %s: không thể lấy các thông tin vá» nó. # Không có đưá»ng dẫn tìm kiếm VPATH nào# Không phải là đĩch:# thống kê bảng băm lập biến: $SHELL đã thay đổi (đã « %s », là « %s ») %s (dòng %d) Ngữ cảnh hệ vá» sai (!unixy && !batch_mode_shell) %s Ä‘ang ngưng được 30 giây...%s%s: %s%s: %s%s: Không tìm thấy lệnh.%s: Äang vào má»™t thư mục lạ %s: Äang vào thư mục « %s » %s: Äang rá»i khá»i má»™t thư mục lạ %s: Äang rá»i khá»i thư mục « %s » %s: Không tìm thấy chương trình hệ vá»%s: Nhãn thá»i gian ở ngoại phạm vị nên thay thế %s%s: không cho phép tùy chá»n « -- %c » %s: tùy chá»n không hợp lệ « -- %c » %s: tùy chá»n « %c%s » không cho phép đối số %s: tùy chá»n « %s » là mÆ¡ hồ %s: tùy chá»n « %s » cần đến đối số %s: tùy chá»n « --%s » không cho phép đối số %s: tùy chá»n « -W %s » không cho phép đối số %s: tùy chá»n « -W %s » là mÆ¡ hồ %s: tùy chá»n cần đến đối số « -- %c » %s: không nhận ra tùy chá»n « %c%s » %s: không nhận ra tùy chá»n « --%s » %s: ngưá»i dùng %lu (thật %lu), nhóm %lu (thật %lu) %sKhông có quy tắc tá»›i đích make « %s »%s%sKhông có quy tắc tá»›i đích make « %s », cần thiết bởi « %s »%s%sPhần má»m này tá»± do; hãy xem mã nguồn để tìm thấy Ä‘iá»u kiện sao chép. %sKhông bảo đảm gì cả, dù khả năng bán hay khả năng làm việc dứt khoát. %s %s[%u]: Äang vào má»™t thư mục lạ %s[%u]: Äang vào thư mục « %s » %s[%u]: Äang rá»i khá»i má»™t thư mục lạ %s[%u]: Äang rá»i khá»i thư mục « %s » *** Có lẽ bá»™ phạn « %s » là giả; chưa bị xóa bá»*** Ngắt *** Äang xóa bá» tập tin « %s »...*** Äang xóa bá» tập tin trung cấp « %s »...*** Äang đợi các việc chưa xong...*** Cảnh báo : tập tin « .LOW_RESOLUTION_TIME » (thá»i gian giải pháp thấp) « %s » có nhãn thá»i gian cao*** [%s] Có lẽ bá»™ phạn « %s » là giả; chưa bị xóa bá»*** [%s] Äang xóa bá» tập tin « %s »...*** [%s] Lá»—i %d*** [%s] Lá»—i 0x%x*** [%s] Lá»—i 0x%x (bị bá» qua)• cảnh báo, CTRL-Y sẽ để má»™t số tiến trình con còn lại. • cảnh báo, có lẽ bạn sẽ phải bật lại khả năng quản lý bằng CTRL-Y từ DCL. . Dừng. « .DEFAULT_GOAL » (đích mặc định) chứa nhiá»u đích.Yếu tố « .LIBPATTERNS » (các mẫu thư viên) « %s » không phải là mẫu; Ä‘ang dùng tên VPATH (đưá»ng dẫn V) « %s »Bị há»§y bá»Äồng hồ báo độngÄang tránh sá»± đệ qui quy tắc ngầm. Lá»–I: « num_pattern_rules » (số quy tắc mẫu) không đúng! %u != %uBUILTIN CD %s BUILTIN RM %s BUILTIN [%s][%s] Cuá»™c gá»i hệ thống saiá»ng dẫn bị ngắtLá»—i mạch nốiGiá»›i hạn thá»i gian CPU (đơn vị xá»­ lý trung tâm) bị vượt quáKhông thể tạo tên tập tin tạm thá»i Truy cập Ä‘iá»u conTiến trình con đã thoátCách phụ thuá»™c vòng tròn « %s ↠%s » bị gỡ bá».Äang làm sạch tập tin bó tạm thá»i: %s Äang làm sạch tập tin bó tạm thá»i %s... Xung đột=%ld/%ld=%.0f%%Các lệnh cho « %s » sẽ bị bá» qua để á»§ng há»™ các Ä‘iá»u cho « %s ».Các lệnh cho tập tin « %s » đã được tìm bằng việc tìm kiếm quy tắc ngầm,Äang chạy các lệnh cá»§a « %s ». Các lệnh được ghi rõ cho tập tin « %s » vào %s:%lu,Äang suy nghÄ© tập tin đích « %s ». Äã tiếp tụcKhông thể phục hồi thiết bị nhập chuẩn Không thể phục hồi thiết bị xuất chuẩn Không thể chuyển đổi vá» thư mục gốc.Äang tạo tập tin bó tạm thá»i: %s Giá» hiện thá»iThuế quan không xuất được: %s Tín hiệu nguy hiểmBẫy EMTGặp lá»—i khi tạo và thá»±c hiện (spawn), %d Lá»—i, lệnh rá»—ng Äang thá»±c hiện %s thay thế Gặp chuá»—i chữ bắt nguồn ở ngoài sau chi thị « %s »Gặp chuá»—i chữ bắt nguồn ở ngoài sau chi thị « endef »Việc tạo lại tập tin tạo (makefile) « %s » bị lá»—i.Việc tạo lại tập tin đích « %s » bị lá»—i. Tập tin « %s » không tồn tại. Tập tin « %s » đã được suy nghÄ©. Giá»›i hạn kích cỡ tập tin bị vượt quáMá»›i xong các Ä‘iá»u kiện tiên quyết cá»§a tập tin đích « %s ». Má»›i cập nhật xong tập tin « %s ». Không có sẵn sàng bá»™ đồng xá»­ lý Ä‘iểm phù độngNgoại lệ Ä‘iểm phù độngTìm thấy má»™t quy tắc ngầm cho « %s ». Má»›i tìm Ä‘iá»u kiện tiên quyết « %s » dạng VPATH « %s » Äang chịu thua vá» tập tin đích « %s ». Ngừng nóiI/O (nhập/xuất) có thểBẫy IOTLệnh cấmKhông tìm thấy tập tin tạo (makefile) đã bao gồm « %s ».Yêu cầu thông tinTruy cấp đã sở khởiNgắtBị buá»™c kết thúcÄiá»u con động 0x%08lx (%s) PID %ld %s Trá»ng tải=%ld/%ld=%.0f%%, Äang tìm quy tắc vá»›i tập tin trung cấp « %s ». Äang tìm quy tắc nguầm cho « %s ». Äang tìm quy tắc ngầm vá» bá»™ phạn kho cho « %s ». Truy cập MakeTập tin tạo (makefile) « %s » có lẽ sẽ vòng lặp; sẽ không tạo lại nó. Không tìm thấy tập tin tạo (makefile) « %s ».Tập tin tạo (makefile) từ thiết bị nhập chuẩn đã được ghi rõ hai lần.Äang tạo « %s » vì gặp cá» always-make (luôn luôn tạo). Lá»i định nghÄ©a biến đặc trưng cho đích dạng saiBá»™ phạn « %s »%s: %ld byte vá»›i %ld (%ld). Phải tạo lại đích « %s ». KhôngKhông có lệnh cho « %s », và chưa thật sá»± thay đổi Ä‘iá»u kiện tiên quyết nào. Không tìm thấy quy tắc ngầm cho « %s » Không cần tạo lại đích « %s ».Không có đíchChưa ghi rõ đích nào, và không tìm thấy tập tin tạo (makefile) nàoKhông có gì cần làm cho « %s ».Äã lấy hiệu bài cho Ä‘iá»u con 0x%08lx (%s). Tùy chá»n: Công việc song song (-j) không được há»— trợ trên ná»n tảng này.Bị cúp Ä‘iện đột ngá»™tÄiá»u kiện tiên quyết « %s » là má»›i hÆ¡n đích « %s » . Äiá»u kiện tiên quyết « %s » là cÅ© hÆ¡n đích « %s » . Äiá»u kiện tiên quyết « %s » là order-only (chỉ thứ tá»±) cho đích « %s ». Äiá»u kiện tiên quyết « %s » cá»§a đích « %s » không tồn tại. Bá»™ đếm khi theo dõi cách sá»­ dụng tiá»m năng hệ thống đã mãn hạnÄang xén bá»›t tập tin « %s ». Äang để Ä‘iá»u con 0x%08lx (%s) PID %ld%s trên dây. ThoátÄang thá»±c hiện lại[%u]:Äạng Ä‘á»c tập tin tạo (makefile) « %s »...Äạng Ä‘á»c các tập tin tạo (makefile)... Äang bắt Ä‘iá»u con thua 0x%08lx PID %ld %s Äang bắt Ä‘iá»u con thắng 0x%08lx PID %ld %s Vừa cố cập nhật tập tin « %s » nhưng bị lá»—i. Biến đệ qui « %s » tham chiếu chính nó (cuối cùng)Lá»—i đã được chuyển hướng đến %s Kết nhập đã được chuyển hướng từ %s Kết xuất đã được chuyển hướng đến %s Băm lại=%d, Äang từ chối Ä‘iá»u kiện tiên quyết ngầm không thể « %s ». Äang từ chối Ä‘iá»u kiện tiên quyết không thể « %s ». Má»›i nhả hiệu bài cho Ä‘iá»u con 0x%08lx (%s). Äang gỡ bá» Ä‘iá»u con 0x%08lx PID %ld%s ra dây. Äang gỡ bá» các tập tin trung cấp... Hãy thông báo lá»—i cho . Äang lập lại thành chế độ công việc đơn (-j1).Tài nguyên bị mấtSIGPHONESIGWINDLá»—i phân Ä‘oạnVẫn còn Ä‘ang cập nhật tập tin « %s »... Bị ngừngBị ngừng (tín hiệu)Bị ngừng (kết nhập tty)Bị ngừng (kết xuất tty)Má»›i tạo lại tập tin đích « %s ». Không há»— trợ liên kết tượng trưng: nên tắt « -L ».Äích « %s » là kiểu dấu hai chấm đôi và không có Ä‘iá»u kiện tiên quyết nào. Äích « %s » không được tạo lại vì gặp lá»—i.Tập tin đích « %s » cần được tạo lại dưới « -q ». Bị kết thúcÄang tạo các Ä‘iá»u kiện tiên quyết cá»§a « %s ». Bẫy vết/Ä‘iểm ngắtÄang thá»­ Ä‘iá»u kiện tiên quyết ngầm « %s ». Äang thá»­ quy tắc mẫu vá»›i cuống « %.*s ». Äang thá»­ Ä‘iá»u kiện tiên quyết quy tắc « %s ». Không biết lệnh builtin (có sẵn) « %s » Không biết lá»—i: %dÄạng cập nhật các đích mục tiêu... Äạng cập nhật các tập tin tạo (makefile)... Tình trạng I/O (nhập/xuất) khẩn cấpCách sá»­ dụng: %s [tùy_chá»n...] [đích] ... Truy cập ngưá»i dùngTín hiệu tá»± định nghÄ©a 1Tín hiệu tá»± định nghÄ©a 2Äang dùng các lệnh mặc định cho « %s ». Bá»™ đếm thá»i gian ảo đã mãn hạnCảnh báo : việc chuyển hướng rá»—ng Cảnh báo : tập tin « %s » có giá» sá»­a đổi « %.2g s » trong tương lai.Cảnh báo : tập tin « %s » có giá» sá»­a đổi trong tương lai.Cá»­a sổ đã thay đổi[%s] Lá»—i %d (bị bá» qua)« %s » là hiện thá»i.chỉ thị « override » (đè)đã cố sá»­ dụng tính năng không được há»— trợ « %s »tá»± độngnhưng « %s » hiện thá»i được xem là cùng má»™t tập tin vá»›i « %s ».không thể cấp phát %ld byte cho bảng băm: hết bá»™ nhá»› hoàn toànkhông thể thay đổi tên dấu hai chấm đôi « %s » thành dấu hai chấm đơn « %s »không thể thay đổi tên dấu hai chấm đơn « %s » thành dấu hai chấm đôi « %s »không thể buá»™c hạn chế trá»ng tải: không thể buá»™c hạn chế trá»ng tải vá»›i hệ Ä‘iá»u hành nàydòng lệnhlệnh bắt đầu trước đích thứ nhấtÄ‘ang tạo ống dẫn công việcmặc địnhđã ngá»§(30). Äang tiếp tục. dup jobserver (sao lục trình phục vụ công việc)chỉ thị « override » (đè) rá»—ngchuá»—i rá»—ng không hợp lệ dạng tên tập tintên biến rá»—ngmôi trưá»ngmôi trưá»ng dưới « -e »gặp « %s » bắt nguồn ở ngoàigặp « endef » bắt nguồn ở ngoàiViệc tìm kiếm đưá»ng dẫn « find_and_set_shell » (tìm và lập hệ vá») Ä‘ang lập « default_shell » (hệ vá» mặc định) = %s « find_and_set_shell » (tìm và lập hệ vá») Ä‘ang lập « default_shell » (hệ vá» mặc định) = %s đối số thứ nhất đối vá»›i hàm « word » (từ) phải là lá»›n hÆ¡n 0fopen (tập tin tạm thá»i) (_mở tập tin_)fwrite (tập tin tạm thá»i) (_ghi tập tin_)init jobserver pipe (sở khởi ống dẫn trình phục vụ công việc)lá»—i ná»™i bá»™ : tính trạng lệnh « %s »lá»—i ná»™i bá»™: gặp chuá»—i « --jobserver-fds » (trình phục vụ công việc -fds) không hợp lệ « %s ».lá»—i ná»™i bá»™: có nhiá»u tùy chá»n « --jobserver-fds » (trình phục vụ công việc -fds).chỉ thị « override » (đè) không hợp lệgặp cú pháp không hợp lệ trong đồ Ä‘iá»u kiện « lbr$ini_control » bị lá»—i vá»›i trạng thái = %d« lbr$set_module » đã không rút được thông tin mô-Ä‘un, trạng thái = %dtập tin tạothiếu « endef », « define » (định nghÄ©a) chưa kết thúcthiếu « endif »thiếu quy tắc trước các lệnhthiếu bá»™ phân cách%sthiếu mẫu đíchgặp quy tắc mẫu kiểu ngầm và chuẩn được trá»™n vá»›i nhaugặp quy tắc mẫu kiểu ngầm và tÄ©nh được trá»™n vá»›i nhaunhiá»u mẫu đíchkhôngkhông có bá»™ quản lý tập tin nữa: không thể nhân bản thiết bị nhập chuẩn không có bá»™ quản lý tập tin nữa: không thể nhân bản thiết bị xuất chuẩn đối số thứ nhất không dạng số đối vá»›i hàm « word » (từ)đối số thứ nhất không dạng số đối vá»›i hàm « wordlist » (danh sách từ)đối số thứ hai không dạng số đối vá»›i hàm « wordlist » (danh sách từ)chỉ cho phép má»™t « else » (nếu không thì) cho má»—i đồ Ä‘iá»u kiện thôikhông thể định nghÄ©a Ä‘iá»u kiện tiên quyết trong tập lệnh kiểu lệnhÄ‘á»c ống dẫn cá»§a các cá»™ng việcspawnvpe: có lẽ hết sức chứa môi trưá»ng hoàn toànviệc « search » (tìm kiếm hệ thống) bị lá»—i vá»›i %d đích « %s » không khá»›p vá»›i mẫu đíchđích « %s » được đưa ra nhiá»u lần trong cùng má»™t quy tắctập tin đích « %s » có mục nhập kiểu cả « : » lẫn « :: » Ä‘á»umẫu đích không chứa « %% »tùy chá»n « -%c » cần đến má»™t đối số dạng chuá»—i không rá»—ngtùy chá»n « -%c » cần đến má»™t đối số dạng số nguyên dươngbá»™ phạn kho touch chưa sẵn sàng trên VMStouch: kho « %s » không tồn tạitouch: má»›i nhận mã trả lại sai từ « ar_member_touch » trên « %s »touch: bá»™ phạn « %s » không tồn tại trong « %s »touch: « %s » không phải là má»™t kho hợp lệkhông thể mở thư viên « %s » để tra tìm bá»™ phạn « %s »không biết đặc tả cấp gỡ lá»—i « %s »tín hiệu lạunlink (bá» liên kết) (tập tin tạm thá»i): cuá»™c gá»i chưa được kết thúc cho hàm « %s »: thiếu « %c »tham chiếu biến chưa có kết thúchết bá»™ nhá»› ảo hoàn toàncảnh báo : má»›i phát hiện đối xứng lệch đồng hồ. Như thế thì bản xây dụng có lẽ không hoàn toàn.cảnh báo : « -jN » bị buá»™c trong tiến trình submake: nên tắt chế độ trình phục vụ công việc (jobserver).cảnh báo : đã xem ký tá»± NUL (rá»—ng) nên bá» qua phần còn lại cá»§a dòng đócảnh báo : Ä‘ang bá» qua các lệnh cÅ© cho đích « %s »cảnh báo : trình phục vụ công việc không sẵn sàng: nên dùng « -j1 ». Hãy thêm « + » vào quy tắc make mẹ.cảnh báo : Ä‘ang đè lên các lệnh cho đích « %s »cảnh báo : chưa định nghÄ©a biến « %.*s »Việc « windows32_openpipe (): process_init_fd() » (mở ống dẫn windows32: tiến trình sở khởi fd) bị lá»—i lá»—i ghilá»—i ghi: %sghi trình phục vụ công việcmake-dfsg-3.81.orig/po/vi.po0000644000175000017500000015267110416553102016121 0ustar srivastasrivasta# Vietnamese translation for Make. # Copyright © 2006 Free Software Foundation, Inc. # Clytie Siddall , 2006. # 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: 2006-02-05 19:19+1030\n" "Last-Translator: Clytie Siddall \n" "Language-Team: Vietnamese \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=1; plural=0\n" "X-Generator: LocFactoryEditor 1.6b36\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "đã cố sá»­ dụng tính năng không được há»— trợ « %s »" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "bá»™ phạn kho touch chưa sẵn sàng trên VMS" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch: kho « %s » không tồn tại" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch: « %s » không phải là má»™t kho hợp lệ" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch: bá»™ phạn « %s » không tồn tại trong « %s »" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch: má»›i nhận mã trả lại sai từ « ar_member_touch » trên « %s »" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "« lbr$set_module » đã không rút được thông tin mô-Ä‘un, trạng thái = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "« lbr$ini_control » bị lá»—i vá»›i trạng thái = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "không thể mở thư viên « %s » để tra tìm bá»™ phạn « %s »" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "Bá»™ phạn « %s »%s: %ld byte vá»›i %ld (%ld).\n" #: arscan.c:826 msgid " (name might be truncated)" msgstr "(có lẽ tên bị cụt)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " Ngày %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d, gid = %d, chế độ = 0%o.\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Ngắt\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] Có lẽ bá»™ phạn « %s » là giả; chưa bị xóa bá»" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** Có lẽ bá»™ phạn « %s » là giả; chưa bị xóa bá»" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] Äang xóa bá» tập tin « %s »..." #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** Äang xóa bá» tập tin « %s »..." #: commands.c:599 msgid "# commands to execute" msgstr "# các lệnh cần thi hành" #: commands.c:602 msgid " (built-in):" msgstr " (sẵn có):" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (từ « %s », dòng %lu):\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Thư mục\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s: không thể lấy các thông tin vá» nó.\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (khóa %s, giá»_m %d): không thể được mở.\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (thiết bị %d, nút thông tin [%d,%d,%d]): không thể được mở.\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (thiết bị %ld, nút thông tin %ld): không thể được mở.\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (khóa %s, giá»_m %d): " #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (thiết bị %d, nút thông tin [%d,%d,%d]): " #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (thiết bị %ld, nút thông tin %ld): " #: dir.c:1050 dir.c:1071 msgid "No" msgstr "Không" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " tập tin, " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "không" #: dir.c:1058 msgid " impossibilities" msgstr " Ä‘iá»u không thể" #: dir.c:1062 msgid " so far." msgstr " cho đến đây." #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr " Ä‘iá»u không thể trong %lu thư mục.\n" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "Biến đệ qui « %s » tham chiếu chính nó (cuối cùng)" #: expand.c:266 msgid "unterminated variable reference" msgstr "tham chiếu biến chưa có kết thúc" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "Các lệnh được ghi rõ cho tập tin « %s » vào %s:%lu," #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "" "Các lệnh cho tập tin « %s » đã được tìm bằng việc tìm kiếm quy tắc ngầm," #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "nhưng « %s » hiện thá»i được xem là cùng má»™t tập tin vá»›i « %s »." #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "Các lệnh cho « %s » sẽ bị bá» qua để á»§ng há»™ các Ä‘iá»u cho « %s »." #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "" "không thể thay đổi tên dấu hai chấm đơn « %s » thành dấu hai chấm đôi « %s »" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "" "không thể thay đổi tên dấu hai chấm đôi « %s » thành dấu hai chấm đơn « %s »" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** Äang xóa bá» tập tin trung cấp « %s »..." #: file.c:385 msgid "Removing intermediate files...\n" msgstr "Äang gỡ bá» các tập tin trung cấp...\n" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s: Nhãn thá»i gian ở ngoại phạm vị nên thay thế %s" #: file.c:782 msgid "Current time" msgstr "Giá» hiện thá»i" #: file.c:881 msgid "# Not a target:" msgstr "# Không phải là đĩch:" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "# Tập tin qúy (Ä‘iá»u kiện tiên quyết cá»§a .PRECIOUS)." #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "# Äích giả (Ä‘iá»u kiện tiên quyết cá»§a .PHONY)." #: file.c:907 msgid "# Command-line target." msgstr "# Äích dòng lệnh." #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "" "# Tập tin tạo (makefile) mặc định, kiểu MAKEFILES, hay kiểu « -include/" "sinclude »." #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# Má»›i tìm kiếm kiểu quy tắc ngầm." #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# Chưa tìm kiếm kiểu quy tắc ngầm." #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Cuống mẫu ngầm/tÄ©nh: « %s »\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# Tập tin là Ä‘iá»u kiện tiên quyết trung cấp." #: file.c:919 msgid "# Also makes:" msgstr "# CÅ©ng tạo :" #: file.c:925 msgid "# Modification time never checked." msgstr "# Chưa bao giá» kiểm tra giá» sá»­a đổi." #: file.c:927 msgid "# File does not exist." msgstr "# Tập tin không tồn tại." #: file.c:929 msgid "# File is very old." msgstr "# Tập tin rất cÅ©." #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# Sá»­a đổi cuối cùng %s\n" #: file.c:937 msgid "# File has been updated." msgstr "# Tập tin đã được cập nhật." #: file.c:937 msgid "# File has not been updated." msgstr "# Tập tin chưa được cập nhật." #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# Các lệnh Ä‘ang chạy (ÄÂY LÀ Lá»–I)." #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# Các lệnh phụ thuá»™c Ä‘ang chạy (ÄÂY LÀ Lá»–I)." #: file.c:953 msgid "# Successfully updated." msgstr "# Äã được cập nhật." #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# Cần thiết cập nhật (« -q » đã lập)." #: file.c:960 msgid "# Failed to be updated." msgstr "# Việc cập nhật bị lá»—i." #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "" "# Giá trị không hợp lệ trong bá»™ phạn « update_status » (trạng thái cập " "nhật)!" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "" "# Giá trị không hợp lệ trong bá»™ phạn « command_state » (tính trạng lệnh)!" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Tập tin" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" "\n" "# thống kê bảng băm các tập tin:\n" "# " #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "đối số thứ nhất không dạng số đối vá»›i hàm « word » (từ)" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "đối số thứ nhất đối vá»›i hàm « word » (từ) phải là lá»›n hÆ¡n 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "đối số thứ nhất không dạng số đối vá»›i hàm « wordlist » (danh sách từ)" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "đối số thứ hai không dạng số đối vá»›i hàm « wordlist » (danh sách từ)" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "" "Việc « create_child_process: DuplicateHandle(In) » (tạo tiến trình con: bá»™ " "quản lý trùng) bị lá»—i (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "" "Việc « create_child_process: DuplicateHandle(Err) » (tạo tiến trình con: bá»™ " "quản lý trùng(lá»—i)) bị lá»—i (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "Việc « CreatePipe() » (tạo ống dẫn) bị lá»—i (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "" "Việc « windows32_openpipe (): process_init_fd() » (mở ống dẫn windows32: " "tiến trình sở khởi fd) bị lá»—i\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "Äang làm sạch tập tin bó tạm thá»i %s...\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "Không có đủ đối số (%d) đối vá»›i hàm « %s »" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "Chưa được thá»±c hiện trên ná»n tảng này: hàm « %s »" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "cuá»™c gá»i chưa được kết thúc cho hàm « %s »: thiếu « %c »" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s: tùy chá»n « %s » là mÆ¡ hồ\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s: tùy chá»n « --%s » không cho phép đối số\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s: tùy chá»n « %c%s » không cho phép đối số\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s: tùy chá»n « %s » cần đến đối số\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s: không nhận ra tùy chá»n « --%s »\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s: không nhận ra tùy chá»n « %c%s »\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s: không cho phép tùy chá»n « -- %c »\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s: tùy chá»n không hợp lệ « -- %c »\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s: tùy chá»n cần đến đối số « -- %c »\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s: tùy chá»n « -W %s » là mÆ¡ hồ\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s: tùy chá»n « -W %s » không cho phép đối số\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "không thể cấp phát %ld byte cho bảng băm: hết bá»™ nhá»› hoàn toàn" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "Trá»ng tải=%ld/%ld=%.0f%%, " #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "Băm lại=%d, " #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "Xung đột=%ld/%ld=%.0f%%" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "Äang tìm quy tắc nguầm cho « %s ».\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "Äang tìm quy tắc ngầm vá» bá»™ phạn kho cho « %s ».\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "Äang tránh sá»± đệ qui quy tắc ngầm.\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "Äang thá»­ quy tắc mẫu vá»›i cuống « %.*s ».\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "Äang từ chối Ä‘iá»u kiện tiên quyết ngầm không thể « %s ».\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "Äang từ chối Ä‘iá»u kiện tiên quyết không thể « %s ».\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "Äang thá»­ Ä‘iá»u kiện tiên quyết ngầm « %s ».\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "Äang thá»­ Ä‘iá»u kiện tiên quyết quy tắc « %s ».\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "Má»›i tìm Ä‘iá»u kiện tiên quyết « %s » dạng VPATH « %s »\n" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "Äang tìm quy tắc vá»›i tập tin trung cấp « %s ».\n" #: job.c:321 msgid "Cannot create a temporary file\n" msgstr "Không thể tạo tên tập tin tạm thá»i\n" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] Lá»—i 0x%x (bị bá» qua)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] Lá»—i 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] Lá»—i %d (bị bá» qua)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] Lá»—i %d" #: job.c:399 msgid " (core dumped)" msgstr " (lõi bị đổ)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** Äang đợi các việc chưa xong..." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "Äiá»u con động 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (từ xa)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "Äang bắt Ä‘iá»u con thua 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "Äang bắt Ä‘iá»u con thắng 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "Äang làm sạch tập tin bó tạm thá»i: %s\n" #: job.c:802 #, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "Äang gỡ bá» Ä‘iá»u con 0x%08lx PID %ld%s ra dây.\n" #: job.c:862 msgid "write jobserver" msgstr "ghi trình phục vụ công việc" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Má»›i nhả hiệu bài cho Ä‘iá»u con 0x%08lx (%s).\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "" "Việc « process_easy() » (tiến trình dá»…) bị lá»—i khi cố khởi chạy tiến trình " "(e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" "\n" "Äã đếm %d đối số trong việc khởi chạy bị lá»—i\n" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "Äang để Ä‘iá»u con 0x%08lx (%s) PID %ld%s trên dây.\n" #: job.c:1709 #, c-format msgid "Obtained token for child 0x%08lx (%s).\n" msgstr "Äã lấy hiệu bài cho Ä‘iá»u con 0x%08lx (%s).\n" #: job.c:1718 msgid "read jobs pipe" msgstr "Ä‘á»c ống dẫn cá»§a các cá»™ng việc" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "không thể buá»™c hạn chế trá»ng tải vá»›i hệ Ä‘iá»u hành này" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "không thể buá»™c hạn chế trá»ng tải: " #: job.c:1907 msgid "no more file handles: could not duplicate stdin\n" msgstr "" "không có bá»™ quản lý tập tin nữa: không thể nhân bản thiết bị nhập chuẩn\n" #: job.c:1909 msgid "no more file handles: could not duplicate stdout\n" msgstr "" "không có bá»™ quản lý tập tin nữa: không thể nhân bản thiết bị xuất chuẩn\n" #: job.c:1937 msgid "Could not restore stdin\n" msgstr "Không thể phục hồi thiết bị nhập chuẩn\n" #: job.c:1945 msgid "Could not restore stdout\n" msgstr "Không thể phục hồi thiết bị xuất chuẩn\n" #: job.c:2016 #, fuzzy, c-format msgid "process_easy() failed failed to launch process (e=%ld)\n" msgstr "" "Việc « process_easy() » (tiến trình dá»…) bị lá»—i khi cố khởi chạy tiến trình " "(e=%d)\n" #: job.c:2046 #, fuzzy, c-format msgid "make reaped child pid %ld, still waiting for pid %ld\n" msgstr "lập Ä‘iá»u con đã bắt là PID %d, vẫn còn đợi PID %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s: Không tìm thấy lệnh." #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s: Không tìm thấy chương trình hệ vá»" #: job.c:2154 msgid "spawnvpe: environment space might be exhausted" msgstr "spawnvpe: có lẽ hết sức chứa môi trưá»ng hoàn toàn" #: job.c:2363 #, c-format msgid "$SHELL changed (was `%s', now `%s')\n" msgstr "$SHELL đã thay đổi (đã « %s », là « %s »)\n" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "Äang tạo tập tin bó tạm thá»i: %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "%s (dòng %d) Ngữ cảnh hệ vá» sai (!unixy && !batch_mode_shell)\n" #: main.c:291 msgid "Options:\n" msgstr "Tùy chá»n:\n" #: main.c:292 msgid " -b, -m Ignored for compatibility.\n" msgstr " -b, -m Bị bá» qua để tương thích.\n" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" " -B, --always-make _Luôn luôn tạo_ má»i đích (không Ä‘iá»u kiện).\n" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" " -C THƯ_MỤC, --directory=THƯ_MỤC\n" " Chuyển đổi sang thư mục này, trước hết.\n" #: main.c:299 msgid " -d Print lots of debugging information.\n" msgstr " -d In ra rất nhiá»u thông tin _gỡ lá»—i_.\n" #: main.c:301 msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "" " --debug[=CỜ...] In ra các kiểu thông tin _gỡ lá»—i_ khác nhau.\n" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" " -e, --environment-overrides\n" " Các biến _môi trưá»ng có quyá»n cao hÆ¡n_\n" "\t\t\t\t\tcác tập tin tạo (makefile).\n" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" " -f TẬP_TIN, --file=TẬP_TIN, --makefile=TẬP_TIN\n" " Äá»c tập tin này dạng tập tin tạo (makefile).\n" #: main.c:309 msgid " -h, --help Print this message and exit.\n" msgstr " -h, --help Hiển thị _trợ giúp_ này rồi thoát.\n" #: main.c:311 msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr " -i, --ignore-errors _Bá» qua các lá»—i_ từ các lệnh.\n" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" " -I THƯ_MỤC, --include-dir=THƯ_MỤC\n" " Tìm kiếm tập tin tạo (makefile) đã _bao gồm_\n" "\t\t\t\t\ttrong _thư mục_ này.\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] Cho phép N (số) _công việc_ đồng thá»i;\n" "\t\t\t\t\t\tvô hạn khi không có đối số\n" #: main.c:318 msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "" " -k, --keep-going _Cứ làm_ khi không thể tạo má»™t số đích.\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" " Äừng khởi chạy nhiá»u công việc, trừ trá»ng tải dưới N " "(số).\n" #: main.c:323 msgid "" " -L, --check-symlink-times Use the latest mtime between symlinks and " "target.\n" msgstr "" " -L, --check-symlink-times\n" "\t\t\tDùng giá»_m cuối cùng giữa liên kết tượng trưng và đích.\n" "\t(_kiểm tra giá» liên kết tượng trưng_)\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" " Äừng thật chạy lệnh nào, chỉ in ra hết.\n" "\t(_chỉ in, chạy thá»±c hành, sá»± thăm dò_)\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 TẬP_TIN, --old-file=TẬP_TIN, --assume-old=TẬP_TIN\n" " Xem tập tin này là rất cÅ© nên đừng tạo lại nó.\n" "\t(_cÅ©, tập tin cÅ©, giả sá»­ cÅ©_)\n" #: main.c:331 msgid " -p, --print-data-base Print make's internal database.\n" msgstr "" " -p, --print-data-base _In ra cÆ¡ sở dữ liệu_ ná»™i bá»™ cá»§a trình make.\n" #: main.c:333 msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "" " -q, --question\n" "\tÄừng chạy lệnh nào; trạng thái thoát nói nếu hiện thá»i hay không.\n" "\t(_câu há»i_)\n" #: main.c:335 msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "" " -r, --no-builtin-rules \t\tTắt các quy tắc ngầm có sẵn.\n" "\t(_không có quy tắc có sẵn_)\n" #: main.c:337 msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "" " -R, --no-builtin-variables \tTắt các thiết lập biến có sẵn.\n" "\t(_không có biến có sẵn_)\n" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" " -s, --silent, --quiet Äừng vá»ng (hiển thị) lệnh.\n" "\t(_câm, im_)\n" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" " -S, --no-keep-going, --stop\t\tTắt « -k ».\n" "\t(không cứ làm, dừng)\n" #: main.c:344 msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "" " -t, --touch Touch các đích thay vào tạo lại chúng.\n" "\t(_sá»_)\n" #: main.c:346 msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "" " -v, --version In ra số thứ tá»± _phiên bản_ cá»§a trình make, " "rồi thoát.\n" #: main.c:348 msgid " -w, --print-directory Print the current directory.\n" msgstr " -w, --print-directory _In ra thư mục_ hiện thá»i.\n" #: main.c:350 msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "" " --no-print-directory Tắt « -w », dù khi nó được bật ngầm\n" "\t(_không in ra thư mục_)\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 TẬP_TIN\n" " --what-if=TẬP_TIN\n" " --new-file=TẬP_TIN\n" " --assume-new=TẬP_TIN\n" " \t\t\tXem là tập tin này là má»›i vô hạn.\n" "\t(_gì nếu, tập tin má»›i, giả sá»­ má»›i_)\n" #: main.c:355 msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "" " --warn-undefined-variables\n" "\t\t_Cảnh báo_ khi tham chiếu má»™t _biến chưa được định nghÄ©a_.\n" #: main.c:549 msgid "empty string invalid as file name" msgstr "chuá»—i rá»—ng không hợp lệ dạng tên tập tin" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "không biết đặc tả cấp gỡ lá»—i « %s »" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "" "%s: Má»›i bắt Interrupt/Exception (ngắt/ngoài lệ) (mã = 0x%x, địa chỉ = 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" "Bá»™ lá»c ngoài lệ không được quản lý được gá»i từ chương trình %s\n" "ExceptionCode \t\tmã ngoài lệ\t %x\n" "ExceptionFlags \t\tcác cá» ngoài lệ %x\n" "ExceptionAddress \t\tđịa chỉ ngoài lệ %x\n" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "Vi phạm truy cập: thao tác ghi tại địa chỉ %x\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "Vi phạm truy cập: thao tác Ä‘á»c tại địa chỉ %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 » (tìm và lập hệ vá») Ä‘ang lập « default_shell » (hệ vá» " "mặc định) = %s\n" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" "Việc tìm kiếm đưá»ng dẫn « find_and_set_shell » (tìm và lập hệ vá») Ä‘ang lập « " "default_shell » (hệ vá» mặc định) = %s\n" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s Ä‘ang ngưng được 30 giây..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "đã ngá»§(30). Äang tiếp tục.\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Tập tin tạo (makefile) từ thiết bị nhập chuẩn đã được ghi rõ hai lần." #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "" "fopen (tập tin tạm thá»i)\n" " (_mở tập tin_)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "" "fwrite (tập tin tạm thá»i)\n" " (_ghi tập tin_)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "Công việc song song (-j) không được há»— trợ trên ná»n tảng này." #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "Äang lập lại thành chế độ công việc đơn (-j1)." #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "" "lá»—i ná»™i bá»™: có nhiá»u tùy chá»n « --jobserver-fds » (trình phục vụ công việc -" "fds)." #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "" "lá»—i ná»™i bá»™: gặp chuá»—i « --jobserver-fds » (trình phục vụ công việc -fds) " "không hợp lệ « %s »." #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" "cảnh báo : « -jN » bị buá»™c trong tiến trình submake: nên tắt chế độ trình " "phục vụ công việc (jobserver)." #: main.c:1684 msgid "dup jobserver" msgstr "dup jobserver (sao lục trình phục vụ công việc)" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" "cảnh báo : trình phục vụ công việc không sẵn sàng: nên dùng « -j1 ». Hãy " "thêm « + » vào quy tắc make mẹ." #: main.c:1710 msgid "creating jobs pipe" msgstr "Ä‘ang tạo ống dẫn công việc" #: main.c:1725 msgid "init jobserver pipe" msgstr "init jobserver pipe (sở khởi ống dẫn trình phục vụ công việc)" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "Không há»— trợ liên kết tượng trưng: nên tắt « -L »." #: main.c:1820 msgid "Updating makefiles....\n" msgstr "Äạng cập nhật các tập tin tạo (makefile)...\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "" "Tập tin tạo (makefile) « %s » có lẽ sẽ vòng lặp; sẽ không tạo lại nó.\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "Việc tạo lại tập tin tạo (makefile) « %s » bị lá»—i." #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "Không tìm thấy tập tin tạo (makefile) đã bao gồm « %s »." #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "Không tìm thấy tập tin tạo (makefile) « %s »." #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "Không thể chuyển đổi vá» thư mục gốc." #: main.c:2024 #, c-format msgid "Re-executing[%u]:" msgstr "Äang thá»±c hiện lại[%u]:" #: main.c:2140 msgid "unlink (temporary file): " msgstr "unlink (bá» liên kết) (tập tin tạm thá»i): " #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "« .DEFAULT_GOAL » (đích mặc định) chứa nhiá»u đích." #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "Chưa ghi rõ đích nào, và không tìm thấy tập tin tạo (makefile) nào" #: main.c:2191 msgid "No targets" msgstr "Không có đích" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "Äạng cập nhật các đích mục tiêu...\n" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "" "cảnh báo : má»›i phát hiện đối xứng lệch đồng hồ. Như thế thì bản xây dụng có " "lẽ không hoàn toàn." #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Cách sá»­ dụng: %s [tùy_chá»n...] [đích] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" "\n" "Chương trình này đã được xây dụng cho %s\n" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" "\n" "Chương trình này đã được xây dụng cho %s (%s)\n" #: main.c:2394 #, c-format msgid "Report bugs to \n" msgstr "Hãy thông báo lá»—i cho .\n" #: main.c:2466 #, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "tùy chá»n « -%c » cần đến má»™t đối số dạng chuá»—i không rá»—ng" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "tùy chá»n « -%c » cần đến má»™t đối số dạng số nguyên dương" #: 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 "" "%sPhần má»m này tá»± do; hãy xem mã nguồn để tìm thấy Ä‘iá»u kiện sao chép.\n" "%sKhông bảo đảm gì cả, dù khả năng bán hay khả năng làm việc dứt khoát.\n" "%s\n" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" "\n" "%sChương trình này đã được xây dụng cho %s\n" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" "\n" "%sChương trình này đã được xây dụng cho %s (%s)\n" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" "\n" "# CÆ¡ sở dữ liệu Make, được in ra vào %s" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" "\n" "# Má»›i xong cÆ¡ sở dữ liệu Make vào %s\n" #: main.c:3101 #, c-format msgid "%s: Entering an unknown directory\n" msgstr "%s: Äang vào má»™t thư mục lạ\n" #: main.c:3103 #, c-format msgid "%s: Leaving an unknown directory\n" msgstr "%s: Äang rá»i khá»i má»™t thư mục lạ\n" #: main.c:3106 #, c-format msgid "%s: Entering directory `%s'\n" msgstr "%s: Äang vào thư mục « %s »\n" #: main.c:3109 #, c-format msgid "%s: Leaving directory `%s'\n" msgstr "%s: Äang rá»i khá»i thư mục « %s »\n" #: main.c:3114 #, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "%s[%u]: Äang vào má»™t thư mục lạ\n" #: main.c:3117 #, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "%s[%u]: Äang rá»i khá»i má»™t thư mục lạ\n" #: main.c:3121 #, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "%s[%u]: Äang vào thư mục « %s »\n" #: main.c:3124 #, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "%s[%u]: Äang rá»i khá»i thư mục « %s »\n" #: misc.c:285 msgid ". Stop.\n" msgstr ". Dừng.\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "Không biết lá»—i: %d" # Variable: don't translate / Biến: đừng dịch #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "%s%s: %s" # Variable: do not translate/ biến: đừng dịch #: 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 "hết bá»™ nhá»› ảo hoàn toàn" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "%s: ngưá»i dùng %lu (thật %lu), nhóm %lu (thật %lu)\n" #: misc.c:667 msgid "Initialized access" msgstr "Truy cấp đã sở khởi" #: misc.c:746 msgid "User access" msgstr "Truy cập ngưá»i dùng" #: misc.c:794 msgid "Make access" msgstr "Truy cập Make" #: misc.c:828 msgid "Child access" msgstr "Truy cập Ä‘iá»u con" #: misc.c:892 #, c-format msgid "write error: %s" msgstr "lá»—i ghi: %s" #: misc.c:894 msgid "write error" msgstr "lá»—i ghi" #: read.c:160 msgid "Reading makefiles...\n" msgstr "Äạng Ä‘á»c các tập tin tạo (makefile)...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "Äạng Ä‘á»c tập tin tạo (makefile) « %s »..." #: read.c:317 #, c-format msgid " (no default goal)" msgstr " (không có mục tiêu mặc định)" #: read.c:319 #, c-format msgid " (search path)" msgstr " (đưá»ng dẫn tìm kiếm)" #: read.c:321 #, c-format msgid " (don't care)" msgstr " (cÅ©ng được)" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr " (không mở rá»™ng ~)" #: read.c:623 msgid "invalid syntax in conditional" msgstr "gặp cú pháp không hợp lệ trong đồ Ä‘iá»u kiện " #: read.c:633 msgid "extraneous `endef'" msgstr "gặp « endef » bắt nguồn ở ngoài" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "tên biến rá»—ng" #: read.c:662 msgid "empty `override' directive" msgstr "chỉ thị « override » (đè) rá»—ng" #: read.c:687 msgid "invalid `override' directive" msgstr "chỉ thị « override » (đè) không hợp lệ" #: read.c:854 msgid "commands commence before first target" msgstr "lệnh bắt đầu trước đích thứ nhất" #: read.c:905 msgid "missing rule before commands" msgstr "thiếu quy tắc trước các lệnh" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "thiếu bá»™ phân cách%s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (bạn có muốn dùng TAB thay vào 8 dấu cách chứ?)" #: read.c:1152 msgid "missing target pattern" msgstr "thiếu mẫu đích" #: read.c:1154 msgid "multiple target patterns" msgstr "nhiá»u mẫu đích" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "mẫu đích không chứa « %% »" #: read.c:1286 msgid "missing `endif'" msgstr "thiếu « endif »" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "Gặp chuá»—i chữ bắt nguồn ở ngoài sau chi thị « endef »" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "thiếu « endef », « define » (định nghÄ©a) chưa kết thúc" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "Gặp chuá»—i chữ bắt nguồn ở ngoài sau chi thị « %s »" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "gặp « %s » bắt nguồn ở ngoài" #: read.c:1482 msgid "only one `else' per conditional" msgstr "chỉ cho phép má»™t « else » (nếu không thì) cho má»—i đồ Ä‘iá»u kiện thôi" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "Lá»i định nghÄ©a biến đặc trưng cho đích dạng sai" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "không thể định nghÄ©a Ä‘iá»u kiện tiên quyết trong tập lệnh kiểu lệnh" #: read.c:1921 msgid "mixed implicit and static pattern rules" msgstr "gặp quy tắc mẫu kiểu ngầm và tÄ©nh được trá»™n vá»›i nhau" #: read.c:1924 msgid "mixed implicit and normal rules" msgstr "gặp quy tắc mẫu kiểu ngầm và chuẩn được trá»™n vá»›i nhau" #: read.c:1954 #, c-format msgid "target `%s' doesn't match the target pattern" msgstr "đích « %s » không khá»›p vá»›i mẫu đích" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "tập tin đích « %s » có mục nhập kiểu cả « : » lẫn « :: » Ä‘á»u" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "đích « %s » được đưa ra nhiá»u lần trong cùng má»™t quy tắc" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "cảnh báo : Ä‘ang đè lên các lệnh cho đích « %s »" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "cảnh báo : Ä‘ang bá» qua các lệnh cÅ© cho đích « %s »" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "cảnh báo : đã xem ký tá»± NUL (rá»—ng) nên bá» qua phần còn lại cá»§a dòng đó" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "Không có gì cần làm cho « %s »." #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "« %s » là hiện thá»i." #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "Äang xén bá»›t tập tin « %s ».\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sKhông có quy tắc tá»›i đích make « %s »%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%sKhông có quy tắc tá»›i đích make « %s », cần thiết bởi « %s »%s" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "Äang suy nghÄ© tập tin đích « %s ».\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "Vừa cố cập nhật tập tin « %s » nhưng bị lá»—i.\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "Tập tin « %s » đã được suy nghÄ©.\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "Vẫn còn Ä‘ang cập nhật tập tin « %s »...\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "Má»›i cập nhật xong tập tin « %s ».\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Tập tin « %s » không tồn tại.\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" "*** Cảnh báo : tập tin « .LOW_RESOLUTION_TIME » (thá»i gian giải pháp thấp) « " "%s » có nhãn thá»i gian cao" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "Tìm thấy má»™t quy tắc ngầm cho « %s ».\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "Không tìm thấy quy tắc ngầm cho « %s »\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "Äang dùng các lệnh mặc định cho « %s ».\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "Cách phụ thuá»™c vòng tròn « %s ↠%s » bị gỡ bá»." #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Má»›i xong các Ä‘iá»u kiện tiên quyết cá»§a tập tin đích « %s ».\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "Äang tạo các Ä‘iá»u kiện tiên quyết cá»§a « %s ».\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "Äang chịu thua vá» tập tin đích « %s ».\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "Äích « %s » không được tạo lại vì gặp lá»—i." #: remake.c:677 #, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "" "Äiá»u kiện tiên quyết « %s » là order-only (chỉ thứ tá»±) cho đích « %s ».\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Äiá»u kiện tiên quyết « %s » cá»§a đích « %s » không tồn tại.\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "Äiá»u kiện tiên quyết « %s » là má»›i hÆ¡n đích « %s » .\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "Äiá»u kiện tiên quyết « %s » là cÅ© hÆ¡n đích « %s » .\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "" "Äích « %s » là kiểu dấu hai chấm đôi và không có Ä‘iá»u kiện tiên quyết nào.\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "" "Không có lệnh cho « %s », và chưa thật sá»± thay đổi Ä‘iá»u kiện tiên quyết " "nào.\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "Äang tạo « %s » vì gặp cá» always-make (luôn luôn tạo).\n" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "Không cần tạo lại đích « %s »." #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "; Ä‘ang dùng tên VPATH (đưá»ng dẫn V) « %s »" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "Phải tạo lại đích « %s ».\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " Äang bá» qua tên đưá»ng dẫn VPATH « %s ».\n" #: remake.c:765 #, c-format msgid "Commands of `%s' are being run.\n" msgstr "Äang chạy các lệnh cá»§a « %s ».\n" #: remake.c:772 #, c-format msgid "Failed to remake target file `%s'.\n" msgstr "Việc tạo lại tập tin đích « %s » bị lá»—i.\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "Má»›i tạo lại tập tin đích « %s ».\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Tập tin đích « %s » cần được tạo lại dưới « -q ».\n" #: remake.c:1306 #, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "Cảnh báo : tập tin « %s » có giá» sá»­a đổi trong tương lai." #: remake.c:1313 #, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "Cảnh báo : tập tin « %s » có giá» sá»­a đổi « %.2g s » trong tương lai." #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr "Yếu tố « .LIBPATTERNS » (các mẫu thư viên) « %s » không phải là mẫu" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Thuế quan không xuất được: %s\n" #: rule.c:548 msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# Quy tắc ngầm" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# Không có quy tắc ngầm." #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u quy tắc ngầm, %u" #: rule.c:575 msgid " terminal." msgstr " thiết bị cuối" #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "Lá»–I: « num_pattern_rules » (số quy tắc mẫu) không đúng! %u != %u" #: signame.c:85 msgid "unknown signal" msgstr "tín hiệu lạ" #: signame.c:93 msgid "Hangup" msgstr "Ngừng nói" #: signame.c:96 msgid "Interrupt" msgstr "Ngắt" #: signame.c:99 msgid "Quit" msgstr "Thoát" #: signame.c:102 msgid "Illegal Instruction" msgstr "Lệnh cấm" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "Bẫy vết/Ä‘iểm ngắt" #: signame.c:110 msgid "Aborted" msgstr "Bị há»§y bá»" #: signame.c:113 msgid "IOT trap" msgstr "Bẫy IOT" #: signame.c:116 msgid "EMT trap" msgstr "Bẫy EMT" #: signame.c:119 msgid "Floating point exception" msgstr "Ngoại lệ Ä‘iểm phù động" #: signame.c:122 msgid "Killed" msgstr "Bị buá»™c kết thúc" #: signame.c:125 msgid "Bus error" msgstr "Lá»—i mạch nối" #: signame.c:128 msgid "Segmentation fault" msgstr "Lá»—i phân Ä‘oạn" #: signame.c:131 msgid "Bad system call" msgstr "Cuá»™c gá»i hệ thống sai" #: signame.c:134 msgid "Broken pipe" msgstr "á»ng dẫn bị ngắt" #: signame.c:137 msgid "Alarm clock" msgstr "Äồng hồ báo động" #: signame.c:140 msgid "Terminated" msgstr "Bị kết thúc" #: signame.c:143 msgid "User defined signal 1" msgstr "Tín hiệu tá»± định nghÄ©a 1" #: signame.c:146 msgid "User defined signal 2" msgstr "Tín hiệu tá»± định nghÄ©a 2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "Tiến trình con đã thoát" #: signame.c:157 msgid "Power failure" msgstr "Bị cúp Ä‘iện đột ngá»™t" #: signame.c:160 msgid "Stopped" msgstr "Bị ngừng" #: signame.c:163 msgid "Stopped (tty input)" msgstr "Bị ngừng (kết nhập tty)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "Bị ngừng (kết xuất tty)" #: signame.c:169 msgid "Stopped (signal)" msgstr "Bị ngừng (tín hiệu)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "Giá»›i hạn thá»i gian CPU (đơn vị xá»­ lý trung tâm) bị vượt quá" #: signame.c:175 msgid "File size limit exceeded" msgstr "Giá»›i hạn kích cỡ tập tin bị vượt quá" #: signame.c:178 msgid "Virtual timer expired" msgstr "Bá»™ đếm thá»i gian ảo đã mãn hạn" #: signame.c:181 msgid "Profiling timer expired" msgstr "Bá»™ đếm khi theo dõi cách sá»­ dụng tiá»m năng hệ thống đã mãn hạn" #: signame.c:187 msgid "Window changed" msgstr "Cá»­a sổ đã thay đổi" #: signame.c:190 msgid "Continued" msgstr "Äã tiếp tục" #: signame.c:193 msgid "Urgent I/O condition" msgstr "Tình trạng I/O (nhập/xuất) khẩn cấp" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "I/O (nhập/xuất) có thể" # Literal: don't translate / NghÄ©a chữ: đừng dịch #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" # Literal: don't translate / NghÄ©a chữ: đừng dịch #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "Tài nguyên bị mất" #: signame.c:215 msgid "Danger signal" msgstr "Tín hiệu nguy hiểm" #: signame.c:218 msgid "Information request" msgstr "Yêu cầu thông tin" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "Không có sẵn sàng bá»™ đồng xá»­ lý Ä‘iểm phù động" #: 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 "mặc định" #: variable.c:1372 msgid "environment" msgstr "môi trưá»ng" #: variable.c:1375 msgid "makefile" msgstr "tập tin tạo" #: variable.c:1378 msgid "environment under -e" msgstr "môi trưá»ng dưới « -e »" #: variable.c:1381 msgid "command line" msgstr "dòng lệnh" #: variable.c:1384 msgid "`override' directive" msgstr "chỉ thị « override » (đè)" #: variable.c:1387 msgid "automatic" msgstr "tá»± động" #: variable.c:1396 #, c-format msgid " (from `%s', line %lu)" msgstr " (từ « %s », dòng %lu)" #: variable.c:1438 msgid "# variable set hash-table stats:\n" msgstr "# thống kê bảng băm lập biến:\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# Biến\n" #: variable.c:1453 msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Giá trị biến đặc trưng cho mẫu" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# Không có giá trị biến đặc trưng cho mẫu" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u giá trị biến đặc trưng cho mẫu" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "cảnh báo : chưa định nghÄ©a biến « %.*s »" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "việc « search » (tìm kiếm hệ thống) bị lá»—i vá»›i %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "Cảnh báo : việc chuyển hướng rá»—ng\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "lá»—i ná»™i bá»™ : tính trạng lệnh « %s »" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "• cảnh báo, CTRL-Y sẽ để má»™t số tiến trình con còn lại.\n" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" "• cảnh báo, có lẽ bạn sẽ phải bật lại khả năng quản lý bằng CTRL-Y từ DCL.\n" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "BUILTIN [%s][%s]\n" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "BUILTIN CD %s\n" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "BUILTIN RM %s\n" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "Không biết lệnh builtin (có sẵn) « %s »\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "Lá»—i, lệnh rá»—ng\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "Kết nhập đã được chuyển hướng từ %s\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "Lá»—i đã được chuyển hướng đến %s\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "Kết xuất đã được chuyển hướng đến %s\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Äang thá»±c hiện %s thay thế\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "Gặp lá»—i khi tạo và thá»±c hiện (spawn), %d\n" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# ÄÆ°á»ng dẫn tìm kiếm VPATH\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# Không có đưá»ng dẫn tìm kiếm VPATH nào" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u ÄÆ°á»ng dẫn tìm kiếm « vpath ».\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# Không có đưá»ng dẫn tìm kiếm chung (biến « VPATH »)." #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# ÄÆ°á»ng dẫn tìm kiếm chung (biến « VPATH »).\n" "# " #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Äừng ghi rõ « -j » hay « --jobs » nếu không sẵn sàng." #~ msgid "Resetting make for single job mode." #~ msgstr "Äang lập lại trình make cho chế độ công việc đơn." make-dfsg-3.81.orig/po/zh_CN.gmo0000644000175000017500000004752010416553102016644 0ustar srivastasrivastaÞ•TaŒ.&Gn~-‡-µã'ù! 8 FP"m (¬Õî "+ 4?N.f1•Çàø(0Y&n*•&À+ç+?#T#xœµ$Ì9ñ+3J~.˜Çãþ"1G+c©,Ãð%,4-a &°×÷/71g ™¥#¼#à6;Wi} ›*¥Ðè ð"ü' G W c m … %’ ¸ $Ø :ý 08!i!+ˆ!!´! Ö!ã! ý! ""*"$@"'e""#­"Ñ""ì"#,(#U#)s##!¶#Ø#ø#ÿ#$%$B$ V$`$#g$0‹$'¼$3ä$+%D%-`%Ž%¨%<«%!è% & (&*3& ^&6h& Ÿ&-­&-Û&1 ';'3O'ƒ'ˆ'ž'(´')Ý'/(7(O(i(1‚(-´('â(# ) .)<)E)M)`){)ƒ)”)¨)&½)6ä))*(E* n**y*¤*#º*&Þ*+%+C+T+!l+Ž+¤+!º+Ü+ò+,,5,I,(^, ‡,1‘,3Ã,3÷,+-3G- {-ˆ-›-£- À-Î-!é- . .+.;.8N.‡.ž.¶."Ê.3í.0!/R/o/'/9µ/ï/&ø/0/0L0`0w0'—0¿0Ø0-Û01 12;1n1Ž11,¸12å1*2C26c2,š2"Ç23ê2)3"H31k3&3Ä3Ó30í34>4=W41•4.Ç4,ö4"#50F5w5m‡5õ67"%7H7Q7#Y7$}7¢7#´7Ø7ë7 ô7þ7#8 <8F8#U8y88¢8 ª8¶8 ¿8Ë8 Ó8á8 ñ8&9 99G9W9k99—9©9Å9ã9$:$&:K:[:q: Œ:š:#ª:.Î:ý:(;D;*d;;¯;É;Ú;ï;þ;!<6<J<^<z<’<®< Ê<ë<="=>=Z=2y=$¬= Ñ=Ý=ô=>),>V>r>ƒ>–> °>%»>á>ù>??&?@? O?Z?c? t??š?±?,Ì?&ù? @:@M@d@m@@Š@ “@¡@"³@!Ö@ø@A6AJA`AqAA¥A ºAÅAåAûAB BB1B:B?B#FB#jBŽB#ªB*ÎBùB!C2CLC/OCCC¶C½CÝCåCD D&D#BDfD)|D¦D«DÄD(ÛD(E#-EQEiEE“E±E(ÏEøEFF#F+F2FJF QF_FqFƒF%¡F ÇF'èFGG /G=G!SGuG‹G ¡G­GÄGàGïGþG H'H 9HDHXHiHzH—H&œH&ÃH&êHI$ICIJI[I`IvI…I˜I¯I¸I½IÎI"ÞIJJ$J9J+XJ#„J¨J¿J#ÒJ/öJ&K!/K QK_K rK €K‹K K ¹KÆK$ÉK(îK(L@L [LhL‚L$›L#ÀLäLùLM3M2OM%‚M¨M ÈMéM þM N&NBN SN.`N'N ·NØN÷N.OAOç¿‹™yßÌÜ*[˶²µq Wê$)gv]äØQ4:!“7å°dÖDÍKï8,zuVEt¤0ý‘ó\‰ž^ø¢¸OÐCö`Îoòé+Ž’Œ}2É÷À ÙÂÓ;'Fc¹Åâès±U ÈTnã®ô»›{¡•û.éÏ%Õº#_Ô­ñ6Ñ SRx ÒJ G@ÄeLì1(‚Ú&½£œù×PAZf/ƒà³¬hëÛ—j…pŸmM3ü?w5¥î§Þ¯„Áª¼Š|–~lÿ<‡æBIˆXiNr"b´Ç†9íkð¦þH˜a> -Ýš·ÊõáÆ€¨«”¾úY= # %u `vpath' search paths. # %u implicit rules, %u # %u pattern-specific variable values # Directories # Files # General (`VPATH' variable) search path: # # No general (`VPATH' variable) search path. # No implicit rules. # No pattern-specific variable values. # VPATH Search Paths # Variables Date %s Ignoring VPATH name `%s'. uid = %d, gid = %d, mode = 0%o. (built-in): (core dumped) (did you mean TAB instead of 8 spaces?) (from `%s', line %lu): (name might be truncated) (remote) (search path) files, so far. terminal.# Also makes:# Command-line target.# Commands currently running (THIS IS A BUG).# Dependencies commands running (THIS IS A BUG).# Failed to be updated.# File does not exist.# File has been updated.# File has not been updated.# File is an intermediate prerequisite.# File is very old.# Implicit rule search has been done.# Implicit rule search has not been done.# Implicit/static pattern stem: `%s' # Invalid value in `command_state' member!# Invalid value in `update_status' member!# Last modified %s # Modification time never checked.# Needs to be updated (-q is set).# Successfully updated.# commands to execute# %s (device %d, inode [%d,%d,%d]): # %s (device %d, inode [%d,%d,%d]): could not be opened. # %s (device %ld, inode %ld): # %s (device %ld, inode %ld): could not be opened. # %s (key %s, mtime %d): # %s (key %s, mtime %d): could not be opened. # %s: could not be stat'd. # No `vpath' search paths.# Not a target:%s is suspending for 30 seconds...%s: Command not found%s: Shell program not found%s: Timestamp out of range; substituting %s%s: illegal option -- %c %s: invalid option -- %c %s: option `%c%s' doesn't allow an argument %s: option `%s' is ambiguous %s: option `%s' requires an argument %s: option `--%s' doesn't allow an argument %s: option `-W %s' doesn't allow an argument %s: option `-W %s' is ambiguous %s: option requires an argument -- %c %s: unrecognized option `%c%s' %s: unrecognized option `--%s' %sNo rule to make target `%s'%s%sNo rule to make target `%s', needed by `%s'%s*** Archive member `%s' may be bogus; not deleted*** Break. *** Deleting file `%s'*** Deleting intermediate file `%s'*** Waiting for unfinished jobs....*** [%s] Archive member `%s' may be bogus; not deleted*** [%s] Deleting file `%s'*** [%s] Error %d*** [%s] Error 0x%x*** [%s] Error 0x%x (ignored). Stop. .LIBPATTERNS element `%s' is not a pattern; using VPATH name `%s'AbortedAlarm clockAvoiding implicit rule recursion. BUG: num_pattern_rules wrong! %u != %uBad system callBroken pipeBus errorCPU time limit exceededChild exitedCircular %s <- %s dependency dropped.Cleaning up temp batch file %s Cleaning up temporary batch file %s Commands for file `%s' were found by implicit rule search,Commands were specified for file `%s' at %s:%lu,Considering target file `%s'. Couldn't change back to original directory.Creating temporary batch file %s Current timeCustoms won't export: %s Danger signalEMT trapError, empty command Executing %s instead Extraneous text after `%s' directiveExtraneous text after `endef' directiveFailed to remake makefile `%s'.Failed to remake target file `%s'. File `%s' does not exist. File `%s' was considered already. File size limit exceededFinished prerequisites of target file `%s'. Finished updating file `%s'. Floating point co-processor not availableFloating point exceptionFound an implicit rule for `%s'. Giving up on target file `%s'. HangupIOT trapIllegal InstructionIncluded makefile `%s' was not found.Information requestInterruptKilledLive child 0x%08lx (%s) PID %ld %s Looking for a rule with intermediate file `%s'. Looking for an implicit rule for `%s'. Looking for archive-member implicit rule for `%s'. Makefile `%s' might loop; not remaking it. Makefile `%s' was not foundMakefile from standard input specified twice.Must remake target `%s'. NoNo commands for `%s' and no prerequisites actually changed. No implicit rule found for `%s'. No need to remake target `%s'No targetsNo targets specified and no makefile foundOptions: Parallel jobs (-j) are not supported on this platform.Power failurePrerequisite `%s' is newer than target `%s'. Prerequisite `%s' is older than target `%s'. Prerequisite `%s' of target `%s' does not exist. Pruning file `%s'. Putting child 0x%08lx (%s) PID %ld%s on the chain. QuitReading makefile `%s'Reading makefiles... Reaping losing child 0x%08lx PID %ld %s Reaping winning child 0x%08lx PID %ld %s Recently tried and failed to update file `%s'. Redirected error to %s Redirected input from %s Redirected output to %s Rejecting impossible implicit prerequisite `%s'. Rejecting impossible rule prerequisite `%s'. Released token for child 0x%08lx (%s). Resetting to single job (-j1) mode.Resource lostSIGPHONESIGWINDSegmentation faultStill updating file `%s'. StoppedStopped (signal)Stopped (tty input)Stopped (tty output)Successfully remade target file `%s'. Target `%s' is double-colon and has no prerequisites. Target `%s' not remade because of errors.Target file `%s' needs remade under -q. TerminatedThe prerequisites of `%s' are being made. Trace/breakpoint trapTrying implicit prerequisite `%s'. Trying pattern rule with stem `%.*s'. Trying rule prerequisite `%s'. Unknown builtin command '%s' Unknown error %dUpdating makefiles.... Usage: %s [options] [target] ... User defined signal 1User defined signal 2Using default commands for `%s'. Virtual timer expiredWarning: Empty redirection Window changed[%s] Error %d (ignored)`%s' is up to date.`override' directiveattempt to use unsupported feature: `%s'automaticbut `%s' is now considered the same file as `%s'.can't rename double-colon `%s' to single-colon `%s'can't rename single-colon `%s' to double-colon `%s'cannot enforce load limit: cannot enforce load limits on this operating systemcommand linecreating jobs pipedefaultdone sleep(30). Continuing. dup jobserverempty `override' directiveempty string invalid as file nameempty variable nameenvironmentextraneous `%s'extraneous `endef'first argument to `word' function must be greater than 0fopen (temporary file)fwrite (temporary file)init jobserver pipeinternal error: `%s' command_stateinternal error: invalid --jobserver-fds string `%s'internal error: multiple --jobserver-fds optionsinvalid `override' directiveinvalid syntax in conditionallbr$ini_control failed with status = %dlbr$set_module failed to extract module info, status = %dmakefilemissing `endef', unterminated `define'missing `endif'missing rule before commandsmissing separator%smissing target patternmixed implicit and normal rulesmixed implicit and static pattern rulesmultiple target patternsnonon-numeric first argument to `word' functionnon-numeric first argument to `wordlist' functionnon-numeric second argument to `wordlist' functiononly one `else' per conditionalread jobs pipesys$search failed with %d target `%s' doesn't match the target patterntarget `%s' given more than once in the same rule.target file `%s' has both : and :: entriestarget pattern contains no `%%'the `-%c' option requires a positive integral argumenttouch archive member is not available on VMStouch: Archive `%s' does not existtouch: Bad return code from ar_member_touch on `%s'touch: Member `%s' does not exist in `%s'touch: `%s' is not a valid archiveunable to open library `%s' to lookup member `%s'unknown debug level specification `%s'unknown signalunlink (temporary file): unterminated call to function `%s': missing `%c'unterminated variable referencevirtual memory exhaustedwarning: Clock skew detected. Your build may be incomplete.warning: NUL character seen; rest of line ignoredwarning: ignoring old commands for target `%s'warning: overriding commands for target `%s'warning: undefined variable `%.*s'windows32_openpipe (): process_init_fd() failed write jobserverProject-Id-Version: make 3.79.1 Report-Msgid-Bugs-To: bug-make@gnu.org POT-Creation-Date: 2006-04-01 01:40-0500 PO-Revision-Date: 2002-07-22 15:02+0800 Last-Translator: Wang Li Language-Team: Chinese (simplified) MIME-Version: 1.0 Content-Type: text/plain; charset=gb2312 Content-Transfer-Encoding: 8bit # %u ¡°vpath¡±ËÑË÷·¾¶¡£ # %u ÌõÒþº¬¹æÔò£¬%u # %u ¸ö pattern-specific ±äÁ¿µÄÖµ # Ŀ¼ # Îļþ # ͨÓÃËÑË÷·¾¶(¡°VPATH¡±±äÁ¿)£º # # ûÓÐͨÓÃËÑË÷·¾¶(¡°VPATH¡±±äÁ¿)¡£ # ûÓÐÒþº¬¹æÔò¡£ # ûÓÐ pattern-specific ±äÁ¿µÄÖµ¡£ # VPATH ËÑË÷·¾¶ # ±äÁ¿ ÈÕÆÚ %s ºöÂÔ VPATH Ãû³Æ `%s'¡£ uid = %d£¬gid = %d£¬mode = 0%o¡£ (ÄÚÖÃ)£º (core dumped) (ÄúµÄÒâ˼ÊÇÓà TAB ´úÌæ 8 ¸ö¿Õ¸ñ£¿) (´Ó¡°%s¡±£¬ÐÐ %lu)£º (Ãû³Æ¿ÉÄܱ»½Ø¶Ì) (Ô¶³Ì) (ËÑË÷·¾¶) Îļþ£¬ Æù½ñΪֹ¡£ ÖÕ¶Ë¡£# »¹Òª´´½¨£º# ÃüÁîÐÐÄ¿±ê¡£# ÕýÔÚÔËÐеÄÃüÁî (ÕâÊǸö´íÎó)¡£# ÕýÔÚÔËÐеÄÒÀÀµÐÔÃüÁî (ÕâÊǸö´íÎó)¡£# ¸üÐÂʧ°Ü¡£# Îļþ²»´æÔÚ¡£# ÎļþÒѾ­±»¸üС£# ÎļþÉÐδ±»¸üС£# ÎļþÊÇÒ»¸öÖмäǰÌá¡£# Îļþ·Ç³£³Â¾É¡£# ¶ÔÒþº¬¹æÔòµÄËÑË÷ÒÑÍê³É¡£# ¶ÔÒþº¬¹æÔòµÄËÑË÷ÉÐδÍê³É¡£# Òþº¬/¾²Ì¬Ä£Ê½Ö÷¸É£º¡°%s¡± # ¡°command_state¡±³ÉÔ±ÖÐÎÞЧµÄÖµ£¡# ¡°update_status¡±³ÉÔ±ÖÐÎÞЧµÄÖµ£¡# ×î½ü¸üР%s # ´Ó²»¼ì²éÐÞ¸Äʱ¼ä¡£# ÐèÒª¸üР(Óà -q É趨)¡£# ¸üгɹ¦¡£# ÒªÖ´ÐеÄÃüÁî# %s (É豸 %d£¬i-½Úµã [%d,%d,%d])£º# %s (É豸 %d£¬i-½Úµã [%d,%d,%d])£ºÎÞ·¨´ò¿ª¡£ # %s (É豸 %ld£¬i-½Úµã %ld)£º# %s (É豸 %ld£¬i-½Úµã %ld)£ºÎÞ·¨´ò¿ª¡£ # %s (¹Ø¼ü×Ö %s£¬ÐÞ¸Äʱ¼ä %d)£º# %s (¹Ø¼ü×Ö %s£¬ÐÞ¸Äʱ¼ä %d)£ºÎÞ·¨´ò¿ª¡£ # %s£ºÎÞ·¨¶ÔÆä½øÐÐ stat ²Ù×÷¡£ # ûÓС°vpath¡±ËÑË÷·¾¶¡£# ²»ÊÇÒ»¸öÄ¿±ê£º%s ÕýÔÚ¹ÒÆð 30 Ãë...%s£ºÃüÁîδÕÒµ½%s£ºÎ´ÕÒµ½ shell ³ÌÐò%s£ºÊ±¼ä±ê¼Ç³¬³ö·¶Î§£»ÕýÔÚÌæ»» %s%s£º·Ç·¨Ñ¡Ïî -- %c %s£º·Ç·¨Ñ¡Ïî -- %c %s£ºÑ¡Ïî¡°%c%s¡±²»ÐèÒª²ÎÊý %s£ºÑ¡Ïî¡°%s¡±º¬Òå²»Çå %s£ºÑ¡Ïî¡°%s¡±ÐèÒªÒ»¸ö²ÎÊý %s£ºÑ¡Ïî¡°--%s¡±²»ÐèÒª²ÎÊý %s£ºÑ¡Ïî¡°-W %s¡±²»ÔÊÐí¸ø³ö²ÎÊý %s£ºÑ¡Ïî¡°-W %s¡±º¬Òå²»Çå %s£ºÑ¡ÏîÐèÒªÒ»¸ö²ÎÊý -- %c %s£ºÎÞ·¨Ê¶±ðµÄÑ¡Ïî¡°%c%s¡± %s£ºÎÞ·¨Ê¶±ðµÄÑ¡Ïî¡°--%s¡± %sûÓйæÔò¿ÉÒÔ´´½¨Ä¿±ê¡°%s¡±%s%1$sûÓйæÔò¿ÉÒÔ´´½¨¡°%3$s¡±%4$sÐèÒªµÄÄ¿±ê¡°%2$s¡±*** ¹éµµ³ÉÔ±¡°%s¡±¿ÉÄÜÊǼٵģ»Î´É¾³ý*** Öжϡ£ *** ÕýÔÚɾ³ýÎļþ¡°%s¡±*** ÕýÔÚɾ³ýÖмäÎļþ¡°%s¡±*** ÕýÔڵȴýδÍê³ÉµÄÈÎÎñ....*** [%s] ¹éµµ³ÉÔ±¡°%s¡±¿ÉÄÜÊǼٵģ»Î´É¾³ý*** [%s] ÕýÔÚɾ³ýÎļþ¡°%s¡±*** [%s] ´íÎó %d*** [%s] ´íÎó 0x%x*** [%s] ´íÎó 0x%x (ºöÂÔ)¡£ Í£Ö¹¡£ .LIBPATTERNS µÄÔªËØ¡°%s¡±²»ÊÇÒ»¸öģʽ£»Ê¹Óà VPATH Ãû³Æ¡°%s¡±ÒÑʧ°ÜÄÖÖÓ±ÜÃâÒþº¬¹æÔòµÝ¹é¡£ ´íÎó£ºnum_pattern_rules ³ö´í£¡%u != %u´íÎóµÄϵͳµ÷ÓöϿªµÄ¹ÜµÀ×ÜÏß´íÎóCPU ʱ¼ä³¬³öÏÞÖÆ×Ó½ø³ÌÒÑÍ˳ö·ÅÆúÑ­»·ÒÀÀµ %s <- %s ¡£ÕýÔÚÇå³ýÁÙʱÅúÎļþ %s ÕýÔÚÇå³ýÁÙʱÅú´¦ÀíÎļþ %s ¹ØÓÚÎļþ¡°%s¡±µÄÃüÁîͨ¹ýÒþº¬¹æÔòËÑË÷¶øÕÒµ½£¬¹ØÓÚÎļþ¡°%s¡±µÄÃüÁîÔÚ %s:%lu ´¦Ö¸¶¨£¬ÕýÔÚ¿¼ÂÇÄ¿±êÎļþ¡°%s¡±¡£ ÎÞ·¨»Øµ½Ô­Ê¼Ä¿Â¼¡£ÕýÔÚ´´½¨ÁÙʱÅúÎļþ %s µ±Ç°Ê±¼äÓû§²»Ï£Íûµ¼³ö£º%s ΣÏÕÐźÅEMT ÏÝÚå´íÎ󣬿ÕÃüÁî Ö´ÐÐ %s ×÷ÎªÌæ´ú ÔÚ¡°%s¡±Ö¸ÁîÖ®ºóº¬Óв»¸Ã³öÏÖµÄÎÄ×Ö¡°endef¡±Ö¸Áîºóº¬Óв»¸Ã³öÏÖµÄÎÄ×ÖÖØÐ´´½¨ makefile ¡°%s¡± ʧ°Ü¡£ÖØÐ´´½¨Ä¿±êÎļþ¡°%s¡±Ê§°Ü¡£ Îļþ¡°%s¡±²»´æÔÚ¡£ ÒÑ¿¼ÂǹýÎļþ¡°%s¡±¡£ Îļþ´óС³¬³öÏÞÖÆÄ¿±êÎļþ¡°%s¡±µÄǰÌáÒÑÍê³É¡£ ¸üÐÂÎļþ¡°%s¡±Íê³É¡£ ¸¡µãÊýЭ´¦ÀíÆ÷²»¿ÉÓø¡µãÊýÒì³£ÕÒµ½Ò»Ìõ¹ØÓÚ¡°%s¡±µÄÒþº¬¹æÔò¡£ ·ÅÆúÄ¿±êÎļþ¡°%s¡±¡£ ¹ÒÆðIOT ÏÝÚå·Ç·¨Ö¸ÁîÕÒ²»µ½±»ÒýÈëµÄ makefile ¡°%s¡±ÐÅÏ¢ÇëÇóÖжÏÒÑɱËÀ»îÔ¾×Ó½ø³Ì 0x%08lx (%s) PID %ld %s ÕýÔÚѰÕÒʹÓÃÖмäÎļþ¡°%s¡±µÄ¹æÔò¡£ ÕýÔÚΪ¡°%s¡±Ñ°ÕÒÒþº¬¹æÔò¡£ ÕýÔÚΪ¡°%s¡±Ñ°Õҹ鵵³ÉÔ±Òþº¬¹æÔò¡£ Makefile ¡°%s¡±¿ÉÄÜÑ­»·£»²»»áÖØÐ´´½¨Ëü¡£ ÕÒ²»µ½ makefile ¡°%s¡±Á½´ÎÖ¸Ã÷À´×Ô±ê×¼ÊäÈëµÄ makefile¡£±ØÐëÖØÐ´´½¨Ä¿±ê¡°%s¡±¡£ ÎÞûÓйØÓÚ¡°%s¡±µÄÃüÁ²¢ÇÒʵ¼ÊÉϸıäÁ˵ÄǰÌá¡£ ÕÒ²»µ½¹ØÓÚ¡°%s¡±µÄÒþº¬¹æÔò¡£ ²»ÐèÒªÖØÐ´´½¨Ä¿±ê¡°%s¡±ÎÞÄ¿±êûÓÐÖ¸Ã÷Ä¿±ê²¢ÇÒÕÒ²»µ½ makefileÑ¡Ï ±¾Æ½Ì¨²»Ö§³Ö²¢ÐÐÈÎÎñ (-j)¡£µçԴʧЧǰÌá¡°%s¡±±ÈÄ¿±ê¡°%s¡±Ð¡£ ǰÌá¡°%s¡±±ÈÄ¿±ê¡°%s¡±¾É¡£ Ä¿±ê¡°%2$s¡±µÄǰÌá¡°%1$s¡±²»´æÔÚ¡£ ÕýÔÚɾ³ýÎļþ¡°%s¡±¡£ ½«×Ó½ø³Ì 0x%08lx (%s) PID %ld%s ·ÅÈëÁ´¡£ Í˳öÕýÔÚ¶ÁÈë makefile ¡°%s¡±ÕýÔÚ¶ÁÈë makefiles... ÕýÔÚÖÐֹʧ°ÜµÄ×Ó½ø³Ì 0x%08lx PID %ld %s ÕýÔÚÖÐÖ¹»ñʤµÄ×Ó½ø³Ì 0x%08lx PID %ld %s ×î½üÒѳ¢ÊÔ¹ý¸üÐÂÎļþ¡°%s¡±²¢Ê§°Ü¡£ µ½ %s µÄÖØ¶¨Ïò´íÎóÊä³ö À´×Ô %s µÄÖØ¶¨ÏòÊäÈë µ½ %s µÄÖØ¶¨ÏòÊä³ö ¾Ü¾ø²»¿ÉÄܵÄÒþº¬Ç°Ìá¡°%s¡±¡£ ¾Ü¾ø²»¿ÉÄܵĹæÔòǰÌá¡°%s¡±¡£ Ϊ×Ó½ø³Ì 0x%08lx (%s) ÊÍ·ÅÁîÅÆ(token)¡£ ÖØÖÃΪµ¥ÈÎÎñģʽ (-j1)¡£×ÊÔ´¶ªÊ§SIGPHONESIGWIND¶Î´íÎóÈÔÈ»ÔÚ¸üÐÂÎļþ¡°%s¡±¡£ ÒÑÍ£Ö¹ÒÑÍ£Ö¹ (ÐźÅ)ÒÑÍ£Ö¹ (tty ÊäÈë)ÒÑÍ£Ö¹ (tty Êä³ö)ÖØÐ´´½¨Ä¿±êÎļþ¡°%s¡±³É¹¦¡£ Ä¿±ê¡°%s¡±ÊÇ˫ðºÅÄ¿±ê²¢ÇÒûÓÐǰÌá¡£ ÓÉÓÚ´íÎóÄ¿±ê¡°%s¡±²¢Î´ÖØÐ´´½¨¡£Ä¿±êÎļþ¡°%s¡±ÐèÒªÒÔ -q Ñ¡ÏîÖØÐ´´½¨¡£ ÒÑÖÕÖ¹ÕýÔÚ´´½¨¡°%s¡±µÄǰÌá¡£ ¸ú×Ù/¶ÏµãÏÝÚå³¢ÊÔÒþº¬Ç°Ìá¡°%s¡±¡£ ÒÔÖ÷¸É¡°%.*s¡±³¢ÊÔÆ¥Åäģʽ¹æÔò¡£ ³¢ÊÔ¹æÔòǰÌá¡°%s¡±¡£ δ֪µÄÄÚÖÃÃüÁî¡°%s¡± δ֪´íÎó %dÕýÔÚ¸üРmakefile.... Ó÷¨£º%s [Ñ¡Ïî] [Ä¿±ê] ... Óû§¶¨ÒåÐźŠ1Óû§¶¨ÒåÐźŠ2ʹÓùØÓÚ¡°%s¡±µÄĬÈÏÃüÁî¡£ ÐéÄâʱÖÓ³¬Ê±¾¯¸æ£º¿ÕµÄÖØ¶¨Ïò ´°¿ÚÒѸıä[%s] ´íÎó %d (ºöÂÔ)¡°%s¡±ÊÇ×îеġ£¡°override¡±Ö¸ÁîÊÔͼʹÓò»Ö§³ÖµÄ¹¦ÄÜ£º¡°%s¡±×Ô¶¯µ«¡°%s¡±ÏÖÔÚ±»¿´×ö¡°%s¡±µÄͬһ¸öÎļþ¡£ÎÞ·¨½«Ë«Ã°ºÅ¡°%s¡±ÖØÃüÃûΪµ¥Ã°ºÅ¡°%s¡±ÎÞ·¨½«µ¥Ã°ºÅ¡°%s¡±ÖØÃüÃûΪ˫ðºÅ¡°%s¡±ÎÞ·¨ÊµÊ©¸ºÔØÏÞÖÆ£ºÎÞ·¨ÔÚ±¾²Ù×÷ϵͳÖÐʵʩ¸ºÔØÏÞÖÆÃüÁîÐÐÕýÔÚ´´½¨ÈÎÎñ¹ÜµÀĬÈÏ˯ÃßÍê³É(30)¡£¼ÌÐø¡£ ¸´ÖÆÈÎÎñ·þÎñÆ÷¿Õ¡°override¡±Ö¸Áî¿Õ×Ö·û´®ÊÇÎÞЧµÄÎļþÃû¿Õ±äÁ¿Ãû»·¾³²»¸Ã³öÏֵġ°%s¡±¶àÓڵġ°endef¡±¡°word¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý±ØÐë´óÓÚ 0fopen (ÁÙʱÎļþ)fwrite (ÁÙʱÎļþ)´´Ê¼»¯ÈÎÎñ·þÎñÆ÷¹ÜµÀÄÚ²¿´íÎ󣺡°%s¡± command_stateÄÚ²¿´íÎ󣺷Ƿ¨ --jobserver-fds ×Ö·û´®¡°%s¡±ÄÚ²¿´íÎ󣺶à¸ö --jobserver-fds Ñ¡ÏîÎÞЧµÄ¡°override¡±Ö¸ÁîÌõ¼þÖк¬ÓÐÎÞЧÓï·¨lbr$ini_control ʧ°Ü£¬·µ»Ø×´Ì¬ = %dlbr$set_modules »ñȡģ¿éÐÅϢʧ°Ü£¬·µ»Ø×´Ì¬ = %dmakefileÒÅ©¡°endef¡±£¬Î´ÖÕÖ¹µÄ¡°define¡±ÒÅ©¡°endif¡±ÃüÁî֮ǰÒÅ©Á˹æÔòÒÅ©·Ö¸ô·û %sÎÞÄ¿±êÆ¥Åä»ìºÍµÄÒþº¬ºÍÆÕͨ¹æÔò»ìºÍµÄÒþº¬ºÍ¾²Ì¬Ä£Ê½¹æÔò¶à¸öÄ¿±êÆ¥ÅäÎÞ¡°word¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊý¡°wordlist¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊý¡°wordlist¡±º¯ÊýµÄµÚ¶þ¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊýÿ¸öÌõ¼þÖ»ÄÜÓÐÒ»¸ö¡°else¡±¶ÁÈ¡ÈÎÎñ¹ÜµÀsys$search ʧ°Ü²¢·µ»Ø %d Ä¿±ê¡°%s¡±²»Æ¥ÅäÄ¿±êģʽĿ±ê¡°%s¡±ÔÚͬһ¸ö¹æÔòÖиø³öÁ˶à´Î¡£Ä¿±êÎļþ¡°%s¡±º¬ÓÐ : ºÍ :: Á½ÖÖÌõĿĿ±êģʽ²»º¬ÓС°%%¡±¡°-%c¡±Ñ¡ÏîÐèÒªÕýÕûÊý²ÎÊýVMS ϵͳÉϲ»Ö§³Ö touch ¹éµµ³ÉÔ±touch£º¹éµµÎļþ¡°%s¡±²»´æÔÚtouch£ºÀ´×Ô¡°%s¡±É쵀 ar_member_touch µÄ´íÎó·µ»ØÂëtouch£ºÔÚ¡°%2$s¡±Öв»´æÔÚ³ÉÔ±¡°%1$s¡±touch£º¡°%s¡±²»ÊǺϷ¨µÄ¹éµµÎļþÎÞ·¨´ò¿ª¿â¡°%s¡±ÒÔѰÕÒ³ÉÔ±¡°%s¡±Î´ÖªµÄµ÷ÊÔ¼¶±ð¡°%s¡±Î´ÖªµÄÐźÅɾ³ý (ÁÙʱÎļþ)£º¶Ôº¯Êý¡°%s¡±µÄδÖÕÖ¹µÄµ÷ÓãºÒÅ©¡°%c¡±Î´ÖÕÖ¹µÄ±äÁ¿ÒýÓÃÐéÄâÄÚ´æºÄ¾¡¾¯¸æ£º¼ì²âµ½Ê±ÖÓ´íÎó¡£ÄúµÄ´´½¨¿ÉÄÜÊDz»ÍêÕûµÄ¡£¾¯¸æ£ºÓöµ½ÁË NUL ×Ö·û£»ºöÂÔÐеÄÊ£Óಿ·Ö¾¯¸æ£ººöÂÔ¹ØÓÚÄ¿±ê¡°%s¡±µÄ¾ÉÃüÁ¸æ£º¸²¸Ç¹ØÓÚÄ¿±ê¡°%s¡±µÄÃüÁ¸æ£ºÎ´¶¨ÒåµÄ±äÁ¿¡°%.*s¡±windows32_openpipe ()£ºprocess_init_fd() ʧ°Ü дÈëÈÎÎñ·þÎñÆ÷make-dfsg-3.81.orig/po/zh_CN.po0000644000175000017500000012203110416553102016467 0ustar srivastasrivasta# SOME DESCRIPTIVE TITLE. # Copyright (C) 2002 Free Software Foundation, Inc. # This file is distributed under the same license as the make package. # Wang Li , 2002. # msgid "" msgstr "" "Project-Id-Version: make 3.79.1\n" "Report-Msgid-Bugs-To: bug-make@gnu.org\n" "POT-Creation-Date: 2006-04-01 01:40-0500\n" "PO-Revision-Date: 2002-07-22 15:02+0800\n" "Last-Translator: Wang Li \n" "Language-Team: Chinese (simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=gb2312\n" "Content-Transfer-Encoding: 8bit\n" #: ar.c:53 #, c-format msgid "attempt to use unsupported feature: `%s'" msgstr "ÊÔͼʹÓò»Ö§³ÖµÄ¹¦ÄÜ£º¡°%s¡±" #: ar.c:137 msgid "touch archive member is not available on VMS" msgstr "VMS ϵͳÉϲ»Ö§³Ö touch ¹éµµ³ÉÔ±" #: ar.c:168 #, c-format msgid "touch: Archive `%s' does not exist" msgstr "touch£º¹éµµÎļþ¡°%s¡±²»´æÔÚ" #: ar.c:171 #, c-format msgid "touch: `%s' is not a valid archive" msgstr "touch£º¡°%s¡±²»ÊǺϷ¨µÄ¹éµµÎļþ" #: ar.c:178 #, c-format msgid "touch: Member `%s' does not exist in `%s'" msgstr "touch£ºÔÚ¡°%2$s¡±Öв»´æÔÚ³ÉÔ±¡°%1$s¡±" #: ar.c:185 #, c-format msgid "touch: Bad return code from ar_member_touch on `%s'" msgstr "touch£ºÀ´×Ô¡°%s¡±É쵀 ar_member_touch µÄ´íÎó·µ»ØÂë" #: arscan.c:69 #, c-format msgid "lbr$set_module failed to extract module info, status = %d" msgstr "lbr$set_modules »ñȡģ¿éÐÅϢʧ°Ü£¬·µ»Ø×´Ì¬ = %d" #: arscan.c:154 #, c-format msgid "lbr$ini_control failed with status = %d" msgstr "lbr$ini_control ʧ°Ü£¬·µ»Ø×´Ì¬ = %d" #: arscan.c:165 #, c-format msgid "unable to open library `%s' to lookup member `%s'" msgstr "ÎÞ·¨´ò¿ª¿â¡°%s¡±ÒÔѰÕÒ³ÉÔ±¡°%s¡±" #: arscan.c:825 #, c-format msgid "Member `%s'%s: %ld bytes at %ld (%ld).\n" msgstr "" #: arscan.c:826 msgid " (name might be truncated)" msgstr " (Ãû³Æ¿ÉÄܱ»½Ø¶Ì)" #: arscan.c:828 #, c-format msgid " Date %s" msgstr " ÈÕÆÚ %s" #: arscan.c:829 #, c-format msgid " uid = %d, gid = %d, mode = 0%o.\n" msgstr " uid = %d£¬gid = %d£¬mode = 0%o¡£\n" #: commands.c:422 msgid "*** Break.\n" msgstr "*** Öжϡ£\n" #: commands.c:545 #, c-format msgid "*** [%s] Archive member `%s' may be bogus; not deleted" msgstr "*** [%s] ¹éµµ³ÉÔ±¡°%s¡±¿ÉÄÜÊǼٵģ»Î´É¾³ý" #: commands.c:548 #, c-format msgid "*** Archive member `%s' may be bogus; not deleted" msgstr "*** ¹éµµ³ÉÔ±¡°%s¡±¿ÉÄÜÊǼٵģ»Î´É¾³ý" #: commands.c:561 #, c-format msgid "*** [%s] Deleting file `%s'" msgstr "*** [%s] ÕýÔÚɾ³ýÎļþ¡°%s¡±" #: commands.c:563 #, c-format msgid "*** Deleting file `%s'" msgstr "*** ÕýÔÚɾ³ýÎļþ¡°%s¡±" #: commands.c:599 msgid "# commands to execute" msgstr "# ÒªÖ´ÐеÄÃüÁî" #: commands.c:602 msgid " (built-in):" msgstr " (ÄÚÖÃ)£º" #: commands.c:604 #, c-format msgid " (from `%s', line %lu):\n" msgstr " (´Ó¡°%s¡±£¬ÐÐ %lu)£º\n" #: dir.c:983 msgid "" "\n" "# Directories\n" msgstr "" "\n" "# Ŀ¼\n" #: dir.c:995 #, c-format msgid "# %s: could not be stat'd.\n" msgstr "# %s£ºÎÞ·¨¶ÔÆä½øÐÐ stat ²Ù×÷¡£\n" #: dir.c:999 #, c-format msgid "# %s (key %s, mtime %d): could not be opened.\n" msgstr "# %s (¹Ø¼ü×Ö %s£¬ÐÞ¸Äʱ¼ä %d)£ºÎÞ·¨´ò¿ª¡£\n" #: dir.c:1003 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): could not be opened.\n" msgstr "# %s (É豸 %d£¬i-½Úµã [%d,%d,%d])£ºÎÞ·¨´ò¿ª¡£\n" #: dir.c:1008 #, c-format msgid "# %s (device %ld, inode %ld): could not be opened.\n" msgstr "# %s (É豸 %ld£¬i-½Úµã %ld)£ºÎÞ·¨´ò¿ª¡£\n" #: dir.c:1035 #, c-format msgid "# %s (key %s, mtime %d): " msgstr "# %s (¹Ø¼ü×Ö %s£¬ÐÞ¸Äʱ¼ä %d)£º" #: dir.c:1039 #, c-format msgid "# %s (device %d, inode [%d,%d,%d]): " msgstr "# %s (É豸 %d£¬i-½Úµã [%d,%d,%d])£º" #: dir.c:1044 #, c-format msgid "# %s (device %ld, inode %ld): " msgstr "# %s (É豸 %ld£¬i-½Úµã %ld)£º" #: dir.c:1050 dir.c:1071 msgid "No" msgstr "ÎÞ" #: dir.c:1053 dir.c:1074 msgid " files, " msgstr " Îļþ£¬ " #: dir.c:1055 dir.c:1076 msgid "no" msgstr "ÎÞ" #: dir.c:1058 msgid " impossibilities" msgstr "" #: dir.c:1062 msgid " so far." msgstr " Æù½ñΪֹ¡£" #: dir.c:1079 #, c-format msgid " impossibilities in %lu directories.\n" msgstr "" #: expand.c:128 #, c-format msgid "Recursive variable `%s' references itself (eventually)" msgstr "" #: expand.c:266 msgid "unterminated variable reference" msgstr "δÖÕÖ¹µÄ±äÁ¿ÒýÓÃ" #: file.c:270 #, c-format msgid "Commands were specified for file `%s' at %s:%lu," msgstr "¹ØÓÚÎļþ¡°%s¡±µÄÃüÁîÔÚ %s:%lu ´¦Ö¸¶¨£¬" #: file.c:275 #, c-format msgid "Commands for file `%s' were found by implicit rule search," msgstr "¹ØÓÚÎļþ¡°%s¡±µÄÃüÁîͨ¹ýÒþº¬¹æÔòËÑË÷¶øÕÒµ½£¬" #: file.c:278 #, c-format msgid "but `%s' is now considered the same file as `%s'." msgstr "µ«¡°%s¡±ÏÖÔÚ±»¿´×ö¡°%s¡±µÄͬһ¸öÎļþ¡£" #: file.c:281 #, c-format msgid "Commands for `%s' will be ignored in favor of those for `%s'." msgstr "" #: file.c:301 #, c-format msgid "can't rename single-colon `%s' to double-colon `%s'" msgstr "ÎÞ·¨½«µ¥Ã°ºÅ¡°%s¡±ÖØÃüÃûΪ˫ðºÅ¡°%s¡±" #: file.c:306 #, c-format msgid "can't rename double-colon `%s' to single-colon `%s'" msgstr "ÎÞ·¨½«Ë«Ã°ºÅ¡°%s¡±ÖØÃüÃûΪµ¥Ã°ºÅ¡°%s¡±" #: file.c:381 #, c-format msgid "*** Deleting intermediate file `%s'" msgstr "*** ÕýÔÚɾ³ýÖмäÎļþ¡°%s¡±" #: file.c:385 #, fuzzy msgid "Removing intermediate files...\n" msgstr "*** ÕýÔÚɾ³ýÖмäÎļþ¡°%s¡±" #: file.c:781 #, c-format msgid "%s: Timestamp out of range; substituting %s" msgstr "%s£ºÊ±¼ä±ê¼Ç³¬³ö·¶Î§£»ÕýÔÚÌæ»» %s" #: file.c:782 msgid "Current time" msgstr "µ±Ç°Ê±¼ä" #: file.c:881 msgid "# Not a target:" msgstr "# ²»ÊÇÒ»¸öÄ¿±ê£º" #: file.c:903 msgid "# Precious file (prerequisite of .PRECIOUS)." msgstr "" #: file.c:905 msgid "# Phony target (prerequisite of .PHONY)." msgstr "" #: file.c:907 msgid "# Command-line target." msgstr "# ÃüÁîÐÐÄ¿±ê¡£" #: file.c:909 msgid "# A default, MAKEFILES, or -include/sinclude makefile." msgstr "" #: file.c:911 msgid "# Implicit rule search has been done." msgstr "# ¶ÔÒþº¬¹æÔòµÄËÑË÷ÒÑÍê³É¡£" #: file.c:912 msgid "# Implicit rule search has not been done." msgstr "# ¶ÔÒþº¬¹æÔòµÄËÑË÷ÉÐδÍê³É¡£" #: file.c:914 #, c-format msgid "# Implicit/static pattern stem: `%s'\n" msgstr "# Òþº¬/¾²Ì¬Ä£Ê½Ö÷¸É£º¡°%s¡±\n" #: file.c:916 msgid "# File is an intermediate prerequisite." msgstr "# ÎļþÊÇÒ»¸öÖмäǰÌá¡£" #: file.c:919 msgid "# Also makes:" msgstr "# »¹Òª´´½¨£º" #: file.c:925 msgid "# Modification time never checked." msgstr "# ´Ó²»¼ì²éÐÞ¸Äʱ¼ä¡£" #: file.c:927 msgid "# File does not exist." msgstr "# Îļþ²»´æÔÚ¡£" #: file.c:929 msgid "# File is very old." msgstr "# Îļþ·Ç³£³Â¾É¡£" #: file.c:934 #, c-format msgid "# Last modified %s\n" msgstr "# ×î½ü¸üР%s\n" #: file.c:937 msgid "# File has been updated." msgstr "# ÎļþÒѾ­±»¸üС£" #: file.c:937 msgid "# File has not been updated." msgstr "# ÎļþÉÐδ±»¸üС£" #: file.c:941 msgid "# Commands currently running (THIS IS A BUG)." msgstr "# ÕýÔÚÔËÐеÄÃüÁî (ÕâÊǸö´íÎó)¡£" #: file.c:944 msgid "# Dependencies commands running (THIS IS A BUG)." msgstr "# ÕýÔÚÔËÐеÄÒÀÀµÐÔÃüÁî (ÕâÊǸö´íÎó)¡£" #: file.c:953 msgid "# Successfully updated." msgstr "# ¸üгɹ¦¡£" #: file.c:957 msgid "# Needs to be updated (-q is set)." msgstr "# ÐèÒª¸üР(Óà -q É趨)¡£" #: file.c:960 msgid "# Failed to be updated." msgstr "# ¸üÐÂʧ°Ü¡£" #: file.c:963 msgid "# Invalid value in `update_status' member!" msgstr "# ¡°update_status¡±³ÉÔ±ÖÐÎÞЧµÄÖµ£¡" #: file.c:970 msgid "# Invalid value in `command_state' member!" msgstr "# ¡°command_state¡±³ÉÔ±ÖÐÎÞЧµÄÖµ£¡" #: file.c:989 msgid "" "\n" "# Files" msgstr "" "\n" "# Îļþ" #: file.c:993 msgid "" "\n" "# files hash-table stats:\n" "# " msgstr "" #: function.c:759 msgid "non-numeric first argument to `word' function" msgstr "¡°word¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊý" #: function.c:764 msgid "first argument to `word' function must be greater than 0" msgstr "¡°word¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý±ØÐë´óÓÚ 0" #: function.c:785 msgid "non-numeric first argument to `wordlist' function" msgstr "¡°wordlist¡±º¯ÊýµÄµÚÒ»¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊý" #: function.c:787 msgid "non-numeric second argument to `wordlist' function" msgstr "¡°wordlist¡±º¯ÊýµÄµÚ¶þ¸ö²ÎÊý²»ÊÇÊýÖµ²ÎÊý" #: function.c:1453 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(In) failed (e=%ld)\n" msgstr "´´½¨×Ó½ø³Ì£º¸´Öƾä±ú(In)ʧ°Ü (e=%d)\n" #: function.c:1464 #, fuzzy, c-format msgid "create_child_process: DuplicateHandle(Err) failed (e=%ld)\n" msgstr "´´½¨×Ó½ø³Ì£º¸´Öƾä±ú(Err)ʧ°Ü (e=%d)\n" #: function.c:1469 #, fuzzy, c-format msgid "CreatePipe() failed (e=%ld)\n" msgstr "CreatePipe() ʧ°Ü (e=%d)\n" #: function.c:1474 msgid "windows32_openpipe (): process_init_fd() failed\n" msgstr "windows32_openpipe ()£ºprocess_init_fd() ʧ°Ü\n" #: function.c:1725 #, c-format msgid "Cleaning up temporary batch file %s\n" msgstr "ÕýÔÚÇå³ýÁÙʱÅú´¦ÀíÎļþ %s\n" #: function.c:2101 #, fuzzy, c-format msgid "insufficient number of arguments (%d) to function `%s'" msgstr "º¯Êý¡°%2$s¡±µÄ²ÎÊýÊýÁ¿²»¹» (%1$d)" #: function.c:2113 #, fuzzy, c-format msgid "unimplemented on this platform: function `%s'" msgstr "ÔÚ±¾Æ½Ì¨ÉÏδʵÏÖ£ºº¯Êý¡°%s¡±" #: function.c:2163 #, c-format msgid "unterminated call to function `%s': missing `%c'" msgstr "¶Ôº¯Êý¡°%s¡±µÄδÖÕÖ¹µÄµ÷ÓãºÒÅ©¡°%c¡±" #: getopt.c:663 #, c-format msgid "%s: option `%s' is ambiguous\n" msgstr "%s£ºÑ¡Ïî¡°%s¡±º¬Òå²»Çå\n" #: getopt.c:687 #, c-format msgid "%s: option `--%s' doesn't allow an argument\n" msgstr "%s£ºÑ¡Ïî¡°--%s¡±²»ÐèÒª²ÎÊý\n" #: getopt.c:692 #, c-format msgid "%s: option `%c%s' doesn't allow an argument\n" msgstr "%s£ºÑ¡Ïî¡°%c%s¡±²»ÐèÒª²ÎÊý\n" #: getopt.c:709 getopt.c:882 #, c-format msgid "%s: option `%s' requires an argument\n" msgstr "%s£ºÑ¡Ïî¡°%s¡±ÐèÒªÒ»¸ö²ÎÊý\n" #: getopt.c:738 #, c-format msgid "%s: unrecognized option `--%s'\n" msgstr "%s£ºÎÞ·¨Ê¶±ðµÄÑ¡Ïî¡°--%s¡±\n" #: getopt.c:742 #, c-format msgid "%s: unrecognized option `%c%s'\n" msgstr "%s£ºÎÞ·¨Ê¶±ðµÄÑ¡Ïî¡°%c%s¡±\n" #: getopt.c:768 #, c-format msgid "%s: illegal option -- %c\n" msgstr "%s£º·Ç·¨Ñ¡Ïî -- %c\n" #: getopt.c:771 #, c-format msgid "%s: invalid option -- %c\n" msgstr "%s£º·Ç·¨Ñ¡Ïî -- %c\n" #: getopt.c:801 getopt.c:931 #, c-format msgid "%s: option requires an argument -- %c\n" msgstr "%s£ºÑ¡ÏîÐèÒªÒ»¸ö²ÎÊý -- %c\n" #: getopt.c:848 #, c-format msgid "%s: option `-W %s' is ambiguous\n" msgstr "%s£ºÑ¡Ïî¡°-W %s¡±º¬Òå²»Çå\n" #: getopt.c:866 #, c-format msgid "%s: option `-W %s' doesn't allow an argument\n" msgstr "%s£ºÑ¡Ïî¡°-W %s¡±²»ÔÊÐí¸ø³ö²ÎÊý\n" #: hash.c:51 #, c-format msgid "can't allocate %ld bytes for hash table: memory exhausted" msgstr "" #: hash.c:282 #, c-format msgid "Load=%ld/%ld=%.0f%%, " msgstr "" #: hash.c:284 #, c-format msgid "Rehash=%d, " msgstr "" #: hash.c:285 #, c-format msgid "Collisions=%ld/%ld=%.0f%%" msgstr "" #: implicit.c:41 #, c-format msgid "Looking for an implicit rule for `%s'.\n" msgstr "ÕýÔÚΪ¡°%s¡±Ñ°ÕÒÒþº¬¹æÔò¡£\n" #: implicit.c:57 #, c-format msgid "Looking for archive-member implicit rule for `%s'.\n" msgstr "ÕýÔÚΪ¡°%s¡±Ñ°Õҹ鵵³ÉÔ±Òþº¬¹æÔò¡£\n" #: implicit.c:319 msgid "Avoiding implicit rule recursion.\n" msgstr "±ÜÃâÒþº¬¹æÔòµÝ¹é¡£\n" #: implicit.c:476 #, c-format msgid "Trying pattern rule with stem `%.*s'.\n" msgstr "ÒÔÖ÷¸É¡°%.*s¡±³¢ÊÔÆ¥Åäģʽ¹æÔò¡£\n" #: implicit.c:667 #, c-format msgid "Rejecting impossible implicit prerequisite `%s'.\n" msgstr "¾Ü¾ø²»¿ÉÄܵÄÒþº¬Ç°Ìá¡°%s¡±¡£\n" #: implicit.c:668 #, c-format msgid "Rejecting impossible rule prerequisite `%s'.\n" msgstr "¾Ü¾ø²»¿ÉÄܵĹæÔòǰÌá¡°%s¡±¡£\n" #: implicit.c:678 #, c-format msgid "Trying implicit prerequisite `%s'.\n" msgstr "³¢ÊÔÒþº¬Ç°Ìá¡°%s¡±¡£\n" #: implicit.c:679 #, c-format msgid "Trying rule prerequisite `%s'.\n" msgstr "³¢ÊÔ¹æÔòǰÌá¡°%s¡±¡£\n" #: implicit.c:710 #, c-format msgid "Found prerequisite `%s' as VPATH `%s'\n" msgstr "" #: implicit.c:730 #, c-format msgid "Looking for a rule with intermediate file `%s'.\n" msgstr "ÕýÔÚѰÕÒʹÓÃÖмäÎļþ¡°%s¡±µÄ¹æÔò¡£\n" #: job.c:321 #, fuzzy msgid "Cannot create a temporary file\n" msgstr "fwrite (ÁÙʱÎļþ)" #: job.c:388 #, c-format msgid "*** [%s] Error 0x%x (ignored)" msgstr "*** [%s] ´íÎó 0x%x (ºöÂÔ)" #: job.c:389 #, c-format msgid "*** [%s] Error 0x%x" msgstr "*** [%s] ´íÎó 0x%x" #: job.c:393 #, c-format msgid "[%s] Error %d (ignored)" msgstr "[%s] ´íÎó %d (ºöÂÔ)" #: job.c:394 #, c-format msgid "*** [%s] Error %d" msgstr "*** [%s] ´íÎó %d" #: job.c:399 msgid " (core dumped)" msgstr " (core dumped)" #: job.c:488 msgid "*** Waiting for unfinished jobs...." msgstr "*** ÕýÔڵȴýδÍê³ÉµÄÈÎÎñ...." #: job.c:518 #, c-format msgid "Live child 0x%08lx (%s) PID %ld %s\n" msgstr "»îÔ¾×Ó½ø³Ì 0x%08lx (%s) PID %ld %s\n" #: job.c:520 job.c:701 job.c:804 job.c:1457 msgid " (remote)" msgstr " (Ô¶³Ì)" #: job.c:698 #, c-format msgid "Reaping losing child 0x%08lx PID %ld %s\n" msgstr "ÕýÔÚÖÐֹʧ°ÜµÄ×Ó½ø³Ì 0x%08lx PID %ld %s\n" #: job.c:699 #, c-format msgid "Reaping winning child 0x%08lx PID %ld %s\n" msgstr "ÕýÔÚÖÐÖ¹»ñʤµÄ×Ó½ø³Ì 0x%08lx PID %ld %s\n" #: job.c:704 #, c-format msgid "Cleaning up temp batch file %s\n" msgstr "ÕýÔÚÇå³ýÁÙʱÅúÎļþ %s\n" #: job.c:802 #, fuzzy, c-format msgid "Removing child 0x%08lx PID %ld%s from chain.\n" msgstr "´ÓÁ´ÖÐɾ³ý×Ó½ø³Ì 0x%08lx PID %ld %s¡£\n" #: job.c:862 msgid "write jobserver" msgstr "дÈëÈÎÎñ·þÎñÆ÷" #: job.c:864 #, c-format msgid "Released token for child 0x%08lx (%s).\n" msgstr "Ϊ×Ó½ø³Ì 0x%08lx (%s) ÊÍ·ÅÁîÅÆ(token)¡£\n" #: job.c:1383 #, fuzzy, c-format msgid "process_easy() failed to launch process (e=%ld)\n" msgstr "process_easy() Æô¶¯½ø³Ìʧ°Ü (e=%d)\n" #: job.c:1387 job.c:2020 #, c-format msgid "" "\n" "Counted %d args in failed launch\n" msgstr "" #: job.c:1455 #, c-format msgid "Putting child 0x%08lx (%s) PID %ld%s on the chain.\n" msgstr "½«×Ó½ø³Ì 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 "¶ÁÈ¡ÈÎÎñ¹ÜµÀ" #: job.c:1832 msgid "cannot enforce load limits on this operating system" msgstr "ÎÞ·¨ÔÚ±¾²Ù×÷ϵͳÖÐʵʩ¸ºÔØÏÞÖÆ" #: job.c:1834 msgid "cannot enforce load limit: " msgstr "ÎÞ·¨ÊµÊ©¸ºÔØÏÞÖÆ£º" #: 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 "process_easy() Æô¶¯½ø³Ìʧ°Ü (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£¬ÈÔÔڵȴý pid %d\n" #: job.c:2085 #, c-format msgid "%s: Command not found" msgstr "%s£ºÃüÁîδÕÒµ½" #: job.c:2145 #, c-format msgid "%s: Shell program not found" msgstr "%s£ºÎ´ÕÒµ½ shell ³ÌÐò" #: 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 ÒѸıä (ԭΪ¡°%s¡±£¬ÏÖΪ¡°%s¡±)" #: job.c:2789 #, c-format msgid "Creating temporary batch file %s\n" msgstr "ÕýÔÚ´´½¨ÁÙʱÅúÎļþ %s\n" #: job.c:2902 #, c-format msgid "%s (line %d) Bad shell context (!unixy && !batch_mode_shell)\n" msgstr "" #: main.c:291 msgid "Options:\n" msgstr "Ñ¡Ï\n" #: main.c:292 #, fuzzy msgid " -b, -m Ignored for compatibility.\n" msgstr "ºöÂÔ¼æÈÝÐÔ" #: main.c:294 msgid " -B, --always-make Unconditionally make all targets.\n" msgstr "" #: main.c:296 msgid "" " -C DIRECTORY, --directory=DIRECTORY\n" " Change to DIRECTORY before doing anything.\n" msgstr "" #: main.c:299 #, fuzzy msgid " -d Print lots of debugging information.\n" msgstr "´òÓ¡´óÁ¿µ÷ÊÔÐÅÏ¢" #: main.c:301 #, fuzzy msgid "" " --debug[=FLAGS] Print various types of debugging information.\n" msgstr "´òÓ¡¸÷ÖÖµ÷ÊÔÐÅÏ¢" #: main.c:303 msgid "" " -e, --environment-overrides\n" " Environment variables override makefiles.\n" msgstr "" #: main.c:306 msgid "" " -f FILE, --file=FILE, --makefile=FILE\n" " Read FILE as a makefile.\n" msgstr "" #: main.c:309 #, fuzzy msgid " -h, --help Print this message and exit.\n" msgstr "´òÓ¡¸ÃÏûÏ¢²¢Í˳ö" #: main.c:311 #, fuzzy msgid " -i, --ignore-errors Ignore errors from commands.\n" msgstr "ºöÂÔÀ´×ÔÃüÁîµÄ´íÎó" #: main.c:313 msgid "" " -I DIRECTORY, --include-dir=DIRECTORY\n" " Search DIRECTORY for included makefiles.\n" msgstr "" #: main.c:316 #, fuzzy msgid "" " -j [N], --jobs[=N] Allow N jobs at once; infinite jobs with no " "arg.\n" msgstr "ͬʱÔÊÐí N ¸öÈÎÎñ£»ÎÞ²ÎÊý±íÃ÷ÔÊÐíÎÞÏÞ¸öÈÎÎñ" #: main.c:318 #, fuzzy msgid "" " -k, --keep-going Keep going when some targets can't be made.\n" msgstr "µ±Ä³Ð©Ä¿±êÎÞ·¨´´½¨Ê±ÈÔÈ»¼ÌÐø" #: 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 "" #: 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 "" #: 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 "" #: main.c:331 #, fuzzy msgid " -p, --print-data-base Print make's internal database.\n" msgstr "´òÓ¡ make µÄÄÚ²¿Êý¾Ý¿â" #: main.c:333 #, fuzzy msgid "" " -q, --question Run no commands; exit status says if up to " "date.\n" msgstr "²»ÔËÐÐÈκÎÃüÁÍ˳ö״̬˵Ã÷ÊÇ·ñÒÑÈ«²¿¸üÐÂ" #: main.c:335 #, fuzzy msgid " -r, --no-builtin-rules Disable the built-in implicit rules.\n" msgstr "½ûÓÃÄÚÖÃÒþº¬¹æÔò" #: main.c:337 #, fuzzy msgid " -R, --no-builtin-variables Disable the built-in variable settings.\n" msgstr "½ûÓÃÄÚÖñäÁ¿ÉèÖÃ" #: main.c:339 msgid " -s, --silent, --quiet Don't echo commands.\n" msgstr "" #: main.c:341 msgid "" " -S, --no-keep-going, --stop\n" " Turns off -k.\n" msgstr "" #: main.c:344 #, fuzzy msgid " -t, --touch Touch targets instead of remaking them.\n" msgstr "touch Ä¿±ê¶ø²»ÊÇÖØÐ´´½¨ËüÃÇ" #: main.c:346 #, fuzzy msgid "" " -v, --version Print the version number of make and exit.\n" msgstr "´òÓ¡ make µÄ°æ±¾ºÅ²¢Í˳ö" #: main.c:348 #, fuzzy msgid " -w, --print-directory Print the current directory.\n" msgstr "´òÓ¡µ±Ç°Ä¿Â¼" #: main.c:350 #, fuzzy msgid "" " --no-print-directory Turn off -w, even if it was turned on " "implicitly.\n" msgstr "¼´Ê¹ -w ĬÈÏ¿ªÆô£¬Ò²Òª¹Ø±Õ -w" #: main.c:352 msgid "" " -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE\n" " Consider FILE to be infinitely new.\n" msgstr "" #: main.c:355 #, fuzzy msgid "" " --warn-undefined-variables Warn when an undefined variable is " "referenced.\n" msgstr "µ±ÒýÓÃ䶨Òå±äÁ¿µÄʱºò·¢³ö¾¯¸æ" #: main.c:549 msgid "empty string invalid as file name" msgstr "¿Õ×Ö·û´®ÊÇÎÞЧµÄÎļþÃû" #: main.c:630 #, c-format msgid "unknown debug level specification `%s'" msgstr "δ֪µÄµ÷ÊÔ¼¶±ð¡°%s¡±" #: main.c:670 #, fuzzy, c-format msgid "%s: Interrupt/Exception caught (code = 0x%lx, addr = 0x%lx)\n" msgstr "%s£º²¶»ñÖжÏ/Òì³£ (´úÂë = 0x%x, µØÖ· = 0x%x)\n" #: main.c:677 #, c-format msgid "" "\n" "Unhandled exception filter called from program %s\n" "ExceptionCode = %lx\n" "ExceptionFlags = %lx\n" "ExceptionAddress = %lx\n" msgstr "" #: main.c:685 #, fuzzy, c-format msgid "Access violation: write operation at address %lx\n" msgstr "·ÃÎʳåÍ»£ºµØÖ· %x ´¦µÄд²Ù×÷\n" #: main.c:686 #, fuzzy, c-format msgid "Access violation: read operation at address %lx\n" msgstr "·ÃÎʳåÍ»£ºµØÖ· %x´¦µÄ¶Á²Ù×÷\n" #: main.c:762 main.c:773 #, c-format msgid "find_and_set_shell setting default_shell = %s\n" msgstr "" #: main.c:814 #, c-format msgid "find_and_set_shell path search set default_shell = %s\n" msgstr "" #: main.c:1236 #, c-format msgid "%s is suspending for 30 seconds..." msgstr "%s ÕýÔÚ¹ÒÆð 30 Ãë..." #: main.c:1238 #, c-format msgid "done sleep(30). Continuing.\n" msgstr "˯ÃßÍê³É(30)¡£¼ÌÐø¡£\n" #: main.c:1466 msgid "Makefile from standard input specified twice." msgstr "Á½´ÎÖ¸Ã÷À´×Ô±ê×¼ÊäÈëµÄ makefile¡£" #: main.c:1505 vmsjobs.c:486 msgid "fopen (temporary file)" msgstr "fopen (ÁÙʱÎļþ)" #: main.c:1511 msgid "fwrite (temporary file)" msgstr "fwrite (ÁÙʱÎļþ)" #: main.c:1640 msgid "Parallel jobs (-j) are not supported on this platform." msgstr "±¾Æ½Ì¨²»Ö§³Ö²¢ÐÐÈÎÎñ (-j)¡£" #: main.c:1641 msgid "Resetting to single job (-j1) mode." msgstr "ÖØÖÃΪµ¥ÈÎÎñģʽ (-j1)¡£" #: main.c:1656 msgid "internal error: multiple --jobserver-fds options" msgstr "ÄÚ²¿´íÎ󣺶à¸ö --jobserver-fds Ñ¡Ïî" #: main.c:1664 #, c-format msgid "internal error: invalid --jobserver-fds string `%s'" msgstr "ÄÚ²¿´íÎ󣺷Ƿ¨ --jobserver-fds ×Ö·û´®¡°%s¡±" #: main.c:1674 msgid "warning: -jN forced in submake: disabling jobserver mode." msgstr "" #: main.c:1684 msgid "dup jobserver" msgstr "¸´ÖÆÈÎÎñ·þÎñÆ÷" #: main.c:1687 msgid "" "warning: jobserver unavailable: using -j1. Add `+' to parent make rule." msgstr "" #: main.c:1710 msgid "creating jobs pipe" msgstr "ÕýÔÚ´´½¨ÈÎÎñ¹ÜµÀ" #: main.c:1725 msgid "init jobserver pipe" msgstr "´´Ê¼»¯ÈÎÎñ·þÎñÆ÷¹ÜµÀ" #: main.c:1744 msgid "Symbolic links not supported: disabling -L." msgstr "" #: main.c:1820 msgid "Updating makefiles....\n" msgstr "ÕýÔÚ¸üРmakefile....\n" #: main.c:1845 #, c-format msgid "Makefile `%s' might loop; not remaking it.\n" msgstr "Makefile ¡°%s¡±¿ÉÄÜÑ­»·£»²»»áÖØÐ´´½¨Ëü¡£\n" #: main.c:1924 #, c-format msgid "Failed to remake makefile `%s'." msgstr "ÖØÐ´´½¨ makefile ¡°%s¡± ʧ°Ü¡£" #: main.c:1941 #, c-format msgid "Included makefile `%s' was not found." msgstr "ÕÒ²»µ½±»ÒýÈëµÄ makefile ¡°%s¡±" #: main.c:1946 #, c-format msgid "Makefile `%s' was not found" msgstr "ÕÒ²»µ½ makefile ¡°%s¡±" #: main.c:2016 msgid "Couldn't change back to original directory." msgstr "ÎÞ·¨»Øµ½Ô­Ê¼Ä¿Â¼¡£" #: main.c:2024 #, fuzzy, c-format msgid "Re-executing[%u]:" msgstr "ÖØÐÂÖ´ÐУº" #: main.c:2140 msgid "unlink (temporary file): " msgstr "ɾ³ý (ÁÙʱÎļþ)£º" #: main.c:2169 msgid ".DEFAULT_GOAL contains more than one target" msgstr "" #: main.c:2189 msgid "No targets specified and no makefile found" msgstr "ûÓÐÖ¸Ã÷Ä¿±ê²¢ÇÒÕÒ²»µ½ makefile" #: main.c:2191 msgid "No targets" msgstr "ÎÞÄ¿±ê" #: main.c:2196 msgid "Updating goal targets....\n" msgstr "" #: main.c:2222 msgid "warning: Clock skew detected. Your build may be incomplete." msgstr "¾¯¸æ£º¼ì²âµ½Ê±ÖÓ´íÎó¡£ÄúµÄ´´½¨¿ÉÄÜÊDz»ÍêÕûµÄ¡£" #: main.c:2383 #, c-format msgid "Usage: %s [options] [target] ...\n" msgstr "Ó÷¨£º%s [Ñ¡Ïî] [Ä¿±ê] ...\n" #: main.c:2389 #, c-format msgid "" "\n" "This program built for %s\n" msgstr "" #: main.c:2391 #, c-format msgid "" "\n" "This program built for %s (%s)\n" msgstr "" #: main.c:2394 #, fuzzy, c-format msgid "Report bugs to \n" msgstr "" "\n" "´íÎ󱨸浽 ¡£\n" #: main.c:2466 #, fuzzy, c-format msgid "the `-%c' option requires a non-empty string argument" msgstr "¡°-%c¡±Ñ¡ÏîÐèÒªÕýÕûÊý²ÎÊý" #: main.c:2518 #, c-format msgid "the `-%c' option requires a positive integral argument" msgstr "¡°-%c¡±Ñ¡ÏîÐèÒªÕýÕûÊý²ÎÊý" #: 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 "" #: main.c:2948 #, c-format msgid "" "\n" "%sThis program built for %s\n" msgstr "" #: main.c:2950 #, c-format msgid "" "\n" "%sThis program built for %s (%s)\n" msgstr "" #: main.c:2968 #, c-format msgid "" "\n" "# Make data base, printed on %s" msgstr "" #: main.c:2978 #, c-format msgid "" "\n" "# Finished Make data base on %s\n" msgstr "" #: main.c:3101 #, fuzzy, c-format msgid "%s: Entering an unknown directory\n" msgstr "Ò»¸öδ֪µÄĿ¼" #: main.c:3103 #, fuzzy, c-format msgid "%s: Leaving an unknown directory\n" msgstr "Ò»¸öδ֪µÄĿ¼" #: main.c:3106 #, fuzzy, c-format msgid "%s: Entering directory `%s'\n" msgstr "Ŀ¼¡°%s¡±\n" #: main.c:3109 #, fuzzy, c-format msgid "%s: Leaving directory `%s'\n" msgstr "Ŀ¼¡°%s¡±\n" #: main.c:3114 #, fuzzy, c-format msgid "%s[%u]: Entering an unknown directory\n" msgstr "Ò»¸öδ֪µÄĿ¼" #: main.c:3117 #, fuzzy, c-format msgid "%s[%u]: Leaving an unknown directory\n" msgstr "Ò»¸öδ֪µÄĿ¼" #: main.c:3121 #, fuzzy, c-format msgid "%s[%u]: Entering directory `%s'\n" msgstr "Ŀ¼¡°%s¡±\n" #: main.c:3124 #, fuzzy, c-format msgid "%s[%u]: Leaving directory `%s'\n" msgstr "Ŀ¼¡°%s¡±\n" #: misc.c:285 msgid ". Stop.\n" msgstr "¡£ Í£Ö¹¡£\n" #: misc.c:306 #, c-format msgid "Unknown error %d" msgstr "δ֪´íÎó %d" #: misc.c:316 #, c-format msgid "%s%s: %s" msgstr "" #: misc.c:324 #, c-format msgid "%s: %s" msgstr "" #: misc.c:344 misc.c:359 misc.c:376 read.c:3127 msgid "virtual memory exhausted" msgstr "ÐéÄâÄÚ´æºÄ¾¡" #: misc.c:646 #, c-format msgid "%s: user %lu (real %lu), group %lu (real %lu)\n" msgstr "" #: misc.c:667 #, fuzzy msgid "Initialized access" msgstr "Òѳõʼ»¯" #: misc.c:746 msgid "User access" msgstr "" #: misc.c:794 msgid "Make access" msgstr "" #: misc.c:828 msgid "Child access" msgstr "" #: misc.c:892 #, fuzzy, c-format msgid "write error: %s" msgstr "µ½ %s µÄÖØ¶¨Ïò´íÎóÊä³ö\n" #: misc.c:894 #, fuzzy msgid "write error" msgstr "дÈëÈÎÎñ·þÎñÆ÷" #: read.c:160 msgid "Reading makefiles...\n" msgstr "ÕýÔÚ¶ÁÈë makefiles...\n" #: read.c:315 #, c-format msgid "Reading makefile `%s'" msgstr "ÕýÔÚ¶ÁÈë makefile ¡°%s¡±" #: read.c:317 #, c-format msgid " (no default goal)" msgstr "" #: read.c:319 #, c-format msgid " (search path)" msgstr " (ËÑË÷·¾¶)" #: read.c:321 #, c-format msgid " (don't care)" msgstr "" #: read.c:323 #, c-format msgid " (no ~ expansion)" msgstr "" #: read.c:623 msgid "invalid syntax in conditional" msgstr "Ìõ¼þÖк¬ÓÐÎÞЧÓï·¨" #: read.c:633 msgid "extraneous `endef'" msgstr "¶àÓڵġ°endef¡±" #: read.c:645 read.c:673 variable.c:1316 msgid "empty variable name" msgstr "¿Õ±äÁ¿Ãû" #: read.c:662 msgid "empty `override' directive" msgstr "¿Õ¡°override¡±Ö¸Áî" #: read.c:687 msgid "invalid `override' directive" msgstr "ÎÞЧµÄ¡°override¡±Ö¸Áî" #: read.c:854 msgid "commands commence before first target" msgstr "" #: read.c:905 msgid "missing rule before commands" msgstr "ÃüÁî֮ǰÒÅ©Á˹æÔò" #: read.c:992 #, c-format msgid "missing separator%s" msgstr "ÒÅ©·Ö¸ô·û %s" #: read.c:994 msgid " (did you mean TAB instead of 8 spaces?)" msgstr " (ÄúµÄÒâ˼ÊÇÓà TAB ´úÌæ 8 ¸ö¿Õ¸ñ£¿)" #: read.c:1152 msgid "missing target pattern" msgstr "ÎÞÄ¿±êÆ¥Åä" #: read.c:1154 msgid "multiple target patterns" msgstr "¶à¸öÄ¿±êÆ¥Åä" #: read.c:1158 #, c-format msgid "target pattern contains no `%%'" msgstr "Ä¿±êģʽ²»º¬ÓС°%%¡±" #: read.c:1286 msgid "missing `endif'" msgstr "ÒÅ©¡°endif¡±" #: read.c:1377 msgid "Extraneous text after `endef' directive" msgstr "¡°endef¡±Ö¸Áîºóº¬Óв»¸Ã³öÏÖµÄÎÄ×Ö" #: read.c:1411 msgid "missing `endef', unterminated `define'" msgstr "ÒÅ©¡°endef¡±£¬Î´ÖÕÖ¹µÄ¡°define¡±" #: read.c:1454 #, c-format msgid "Extraneous text after `%s' directive" msgstr "ÔÚ¡°%s¡±Ö¸ÁîÖ®ºóº¬Óв»¸Ã³öÏÖµÄÎÄ×Ö" #: read.c:1463 read.c:1477 #, c-format msgid "extraneous `%s'" msgstr "²»¸Ã³öÏֵġ°%s¡±" #: read.c:1482 msgid "only one `else' per conditional" msgstr "ÿ¸öÌõ¼þÖ»ÄÜÓÐÒ»¸ö¡°else¡±" #: read.c:1824 msgid "Malformed target-specific variable definition" msgstr "" #: read.c:1886 msgid "prerequisites cannot be defined in command scripts" msgstr "" #: 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 "Ä¿±ê¡°%s¡±²»Æ¥ÅäÄ¿±êģʽ" #: read.c:1973 read.c:2074 #, c-format msgid "target file `%s' has both : and :: entries" msgstr "Ä¿±êÎļþ¡°%s¡±º¬ÓÐ : ºÍ :: Á½ÖÖÌõÄ¿" #: read.c:1979 #, c-format msgid "target `%s' given more than once in the same rule." msgstr "Ä¿±ê¡°%s¡±ÔÚͬһ¸ö¹æÔòÖиø³öÁ˶à´Î¡£" #: read.c:1988 #, c-format msgid "warning: overriding commands for target `%s'" msgstr "¾¯¸æ£º¸²¸Ç¹ØÓÚÄ¿±ê¡°%s¡±µÄÃüÁî" #: read.c:1991 #, c-format msgid "warning: ignoring old commands for target `%s'" msgstr "¾¯¸æ£ººöÂÔ¹ØÓÚÄ¿±ê¡°%s¡±µÄ¾ÉÃüÁî" #: read.c:2575 msgid "warning: NUL character seen; rest of line ignored" msgstr "¾¯¸æ£ºÓöµ½ÁË NUL ×Ö·û£»ºöÂÔÐеÄÊ£Óಿ·Ö" #: remake.c:229 #, c-format msgid "Nothing to be done for `%s'." msgstr "" #: remake.c:230 #, c-format msgid "`%s' is up to date." msgstr "¡°%s¡±ÊÇ×îеġ£" #: remake.c:297 #, c-format msgid "Pruning file `%s'.\n" msgstr "ÕýÔÚɾ³ýÎļþ¡°%s¡±¡£\n" #: remake.c:349 #, c-format msgid "%sNo rule to make target `%s'%s" msgstr "%sûÓйæÔò¿ÉÒÔ´´½¨Ä¿±ê¡°%s¡±%s" #: remake.c:351 #, c-format msgid "%sNo rule to make target `%s', needed by `%s'%s" msgstr "%1$sûÓйæÔò¿ÉÒÔ´´½¨¡°%3$s¡±%4$sÐèÒªµÄÄ¿±ê¡°%2$s¡±" #: remake.c:378 #, c-format msgid "Considering target file `%s'.\n" msgstr "ÕýÔÚ¿¼ÂÇÄ¿±êÎļþ¡°%s¡±¡£\n" #: remake.c:385 #, c-format msgid "Recently tried and failed to update file `%s'.\n" msgstr "×î½üÒѳ¢ÊÔ¹ý¸üÐÂÎļþ¡°%s¡±²¢Ê§°Ü¡£\n" #: remake.c:400 #, c-format msgid "File `%s' was considered already.\n" msgstr "ÒÑ¿¼ÂǹýÎļþ¡°%s¡±¡£\n" #: remake.c:410 #, c-format msgid "Still updating file `%s'.\n" msgstr "ÈÔÈ»ÔÚ¸üÐÂÎļþ¡°%s¡±¡£\n" #: remake.c:413 #, c-format msgid "Finished updating file `%s'.\n" msgstr "¸üÐÂÎļþ¡°%s¡±Íê³É¡£\n" #: remake.c:434 #, c-format msgid "File `%s' does not exist.\n" msgstr "Îļþ¡°%s¡±²»´æÔÚ¡£\n" #: remake.c:441 #, c-format msgid "" "*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp" msgstr "" #: remake.c:454 remake.c:962 #, c-format msgid "Found an implicit rule for `%s'.\n" msgstr "ÕÒµ½Ò»Ìõ¹ØÓÚ¡°%s¡±µÄÒþº¬¹æÔò¡£\n" #: remake.c:456 remake.c:964 #, c-format msgid "No implicit rule found for `%s'.\n" msgstr "ÕÒ²»µ½¹ØÓÚ¡°%s¡±µÄÒþº¬¹æÔò¡£\n" #: remake.c:462 remake.c:970 #, c-format msgid "Using default commands for `%s'.\n" msgstr "ʹÓùØÓÚ¡°%s¡±µÄĬÈÏÃüÁî¡£\n" #: remake.c:484 remake.c:996 #, c-format msgid "Circular %s <- %s dependency dropped." msgstr "·ÅÆúÑ­»·ÒÀÀµ %s <- %s ¡£" #: remake.c:601 #, c-format msgid "Finished prerequisites of target file `%s'.\n" msgstr "Ä¿±êÎļþ¡°%s¡±µÄǰÌáÒÑÍê³É¡£\n" #: remake.c:607 #, c-format msgid "The prerequisites of `%s' are being made.\n" msgstr "ÕýÔÚ´´½¨¡°%s¡±µÄǰÌá¡£\n" #: remake.c:620 #, c-format msgid "Giving up on target file `%s'.\n" msgstr "·ÅÆúÄ¿±êÎļþ¡°%s¡±¡£\n" #: remake.c:625 #, c-format msgid "Target `%s' not remade because of errors." msgstr "ÓÉÓÚ´íÎóÄ¿±ê¡°%s¡±²¢Î´ÖØÐ´´½¨¡£" #: remake.c:677 #, fuzzy, c-format msgid "Prerequisite `%s' is order-only for target `%s'.\n" msgstr "ǰÌá¡°%s¡±±ÈÄ¿±ê¡°%s¡±¾É¡£\n" #: remake.c:682 #, c-format msgid "Prerequisite `%s' of target `%s' does not exist.\n" msgstr "Ä¿±ê¡°%2$s¡±µÄǰÌá¡°%1$s¡±²»´æÔÚ¡£\n" #: remake.c:687 #, c-format msgid "Prerequisite `%s' is newer than target `%s'.\n" msgstr "ǰÌá¡°%s¡±±ÈÄ¿±ê¡°%s¡±Ð¡£\n" #: remake.c:690 #, c-format msgid "Prerequisite `%s' is older than target `%s'.\n" msgstr "ǰÌá¡°%s¡±±ÈÄ¿±ê¡°%s¡±¾É¡£\n" #: remake.c:708 #, c-format msgid "Target `%s' is double-colon and has no prerequisites.\n" msgstr "Ä¿±ê¡°%s¡±ÊÇ˫ðºÅÄ¿±ê²¢ÇÒûÓÐǰÌá¡£\n" #: remake.c:715 #, c-format msgid "No commands for `%s' and no prerequisites actually changed.\n" msgstr "ûÓйØÓÚ¡°%s¡±µÄÃüÁ²¢ÇÒʵ¼ÊÉϸıäÁ˵ÄǰÌá¡£\n" #: remake.c:720 #, c-format msgid "Making `%s' due to always-make flag.\n" msgstr "" #: remake.c:728 #, c-format msgid "No need to remake target `%s'" msgstr "²»ÐèÒªÖØÐ´´½¨Ä¿±ê¡°%s¡±" #: remake.c:730 #, c-format msgid "; using VPATH name `%s'" msgstr "£»Ê¹Óà VPATH Ãû³Æ¡°%s¡±" #: remake.c:750 #, c-format msgid "Must remake target `%s'.\n" msgstr "±ØÐëÖØÐ´´½¨Ä¿±ê¡°%s¡±¡£\n" #: remake.c:756 #, c-format msgid " Ignoring VPATH name `%s'.\n" msgstr " ºöÂÔ VPATH Ãû³Æ `%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 "ÖØÐ´´½¨Ä¿±êÎļþ¡°%s¡±Ê§°Ü¡£\n" #: remake.c:775 #, c-format msgid "Successfully remade target file `%s'.\n" msgstr "ÖØÐ´´½¨Ä¿±êÎļþ¡°%s¡±³É¹¦¡£\n" #: remake.c:778 #, c-format msgid "Target file `%s' needs remade under -q.\n" msgstr "Ä¿±êÎļþ¡°%s¡±ÐèÒªÒÔ -q Ñ¡ÏîÖØÐ´´½¨¡£\n" #: remake.c:1306 #, fuzzy, c-format msgid "Warning: File `%s' has modification time in the future" msgstr "*** ¾¯¸æ£ºÎļþ¡°%s¡±µÄÐÞ¸Äʱ¼äÔÚ½«À´ (%s > %s)" #: remake.c:1313 #, fuzzy, c-format msgid "Warning: File `%s' has modification time %.2g s in the future" msgstr "*** ¾¯¸æ£ºÎļþ¡°%s¡±µÄÐÞ¸Äʱ¼äÔÚ½«À´ (%s > %s)" #: remake.c:1511 #, c-format msgid ".LIBPATTERNS element `%s' is not a pattern" msgstr ".LIBPATTERNS µÄÔªËØ¡°%s¡±²»ÊÇÒ»¸öģʽ" #: remote-cstms.c:125 #, c-format msgid "Customs won't export: %s\n" msgstr "Óû§²»Ï£Íûµ¼³ö£º%s\n" #: rule.c:548 #, fuzzy msgid "" "\n" "# Implicit Rules" msgstr "" "\n" "# ûÓÐÒþº¬¹æÔò¡£" #: rule.c:563 msgid "" "\n" "# No implicit rules." msgstr "" "\n" "# ûÓÐÒþº¬¹æÔò¡£" #: rule.c:566 #, c-format msgid "" "\n" "# %u implicit rules, %u" msgstr "" "\n" "# %u ÌõÒþº¬¹æÔò£¬%u" #: rule.c:575 msgid " terminal." msgstr " ÖÕ¶Ë¡£" #: rule.c:583 #, c-format msgid "BUG: num_pattern_rules wrong! %u != %u" msgstr "´íÎó£ºnum_pattern_rules ³ö´í£¡%u != %u" #: signame.c:85 msgid "unknown signal" msgstr "δ֪µÄÐźÅ" #: signame.c:93 msgid "Hangup" msgstr "¹ÒÆð" #: signame.c:96 msgid "Interrupt" msgstr "ÖжÏ" #: signame.c:99 msgid "Quit" msgstr "Í˳ö" #: signame.c:102 msgid "Illegal Instruction" msgstr "·Ç·¨Ö¸Áî" #: signame.c:105 msgid "Trace/breakpoint trap" msgstr "¸ú×Ù/¶ÏµãÏÝÚå" #: signame.c:110 msgid "Aborted" msgstr "ÒÑʧ°Ü" #: signame.c:113 msgid "IOT trap" msgstr "IOT ÏÝÚå" #: signame.c:116 msgid "EMT trap" msgstr "EMT ÏÝÚå" #: signame.c:119 msgid "Floating point exception" msgstr "¸¡µãÊýÒì³£" #: signame.c:122 msgid "Killed" msgstr "ÒÑɱËÀ" #: signame.c:125 msgid "Bus error" msgstr "×ÜÏß´íÎó" #: signame.c:128 msgid "Segmentation fault" msgstr "¶Î´íÎó" #: signame.c:131 msgid "Bad system call" msgstr "´íÎóµÄϵͳµ÷ÓÃ" #: signame.c:134 msgid "Broken pipe" msgstr "¶Ï¿ªµÄ¹ÜµÀ" #: signame.c:137 msgid "Alarm clock" msgstr "ÄÖÖÓ" #: signame.c:140 msgid "Terminated" msgstr "ÒÑÖÕÖ¹" #: signame.c:143 msgid "User defined signal 1" msgstr "Óû§¶¨ÒåÐźŠ1" #: signame.c:146 msgid "User defined signal 2" msgstr "Óû§¶¨ÒåÐźŠ2" #: signame.c:151 signame.c:154 msgid "Child exited" msgstr "×Ó½ø³ÌÒÑÍ˳ö" #: signame.c:157 msgid "Power failure" msgstr "µçԴʧЧ" #: signame.c:160 msgid "Stopped" msgstr "ÒÑÍ£Ö¹" #: signame.c:163 msgid "Stopped (tty input)" msgstr "ÒÑÍ£Ö¹ (tty ÊäÈë)" #: signame.c:166 msgid "Stopped (tty output)" msgstr "ÒÑÍ£Ö¹ (tty Êä³ö)" #: signame.c:169 msgid "Stopped (signal)" msgstr "ÒÑÍ£Ö¹ (ÐźÅ)" #: signame.c:172 msgid "CPU time limit exceeded" msgstr "CPU ʱ¼ä³¬³öÏÞÖÆ" #: signame.c:175 msgid "File size limit exceeded" msgstr "Îļþ´óС³¬³öÏÞÖÆ" #: signame.c:178 msgid "Virtual timer expired" msgstr "ÐéÄâʱÖÓ³¬Ê±" #: signame.c:181 msgid "Profiling timer expired" msgstr "" #: signame.c:187 msgid "Window changed" msgstr "´°¿ÚÒѸıä" #: signame.c:190 msgid "Continued" msgstr "" #: signame.c:193 msgid "Urgent I/O condition" msgstr "" #: signame.c:200 signame.c:209 msgid "I/O possible" msgstr "" #: signame.c:203 msgid "SIGWIND" msgstr "SIGWIND" #: signame.c:206 msgid "SIGPHONE" msgstr "SIGPHONE" #: signame.c:212 msgid "Resource lost" msgstr "×ÊÔ´¶ªÊ§" #: signame.c:215 msgid "Danger signal" msgstr "ΣÏÕÐźÅ" #: signame.c:218 msgid "Information request" msgstr "ÐÅÏ¢ÇëÇó" #: signame.c:221 msgid "Floating point co-processor not available" msgstr "¸¡µãÊýЭ´¦ÀíÆ÷²»¿ÉÓÃ" #: 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 "ĬÈÏ" #: variable.c:1372 msgid "environment" msgstr "»·¾³" #: variable.c:1375 msgid "makefile" msgstr "makefile" #: variable.c:1378 msgid "environment under -e" msgstr "" #: variable.c:1381 msgid "command line" msgstr "ÃüÁîÐÐ" #: variable.c:1384 msgid "`override' directive" msgstr "¡°override¡±Ö¸Áî" #: variable.c:1387 msgid "automatic" msgstr "×Ô¶¯" #: variable.c:1396 #, fuzzy, c-format msgid " (from `%s', line %lu)" msgstr " (´Ó¡°%s¡±£¬ÐÐ %lu)£º\n" #: variable.c:1438 #, fuzzy msgid "# variable set hash-table stats:\n" msgstr "# ¹²ÓÐ %u ¸ö±äÁ¿´æ´¢ÓÚ %u ¸öÔÓ´Õµ¥ÔªÖС£\n" #: variable.c:1449 msgid "" "\n" "# Variables\n" msgstr "" "\n" "# ±äÁ¿\n" #: variable.c:1453 #, fuzzy msgid "" "\n" "# Pattern-specific Variable Values" msgstr "" "\n" "# Pattern-specific ±äÁ¿µÄÖµ" #: variable.c:1467 msgid "" "\n" "# No pattern-specific variable values." msgstr "" "\n" "# ûÓÐ pattern-specific ±äÁ¿µÄÖµ¡£" #: variable.c:1469 #, c-format msgid "" "\n" "# %u pattern-specific variable values" msgstr "" "\n" "# %u ¸ö pattern-specific ±äÁ¿µÄÖµ" #: variable.h:189 #, c-format msgid "warning: undefined variable `%.*s'" msgstr "¾¯¸æ£ºÎ´¶¨ÒåµÄ±äÁ¿¡°%.*s¡±" #: vmsfunctions.c:94 #, c-format msgid "sys$search failed with %d\n" msgstr "sys$search ʧ°Ü²¢·µ»Ø %d\n" #: vmsjobs.c:71 #, c-format msgid "Warning: Empty redirection\n" msgstr "¾¯¸æ£º¿ÕµÄÖØ¶¨Ïò\n" #: vmsjobs.c:175 #, c-format msgid "internal error: `%s' command_state" msgstr "ÄÚ²¿´íÎ󣺡°%s¡± command_state" #: vmsjobs.c:268 #, c-format msgid "-warning, CTRL-Y will leave sub-process(es) around.\n" msgstr "" #: vmsjobs.c:284 #, c-format msgid "-warning, you may have to re-enable CTRL-Y handling from DCL.\n" msgstr "" #: vmsjobs.c:407 #, c-format msgid "BUILTIN [%s][%s]\n" msgstr "" #: vmsjobs.c:418 #, c-format msgid "BUILTIN CD %s\n" msgstr "" #: vmsjobs.c:436 #, c-format msgid "BUILTIN RM %s\n" msgstr "" #: vmsjobs.c:457 #, c-format msgid "Unknown builtin command '%s'\n" msgstr "δ֪µÄÄÚÖÃÃüÁî¡°%s¡±\n" #: vmsjobs.c:479 #, c-format msgid "Error, empty command\n" msgstr "´íÎ󣬿ÕÃüÁî\n" #: vmsjobs.c:491 #, c-format msgid "Redirected input from %s\n" msgstr "À´×Ô %s µÄÖØ¶¨ÏòÊäÈë\n" #: vmsjobs.c:498 #, c-format msgid "Redirected error to %s\n" msgstr "µ½ %s µÄÖØ¶¨Ïò´íÎóÊä³ö\n" #: vmsjobs.c:505 #, c-format msgid "Redirected output to %s\n" msgstr "µ½ %s µÄÖØ¶¨ÏòÊä³ö\n" #: vmsjobs.c:568 #, c-format msgid "Executing %s instead\n" msgstr "Ö´ÐÐ %s ×÷ÎªÌæ´ú\n" #: vmsjobs.c:668 #, c-format msgid "Error spawning, %d\n" msgstr "" #: vpath.c:571 msgid "" "\n" "# VPATH Search Paths\n" msgstr "" "\n" "# VPATH ËÑË÷·¾¶\n" #: vpath.c:588 msgid "# No `vpath' search paths." msgstr "# ûÓС°vpath¡±ËÑË÷·¾¶¡£" #: vpath.c:590 #, c-format msgid "" "\n" "# %u `vpath' search paths.\n" msgstr "" "\n" "# %u ¡°vpath¡±ËÑË÷·¾¶¡£\n" #: vpath.c:593 msgid "" "\n" "# No general (`VPATH' variable) search path." msgstr "" "\n" "# ûÓÐͨÓÃËÑË÷·¾¶(¡°VPATH¡±±äÁ¿)¡£" #: vpath.c:599 msgid "" "\n" "# General (`VPATH' variable) search path:\n" "# " msgstr "" "\n" "# ͨÓÃËÑË÷·¾¶(¡°VPATH¡±±äÁ¿)£º\n" "# " #~ msgid "" #~ "\n" #~ "# No files." #~ msgstr "" #~ "\n" #~ "# ÎÞÎļþ¡£" #~ msgid "" #~ "\n" #~ "# %u files in %u hash buckets.\n" #~ msgstr "" #~ "\n" #~ "# ÓÐ %u ¸öÎļþ´æ´¢ÔÚ %u ¸öÔÓ´Õµ¥ÔªÖС£\n" #~ msgid "# average %.3f files per bucket, max %u files in one bucket.\n" #~ msgstr "# ÿ¸öµ¥ÔªÆ½¾ùº¬ÓÐ %.3f ¸öÎļþ£¬Ò»¸öµ¥Ôª×î¶àº¬ÓÐ %u ¸öÎļþ¡£\n" #~ msgid "Syntax error, still inside '\"'\n" #~ msgstr "Óï·¨´íÎó£¬ÈÔÈ»ÔÚ¡°\"¡±Ö®ÖÐ\n" #~ msgid "Got a SIGCHLD; %u unreaped children.\n" #~ msgstr "ÊÕµ½ SIGCHLD Ðźţ»ÉÐÓÐ %u ¸ö×Ó½ø³Ì´æÔÚ¡£\n" #~ msgid "DIRECTORY" #~ msgstr "DIRECTORY" #~ msgid "Change to DIRECTORY before doing anything" #~ msgstr "ÔÚ×öÈκÎÊÂÖ®Ç°×ªÒÆµ½ DIRECTORY ÖÐ" #~ msgid "FLAGS" #~ msgstr "±êÖ¾" #~ msgid "Suspend process to allow a debugger to attach" #~ msgstr "¹ÒÆð½ø³ÌÒÔ±ãµ÷ÊÔÆ÷½øÐÐÁ¬½Ó" #~ msgid "Environment variables override makefiles" #~ msgstr "»·¾³±äÁ¿¸²¸Ç makefile" #~ msgid "FILE" #~ msgstr "FILE" #~ msgid "Read FILE as a makefile" #~ msgstr "½« FILE ×÷Ϊ makefile ¶ÁÈë" #~ msgid "Search DIRECTORY for included makefiles" #~ msgstr "ÔÚ DIRECTORY ÖÐËÑË÷ÒýÈëµÄ makefile" #~ msgid "Don't start multiple jobs unless load is below N" #~ msgstr "³ý·Ç¸ºÔصÍÓÚ N ·ñÔò¾Í²»Æô¶¯¶à¸öÈÎÎñ" #~ msgid "Don't actually run any commands; just print them" #~ msgstr "²»»áʵ¼ÊÔËÐÐÈκÎÃüÁֻÊÇ´òÓ¡ËüÃÇ" #~ msgid "Consider FILE to be very old and don't remake it" #~ msgstr "½« FILE È϶¨Îª¹ýÓڳ¾ɶø²»ÖØÏÖ´´½¨Ëü" #~ msgid "Don't echo commands" #~ msgstr "²»Òª»ØÏÔÃüÁî" #~ msgid "Turns off -k" #~ msgstr "¹Ø±Õ -k" #~ msgid "Consider FILE to be infinitely new" #~ msgstr "½« FILE ¿´×öÎÞÏÞÐÂ" #~ msgid "Do not specify -j or --jobs if sh.exe is not available." #~ msgstr "Èç¹û sh.exe ²»¿ÉÓ㬾Ͳ»Òª¸ø³ö -j »ò --jobs¡£" #~ msgid "Resetting make for single job mode." #~ msgstr "½« make ÖØÖÃΪµ¥ÈÎÎñģʽ¡£" #~ msgid "Entering" #~ msgstr "ÕýÔÚ½øÈë" #~ msgid "Leaving" #~ msgstr "ÕýÔÚÀ뿪" #~ msgid "no file name for `%sinclude'" #~ msgstr "¡°%sinclude¡± ûÓÐÎļþÃû" #~ msgid "# No variables." #~ msgstr "# ûÓбäÁ¿¡£" #~ msgid "# average of %.1f variables per bucket, max %u in one bucket.\n" #~ msgstr "# ÿ¸öÔÓ´Õµ¥ÔªÆ½¾ù´æ´¢ %.1f ¸ö±äÁ¿£¬Ò»¸öµ¥Ôª×î¶à´æ´¢ %u ¸ö¡£\n" #~ msgid "# average of %d.%d variables per bucket, max %u in one bucket.\n" #~ msgstr "# ÿ¸öÔÓ´Õµ¥ÔªÆ½¾ù´æ´¢ %d.%d ¸ö±äÁ¿£¬Ò»¸öµ¥Ôª×î¶à´æ´¢ %u ¸ö¡£\n" make-dfsg-3.81.orig/read.c0000644000175000017500000026026210416553102015600 0ustar srivastasrivasta/* Reading and parsing of makefiles for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include #include "dep.h" #include "filedef.h" #include "job.h" #include "commands.h" #include "variable.h" #include "rule.h" #include "debug.h" #include "hash.h" #ifndef WINDOWS32 #ifndef _AMIGA #ifndef VMS #include #else struct passwd *getpwnam PARAMS ((char *name)); #endif #endif #endif /* !WINDOWS32 */ /* A 'struct ebuffer' controls the origin of the makefile we are currently eval'ing. */ struct ebuffer { char *buffer; /* Start of the current line in the buffer. */ char *bufnext; /* Start of the next line in the buffer. */ char *bufstart; /* Start of the entire buffer. */ unsigned int size; /* Malloc'd size of buffer. */ FILE *fp; /* File, or NULL if this is an internal buffer. */ struct floc floc; /* Info on the file in fp (if any). */ }; /* Types of "words" that can be read in a makefile. */ enum make_word_type { w_bogus, w_eol, w_static, w_variable, w_colon, w_dcolon, w_semicolon, w_varassign }; /* A `struct conditionals' contains the information describing all the active conditionals in a makefile. The global variable `conditionals' contains the conditionals information for the current makefile. It is initialized from the static structure `toplevel_conditionals' and is later changed to new structures for included makefiles. */ struct conditionals { unsigned int if_cmds; /* Depth of conditional nesting. */ unsigned int allocated; /* Elts allocated in following arrays. */ char *ignoring; /* Are we ignoring or interpreting? 0=interpreting, 1=not yet interpreted, 2=already interpreted */ char *seen_else; /* Have we already seen an `else'? */ }; static struct conditionals toplevel_conditionals; static struct conditionals *conditionals = &toplevel_conditionals; /* Default directories to search for include files in */ static char *default_include_directories[] = { #if defined(WINDOWS32) && !defined(INCLUDEDIR) /* * This completely up to the user when they install MSVC or other packages. * This is defined as a placeholder. */ #define INCLUDEDIR "." #endif INCLUDEDIR, #ifndef _AMIGA "/usr/gnu/include", "/usr/local/include", "/usr/include", #endif 0 }; /* List of directories to search for include files in */ static char **include_directories; /* Maximum length of an element of the above. */ static unsigned int max_incl_len; /* The filename and pointer to line number of the makefile currently being read in. */ const struct floc *reading_file = 0; /* The chain of makefiles read by read_makefile. */ static struct dep *read_makefiles = 0; static int eval_makefile PARAMS ((char *filename, int flags)); static int eval PARAMS ((struct ebuffer *buffer, int flags)); static long readline PARAMS ((struct ebuffer *ebuf)); static void do_define PARAMS ((char *name, unsigned int namelen, enum variable_origin origin, struct ebuffer *ebuf)); static int conditional_line PARAMS ((char *line, int len, const struct floc *flocp)); static void record_files PARAMS ((struct nameseq *filenames, char *pattern, char *pattern_percent, struct dep *deps, unsigned int cmds_started, char *commands, unsigned int commands_idx, int two_colon, const struct floc *flocp)); static void record_target_var PARAMS ((struct nameseq *filenames, char *defn, enum variable_origin origin, int enabled, const struct floc *flocp)); static enum make_word_type get_next_mword PARAMS ((char *buffer, char *delim, char **startp, unsigned int *length)); static void remove_comments PARAMS ((char *line)); static char *find_char_unquote PARAMS ((char *string, int stop1, int stop2, int blank, int ignorevars)); /* Read in all the makefiles and return the chain of their names. */ struct dep * read_all_makefiles (char **makefiles) { unsigned int num_makefiles = 0; /* Create *_LIST variables, to hold the makefiles, targets, and variables we will be reading. */ define_variable ("MAKEFILE_LIST", sizeof ("MAKEFILE_LIST")-1, "", o_file, 0); DB (DB_BASIC, (_("Reading makefiles...\n"))); /* If there's a non-null variable MAKEFILES, its value is a list of files to read first thing. But don't let it prevent reading the default makefiles and don't let the default goal come from there. */ { char *value; char *name, *p; unsigned int length; { /* Turn off --warn-undefined-variables while we expand MAKEFILES. */ int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; value = allocated_variable_expand ("$(MAKEFILES)"); warn_undefined_variables_flag = save; } /* Set NAME to the start of next token and LENGTH to its length. MAKEFILES is updated for finding remaining tokens. */ p = value; while ((name = find_next_token (&p, &length)) != 0) { if (*p != '\0') *p++ = '\0'; eval_makefile (name, RM_NO_DEFAULT_GOAL|RM_INCLUDED|RM_DONTCARE); } free (value); } /* Read makefiles specified with -f switches. */ if (makefiles != 0) while (*makefiles != 0) { struct dep *tail = read_makefiles; register struct dep *d; if (! eval_makefile (*makefiles, 0)) perror_with_name ("", *makefiles); /* Find the right element of read_makefiles. */ d = read_makefiles; while (d->next != tail) d = d->next; /* Use the storage read_makefile allocates. */ *makefiles = dep_name (d); ++num_makefiles; ++makefiles; } /* If there were no -f switches, try the default names. */ if (num_makefiles == 0) { static char *default_makefiles[] = #ifdef VMS /* all lower case since readdir() (the vms version) 'lowercasifies' */ { "makefile.vms", "gnumakefile.", "makefile.", 0 }; #else #ifdef _AMIGA { "GNUmakefile", "Makefile", "SMakefile", 0 }; #else /* !Amiga && !VMS */ { "GNUmakefile", "makefile", "Makefile", 0 }; #endif /* AMIGA */ #endif /* VMS */ register char **p = default_makefiles; while (*p != 0 && !file_exists_p (*p)) ++p; if (*p != 0) { if (! eval_makefile (*p, 0)) perror_with_name ("", *p); } else { /* No default makefile was found. Add the default makefiles to the `read_makefiles' chain so they will be updated if possible. */ struct dep *tail = read_makefiles; /* Add them to the tail, after any MAKEFILES variable makefiles. */ while (tail != 0 && tail->next != 0) tail = tail->next; for (p = default_makefiles; *p != 0; ++p) { struct dep *d = alloc_dep (); d->file = enter_file (*p); d->file->dontcare = 1; /* Tell update_goal_chain to bail out as soon as this file is made, and main not to die if we can't make this file. */ d->changed = RM_DONTCARE; if (tail == 0) read_makefiles = d; else tail->next = d; tail = d; } if (tail != 0) tail->next = 0; } } return read_makefiles; } /* Install a new conditional and return the previous one. */ static struct conditionals * install_conditionals (struct conditionals *new) { struct conditionals *save = conditionals; bzero ((char *) new, sizeof (*new)); conditionals = new; return save; } /* Free the current conditionals and reinstate a saved one. */ static void restore_conditionals (struct conditionals *saved) { /* Free any space allocated by conditional_line. */ if (conditionals->ignoring) free (conditionals->ignoring); if (conditionals->seen_else) free (conditionals->seen_else); /* Restore state. */ conditionals = saved; } static int eval_makefile (char *filename, int flags) { struct dep *deps; struct ebuffer ebuf; const struct floc *curfile; char *expanded = 0; char *included = 0; int makefile_errno; int r; ebuf.floc.filenm = strcache_add (filename); ebuf.floc.lineno = 1; if (ISDB (DB_VERBOSE)) { printf (_("Reading makefile `%s'"), filename); if (flags & RM_NO_DEFAULT_GOAL) printf (_(" (no default goal)")); if (flags & RM_INCLUDED) printf (_(" (search path)")); if (flags & RM_DONTCARE) printf (_(" (don't care)")); if (flags & RM_NO_TILDE) printf (_(" (no ~ expansion)")); puts ("..."); } /* First, get a stream to read. */ /* Expand ~ in FILENAME unless it came from `include', in which case it was already done. */ if (!(flags & RM_NO_TILDE) && filename[0] == '~') { expanded = tilde_expand (filename); if (expanded != 0) filename = expanded; } ebuf.fp = fopen (filename, "r"); /* Save the error code so we print the right message later. */ makefile_errno = errno; /* If the makefile wasn't found and it's either a makefile from the `MAKEFILES' variable or an included makefile, search the included makefile search path for this makefile. */ if (ebuf.fp == 0 && (flags & RM_INCLUDED) && *filename != '/') { register unsigned int i; for (i = 0; include_directories[i] != 0; ++i) { included = concat (include_directories[i], "/", filename); ebuf.fp = fopen (included, "r"); if (ebuf.fp) { filename = included; break; } free (included); } /* If we're not using it, we already freed it above. */ if (filename != included) included = 0; } /* Add FILENAME to the chain of read makefiles. */ deps = alloc_dep (); deps->next = read_makefiles; read_makefiles = deps; deps->file = lookup_file (filename); if (deps->file == 0) deps->file = enter_file (xstrdup (filename)); filename = deps->file->name; deps->changed = flags; if (flags & RM_DONTCARE) deps->file->dontcare = 1; if (expanded) free (expanded); if (included) free (included); /* If the makefile can't be found at all, give up entirely. */ if (ebuf.fp == 0) { /* If we did some searching, errno has the error from the last attempt, rather from FILENAME itself. Restore it in case the caller wants to use it in a message. */ errno = makefile_errno; return 0; } /* Add this makefile to the list. */ do_variable_definition (&ebuf.floc, "MAKEFILE_LIST", filename, o_file, f_append, 0); /* Evaluate the makefile */ ebuf.size = 200; ebuf.buffer = ebuf.bufnext = ebuf.bufstart = xmalloc (ebuf.size); curfile = reading_file; reading_file = &ebuf.floc; r = eval (&ebuf, !(flags & RM_NO_DEFAULT_GOAL)); reading_file = curfile; fclose (ebuf.fp); free (ebuf.bufstart); alloca (0); return r; } int eval_buffer (char *buffer) { struct ebuffer ebuf; struct conditionals *saved; struct conditionals new; const struct floc *curfile; int r; /* Evaluate the buffer */ ebuf.size = strlen (buffer); ebuf.buffer = ebuf.bufnext = ebuf.bufstart = buffer; ebuf.fp = NULL; ebuf.floc = *reading_file; curfile = reading_file; reading_file = &ebuf.floc; saved = install_conditionals (&new); r = eval (&ebuf, 1); restore_conditionals (saved); reading_file = curfile; alloca (0); return r; } /* Read file FILENAME as a makefile and add its contents to the data base. SET_DEFAULT is true if we are allowed to set the default goal. */ static int eval (struct ebuffer *ebuf, int set_default) { char *collapsed = 0; unsigned int collapsed_length = 0; unsigned int commands_len = 200; char *commands; unsigned int commands_idx = 0; unsigned int cmds_started, tgts_started; int ignoring = 0, in_ignored_define = 0; int no_targets = 0; /* Set when reading a rule without targets. */ struct nameseq *filenames = 0; struct dep *deps = 0; long nlines = 0; int two_colon = 0; char *pattern = 0, *pattern_percent; struct floc *fstart; struct floc fi; #define record_waiting_files() \ do \ { \ if (filenames != 0) \ { \ fi.lineno = tgts_started; \ record_files (filenames, pattern, pattern_percent, deps, \ cmds_started, commands, commands_idx, two_colon, \ &fi); \ } \ filenames = 0; \ commands_idx = 0; \ no_targets = 0; \ if (pattern) { free(pattern); pattern = 0; } \ } while (0) pattern_percent = 0; cmds_started = tgts_started = 1; fstart = &ebuf->floc; fi.filenm = ebuf->floc.filenm; /* Loop over lines in the file. The strategy is to accumulate target names in FILENAMES, dependencies in DEPS and commands in COMMANDS. These are used to define a rule when the start of the next rule (or eof) is encountered. When you see a "continue" in the loop below, that means we are moving on to the next line _without_ ending any rule that we happen to be working with at the moment. If you see a "goto rule_complete", then the statement we just parsed also finishes the previous rule. */ commands = xmalloc (200); while (1) { unsigned int linelen; char *line; int len; char *p; char *p2; /* Grab the next line to be evaluated */ ebuf->floc.lineno += nlines; nlines = readline (ebuf); /* If there is nothing left to eval, we're done. */ if (nlines < 0) break; /* If this line is empty, skip it. */ line = ebuf->buffer; if (line[0] == '\0') continue; linelen = strlen (line); /* Check for a shell command line first. If it is not one, we can stop treating tab specially. */ if (line[0] == '\t') { if (no_targets) /* Ignore the commands in a rule with no targets. */ continue; /* If there is no preceding rule line, don't treat this line as a command, even though it begins with a tab character. SunOS 4 make appears to behave this way. */ if (filenames != 0) { if (ignoring) /* Yep, this is a shell command, and we don't care. */ continue; /* Append this command line to the line being accumulated. */ if (commands_idx == 0) cmds_started = ebuf->floc.lineno; if (linelen + 1 + commands_idx > commands_len) { commands_len = (linelen + 1 + commands_idx) * 2; commands = xrealloc (commands, commands_len); } bcopy (line, &commands[commands_idx], linelen); commands_idx += linelen; commands[commands_idx++] = '\n'; continue; } } /* This line is not a shell command line. Don't worry about tabs. Get more space if we need it; we don't need to preserve the current contents of the buffer. */ if (collapsed_length < linelen+1) { collapsed_length = linelen+1; if (collapsed) free ((char *)collapsed); collapsed = (char *) xmalloc (collapsed_length); } strcpy (collapsed, line); /* Collapse continuation lines. */ collapse_continuations (collapsed); remove_comments (collapsed); /* Compare a word, both length and contents. */ #define word1eq(s) (len == sizeof(s)-1 && strneq (s, p, sizeof(s)-1)) p = collapsed; while (isspace ((unsigned char)*p)) ++p; if (*p == '\0') /* This line is completely empty--ignore it. */ continue; /* Find the end of the first token. Note we don't need to worry about * ":" here since we compare tokens by length (so "export" will never * be equal to "export:"). */ for (p2 = p+1; *p2 != '\0' && !isspace ((unsigned char)*p2); ++p2) ; len = p2 - p; /* Find the start of the second token. If it looks like a target or variable definition it can't be a preprocessor token so skip them--this allows variables/targets named `ifdef', `export', etc. */ while (isspace ((unsigned char)*p2)) ++p2; if ((p2[0] == ':' || p2[0] == '+' || p2[0] == '=') && p2[1] == '\0') { /* It can't be a preprocessor token so skip it if we're ignoring */ if (ignoring) continue; goto skip_conditionals; } /* We must first check for conditional and `define' directives before ignoring anything, since they control what we will do with following lines. */ if (!in_ignored_define) { int i = conditional_line (p, len, fstart); if (i != -2) { if (i == -1) fatal (fstart, _("invalid syntax in conditional")); ignoring = i; continue; } } if (word1eq ("endef")) { if (!in_ignored_define) fatal (fstart, _("extraneous `endef'")); in_ignored_define = 0; continue; } if (word1eq ("define")) { if (ignoring) in_ignored_define = 1; else { if (*p2 == '\0') fatal (fstart, _("empty variable name")); /* Let the variable name be the whole rest of the line, with trailing blanks stripped (comments have already been removed), so it could be a complex variable/function reference that might contain blanks. */ p = strchr (p2, '\0'); while (isblank ((unsigned char)p[-1])) --p; do_define (p2, p - p2, o_file, ebuf); } continue; } if (word1eq ("override")) { if (*p2 == '\0') error (fstart, _("empty `override' directive")); if (strneq (p2, "define", 6) && (isblank ((unsigned char)p2[6]) || p2[6] == '\0')) { if (ignoring) in_ignored_define = 1; else { p2 = next_token (p2 + 6); if (*p2 == '\0') fatal (fstart, _("empty variable name")); /* Let the variable name be the whole rest of the line, with trailing blanks stripped (comments have already been removed), so it could be a complex variable/function reference that might contain blanks. */ p = strchr (p2, '\0'); while (isblank ((unsigned char)p[-1])) --p; do_define (p2, p - p2, o_override, ebuf); } } else if (!ignoring && !try_variable_definition (fstart, p2, o_override, 0)) error (fstart, _("invalid `override' directive")); continue; } if (ignoring) /* Ignore the line. We continue here so conditionals can appear in the middle of a rule. */ continue; if (word1eq ("export")) { /* 'export' by itself causes everything to be exported. */ if (*p2 == '\0') export_all_variables = 1; else { struct variable *v; v = try_variable_definition (fstart, p2, o_file, 0); if (v != 0) v->export = v_export; else { unsigned int len; char *ap; /* Expand the line so we can use indirect and constructed variable names in an export command. */ p2 = ap = allocated_variable_expand (p2); for (p = find_next_token (&p2, &len); p != 0; p = find_next_token (&p2, &len)) { v = lookup_variable (p, len); if (v == 0) v = define_variable_loc (p, len, "", o_file, 0, fstart); v->export = v_export; } free (ap); } } goto rule_complete; } if (word1eq ("unexport")) { if (*p2 == '\0') export_all_variables = 0; else { unsigned int len; struct variable *v; char *ap; /* Expand the line so we can use indirect and constructed variable names in an unexport command. */ p2 = ap = allocated_variable_expand (p2); for (p = find_next_token (&p2, &len); p != 0; p = find_next_token (&p2, &len)) { v = lookup_variable (p, len); if (v == 0) v = define_variable_loc (p, len, "", o_file, 0, fstart); v->export = v_noexport; } free (ap); } goto rule_complete; } skip_conditionals: if (word1eq ("vpath")) { char *pattern; unsigned int len; p2 = variable_expand (p2); p = find_next_token (&p2, &len); if (p != 0) { pattern = savestring (p, len); p = find_next_token (&p2, &len); /* No searchpath means remove all previous selective VPATH's with the same pattern. */ } else /* No pattern means remove all previous selective VPATH's. */ pattern = 0; construct_vpath_list (pattern, p); if (pattern != 0) free (pattern); goto rule_complete; } if (word1eq ("include") || word1eq ("-include") || word1eq ("sinclude")) { /* We have found an `include' line specifying a nested makefile to be read at this point. */ struct conditionals *save; struct conditionals new_conditionals; struct nameseq *files; /* "-include" (vs "include") says no error if the file does not exist. "sinclude" is an alias for this from SGI. */ int noerror = (p[0] != 'i'); p = allocated_variable_expand (p2); /* If no filenames, it's a no-op. */ if (*p == '\0') { free (p); continue; } /* Parse the list of file names. */ p2 = p; files = multi_glob (parse_file_seq (&p2, '\0', sizeof (struct nameseq), 1), sizeof (struct nameseq)); free (p); /* Save the state of conditionals and start the included makefile with a clean slate. */ save = install_conditionals (&new_conditionals); /* Record the rules that are waiting so they will determine the default goal before those in the included makefile. */ record_waiting_files (); /* Read each included makefile. */ while (files != 0) { struct nameseq *next = files->next; char *name = files->name; int r; free ((char *)files); files = next; r = eval_makefile (name, (RM_INCLUDED | RM_NO_TILDE | (noerror ? RM_DONTCARE : 0))); if (!r && !noerror) error (fstart, "%s: %s", name, strerror (errno)); free (name); } /* Restore conditional state. */ restore_conditionals (save); goto rule_complete; } if (try_variable_definition (fstart, p, o_file, 0)) /* This line has been dealt with. */ goto rule_complete; /* This line starts with a tab but was not caught above because there was no preceding target, and the line might have been usable as a variable definition. But now we know it is definitely lossage. */ if (line[0] == '\t') fatal(fstart, _("commands commence before first target")); /* This line describes some target files. This is complicated by the existence of target-specific variables, because we can't expand the entire line until we know if we have one or not. So we expand the line word by word until we find the first `:', then check to see if it's a target-specific variable. In this algorithm, `lb_next' will point to the beginning of the unexpanded parts of the input buffer, while `p2' points to the parts of the expanded buffer we haven't searched yet. */ { enum make_word_type wtype; enum variable_origin v_origin; int exported; char *cmdleft, *semip, *lb_next; unsigned int len, plen = 0; char *colonp; const char *end, *beg; /* Helpers for whitespace stripping. */ /* Record the previous rule. */ record_waiting_files (); tgts_started = fstart->lineno; /* Search the line for an unquoted ; that is not after an unquoted #. */ cmdleft = find_char_unquote (line, ';', '#', 0, 1); if (cmdleft != 0 && *cmdleft == '#') { /* We found a comment before a semicolon. */ *cmdleft = '\0'; cmdleft = 0; } else if (cmdleft != 0) /* Found one. Cut the line short there before expanding it. */ *(cmdleft++) = '\0'; semip = cmdleft; collapse_continuations (line); /* We can't expand the entire line, since if it's a per-target variable we don't want to expand it. So, walk from the beginning, expanding as we go, and looking for "interesting" chars. The first word is always expandable. */ wtype = get_next_mword(line, NULL, &lb_next, &len); switch (wtype) { case w_eol: if (cmdleft != 0) fatal(fstart, _("missing rule before commands")); /* This line contained something but turned out to be nothing but whitespace (a comment?). */ continue; case w_colon: case w_dcolon: /* We accept and ignore rules without targets for compatibility with SunOS 4 make. */ no_targets = 1; continue; default: break; } p2 = variable_expand_string(NULL, lb_next, len); while (1) { lb_next += len; if (cmdleft == 0) { /* Look for a semicolon in the expanded line. */ cmdleft = find_char_unquote (p2, ';', 0, 0, 0); if (cmdleft != 0) { unsigned long p2_off = p2 - variable_buffer; unsigned long cmd_off = cmdleft - variable_buffer; char *pend = p2 + strlen(p2); /* Append any remnants of lb, then cut the line short at the semicolon. */ *cmdleft = '\0'; /* One school of thought says that you shouldn't expand here, but merely copy, since now you're beyond a ";" and into a command script. However, the old parser expanded the whole line, so we continue that for backwards-compatiblity. Also, it wouldn't be entirely consistent, since we do an unconditional expand below once we know we don't have a target-specific variable. */ (void)variable_expand_string(pend, lb_next, (long)-1); lb_next += strlen(lb_next); p2 = variable_buffer + p2_off; cmdleft = variable_buffer + cmd_off + 1; } } colonp = find_char_unquote(p2, ':', 0, 0, 0); #ifdef HAVE_DOS_PATHS /* The drive spec brain-damage strikes again... */ /* Note that the only separators of targets in this context are whitespace and a left paren. If others are possible, they should be added to the string in the call to index. */ while (colonp && (colonp[1] == '/' || colonp[1] == '\\') && colonp > p2 && isalpha ((unsigned char)colonp[-1]) && (colonp == p2 + 1 || strchr (" \t(", colonp[-2]) != 0)) colonp = find_char_unquote(colonp + 1, ':', 0, 0, 0); #endif if (colonp != 0) break; wtype = get_next_mword(lb_next, NULL, &lb_next, &len); if (wtype == w_eol) break; p2 += strlen(p2); *(p2++) = ' '; p2 = variable_expand_string(p2, lb_next, len); /* We don't need to worry about cmdleft here, because if it was found in the variable_buffer the entire buffer has already been expanded... we'll never get here. */ } p2 = next_token (variable_buffer); /* If the word we're looking at is EOL, see if there's _anything_ on the line. If not, a variable expanded to nothing, so ignore it. If so, we can't parse this line so punt. */ if (wtype == w_eol) { if (*p2 != '\0') /* There's no need to be ivory-tower about this: check for one of the most common bugs found in makefiles... */ fatal (fstart, _("missing separator%s"), !strneq(line, " ", 8) ? "" : _(" (did you mean TAB instead of 8 spaces?)")); continue; } /* Make the colon the end-of-string so we know where to stop looking for targets. */ *colonp = '\0'; filenames = multi_glob (parse_file_seq (&p2, '\0', sizeof (struct nameseq), 1), sizeof (struct nameseq)); *p2 = ':'; if (!filenames) { /* We accept and ignore rules without targets for compatibility with SunOS 4 make. */ no_targets = 1; continue; } /* This should never be possible; we handled it above. */ assert (*p2 != '\0'); ++p2; /* Is this a one-colon or two-colon entry? */ two_colon = *p2 == ':'; if (two_colon) p2++; /* Test to see if it's a target-specific variable. Copy the rest of the buffer over, possibly temporarily (we'll expand it later if it's not a target-specific variable). PLEN saves the length of the unparsed section of p2, for later. */ if (*lb_next != '\0') { unsigned int l = p2 - variable_buffer; plen = strlen (p2); (void) variable_buffer_output (p2+plen, lb_next, strlen (lb_next)+1); p2 = variable_buffer + l; } /* See if it's an "override" or "export" keyword; if so see if what comes after it looks like a variable definition. */ wtype = get_next_mword (p2, NULL, &p, &len); v_origin = o_file; exported = 0; if (wtype == w_static) { if (word1eq ("override")) { v_origin = o_override; wtype = get_next_mword (p+len, NULL, &p, &len); } else if (word1eq ("export")) { exported = 1; wtype = get_next_mword (p+len, NULL, &p, &len); } } if (wtype != w_eol) wtype = get_next_mword (p+len, NULL, NULL, NULL); if (wtype == w_varassign) { /* If there was a semicolon found, add it back, plus anything after it. */ if (semip) { unsigned int l = p - variable_buffer; *(--semip) = ';'; variable_buffer_output (p2 + strlen (p2), semip, strlen (semip)+1); p = variable_buffer + l; } record_target_var (filenames, p, v_origin, exported, fstart); filenames = 0; continue; } /* This is a normal target, _not_ a target-specific variable. Unquote any = in the dependency list. */ find_char_unquote (lb_next, '=', 0, 0, 0); /* We have some targets, so don't ignore the following commands. */ no_targets = 0; /* Expand the dependencies, etc. */ if (*lb_next != '\0') { unsigned int l = p2 - variable_buffer; (void) variable_expand_string (p2 + plen, lb_next, (long)-1); p2 = variable_buffer + l; /* Look for a semicolon in the expanded line. */ if (cmdleft == 0) { cmdleft = find_char_unquote (p2, ';', 0, 0, 0); if (cmdleft != 0) *(cmdleft++) = '\0'; } } /* Is this a static pattern rule: `target: %targ: %dep; ...'? */ p = strchr (p2, ':'); while (p != 0 && p[-1] == '\\') { register char *q = &p[-1]; register int backslash = 0; while (*q-- == '\\') backslash = !backslash; if (backslash) p = strchr (p + 1, ':'); else break; } #ifdef _AMIGA /* Here, the situation is quite complicated. Let's have a look at a couple of targets: install: dev:make dev:make: make dev:make:: xyz The rule is that it's only a target, if there are TWO :'s OR a space around the :. */ if (p && !(isspace ((unsigned char)p[1]) || !p[1] || isspace ((unsigned char)p[-1]))) p = 0; #endif #ifdef HAVE_DOS_PATHS { int check_again; do { check_again = 0; /* For DOS-style paths, skip a "C:\..." or a "C:/..." */ if (p != 0 && (p[1] == '\\' || p[1] == '/') && isalpha ((unsigned char)p[-1]) && (p == p2 + 1 || strchr (" \t:(", p[-2]) != 0)) { p = strchr (p + 1, ':'); check_again = 1; } } while (check_again); } #endif if (p != 0) { struct nameseq *target; target = parse_file_seq (&p2, ':', sizeof (struct nameseq), 1); ++p2; if (target == 0) fatal (fstart, _("missing target pattern")); else if (target->next != 0) fatal (fstart, _("multiple target patterns")); pattern = target->name; pattern_percent = find_percent (pattern); if (pattern_percent == 0) fatal (fstart, _("target pattern contains no `%%'")); free ((char *)target); } else pattern = 0; /* Strip leading and trailing whitespaces. */ beg = p2; end = beg + strlen (beg) - 1; strip_whitespace (&beg, &end); if (beg <= end && *beg != '\0') { /* Put all the prerequisites here; they'll be parsed later. */ deps = alloc_dep (); deps->name = savestring (beg, end - beg + 1); } else deps = 0; commands_idx = 0; if (cmdleft != 0) { /* Semicolon means rest of line is a command. */ unsigned int len = strlen (cmdleft); cmds_started = fstart->lineno; /* Add this command line to the buffer. */ if (len + 2 > commands_len) { commands_len = (len + 2) * 2; commands = (char *) xrealloc (commands, commands_len); } bcopy (cmdleft, commands, len); commands_idx += len; commands[commands_idx++] = '\n'; } /* Determine if this target should be made default. We used to do this in record_files() but because of the delayed target recording and because preprocessor directives are legal in target's commands it is too late. Consider this fragment for example: foo: ifeq ($(.DEFAULT_GOAL),foo) ... endif Because the target is not recorded until after ifeq directive is evaluated the .DEFAULT_GOAL does not contain foo yet as one would expect. Because of this we have to move some of the logic here. */ if (**default_goal_name == '\0' && set_default) { char* name; struct dep *d; struct nameseq *t = filenames; for (; t != 0; t = t->next) { int reject = 0; name = t->name; /* We have nothing to do if this is an implicit rule. */ if (strchr (name, '%') != 0) break; /* See if this target's name does not start with a `.', unless it contains a slash. */ if (*name == '.' && strchr (name, '/') == 0 #ifdef HAVE_DOS_PATHS && strchr (name, '\\') == 0 #endif ) continue; /* If this file is a suffix, don't let it be the default goal file. */ for (d = suffix_file->deps; d != 0; d = d->next) { register struct dep *d2; if (*dep_name (d) != '.' && streq (name, dep_name (d))) { reject = 1; break; } for (d2 = suffix_file->deps; d2 != 0; d2 = d2->next) { register unsigned int len = strlen (dep_name (d2)); if (!strneq (name, dep_name (d2), len)) continue; if (streq (name + len, dep_name (d))) { reject = 1; break; } } if (reject) break; } if (!reject) { define_variable_global (".DEFAULT_GOAL", 13, t->name, o_file, 0, NILF); break; } } } continue; } /* We get here except in the case that we just read a rule line. Record now the last rule we read, so following spurious commands are properly diagnosed. */ rule_complete: record_waiting_files (); } #undef word1eq if (conditionals->if_cmds) fatal (fstart, _("missing `endif'")); /* At eof, record the last rule. */ record_waiting_files (); if (collapsed) free ((char *) collapsed); free ((char *) commands); return 1; } /* Remove comments from LINE. This is done by copying the text at LINE onto itself. */ static void remove_comments (char *line) { char *comment; comment = find_char_unquote (line, '#', 0, 0, 0); if (comment != 0) /* Cut off the line at the #. */ *comment = '\0'; } /* Execute a `define' directive. The first line has already been read, and NAME is the name of the variable to be defined. The following lines remain to be read. */ static void do_define (char *name, unsigned int namelen, enum variable_origin origin, struct ebuffer *ebuf) { struct floc defstart; long nlines = 0; int nlevels = 1; unsigned int length = 100; char *definition = (char *) xmalloc (length); unsigned int idx = 0; char *p; /* Expand the variable name. */ char *var = (char *) alloca (namelen + 1); bcopy (name, var, namelen); var[namelen] = '\0'; var = variable_expand (var); defstart = ebuf->floc; while (1) { unsigned int len; char *line; nlines = readline (ebuf); ebuf->floc.lineno += nlines; /* If there is nothing left to eval, we're done. */ if (nlines < 0) break; line = ebuf->buffer; collapse_continuations (line); /* If the line doesn't begin with a tab, test to see if it introduces another define, or ends one. */ /* Stop if we find an 'endef' */ if (line[0] != '\t') { p = next_token (line); len = strlen (p); /* If this is another 'define', increment the level count. */ if ((len == 6 || (len > 6 && isblank ((unsigned char)p[6]))) && strneq (p, "define", 6)) ++nlevels; /* If this is an 'endef', decrement the count. If it's now 0, we've found the last one. */ else if ((len == 5 || (len > 5 && isblank ((unsigned char)p[5]))) && strneq (p, "endef", 5)) { p += 5; remove_comments (p); if (*next_token (p) != '\0') error (&ebuf->floc, _("Extraneous text after `endef' directive")); if (--nlevels == 0) { /* Define the variable. */ if (idx == 0) definition[0] = '\0'; else definition[idx - 1] = '\0'; /* Always define these variables in the global set. */ define_variable_global (var, strlen (var), definition, origin, 1, &defstart); free (definition); return; } } } /* Otherwise add this line to the variable definition. */ len = strlen (line); if (idx + len + 1 > length) { length = (idx + len) * 2; definition = (char *) xrealloc (definition, length + 1); } bcopy (line, &definition[idx], len); idx += len; /* Separate lines with a newline. */ definition[idx++] = '\n'; } /* No `endef'!! */ fatal (&defstart, _("missing `endef', unterminated `define'")); /* NOTREACHED */ return; } /* Interpret conditional commands "ifdef", "ifndef", "ifeq", "ifneq", "else" and "endif". LINE is the input line, with the command as its first word. FILENAME and LINENO are the filename and line number in the current makefile. They are used for error messages. Value is -2 if the line is not a conditional at all, -1 if the line is an invalid conditional, 0 if following text should be interpreted, 1 if following text should be ignored. */ static int conditional_line (char *line, int len, const struct floc *flocp) { char *cmdname; enum { c_ifdef, c_ifndef, c_ifeq, c_ifneq, c_else, c_endif } cmdtype; unsigned int i; unsigned int o; /* Compare a word, both length and contents. */ #define word1eq(s) (len == sizeof(s)-1 && strneq (s, line, sizeof(s)-1)) #define chkword(s, t) if (word1eq (s)) { cmdtype = (t); cmdname = (s); } /* Make sure this line is a conditional. */ chkword ("ifdef", c_ifdef) else chkword ("ifndef", c_ifndef) else chkword ("ifeq", c_ifeq) else chkword ("ifneq", c_ifneq) else chkword ("else", c_else) else chkword ("endif", c_endif) else return -2; /* Found one: skip past it and any whitespace after it. */ line = next_token (line + len); #define EXTRANEOUS() error (flocp, _("Extraneous text after `%s' directive"), cmdname) /* An 'endif' cannot contain extra text, and reduces the if-depth by 1 */ if (cmdtype == c_endif) { if (*line != '\0') EXTRANEOUS (); if (!conditionals->if_cmds) fatal (flocp, _("extraneous `%s'"), cmdname); --conditionals->if_cmds; goto DONE; } /* An 'else' statement can either be simple, or it can have another conditional after it. */ if (cmdtype == c_else) { const char *p; if (!conditionals->if_cmds) fatal (flocp, _("extraneous `%s'"), cmdname); o = conditionals->if_cmds - 1; if (conditionals->seen_else[o]) fatal (flocp, _("only one `else' per conditional")); /* Change the state of ignorance. */ switch (conditionals->ignoring[o]) { case 0: /* We've just been interpreting. Never do it again. */ conditionals->ignoring[o] = 2; break; case 1: /* We've never interpreted yet. Maybe this time! */ conditionals->ignoring[o] = 0; break; } /* It's a simple 'else'. */ if (*line == '\0') { conditionals->seen_else[o] = 1; goto DONE; } /* The 'else' has extra text. That text must be another conditional and cannot be an 'else' or 'endif'. */ /* Find the length of the next word. */ for (p = line+1; *p != '\0' && !isspace ((unsigned char)*p); ++p) ; len = p - line; /* If it's 'else' or 'endif' or an illegal conditional, fail. */ if (word1eq("else") || word1eq("endif") || conditional_line (line, len, flocp) < 0) EXTRANEOUS (); else { /* conditional_line() created a new level of conditional. Raise it back to this level. */ if (conditionals->ignoring[o] < 2) conditionals->ignoring[o] = conditionals->ignoring[o+1]; --conditionals->if_cmds; } goto DONE; } if (conditionals->allocated == 0) { conditionals->allocated = 5; conditionals->ignoring = (char *) xmalloc (conditionals->allocated); conditionals->seen_else = (char *) xmalloc (conditionals->allocated); } o = conditionals->if_cmds++; if (conditionals->if_cmds > conditionals->allocated) { conditionals->allocated += 5; conditionals->ignoring = (char *) xrealloc (conditionals->ignoring, conditionals->allocated); conditionals->seen_else = (char *) xrealloc (conditionals->seen_else, conditionals->allocated); } /* Record that we have seen an `if...' but no `else' so far. */ conditionals->seen_else[o] = 0; /* Search through the stack to see if we're already ignoring. */ for (i = 0; i < o; ++i) if (conditionals->ignoring[i]) { /* We are already ignoring, so just push a level to match the next "else" or "endif", and keep ignoring. We don't want to expand variables in the condition. */ conditionals->ignoring[o] = 1; return 1; } if (cmdtype == c_ifdef || cmdtype == c_ifndef) { char *var; struct variable *v; char *p; /* Expand the thing we're looking up, so we can use indirect and constructed variable names. */ var = allocated_variable_expand (line); /* Make sure there's only one variable name to test. */ p = end_of_token (var); i = p - var; p = next_token (p); if (*p != '\0') return -1; var[i] = '\0'; v = lookup_variable (var, i); conditionals->ignoring[o] = ((v != 0 && *v->value != '\0') == (cmdtype == c_ifndef)); free (var); } else { /* "Ifeq" or "ifneq". */ char *s1, *s2; unsigned int len; char termin = *line == '(' ? ',' : *line; if (termin != ',' && termin != '"' && termin != '\'') return -1; s1 = ++line; /* Find the end of the first string. */ if (termin == ',') { int count = 0; for (; *line != '\0'; ++line) if (*line == '(') ++count; else if (*line == ')') --count; else if (*line == ',' && count <= 0) break; } else while (*line != '\0' && *line != termin) ++line; if (*line == '\0') return -1; if (termin == ',') { /* Strip blanks after the first string. */ char *p = line++; while (isblank ((unsigned char)p[-1])) --p; *p = '\0'; } else *line++ = '\0'; s2 = variable_expand (s1); /* We must allocate a new copy of the expanded string because variable_expand re-uses the same buffer. */ len = strlen (s2); s1 = (char *) alloca (len + 1); bcopy (s2, s1, len + 1); if (termin != ',') /* Find the start of the second string. */ line = next_token (line); termin = termin == ',' ? ')' : *line; if (termin != ')' && termin != '"' && termin != '\'') return -1; /* Find the end of the second string. */ if (termin == ')') { register int count = 0; s2 = next_token (line); for (line = s2; *line != '\0'; ++line) { if (*line == '(') ++count; else if (*line == ')') { if (count <= 0) break; else --count; } } } else { ++line; s2 = line; while (*line != '\0' && *line != termin) ++line; } if (*line == '\0') return -1; *line = '\0'; line = next_token (++line); if (*line != '\0') EXTRANEOUS (); s2 = variable_expand (s2); conditionals->ignoring[o] = (streq (s1, s2) == (cmdtype == c_ifneq)); } DONE: /* Search through the stack to see if we're ignoring. */ for (i = 0; i < conditionals->if_cmds; ++i) if (conditionals->ignoring[i]) return 1; return 0; } /* Remove duplicate dependencies in CHAIN. */ static unsigned long dep_hash_1 (const void *key) { return_STRING_HASH_1 (dep_name ((struct dep const *) key)); } static unsigned long dep_hash_2 (const void *key) { return_STRING_HASH_2 (dep_name ((struct dep const *) key)); } static int dep_hash_cmp (const void *x, const void *y) { struct dep *dx = (struct dep *) x; struct dep *dy = (struct dep *) y; int cmp = strcmp (dep_name (dx), dep_name (dy)); /* If the names are the same but ignore_mtimes are not equal, one of these is an order-only prerequisite and one isn't. That means that we should remove the one that isn't and keep the one that is. */ if (!cmp && dx->ignore_mtime != dy->ignore_mtime) dx->ignore_mtime = dy->ignore_mtime = 0; return cmp; } void uniquize_deps (struct dep *chain) { struct hash_table deps; register struct dep **depp; hash_init (&deps, 500, dep_hash_1, dep_hash_2, dep_hash_cmp); /* Make sure that no dependencies are repeated. This does not really matter for the purpose of updating targets, but it might make some names be listed twice for $^ and $?. */ depp = &chain; while (*depp) { struct dep *dep = *depp; struct dep **dep_slot = (struct dep **) hash_find_slot (&deps, dep); if (HASH_VACANT (*dep_slot)) { hash_insert_at (&deps, dep, dep_slot); depp = &dep->next; } else { /* Don't bother freeing duplicates. It's dangerous and little benefit accrues. */ *depp = dep->next; } } hash_free (&deps, 0); } /* Record target-specific variable values for files FILENAMES. TWO_COLON is nonzero if a double colon was used. The links of FILENAMES are freed, and so are any names in it that are not incorporated into other data structures. If the target is a pattern, add the variable to the pattern-specific variable value list. */ static void record_target_var (struct nameseq *filenames, char *defn, enum variable_origin origin, int exported, const struct floc *flocp) { struct nameseq *nextf; struct variable_set_list *global; global = current_variable_set_list; /* If the variable is an append version, store that but treat it as a normal recursive variable. */ for (; filenames != 0; filenames = nextf) { struct variable *v; register char *name = filenames->name; char *fname; char *percent; struct pattern_var *p; nextf = filenames->next; free ((char *) filenames); /* If it's a pattern target, then add it to the pattern-specific variable list. */ percent = find_percent (name); if (percent) { /* Get a reference for this pattern-specific variable struct. */ p = create_pattern_var (name, percent); p->variable.fileinfo = *flocp; /* I don't think this can fail since we already determined it was a variable definition. */ v = parse_variable_definition (&p->variable, defn); assert (v != 0); if (v->flavor == f_simple) v->value = allocated_variable_expand (v->value); else v->value = xstrdup (v->value); fname = p->target; } else { struct file *f; /* Get a file reference for this file, and initialize it. We don't want to just call enter_file() because that allocates a new entry if the file is a double-colon, which we don't want in this situation. */ f = lookup_file (name); if (!f) f = enter_file (name); else if (f->double_colon) f = f->double_colon; initialize_file_variables (f, 1); fname = f->name; current_variable_set_list = f->variables; v = try_variable_definition (flocp, defn, origin, 1); if (!v) error (flocp, _("Malformed target-specific variable definition")); current_variable_set_list = global; } /* Set up the variable to be *-specific. */ v->origin = origin; v->per_target = 1; v->export = exported ? v_export : v_default; /* If it's not an override, check to see if there was a command-line setting. If so, reset the value. */ if (origin != o_override) { struct variable *gv; int len = strlen(v->name); gv = lookup_variable (v->name, len); if (gv && (gv->origin == o_env_override || gv->origin == o_command)) { if (v->value != 0) free (v->value); v->value = xstrdup (gv->value); v->origin = gv->origin; v->recursive = gv->recursive; v->append = 0; } } /* Free name if not needed further. */ if (name != fname && (name < fname || name > fname + strlen (fname))) free (name); } } /* Record a description line for files FILENAMES, with dependencies DEPS, commands to execute described by COMMANDS and COMMANDS_IDX, coming from FILENAME:COMMANDS_STARTED. TWO_COLON is nonzero if a double colon was used. If not nil, PATTERN is the `%' pattern to make this a static pattern rule, and PATTERN_PERCENT is a pointer to the `%' within it. The links of FILENAMES are freed, and so are any names in it that are not incorporated into other data structures. */ static void record_files (struct nameseq *filenames, char *pattern, char *pattern_percent, struct dep *deps, unsigned int cmds_started, char *commands, unsigned int commands_idx, int two_colon, const struct floc *flocp) { struct nameseq *nextf; int implicit = 0; unsigned int max_targets = 0, target_idx = 0; char **targets = 0, **target_percents = 0; struct commands *cmds; /* If we've already snapped deps, that means we're in an eval being resolved after the makefiles have been read in. We can't add more rules at this time, since they won't get snapped and we'll get core dumps. See Savannah bug # 12124. */ if (snapped_deps) fatal (flocp, _("prerequisites cannot be defined in command scripts")); if (commands_idx > 0) { cmds = (struct commands *) xmalloc (sizeof (struct commands)); cmds->fileinfo.filenm = flocp->filenm; cmds->fileinfo.lineno = cmds_started; cmds->commands = savestring (commands, commands_idx); cmds->command_lines = 0; } else cmds = 0; for (; filenames != 0; filenames = nextf) { char *name = filenames->name; struct file *f; struct dep *this = 0; char *implicit_percent; nextf = filenames->next; free (filenames); /* Check for special targets. Do it here instead of, say, snap_deps() so that we can immediately use the value. */ if (streq (name, ".POSIX")) posix_pedantic = 1; else if (streq (name, ".SECONDEXPANSION")) second_expansion = 1; implicit_percent = find_percent (name); implicit |= implicit_percent != 0; if (implicit && pattern != 0) fatal (flocp, _("mixed implicit and static pattern rules")); if (implicit && implicit_percent == 0) fatal (flocp, _("mixed implicit and normal rules")); if (implicit) { if (targets == 0) { max_targets = 5; targets = (char **) xmalloc (5 * sizeof (char *)); target_percents = (char **) xmalloc (5 * sizeof (char *)); target_idx = 0; } else if (target_idx == max_targets - 1) { max_targets += 5; targets = (char **) xrealloc ((char *) targets, max_targets * sizeof (char *)); target_percents = (char **) xrealloc ((char *) target_percents, max_targets * sizeof (char *)); } targets[target_idx] = name; target_percents[target_idx] = implicit_percent; ++target_idx; continue; } /* If this is a static pattern rule: `targets: target%pattern: dep%pattern; cmds', make sure the pattern matches this target name. */ if (pattern && !pattern_matches (pattern, pattern_percent, name)) error (flocp, _("target `%s' doesn't match the target pattern"), name); else if (deps) { /* If there are multiple filenames, copy the chain DEPS for all but the last one. It is not safe for the same deps to go in more than one place in the database. */ this = nextf != 0 ? copy_dep_chain (deps) : deps; this->need_2nd_expansion = (second_expansion && strchr (this->name, '$')); } if (!two_colon) { /* Single-colon. Combine these dependencies with others in file's existing record, if any. */ f = enter_file (name); if (f->double_colon) fatal (flocp, _("target file `%s' has both : and :: entries"), f->name); /* If CMDS == F->CMDS, this target was listed in this rule more than once. Just give a warning since this is harmless. */ if (cmds != 0 && cmds == f->cmds) error (flocp, _("target `%s' given more than once in the same rule."), f->name); /* Check for two single-colon entries both with commands. Check is_target so that we don't lose on files such as .c.o whose commands were preinitialized. */ else if (cmds != 0 && f->cmds != 0 && f->is_target) { error (&cmds->fileinfo, _("warning: overriding commands for target `%s'"), f->name); error (&f->cmds->fileinfo, _("warning: ignoring old commands for target `%s'"), f->name); } f->is_target = 1; /* Defining .DEFAULT with no deps or cmds clears it. */ if (f == default_file && this == 0 && cmds == 0) f->cmds = 0; if (cmds != 0) f->cmds = cmds; /* Defining .SUFFIXES with no dependencies clears out the list of suffixes. */ if (f == suffix_file && this == 0) { free_dep_chain (f->deps); f->deps = 0; } else if (this != 0) { /* Add the file's old deps and the new ones in THIS together. */ if (f->deps != 0) { struct dep **d_ptr = &f->deps; while ((*d_ptr)->next != 0) d_ptr = &(*d_ptr)->next; if (cmds != 0) /* This is the rule with commands, so put its deps last. The rationale behind this is that $< expands to the first dep in the chain, and commands use $< expecting to get the dep that rule specifies. However the second expansion algorithm reverses the order thus we need to make it last here. */ (*d_ptr)->next = this; else { /* This is the rule without commands. Put its dependencies at the end but before dependencies from the rule with commands (if any). This way everything appears in makefile order. */ if (f->cmds != 0) { this->next = *d_ptr; *d_ptr = this; } else (*d_ptr)->next = this; } } else f->deps = this; /* This is a hack. I need a way to communicate to snap_deps() that the last dependency line in this file came with commands (so that logic in snap_deps() can put it in front and all this $< -logic works). I cannot simply rely on file->cmds being not 0 because of the cases like the following: foo: bar foo: ... I am going to temporarily "borrow" UPDATING member in `struct file' for this. */ if (cmds != 0) f->updating = 1; } } else { /* Double-colon. Make a new record even if there already is one. */ f = lookup_file (name); /* Check for both : and :: rules. Check is_target so we don't lose on default suffix rules or makefiles. */ if (f != 0 && f->is_target && !f->double_colon) fatal (flocp, _("target file `%s' has both : and :: entries"), f->name); f = enter_file (name); /* If there was an existing entry and it was a double-colon entry, enter_file will have returned a new one, making it the prev pointer of the old one, and setting its double_colon pointer to the first one. */ if (f->double_colon == 0) /* This is the first entry for this name, so we must set its double_colon pointer to itself. */ f->double_colon = f; f->is_target = 1; f->deps = this; f->cmds = cmds; } /* If this is a static pattern rule, set the stem to the part of its name that matched the `%' in the pattern, so you can use $* in the commands. */ if (pattern) { static char *percent = "%"; char *buffer = variable_expand (""); char *o = patsubst_expand (buffer, name, pattern, percent, pattern_percent+1, percent+1); f->stem = savestring (buffer, o - buffer); if (this) { this->staticpattern = 1; this->stem = xstrdup (f->stem); } } /* Free name if not needed further. */ if (f != 0 && name != f->name && (name < f->name || name > f->name + strlen (f->name))) { free (name); name = f->name; } /* If this target is a default target, update DEFAULT_GOAL_FILE. */ if (streq (*default_goal_name, name) && (default_goal_file == 0 || ! streq (default_goal_file->name, name))) default_goal_file = f; } if (implicit) { targets[target_idx] = 0; target_percents[target_idx] = 0; if (deps) deps->need_2nd_expansion = second_expansion; create_pattern_rule (targets, target_percents, two_colon, deps, cmds, 1); free ((char *) target_percents); } } /* Search STRING for an unquoted STOPCHAR or blank (if BLANK is nonzero). Backslashes quote STOPCHAR, blanks if BLANK is nonzero, and backslash. Quoting backslashes are removed from STRING by compacting it into itself. Returns a pointer to the first unquoted STOPCHAR if there is one, or nil if there are none. STOPCHARs inside variable references are ignored if IGNOREVARS is true. STOPCHAR _cannot_ be '$' if IGNOREVARS is true. */ static char * find_char_unquote (char *string, int stop1, int stop2, int blank, int ignorevars) { unsigned int string_len = 0; register char *p = string; if (ignorevars) ignorevars = '$'; while (1) { if (stop2 && blank) while (*p != '\0' && *p != ignorevars && *p != stop1 && *p != stop2 && ! isblank ((unsigned char) *p)) ++p; else if (stop2) while (*p != '\0' && *p != ignorevars && *p != stop1 && *p != stop2) ++p; else if (blank) while (*p != '\0' && *p != ignorevars && *p != stop1 && ! isblank ((unsigned char) *p)) ++p; else while (*p != '\0' && *p != ignorevars && *p != stop1) ++p; if (*p == '\0') break; /* If we stopped due to a variable reference, skip over its contents. */ if (*p == ignorevars) { char openparen = p[1]; p += 2; /* Skip the contents of a non-quoted, multi-char variable ref. */ if (openparen == '(' || openparen == '{') { unsigned int pcount = 1; char closeparen = (openparen == '(' ? ')' : '}'); while (*p) { if (*p == openparen) ++pcount; else if (*p == closeparen) if (--pcount == 0) { ++p; break; } ++p; } } /* Skipped the variable reference: look for STOPCHARS again. */ continue; } if (p > string && p[-1] == '\\') { /* Search for more backslashes. */ register int i = -2; while (&p[i] >= string && p[i] == '\\') --i; ++i; /* Only compute the length if really needed. */ if (string_len == 0) string_len = strlen (string); /* The number of backslashes is now -I. Copy P over itself to swallow half of them. */ bcopy (&p[i / 2], &p[i], (string_len - (p - string)) - (i / 2) + 1); p += i / 2; if (i % 2 == 0) /* All the backslashes quoted each other; the STOPCHAR was unquoted. */ return p; /* The STOPCHAR was quoted by a backslash. Look for another. */ } else /* No backslash in sight. */ return p; } /* Never hit a STOPCHAR or blank (with BLANK nonzero). */ return 0; } /* Search PATTERN for an unquoted %. */ char * find_percent (char *pattern) { return find_char_unquote (pattern, '%', 0, 0, 0); } /* Parse a string into a sequence of filenames represented as a chain of struct nameseq's in reverse order and return that chain. The string is passed as STRINGP, the address of a string pointer. The string pointer is updated to point at the first character not parsed, which either is a null char or equals STOPCHAR. SIZE is how big to construct chain elements. This is useful if we want them actually to be other structures that have room for additional info. If STRIP is nonzero, strip `./'s off the beginning. */ struct nameseq * parse_file_seq (char **stringp, int stopchar, unsigned int size, int strip) { struct nameseq *new = 0; struct nameseq *new1, *lastnew1; char *p = *stringp; char *q; char *name; #ifdef VMS # define VMS_COMMA ',' #else # define VMS_COMMA 0 #endif while (1) { /* Skip whitespace; see if any more names are left. */ p = next_token (p); if (*p == '\0') break; if (*p == stopchar) break; /* Yes, find end of next name. */ q = p; p = find_char_unquote (q, stopchar, VMS_COMMA, 1, 0); #ifdef VMS /* convert comma separated list to space separated */ if (p && *p == ',') *p =' '; #endif #ifdef _AMIGA if (stopchar == ':' && p && *p == ':' && !(isspace ((unsigned char)p[1]) || !p[1] || isspace ((unsigned char)p[-1]))) { p = find_char_unquote (p+1, stopchar, VMS_COMMA, 1, 0); } #endif #ifdef HAVE_DOS_PATHS /* For DOS paths, skip a "C:\..." or a "C:/..." until we find the first colon which isn't followed by a slash or a backslash. Note that tokens separated by spaces should be treated as separate tokens since make doesn't allow path names with spaces */ if (stopchar == ':') while (p != 0 && !isspace ((unsigned char)*p) && (p[1] == '\\' || p[1] == '/') && isalpha ((unsigned char)p[-1])) p = find_char_unquote (p + 1, stopchar, VMS_COMMA, 1, 0); #endif if (p == 0) p = q + strlen (q); if (strip) #ifdef VMS /* Skip leading `[]'s. */ while (p - q > 2 && q[0] == '[' && q[1] == ']') #else /* Skip leading `./'s. */ while (p - q > 2 && q[0] == '.' && q[1] == '/') #endif { q += 2; /* Skip "./". */ while (q < p && *q == '/') /* Skip following slashes: ".//foo" is "foo", not "/foo". */ ++q; } /* Extract the filename just found, and skip it. */ if (q == p) /* ".///" was stripped to "". */ #ifdef VMS continue; #else #ifdef _AMIGA name = savestring ("", 0); #else name = savestring ("./", 2); #endif #endif else #ifdef VMS /* VMS filenames can have a ':' in them but they have to be '\'ed but we need * to remove this '\' before we can use the filename. * Savestring called because q may be read-only string constant. */ { char *qbase = xstrdup (q); char *pbase = qbase + (p-q); char *q1 = qbase; char *q2 = q1; char *p1 = pbase; while (q1 != pbase) { if (*q1 == '\\' && *(q1+1) == ':') { q1++; p1--; } *q2++ = *q1++; } name = savestring (qbase, p1 - qbase); free (qbase); } #else name = savestring (q, p - q); #endif /* Add it to the front of the chain. */ new1 = (struct nameseq *) xmalloc (size); new1->name = name; new1->next = new; new = new1; } #ifndef NO_ARCHIVES /* Look for multi-word archive references. They are indicated by a elt ending with an unmatched `)' and an elt further down the chain (i.e., previous in the file list) with an unmatched `(' (e.g., "lib(mem"). */ new1 = new; lastnew1 = 0; while (new1 != 0) if (new1->name[0] != '(' /* Don't catch "(%)" and suchlike. */ && new1->name[strlen (new1->name) - 1] == ')' && strchr (new1->name, '(') == 0) { /* NEW1 ends with a `)' but does not contain a `('. Look back for an elt with an opening `(' but no closing `)'. */ struct nameseq *n = new1->next, *lastn = new1; char *paren = 0; while (n != 0 && (paren = strchr (n->name, '(')) == 0) { lastn = n; n = n->next; } if (n != 0 /* Ignore something starting with `(', as that cannot actually be an archive-member reference (and treating it as such results in an empty file name, which causes much lossage). */ && n->name[0] != '(') { /* N is the first element in the archive group. Its name looks like "lib(mem" (with no closing `)'). */ char *libname; /* Copy "lib(" into LIBNAME. */ ++paren; libname = (char *) alloca (paren - n->name + 1); bcopy (n->name, libname, paren - n->name); libname[paren - n->name] = '\0'; if (*paren == '\0') { /* N was just "lib(", part of something like "lib( a b)". Edit it out of the chain and free its storage. */ lastn->next = n->next; free (n->name); free ((char *) n); /* LASTN->next is the new stopping elt for the loop below. */ n = lastn->next; } else { /* Replace N's name with the full archive reference. */ name = concat (libname, paren, ")"); free (n->name); n->name = name; } if (new1->name[1] == '\0') { /* NEW1 is just ")", part of something like "lib(a b )". Omit it from the chain and free its storage. */ if (lastnew1 == 0) new = new1->next; else lastnew1->next = new1->next; lastn = new1; new1 = new1->next; free (lastn->name); free ((char *) lastn); } else { /* Replace also NEW1->name, which already has closing `)'. */ name = concat (libname, new1->name, ""); free (new1->name); new1->name = name; new1 = new1->next; } /* Trace back from NEW1 (the end of the list) until N (the beginning of the list), rewriting each name with the full archive reference. */ while (new1 != n) { name = concat (libname, new1->name, ")"); free (new1->name); new1->name = name; lastnew1 = new1; new1 = new1->next; } } else { /* No frobnication happening. Just step down the list. */ lastnew1 = new1; new1 = new1->next; } } else { lastnew1 = new1; new1 = new1->next; } #endif *stringp = p; return new; } /* Find the next line of text in an eval buffer, combining continuation lines into one line. Return the number of actual lines read (> 1 if continuation lines). Returns -1 if there's nothing left in the buffer. After this function, ebuf->buffer points to the first character of the line we just found. */ /* Read a line of text from a STRING. Since we aren't really reading from a file, don't bother with linenumbers. */ static unsigned long readstring (struct ebuffer *ebuf) { char *eol; /* If there is nothing left in this buffer, return 0. */ if (ebuf->bufnext >= ebuf->bufstart + ebuf->size) return -1; /* Set up a new starting point for the buffer, and find the end of the next logical line (taking into account backslash/newline pairs). */ eol = ebuf->buffer = ebuf->bufnext; while (1) { int backslash = 0; char *bol = eol; char *p; /* Find the next newline. At EOS, stop. */ eol = p = strchr (eol , '\n'); if (!eol) { ebuf->bufnext = ebuf->bufstart + ebuf->size + 1; return 0; } /* Found a newline; if it's escaped continue; else we're done. */ while (p > bol && *(--p) == '\\') backslash = !backslash; if (!backslash) break; ++eol; } /* Overwrite the newline char. */ *eol = '\0'; ebuf->bufnext = eol+1; return 0; } static long readline (struct ebuffer *ebuf) { char *p; char *end; char *start; long nlines = 0; /* The behaviors between string and stream buffers are different enough to warrant different functions. Do the Right Thing. */ if (!ebuf->fp) return readstring (ebuf); /* When reading from a file, we always start over at the beginning of the buffer for each new line. */ p = start = ebuf->bufstart; end = p + ebuf->size; *p = '\0'; while (fgets (p, end - p, ebuf->fp) != 0) { char *p2; unsigned long len; int backslash; len = strlen (p); if (len == 0) { /* This only happens when the first thing on the line is a '\0'. It is a pretty hopeless case, but (wonder of wonders) Athena lossage strikes again! (xmkmf puts NULs in its makefiles.) There is nothing really to be done; we synthesize a newline so the following line doesn't appear to be part of this line. */ error (&ebuf->floc, _("warning: NUL character seen; rest of line ignored")); p[0] = '\n'; len = 1; } /* Jump past the text we just read. */ p += len; /* If the last char isn't a newline, the whole line didn't fit into the buffer. Get some more buffer and try again. */ if (p[-1] != '\n') goto more_buffer; /* We got a newline, so add one to the count of lines. */ ++nlines; #if !defined(WINDOWS32) && !defined(__MSDOS__) && !defined(__EMX__) /* Check to see if the line was really ended with CRLF; if so ignore the CR. */ if ((p - start) > 1 && p[-2] == '\r') { --p; p[-1] = '\n'; } #endif backslash = 0; for (p2 = p - 2; p2 >= start; --p2) { if (*p2 != '\\') break; backslash = !backslash; } if (!backslash) { p[-1] = '\0'; break; } /* It was a backslash/newline combo. If we have more space, read another line. */ if (end - p >= 80) continue; /* We need more space at the end of our buffer, so realloc it. Make sure to preserve the current offset of p. */ more_buffer: { unsigned long off = p - start; ebuf->size *= 2; start = ebuf->buffer = ebuf->bufstart = (char *) xrealloc (start, ebuf->size); p = start + off; end = start + ebuf->size; *p = '\0'; } } if (ferror (ebuf->fp)) pfatal_with_name (ebuf->floc.filenm); /* If we found some lines, return how many. If we didn't, but we did find _something_, that indicates we read the last line of a file with no final newline; return 1. If we read nothing, we're at EOF; return -1. */ return nlines ? nlines : p == ebuf->bufstart ? -1 : 1; } /* Parse the next "makefile word" from the input buffer, and return info about it. A "makefile word" is one of: w_bogus Should never happen w_eol End of input w_static A static word; cannot be expanded w_variable A word containing one or more variables/functions w_colon A colon w_dcolon A double-colon w_semicolon A semicolon w_varassign A variable assignment operator (=, :=, +=, or ?=) Note that this function is only used when reading certain parts of the makefile. Don't use it where special rules hold sway (RHS of a variable, in a command list, etc.) */ static enum make_word_type get_next_mword (char *buffer, char *delim, char **startp, unsigned int *length) { enum make_word_type wtype = w_bogus; char *p = buffer, *beg; char c; /* Skip any leading whitespace. */ while (isblank ((unsigned char)*p)) ++p; beg = p; c = *(p++); switch (c) { case '\0': wtype = w_eol; break; case ';': wtype = w_semicolon; break; case '=': wtype = w_varassign; break; case ':': wtype = w_colon; switch (*p) { case ':': ++p; wtype = w_dcolon; break; case '=': ++p; wtype = w_varassign; break; } break; case '+': case '?': if (*p == '=') { ++p; wtype = w_varassign; break; } default: if (delim && strchr (delim, c)) wtype = w_static; break; } /* Did we find something? If so, return now. */ if (wtype != w_bogus) goto done; /* This is some non-operator word. A word consists of the longest string of characters that doesn't contain whitespace, one of [:=#], or [?+]=, or one of the chars in the DELIM string. */ /* We start out assuming a static word; if we see a variable we'll adjust our assumptions then. */ wtype = w_static; /* We already found the first value of "c", above. */ while (1) { char closeparen; int count; switch (c) { case '\0': case ' ': case '\t': case '=': goto done_word; case ':': #ifdef HAVE_DOS_PATHS /* A word CAN include a colon in its drive spec. The drive spec is allowed either at the beginning of a word, or as part of the archive member name, like in "libfoo.a(d:/foo/bar.o)". */ if (!(p - beg >= 2 && (*p == '/' || *p == '\\') && isalpha ((unsigned char)p[-2]) && (p - beg == 2 || p[-3] == '('))) #endif goto done_word; case '$': c = *(p++); if (c == '$') break; /* This is a variable reference, so note that it's expandable. Then read it to the matching close paren. */ wtype = w_variable; if (c == '(') closeparen = ')'; else if (c == '{') closeparen = '}'; else /* This is a single-letter variable reference. */ break; for (count=0; *p != '\0'; ++p) { if (*p == c) ++count; else if (*p == closeparen && --count < 0) { ++p; break; } } break; case '?': case '+': if (*p == '=') goto done_word; break; case '\\': switch (*p) { case ':': case ';': case '=': case '\\': ++p; break; } break; default: if (delim && strchr (delim, c)) goto done_word; break; } c = *(p++); } done_word: --p; done: if (startp) *startp = beg; if (length) *length = p - beg; return wtype; } /* Construct the list of include directories from the arguments and the default list. */ void construct_include_path (char **arg_dirs) { register unsigned int i; #ifdef VAXC /* just don't ask ... */ stat_t stbuf; #else struct stat stbuf; #endif /* Table to hold the dirs. */ register unsigned int defsize = (sizeof (default_include_directories) / sizeof (default_include_directories[0])); register unsigned int max = 5; register char **dirs = (char **) xmalloc ((5 + defsize) * sizeof (char *)); register unsigned int idx = 0; #ifdef __MSDOS__ defsize++; #endif /* First consider any dirs specified with -I switches. Ignore dirs that don't exist. */ if (arg_dirs != 0) while (*arg_dirs != 0) { char *dir = *arg_dirs++; int e; if (dir[0] == '~') { char *expanded = tilde_expand (dir); if (expanded != 0) dir = expanded; } EINTRLOOP (e, stat (dir, &stbuf)); if (e == 0 && S_ISDIR (stbuf.st_mode)) { if (idx == max - 1) { max += 5; dirs = (char **) xrealloc ((char *) dirs, (max + defsize) * sizeof (char *)); } dirs[idx++] = dir; } else if (dir != arg_dirs[-1]) free (dir); } /* Now add at the end the standard default dirs. */ #ifdef __MSDOS__ { /* The environment variable $DJDIR holds the root of the DJGPP directory tree; add ${DJDIR}/include. */ struct variable *djdir = lookup_variable ("DJDIR", 5); if (djdir) { char *defdir = (char *) xmalloc (strlen (djdir->value) + 8 + 1); strcat (strcpy (defdir, djdir->value), "/include"); dirs[idx++] = defdir; } } #endif for (i = 0; default_include_directories[i] != 0; ++i) { int e; EINTRLOOP (e, stat (default_include_directories[i], &stbuf)); if (e == 0 && S_ISDIR (stbuf.st_mode)) dirs[idx++] = default_include_directories[i]; } dirs[idx] = 0; /* Now compute the maximum length of any name in it. Also add each dir to the .INCLUDE_DIRS variable. */ max_incl_len = 0; for (i = 0; i < idx; ++i) { unsigned int len = strlen (dirs[i]); /* If dir name is written with a trailing slash, discard it. */ if (dirs[i][len - 1] == '/') /* We can't just clobber a null in because it may have come from a literal string and literal strings may not be writable. */ dirs[i] = savestring (dirs[i], len - 1); if (len > max_incl_len) max_incl_len = len; /* Append to .INCLUDE_DIRS. */ do_variable_definition (NILF, ".INCLUDE_DIRS", dirs[i], o_default, f_append, 0); } include_directories = dirs; } /* Expand ~ or ~USER at the beginning of NAME. Return a newly malloc'd string or 0. */ char * tilde_expand (char *name) { #ifndef VMS if (name[1] == '/' || name[1] == '\0') { extern char *getenv (); char *home_dir; int is_variable; { /* Turn off --warn-undefined-variables while we expand HOME. */ int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; home_dir = allocated_variable_expand ("$(HOME)"); warn_undefined_variables_flag = save; } is_variable = home_dir[0] != '\0'; if (!is_variable) { free (home_dir); home_dir = getenv ("HOME"); } #if !defined(_AMIGA) && !defined(WINDOWS32) if (home_dir == 0 || home_dir[0] == '\0') { extern char *getlogin (); char *logname = getlogin (); home_dir = 0; if (logname != 0) { struct passwd *p = getpwnam (logname); if (p != 0) home_dir = p->pw_dir; } } #endif /* !AMIGA && !WINDOWS32 */ if (home_dir != 0) { char *new = concat (home_dir, "", name + 1); if (is_variable) free (home_dir); return new; } } #if !defined(_AMIGA) && !defined(WINDOWS32) else { struct passwd *pwent; char *userend = strchr (name + 1, '/'); if (userend != 0) *userend = '\0'; pwent = getpwnam (name + 1); if (pwent != 0) { if (userend == 0) return xstrdup (pwent->pw_dir); else return concat (pwent->pw_dir, "/", userend + 1); } else if (userend != 0) *userend = '/'; } #endif /* !AMIGA && !WINDOWS32 */ #endif /* !VMS */ return 0; } /* Given a chain of struct nameseq's describing a sequence of filenames, in reverse of the intended order, return a new chain describing the result of globbing the filenames. The new chain is in forward order. The links of the old chain are freed or used in the new chain. Likewise for the names in the old chain. SIZE is how big to construct chain elements. This is useful if we want them actually to be other structures that have room for additional info. */ struct nameseq * multi_glob (struct nameseq *chain, unsigned int size) { extern void dir_setup_glob (); register struct nameseq *new = 0; register struct nameseq *old; struct nameseq *nexto; glob_t gl; dir_setup_glob (&gl); for (old = chain; old != 0; old = nexto) { #ifndef NO_ARCHIVES char *memname; #endif nexto = old->next; if (old->name[0] == '~') { char *newname = tilde_expand (old->name); if (newname != 0) { free (old->name); old->name = newname; } } #ifndef NO_ARCHIVES if (ar_name (old->name)) { /* OLD->name is an archive member reference. Replace it with the archive file name, and save the member name in MEMNAME. We will glob on the archive name and then reattach MEMNAME later. */ char *arname; ar_parse_name (old->name, &arname, &memname); free (old->name); old->name = arname; } else memname = 0; #endif /* !NO_ARCHIVES */ switch (glob (old->name, GLOB_NOCHECK|GLOB_ALTDIRFUNC, NULL, &gl)) { case 0: /* Success. */ { register int i = gl.gl_pathc; while (i-- > 0) { #ifndef NO_ARCHIVES if (memname != 0) { /* Try to glob on MEMNAME within the archive. */ struct nameseq *found = ar_glob (gl.gl_pathv[i], memname, size); if (found == 0) { /* No matches. Use MEMNAME as-is. */ unsigned int alen = strlen (gl.gl_pathv[i]); unsigned int mlen = strlen (memname); struct nameseq *elt = (struct nameseq *) xmalloc (size); if (size > sizeof (struct nameseq)) bzero (((char *) elt) + sizeof (struct nameseq), size - sizeof (struct nameseq)); elt->name = (char *) xmalloc (alen + 1 + mlen + 2); bcopy (gl.gl_pathv[i], elt->name, alen); elt->name[alen] = '('; bcopy (memname, &elt->name[alen + 1], mlen); elt->name[alen + 1 + mlen] = ')'; elt->name[alen + 1 + mlen + 1] = '\0'; elt->next = new; new = elt; } else { /* Find the end of the FOUND chain. */ struct nameseq *f = found; while (f->next != 0) f = f->next; /* Attach the chain being built to the end of the FOUND chain, and make FOUND the new NEW chain. */ f->next = new; new = found; } free (memname); } else #endif /* !NO_ARCHIVES */ { struct nameseq *elt = (struct nameseq *) xmalloc (size); if (size > sizeof (struct nameseq)) bzero (((char *) elt) + sizeof (struct nameseq), size - sizeof (struct nameseq)); elt->name = xstrdup (gl.gl_pathv[i]); elt->next = new; new = elt; } } globfree (&gl); free (old->name); free ((char *)old); break; } case GLOB_NOSPACE: fatal (NILF, _("virtual memory exhausted")); break; default: old->next = new; new = old; break; } } return new; } make-dfsg-3.81.orig/readme.vms0000644000175000017500000003032010416553102016473 0ustar srivastasrivastaThis is the VMS version of GNU Make, updated by Hartmut Becker Changes are based on GNU make 3.80. Latest changes are for OpenVMS/I64 and new VMS CRTLs. This version was tested on OpenVMS/I64 V8.2 (field test) with hp C X7.1-024 OpenVMS/Alpha V7.3-2 with Compaq C V6.5-001 and OpenVMS/VAX 7.1 with Compaq C V6.2-003 There are still some warning and informational message issued by the compilers. Build instructions Make a 1st version $ @makefile.com $ rena make.exe 1st-make.exe Use the 1st version to generate a 2nd version $ mc sys$disk:[]1st-make clean $ mc sys$disk:[]1st-make Verify your 2nd version $ rena make.exe 2nd-make.exe $ mc sys$disk:[]2nd-make clean $ mc sys$disk:[]2nd-make Changes: . In default.c define variable ARCH as IA64 for VMS on Itanium systems. . In makefile.vms avoid name collision for glob and globfree. In newer version of the VMS CRTL there are glob and globfree implemented. Compiling and linking may result in %ILINK-W-MULDEFLNKG, symbol DECC$GLOBFREE has subsequent linkage definition in module DECC$SHR file SYS$COMMON:[SYSLIB]DECC$SHR.EXE;1 %ILINK-W-MULDEF, symbol DECC$GLOBFREE multiply defined in module DECC$SHR file SYS$COMMON:[SYSLIB]DECC$SHR.EXE;1 linker messages (and similar for DECC$GLOB). The messages just say, that globfree is a known CRTL whose name was mapped by the compiler to DECC$GLOBFREE. This is done in glob.c as well, so this name is defined twice. One possible solution is to use the VMS versions of glob and globfree. However, then the build environment needs to figure out if there is a new CRTL supporting these or not. This adds complexity. Even more, these functions return VMS file specifications, which is not expected by the other make sources. There is a switch at run time (a VMS logical DECC$GLOB_UNIX_STYLE), which can be set to get Unix style names. This may conflict with other software. The recommended solution for this is to set this switch just prior to calling main: in an initialization routine. This adds more complexity and more VMS specific code. It is easier to tell the compiler NOT to map the routine names with a simple change in makefile.vms. Some notes on case sensitive names in rules and on the disk. In the VMS template for CONFIG.H case sensitive rules can be enabled with defining WANT_CASE_SENSITIVE_TARGETS. For recent version of VMS there is a case sensitive file system: ODS5. To make use of that, additionally un-defining the HAVE_CASE_INSENSITIVE_FS is required. As these are C macros, different versions of make need to be built to have any case sensitivity for VMS working. Unfortunately, for ODS5 disks that's not all. - Usually DCL upcases command line tokens (except strings) and usually the file system is case blind (similar to how Windows systems work) $ set proc/parse=extended/case=sensitive preserves lower and UPPER on the command line and (for this process and all sub-processes) enables case sensitivity in the file system - Usually the CRTL tries to reverse what DCL did with command line tokens, it lowercases all tokens (except strings) $ define DECC$ARGV_PARSE_STYLE enable passes (the now preserved) lower and UPPER from the command line to main() - Usually the CRTL upcases the arguments to open() and friends $ define DECC$EFS_CASE_PRESERVE enable preserves the names as is. It is important to know that not all VMS tools are ready for case sensitivity. With this setup some tools may not work as expected. The setup should not blindly be applied for all users in default login procedures. Example? The poor coding gives a compiler message, showing that there are different files: $ dir Directory ODS5DISK[HB] A.c;1 B.c;1 c.c;1 X.c;1 x.c;1 Total of 5 files. $ ods5make x.obj cc /obj=x.obj x.c foo(){lowercase_x();} ......^ %CC-I-IMPLICITFUNC, In this statement, the identifier "lowercase_x" is implicitly declared as a function. at line number 1 in file ODS5DISK[HB]x.c;1 $ mc SYS$SYSDEVICE:[HARTMUT.MAKE_3_80P]ods5make X.obj cc /obj=X.obj X.c foo() {UPPERCASE_X();} .......^ %CC-I-IMPLICITFUNC, In this statement, the identifier "UPPERCASE_X" is implicitly declared as a function. at line number 1 in file ODS5DISK[HB]X.c;1 $ dir Directory ODS5DISK[HB] A.c;1 B.c;1 c.c;1 X.c;1 x.c;1 X.obj;1 x.obj;1 Total of 7 files. $ This is the VMS port of GNU Make done by Hartmut.Becker@compaq.com. It is based on the specific version 3.77k and on 3.78.1. 3.77k was done by Klaus Kämpf , the code was based on the VMS port of GNU Make 3.60 by Mike Moretti. It was ported on OpenVMS/Alpha V7.1, DECC V5.7-006. It was re-build and tested on OpenVMS/Alpha V7.2, OpenVMS/VAX 7.1 and 5.5-2. Different versions of DECC were used. VAXC was tried: it fails; but it doesn't seem worth to get it working. There are still some PTRMISMATCH warnings during the compile. Although perl is working on VMS the test scripts don't work. The function $shell is still missing. There is a known bug in some of the VMS CRTLs. It is in the shipped versions of VMS V7.2 and V7.2-1 and in the currently (October 1999) available ECOs for VMS V7.1 and newer versions. It is fixed in versions shipped with newer VMS versions and all ECO kits after October 1999. It only shows up during the daylight saving time period (DST): stat() returns a modification time 1 hour ahead. This results in GNU make warning messages. For a just created source you will see: $ gmake x.exe gmake.exe;1: *** Warning: File `x.c' has modification time in the future (940582863 > 940579269) cc /obj=x.obj x.c link x.obj /exe=x.exe gmake.exe;1: *** Warning: Clock skew detected. Your build may be incomplete. New in 3.78.1: Fix a problem with automatically remaking makefiles. GNU make uses an execve to restart itself after a successful remake of the makefile. On UNIX systems execve replaces the running program with a new one and resets all signal handling to the default. On VMS execve creates a child process, signal and exit handlers of the parent are still active, and, unfortunately, corrupt the exit code from the child. Fix in job.c: ignore SIGCHLD. Added some switches to reflect latest features of DECC. Modifications in makefile.vms. Set some definitions to reflect latest features of DECC. Modifications in config.h-vms (which is copied to config.h). Added extern strcmpi declaration to avoid 'implicitly declared' messages. Modification in make.h. Default rule for C++, conditionals for gcc (GCC_IS_NATIVE) or DEC/Digital/ Compaq c/c++ compilers. Modifications in default.c. Usage of opendir() and friends, suppress file version. Modifications in dir.c. Added VMS specific code to handle ctrl+c and ctrl+y to abort make. Modifications in job.c. Added support to have case sensitive targets and dependencies but to still use case blind file names. This is especially useful for Java makefiles on VMS: .SUFFIXES : .SUFFIXES : .class .java .java.class : javac "$< HelloWorld.class : HelloWorld.java A new macro WANT_CASE_SENSITIVE_TARGETS in config.h-vms was introduced. It needs to be enabled to get this feature; default is disabled. The macro HAVE_CASE_INSENSITIVE_FS must not be touched: it is still enabled. Modifications in file.c and config.h-vms. Bootstrap make to start building make is still makefile.com, but make needs to be re-made with a make to make a correct version: ignore all possible warnings, delete all objects, rename make.exe to a different name and run it. Made some minor modifications to the bootstrap build makefile.com. This is the VMS port of GNU Make. It is based on the VMS port of GNU Make 3.60 by Mike Moretti. This port was done by Klaus Kämpf There is first-level support available from proGIS Software, Germany. Visit their web-site at http://www.progis.de to get information about other vms software and forthcoming updates to gnu make. New for 3.77: /bin/sh style I/O redirection is supported. You can now write lines like mcr sys$disk:[]program.exe < input.txt > output.txt &> error.txt Makefile variables are looked up in the current environment. You can set symbols or logicals in DCL and evaluate them in the Makefile via $(). Variables defined in the Makefile override VMS symbols/logicals ! Functions for file names are working now. See the GNU Make manual for $(dir ...) and $(wildcard ...). Unix-style and VMS-style names are supported as arguments. The default rules are set up for GNU C. Building an executable from a single source file is as easy as 'make file.exe'. The variable $(ARCH) is predefined as ALPHA or VAX resp. Makefiles for different VMS systems can now be written by checking $(ARCH) as in ifeq ($(ARCH),ALPHA) $(ECHO) "On the Alpha" else $(ECHO) "On the VAX" endif Command lines of excessive length are correctly broken and written to a batch file in sys$scratch for later execution. There's no limit to the lengths of commands (and no need for .opt files :-) any more. Empty commands are handled correctly and don't end in a new DCL process. New for 3.76: John W. Eaton has updated the VMS port to support libraries and VPATH. To build Make, simply type @makefile. This should compile all the necessary files and link Make. There is also a file called makefile.vms. If you already have GNU Make built you can just use Make with this makefile to rebuild. Here are some notes about GNU Make for VMS: The cd command is supported if it's called as $(CD). This invokes the 'builtin_cd' command which changes the directory. Calling 'set def' doesn't do the trick, since a sub-shell is spawned for this command, the directory is changed *in this sub-shell* and the sub-shell ends. Libraries are not supported. They were in GNU Make 3.60 but somehow I didn't care porting the code. If there is enough interest, I'll do it at some later time. The variable $^ separates files with commas instead of spaces (It's the natural thing to do for VMS). See defaults.c for VMS default suffixes and my definitions for default rules and variables. The shell function is not implemented yet. Load average routines haven't been implemented for VMS yet. The default include directory for including other makefiles is SYS$SYSROOT:[SYSLIB] (I don't remember why I didn't just use SYS$LIBRARY: instead; maybe it wouldn't work that way). The default makefiles make looks for are: makefile.vms, gnumakefile, makefile., and gnumakefile. . The stat() function and handling of time stamps in VMS is broken, so I replaced it with a hack in vmsfunctions.c. I will provide a full rewrite somewhere in the future. Be warned, the time resolution inside make is less than what vms provides. This might be a problem on the faster Alphas. You can use a : in a filename only if you preceed it with a backslash ('\'). E.g.- hobbes\:[bogas.files] Make ignores success, informational, or warning errors (-S-, -I-, or -W-). But it will stop on -E- and -F- errors. (unless you do something to override this in your makefile, or whatever). Remote stuff isn't implemented yet. Multiple line DCL commands, such as "if" statements, must be put inside command files. You can run a command file by using \@. VMS changes made for 3.74.3 Lots of default settings are adapted for VMS. See default.c. Long command lines are now converted to command files. Comma (',') as a separator is now allowed. See makefile.vms for an example. ------------------------------------------------------------------------------- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/remake.c0000644000175000017500000013375310416553102016135 0ustar srivastasrivasta/* Basic dependency engine for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "job.h" #include "commands.h" #include "dep.h" #include "variable.h" #include "debug.h" #include #ifdef HAVE_FCNTL_H #include #else #include #endif #ifdef VMS #include #endif #ifdef WINDOWS32 #include #endif extern int try_implicit_rule PARAMS ((struct file *file, unsigned int depth)); /* The test for circular dependencies is based on the 'updating' bit in `struct file'. However, double colon targets have seperate `struct file's; make sure we always use the base of the double colon chain. */ #define start_updating(_f) (((_f)->double_colon ? (_f)->double_colon : (_f))\ ->updating = 1) #define finish_updating(_f) (((_f)->double_colon ? (_f)->double_colon : (_f))\ ->updating = 0) #define is_updating(_f) (((_f)->double_colon ? (_f)->double_colon : (_f))\ ->updating) /* Incremented when a command is started (under -n, when one would be). */ unsigned int commands_started = 0; /* Current value for pruning the scan of the goal chain (toggle 0/1). */ static unsigned int considered; static int update_file PARAMS ((struct file *file, unsigned int depth)); static int update_file_1 PARAMS ((struct file *file, unsigned int depth)); static int check_dep PARAMS ((struct file *file, unsigned int depth, FILE_TIMESTAMP this_mtime, int *must_make_ptr)); static int touch_file PARAMS ((struct file *file)); static void remake_file PARAMS ((struct file *file)); static FILE_TIMESTAMP name_mtime PARAMS ((char *name)); static int library_search PARAMS ((char **lib, FILE_TIMESTAMP *mtime_ptr)); /* Remake all the goals in the `struct dep' chain GOALS. Return -1 if nothing was done, 0 if all goals were updated successfully, or 1 if a goal failed. If rebuilding_makefiles is nonzero, these goals are makefiles, so -t, -q, and -n should be disabled for them unless they were also command-line targets, and we should only make one goal at a time and return as soon as one goal whose `changed' member is nonzero is successfully made. */ int update_goal_chain (struct dep *goals) { int t = touch_flag, q = question_flag, n = just_print_flag; unsigned int j = job_slots; int status = -1; #define MTIME(file) (rebuilding_makefiles ? file_mtime_no_search (file) \ : file_mtime (file)) /* Duplicate the chain so we can remove things from it. */ goals = copy_dep_chain (goals); { /* Clear the `changed' flag of each goal in the chain. We will use the flag below to notice when any commands have actually been run for a target. When no commands have been run, we give an "up to date" diagnostic. */ struct dep *g; for (g = goals; g != 0; g = g->next) g->changed = 0; } /* All files start with the considered bit 0, so the global value is 1. */ considered = 1; /* Update all the goals until they are all finished. */ while (goals != 0) { register struct dep *g, *lastgoal; /* Start jobs that are waiting for the load to go down. */ start_waiting_jobs (); /* Wait for a child to die. */ reap_children (1, 0); lastgoal = 0; g = goals; while (g != 0) { /* Iterate over all double-colon entries for this file. */ struct file *file; int stop = 0, any_not_updated = 0; for (file = g->file->double_colon ? g->file->double_colon : g->file; file != NULL; file = file->prev) { unsigned int ocommands_started; int x; check_renamed (file); if (rebuilding_makefiles) { if (file->cmd_target) { touch_flag = t; question_flag = q; just_print_flag = n; } else touch_flag = question_flag = just_print_flag = 0; } /* Save the old value of `commands_started' so we can compare later. It will be incremented when any commands are actually run. */ ocommands_started = commands_started; x = update_file (file, rebuilding_makefiles ? 1 : 0); check_renamed (file); /* Set the goal's `changed' flag if any commands were started by calling update_file above. We check this flag below to decide when to give an "up to date" diagnostic. */ if (commands_started > ocommands_started) g->changed = 1; /* If we updated a file and STATUS was not already 1, set it to 1 if updating failed, or to 0 if updating succeeded. Leave STATUS as it is if no updating was done. */ stop = 0; if ((x != 0 || file->updated) && status < 1) { if (file->update_status != 0) { /* Updating failed, or -q triggered. The STATUS value tells our caller which. */ status = file->update_status; /* If -q just triggered, stop immediately. It doesn't matter how much more we run, since we already know the answer to return. */ stop = (question_flag && !keep_going_flag && !rebuilding_makefiles); } else { FILE_TIMESTAMP mtime = MTIME (file); check_renamed (file); if (file->updated && g->changed && mtime != file->mtime_before_update) { /* Updating was done. If this is a makefile and just_print_flag or question_flag is set (meaning -n or -q was given and this file was specified as a command-line target), don't change STATUS. If STATUS is changed, we will get re-exec'd, and enter an infinite loop. */ if (!rebuilding_makefiles || (!just_print_flag && !question_flag)) status = 0; if (rebuilding_makefiles && file->dontcare) /* This is a default makefile; stop remaking. */ stop = 1; } } } /* Keep track if any double-colon entry is not finished. When they are all finished, the goal is finished. */ any_not_updated |= !file->updated; if (stop) break; } /* Reset FILE since it is null at the end of the loop. */ file = g->file; if (stop || !any_not_updated) { /* If we have found nothing whatever to do for the goal, print a message saying nothing needs doing. */ if (!rebuilding_makefiles /* If the update_status is zero, we updated successfully or not at all. G->changed will have been set above if any commands were actually started for this goal. */ && file->update_status == 0 && !g->changed /* Never give a message under -s or -q. */ && !silent_flag && !question_flag) message (1, ((file->phony || file->cmds == 0) ? _("Nothing to be done for `%s'.") : _("`%s' is up to date.")), file->name); /* This goal is finished. Remove it from the chain. */ if (lastgoal == 0) goals = g->next; else lastgoal->next = g->next; /* Free the storage. */ free ((char *) g); g = lastgoal == 0 ? goals : lastgoal->next; if (stop) break; } else { lastgoal = g; g = g->next; } } /* If we reached the end of the dependency graph toggle the considered flag for the next pass. */ if (g == 0) considered = !considered; } if (rebuilding_makefiles) { touch_flag = t; question_flag = q; just_print_flag = n; job_slots = j; } return status; } /* If FILE is not up to date, execute the commands for it. Return 0 if successful, 1 if unsuccessful; but with some flag settings, just call `exit' if unsuccessful. DEPTH is the depth in recursions of this function. We increment it during the consideration of our dependencies, then decrement it again after finding out whether this file is out of date. If there are multiple double-colon entries for FILE, each is considered in turn. */ static int update_file (struct file *file, unsigned int depth) { register int status = 0; register struct file *f; f = file->double_colon ? file->double_colon : file; /* Prune the dependency graph: if we've already been here on _this_ pass through the dependency graph, we don't have to go any further. We won't reap_children until we start the next pass, so no state change is possible below here until then. */ if (f->considered == considered) { DBF (DB_VERBOSE, _("Pruning file `%s'.\n")); return f->command_state == cs_finished ? f->update_status : 0; } /* This loop runs until we start commands for a double colon rule, or until the chain is exhausted. */ for (; f != 0; f = f->prev) { f->considered = considered; status |= update_file_1 (f, depth); check_renamed (f); /* Clean up any alloca() used during the update. */ alloca (0); /* If we got an error, don't bother with double_colon etc. */ if (status != 0 && !keep_going_flag) return status; if (f->command_state == cs_running || f->command_state == cs_deps_running) { /* Don't run the other :: rules for this file until this rule is finished. */ status = 0; break; } } /* Process the remaining rules in the double colon chain so they're marked considered. Start their prerequisites, too. */ if (file->double_colon) for (; f != 0 ; f = f->prev) { struct dep *d; f->considered = considered; for (d = f->deps; d != 0; d = d->next) status |= update_file (d->file, depth + 1); } return status; } /* Show a message stating the target failed to build. */ static void complain (const struct file *file) { const char *msg_noparent = _("%sNo rule to make target `%s'%s"); const char *msg_parent = _("%sNo rule to make target `%s', needed by `%s'%s"); if (!keep_going_flag) { if (file->parent == 0) fatal (NILF, msg_noparent, "", file->name, ""); fatal (NILF, msg_parent, "", file->name, file->parent->name, ""); } if (file->parent == 0) error (NILF, msg_noparent, "*** ", file->name, "."); else error (NILF, msg_parent, "*** ", file->name, file->parent->name, "."); } /* Consider a single `struct file' and update it as appropriate. */ static int update_file_1 (struct file *file, unsigned int depth) { register FILE_TIMESTAMP this_mtime; int noexist, must_make, deps_changed; int dep_status = 0; register struct dep *d, *lastd; int running = 0; DBF (DB_VERBOSE, _("Considering target file `%s'.\n")); if (file->updated) { if (file->update_status > 0) { DBF (DB_VERBOSE, _("Recently tried and failed to update file `%s'.\n")); /* If the file we tried to make is marked dontcare then no message was printed about it when it failed during the makefile rebuild. If we're trying to build it again in the normal rebuild, print a message now. */ if (file->dontcare && !rebuilding_makefiles) { file->dontcare = 0; complain (file); } return file->update_status; } DBF (DB_VERBOSE, _("File `%s' was considered already.\n")); return 0; } switch (file->command_state) { case cs_not_started: case cs_deps_running: break; case cs_running: DBF (DB_VERBOSE, _("Still updating file `%s'.\n")); return 0; case cs_finished: DBF (DB_VERBOSE, _("Finished updating file `%s'.\n")); return file->update_status; default: abort (); } ++depth; /* Notice recursive update of the same file. */ start_updating (file); /* Looking at the file's modtime beforehand allows the possibility that its name may be changed by a VPATH search, and thus it may not need an implicit rule. If this were not done, the file might get implicit commands that apply to its initial name, only to have that name replaced with another found by VPATH search. */ this_mtime = file_mtime (file); check_renamed (file); noexist = this_mtime == NONEXISTENT_MTIME; if (noexist) DBF (DB_BASIC, _("File `%s' does not exist.\n")); else if (ORDINARY_MTIME_MIN <= this_mtime && this_mtime <= ORDINARY_MTIME_MAX && file->low_resolution_time) { /* Avoid spurious rebuilds due to low resolution time stamps. */ int ns = FILE_TIMESTAMP_NS (this_mtime); if (ns != 0) error (NILF, _("*** Warning: .LOW_RESOLUTION_TIME file `%s' has a high resolution time stamp"), file->name); this_mtime += FILE_TIMESTAMPS_PER_S - 1 - ns; } must_make = noexist; /* If file was specified as a target with no commands, come up with some default commands. */ if (!file->phony && file->cmds == 0 && !file->tried_implicit) { if (try_implicit_rule (file, depth)) DBF (DB_IMPLICIT, _("Found an implicit rule for `%s'.\n")); else DBF (DB_IMPLICIT, _("No implicit rule found for `%s'.\n")); file->tried_implicit = 1; } if (file->cmds == 0 && !file->is_target && default_file != 0 && default_file->cmds != 0) { DBF (DB_IMPLICIT, _("Using default commands for `%s'.\n")); file->cmds = default_file->cmds; } /* Update all non-intermediate files we depend on, if necessary, and see whether any of them is more recent than this file. */ lastd = 0; d = file->deps; while (d != 0) { FILE_TIMESTAMP mtime; int maybe_make; int dontcare = 0; check_renamed (d->file); mtime = file_mtime (d->file); check_renamed (d->file); if (is_updating (d->file)) { error (NILF, _("Circular %s <- %s dependency dropped."), file->name, d->file->name); /* We cannot free D here because our the caller will still have a reference to it when we were called recursively via check_dep below. */ if (lastd == 0) file->deps = d->next; else lastd->next = d->next; d = d->next; continue; } d->file->parent = file; maybe_make = must_make; /* Inherit dontcare flag from our parent. */ if (rebuilding_makefiles) { dontcare = d->file->dontcare; d->file->dontcare = file->dontcare; } dep_status |= check_dep (d->file, depth, this_mtime, &maybe_make); /* Restore original dontcare flag. */ if (rebuilding_makefiles) d->file->dontcare = dontcare; if (! d->ignore_mtime) must_make = maybe_make; check_renamed (d->file); { register struct file *f = d->file; if (f->double_colon) f = f->double_colon; do { running |= (f->command_state == cs_running || f->command_state == cs_deps_running); f = f->prev; } while (f != 0); } if (dep_status != 0 && !keep_going_flag) break; if (!running) /* The prereq is considered changed if the timestamp has changed while it was built, OR it doesn't exist. This causes the Linux kernel build to break. We'll defer this fix until GNU make 3.82 to give them time to update. */ d->changed = ((file_mtime (d->file) != mtime) /* || (mtime == NONEXISTENT_MTIME) */); lastd = d; d = d->next; } /* Now we know whether this target needs updating. If it does, update all the intermediate files we depend on. */ if (must_make || always_make_flag) { for (d = file->deps; d != 0; d = d->next) if (d->file->intermediate) { int dontcare = 0; FILE_TIMESTAMP mtime = file_mtime (d->file); check_renamed (d->file); d->file->parent = file; /* Inherit dontcare flag from our parent. */ if (rebuilding_makefiles) { dontcare = d->file->dontcare; d->file->dontcare = file->dontcare; } dep_status |= update_file (d->file, depth); /* Restore original dontcare flag. */ if (rebuilding_makefiles) d->file->dontcare = dontcare; check_renamed (d->file); { register struct file *f = d->file; if (f->double_colon) f = f->double_colon; do { running |= (f->command_state == cs_running || f->command_state == cs_deps_running); f = f->prev; } while (f != 0); } if (dep_status != 0 && !keep_going_flag) break; if (!running) d->changed = ((file->phony && file->cmds != 0) || file_mtime (d->file) != mtime); } } finish_updating (file); DBF (DB_VERBOSE, _("Finished prerequisites of target file `%s'.\n")); if (running) { set_command_state (file, cs_deps_running); --depth; DBF (DB_VERBOSE, _("The prerequisites of `%s' are being made.\n")); return 0; } /* If any dependency failed, give up now. */ if (dep_status != 0) { file->update_status = dep_status; notice_finished_file (file); --depth; DBF (DB_VERBOSE, _("Giving up on target file `%s'.\n")); if (depth == 0 && keep_going_flag && !just_print_flag && !question_flag) error (NILF, _("Target `%s' not remade because of errors."), file->name); return dep_status; } if (file->command_state == cs_deps_running) /* The commands for some deps were running on the last iteration, but they have finished now. Reset the command_state to not_started to simplify later bookkeeping. It is important that we do this only when the prior state was cs_deps_running, because that prior state was definitely propagated to FILE's also_make's by set_command_state (called above), but in another state an also_make may have independently changed to finished state, and we would confuse that file's bookkeeping (updated, but not_started is bogus state). */ set_command_state (file, cs_not_started); /* Now record which prerequisites are more recent than this file, so we can define $?. */ deps_changed = 0; for (d = file->deps; d != 0; d = d->next) { FILE_TIMESTAMP d_mtime = file_mtime (d->file); check_renamed (d->file); if (! d->ignore_mtime) { #if 1 /* %%% In version 4, remove this code completely to implement not remaking deps if their deps are newer than their parents. */ if (d_mtime == NONEXISTENT_MTIME && !d->file->intermediate) /* We must remake if this dep does not exist and is not intermediate. */ must_make = 1; #endif /* Set DEPS_CHANGED if this dep actually changed. */ deps_changed |= d->changed; } /* Set D->changed if either this dep actually changed, or its dependent, FILE, is older or does not exist. */ d->changed |= noexist || d_mtime > this_mtime; if (!noexist && ISDB (DB_BASIC|DB_VERBOSE)) { const char *fmt = 0; if (d->ignore_mtime) { if (ISDB (DB_VERBOSE)) fmt = _("Prerequisite `%s' is order-only for target `%s'.\n"); } else if (d_mtime == NONEXISTENT_MTIME) { if (ISDB (DB_BASIC)) fmt = _("Prerequisite `%s' of target `%s' does not exist.\n"); } else if (d->changed) { if (ISDB (DB_BASIC)) fmt = _("Prerequisite `%s' is newer than target `%s'.\n"); } else if (ISDB (DB_VERBOSE)) fmt = _("Prerequisite `%s' is older than target `%s'.\n"); if (fmt) { print_spaces (depth); printf (fmt, dep_name (d), file->name); fflush (stdout); } } } /* Here depth returns to the value it had when we were called. */ depth--; if (file->double_colon && file->deps == 0) { must_make = 1; DBF (DB_BASIC, _("Target `%s' is double-colon and has no prerequisites.\n")); } else if (!noexist && file->is_target && !deps_changed && file->cmds == 0 && !always_make_flag) { must_make = 0; DBF (DB_VERBOSE, _("No commands for `%s' and no prerequisites actually changed.\n")); } else if (!must_make && file->cmds != 0 && always_make_flag) { must_make = 1; DBF (DB_VERBOSE, _("Making `%s' due to always-make flag.\n")); } if (!must_make) { if (ISDB (DB_VERBOSE)) { print_spaces (depth); printf (_("No need to remake target `%s'"), file->name); if (!streq (file->name, file->hname)) printf (_("; using VPATH name `%s'"), file->hname); puts ("."); fflush (stdout); } notice_finished_file (file); /* Since we don't need to remake the file, convert it to use the VPATH filename if we found one. hfile will be either the local name if no VPATH or the VPATH name if one was found. */ while (file) { file->name = file->hname; file = file->prev; } return 0; } DBF (DB_BASIC, _("Must remake target `%s'.\n")); /* It needs to be remade. If it's VPATH and not reset via GPATH, toss the VPATH. */ if (!streq(file->name, file->hname)) { DB (DB_BASIC, (_(" Ignoring VPATH name `%s'.\n"), file->hname)); file->ignore_vpath = 1; } /* Now, take appropriate actions to remake the file. */ remake_file (file); if (file->command_state != cs_finished) { DBF (DB_VERBOSE, _("Commands of `%s' are being run.\n")); return 0; } switch (file->update_status) { case 2: DBF (DB_BASIC, _("Failed to remake target file `%s'.\n")); break; case 0: DBF (DB_BASIC, _("Successfully remade target file `%s'.\n")); break; case 1: DBF (DB_BASIC, _("Target file `%s' needs remade under -q.\n")); break; default: assert (file->update_status >= 0 && file->update_status <= 2); break; } file->updated = 1; return file->update_status; } /* Set FILE's `updated' flag and re-check its mtime and the mtime's of all files listed in its `also_make' member. Under -t, this function also touches FILE. On return, FILE->update_status will no longer be -1 if it was. */ void notice_finished_file (struct file *file) { struct dep *d; int ran = file->command_state == cs_running; int touched = 0; file->command_state = cs_finished; file->updated = 1; if (touch_flag /* The update status will be: -1 if this target was not remade; 0 if 0 or more commands (+ or ${MAKE}) were run and won; 1 if some commands were run and lost. We touch the target if it has commands which either were not run or won when they ran (i.e. status is 0). */ && file->update_status == 0) { if (file->cmds != 0 && file->cmds->any_recurse) { /* If all the command lines were recursive, we don't want to do the touching. */ unsigned int i; for (i = 0; i < file->cmds->ncommand_lines; ++i) if (!(file->cmds->lines_flags[i] & COMMANDS_RECURSE)) goto have_nonrecursing; } else { have_nonrecursing: if (file->phony) file->update_status = 0; /* According to POSIX, -t doesn't affect targets with no cmds. */ else if (file->cmds != 0) { /* Should set file's modification date and do nothing else. */ file->update_status = touch_file (file); /* Pretend we ran a real touch command, to suppress the "`foo' is up to date" message. */ commands_started++; /* Request for the timestamp to be updated (and distributed to the double-colon entries). Simply setting ran=1 would almost have done the trick, but messes up with the also_make updating logic below. */ touched = 1; } } } if (file->mtime_before_update == UNKNOWN_MTIME) file->mtime_before_update = file->last_mtime; if ((ran && !file->phony) || touched) { int i = 0; /* If -n, -t, or -q and all the commands are recursive, we ran them so really check the target's mtime again. Otherwise, assume the target would have been updated. */ if (question_flag || just_print_flag || touch_flag) { for (i = file->cmds->ncommand_lines; i > 0; --i) if (! (file->cmds->lines_flags[i-1] & COMMANDS_RECURSE)) break; } /* If there were no commands at all, it's always new. */ else if (file->is_target && file->cmds == 0) i = 1; file->last_mtime = i == 0 ? UNKNOWN_MTIME : NEW_MTIME; } if (file->double_colon) { /* If this is a double colon rule and it is the last one to be updated, propagate the change of modification time to all the double-colon entries for this file. We do it on the last update because it is important to handle individual entries as separate rules with separate timestamps while they are treated as targets and then as one rule with the unified timestamp when they are considered as a prerequisite of some target. */ struct file *f; FILE_TIMESTAMP max_mtime = file->last_mtime; /* Check that all rules were updated and at the same time find the max timestamp. We assume UNKNOWN_MTIME is newer then any other value. */ for (f = file->double_colon; f != 0 && f->updated; f = f->prev) if (max_mtime != UNKNOWN_MTIME && (f->last_mtime == UNKNOWN_MTIME || f->last_mtime > max_mtime)) max_mtime = f->last_mtime; if (f == 0) for (f = file->double_colon; f != 0; f = f->prev) f->last_mtime = max_mtime; } if (ran && file->update_status != -1) /* We actually tried to update FILE, which has updated its also_make's as well (if it worked). If it didn't work, it wouldn't work again for them. So mark them as updated with the same status. */ for (d = file->also_make; d != 0; d = d->next) { d->file->command_state = cs_finished; d->file->updated = 1; d->file->update_status = file->update_status; if (ran && !d->file->phony) /* Fetch the new modification time. We do this instead of just invalidating the cached time so that a vpath_search can happen. Otherwise, it would never be done because the target is already updated. */ (void) f_mtime (d->file, 0); } else if (file->update_status == -1) /* Nothing was done for FILE, but it needed nothing done. So mark it now as "succeeded". */ file->update_status = 0; } /* Check whether another file (whose mtime is THIS_MTIME) needs updating on account of a dependency which is file FILE. If it does, store 1 in *MUST_MAKE_PTR. In the process, update any non-intermediate files that FILE depends on (including FILE itself). Return nonzero if any updating failed. */ static int check_dep (struct file *file, unsigned int depth, FILE_TIMESTAMP this_mtime, int *must_make_ptr) { struct dep *d; int dep_status = 0; ++depth; start_updating (file); if (file->phony || !file->intermediate) { /* If this is a non-intermediate file, update it and record whether it is newer than THIS_MTIME. */ FILE_TIMESTAMP mtime; dep_status = update_file (file, depth); check_renamed (file); mtime = file_mtime (file); check_renamed (file); if (mtime == NONEXISTENT_MTIME || mtime > this_mtime) *must_make_ptr = 1; } else { /* FILE is an intermediate file. */ FILE_TIMESTAMP mtime; if (!file->phony && file->cmds == 0 && !file->tried_implicit) { if (try_implicit_rule (file, depth)) DBF (DB_IMPLICIT, _("Found an implicit rule for `%s'.\n")); else DBF (DB_IMPLICIT, _("No implicit rule found for `%s'.\n")); file->tried_implicit = 1; } if (file->cmds == 0 && !file->is_target && default_file != 0 && default_file->cmds != 0) { DBF (DB_IMPLICIT, _("Using default commands for `%s'.\n")); file->cmds = default_file->cmds; } /* If the intermediate file actually exists and is newer, then we should remake from it. */ check_renamed (file); mtime = file_mtime (file); check_renamed (file); if (mtime != NONEXISTENT_MTIME && mtime > this_mtime) *must_make_ptr = 1; /* Otherwise, update all non-intermediate files we depend on, if necessary, and see whether any of them is more recent than the file on whose behalf we are checking. */ else { struct dep *lastd; lastd = 0; d = file->deps; while (d != 0) { int maybe_make; if (is_updating (d->file)) { error (NILF, _("Circular %s <- %s dependency dropped."), file->name, d->file->name); if (lastd == 0) { file->deps = d->next; free_dep (d); d = file->deps; } else { lastd->next = d->next; free_dep (d); d = lastd->next; } continue; } d->file->parent = file; maybe_make = *must_make_ptr; dep_status |= check_dep (d->file, depth, this_mtime, &maybe_make); if (! d->ignore_mtime) *must_make_ptr = maybe_make; check_renamed (d->file); if (dep_status != 0 && !keep_going_flag) break; if (d->file->command_state == cs_running || d->file->command_state == cs_deps_running) /* Record that some of FILE's deps are still being made. This tells the upper levels to wait on processing it until the commands are finished. */ set_command_state (file, cs_deps_running); lastd = d; d = d->next; } } } finish_updating (file); return dep_status; } /* Touch FILE. Return zero if successful, one if not. */ #define TOUCH_ERROR(call) return (perror_with_name (call, file->name), 1) static int touch_file (struct file *file) { if (!silent_flag) message (0, "touch %s", file->name); #ifndef NO_ARCHIVES if (ar_name (file->name)) return ar_touch (file->name); else #endif { int fd = open (file->name, O_RDWR | O_CREAT, 0666); if (fd < 0) TOUCH_ERROR ("touch: open: "); else { struct stat statbuf; char buf; int e; EINTRLOOP (e, fstat (fd, &statbuf)); if (e < 0) TOUCH_ERROR ("touch: fstat: "); /* Rewrite character 0 same as it already is. */ if (read (fd, &buf, 1) < 0) TOUCH_ERROR ("touch: read: "); if (lseek (fd, 0L, 0) < 0L) TOUCH_ERROR ("touch: lseek: "); if (write (fd, &buf, 1) < 0) TOUCH_ERROR ("touch: write: "); /* If file length was 0, we just changed it, so change it back. */ if (statbuf.st_size == 0) { (void) close (fd); fd = open (file->name, O_RDWR | O_TRUNC, 0666); if (fd < 0) TOUCH_ERROR ("touch: open: "); } (void) close (fd); } } return 0; } /* Having checked and updated the dependencies of FILE, do whatever is appropriate to remake FILE itself. Return the status from executing FILE's commands. */ static void remake_file (struct file *file) { if (file->cmds == 0) { if (file->phony) /* Phony target. Pretend it succeeded. */ file->update_status = 0; else if (file->is_target) /* This is a nonexistent target file we cannot make. Pretend it was successfully remade. */ file->update_status = 0; else { /* This is a dependency file we cannot remake. Fail. */ if (!rebuilding_makefiles || !file->dontcare) complain (file); file->update_status = 2; } } else { chop_commands (file->cmds); /* The normal case: start some commands. */ if (!touch_flag || file->cmds->any_recurse) { execute_file_commands (file); return; } /* This tells notice_finished_file it is ok to touch the file. */ file->update_status = 0; } /* This does the touching under -t. */ notice_finished_file (file); } /* Return the mtime of a file, given a `struct file'. Caches the time in the struct file to avoid excess stat calls. If the file is not found, and SEARCH is nonzero, VPATH searching and replacement is done. If that fails, a library (-lLIBNAME) is tried and the library's actual name (/lib/libLIBNAME.a, etc.) is substituted into FILE. */ FILE_TIMESTAMP f_mtime (struct file *file, int search) { FILE_TIMESTAMP mtime; /* File's mtime is not known; must get it from the system. */ #ifndef NO_ARCHIVES if (ar_name (file->name)) { /* This file is an archive-member reference. */ char *arname, *memname; struct file *arfile; int arname_used = 0; time_t member_date; /* Find the archive's name. */ ar_parse_name (file->name, &arname, &memname); /* Find the modification time of the archive itself. Also allow for its name to be changed via VPATH search. */ arfile = lookup_file (arname); if (arfile == 0) { arfile = enter_file (arname); arname_used = 1; } mtime = f_mtime (arfile, search); check_renamed (arfile); if (search && strcmp (arfile->hname, arname)) { /* The archive's name has changed. Change the archive-member reference accordingly. */ char *name; unsigned int arlen, memlen; if (!arname_used) { free (arname); arname_used = 1; } arname = arfile->hname; arlen = strlen (arname); memlen = strlen (memname); /* free (file->name); */ name = (char *) xmalloc (arlen + 1 + memlen + 2); bcopy (arname, name, arlen); name[arlen] = '('; bcopy (memname, name + arlen + 1, memlen); name[arlen + 1 + memlen] = ')'; name[arlen + 1 + memlen + 1] = '\0'; /* If the archive was found with GPATH, make the change permanent; otherwise defer it until later. */ if (arfile->name == arfile->hname) rename_file (file, name); else rehash_file (file, name); check_renamed (file); } if (!arname_used) free (arname); free (memname); file->low_resolution_time = 1; if (mtime == NONEXISTENT_MTIME) /* The archive doesn't exist, so its members don't exist either. */ return NONEXISTENT_MTIME; member_date = ar_member_date (file->hname); mtime = (member_date == (time_t) -1 ? NONEXISTENT_MTIME : file_timestamp_cons (file->hname, member_date, 0)); } else #endif { mtime = name_mtime (file->name); if (mtime == NONEXISTENT_MTIME && search && !file->ignore_vpath) { /* If name_mtime failed, search VPATH. */ char *name = file->name; if (vpath_search (&name, &mtime) /* Last resort, is it a library (-lxxx)? */ || (name[0] == '-' && name[1] == 'l' && library_search (&name, &mtime))) { if (mtime != UNKNOWN_MTIME) /* vpath_search and library_search store UNKNOWN_MTIME if they didn't need to do a stat call for their work. */ file->last_mtime = mtime; /* If we found it in VPATH, see if it's in GPATH too; if so, change the name right now; if not, defer until after the dependencies are updated. */ if (gpath_search (name, strlen(name) - strlen(file->name) - 1)) { rename_file (file, name); check_renamed (file); return file_mtime (file); } rehash_file (file, name); check_renamed (file); /* If the result of a vpath search is -o or -W, preserve it. Otherwise, find the mtime of the resulting file. */ if (mtime != OLD_MTIME && mtime != NEW_MTIME) mtime = name_mtime (name); } } } /* Files can have bogus timestamps that nothing newly made will be "newer" than. Updating their dependents could just result in loops. So notify the user of the anomaly with a warning. We only need to do this once, for now. */ if (!clock_skew_detected && mtime != NONEXISTENT_MTIME && mtime != NEW_MTIME && !file->updated) { static FILE_TIMESTAMP adjusted_now; FILE_TIMESTAMP adjusted_mtime = mtime; #if defined(WINDOWS32) || defined(__MSDOS__) /* Experimentation has shown that FAT filesystems can set file times up to 3 seconds into the future! Play it safe. */ #define FAT_ADJ_OFFSET (FILE_TIMESTAMP) 3 FILE_TIMESTAMP adjustment = FAT_ADJ_OFFSET << FILE_TIMESTAMP_LO_BITS; if (ORDINARY_MTIME_MIN + adjustment <= adjusted_mtime) adjusted_mtime -= adjustment; #elif defined(__EMX__) /* FAT filesystems round time to the nearest even second! Allow for any file (NTFS or FAT) to perhaps suffer from this brain damage. */ FILE_TIMESTAMP adjustment = (((FILE_TIMESTAMP_S (adjusted_mtime) & 1) == 0 && FILE_TIMESTAMP_NS (adjusted_mtime) == 0) ? (FILE_TIMESTAMP) 1 << FILE_TIMESTAMP_LO_BITS : 0); #endif /* If the file's time appears to be in the future, update our concept of the present and try once more. */ if (adjusted_now < adjusted_mtime) { int resolution; FILE_TIMESTAMP now = file_timestamp_now (&resolution); adjusted_now = now + (resolution - 1); if (adjusted_now < adjusted_mtime) { #ifdef NO_FLOAT error (NILF, _("Warning: File `%s' has modification time in the future"), file->name); #else double from_now = (FILE_TIMESTAMP_S (mtime) - FILE_TIMESTAMP_S (now) + ((FILE_TIMESTAMP_NS (mtime) - FILE_TIMESTAMP_NS (now)) / 1e9)); error (NILF, _("Warning: File `%s' has modification time %.2g s in the future"), file->name, from_now); #endif clock_skew_detected = 1; } } } /* Store the mtime into all the entries for this file. */ if (file->double_colon) file = file->double_colon; do { /* If this file is not implicit but it is intermediate then it was made so by the .INTERMEDIATE target. If this file has never been built by us but was found now, it existed before make started. So, turn off the intermediate bit so make doesn't delete it, since it didn't create it. */ if (mtime != NONEXISTENT_MTIME && file->command_state == cs_not_started && file->command_state == cs_not_started && !file->tried_implicit && file->intermediate) file->intermediate = 0; file->last_mtime = mtime; file = file->prev; } while (file != 0); return mtime; } /* Return the mtime of the file or archive-member reference NAME. */ /* First, we check with stat(). If the file does not exist, then we return NONEXISTENT_MTIME. If it does, and the symlink check flag is set, then examine each indirection of the symlink and find the newest mtime. This causes one duplicate stat() when -L is being used, but the code is much cleaner. */ static FILE_TIMESTAMP name_mtime (char *name) { FILE_TIMESTAMP mtime; struct stat st; int e; EINTRLOOP (e, stat (name, &st)); if (e == 0) mtime = FILE_TIMESTAMP_STAT_MODTIME (name, st); else if (errno == ENOENT || errno == ENOTDIR) mtime = NONEXISTENT_MTIME; else { perror_with_name ("stat: ", name); return NONEXISTENT_MTIME; } /* If we get here we either found it, or it doesn't exist. If it doesn't exist see if we can use a symlink mtime instead. */ #ifdef MAKE_SYMLINKS #ifndef S_ISLNK # define S_ISLNK(_m) (((_m)&S_IFMT)==S_IFLNK) #endif if (check_symlink_flag) { PATH_VAR (lpath); /* Check each symbolic link segment (if any). Find the latest mtime amongst all of them (and the target file of course). Note that we have already successfully dereferenced all the links above. So, if we run into any error trying to lstat(), or readlink(), or whatever, something bizarre-o happened. Just give up and use whatever mtime we've already computed at that point. */ strcpy (lpath, name); while (1) { FILE_TIMESTAMP ltime; PATH_VAR (lbuf); long llen; char *p; EINTRLOOP (e, lstat (lpath, &st)); if (e) { /* Just take what we have so far. */ if (errno != ENOENT && errno != ENOTDIR) perror_with_name ("lstat: ", lpath); break; } /* If this is not a symlink, we're done (we started with the real file's mtime so we don't need to test it again). */ if (!S_ISLNK (st.st_mode)) break; /* If this mtime is newer than what we had, keep the new one. */ ltime = FILE_TIMESTAMP_STAT_MODTIME (lpath, st); if (ltime > mtime) mtime = ltime; /* Set up to check the file pointed to by this link. */ EINTRLOOP (llen, readlink (lpath, lbuf, GET_PATH_MAX)); if (llen < 0) { /* Eh? Just take what we have. */ perror_with_name ("readlink: ", lpath); break; } lbuf[llen] = '\0'; /* If the target is fully-qualified or the source is just a filename, then the new path is the target. Otherwise it's the source directory plus the target. */ if (lbuf[0] == '/' || (p = strrchr (lpath, '/')) == NULL) strcpy (lpath, lbuf); else if ((p - lpath) + llen + 2 > GET_PATH_MAX) /* Eh? Path too long! Again, just go with what we have. */ break; else /* Create the next step in the symlink chain. */ strcpy (p+1, lbuf); } } #endif return mtime; } /* Search for a library file specified as -lLIBNAME, searching for a suitable library file in the system library directories and the VPATH directories. */ static int library_search (char **lib, FILE_TIMESTAMP *mtime_ptr) { static char *dirs[] = { #ifndef _AMIGA "/lib", "/usr/lib", #endif #if defined(WINDOWS32) && !defined(LIBDIR) /* * This is completely up to the user at product install time. Just define * a placeholder. */ #define LIBDIR "." #endif LIBDIR, /* Defined by configuration. */ 0 }; static char *libpatterns = NULL; char *libname = &(*lib)[2]; /* Name without the `-l'. */ FILE_TIMESTAMP mtime; /* Loop variables for the libpatterns value. */ char *p, *p2; unsigned int len; char *file, **dp; /* If we don't have libpatterns, get it. */ if (!libpatterns) { int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; libpatterns = xstrdup (variable_expand ("$(strip $(.LIBPATTERNS))")); warn_undefined_variables_flag = save; } /* Loop through all the patterns in .LIBPATTERNS, and search on each one. */ p2 = libpatterns; while ((p = find_next_token (&p2, &len)) != 0) { static char *buf = NULL; static unsigned int buflen = 0; static int libdir_maxlen = -1; char *libbuf = variable_expand (""); /* Expand the pattern using LIBNAME as a replacement. */ { char c = p[len]; char *p3, *p4; p[len] = '\0'; p3 = find_percent (p); if (!p3) { /* Give a warning if there is no pattern, then remove the pattern so it's ignored next time. */ error (NILF, _(".LIBPATTERNS element `%s' is not a pattern"), p); for (; len; --len, ++p) *p = ' '; *p = c; continue; } p4 = variable_buffer_output (libbuf, p, p3-p); p4 = variable_buffer_output (p4, libname, strlen (libname)); p4 = variable_buffer_output (p4, p3+1, len - (p3-p)); p[len] = c; } /* Look first for `libNAME.a' in the current directory. */ mtime = name_mtime (libbuf); if (mtime != NONEXISTENT_MTIME) { *lib = xstrdup (libbuf); if (mtime_ptr != 0) *mtime_ptr = mtime; return 1; } /* Now try VPATH search on that. */ file = libbuf; if (vpath_search (&file, mtime_ptr)) { *lib = file; return 1; } /* Now try the standard set of directories. */ if (!buflen) { for (dp = dirs; *dp != 0; ++dp) { int l = strlen (*dp); if (l > libdir_maxlen) libdir_maxlen = l; } buflen = strlen (libbuf); buf = xmalloc(libdir_maxlen + buflen + 2); } else if (buflen < strlen (libbuf)) { buflen = strlen (libbuf); buf = xrealloc (buf, libdir_maxlen + buflen + 2); } for (dp = dirs; *dp != 0; ++dp) { sprintf (buf, "%s/%s", *dp, libbuf); mtime = name_mtime (buf); if (mtime != NONEXISTENT_MTIME) { *lib = xstrdup (buf); if (mtime_ptr != 0) *mtime_ptr = mtime; return 1; } } } return 0; } make-dfsg-3.81.orig/remote-cstms.c0000644000175000017500000002046410416553102017305 0ustar srivastasrivasta/* GNU Make remote job exportation interface to the Customs daemon. THIS CODE IS NOT SUPPORTED BY THE GNU PROJECT. Please do not send bug reports or questions about it to the Make maintainers. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "job.h" #include "filedef.h" #include "commands.h" #include "job.h" #include "debug.h" #include #include #include "customs.h" char *remote_description = "Customs"; /* File name of the Customs `export' client command. A full path name can be used to avoid some path-searching overhead. */ #define EXPORT_COMMAND "/usr/local/bin/export" /* ExportPermit gotten by start_remote_job_p, and used by start_remote_job. */ static ExportPermit permit; /* Normalized path name of the current directory. */ static char *normalized_cwd; /* Call once at startup even if no commands are run. */ void remote_setup (void) { } /* Called before exit. */ void remote_cleanup (void) { } /* Return nonzero if the next job should be done remotely. */ int start_remote_job_p (int first_p) { static int inited = 0; int status; int njobs; if (!inited) { /* Allow the user to turn off job exportation (useful while he is debugging Customs, for example). */ if (getenv ("GNU_MAKE_NO_CUSTOMS") != 0) { inited = -1; return 0; } /* For secure Customs, make is installed setuid root and Customs requires a privileged source port be used. */ make_access (); if (ISDB (DB_JOBS)) Rpc_Debug(1); /* Ping the daemon once to see if it is there. */ inited = Customs_Ping () == RPC_SUCCESS ? 1 : -1; /* Return to normal user access. */ user_access (); if (starting_directory == 0) /* main couldn't figure it out. */ inited = -1; else { /* Normalize the current directory path name to something that should work on all machines exported to. */ normalized_cwd = (char *) xmalloc (GET_PATH_MAX); strcpy (normalized_cwd, starting_directory); if (Customs_NormPath (normalized_cwd, GET_PATH_MAX) < 0) /* Path normalization failure means using Customs won't work, but it's not really an error. */ inited = -1; } } if (inited < 0) return 0; njobs = job_slots_used; if (!first_p) njobs -= 1; /* correction for being called from reap_children() */ /* the first job should run locally, or, if the -l flag is given, we use that as clue as to how many local jobs should be scheduled locally */ if (max_load_average < 0 && njobs == 0 || njobs < max_load_average) return 0; status = Customs_Host (EXPORT_SAME, &permit); if (status != RPC_SUCCESS) { DB (DB_JOBS, (_("Customs won't export: %s\n"), Rpc_ErrorMessage (status))); return 0; } return !CUSTOMS_FAIL (&permit.addr); } /* Start a remote job running the command in ARGV, with environment from ENVP. It gets standard input from STDIN_FD. On failure, return nonzero. On success, return zero, and set *USED_STDIN to nonzero if it will actually use STDIN_FD, zero if not, set *ID_PTR to a unique identification, and set *IS_REMOTE to nonzero if the job is remote, zero if it is local (meaning *ID_PTR is a process ID). */ int start_remote_job (char **argv, char **envp, int stdin_fd, int *is_remote, int *id_ptr, int *used_stdin) { char waybill[MAX_DATA_SIZE], msg[128]; struct hostent *host; struct timeval timeout; struct sockaddr_in sin; int len; int retsock, retport, sock; Rpc_Stat status; int pid; /* Create the return socket. */ retsock = Rpc_UdpCreate (True, 0); if (retsock < 0) { error (NILF, "exporting: Couldn't create return socket."); return 1; } /* Get the return socket's port number. */ len = sizeof (sin); if (getsockname (retsock, (struct sockaddr *) &sin, &len) < 0) { (void) close (retsock); perror_with_name ("exporting: ", "getsockname"); return 1; } retport = sin.sin_port; /* Create the TCP socket for talking to the remote child. */ sock = Rpc_TcpCreate (False, 0); /* Create a WayBill to give to the server. */ len = Customs_MakeWayBill (&permit, normalized_cwd, argv[0], argv, envp, retport, waybill); /* Modify the waybill as if the remote child had done `child_access ()'. */ { WayBill *wb = (WayBill *) waybill; wb->ruid = wb->euid; wb->rgid = wb->egid; } /* Send the request to the server, timing out in 20 seconds. */ timeout.tv_usec = 0; timeout.tv_sec = 20; sin.sin_family = AF_INET; sin.sin_port = htons (Customs_Port ()); sin.sin_addr = permit.addr; status = Rpc_Call (sock, &sin, (Rpc_Proc) CUSTOMS_IMPORT, len, (Rpc_Opaque) waybill, sizeof(msg), (Rpc_Opaque) msg, 1, &timeout); host = gethostbyaddr((char *)&permit.addr, sizeof(permit.addr), AF_INET); if (status != RPC_SUCCESS) { (void) close (retsock); (void) close (sock); error (NILF, "exporting to %s: %s", host ? host->h_name : inet_ntoa (permit.addr), Rpc_ErrorMessage (status)); return 1; } else if (msg[0] != 'O' || msg[1] != 'k' || msg[2] != '\0') { (void) close (retsock); (void) close (sock); error (NILF, "exporting to %s: %s", host ? host->h_name : inet_ntoa (permit.addr), msg); return 1; } else { error (NILF, "*** exported to %s (id %u)", host ? host->h_name : inet_ntoa (permit.addr), permit.id); } fflush (stdout); fflush (stderr); pid = vfork (); if (pid < 0) { /* The fork failed! */ perror_with_name ("vfork", ""); return 1; } else if (pid == 0) { /* Child side. Run `export' to handle the connection. */ static char sock_buf[20], retsock_buf[20], id_buf[20]; static char *new_argv[6] = { EXPORT_COMMAND, "-id", sock_buf, retsock_buf, id_buf, 0 }; /* Set up the arguments. */ (void) sprintf (sock_buf, "%d", sock); (void) sprintf (retsock_buf, "%d", retsock); (void) sprintf (id_buf, "%x", permit.id); /* Get the right stdin. */ if (stdin_fd != 0) (void) dup2 (stdin_fd, 0); /* Unblock signals in the child. */ unblock_sigs (); /* Run the command. */ exec_command (new_argv, envp); } /* Parent side. Return the `export' process's ID. */ (void) close (retsock); (void) close (sock); *is_remote = 0; *id_ptr = pid; *used_stdin = 1; return 0; } /* Get the status of a dead remote child. Block waiting for one to die if BLOCK is nonzero. Set *EXIT_CODE_PTR to the exit status, *SIGNAL_PTR to the termination signal or zero if it exited normally, and *COREDUMP_PTR nonzero if it dumped core. Return the ID of the child that died, 0 if we would have to block and !BLOCK, or < 0 if there were none. */ int remote_status (int *exit_code_ptr, int *signal_ptr, int *coredump_ptr, int block) { return -1; } /* Block asynchronous notification of remote child death. If this notification is done by raising the child termination signal, do not block that signal. */ void block_remote_children (void) { return; } /* Restore asynchronous notification of remote child death. If this is done by raising the child termination signal, do not unblock that signal. */ void unblock_remote_children (void) { return; } /* Send signal SIG to child ID. Return 0 if successful, -1 if not. */ int remote_kill (int id, int sig) { return -1; } make-dfsg-3.81.orig/remote-stub.c0000644000175000017500000000573110416553102017131 0ustar srivastasrivasta/* Template for the remote job exportation interface to GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "job.h" #include "commands.h" char *remote_description = 0; /* Call once at startup even if no commands are run. */ void remote_setup (void) { } /* Called before exit. */ void remote_cleanup (void) { } /* Return nonzero if the next job should be done remotely. */ int start_remote_job_p (int first_p UNUSED) { return 0; } /* Start a remote job running the command in ARGV, with environment from ENVP. It gets standard input from STDIN_FD. On failure, return nonzero. On success, return zero, and set *USED_STDIN to nonzero if it will actually use STDIN_FD, zero if not, set *ID_PTR to a unique identification, and set *IS_REMOTE to zero if the job is local, nonzero if it is remote (meaning *ID_PTR is a process ID). */ int start_remote_job (char **argv UNUSED, char **envp UNUSED, int stdin_fd UNUSED, int *is_remote UNUSED, int *id_ptr UNUSED, int *used_stdin UNUSED) { return -1; } /* Get the status of a dead remote child. Block waiting for one to die if BLOCK is nonzero. Set *EXIT_CODE_PTR to the exit status, *SIGNAL_PTR to the termination signal or zero if it exited normally, and *COREDUMP_PTR nonzero if it dumped core. Return the ID of the child that died, 0 if we would have to block and !BLOCK, or < 0 if there were none. */ int remote_status (int *exit_code_ptr UNUSED, int *signal_ptr UNUSED, int *coredump_ptr UNUSED, int block UNUSED) { errno = ECHILD; return -1; } /* Block asynchronous notification of remote child death. If this notification is done by raising the child termination signal, do not block that signal. */ void block_remote_children (void) { return; } /* Restore asynchronous notification of remote child death. If this is done by raising the child termination signal, do not unblock that signal. */ void unblock_remote_children (void) { return; } /* Send signal SIG to child ID. Return 0 if successful, -1 if not. */ int remote_kill (int id UNUSED, int sig UNUSED) { return -1; } make-dfsg-3.81.orig/rule.c0000644000175000017500000003765310416553102015642 0ustar srivastasrivasta/* Pattern and suffix rule internals for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "dep.h" #include "filedef.h" #include "job.h" #include "commands.h" #include "variable.h" #include "rule.h" static void freerule PARAMS ((struct rule *rule, struct rule *lastrule)); /* Chain of all pattern rules. */ struct rule *pattern_rules; /* Pointer to last rule in the chain, so we can add onto the end. */ struct rule *last_pattern_rule; /* Number of rules in the chain. */ unsigned int num_pattern_rules; /* Maximum number of target patterns of any pattern rule. */ unsigned int max_pattern_targets; /* Maximum number of dependencies of any pattern rule. */ unsigned int max_pattern_deps; /* Maximum length of the name of a dependencies of any pattern rule. */ unsigned int max_pattern_dep_length; /* Pointer to structure for the file .SUFFIXES whose dependencies are the suffixes to be searched. */ struct file *suffix_file; /* Maximum length of a suffix. */ unsigned int maxsuffix; /* Compute the maximum dependency length and maximum number of dependencies of all implicit rules. Also sets the subdir flag for a rule when appropriate, possibly removing the rule completely when appropriate. */ void count_implicit_rule_limits (void) { char *name; int namelen; register struct rule *rule, *lastrule; num_pattern_rules = max_pattern_targets = max_pattern_deps = 0; max_pattern_dep_length = 0; name = 0; namelen = 0; rule = pattern_rules; lastrule = 0; while (rule != 0) { unsigned int ndeps = 0; register struct dep *dep; struct rule *next = rule->next; unsigned int ntargets; ++num_pattern_rules; ntargets = 0; while (rule->targets[ntargets] != 0) ++ntargets; if (ntargets > max_pattern_targets) max_pattern_targets = ntargets; for (dep = rule->deps; dep != 0; dep = dep->next) { unsigned int len = strlen (dep->name); #ifdef VMS char *p = strrchr (dep->name, ']'); char *p2; if (p == 0) p = strrchr (dep->name, ':'); p2 = p != 0 ? strchr (dep->name, '%') : 0; #else char *p = strrchr (dep->name, '/'); char *p2 = p != 0 ? strchr (dep->name, '%') : 0; #endif ndeps++; if (len > max_pattern_dep_length) max_pattern_dep_length = len; if (p != 0 && p2 > p) { /* There is a slash before the % in the dep name. Extract the directory name. */ if (p == dep->name) ++p; if (p - dep->name > namelen) { if (name != 0) free (name); namelen = p - dep->name; name = (char *) xmalloc (namelen + 1); } bcopy (dep->name, name, p - dep->name); name[p - dep->name] = '\0'; /* In the deps of an implicit rule the `changed' flag actually indicates that the dependency is in a nonexistent subdirectory. */ dep->changed = !dir_file_exists_p (name, ""); } else /* This dependency does not reside in a subdirectory. */ dep->changed = 0; } if (ndeps > max_pattern_deps) max_pattern_deps = ndeps; lastrule = rule; rule = next; } if (name != 0) free (name); } /* Create a pattern rule from a suffix rule. TARGET is the target suffix; SOURCE is the source suffix. CMDS are the commands. If TARGET is nil, it means the target pattern should be `(%.o)'. If SOURCE is nil, it means there should be no deps. */ static void convert_suffix_rule (char *target, char *source, struct commands *cmds) { char *targname, *targpercent, *depname; char **names, **percents; struct dep *deps; unsigned int len; if (target == 0) /* Special case: TARGET being nil means we are defining a `.X.a' suffix rule; the target pattern is always `(%.o)'. */ { #ifdef VMS targname = savestring ("(%.obj)", 7); #else targname = savestring ("(%.o)", 5); #endif targpercent = targname + 1; } else { /* Construct the target name. */ len = strlen (target); targname = xmalloc (1 + len + 1); targname[0] = '%'; bcopy (target, targname + 1, len + 1); targpercent = targname; } names = (char **) xmalloc (2 * sizeof (char *)); percents = (char **) alloca (2 * sizeof (char *)); names[0] = targname; percents[0] = targpercent; names[1] = percents[1] = 0; if (source == 0) deps = 0; else { /* Construct the dependency name. */ len = strlen (source); depname = xmalloc (1 + len + 1); depname[0] = '%'; bcopy (source, depname + 1, len + 1); deps = alloc_dep (); deps->name = depname; } create_pattern_rule (names, percents, 0, deps, cmds, 0); } /* Convert old-style suffix rules to pattern rules. All rules for the suffixes on the .SUFFIXES list are converted and added to the chain of pattern rules. */ void convert_to_pattern (void) { register struct dep *d, *d2; register struct file *f; register char *rulename; register unsigned int slen, s2len; /* Compute maximum length of all the suffixes. */ maxsuffix = 0; for (d = suffix_file->deps; d != 0; d = d->next) { register unsigned int namelen = strlen (dep_name (d)); if (namelen > maxsuffix) maxsuffix = namelen; } rulename = (char *) alloca ((maxsuffix * 2) + 1); for (d = suffix_file->deps; d != 0; d = d->next) { /* Make a rule that is just the suffix, with no deps or commands. This rule exists solely to disqualify match-anything rules. */ convert_suffix_rule (dep_name (d), (char *) 0, (struct commands *) 0); f = d->file; if (f->cmds != 0) /* Record a pattern for this suffix's null-suffix rule. */ convert_suffix_rule ("", dep_name (d), f->cmds); /* Record a pattern for each of this suffix's two-suffix rules. */ slen = strlen (dep_name (d)); bcopy (dep_name (d), rulename, slen); for (d2 = suffix_file->deps; d2 != 0; d2 = d2->next) { s2len = strlen (dep_name (d2)); if (slen == s2len && streq (dep_name (d), dep_name (d2))) continue; bcopy (dep_name (d2), rulename + slen, s2len + 1); f = lookup_file (rulename); if (f == 0 || f->cmds == 0) continue; if (s2len == 2 && rulename[slen] == '.' && rulename[slen + 1] == 'a') /* A suffix rule `.X.a:' generates the pattern rule `(%.o): %.X'. It also generates a normal `%.a: %.X' rule below. */ convert_suffix_rule ((char *) 0, /* Indicates `(%.o)'. */ dep_name (d), f->cmds); /* The suffix rule `.X.Y:' is converted to the pattern rule `%.Y: %.X'. */ convert_suffix_rule (dep_name (d2), dep_name (d), f->cmds); } } } /* Install the pattern rule RULE (whose fields have been filled in) at the end of the list (so that any rules previously defined will take precedence). If this rule duplicates a previous one (identical target and dependencies), the old one is replaced if OVERRIDE is nonzero, otherwise this new one is thrown out. When an old rule is replaced, the new one is put at the end of the list. Return nonzero if RULE is used; zero if not. */ int new_pattern_rule (struct rule *rule, int override) { register struct rule *r, *lastrule; register unsigned int i, j; rule->in_use = 0; rule->terminal = 0; rule->next = 0; /* Search for an identical rule. */ lastrule = 0; for (r = pattern_rules; r != 0; lastrule = r, r = r->next) for (i = 0; rule->targets[i] != 0; ++i) { for (j = 0; r->targets[j] != 0; ++j) if (!streq (rule->targets[i], r->targets[j])) break; if (r->targets[j] == 0) /* All the targets matched. */ { register struct dep *d, *d2; for (d = rule->deps, d2 = r->deps; d != 0 && d2 != 0; d = d->next, d2 = d2->next) if (!streq (dep_name (d), dep_name (d2))) break; if (d == 0 && d2 == 0) { /* All the dependencies matched. */ if (override) { /* Remove the old rule. */ freerule (r, lastrule); /* Install the new one. */ if (pattern_rules == 0) pattern_rules = rule; else last_pattern_rule->next = rule; last_pattern_rule = rule; /* We got one. Stop looking. */ goto matched; } else { /* The old rule stays intact. Destroy the new one. */ freerule (rule, (struct rule *) 0); return 0; } } } } matched:; if (r == 0) { /* There was no rule to replace. */ if (pattern_rules == 0) pattern_rules = rule; else last_pattern_rule->next = rule; last_pattern_rule = rule; } return 1; } /* Install an implicit pattern rule based on the three text strings in the structure P points to. These strings come from one of the arrays of default implicit pattern rules. TERMINAL specifies what the `terminal' field of the rule should be. */ void install_pattern_rule (struct pspec *p, int terminal) { register struct rule *r; char *ptr; r = (struct rule *) xmalloc (sizeof (struct rule)); r->targets = (char **) xmalloc (2 * sizeof (char *)); r->suffixes = (char **) xmalloc (2 * sizeof (char *)); r->lens = (unsigned int *) xmalloc (2 * sizeof (unsigned int)); r->targets[1] = 0; r->suffixes[1] = 0; r->lens[1] = 0; r->lens[0] = strlen (p->target); /* These will all be string literals, but we malloc space for them anyway because somebody might want to free them later on. */ r->targets[0] = savestring (p->target, r->lens[0]); r->suffixes[0] = find_percent (r->targets[0]); if (r->suffixes[0] == 0) /* Programmer-out-to-lunch error. */ abort (); else ++r->suffixes[0]; ptr = p->dep; r->deps = (struct dep *) multi_glob (parse_file_seq (&ptr, '\0', sizeof (struct dep), 1), sizeof (struct dep)); if (new_pattern_rule (r, 0)) { r->terminal = terminal; r->cmds = (struct commands *) xmalloc (sizeof (struct commands)); r->cmds->fileinfo.filenm = 0; r->cmds->fileinfo.lineno = 0; /* These will all be string literals, but we malloc space for them anyway because somebody might want to free them later. */ r->cmds->commands = xstrdup (p->commands); r->cmds->command_lines = 0; } } /* Free all the storage used in RULE and take it out of the pattern_rules chain. LASTRULE is the rule whose next pointer points to RULE. */ static void freerule (struct rule *rule, struct rule *lastrule) { struct rule *next = rule->next; register unsigned int i; register struct dep *dep; for (i = 0; rule->targets[i] != 0; ++i) free (rule->targets[i]); dep = rule->deps; while (dep) { struct dep *t; t = dep->next; /* We might leak dep->name here, but I'm not sure how to fix this: I think that pointer might be shared (e.g., in the file hash?) */ dep->name = 0; /* Make sure free_dep does not free name. */ free_dep (dep); dep = t; } free ((char *) rule->targets); free ((char *) rule->suffixes); free ((char *) rule->lens); /* We can't free the storage for the commands because there are ways that they could be in more than one place: * If the commands came from a suffix rule, they could also be in the `struct file's for other suffix rules or plain targets given on the same makefile line. * If two suffixes that together make a two-suffix rule were each given twice in the .SUFFIXES list, and in the proper order, two identical pattern rules would be created and the second one would be discarded here, but both would contain the same `struct commands' pointer from the `struct file' for the suffix rule. */ free ((char *) rule); if (pattern_rules == rule) if (lastrule != 0) abort (); else pattern_rules = next; else if (lastrule != 0) lastrule->next = next; if (last_pattern_rule == rule) last_pattern_rule = lastrule; } /* Create a new pattern rule with the targets in the nil-terminated array TARGETS. If TARGET_PERCENTS is not nil, it is an array of pointers into the elements of TARGETS, where the `%'s are. The new rule has dependencies DEPS and commands from COMMANDS. It is a terminal rule if TERMINAL is nonzero. This rule overrides identical rules with different commands if OVERRIDE is nonzero. The storage for TARGETS and its elements is used and must not be freed until the rule is destroyed. The storage for TARGET_PERCENTS is not used; it may be freed. */ void create_pattern_rule (char **targets, char **target_percents, int terminal, struct dep *deps, struct commands *commands, int override) { unsigned int max_targets, i; struct rule *r = (struct rule *) xmalloc (sizeof (struct rule)); r->cmds = commands; r->deps = deps; r->targets = targets; max_targets = 2; r->lens = (unsigned int *) xmalloc (2 * sizeof (unsigned int)); r->suffixes = (char **) xmalloc (2 * sizeof (char *)); for (i = 0; targets[i] != 0; ++i) { if (i == max_targets - 1) { max_targets += 5; r->lens = (unsigned int *) xrealloc ((char *) r->lens, max_targets * sizeof (unsigned int)); r->suffixes = (char **) xrealloc ((char *) r->suffixes, max_targets * sizeof (char *)); } r->lens[i] = strlen (targets[i]); r->suffixes[i] = (target_percents == 0 ? find_percent (targets[i]) : target_percents[i]) + 1; if (r->suffixes[i] == 0) abort (); } if (i < max_targets - 1) { r->lens = (unsigned int *) xrealloc ((char *) r->lens, (i + 1) * sizeof (unsigned int)); r->suffixes = (char **) xrealloc ((char *) r->suffixes, (i + 1) * sizeof (char *)); } if (new_pattern_rule (r, override)) r->terminal = terminal; } /* Print the data base of rules. */ static void /* Useful to call from gdb. */ print_rule (struct rule *r) { register unsigned int i; register struct dep *d; for (i = 0; r->targets[i] != 0; ++i) { fputs (r->targets[i], stdout); if (r->targets[i + 1] != 0) putchar (' '); else putchar (':'); } if (r->terminal) putchar (':'); for (d = r->deps; d != 0; d = d->next) printf (" %s", dep_name (d)); putchar ('\n'); if (r->cmds != 0) print_commands (r->cmds); } void print_rule_data_base (void) { register unsigned int rules, terminal; register struct rule *r; puts (_("\n# Implicit Rules")); rules = terminal = 0; for (r = pattern_rules; r != 0; r = r->next) { ++rules; putchar ('\n'); print_rule (r); if (r->terminal) ++terminal; } if (rules == 0) puts (_("\n# No implicit rules.")); else { printf (_("\n# %u implicit rules, %u"), rules, terminal); #ifndef NO_FLOAT printf (" (%.1f%%)", (double) terminal / (double) rules * 100.0); #else { int f = (terminal * 1000 + 5) / rules; printf (" (%d.%d%%)", f/10, f%10); } #endif puts (_(" terminal.")); } if (num_pattern_rules != rules) { /* This can happen if a fatal error was detected while reading the makefiles and thus count_implicit_rule_limits wasn't called yet. */ if (num_pattern_rules != 0) fatal (NILF, _("BUG: num_pattern_rules wrong! %u != %u"), num_pattern_rules, rules); } } make-dfsg-3.81.orig/rule.h0000644000175000017500000000451510416553102015636 0ustar srivastasrivasta/* Definitions for using pattern rules in GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Structure used for pattern rules. */ struct rule { struct rule *next; char **targets; /* Targets of the rule. */ unsigned int *lens; /* Lengths of each target. */ char **suffixes; /* Suffixes (after `%') of each target. */ struct dep *deps; /* Dependencies of the rule. */ struct commands *cmds; /* Commands to execute. */ char terminal; /* If terminal (double-colon). */ char in_use; /* If in use by a parent pattern_search. */ }; /* For calling install_pattern_rule. */ struct pspec { char *target, *dep, *commands; }; extern struct rule *pattern_rules; extern struct rule *last_pattern_rule; extern unsigned int num_pattern_rules; extern unsigned int max_pattern_deps; extern unsigned int max_pattern_targets; extern unsigned int max_pattern_dep_length; extern struct file *suffix_file; extern unsigned int maxsuffix; extern void install_pattern_rule PARAMS ((struct pspec *p, int terminal)); extern int new_pattern_rule PARAMS ((struct rule *rule, int override)); extern void count_implicit_rule_limits PARAMS ((void)); extern void convert_to_pattern PARAMS ((void)); extern void create_pattern_rule PARAMS ((char **targets, char **target_percents, int terminal, struct dep *deps, struct commands *commands, int override)); make-dfsg-3.81.orig/signame.c0000644000175000017500000001556210416553102016311 0ustar srivastasrivasta/* Convert between signal names and numbers. Copyright (C) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" /* If the system provides strsignal, we don't need it. */ #if !HAVE_STRSIGNAL /* If the system provides sys_siglist, we'll use that. Otherwise create our own. */ #if !HAVE_DECL_SYS_SIGLIST /* Some systems do not define NSIG in . */ #ifndef NSIG #ifdef _NSIG #define NSIG _NSIG #else #define NSIG 32 #endif #endif /* There is too much variation in Sys V signal numbers and names, so we must initialize them at runtime. */ static const char *undoc; static const char *sys_siglist[NSIG]; /* Table of abbreviations for signals. Note: A given number can appear more than once with different abbreviations. */ #define SIG_TABLE_SIZE (NSIG*2) typedef struct { int number; const char *abbrev; } num_abbrev; static num_abbrev sig_table[SIG_TABLE_SIZE]; /* Number of elements of sig_table used. */ static int sig_table_nelts = 0; /* Enter signal number NUMBER into the tables with ABBREV and NAME. */ static void init_sig (int number, const char *abbrev, const char *name) { /* If this value is ever greater than NSIG it seems like it'd be a bug in the system headers, but... better safe than sorry. We know, for example, that this isn't always true on VMS. */ if (number >= 0 && number < NSIG) sys_siglist[number] = name; if (sig_table_nelts < SIG_TABLE_SIZE) { sig_table[sig_table_nelts].number = number; sig_table[sig_table_nelts++].abbrev = abbrev; } } static int signame_init (void) { int i; undoc = xstrdup (_("unknown signal")); /* Initialize signal names. */ for (i = 0; i < NSIG; i++) sys_siglist[i] = undoc; /* Initialize signal names. */ #if defined (SIGHUP) init_sig (SIGHUP, "HUP", _("Hangup")); #endif #if defined (SIGINT) init_sig (SIGINT, "INT", _("Interrupt")); #endif #if defined (SIGQUIT) init_sig (SIGQUIT, "QUIT", _("Quit")); #endif #if defined (SIGILL) init_sig (SIGILL, "ILL", _("Illegal Instruction")); #endif #if defined (SIGTRAP) init_sig (SIGTRAP, "TRAP", _("Trace/breakpoint trap")); #endif /* If SIGIOT == SIGABRT, we want to print it as SIGABRT because SIGABRT is in ANSI and POSIX.1 and SIGIOT isn't. */ #if defined (SIGABRT) init_sig (SIGABRT, "ABRT", _("Aborted")); #endif #if defined (SIGIOT) init_sig (SIGIOT, "IOT", _("IOT trap")); #endif #if defined (SIGEMT) init_sig (SIGEMT, "EMT", _("EMT trap")); #endif #if defined (SIGFPE) init_sig (SIGFPE, "FPE", _("Floating point exception")); #endif #if defined (SIGKILL) init_sig (SIGKILL, "KILL", _("Killed")); #endif #if defined (SIGBUS) init_sig (SIGBUS, "BUS", _("Bus error")); #endif #if defined (SIGSEGV) init_sig (SIGSEGV, "SEGV", _("Segmentation fault")); #endif #if defined (SIGSYS) init_sig (SIGSYS, "SYS", _("Bad system call")); #endif #if defined (SIGPIPE) init_sig (SIGPIPE, "PIPE", _("Broken pipe")); #endif #if defined (SIGALRM) init_sig (SIGALRM, "ALRM", _("Alarm clock")); #endif #if defined (SIGTERM) init_sig (SIGTERM, "TERM", _("Terminated")); #endif #if defined (SIGUSR1) init_sig (SIGUSR1, "USR1", _("User defined signal 1")); #endif #if defined (SIGUSR2) init_sig (SIGUSR2, "USR2", _("User defined signal 2")); #endif /* If SIGCLD == SIGCHLD, we want to print it as SIGCHLD because that is what is in POSIX.1. */ #if defined (SIGCHLD) init_sig (SIGCHLD, "CHLD", _("Child exited")); #endif #if defined (SIGCLD) init_sig (SIGCLD, "CLD", _("Child exited")); #endif #if defined (SIGPWR) init_sig (SIGPWR, "PWR", _("Power failure")); #endif #if defined (SIGTSTP) init_sig (SIGTSTP, "TSTP", _("Stopped")); #endif #if defined (SIGTTIN) init_sig (SIGTTIN, "TTIN", _("Stopped (tty input)")); #endif #if defined (SIGTTOU) init_sig (SIGTTOU, "TTOU", _("Stopped (tty output)")); #endif #if defined (SIGSTOP) init_sig (SIGSTOP, "STOP", _("Stopped (signal)")); #endif #if defined (SIGXCPU) init_sig (SIGXCPU, "XCPU", _("CPU time limit exceeded")); #endif #if defined (SIGXFSZ) init_sig (SIGXFSZ, "XFSZ", _("File size limit exceeded")); #endif #if defined (SIGVTALRM) init_sig (SIGVTALRM, "VTALRM", _("Virtual timer expired")); #endif #if defined (SIGPROF) init_sig (SIGPROF, "PROF", _("Profiling timer expired")); #endif #if defined (SIGWINCH) /* "Window size changed" might be more accurate, but even if that is all that it means now, perhaps in the future it will be extended to cover other kinds of window changes. */ init_sig (SIGWINCH, "WINCH", _("Window changed")); #endif #if defined (SIGCONT) init_sig (SIGCONT, "CONT", _("Continued")); #endif #if defined (SIGURG) init_sig (SIGURG, "URG", _("Urgent I/O condition")); #endif #if defined (SIGIO) /* "I/O pending" has also been suggested. A disadvantage is that signal only happens when the process has asked for it, not everytime I/O is pending. Another disadvantage is the confusion from giving it a different name than under Unix. */ init_sig (SIGIO, "IO", _("I/O possible")); #endif #if defined (SIGWIND) init_sig (SIGWIND, "WIND", _("SIGWIND")); #endif #if defined (SIGPHONE) init_sig (SIGPHONE, "PHONE", _("SIGPHONE")); #endif #if defined (SIGPOLL) init_sig (SIGPOLL, "POLL", _("I/O possible")); #endif #if defined (SIGLOST) init_sig (SIGLOST, "LOST", _("Resource lost")); #endif #if defined (SIGDANGER) init_sig (SIGDANGER, "DANGER", _("Danger signal")); #endif #if defined (SIGINFO) init_sig (SIGINFO, "INFO", _("Information request")); #endif #if defined (SIGNOFP) init_sig (SIGNOFP, "NOFP", _("Floating point co-processor not available")); #endif return 1; } #endif /* HAVE_DECL_SYS_SIGLIST */ char * strsignal (int signal) { static char buf[] = "Signal 12345678901234567890"; #if ! HAVE_DECL_SYS_SIGLIST # if HAVE_DECL__SYS_SIGLIST # define sys_siglist _sys_siglist # elif HAVE_DECL___SYS_SIGLIST # define sys_siglist __sys_siglist # else static char sig_initted = 0; if (!sig_initted) sig_initted = signame_init (); # endif #endif if (signal > 0 || signal < NSIG) return (char *) sys_siglist[signal]; sprintf (buf, "Signal %d", signal); return buf; } #endif /* HAVE_STRSIGNAL */ make-dfsg-3.81.orig/strcache.c0000644000175000017500000001327410416553102016460 0ustar srivastasrivasta/* Constant string caching for GNU Make. Copyright (C) 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include "hash.h" /* The size (in bytes) of each cache buffer. */ #define CACHE_BUFFER_SIZE (4096) /* A string cached here will never be freed, so we don't need to worry about reference counting. We just store the string, and then remember it in a hash so it can be looked up again. */ struct strcache { struct strcache *next; /* The next block of strings. */ char *end; /* Pointer to the beginning of the free space. */ int count; /* # of strings in this buffer (for stats). */ int bytesfree; /* The amount of the buffer that is free. */ char buffer[1]; /* The buffer comes after this. */ }; static int bufsize = CACHE_BUFFER_SIZE; static struct strcache *strcache = NULL; static struct strcache * new_cache() { struct strcache *new; new = (struct strcache *) xmalloc (sizeof (*new) + bufsize); new->end = new->buffer; new->count = 0; new->bytesfree = bufsize; new->next = strcache; strcache = new; return new; } static const char * add_string(const char *str, int len) { struct strcache *best = NULL; struct strcache *sp; const char *res; /* If the string we want is too large to fit into a single buffer, then we're screwed; nothing will ever fit! Change the maximum size of the cache to be big enough. */ if (len > bufsize) bufsize = len * 2; /* First, find a cache with enough free space. We always look through all the blocks and choose the one with the best fit (the one that leaves the least amount of space free). */ for (sp = strcache; sp != NULL; sp = sp->next) if (sp->bytesfree > len && (!best || best->bytesfree > sp->bytesfree)) best = sp; /* If nothing is big enough, make a new cache. */ if (!best) best = new_cache(); assert (best->bytesfree > len); /* Add the string to the best cache. */ res = best->end; memcpy (best->end, str, len); best->end += len; *(best->end++) = '\0'; best->bytesfree -= len + 1; ++best->count; return res; } /* Hash table of strings in the cache. */ static unsigned long str_hash_1 (const void *key) { return_ISTRING_HASH_1 ((const char *) key); } static unsigned long str_hash_2 (const void *key) { return_ISTRING_HASH_2 ((const char *) key); } static int str_hash_cmp (const void *x, const void *y) { return_ISTRING_COMPARE ((const char *) x, (const char *) y); } static struct hash_table strings; static const char * add_hash (const char *str, int len) { /* Look up the string in the hash. If it's there, return it. */ char **slot = (char **) hash_find_slot (&strings, str); const char *key = *slot; if (!HASH_VACANT (key)) return key; /* Not there yet so add it to a buffer, then into the hash table. */ key = add_string (str, len); hash_insert_at (&strings, key, slot); return key; } /* Returns true if the string is in the cache; false if not. */ int strcache_iscached (const char *str) { struct strcache *sp; for (sp = strcache; sp != 0; sp = sp->next) if (str >= sp->buffer && str < sp->end) return 1; return 0; } /* If the string is already in the cache, return a pointer to the cached version. If not, add it then return a pointer to the cached version. Note we do NOT take control of the string passed in. */ const char * strcache_add (const char *str) { return add_hash (str, strlen (str)); } const char * strcache_add_len (const char *str, int len) { char *key = alloca (len + 1); memcpy (key, str, len); key[len] = '\0'; return add_hash (key, len); } int strcache_setbufsize(int size) { if (size > bufsize) bufsize = size; return bufsize; } void strcache_init (void) { hash_init (&strings, 1000, str_hash_1, str_hash_2, str_hash_cmp); } /* Generate some stats output. */ void strcache_print_stats (const char *prefix) { int numbuffs = 0, numstrs = 0; int totsize = 0, avgsize, maxsize = 0, minsize = bufsize; int totfree = 0, avgfree, maxfree = 0, minfree = bufsize; const struct strcache *sp; for (sp = strcache; sp != NULL; sp = sp->next) { int bf = sp->bytesfree; int sz = (sp->end - sp->buffer) + bf; ++numbuffs; numstrs += sp->count; totsize += sz; maxsize = (sz > maxsize ? sz : maxsize); minsize = (sz < minsize ? sz : minsize); totfree += bf; maxfree = (bf > maxfree ? bf : maxfree); minfree = (bf < minfree ? bf : minfree); } avgsize = numbuffs ? (int)(totsize / numbuffs) : 0; avgfree = numbuffs ? (int)(totfree / numbuffs) : 0; printf (_("\n%s # of strings in strcache: %d\n"), prefix, numstrs); printf (_("%s # of strcache buffers: %d\n"), prefix, numbuffs); printf (_("%s strcache size: total = %d / max = %d / min = %d / avg = %d\n"), prefix, totsize, maxsize, minsize, avgsize); printf (_("%s strcache free: total = %d / max = %d / min = %d / avg = %d\n"), prefix, totfree, maxfree, minfree, avgfree); } make-dfsg-3.81.orig/subproc.bat0000644000175000017500000000175610416553102016667 0ustar srivastasrivasta@echo off rem Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, rem 2005, 2006 Free Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under rem the terms of the GNU General Public License as published by the Free rem Software Foundation; either version 2, or (at your option) any later rem version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT rem ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or rem FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for rem more details. rem You should have received a copy of the GNU General Public License along rem with GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. cd w32\subproc set MAKE=%2 set MAKEFILE=%1 if x%2 == x set MAKE=nmake %MAKE% /f %MAKEFILE% cd ..\.. make-dfsg-3.81.orig/tests/0000755000175000017500000000000010416553102015653 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/COPYING0000644000175000017500000004307610416553102016720 0ustar srivastasrivasta GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. make-dfsg-3.81.orig/tests/ChangeLog0000644000175000017500000007036410416553102017437 0ustar srivastasrivasta2006-04-01 Paul D. Smith * scripts/functions/realpath: Don't run tests with multiple initial slashes on Windows: those paths mean something different. 2006-03-19 Paul D. Smith * scripts/features/parallelism: Test that the jobserver is properly managed when we have to re-exec the master instance of make. 2006-03-17 Boris Kolpackov * scripts/features/statipattrules: Add tests for bug #16053. 2006-03-09 Paul Smith * scripts/features/escape: Use "pre:" not "p:" to avoid conflicts with DOS drive letters. Fixes Savannah bug #15947. * test_driver.pl (run_each_test): Set the status properly even when a test fails to execute. Fixes Savannah bug #15942. * scripts/functions/foreach: Use a different environment variable other than PATH to avoid differences with Windows platforms. Fixes Savannah bug #15938. 2006-03-05 Paul D. Smith * run_make_tests.pl (set_more_defaults): Add CYGWIN_NT as a port type W32. Fixed Savannah bug #15937. * scripts/features/default_names: Don't call error() when the test fails. Fixes Savannah bug #15941. 2006-02-17 Paul D. Smith * scripts/features/targetvars: Test a complex construction which guarantees that we have to merge variable lists of different sizes. Tests for Savannah bug #15757. 2006-02-15 Paul D. Smith * scripts/functions/error: Make sure filename/lineno information is related to where the error is expanded, not where it's set. * scripts/functions/warning: Ditto. * scripts/functions/foreach: Check for different error conditions. * scripts/functions/word: Ditto. * scripts/variables/negative: Test some variable reference failure conditions. * scripts/options/warn-undefined-variables: Test the --warn-undefined-variables flag. 2006-02-09 Paul D. Smith * run_make_tests.pl (set_more_defaults): Update valgrind support for newer versions. * test_driver.pl (toplevel): Skip all hidden files/directories (ones beginning with "."). * scripts/functions/andor: Tests for $(and ..) and $(or ...) functions. 2006-02-08 Boris Kolpackov * scripts/features/parallelism: Add a test for bug #15641. 2006-02-06 Paul D. Smith * scripts/options/dash-W: Add a test for bug #15341. 2006-01-03 Paul D. Smith * scripts/variables/automatic: Add a test for bug #8154. * README: Update to reflect the current state of the test suite. 2005-12-12 Paul D. Smith * scripts/features/parallelism, scripts/functions/wildcard, scripts/targets/FORCE, scripts/targets/PHONY, scripts/targets/SILENT: Use the default setting for $delete_command. Fixes bug #15085. * run_make_tests.pl (get_this_pwd) [VMS]: Use -no_ask with delete_file. 2005-12-11 Paul D. Smith * scripts/misc/general4: Test implicit rules with '$' in the prereq list & prereq patterns. * scripts/features/se_implicit: Add in .SECONDEXPANSION settings. 2005-12-09 Boris Kolpackov * scripts/features/patternrules: Add a test for bug #13022. 2005-12-07 Boris Kolpackov * scripts/features/double_colon: Add a test for bug #14334. 2005-11-17 Boris Kolpackov * scripts/functions/flavor: Add a test for the flavor function. 2005-11-14 Boris Kolpackov * scripts/variables/INCLUDE_DIRS: Add a test for the .INCLUDE_DIRS special variable. 2005-10-24 Paul D. Smith * scripts/misc/general4: Test '$$' in prerequisites list. * scripts/features/statipattrules: Rewrite to use run_make_test(). Add various static pattern info. * scripts/features/se_statpat: Enable .SECONDEXPANSION target. * scripts/features/se_explicit: Add tests for handling '$$' in prerequisite lists with and without setting .SECONDEXPANSION. * scripts/features/order_only: Convert to run_make_test(). * run_make_tests.pl (set_more_defaults): If we can't get the value of $(MAKE) from make, then fatal immediately. 2005-08-31 Paul D. Smith * run_make_tests.pl (get_this_pwd): Require the POSIX module (in an eval to trap errors) and if it exists, use POSIX::getcwd to find the working directory. If it doesn't exist, go back to the previous methods. This tries to be more accurate on Windows systems. 2005-08-29 Paul D. Smith * scripts/functions/abspath: Add some text to the error messages to get a better idea of what's wrong. Make warnings instead of errors. * scripts/features/patspecific_vars: Don't use "test", which is UNIX specific. Print the values and let the test script match them. 2005-08-25 Paul Smith * scripts/variables/SHELL: Use a /./ prefix instead of //: the former works better with non-UNIX environments. Fixes Savannah bug #14129. 2005-08-13 Boris Kolpackov * scripts/functions/wildcard: Wrap calls to $(wildcard ) with $(sort) so that the resulting order is no longer filesystem- dependant. 2005-08-10 Boris Kolpackov * scripts/features/statipattrules: Add a test for Savannah bug #13881. 2005-08-07 Paul D. Smith * scripts/features/parallelism: Add a test for a bug reported by Michael Matz (matz@suse.de) in which make exits without waiting for all its children in some situations during parallel builds. 2005-07-08 Paul D. Smith * test_driver.pl: Reset the environment to a clean value every time before we invoke make. I'm suspicious that the environment isn't handled the same way in Windows as it is in UNIX, and some variables are leaking out beyond the tests they are intended for. Create an %extraENV hash tests can set to add more env. vars. * tests/scripts/features/export: Change to use %extraENV. * tests/scripts/functions/eval: Ditto. * tests/scripts/functions/origin: Ditto. * tests/scripts/options/dash-e: Ditto. * tests/scripts/variables/SHELL: Ditto. 2005-06-27 Paul D. Smith * scripts/options/dash-W: Use 'echo >>' instead of touch to update files. * scripts/features/reinvoke: Rewrite to be safer on systems with subsecond timestamps. * scripts/features/patternrules: False exits with different error codes on different systems (for example, Linux => 1, Solaris => 255). * scripts/options/dash-W: Set the timestamp to foo.x in the future, to be sure it will be considered updated when it's remade. 2005-06-26 Paul D. Smith * scripts/functions/shell: New test suite for the shell function. 2005-06-25 Paul D. Smith * scripts/features/include: Test include/-include/sinclude with no arguments. Tests fix for Savannah bug #1761. * scripts/misc/general3: Implement comprehensive testing of backslash-newline behavior in command scripts: various types of quoting, fast path / slow path, etc. Tests fix for Savannah bug #1332. * scripts/options/symlinks: Test symlinks to non-existent files. Tests fix for Savannah bug #13280. * scripts/misc/general3: Test semicolons in variable references. Tests fix for Savannah bug #1454. * scripts/variables/MAKE_RESTARTS: New file: test the MAKE_RESTARTS variable. * scripts/options/dash-B: Test re-exec doesn't loop infinitely. Tests fix for Savannah bug #7566. * scripts/options/dash-W: New file: test the -W flag, including re-exec infinite looping. 2005-06-12 Paul D. Smith * scripts/misc/close_stdout: Add a test for Savannah bug #1328. This test only works on systems that have /dev/full (e.g., Linux). 2005-06-09 Paul D. Smith * scripts/functions/foreach: Add a test for Savannah bug #11913. 2005-05-31 Boris Kolpackov * scripts/features/include: Add a test for Savannah bug #13216. * scripts/features/patternrules: Add a test for Savannah bug #13218. 2005-05-13 Paul D. Smith * scripts/features/conditionals: Add tests for the new if... else if... endif syntax. 2005-05-03 Paul D. Smith * scripts/variables/DEFAULT_GOAL: Rename DEFAULT_TARGET to DEFAULT_GOAL. 2005-05-02 Paul D. Smith * scripts/features/parallelism: Add a test for exporting recursive variables containing $(shell ) calls. Rewrite this script to use run_make_test() everywhere. 2005-04-07 Paul D. Smith * scripts/targets/SECONDARY: Add a test for Savannah bug #12331. 2005-03-15 Boris Kolpackov * scripts/variables/automatic: Add a test for Savannah bug #12320. 2005-03-10 Boris Kolpackov * scripts/features/patternrules: Add a test for Savannah bug #12267. 2005-03-09 Boris Kolpackov * scripts/variables/DEFAULT_TARGET: Add a test for Savannah bug #12266. 2005-03-04 Boris Kolpackov * scripts/features/patternrules: Add a test for Savannah bug #12202. 2005-03-03 Boris Kolpackov * scripts/features/se_implicit: Add a test for stem termination bug. Add a test for stem triple-expansion bug. * scripts/features/se_statpat: Add a test for stem triple-expansion bug. * scripts/features/statipattrules: Change test #4 to reflect new way empty prerequisite list is handled. 2005-03-01 Boris Kolpackov * scripts/features/statipattrules: Add a test for Savannah bug #12180. 2005-02-28 Paul D. Smith * scripts/options/dash-q: Add a test for Savannah bug # 7144. * scripts/options/symlinks: New file to test checking of symlink timestamps. Can't use filename dash-L because it conflicts with dash-l on case-insensitive filesystems. * scripts/variables/MAKEFILE_LIST, scripts/variables/MFILE_LIST: Rename MAKEFILE_LIST test to MFILE_LIST, for systems that need 8.3 unique filenames. 2005-02-28 Boris Kolpackov * scripts/variables/DEFAULT_TARGET: Test the .DEFAULT_TARGET special variable. 2005-02-27 Boris Kolpackov * scripts/features/se_explicit: Test the second expansion in explicit rules. * scripts/features/se_implicit: Test the second expansion in implicit rules. * scripts/features/se_statpat: Test the second expansion in static pattern rules. * scripts/variables/automatic: Fix to work with the second expansion. * scripts/misc/general4: Add a test for bug #12091. 2005-02-27 Paul D. Smith * scripts/functions/eval: Check that eval of targets within command scripts fails. See Savannah bug # 12124. 2005-02-26 Paul D. Smith * test_driver.pl (compare_output): If a basic comparison of the log and answer doesn't match, try harder: change all backslashes to slashes and all CRLF to LF. This helps on DOS/Windows systems. 2005-02-09 Paul D. Smith * scripts/features/recursion: Test command line variable settings: only one instance of a given variable should be provided. 2004-11-30 Boris Kolpackov * tests/scripts/functions/abspath: New file: test `abspath' built-in function. * tests/scripts/functions/realpath: New file: test `realpath' built-in function. 2004-11-28 Paul D. Smith * scripts/options/dash-C [WINDOWS32]: Add a test for bug #10252; this doesn't really test anything useful in UNIX but... * scripts/variables/SHELL: New file: test proper handling of SHELL according to POSIX rules. Fixes bug #1276. 2004-10-21 Boris Kolpackov * scripts/functions/word: Test $(firstword ) and $(lastword ). 2004-10-05 Boris Kolpackov * scripts/features/patspecific_vars: Test simple/recursive variable expansion. 2004-09-28 Boris Kolpackov * scripts/features/include: Test dontcare flag inheritance when rebuilding makefiles. 2004-09-27 Boris Kolpackov * scripts/features/patspecific_vars: Test exported variables. 2004-09-22 Paul D. Smith * run_make_tests.pl (run_make_test): Don't add newlines to the makestring or answer if they are completely empty. * scripts/features/patternrules: Rename from implicit_prereq_eval. * scripts/test_template: Rework the template. 2004-09-21 Boris Kolpackov * run_make_tests.pl: Change `#!/usr/local/bin/perl' to be `#!/usr/bin/env perl'. * scripts/features/implicit_prereq_eval: Test implicit rule prerequisite evaluation code. 2004-09-21 Paul D. Smith * run_make_tests.pl (run_make_test): Enhance to allow the make string to be undef: in that case it reuses the previous make string. Allows multiple tests on the same makefile. * scripts/variables/flavors: Add some tests for prefix characters interacting with define/endef variables. 2004-09-20 Paul D. Smith * scripts/functions/substitution: Rewrite to use run_make_test() interface, and add test for substitution failures reported by Markus Mauhart . 2004-03-22 Paul D. Smith * test_driver.pl (run_each_test, toplevel, compare_output): Change to track both the testing categories _AND_ the number of individual tests, and report both sets of numbers. 2004-02-21 Paul D. Smith * scripts/functions/origin: Set our own environment variable rather than relying on $HOME. 2004-01-21 Paul D. Smith * scripts/features/conditionals: Test arguments to ifn?def which contain whitespace (such as a function that is evaluated). Bug #7257. 2004-01-07 Paul D. Smith * scripts/features/order_only: Test order-only prerequisites in pattern rules (patch #2349). 2003-11-02 Paul D. Smith * scripts/functions/if: Test if on conditionals with trailing whitespace--bug #5798. * scripts/functions/eval: Test eval in a non-file context--bug #6195. 2003-04-19 Paul D. Smith * scripts/features/patspecific_vars: Test multiple patterns matching the same target--Bug #1405. 2003-04-09 Paul D. Smith * run_make_tests.pl (set_more_defaults): A new $port_type of 'OS/2' for (surprise!) OS/2. Also choose a wait time of 2 seconds for OS/2. 2003-03-28 Paul D. Smith * scripts/targets/SECONDARY: Test the "global" .SECONDARY (with not prerequisites)--Bug #2515. 2003-01-30 Paul D. Smith * scripts/features/targetvars: Test very long target-specific variable definition lines (longer than the default make buffer length). Tests patch # 1022. * scripts/functions/eval: Test very recursive $(eval ...) calls with simple variable expansion (bug #2238). * scripts/functions/word: Test error handling for word and wordlist functions (bug #2407). 2003-01-22 Paul D. Smith * scripts/functions/call: Test recursive argument masking (bug #1744). 2002-10-25 Paul D. Smith * scripts/functions/eval: Test using $(eval ...) inside conditionals (Bug #1516). 2002-10-14 Paul D. Smith * scripts/options/dash-t: Add a test for handling -t on targets with no commands (Bug #1418). 2002-10-13 Paul D. Smith * scripts/features/targetvars: Add a test for exporting target-specific vars (Bug #1391). 2002-10-05 Paul D. Smith * scripts/variables/automatic: Add tests for $$(@), $${@}, $${@D}, and $${@F}. 2002-09-23 Paul D. Smith * scripts/features/escape: Test handling of escaped comment characters in targets and prerequisites. 2002-09-18 Paul D. Smith * scripts/features/export: Test export/unexport of multiple variables in a single command. 2002-09-17 Paul D. Smith * scripts/features/targetvars: Tests for Bug #940: test target-specific and pattern-specific variables in conjunction with double-colon targets. 2002-09-10 Paul D. Smith * test_driver.pl (compare_output): Match the new format for time skew error messages. * scripts/features/export: Created. Add tests for export/unexport capabilities, including exporting/unexporting expanded variables. * scripts/features/conditionals: Add a test for expanded variables in ifdef conditionals. 2002-09-04 Paul D. Smith * scripts/features/reinvoke: Change touch/sleep combos to utouch invocations. * scripts/features/vpathgpath: Ditto. * scripts/features/vpathplus: Ditto. * scripts/options/dash-n: Ditto. * scripts/targets/INTERMEDIATE: Ditto. * scripts/targets/SECONDARY: Ditto. * scripts/options/dash-t: Added a test for the -t bug fixed by Henning Makholm. This test was also contributed by Henning. * scripts/misc/general4: Add a test suite for obscure algorithmic features of make. First test: make sure creation subdirectories as prerequisites of targets works properly. * scripts/misc/version: Remove this bogus test. 2002-08-07 Paul D. Smith * scripts/misc/general3: Add a test for makefiles that don't end in newlines. * scripts/variables/special: Create tests for the special variables (.VARIABLES and .TARGETS). Comment out .TARGETS test for now as it's not yet supported. 2002-08-01 Paul D. Smith * scripts/options/dash-B: Add a test for the new -B option. 2002-07-11 Paul D. Smith * run_make_tests.pl (valid_option): Add support for Valgrind. Use -valgrind option to the test suite. (set_more_defaults): Set up the file descriptor to capture Valgrind output. We have to unset its close-on-exec flag; we hardcode the value for F_SETFD (2) rather than load it; hopefully this will help us avoid breaking the Windows/DOS test suite. 2002-07-10 Paul D. Smith * scripts/variables/automatic: Add some tests for $$@, $$(@D), and $$(@F). * test_driver.pl (utouch): Create a new function that creates a file with a specific timestamp offset. Use of this function will let us avoid lots of annoying sleep() invocations in the tests just to get proper timestamping, which will make the tests run a lot faster. So far it's only used in the automatic test suite. 2002-07-09 Paul D. Smith * scripts/variables/automatic: Create a test for automatic variables. 2002-07-08 Paul D. Smith * scripts/features/order_only: Test new order-only prerequisites. 2002-07-07 Paul D. Smith * scripts/functions/eval: Test new function. * scripts/functions/value: Test new function. * scripts/variables/MAKEFILE_LIST: Test new variable. 2002-04-28 Paul D. Smith * scripts/functions/call: New test: transitive closure implementation using $(call ...) to test variable recursion. 2002-04-21 Paul D. Smith * test_driver.pl (compare_dir_tree): Ignore CVS and RCS directories in the script directories. 2001-05-02 Paul D. Smith * scripts/variables/flavors: Test define/endef scripts where only one of the command lines is quiet. 2000-06-22 Paul D. Smith * scripts/options/dash-q: New file; test the -q option. Includes a test for PR/1780. 2000-06-21 Paul D. Smith * scripts/features/targetvars: Added a test for PR/1709: allowing semicolons in target-specific variable values. 2000-06-19 Paul D. Smith * scripts/functions/addsuffix: Test for an empty final argument. Actually this bug might have happened for any function, but this one was handy. 2000-06-17 Eli Zaretskii * scripts/options/general: If parallel jobs are not supported, expect a warning message from Make. 2000-06-15 Eli Zaretskii * scripts/options/general: Don't try -jN with N != 1 if parallel jobs are not supported. 2000-05-24 Paul D. Smith * scripts/options/general: Test general option processing (PR/1716). 2000-04-11 Paul D. Smith * scripts/functions/strip: Test empty value to strip (PR/1689). 2000-04-08 Eli Zaretskii * scripts/features/reinvoke: Sleep before updating the target files in the first test, to ensure its time stamp really gets newer; otherwise Make might re-exec more than once. 2000-04-07 Eli Zaretskii * scripts/features/double_colon: Don't run the parallel tests if parallel jobs aren't supported. 2000-04-04 Paul D. Smith * scripts/functions/word: wordlist doesn't swap arguments anymore. 2000-03-27 Paul D. Smith * scripts/features/statipattrules: Test that static pattern rules whose prerequisite patterns resolve to empty strings throw an error (instead of dumping core). Fixes PR/1670. * scripts/features/reinvoke: Make more robust by touching "b" first, to ensure it's not newer than "a". Reported by Marco Franzen . * scripts/options/dash-n: Ditto. * scripts/functions/call: Whoops. The fix to PR/1527 caused recursive invocations of $(call ...) to break. I can't come up with any way to get both working at the same time, so I backed out the fix to 1527 and added a test case for recursive calls. This also tests the fix for PR/1610. * scripts/features/double_colon: Test that circular dependencies in double-colon rule sets are detected correctly (PR/1671). 2000-03-26 Paul D. Smith * scripts/targets/INTERMEDIATE: Test that make doesn't remove .INTERMEDIATE files when given on the command line (PR/1669). 2000-03-08 Paul D. Smith * scripts/options/dash-k: Add a test for error detection by multiple targets depending on the same prerequisite with -k. For PR/1634. 2000-02-07 Paul D. Smith * scripts/features/escape: Add a test for backslash-escaped spaces in a target name (PR/1586). 2000-02-04 Paul D. Smith * scripts/features/patspecific_vars: Add a test for pattern-specific target variables inherited from the parent target (PR/1407). 2000-02-02 Paul D. Smith * run_make_tests.pl (set_more_defaults): Hard-code the LANG to C to make sure sorting order, etc. is predictable. Reported by Andreas Jaeger . * run_make_tests.pl (set_more_defaults): Set the $wtime variable depending on the OS. Eli Zaretskii reports this seems to need to be *4* on DOS/Windows, not just 2. Keep it 1 for other systems. * scripts/features/vpathplus (touchfiles): Use the $wtime value instead of hardcoding 2. * scripts/targets/SECONDARY: Ditto. * scripts/targets/INTERMEDIATE: Ditto. 2000-01-27 Paul D. Smith * test_driver.pl (toplevel): Don't try to run test scripts which are really directories. 2000-01-23 Paul D. Smith * scripts/features/include: Remove a check; the fix caused more problems than the error, so I removed it and removed the test for it. 2000-01-11 Paul D. Smith * scripts/functions/call: Add a test for PR/1517 and PR/1527: make sure $(call ...) doesn't eval its arguments and that you can invoke foreach from it without looping forever. 1999-12-15 Paul D. Smith * scripts/targets/INTERMEDIATE: Add a test for PR/1423: make sure .INTERMEDIATE settings on files don't disable them as implicit intermediate possibilities. 1999-12-01 Paul D. Smith * scripts/features/double_colon: Add a test for PR/1476: Try double-colon rules as non-goal targets and during parallel builds to make sure they're handled serially. 1999-11-17 Paul D. Smith * scripts/functions/if: Add a test for PR/1429: put some text after an if-statement to make sure it works. * scripts/features/targetvars: Add a test for PR/1380: handling += in target-specific variable definitions correctly. 1999-10-15 Paul D. Smith * scripts/variables/MAKEFILES: This was really broken: it didn't test anything at all, really. Rewrote it, plus added a test for PR/1394. 1999-10-13 Paul D. Smith * scripts/options/dash-n: Add a test for PR/1379: "-n doesn't behave properly when used with recursive targets". 1999-10-08 Paul D. Smith * scripts/features/targetvars: Add a check for PR/1378: "Target-specific vars don't inherit correctly" 1999-09-29 Paul D. Smith * test_driver.pl (get_osname): Change $fancy_file_names to $short_filenames and reverse the logic. (run_each_test): Change test of non-existent $port_host to use $short_filenames--problem reported by Eli Zaretskii. 1999-09-23 Paul D. Smith * scripts/features/parallelism: Add a check to ensure that the jobserver works when we re-invoke. Also cleaned up the tests a little, reducing the number of rules we use so the test won't need as many "sleep" commands. 1999-09-16 Paul D. Smith * scripts/features/reinvoke: Remove invocations of "touch" in makefiles. See the comments on the touch function rewrite below. Note that UNIX touch behaves the same way if the file already exists: it sets the time to the _local_ time. We don't want this. This is probably a good tip for makefile writers in general, actually... where practical. * scripts/options/dash-l: Ditto. * scripts/options/dash-n: Ditto. * test_driver.pl (run_each_test): In retrospect, I don't like the .lN/.bN/.dN postfix required by DOS. So, for non-DOS systems I changed it back to use .log, .base, and .diff. * run_make_tests.pl (set_more_defaults): Move the check for the make pathname to here from set_defaults (that's too early since it happens before the command line processing). Create a new variable $port_type, calculated from $osname, to specify what kind of system we're running on. We should integrate the VOS stuff here, too. (valid_option): Comment out the workdir/-work stuff so people won't be fooled into thinking it works... someone needs to fix this, though! * scripts/functions/origin: Use $port_type instead of $osname. * scripts/functions/foreach: Ditto. * scripts/features/default_names: Ditto. 1999-09-15 Paul D. Smith * test_driver.pl (touch): Rewrite this function. Previously it used to use utime() to hard-set the time based on the current local clock, or, if the file didn't exist, it merely created it. This mirrors exactly what real UNIX touch does, but it fails badly on networked filesystems where the FS server clock is skewed from the local clock: normally modifying a file causes it to get a mod time based on the _server's_ clock. Hard-setting it based on the _local_ clock causes gratuitous errors and makes the tests unreliable except on local filesystems. The new function will simply modify the file, allowing the filesystem to set the mod time as it sees fit. * scripts/features/parallelism: The second test output could change depending on how fast some scripts completed; use "sleep" to force the order we want. * test_driver.pl (toplevel): A bug in Perl 5.000 to Perl 5.004 means that "%ENV = ();" doesn't do the right thing. This worked in Perl 4 and was fixed in Perl 5.004_01, but use a loop to delete the environment rather than require specific versions. * run_make_tests.pl (set_more_defaults): Don't use Perl 5 s/// modifier "s", so the tests will run with Perl 4. (set_more_defaults): Set $pure_log to empty if there's no -logfile option in PURIFYOPTIONS. (setup_for_test): Don't remove any logs unless $pure_log is set. 1999-09-15 Eli Zaretskii * scripts/features/reinvoke: Put the SHELL definition in the right test makefile. 1999-09-15 Paul D. Smith ChangeLog file for the test suite created. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/tests/NEWS0000644000175000017500000001537610416553102016366 0ustar srivastasrivastaChanges from 0.4.9 to 3.78 (Sep 6, 1999): Lots of new tests. Renamed to follow the GNU make scheme. Also added some support for using Purify with make. Rob Tulloh contributed some changes to get the test suite running on NT; I tweaked them a bit (hopefully I didn't break anything!) Note that NT doesn't grok the self-exec funkiness that Unix shells use, so instead I broke that out into a separate shell script "run_make_tests" that invokes perl with the (renamed) script run_make_tests.pl. Eli Zaretski contributed changes to get the test suite running on DOS with DJGPP. I also meddled in these somewhat. If you're on DOS or NT you should run "perl.exe run_make_tests.pl ..." If you're on Unix, you can continue to run "./run_make_tests ..." as before. Changes from 0.4.8 to 0.4.9 (May 14, 1998): Release by Paul D. Smith ; I'm the one to blame for problems in this version :). Add some perl to test_driver.pl to strip out GNU make clock skew warning messages from the output before comparing it to the known-good output. A new test for escaped :'s in filenames (someone on VMS found this didn't work anymore in 3.77): scripts/features/escape. Changes from 0.4.7 to 0.4.8 (May 14, 1998): Release by Paul D. Smith ; I'm the one to blame for problems in this version :). New tests for features to be included in GNU make 3.77. Changes from 0.4.6 to 0.4.7 (August 18, 1997): Release by Paul D. Smith ; I'm the one to blame for problems in this version :). Reworked some tests to make sure they all work with both perl4 and perl5. Work around a bug in perl 5.004 which doesn't clean the environment correctly in all cases (fixed in at least 5.004_02). Updated functions/strip to test for newline stripping. Keep a $PURIFYOPTIONS env variable if present. Changes from 0.4.5 to 0.4.6 (April 07, 1997): Release by Paul D. Smith ; I'm the one to blame for problems in this version :). Updated to work with GNU make 3.76 (and pretests). Added new tests and updated existing ones. Note that the new tests weren't tested with perl 4, however I think they should work. Ignore any tests whose filenames end in "~", so that Emacs backup files aren't run. Changes from 0.4.4 to 0.4.5 (April 29, 1995): Updated to be compatible with perl 5.001 as well as 4.036. Note: the test suite still won't work on 14-char filesystems (sorry, Kaveh), but I will get to it. Also, some tests and stuff still haven't made it in because I haven't had time to write the test scripts for them. But they, too, will get in eventually. Contributions of scripts (ie, tests that I can just drop in) are particularly welcome and will be incorporated immediately. Changes from 0.4.3 to 0.4.4 (March 1995): Updated for changes in make 3.72.12, and to ignore CVS directories (thanks go to Jim Meyering for the patches for this). Fixed uname call to not make a mess on BSD/OS 2.0 (whose uname -a is very verbose). Let me know if this doesn't work correctly on your system. Changed to display test name while it is running, not just when it finishes. Note: the test suite still won't work on 14-char filesystems (sorry, Kaveh), but I will get to it. Also, some tests and stuff still haven't made it in because I haven't had time to write the test scripts for them. But they, too, will get in eventually. Changes from 0.4 to 0.4.3 (October 1994): Fixed bugs (like dependencies on environment variables). Caught up with changes in make. The load_limit test should now silently ignore a failure due to make not being able to read /dev/kmem. Reorganized tests into subdirs and renamed lots of things so that those poor souls who still have to deal with 14-char filename limits won't hate me any more. Thanks very much to Kaveh R. Ghazi for helping me with the implementation and testing of these changes, and for putting up with all my whining about it... Added a $| = 1 so that systems that don't seem to automatically flush their output for some reason will still print all the output. I'd hate for someone to miss out on the smiley that you're supposed to get when all the tests pass... :-) Changes from 0.3 to 0.4 (August 1993): Lost in the mists of time (and my hurry to get it out before I left my job). Changes from 0.2 to 0.3 (9-30-92): Several tests fixed to match the fact that MAKELEVEL > 0 or -C now imply -w. parallel_execution test fixed to not use double colon rules any more since their behavior has changed. errors_in_commands test fixed to handle different error messages and return codes from rm. Several tests fixed to handle -make_path with a relative path and/or a name other than "make" for make. dash-e-option test fixed to use $PATH instead of $USER (since the latter does not exist on some System V systems). This also removes the dependency on getlogin (which fails under certain weird conditions). test_driver_core changed so that you can give a test name like scripts/errors_in_commands and it will be handled correctly (handy if you have a shell with filename completion). Changes from 0.1 to 0.2 (5-4-92): README corrected to require perl 4.019, not 4.010. -make_path replaces -old. errors_in_commands test updated for change in format introduced in make 3.62.6. test_driver_core now uses a better way of figuring what OS it is running on (thanks to meyering@cs.utexas.edu (Jim Meyering) for suggesting this, as well as discovering the hard way that the old way (testing for /mnt) fails on his machine). Some new tests were added. ------------------------------------------------------------------------------- Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/tests/README0000644000175000017500000001132510416553102016535 0ustar srivastasrivastaThe test suite was originally written by Steve McGee and Chris Arthur. It is covered by the GNU General Public License (Version 2), described in the file COPYING. It has been maintained as part of GNU make proper since GNU make 3.78. This entire test suite, including all test files, are copyright and distributed under the following terms: ----------------------------------------------------------------------------- Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. ----------------------------------------------------------------------------- The test suite requires Perl. These days, you should have at least Perl 5.004 (available from ftp.gnu.org, and portable to many machines). It used to work with Perl 4.036 but official support for Perl 4.x was abandoned a long time ago, due to lack of testbeds, as well as interest. The test suite assumes that the first "diff" it finds on your PATH is GNU diff, but that only matters if a test fails. To run the test suite on a UNIX system, use "perl ./run_make_tests" (or just "./run_make_tests" if you have a perl on your PATH). To run the test suite on Windows NT or DOS systems, use "perl.exe ./run_make-tests.pl". By default, the test engine picks up the first executable called "make" that it finds in your path. You may use the -make_path option (ie, "perl run_make_tests -make_path /usr/local/src/make-3.78/make") if you want to run a particular copy. This now works correctly with relative paths and when make is called something other than "make" (like "gmake"). Tests cannot end with a "~" character, as the test suite will ignore any that do (I was tired of having it run my Emacs backup files as tests :)) Also, sometimes the tests may behave strangely on networked filesystems. You can use mkshadow to create a copy of the test suite in /tmp or similar, and try again. If the error disappears, it's an issue with your network or file server, not GNU make (I believe). This shouldn't happen very often anymore: I've done a lot of work on the tests to reduce the impacts of this situation. The options/dash-l test will not really test anything if the copy of make you are using can't obtain the system load. Some systems require make to be setgid sys or kmem for this; if you don't want to install make just to test it, make it setgid to kmem or whatever group /dev/kmem is (ie, "chgrp kmem make;chmod g+s make" as root). In any case, the options/dash-l test should no longer *fail* because make can't read /dev/kmem. A directory named "work" will be created when the tests are run which will contain any makefiles and "diff" files of tests that fail so that you may look at them afterward to see the output of make and the expected result. There is a -help option which will give you more information about the other possible options for the test suite. Open Issues ----------- The test suite has a number of problems which should be addressed. One VERY serious one is that there is no real documentation. You just have to see the existing tests. Use the newer tests: many of the tests haven't been updated to use the latest/greatest test methods. See the ChangeLog in the tests directory for pointers. The second serious problem is that it's not parallelizable: it scribbles all over its installation directory and so can only test one make at a time. The third serious problem is that it's not relocatable: the only way it works when you build out of the source tree is to create symlinks, which doesn't work on every system and is bogus to boot. The fourth serious problem is that it doesn't create its own sandbox when running tests, so that if a test forgets to clean up after itself that can impact future tests. Bugs ---- Any complaints/suggestions/bugs/etc. for the test suite itself (as opposed to problems in make that the suite finds) should be handled the same way as normal GNU make bugs/problems (see the README for GNU make). Paul D. Smith Chris Arthur make-dfsg-3.81.orig/tests/mkshadow0000755000175000017500000000304510416553102017420 0ustar srivastasrivasta#!/bin/sh # # Simple script to make a "shadow" test directory, using symbolic links. # Typically you'd put the shadow in /tmp or another local disk # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. case "$1" in "") echo 'Usage: mkshadow '; exit 1 ;; esac dest="$1" if [ ! -d "$dest" ]; then echo "Destination directory \`$dest' must exist!" exit 1 fi if [ ! -f run_make_tests ]; then echo "The current directory doesn't appear to contain the test suite!" exit 1 fi suite=`pwd | sed 's%^/tmp_mnt%%'` name=`basename "$suite"` files=`echo *` set -e mkdir "$dest/$name" cd "$dest/$name" ln -s "$suite" .testdir for f in $files; do ln -s .testdir/$f . done rm -rf work echo "Shadow test suite created in \`$dest/$name'." exit 0 make-dfsg-3.81.orig/tests/run_make_tests0000755000175000017500000000004410416553102020622 0ustar srivastasrivasta#!/bin/sh exec perl $0.pl ${1+"$@"} make-dfsg-3.81.orig/tests/run_make_tests.pl0000755000175000017500000002325710416553102021247 0ustar srivastasrivasta#!/usr/bin/env perl # -*-perl-*- # Test driver for the Make test suite # Usage: run_make_tests [testname] # [-debug] # [-help] # [-verbose] # [-keep] # [-make ] # (and others) # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. $valgrind = 0; # invoke make with valgrind $valgrind_args = '--num-callers=15 --tool=memcheck --leak-check=full'; $pure_log = undef; require "test_driver.pl"; # Some target systems might not have the POSIX module... $has_POSIX = eval { require "POSIX.pm" }; #$SIG{INT} = sub { print STDERR "Caught a signal!\n"; die @_; }; sub valid_option { local($option) = @_; if ($option =~ /^-make([-_]?path)?$/) { $make_path = shift @argv; if (!-f $make_path) { print "$option $make_path: Not found.\n"; exit 0; } return 1; } if ($option =~ /^-valgrind$/i) { $valgrind = 1; return 1; } # This doesn't work--it _should_! Someone badly needs to fix this. # # elsif ($option =~ /^-work([-_]?dir)?$/) # { # $workdir = shift @argv; # return 1; # } return 0; } # This is an "all-in-one" function. Arguments are as follows: # # [0] (string): The makefile to be tested. undef means use the last one. # [1] (string): Arguments to pass to make. # [2] (string): Answer we should get back. # [3] (integer): Exit code we expect. A missing code means 0 (success) $old_makefile = undef; sub run_make_test { local ($makestring, $options, $answer, $err_code) = @_; # If the user specified a makefile string, create a new makefile to contain # it. If the first value is not defined, use the last one (if there is # one). if (! defined $makestring) { defined $old_makefile || die "run_make_test(undef) invoked before run_make_test('...')\n"; $makefile = $old_makefile; } else { if (! defined($makefile)) { $makefile = &get_tmpfile(); } # Make sure it ends in a newline. $makestring && $makestring !~ /\n$/s and $makestring .= "\n"; # Replace @MAKEFILE@ with the makefile name and @MAKE@ with the path to # make $makestring =~ s/#MAKEFILE#/$makefile/g; $makestring =~ s/#MAKEPATH#/$mkpath/g; $makestring =~ s/#MAKE#/$make_name/g; $makestring =~ s/#PWD#/$pwd/g; # Populate the makefile! open(MAKEFILE, "> $makefile") || die "Failed to open $makefile: $!\n"; print MAKEFILE $makestring; close(MAKEFILE) || die "Failed to write $makefile: $!\n"; } # Do the same processing on $answer as we did on $makestring. $answer && $answer !~ /\n$/s and $answer .= "\n"; $answer =~ s/#MAKEFILE#/$makefile/g; $answer =~ s/#MAKEPATH#/$mkpath/g; $answer =~ s/#MAKE#/$make_name/g; $answer =~ s/#PWD#/$pwd/g; &run_make_with_options($makefile, $options, &get_logfile(0), $err_code); &compare_output($answer, &get_logfile(1)); $old_makefile = $makefile; $makefile = undef; } # The old-fashioned way... sub run_make_with_options { local ($filename,$options,$logname,$expected_code) = @_; local($code); local($command) = $make_path; $expected_code = 0 unless defined($expected_code); # Reset to reflect this one test. $test_passed = 1; if ($filename) { $command .= " -f $filename"; } if ($options) { $command .= " $options"; } if ($valgrind) { print VALGRIND "\n\nExecuting: $command\n"; } $code = &run_command_with_output($logname,$command); # Check to see if we have Purify errors. If so, keep the logfile. # For this to work you need to build with the Purify flag -exit-status=yes if ($pure_log && -f $pure_log) { if ($code & 0x7000) { $code &= ~0x7000; # If we have a purify log, save it $tn = $pure_testname . ($num_of_logfiles ? ".$num_of_logfiles" : ""); print("Renaming purify log file to $tn\n") if $debug; rename($pure_log, "$tn") || die "Can't rename $log to $tn: $!\n"; ++$purify_errors; } else { unlink($pure_log); } } if ($code != $expected_code) { print "Error running $make_path (expected $expected_code; got $code): $command\n"; $test_passed = 0; # If it's a SIGINT, stop here if ($code & 127) { print STDERR "\nCaught signal ".($code & 127)."!\n"; exit($code); } return 0; } if ($profile & $vos) { system "add_profile $make_path"; } 1; } sub print_usage { &print_standard_usage ("run_make_tests", "[-make_path make_pathname]"); } sub print_help { &print_standard_help ("-make_path", "\tYou may specify the pathname of the copy of make to run."); } sub get_this_pwd { $delete_command = 'rm -f'; if ($has_POSIX) { $__pwd = POSIX::getcwd(); } elsif ($vos) { $delete_command = "delete_file -no_ask"; $__pwd = `++(current_dir)`; } else { # No idea... just try using pwd as a last resort. chop ($__pwd = `pwd`); } return $__pwd; } sub set_defaults { # $profile = 1; $testee = "GNU make"; $make_path = "make"; $tmpfilesuffix = "mk"; $pwd = &get_this_pwd; } sub set_more_defaults { local($string); local($index); # Make sure we're in the C locale for those systems that support it, # so sorting, etc. is predictable. # $ENV{LANG} = 'C'; # find the type of the port. We do this up front to have a single # point of change if it needs to be tweaked. # # This is probably not specific enough. # if ($osname =~ /Windows/i || $osname =~ /MINGW32/i || $osname =~ /CYGWIN_NT/i) { $port_type = 'W32'; } # Bleah, the osname is so variable on DOS. This kind of bites. # Well, as far as I can tell if we check for some text at the # beginning of the line with either no spaces or a single space, then # a D, then either "OS", "os", or "ev" and a space. That should # match and be pretty specific. elsif ($osname =~ /^([^ ]*|[^ ]* [^ ]*)D(OS|os|ev) /) { $port_type = 'DOS'; } # Check for OS/2 elsif ($osname =~ m%OS/2%) { $port_type = 'OS/2'; } # Everything else, right now, is UNIX. Note that we should integrate # the VOS support into this as well and get rid of $vos; we'll do # that next time. else { $port_type = 'UNIX'; } # On DOS/Windows system the filesystem apparently can't track # timestamps with second granularity (!!). Change the sleep time # needed to force a file to be considered "old". $wtime = $port_type eq 'UNIX' ? 1 : $port_type eq 'OS/2' ? 2 : 4; print "Port type: $port_type\n" if $debug; print "Make path: $make_path\n" if $debug; # Find the full pathname of Make. For DOS systems this is more # complicated, so we ask make itself. my $mk = `sh -c 'echo "all:;\@echo \\\$(MAKE)" | $make_path -f-'`; chop $mk; $mk or die "FATAL ERROR: Cannot determine the value of \$(MAKE):\n 'echo \"all:;\@echo \\\$(MAKE)\" | $make_path -f-' failed!\n"; $make_path = $mk; print "Make\t= `$make_path'\n" if $debug; $string = `$make_path -v -f /dev/null 2> /dev/null`; $string =~ /^(GNU Make [^,\n]*)/; $testee_version = "$1\n"; $string = `sh -c "$make_path -f /dev/null 2>&1"`; if ($string =~ /(.*): \*\*\* No targets\. Stop\./) { $make_name = $1; } else { if ($make_path =~ /$pathsep([^\n$pathsep]*)$/) { $make_name = $1; } else { $make_name = $make_path; } } # prepend pwd if this is a relative path (ie, does not # start with a slash, but contains one). Thanks for the # clue, Roland. if (index ($make_path, ":") != 1 && index ($make_path, "/") > 0) { $mkpath = "$pwd$pathsep$make_path"; } else { $mkpath = $make_path; } # Get Purify log info--if any. if (exists $ENV{PURIFYOPTIONS} && $ENV{PURIFYOPTIONS} =~ /.*-logfile=([^ ]+)/) { $pure_log = $1 || ''; $pure_log =~ s/%v/$make_name/; $purify_errors = 0; } $string = `sh -c "$make_path -j 2 -f /dev/null 2>&1"`; if ($string =~ /not supported/) { $parallel_jobs = 0; } else { $parallel_jobs = 1; } # Set up for valgrind, if requested. if ($valgrind) { open(VALGRIND, "> valgrind.out") || die "Cannot open valgrind.out: $!\n"; # -q --leak-check=yes exists $ENV{VALGRIND_ARGS} and $valgrind_args = $ENV{VALGRIND_ARGS}; $make_path = "valgrind --log-fd=".fileno(VALGRIND)." $valgrind_args $make_path"; # F_SETFD is 2 fcntl(VALGRIND, 2, 0) or die "fcntl(setfd) failed: $!\n"; system("echo Starting on `date` 1>&".fileno(VALGRIND)); print "Enabled valgrind support.\n"; } } sub setup_for_test { $makefile = &get_tmpfile; if (-f $makefile) { unlink $makefile; } # Get rid of any Purify logs. if ($pure_log) { ($pure_testname = $testname) =~ tr,/,_,; $pure_testname = "$pure_log.$pure_testname"; system("rm -f $pure_testname*"); print("Purify testfiles are: $pure_testname*\n") if $debug; } } exit !&toplevel; make-dfsg-3.81.orig/tests/scripts/0000755000175000017500000000000010416553102017342 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/features/0000755000175000017500000000000010416553102021160 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/features/comments0000644000175000017500000000234310416553102022732 0ustar srivastasrivasta$description = "The following test creates a makefile to test comments\n" ."and comment continuation to the next line using a \n" ."backslash within makefiles."; $details = "To test comments within a makefile, a semi-colon was placed \n" ."after a comment was started. This should not be reported as\n" ."an error since it is within a comment. We then continue the \n" ."comment to the next line using a backslash. To test whether\n" ."the comment really continued, we place an echo command with some\n" ."text on the line which should never execute since it should be \n" ."within a comment\n"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<\EOF; # Test comment vs semicolon parsing and line continuation target: # this ; is just a comment \ @echo This is within a comment. @echo There should be no errors for this makefile. EOF # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "There should be no errors for this makefile.\n"; # COMPARE RESULTS &compare_output($answer,&get_logfile(1)) make-dfsg-3.81.orig/tests/scripts/features/conditionals0000644000175000017500000000441510416553102023575 0ustar srivastasrivasta# -*-perl-*- $description = "Check GNU make conditionals."; $details = "Attempt various different flavors of GNU make conditionals."; run_make_test(' arg1 = first arg2 = second arg3 = third arg4 = cc arg5 = second all: ifeq ($(arg1),$(arg2)) @echo arg1 equals arg2 else @echo arg1 NOT equal arg2 endif ifeq \'$(arg2)\' "$(arg5)" @echo arg2 equals arg5 else @echo arg2 NOT equal arg5 endif ifneq \'$(arg3)\' \'$(arg4)\' @echo arg3 NOT equal arg4 else @echo arg3 equal arg4 endif ifndef undefined @echo variable is undefined else @echo variable undefined is defined endif ifdef arg4 @echo arg4 is defined else @echo arg4 is NOT defined endif', '', 'arg1 NOT equal arg2 arg2 equals arg5 arg3 NOT equal arg4 variable is undefined arg4 is defined'); # Test expansion of variables inside ifdef. run_make_test(' foo = 1 FOO = foo F = f DEF = no DEF2 = no ifdef $(FOO) DEF = yes endif ifdef $(F)oo DEF2 = yes endif DEF3 = no FUNC = $1 ifdef $(call FUNC,DEF)3 DEF3 = yes endif all:; @echo DEF=$(DEF) DEF2=$(DEF2) DEF3=$(DEF3)', '', 'DEF=yes DEF2=yes DEF3=yes'); # Test all the different "else if..." constructs run_make_test(' arg1 = first arg2 = second arg3 = third arg4 = cc arg5 = fifth result = ifeq ($(arg1),$(arg2)) result += arg1 equals arg2 else ifeq \'$(arg2)\' "$(arg5)" result += arg2 equals arg5 else ifneq \'$(arg3)\' \'$(arg3)\' result += arg3 NOT equal arg4 else ifndef arg5 result += variable is undefined else ifdef undefined result += arg4 is defined else result += success endif all: ; @echo $(result)', '', 'success'); # Test some random "else if..." construct nesting run_make_test(' arg1 = first arg2 = second arg3 = third arg4 = cc arg5 = second ifeq ($(arg1),$(arg2)) $(info failed 1) else ifeq \'$(arg2)\' "$(arg2)" ifdef undefined $(info failed 2) else $(info success) endif else ifneq \'$(arg3)\' \'$(arg3)\' $(info failed 3) else ifdef arg5 $(info failed 4) else ifdef undefined $(info failed 5) else $(info failed 6) endif .PHONY: all all: ; @:', '', 'success'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/default_names0000644000175000017500000000237010416553102023714 0ustar srivastasrivasta# -*-perl-*- $description = "This script tests to make sure that Make looks for default makefiles in the correct order (GNUmakefile,makefile,Makefile)"; # Create a makefile called "GNUmakefile" $makefile = "GNUmakefile"; open(MAKEFILE,"> $makefile"); print MAKEFILE "FIRST: ; \@echo It chose GNUmakefile\n"; close(MAKEFILE); # DOS/WIN32 platforms preserve case, but Makefile is the same file as makefile. # Just test what we can here (avoid Makefile versus makefile test). if ($port_type eq 'UNIX') { # Create another makefile called "makefile" open(MAKEFILE,"> makefile"); print MAKEFILE "SECOND: ; \@echo It chose makefile\n"; close(MAKEFILE); } # Create another makefile called "Makefile" open(MAKEFILE,"> Makefile"); print MAKEFILE "THIRD: ; \@echo It chose Makefile\n"; close(MAKEFILE); &run_make_with_options("","",&get_logfile); &compare_output("It chose GNUmakefile\n",&get_logfile(1)); unlink $makefile; if ($port_type eq 'UNIX') { &run_make_with_options("","",&get_logfile); &compare_output("It chose makefile\n",&get_logfile(1)); unlink "makefile"; } &run_make_with_options("","",&get_logfile); &compare_output("It chose Makefile\n",&get_logfile(1)); unlink "Makefile"; make-dfsg-3.81.orig/tests/scripts/features/double_colon0000644000175000017500000000667610416553102023566 0ustar srivastasrivasta# -*-perl-*- $description = "Test handling of double-colon rules."; $details = "\ We test these features: - Multiple commands for the same (double-colon) target - Different prerequisites for targets: only out-of-date ones are rebuilt. - Double-colon targets that aren't the goal target. Then we do the same thing for parallel builds: double-colon targets should always be built serially."; # The Contents of the MAKEFILE ... open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; all: baz foo:: f1.h ; @echo foo FIRST foo:: f2.h ; @echo foo SECOND bar:: ; @echo aaa; sleep 1; echo aaa done bar:: ; @echo bbb baz:: ; @echo aaa baz:: ; @echo bbb biz:: ; @echo aaa biz:: two ; @echo bbb two: ; @echo two f1.h f2.h: ; @echo $@ d :: ; @echo ok d :: d ; @echo oops EOF close(MAKEFILE); # TEST 0: A simple double-colon rule that isn't the goal target. &run_make_with_options($makefile, "all", &get_logfile, 0); $answer = "aaa\nbbb\n"; &compare_output($answer, &get_logfile(1)); # TEST 1: As above, in parallel if ($parallel_jobs) { &run_make_with_options($makefile, "-j10 all", &get_logfile, 0); $answer = "aaa\nbbb\n"; &compare_output($answer, &get_logfile(1)); } # TEST 2: A simple double-colon rule that is the goal target &run_make_with_options($makefile, "bar", &get_logfile, 0); $answer = "aaa\naaa done\nbbb\n"; &compare_output($answer, &get_logfile(1)); # TEST 3: As above, in parallel if ($parallel_jobs) { &run_make_with_options($makefile, "-j10 bar", &get_logfile, 0); $answer = "aaa\naaa done\nbbb\n"; &compare_output($answer, &get_logfile(1)); } # TEST 4: Each double-colon rule is supposed to be run individually &utouch(-5, 'f2.h'); &touch('foo'); &run_make_with_options($makefile, "foo", &get_logfile, 0); $answer = "f1.h\nfoo FIRST\n"; &compare_output($answer, &get_logfile(1)); # TEST 5: Again, in parallel. if ($parallel_jobs) { &run_make_with_options($makefile, "-j10 foo", &get_logfile, 0); $answer = "f1.h\nfoo FIRST\n"; &compare_output($answer, &get_logfile(1)); } # TEST 6: Each double-colon rule is supposed to be run individually &utouch(-5, 'f1.h'); unlink('f2.h'); &touch('foo'); &run_make_with_options($makefile, "foo", &get_logfile, 0); $answer = "f2.h\nfoo SECOND\n"; &compare_output($answer, &get_logfile(1)); # TEST 7: Again, in parallel. if ($parallel_jobs) { &run_make_with_options($makefile, "-j10 foo", &get_logfile, 0); $answer = "f2.h\nfoo SECOND\n"; &compare_output($answer, &get_logfile(1)); } # TEST 8: Test circular dependency check; PR/1671 &run_make_with_options($makefile, "d", &get_logfile, 0); $answer = "ok\n$make_name: Circular d <- d dependency dropped.\noops\n"; &compare_output($answer, &get_logfile(1)); # TEST 8: I don't grok why this is different than the above, but it is... # # Hmm... further testing indicates this might be timing-dependent? # #if ($parallel_jobs) { # &run_make_with_options($makefile, "-j10 biz", &get_logfile, 0); # $answer = "aaa\ntwo\nbbb\n"; # &compare_output($answer, &get_logfile(1)); #} unlink('foo','f1.h','f2.h'); # TEST 9: make sure all rules in s double colon family get executed # (Savannah bug #14334). # &touch('one'); &touch('two'); run_make_test(' .PHONY: all all: result result:: one @echo $^ >>$@ @echo $^ result:: two @echo $^ >>$@ @echo $^ ', '', 'one two'); unlink('result','one','two'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/echoing0000644000175000017500000000547710416553102022534 0ustar srivastasrivasta$description = "The following test creates a makefile to test command \n" ."echoing. It tests that when a command line starts with \n" ."a '\@', the echoing of that line is suppressed. It also \n" ."tests the -n option which tells make to ONLY echo the \n" ."commands and no execution happens. In this case, even \n" ."the commands with '\@' are printed. Lastly, it tests the \n" ."-s flag which tells make to prevent all echoing, as if \n" ."all commands started with a '\@'."; $details = "This test is similar to the 'clean' test except that a '\@' has\n" ."been placed in front of the delete command line. Four tests \n" ."are run here. First, make is run normally and the first echo\n" ."command should be executed. In this case there is no '\@' so \n" ."we should expect make to display the command AND display the \n" ."echoed message. Secondly, make is run with the clean target, \n" ."but since there is a '\@' at the beginning of the command, we\n" ."expect no output; just the deletion of a file which we check \n" ."for. Third, we give the clean target again except this time\n" ."we give make the -n option. We now expect the command to be \n" ."displayed but not to be executed. In this case we need only \n" ."to check the output since an error message would be displayed\n" ."if it actually tried to run the delete command again and the \n" ."file didn't exist. Lastly, we run the first test again with \n" ."the -s option and check that make did not echo the echo \n" ."command before printing the message."; $example = "EXAMPLE_FILE"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "all: \n"; print MAKEFILE "\techo This makefile did not clean the dir... good\n"; print MAKEFILE "clean: \n"; print MAKEFILE "\t\@$delete_command $example\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch($example); # TEST #1 # ------- &run_make_with_options($makefile,"",&get_logfile,0); $answer = "echo This makefile did not clean the dir... good\n" ."This makefile did not clean the dir... good\n"; &compare_output($answer,&get_logfile(1)); # TEST #2 # ------- &run_make_with_options($makefile,"clean",&get_logfile,0); if (-f $example) { $test_passed = 0; } &compare_output('',&get_logfile(1)); # TEST #3 # ------- &run_make_with_options($makefile,"-n clean",&get_logfile,0); $answer = "$delete_command $example\n"; &compare_output($answer,&get_logfile(1)); # TEST #4 # ------- &run_make_with_options($makefile,"-s",&get_logfile,0); $answer = "This makefile did not clean the dir... good\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/features/errors0000644000175000017500000000464410416553102022427 0ustar srivastasrivasta# -*-perl-*- $description = "The following tests the -i option and the '-' in front of \n" ."commands to test that make ignores errors in these commands\n" ."and continues processing."; $details = "This test runs two makes. The first runs on a target with a \n" ."command that has a '-' in front of it (and a command that is \n" ."intended to fail) and then a delete command after that is \n" ."intended to succeed. If make ignores the failure of the first\n" ."command as it is supposed to, then the second command should \n" ."delete a file and this is what we check for. The second make\n" ."that is run in this test is identical except that the make \n" ."command is given with the -i option instead of the '-' in \n" ."front of the command. They should run the same. "; if ($vos) { $rm_command = "delete_file"; } else { $rm_command = "rm"; } open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "clean:\n" ."\t-$rm_command cleanit\n" ."\t$rm_command foo\n" ."clean2: \n" ."\t$rm_command cleanit\n" ."\t$rm_command foo\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch("foo"); unlink("cleanit"); $cleanit_error = `sh -c "$rm_command cleanit 2>&1"`; $delete_error_code = $? >> 8; # TEST #1 # ------- $answer = "$rm_command cleanit\n" . $cleanit_error ."$make_name: [clean] Error $delete_error_code (ignored)\n" ."$rm_command foo\n"; &run_make_with_options($makefile,"",&get_logfile); # If make acted as planned, it should ignore the error from the first # command in the target and execute the second which deletes the file "foo" # This file, therefore, should not exist if the test PASSES. if (-f "foo") { $test_passed = 0; } # The output for this on VOS is too hard to replicate, so we only check it # on unix. if (!$vos) { &compare_output($answer,&get_logfile(1)); } &touch("foo"); # TEST #2 # ------- $answer = "$rm_command cleanit\n" . $cleanit_error ."$make_name: [clean2] Error $delete_error_code (ignored)\n" ."$rm_command foo\n"; &run_make_with_options($makefile,"clean2 -i",&get_logfile); if (-f "foo") { $test_passed = 0; } if (!$vos) { &compare_output($answer,&get_logfile(1)); } 1; make-dfsg-3.81.orig/tests/scripts/features/escape0000644000175000017500000000244610416553102022351 0ustar srivastasrivasta# -*-perl-*- $description = "Test various types of escaping in makefiles."; $details = "\ Make sure that escaping of `:' works in target names. Make sure escaping of whitespace works in target names. Make sure that escaping of '#' works."; close(MAKEFILE); # TEST 1 run_make_test(' $(path)foo : ; @echo "touch ($@)" foo\ bar: ; @echo "touch ($@)" sharp: foo\#bar.ext foo\#bar.ext: ; @echo "foo#bar.ext = ($@)"', '', 'touch (foo)'); # TEST 2: This one should fail, since the ":" is unquoted. run_make_test(undef, 'path=pre:', "#MAKEFILE#:2: *** target pattern contains no `%'. Stop.", 512); # TEST 3: This one should work, since we escape the ":". run_make_test(undef, "'path=pre\\:'", 'touch (pre:foo)'); # TEST 4: This one should fail, since the escape char is escaped. run_make_test(undef, "'path=pre\\\\:'", "#MAKEFILE#:2: *** target pattern contains no `%'. Stop.", 512); # TEST 5: This one should work run_make_test(undef, "'foo bar'", 'touch (foo bar)'); # TEST 6: Test escaped comments run_make_test(undef, 'sharp', 'foo#bar.ext = (foo#bar.ext)'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/export0000644000175000017500000001067610416553102022436 0ustar srivastasrivasta# -*-perl-*- $description = "Check GNU make export/unexport commands."; $details = ""; # The test driver cleans out our environment for us so we don't have to worry # about that here. open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOMAKE'; FOO = foo BAR = bar BOZ = boz export BAZ = baz export BOZ BITZ = bitz BOTZ = botz export BITZ BOTZ unexport BOTZ ifdef EXPORT_ALL export endif ifdef UNEXPORT_ALL unexport endif ifdef EXPORT_ALL_PSEUDO .EXPORT_ALL_VARIABLES: endif all: @echo "FOO=$(FOO) BAR=$(BAR) BAZ=$(BAZ) BOZ=$(BOZ) BITZ=$(BITZ) BOTZ=$(BOTZ)" @echo "FOO=$$FOO BAR=$$BAR BAZ=$$BAZ BOZ=$$BOZ BITZ=$$BITZ BOTZ=$$BOTZ" EOMAKE close(MAKEFILE); # TEST 0: basics &run_make_with_options($makefile,"",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO= BAR= BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 1: make sure vars inherited from the parent are exported $extraENV{FOO} = 1; &run_make_with_options($makefile,"",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO=foo BAR= BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 2: global export. Explicit unexport takes precedence. &run_make_with_options($makefile,"EXPORT_ALL=1",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 3: global unexport. Explicit export takes precedence. &run_make_with_options($makefile,"UNEXPORT_ALL=1",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO= BAR= BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 4: both: in the above makefile the unexport comes last so that rules. &run_make_with_options($makefile,"EXPORT_ALL=1 UNEXPORT_ALL=1",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO= BAR= BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 5: test the pseudo target. &run_make_with_options($makefile,"EXPORT_ALL_PSEUDO=1",&get_logfile,0); $answer = "FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=botz FOO=foo BAR=bar BAZ=baz BOZ=boz BITZ=bitz BOTZ=\n"; &compare_output($answer,&get_logfile(1)); # TEST 6: Test the expansion of variables inside export $makefile2 = &get_tmpfile; open(MAKEFILE, "> $makefile2"); print MAKEFILE <<'EOF'; foo = f-ok bar = b-ok FOO = foo F = f BAR = bar B = b export $(FOO) export $(B)ar all: @echo foo=$(foo) bar=$(bar) @echo foo=$$foo bar=$$bar EOF close(MAKEFILE); &run_make_with_options($makefile2,"",&get_logfile,0); $answer = "foo=f-ok bar=b-ok\nfoo=f-ok bar=b-ok\n"; &compare_output($answer,&get_logfile(1)); # TEST 7: Test the expansion of variables inside unexport $makefile3 = &get_tmpfile; open(MAKEFILE, "> $makefile3"); print MAKEFILE <<'EOF'; foo = f-ok bar = b-ok FOO = foo F = f BAR = bar B = b export foo bar unexport $(FOO) unexport $(B)ar all: @echo foo=$(foo) bar=$(bar) @echo foo=$$foo bar=$$bar EOF close(MAKEFILE); &run_make_with_options($makefile3,"",&get_logfile,0); $answer = "foo=f-ok bar=b-ok\nfoo= bar=\n"; &compare_output($answer,&get_logfile(1)); # TEST 7: Test exporting multiple variables on the same line $makefile4 = &get_tmpfile; open(MAKEFILE, "> $makefile4"); print MAKEFILE <<'EOF'; A = a B = b C = c D = d E = e F = f G = g H = h I = i J = j SOME = A B C export F G H I J export D E $(SOME) all: ; @echo A=$$A B=$$B C=$$C D=$$D E=$$E F=$$F G=$$G H=$$H I=$$I J=$$J EOF close(MAKEFILE); &run_make_with_options($makefile4,"",&get_logfile,0); $answer = "A=a B=b C=c D=d E=e F=f G=g H=h I=i J=j\n"; &compare_output($answer,&get_logfile(1)); # TEST 8: Test unexporting multiple variables on the same line $makefile5 = &get_tmpfile; open(MAKEFILE, "> $makefile5"); print MAKEFILE <<'EOF'; A = a B = b C = c D = d E = e F = f G = g H = h I = i J = j SOME = A B C unexport F G H I J unexport D E $(SOME) all: ; @echo A=$$A B=$$B C=$$C D=$$D E=$$E F=$$F G=$$G H=$$H I=$$I J=$$J EOF close(MAKEFILE); @extraENV{qw(A B C D E F G H I J)} = qw(1 2 3 4 5 6 7 8 9 10); &run_make_with_options($makefile5,"",&get_logfile,0); $answer = "A= B= C= D= E= F= G= H= I= J=\n"; &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/include0000644000175000017500000000477610416553102022544 0ustar srivastasrivasta# -*-mode: perl; rm-trailing-spaces: nil-*- $description = "Test various forms of the GNU make `include' command."; $details = "\ Test include, -include, sinclude and various regressions involving them. Test extra whitespace at the end of the include, multiple -includes and sincludes (should not give an error) and make sure that errors are reported for targets that were also -included."; $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The contents of the Makefile ... print MAKEFILE < $makefile2"); print MAKEFILE "ANOTHER: ; \@echo This is another included makefile\n"; close(MAKEFILE); # Create the answer to what should be produced by this Makefile &run_make_with_options($makefile, "all", &get_logfile); $answer = "There should be no errors for this makefile.\n"; &compare_output($answer, &get_logfile(1)); &run_make_with_options($makefile, "ANOTHER", &get_logfile); $answer = "This is another included makefile\n"; &compare_output($answer, &get_logfile(1)); $makefile = undef; # Try to build the "error" target; this will fail since we don't know # how to create makeit.mk, but we should also get a message (even though # the -include suppressed it during the makefile read phase, we should # see one during the makefile run phase). run_make_test (' -include foo.mk error: foo.mk ; @echo $@ ', '', "#MAKE#: *** No rule to make target `foo.mk', needed by `error'. Stop.\n", 512 ); # Make sure that target-specific variables don't impact things. This could # happen because a file record is created when a target-specific variable is # set. run_make_test (' bar.mk: foo := baz -include bar.mk hello: ; @echo hello ', '', "hello\n" ); # Test inheritance of dontcare flag when rebuilding makefiles. # run_make_test(' .PHONY: all all: ; @: -include foo foo: bar; @: ', '', ''); 1; # Make sure that we don't die when the command fails but we dontcare. # (Savannah bug #13216). # run_make_test(' .PHONY: all all:; @: -include foo foo: bar; @: bar:; @exit 1 ', '', ''); # Check include, sinclude, -include with no filenames. # (Savannah bug #1761). run_make_test(' .PHONY: all all:; @: include -include sinclude', '', ''); 1; make-dfsg-3.81.orig/tests/scripts/features/mult_rules0000644000175000017500000000335310416553102023302 0ustar srivastasrivasta$description = "\ The following test creates a makefile to test the presence of multiple rules for one target. One file can be the target of several rules if at most one rule has commands; the other rules can only have dependencies."; $details = "\ The makefile created in this test contains two hardcoded rules for foo.o and bar.o. It then gives another multiple target rule with the same names as above but adding more dependencies. Additionally, another variable extradeps is listed as a dependency but is defined to be null. It can however be defined on the make command line as extradeps=extra.h which adds yet another dependency to the targets."; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE < $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "bigoutput littleoutput: test.h\n"; print MAKEFILE "\t\@echo I am \$(subst output,,\$@)\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch("test.h"); &run_make_with_options($makefile,"bigoutput",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "I am big\n"; &compare_output($answer,&get_logfile(1)); &run_make_with_options($makefile,"littleoutput",&get_logfile); $answer = "I am little\n"; &compare_output($answer,&get_logfile(1)); unlink "test.h"; 1; make-dfsg-3.81.orig/tests/scripts/features/order_only0000644000175000017500000000433510416553102023264 0ustar srivastasrivasta# -*-perl-*- $description = "Test order-only prerequisites."; $details = "\ Create makefiles with various combinations of normal and order-only prerequisites and ensure they behave properly. Test the \$| variable."; # TEST #0 -- Basics run_make_test(' %r: | baz ; @echo $< $^ $| bar: foo foo:;@: baz:;@:', '', "foo foo baz\n"); # TEST #1 -- First try: the order-only prereqs need to be built. run_make_test(q! foo: bar | baz @echo '$$^ = $^' @echo '$$| = $|' touch $@ .PHONY: baz bar baz: touch $@!, '', "touch bar\ntouch baz\n\$^ = bar\n\$| = baz\ntouch foo\n"); # TEST #2 -- now we do it again: baz is PHONY but foo should _NOT_ be updated run_make_test(undef, '', "touch baz\n"); unlink(qw(foo bar baz)); # TEST #3 -- Make sure the order-only prereq was promoted to normal. run_make_test(q! foo: bar | baz @echo '$$^ = $^' @echo '$$| = $|' touch $@ foo: baz .PHONY: baz bar baz: touch $@!, '', "touch bar\ntouch baz\n\$^ = bar baz\n\$| = \ntouch foo\n"); # TEST #4 -- now we do it again run_make_test(undef, '', "touch baz\n\$^ = bar baz\n\$| = \ntouch foo\n"); unlink(qw(foo bar baz)); # Test empty normal prereqs # TEST #5 -- make sure the parser was correct. run_make_test(q! foo:| baz @echo '$$^ = $^' @echo '$$| = $|' touch $@ .PHONY: baz baz: touch $@!, '', "touch baz\n\$^ = \n\$| = baz\ntouch foo\n"); # TEST #6 -- now we do it again: this time foo won't be built run_make_test(undef, '', "touch baz\n"); unlink(qw(foo baz)); # Test order-only in pattern rules # TEST #7 -- make sure the parser was correct. run_make_test(q! %.w : %.x | baz @echo '$$^ = $^' @echo '$$| = $|' touch $@ all: foo.w .PHONY: baz foo.x baz: touch $@!, '', "touch foo.x\ntouch baz\n\$^ = foo.x\n\$| = baz\ntouch foo.w\n"); # TEST #8 -- now we do it again: this time foo.w won't be built run_make_test(undef, '', "touch baz\n"); unlink(qw(foo.w foo.x baz)); # TEST #9 -- make sure that $< is set correctly in the face of order-only # prerequisites in pattern rules. run_make_test(' %r: | baz ; @echo $< $^ $| bar: foo foo:;@: baz:;@:', '', "foo foo baz\n"); 1; make-dfsg-3.81.orig/tests/scripts/features/override0000644000175000017500000000125110416553102022721 0ustar srivastasrivasta$description = "The following test creates a makefile to ..."; $details = ""; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "override define foo\n" ."\@echo First comes the definition.\n" ."\@echo Then comes the override.\n" ."endef\n" ."all: \n" ."\t\$(foo)\n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"foo=Hello",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "First comes the definition.\n" ."Then comes the override.\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/features/parallelism0000644000175000017500000001075210416553102023415 0ustar srivastasrivasta# -*-perl-*- $description = "Test parallelism (-j) option."; $details = "This test creates a makefile with two double-colon default rules. The first rule has a series of sleep and echo commands intended to run in series. The second and third have just an echo statement. When make is called in this test, it is given the -j option with a value of 4. This tells make that it may start up to four jobs simultaneously. In this case, since the first command is a sleep command, the output of the second and third commands will appear before the first if indeed make is running all of these commands in parallel."; if (!$parallel_jobs) { return -1; } if ($vos) { $sleep_command = "sleep -seconds"; } else { $sleep_command = "sleep"; } run_make_test(" all : def_1 def_2 def_3 def_1 : ; \@echo ONE; $sleep_command 3 ; echo TWO def_2 : ; \@$sleep_command 2 ; echo THREE def_3 : ; \@$sleep_command 1 ; echo FOUR", '-j4', "ONE\nFOUR\nTHREE\nTWO"); # Test parallelism with included files. Here we sleep/echo while # building the included files, to test that they are being built in # parallel. run_make_test(" all: 1 2; \@echo success -include 1.inc 2.inc 1.inc: ; \@echo ONE.inc; $sleep_command 2; echo TWO.inc; echo '1: ; \@echo ONE; $sleep_command 2; echo TWO' > \$\@ 2.inc: ; \@$sleep_command 1; echo THREE.inc; echo '2: ; \@$sleep_command 1; echo THREE' > \$\@", "-j4", "ONE.inc\nTHREE.inc\nTWO.inc\nONE\nTHREE\nTWO\nsuccess\n"); unlink('1.inc', '2.inc'); # Test parallelism with included files--this time recurse first and make # sure the jobserver works. run_make_test(" recurse: ; \@\$(MAKE) --no-print-directory -f #MAKEFILE# INC=yes all all: 1 2; \@echo success INC = no ifeq (\$(INC),yes) -include 1.inc 2.inc endif 1.inc: ; \@echo ONE.inc; $sleep_command 2; echo TWO.inc; echo '1: ; \@echo ONE; $sleep_command 2; echo TWO' > \$\@ 2.inc: ; \@$sleep_command 1; echo THREE.inc; echo '2: ; \@$sleep_command 1; echo THREE' > \$\@", "-j4", "ONE.inc\nTHREE.inc\nTWO.inc\nONE\nTHREE\nTWO\nsuccess\n"); unlink('1.inc', '2.inc'); # Grant Taylor reports a problem where tokens can be lost (not written back # to the pipe when they should be): this happened when there is a $(shell ...) # function in an exported recursive variable. I added some code to check # for this situation and print a message if it occurred. This test used # to trigger this code when I added it but no longer does after the fix. run_make_test(" export HI = \$(shell \$(\$\@.CMD)) first.CMD = echo hi second.CMD = $sleep_command 4; echo hi .PHONY: all first second all: first second first second: ; \@echo \$\@; $sleep_command 1; echo \$\@", '-j2', "first\nfirst\nsecond\nsecond"); # Michael Matz reported a bug where if make is running in # parallel without -k and two jobs die in a row, but not too close to each # other, then make will quit without waiting for the rest of the jobs to die. run_make_test(" .PHONY: all fail.1 fail.2 fail.3 ok all: fail.1 ok fail.2 fail.3 fail.1 fail.2 fail.3: \@sleep \$(patsubst fail.%,%,\$\@) \@echo Fail \@exit 1 ok: \@sleep 4 \@echo Ok done", '-rR -j5', 'Fail #MAKE#: *** [fail.1] Error 1 #MAKE#: *** Waiting for unfinished jobs.... Fail #MAKE#: *** [fail.2] Error 1 Fail #MAKE#: *** [fail.3] Error 1 Ok done', 512); # Test for Savannah bug #15641. # run_make_test(' .PHONY: all all:; @: -include foo.d foo.d: comp @echo building $@ comp: mod_a.o mod_b.o; @: mod_a.o mod_b.o: @exit 1 ', '-j2', ''); # Make sure that all jobserver FDs are closed if we need to re-exec the # master copy. # # First, find the "default" file descriptors we normally use # Then make sure they're still used. # # Right now we don't have a way to run a makefile and capture the output # without checking it, so we can't really write this test. # run_make_test(' # submake: ; @$(MAKE) --no-print-directory -f #MAKEFILE# fdprint 5>output # dependfile: ; @echo FOO=bar > $@ # INCL := true # FOO=foo # ifeq ($(INCL),true) # -include dependfile # endif # fdprint: ; @echo $(filter --jobserver%,$(MAKEFLAGS)) # recurse: ; @$(MAKE) --no-print-directory -f #MAKEFILE# submake INCL=true', # '-j2 INCL=false fdprint', # 'bar'); # unlink('dependfile', 'output'); # # Do it again, this time where the include is done by the non-master make. # run_make_test(undef, '-j2 recurse INCL=false', 'bar'); # unlink('dependfile', 'output'); 1; make-dfsg-3.81.orig/tests/scripts/features/patspecific_vars0000644000175000017500000000534710416553102024441 0ustar srivastasrivasta# -*-perl-*- $description = "Test pattern-specific variable settings."; $details = "\ Create a makefile containing various flavors of pattern-specific variable settings, override and non-override, and using various variable expansion rules, semicolon interference, etc."; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; all: one.x two.x three.x FOO = foo BAR = bar BAZ = baz one.x: override FOO = one %.x: BAR = two t%.x: BAR = four thr% : override BAZ = three one.x two.x three.x: ; @echo $@: $(FOO) $(BAR) $(BAZ) four.x: baz ; @echo $@: $(FOO) $(BAR) $(BAZ) baz: ; @echo $@: $(FOO) $(BAR) $(BAZ) # test matching multiple patterns a%: AAA = aaa %b: BBB = ccc a%: BBB += ddd %b: AAA ?= xxx %b: AAA += bbb .PHONY: ab ab: ; @echo $(AAA); echo $(BBB) EOF close(MAKEFILE); # TEST #1 -- basics &run_make_with_options($makefile, "", &get_logfile); $answer = "one.x: one two baz\ntwo.x: foo four baz\nthree.x: foo four three\n"; &compare_output($answer,&get_logfile(1)); # TEST #2 -- try the override feature &run_make_with_options($makefile, "BAZ=five", &get_logfile); $answer = "one.x: one two five\ntwo.x: foo four five\nthree.x: foo four three\n"; &compare_output($answer,&get_logfile(1)); # TEST #3 -- make sure patterns are inherited properly &run_make_with_options($makefile, "four.x", &get_logfile); $answer = "baz: foo two baz\nfour.x: foo two baz\n"; &compare_output($answer,&get_logfile(1)); # TEST #4 -- test multiple patterns matching the same target &run_make_with_options($makefile, "ab", &get_logfile); $answer = "aaa bbb\nccc ddd\n"; &compare_output($answer,&get_logfile(1)); # TEST #5 -- test pattern-specific exported variables # run_make_test(' /%: export foo := foo /bar: @echo $(foo) $$foo ', '', 'foo foo'); # TEST #6 -- test expansion of pattern-specific simple variables # run_make_test(' .PHONY: all all: inherit := good $$t all: bar baz b%: pattern := good $$t global := orginal $$t # normal target # ifdef rec bar: a = global: $(global) pattern: $(pattern) inherit: $(inherit) else bar: a := global: $(global) pattern: $(pattern) inherit: $(inherit) endif bar: ; @echo \'normal: $a;\' # pattern target # ifdef rec %z: a = global: $(global) pattern: $(pattern) inherit: $(inherit) else %z: a := global: $(global) pattern: $(pattern) inherit: $(inherit) endif %z: ; @echo \'pattrn: $a;\' global := new $$t ', '', 'normal: global: orginal $t pattern: inherit: ; pattrn: global: orginal $t pattern: inherit: ;'); # TEST #7 -- test expansion of pattern-specific recursive variables # run_make_test(undef, # reuse previous makefile 'rec=1', 'normal: global: new $t pattern: good $t inherit: good $t; pattrn: global: new $t pattern: good $t inherit: good $t;'); 1; make-dfsg-3.81.orig/tests/scripts/features/patternrules0000644000175000017500000000405210416553102023634 0ustar srivastasrivasta# -*-perl-*- $description = "Test pattern rules."; $details = ""; use Cwd; $dir = cwd; $dir =~ s,.*/([^/]+)$,../$1,; # TEST #1: Make sure that multiple patterns where the same target # can be built are searched even if the first one fails # to match properly. # run_make_test(' .PHONY: all all: case.1 case.2 case.3 a: void # 1 - existing file %.1: void @exit 1 %.1: #MAKEFILE# @exit 0 # 2 - phony %.2: void @exit 1 %.2: 2.phony @exit 0 .PHONY: 2.phony # 3 - implicit-phony %.3: void @exit 1 %.3: 3.implicit-phony @exit 0 3.implicit-phony: ', '', ''); # TEST #2: make sure files that are built via implicit rules are marked # as targets (Savannah bug #12202). # run_make_test(' TARGETS := foo foo.out .PHONY: all foo.in all: $(TARGETS) %: %.in @echo $@ %.out: % @echo $@ foo.in: ; @: ', '', 'foo foo.out'); # TEST #3: make sure intermidite files that also happened to be # prerequisites are not removed (Savannah bug #12267). # run_make_test(' $(dir)/foo.o: $(dir)/foo.y: @echo $@ %.c: %.y touch $@ %.o: %.c @echo $@ .PHONY: install install: $(dir)/foo.c ', "dir=$dir", "$dir/foo.y touch $dir/foo.c $dir/foo.o"); unlink("$dir/foo.c"); # TEST #4: make sure precious flag is set properly for targets # that are built via implicit rules (Savannah bug #13218). # run_make_test(' .DELETE_ON_ERROR: .PRECIOUS: %.bar %.bar:; @touch $@ && exit 1 $(dir)/foo.bar: ', "dir=$dir", "#MAKE#: *** [$dir/foo.bar] Error 1", 512); unlink("$dir/foo.bar"); # TEST #5: make sure targets of a macthed implicit pattern rule never # never considered intermediate (Savannah bug #13022). # run_make_test(' .PHONY: all all: foo.c foo.o %.h %.c: %.in touch $*.h touch $*.c %.o: %.c %.h echo $+ >$@ %.o: %.c @echo wrong rule foo.in: touch $@ ', '', 'touch foo.in touch foo.h touch foo.c echo foo.c foo.h >foo.o'); unlink('foo.in', 'foo.h', 'foo.c', 'foo.o'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/quoting0000644000175000017500000000131210416553102022566 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to test using \n" . "quotes within makefiles."; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOM'; SHELL = /bin/sh TEXFONTS = NICEFONT DEFINES = -DDEFAULT_TFM_PATH=\".:$(TEXFONTS)\" test: ; @"echo" 'DEFINES = $(DEFINES)' EOM # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = 'DEFINES = -DDEFAULT_TFM_PATH=\".:NICEFONT\"' . "\n"; # COMPARE RESULTS &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/features/recursion0000644000175000017500000000240710416553102023117 0ustar srivastasrivasta# -*-perl-*- $description = "Test recursion."; $details = "DETAILS"; # Test some basic recursion. run_make_test(' all: $(MAKE) -f #MAKEFILE# foo foo: @echo $(MAKE) @echo MAKELEVEL = $(MAKELEVEL) $(MAKE) -f #MAKEFILE# last last: @echo $(MAKE) @echo MAKELEVEL = $(MAKELEVEL) @echo THE END ', ('CFLAGS=-O -w' . ($parallel_jobs ? '-j 2' : '')), ($vos ? "#MAKE#: Entering directory `#PWD#' make 'CFLAGS=-O' -f #MAKEFILE# foo make CFLAGS=-O MAKELEVEL = 0 make 'CFLAGS=-O' -f #MAKEFILE# last make CFLAGS=-O MAKELEVEL = 0 THE END #MAKE#: Leaving directory `#PWD#'" : "#MAKE#: Entering directory `#PWD#' #MAKEPATH# -f #MAKEFILE# foo #MAKE#[1]: Entering directory `#PWD#' #MAKEPATH# MAKELEVEL = 1 #MAKEPATH# -f #MAKEFILE# last #MAKE#[2]: Entering directory `#PWD#' #MAKEPATH# MAKELEVEL = 2 THE END #MAKE#[2]: Leaving directory `#PWD#' #MAKE#[1]: Leaving directory `#PWD#' #MAKE#: Leaving directory `#PWD#'")); # Test command line overrides. run_make_test(' recur: all ; @$(MAKE) --no-print-directory -f #MAKEFILE# a=AA all all: ; @echo "MAKEOVERRIDES = $(MAKEOVERRIDES)" ', 'a=ZZ', 'MAKEOVERRIDES = a=ZZ MAKEOVERRIDES = a=AA '); 1; make-dfsg-3.81.orig/tests/scripts/features/reinvoke0000644000175000017500000000313410416553102022726 0ustar srivastasrivasta# -*-mode: perl-*- $description = "Test GNU make's auto-reinvocation feature."; $details = "\ If the makefile or one it includes can be rebuilt then it is, and make is reinvoked. We create a rule to rebuild the makefile from a temp file, then touch the temp file to make it newer than the makefile."; $omkfile = $makefile; &utouch(-600, 'incl.mk'); # For some reason if we don't do this then the test fails for systems # with sub-second timestamps, maybe + NFS? Not sure. &utouch(-1, 'incl-1.mk'); run_make_test(' all: ; @echo running rules. #MAKEFILE# incl.mk: incl-1.mk @echo rebuilding $@ @echo >> $@ include incl.mk', '', "rebuilding incl.mk\nrunning rules.\n"); # Make sure updating the makefile itself also works &utouch(-600, $omkfile); run_make_test(undef, '', "rebuilding #MAKEFILE#\nrunning rules.\n"); &rmfiles('incl.mk', 'incl-1.mk'); # In this test we create an included file that's out-of-date, but then # the rule doesn't update it. Make shouldn't re-exec. &utouch(-600, 'b','a'); #&utouch(-10, 'a'); &touch('c'); run_make_test(' SHELL = /bin/sh all: ; @echo hello a : b ; echo >> $@ b : c ; [ -f $@ ] || echo >> $@ c: ; echo >> $@ include $(F)', 'F=a', "[ -f b ] || echo >> b\nhello\n"); # Now try with the file we're not updating being the actual file we're # including: this and the previous one test different parts of the code. run_make_test(undef, "F=b", "[ -f b ] || echo >> b\nhello\n") &rmfiles('a','b','c'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/se_explicit0000644000175000017500000000271710416553102023422 0ustar srivastasrivasta# -*-perl-*- $description = "Test second expansion in ordinary rules."; $details = ""; # TEST #0: Test handing of '$' in prerequisites with and without second # expansion. run_make_test(q! ifdef SE .SECONDEXPANSION: endif foo$$bar: bar$$baz bar$$biz ; @echo '$@ : $^' PRE = one two bar$$baz: $$(PRE) baraz: $$(PRE) PRE = three four .DEFAULT: ; @echo '$@' !, '', "\$\nbar\$biz\nfoo\$bar : bar\$baz bar\$biz"); run_make_test(undef, 'SE=1', "three\nfour\nbariz\nfoo\$bar : baraz bariz"); # TEST #1: automatic variables. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ foo: bar baz foo: biz | buz foo: $$@.1 \ $$<.2 \ $$(addsuffix .3,$$^) \ $$(addsuffix .4,$$+) \ $$|.5 \ $$*.6 ', '', 'bar baz biz buz foo.1 bar.2 bar.3 baz.3 biz.3 bar.4 baz.4 biz.4 buz.5 .6 '); # Test #2: target/pattern -specific variables. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ foo.x: $$a $$b foo.x: a := bar %.x: b := baz ', '', 'bar baz '); # Test #3: order of prerequisites. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ all: foo bar baz # Subtest #1 # foo: foo.1; @: foo: foo.2 foo: foo.3 # Subtest #2 # bar: bar.2 bar: bar.1; @: bar: bar.3 # Subtest #3 # baz: baz.1 baz: baz.2 baz: ; @: ', '', 'foo.1 foo.2 foo.3 bar.1 bar.2 bar.3 baz.1 baz.2 '); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/se_implicit0000644000175000017500000000475410416553102023416 0ustar srivastasrivasta# -*-perl-*- $description = "Test second expansion in ordinary rules."; $details = ""; use Cwd; $dir = cwd; $dir =~ s,.*/([^/]+)$,../$1,; # Test #1: automatic variables. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ foo.a: bar baz foo.a: biz | buz foo.%: 1.$$@ \ 2.$$< \ $$(addprefix 3.,$$^) \ $$(addprefix 4.,$$+) \ 5.$$| \ 6.$$* @: 1.foo.a \ 2.bar \ 3.bar \ 3.baz \ 3.biz \ 4.bar \ 4.baz \ 4.biz \ 5.buz \ 6.a: @echo $@ ', '', '1.foo.a 2.bar 3.bar 3.baz 3.biz 4.bar 4.baz 4.biz 5.buz 6.a bar baz biz buz '); # Test #2: target/pattern -specific variables. # run_make_test(' .SECONDEXPANSION: foo.x: foo.%: $$(%_a) $$(%_b) bar @: foo.x: x_a := bar %.x: x_b := baz bar baz: ; @echo $@ ', '', 'bar baz '); # Test #3: order of prerequisites. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ all: foo bar baz # Subtest #1 # %oo: %oo.1; @: foo: foo.2 foo: foo.3 foo.1: ; @echo $@ # Subtest #2 # bar: bar.2 %ar: %ar.1; @: bar: bar.3 bar.1: ; @echo $@ # Subtest #3 # baz: baz.1 baz: baz.2 %az: ; @: ', '', 'foo.1 foo.2 foo.3 bar.1 bar.2 bar.3 baz.1 baz.2 '); # Test #4: stem splitting logic. # run_make_test(' .SECONDEXPANSION: $(dir)/tmp/bar.o: $(dir)/tmp/foo/bar.c: ; @echo $@ $(dir)/tmp/bar/bar.c: ; @echo $@ foo.h: ; @echo $@ %.o: $$(addsuffix /%.c,foo bar) foo.h @echo $@: {$<} $^ ', "dir=$dir", "$dir/tmp/foo/bar.c $dir/tmp/bar/bar.c foo.h $dir/tmp/bar.o: {$dir/tmp/foo/bar.c} $dir/tmp/foo/bar.c $dir/tmp/bar/bar.c foo.h "); # Test #5: stem splitting logic and order-only prerequisites. # run_make_test(' .SECONDEXPANSION: $(dir)/tmp/foo.o: $(dir)/tmp/foo.c $(dir)/tmp/foo.c: ; @echo $@ bar.h: ; @echo $@ %.o: %.c|bar.h @echo $@: {$<} {$|} $^ ', "dir=$dir", "$dir/tmp/foo.c bar.h $dir/tmp/foo.o: {$dir/tmp/foo.c} {bar.h} $dir/tmp/foo.c "); # Test #6: lack of implicit prerequisites. # run_make_test(' .SECONDEXPANSION: foo.o: foo.c foo.c: ; @echo $@ %.o: @echo $@: {$<} $^ ', '', 'foo.c foo.o: {foo.c} foo.c '); # Test #7: Test stem from the middle of the name. # run_make_test(' .SECONDEXPANSION: foobarbaz: foo%baz: % $$*.1 @echo $* bar bar.1: @echo $@ ', '', 'bar bar.1 bar '); # Test #8: Make sure stem triple-expansion does not happen. # run_make_test(' .SECONDEXPANSION: foo$$bar: f%r: % $$*.1 @echo \'$*\' oo$$ba oo$$ba.1: @echo \'$@\' ', '', 'oo$ba oo$ba.1 oo$ba '); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/se_statpat0000644000175000017500000000311410416553102023251 0ustar srivastasrivasta# -*-perl-*- $description = "Test second expansion in static pattern rules."; $details = ""; # Test #1: automatic variables. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ foo.a foo.b: foo.%: bar.% baz.% foo.a foo.b: foo.%: biz.% | buz.% foo.a foo.b: foo.%: $$@.1 \ $$<.2 \ $$(addsuffix .3,$$^) \ $$(addsuffix .4,$$+) \ $$|.5 \ $$*.6 ', '', 'bar.a baz.a biz.a buz.a foo.a.1 bar.a.2 bar.a.3 baz.a.3 biz.a.3 bar.a.4 baz.a.4 biz.a.4 buz.a.5 a.6 '); # Test #2: target/pattern -specific variables. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ foo.x foo.y: foo.%: $$(%_a) $$($$*_b) foo.x: x_a := bar %.x: x_b := baz ', '', 'bar baz '); # Test #3: order of prerequisites. # run_make_test(' .SECONDEXPANSION: .DEFAULT: ; @echo $@ all: foo.a bar.a baz.a # Subtest #1 # foo.a foo.b: foo.%: foo.%.1; @: foo.a foo.b: foo.%: foo.%.2 foo.a foo.b: foo.%: foo.%.3 # Subtest #2 # bar.a bar.b: bar.%: bar.%.2 bar.a bar.b: bar.%: bar.%.1; @: bar.a bar.b: bar.%: bar.%.3 # Subtest #3 # baz.a baz.b: baz.%: baz.%.1 baz.a baz.b: baz.%: baz.%.2 baz.a baz.b: ; @: ', '', 'foo.a.1 foo.a.2 foo.a.3 bar.a.1 bar.a.2 bar.a.3 baz.a.1 baz.a.2 '); # Test #4: Make sure stem triple-expansion does not happen. # run_make_test(' .SECONDEXPANSION: foo$$bar: f%r: % $$*.1 @echo \'$*\' oo$$ba oo$$ba.1: @echo \'$@\' ', '', 'oo$ba oo$ba.1 oo$ba '); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/features/statipattrules0000644000175000017500000000432410416553102024176 0ustar srivastasrivasta# -*-perl-*- $description = "Test handling of static pattern rules."; $details = "\ The makefile created in this test has three targets. The filter command is used to get those target names ending in .o and statically creates a compile command with the target name and the target name with .c. It also does the same thing for another target filtered with .elc and creates a command to emacs a .el file"; &touch('bar.c', 'lose.c'); # TEST #0 # ------- run_make_test(' files = foo.elc bar.o lose.o $(filter %.o,$(files)): %.o: %.c ; @echo CC -c $(CFLAGS) $< -o $@ $(filter %.elc,$(files)): %.elc: %.el ; @echo emacs $< ', '', 'CC -c bar.c -o bar.o'); # TEST #1 # ------- run_make_test(undef, 'lose.o', 'CC -c lose.c -o lose.o'); # TEST #2 # ------- &touch("foo.el"); run_make_test(undef, 'foo.elc', 'emacs foo.el'); # Clean up after the first tests. unlink('foo.el', 'bar.c', 'lose.c'); # TEST #3 -- PR/1670: don't core dump on invalid static pattern rules # ------- run_make_test(' .DEFAULT: ; @echo $@ foo: foo%: % %.x % % % y.% % ; @echo $@ ', '', ".x\ny.\nfoo"); # TEST #4 -- bug #12180: core dump on a stat pattern rule with an empty # prerequisite list. run_make_test(' foo.x bar.x: %.x : ; @echo $@ ', '', 'foo.x'); # TEST #5 -- bug #13881: double colon static pattern rule does not # substitute %. run_make_test(' foo.bar:: %.bar: %.baz foo.baz: ;@: ', '', ''); # TEST #6: make sure the second stem does not overwrite the first # perprerequisite's stem (Savannah bug #16053). # run_make_test(' all.foo.bar: %.foo.bar: %.one all.foo.bar: %.bar: %.two all.foo.bar: @echo $* @echo $^ .DEFAULT:;@: ', '', 'all.foo all.one all.foo.two'); # TEST #7: make sure the second stem does not overwrite the first # perprerequisite's stem when second expansion is enabled # (Savannah bug #16053). # run_make_test(' .SECONDEXPANSION: all.foo.bar: %.foo.bar: %.one $$*-one all.foo.bar: %.bar: %.two $$*-two all.foo.bar: @echo $* @echo $^ .DEFAULT:;@: ', '', 'all.foo all.one all-one all.foo.two all.foo-two'); 1; make-dfsg-3.81.orig/tests/scripts/features/targetvars0000644000175000017500000001610010416553102023263 0ustar srivastasrivasta# -*-perl-*- $description = "Test target-specific variable settings."; $details = "\ Create a makefile containing various flavors of target-specific variable values, override and non-override, and using various variable expansion rules, semicolon interference, etc."; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; SHELL = /bin/sh export FOO = foo export BAR = bar one: override FOO = one one two: ; @echo $(FOO) $(BAR) two: BAR = two three: ; BAR=1000 @echo $(FOO) $(BAR) # Some things that shouldn't be target vars funk : override funk : override adelic adelic override : ; echo $@ # Test per-target recursive variables four:FOO=x four:VAR$(FOO)=ok four: ; @echo '$(FOO) $(VAR$(FOO)) $(VAR) $(VARx)' five:FOO=x five six : VAR$(FOO)=good five six: ;@echo '$(FOO) $(VAR$(FOO)) $(VAR) $(VARx) $(VARfoo)' # Test per-target variable inheritance seven: eight seven eight: ; @echo $@: $(FOO) $(BAR) seven: BAR = seven seven: FOO = seven eight: BAR = eight # Test the export keyword with per-target variables nine: ; @echo $(FOO) $(BAR) $$FOO $$BAR nine: FOO = wallace nine-a: export BAZ = baz nine-a: ; @echo $$BAZ # Test = escaping EQ = = ten: one\=two ten: one \= two ten one$(EQ)two $(EQ):;@echo $@ .PHONY: one two three four five six seven eight nine ten $(EQ) one$(EQ)two # Test target-specific vars with pattern/suffix rules QVAR = qvar RVAR = = %.q : ; @echo $(QVAR) $(RVAR) foo.q : RVAR += rvar # Target-specific vars with multiple LHS pattern rules %.r %.s %.t: ; @echo $(QVAR) $(RVAR) $(SVAR) $(TVAR) foo.r : RVAR += rvar foo.t : TVAR := $(QVAR) EOF close(MAKEFILE); # TEST #1 &run_make_with_options($makefile, "one two three", &get_logfile); $answer = "one bar\nfoo two\nBAR=1000\nfoo bar\n"; &compare_output($answer,&get_logfile(1)); # TEST #2 &run_make_with_options($makefile, "one two FOO=1 BAR=2", &get_logfile); $answer = "one 2\n1 2\n"; &compare_output($answer,&get_logfile(1)); # TEST #3 &run_make_with_options($makefile, "four", &get_logfile); $answer = "x ok ok\n"; &compare_output($answer,&get_logfile(1)); # TEST #4 &run_make_with_options($makefile, "seven", &get_logfile); $answer = "eight: seven eight\nseven: seven seven\n"; &compare_output($answer,&get_logfile(1)); # TEST #5 &run_make_with_options($makefile, "nine", &get_logfile); $answer = "wallace bar wallace bar\n"; &compare_output($answer,&get_logfile(1)); # TEST #5-a &run_make_with_options($makefile, "nine-a", &get_logfile); $answer = "baz\n"; &compare_output($answer,&get_logfile(1)); # TEST #6 &run_make_with_options($makefile, "ten", &get_logfile); $answer = "one=two\none bar\n=\nfoo two\nten\n"; &compare_output($answer,&get_logfile(1)); # TEST #6 &run_make_with_options($makefile, "foo.q bar.q", &get_logfile); $answer = "qvar = rvar\nqvar =\n"; &compare_output($answer,&get_logfile(1)); # TEST #7 &run_make_with_options($makefile, "foo.t bar.s", &get_logfile); $answer = "qvar = qvar\nqvar =\n"; &compare_output($answer,&get_logfile(1)); # TEST #8 # For PR/1378: Target-specific vars don't inherit correctly $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile2"); print MAKEFILE <<'EOF'; foo: FOO = foo bar: BAR = bar foo: bar bar: baz baz: ; @echo $(FOO) $(BAR) EOF close(MAKEFILE); &run_make_with_options("$makefile2", "", &get_logfile); $answer = "foo bar\n"; &compare_output($answer, &get_logfile(1)); # TEST #9 # For PR/1380: Using += assignment in target-specific variables sometimes fails # Also PR/1831 $makefile3 = &get_tmpfile; open(MAKEFILE,"> $makefile3"); print MAKEFILE <<'EOF'; .PHONY: all one all: FOO += baz all: one; @echo $(FOO) FOO = bar one: FOO += biz one: FOO += boz one: ; @echo $(FOO) EOF close(MAKEFILE); &run_make_with_options("$makefile3", "", &get_logfile); $answer = "bar baz biz boz\nbar baz\n"; &compare_output($answer, &get_logfile(1)); # Test #10 &run_make_with_options("$makefile3", "one", &get_logfile); $answer = "bar biz boz\n"; &compare_output($answer, &get_logfile(1)); # Test #11 # PR/1709: Test semicolons in target-specific variable values $makefile4 = &get_tmpfile; open(MAKEFILE, "> $makefile4"); print MAKEFILE <<'EOF'; foo : FOO = ; ok foo : ; @echo '$(FOO)' EOF close(MAKEFILE); &run_make_with_options("$makefile4", "", &get_logfile); $answer = "; ok\n"; &compare_output($answer, &get_logfile(1)); # Test #12 # PR/2020: More hassles with += target-specific vars. I _really_ think # I nailed it this time :-/. $makefile5 = &get_tmpfile; open(MAKEFILE, "> $makefile5"); print MAKEFILE <<'EOF'; .PHONY: a BLAH := foo COMMAND = echo $(BLAH) a: ; @$(COMMAND) a: BLAH := bar a: COMMAND += snafu $(BLAH) EOF close(MAKEFILE); &run_make_with_options("$makefile5", "", &get_logfile); $answer = "bar snafu bar\n"; &compare_output($answer, &get_logfile(1)); # Test #13 # Test double-colon rules with target-specific variable values $makefile6 = &get_tmpfile; open(MAKEFILE, "> $makefile6"); print MAKEFILE <<'EOF'; W = bad X = bad foo: W = ok foo:: ; @echo $(W) $(X) $(Y) $(Z) foo:: ; @echo $(W) $(X) $(Y) $(Z) foo: X = ok Y = foo bar: foo bar: Y = bar Z = nopat ifdef PATTERN fo% : Z = pat endif EOF close(MAKEFILE); &run_make_with_options("$makefile6", "foo", &get_logfile); $answer = "ok ok foo nopat\nok ok foo nopat\n"; &compare_output($answer, &get_logfile(1)); # Test #14 # Test double-colon rules with target-specific variable values and # inheritance &run_make_with_options("$makefile6", "bar", &get_logfile); $answer = "ok ok bar nopat\nok ok bar nopat\n"; &compare_output($answer, &get_logfile(1)); # Test #15 # Test double-colon rules with pattern-specific variable values &run_make_with_options("$makefile6", "foo PATTERN=yes", &get_logfile); $answer = "ok ok foo pat\nok ok foo pat\n"; &compare_output($answer, &get_logfile(1)); # Test #16 # Test target-specific variables with very long command line # (> make default buffer length) $makefile7 = &get_tmpfile; open(MAKEFILE, "> $makefile7"); print MAKEFILE <<'EOF'; base_metals_fmd_reports.sun5 base_metals_fmd_reports CreateRealPositions CreateMarginFunds deals_changed_since : BUILD_OBJ=$(shell if [ -f "build_information.generate" ]; then echo "$(OBJ_DIR)/build_information.o"; else echo "no build information"; fi ) deals_changed_since: ; @echo $(BUILD_OBJ) EOF close(MAKEFILE); &run_make_with_options("$makefile7", '', &get_logfile); $answer = "no build information\n"; &compare_output($answer, &get_logfile(1)); # TEST #17 # Test a merge of set_lists for files, where one list is much longer # than the other. See Savannah bug #15757. mkdir('t1', 0777); touch('t1/rules.mk'); run_make_test(' VPATH = t1 include rules.mk .PHONY: all all: foo.x foo.x : rules.mk ; @echo MYVAR=$(MYVAR) FOOVAR=$(FOOVAR) ALLVAR=$(ALLVAR) all: ALLVAR = xxx foo.x: FOOVAR = bar rules.mk : MYVAR = foo .INTERMEDIATE: foo.x rules.mk ', '-I t1', 'MYVAR= FOOVAR=bar ALLVAR=xxx'); rmfiles('t1/rules.mk'); rmdir('t1'); # TEST #18 # Test appending to a simple variable containing a "$": avoid a # double-expansion. See Savannah bug #15913. run_make_test(" VAR := \$\$FOO foo: VAR += BAR foo: ; \@echo '\$(VAR)'", '', '$FOO BAR'); 1; make-dfsg-3.81.orig/tests/scripts/features/varnesting0000644000175000017500000000116010416553102023261 0ustar srivastasrivasta$description = "The following test creates a makefile to ..."; $details = ""; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "x = variable1\n" ."variable2 := Hello\n" ."y = \$(subst 1,2,\$(x))\n" ."z = y\n" ."a := \$(\$(\$(z)))\n" ."all: \n" ."\t\@echo \$(a)\n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "Hello\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/features/vpath0000644000175000017500000000467310416553102022237 0ustar srivastasrivasta$description = "The following test creates a makefile to test the \n" ."vpath directive which allows you to specify a search \n" ."path for a particular class of filenames, those that\n" ."match a particular pattern."; $details = "This tests the vpath directive by specifying search directories\n" ."for one class of filenames with the form: vpath pattern directories" ."\nIn this test, we specify the working directory for all files\n" ."that end in c or h. We also test the variables $@ (which gives\n" ."target name) and $^ (which is a list of all dependencies \n" ."including the directories in which they were found). It also\n" ."uses the function firstword used to extract just the first\n" ."dependency from the entire list."; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "vpath %.c foo\n"; print MAKEFILE "vpath %.c $workdir\n"; print MAKEFILE "vpath %.h $workdir\n"; print MAKEFILE "objects = main.o kbd.o commands.o display.o insert.o\n"; print MAKEFILE "edit: \$(objects)\n"; print MAKEFILE "\t\@echo cc -o \$@ \$^\n"; print MAKEFILE "main.o : main.c defs.h\n"; print MAKEFILE "\t\@echo cc -c \$(firstword \$^)\n"; print MAKEFILE "kbd.o : kbd.c defs.h command.h\n"; print MAKEFILE "\t\@echo cc -c kbd.c\n"; print MAKEFILE "commands.o : command.c defs.h command.h\n"; print MAKEFILE "\t\@echo cc -c commands.c\n"; print MAKEFILE "display.o : display.c defs.h buffer.h\n"; print MAKEFILE "\t\@echo cc -c display.c\n"; print MAKEFILE "insert.o : insert.c defs.h buffer.h\n"; print MAKEFILE "\t\@echo cc -c insert.c\n"; # END of Contents of MAKEFILE close(MAKEFILE); @files_to_touch = ("$workdir${pathsep}main.c","$workdir${pathsep}defs.h", "$workdir${pathsep}kbd.c","$workdir${pathsep}command.h", "$workdir${pathsep}commands.c","$workdir${pathsep}display.c", "$workdir${pathsep}buffer.h","$workdir${pathsep}insert.c", "$workdir${pathsep}command.c"); &touch(@files_to_touch); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "cc -c $workdir${pathsep}main.c\ncc -c kbd.c\ncc -c commands.c\n" ."cc -c display.c\n" ."cc -c insert.c\ncc -o edit main.o kbd.o commands.o display.o " ."insert.o\n"; if (&compare_output($answer,&get_logfile(1))) { unlink @files_to_touch; } 1; make-dfsg-3.81.orig/tests/scripts/features/vpath20000644000175000017500000000233710416553102022314 0ustar srivastasrivasta$description = "This is part 2 in a series to test the vpath directive\n" ."It tests the three forms of the directive:\n" ." vpath pattern directive\n" ." vpath pattern (clears path associated with pattern)\n" ." vpath (clears all paths specified with vpath)\n"; $details = "This test simply adds many search paths using various vpath\n" ."directive forms and clears them afterwards. It has a simple\n" ."rule to print a message at the end to confirm that the makefile\n" ."ran with no errors.\n"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "VPATH = $workdir:$sourcedir\n"; print MAKEFILE "vpath %.c foo\n"; print MAKEFILE "vpath %.c $workdir\n"; print MAKEFILE "vpath %.c $sourcedir\n"; print MAKEFILE "vpath %.h $workdir\n"; print MAKEFILE "vpath %.c\n"; print MAKEFILE "vpath\n"; print MAKEFILE "all:\n"; print MAKEFILE "\t\@echo ALL IS WELL\n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "ALL IS WELL\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/features/vpathgpath0000644000175000017500000000210410416553102023246 0ustar srivastasrivasta# -*-perl-*- $description = "Tests VPATH+/GPATH functionality."; $details = ""; $VP = "$workdir$pathsep"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "VPATH = $VP\n"; print MAKEFILE <<'EOMAKE'; GPATH = $(VPATH) .SUFFIXES: .a .b .c .d .PHONY: general rename notarget intermediate %.a: %.b: %.c: %.d: %.a : %.b ; cat $^ > $@ %.b : %.c ; cat $^ > $@ %.c :: %.d ; cat $^ > $@ # General testing info: general: foo.b foo.b: foo.c bar.c EOMAKE close(MAKEFILE); @touchedfiles = (); $off = -500; sub touchfiles { foreach (@_) { ($f = $_) =~ s,VP/,$VP,g; &utouch($off, $f); $off += 10; push(@touchedfiles, $f); } } # Run the general-case test &touchfiles("VP/foo.d", "VP/bar.d", "VP/foo.c", "VP/bar.c", "foo.b", "bar.d"); &run_make_with_options($makefile,"general",&get_logfile()); push(@touchedfiles, "bar.c"); $answer = "$make_name: Nothing to be done for `general'.\n"; &compare_output($answer,&get_logfile(1)); unlink(@touchedfiles) unless $keep; 1; make-dfsg-3.81.orig/tests/scripts/features/vpathplus0000644000175000017500000000460710416553102023140 0ustar srivastasrivasta# -*-perl-*- $description = "Tests the new VPATH+ functionality added in 3.76."; $details = ""; $VP = "$workdir$pathsep"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "VPATH = $VP\n"; print MAKEFILE <<'EOMAKE'; SHELL = /bin/sh .SUFFIXES: .a .b .c .d .PHONY: general rename notarget intermediate %.a: %.b: %.c: %.d: %.a : %.b cat $^ > $@ %.b : %.c cat $^ > $@ 2>/dev/null || exit 1 %.c :: %.d cat $^ > $@ # General testing info: general: foo.b foo.b: foo.c bar.c # Rename testing info: rename: $(VPATH)/foo.c foo.d # Target not made testing info: notarget: notarget.b notarget.c: notarget.d -@echo "not creating $@ from $^" # Intermediate files: intermediate: inter.a EOMAKE close(MAKEFILE); @touchedfiles = (); $off = -500; sub touchfiles { foreach (@_) { &utouch($off, $_); $off += 10; push(@touchedfiles, $_); } } # Run the general-case test &touchfiles("$VP/foo.d", "$VP/bar.d", "$VP/foo.c", "$VP/bar.c", "foo.b", "bar.d"); &run_make_with_options($makefile,"general",&get_logfile); push(@touchedfiles, "bar.c"); $answer = "cat bar.d > bar.c cat ${VP}foo.c bar.c > foo.b 2>/dev/null || exit 1 "; &compare_output($answer,&get_logfile(1)); # Test rules that don't make the target correctly &touchfiles("$VP/notarget.c", "notarget.b", "notarget.d"); &run_make_with_options($makefile,"notarget",&get_logfile,512); $answer = "not creating notarget.c from notarget.d cat notarget.c > notarget.b 2>/dev/null || exit 1 $make_name: *** [notarget.b] Error 1 "; &compare_output($answer,&get_logfile(1)); # Test intermediate file handling (part 1) &touchfiles("$VP/inter.d"); &run_make_with_options($makefile,"intermediate",&get_logfile); push(@touchedfiles, "inter.a", "inter.b"); $answer = "cat ${VP}inter.d > inter.c cat inter.c > inter.b 2>/dev/null || exit 1 cat inter.b > inter.a rm inter.b inter.c "; &compare_output($answer,&get_logfile(1)); # Test intermediate file handling (part 2) &utouch(-20, "inter.a"); &utouch(-10, "$VP/inter.b"); &touch("$VP/inter.d"); push(@touchedfiles, "$VP/inter.b", "$VP/inter.d"); &run_make_with_options($makefile,"intermediate",&get_logfile); $answer = "cat ${VP}inter.d > inter.c cat inter.c > inter.b 2>/dev/null || exit 1 cat inter.b > inter.a rm inter.c "; &compare_output($answer,&get_logfile(1)); unlink @touchedfiles unless $keep; 1; make-dfsg-3.81.orig/tests/scripts/functions/0000755000175000017500000000000010416553102021352 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/functions/abspath0000644000175000017500000000343310416553102022722 0ustar srivastasrivasta# -*-perl-*- $description = "Test the abspath functions."; $details = ""; run_make_test(' ifneq ($(realpath $(abspath .)),$(CURDIR)) $(warning .: abs="$(abspath .)" real="$(realpath $(abspath .))" curdir="$(CURDIR)") endif ifneq ($(realpath $(abspath ./)),$(CURDIR)) $(warning ./: abs="$(abspath ./)" real="$(realpath $(abspath ./))" curdir="$(CURDIR)") endif ifneq ($(realpath $(abspath .///)),$(CURDIR)) $(warning .///: abs="$(abspath .///)" real="$(realpath $(abspath .///))" curdir="$(CURDIR)") endif ifneq ($(abspath /),/) $(warning /: abspath="$(abspath /)") endif ifneq ($(abspath ///),/) $(warning ///: abspath="$(abspath ///)") endif ifneq ($(abspath /.),/) $(warning /.: abspath="$(abspath /.)") endif ifneq ($(abspath ///.),/) $(warning ///.: abspath="$(abspath ///.)") endif ifneq ($(abspath /./),/) $(warning /./: abspath="$(abspath /./)") endif ifneq ($(abspath /.///),/) $(warning /.///: abspath="$(abspath /.///)") endif ifneq ($(abspath /..),/) $(warning /..: abspath="$(abspath /..)") endif ifneq ($(abspath ///..),/) $(warning ///..: abspath="$(abspath ///..)") endif ifneq ($(abspath /../),/) $(warning /../: abspath="$(abspath /../)") endif ifneq ($(abspath /..///),/) $(warning /..///: abspath="$(abspath /..///)") endif ifneq ($(abspath /foo/bar/..),/foo) $(warning /foo/bar/..: abspath="$(abspath /foo/bar/..)") endif ifneq ($(abspath /foo/bar/../../../baz),/baz) $(warning /foo/bar/../../../baz: abspath="$(abspath /foo/bar/../../../baz)") endif ifneq ($(abspath /foo/bar/../ /..),/foo /) $(warning /foo/bar/../ /..: abspath="$(abspath /foo/bar/../ /..)") endif .PHONY: all all: ; @: ', '', ''); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/addprefix0000644000175000017500000000220410416553102023241 0ustar srivastasrivasta$description = "The following test creates a makefile to test the addprefix " ."function."; $details = ""; # IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(addprefix src${pathsep},a.b.z.foo hacks) \n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "src${pathsep}a.b.z.foo src${pathsep}hacks\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/addsuffix0000644000175000017500000000134110416553102023251 0ustar srivastasrivasta# -*-perl-*- $description = "Test the addsuffix function."; $details = ""; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(basename src${pathsep}a.b.z.foo.c src${pathsep}hacks src.bar${pathsep}a.b.z.foo.c src.bar${pathsep}hacks hacks) \n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "src${pathsep}a.b.z.foo src${pathsep}hacks src.bar${pathsep}a.b.z.foo src.bar${pathsep}hacks hacks\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/call0000644000175000017500000000475110416553102022217 0ustar srivastasrivasta# -*-perl-*- $description = "Test the call function.\n"; $details = "Try various uses of call and ensure they all give the correct results.\n"; open(MAKEFILE, "> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOMAKE'; # Simple, just reverse two things # reverse = $2 $1 # A complex `map' function, using recursive `call'. # map = $(foreach a,$2,$(call $1,$a)) # Test using a builtin; this is silly as it's simpler to do without call # my-notdir = $(call notdir,$(1)) # Test using non-expanded builtins # my-foreach = $(foreach $(1),$(2),$(3)) my-if = $(if $(1),$(2),$(3)) # Test recursive invocations of call with different arguments # one = $(1) $(2) $(3) two = $(call one,$(1),foo,$(2)) # Test recursion on the user-defined function. As a special case make # won't error due to this. # Implement transitive closure using $(call ...) # DEP_foo = bar baz quux DEP_baz = quux blarp rest = $(wordlist 2,$(words ${1}),${1}) tclose = $(if $1,$(firstword $1) \ $(call tclose,$(sort ${DEP_$(firstword $1)} $(call rest,$1)))) all: ; @echo '$(call reverse,bar,foo)'; \ echo '$(call map,origin,MAKE reverse map)'; \ echo '$(call my-notdir,a/b c/d e/f)'; \ echo '$(call my-foreach)'; \ echo '$(call my-foreach,a,,,)'; \ echo '$(call my-if,a,b,c)'; \ echo '$(call two,bar,baz)'; \ echo '$(call tclose,foo)' EOMAKE # These won't work until/unless PR/1527 is resolved. # echo '$(call my-foreach,a,x y z,$(a)$(a))'; \ # echo '$(call my-if,,$(warning don't print this),ok)' # # $answer = "xx yy zz\nok\n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile); $answer = "foo bar\ndefault file file\nb d f\n\n\nb\nbar foo baz\nfoo bar baz blarp quux \n"; &compare_output($answer, &get_logfile(1)); # TEST eclipsing of arguments when invoking sub-calls $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile2"); print MAKEFILE <<'EOF'; all = $1 $2 $3 $4 $5 $6 $7 $8 $9 level1 = $(call all,$1,$2,$3,$4,$5) level2 = $(call level1,$1,$2,$3) level3 = $(call level2,$1,$2,$3,$4,$5) all: @echo $(call all,1,2,3,4,5,6,7,8,9,10,11) @echo $(call level1,1,2,3,4,5,6,7,8) @echo $(call level2,1,2,3,4,5,6,7,8) @echo $(call level3,1,2,3,4,5,6,7,8) EOF close(MAKEFILE); &run_make_with_options($makefile2, "", &get_logfile); $answer = "1 2 3 4 5 6 7 8 9\n1 2 3 4 5\n1 2 3\n1 2 3\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/functions/dir0000644000175000017500000000214310416553102022053 0ustar srivastasrivasta$description = "The following test creates a makefile to test the dir " ."function."; $details = ""; # IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(dir src${pathsep}foo.c hacks) \n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "src${pathsep} .${pathsep}\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/error0000644000175000017500000000305310416553102022427 0ustar srivastasrivasta# -*-Perl-*- $description = "\ The following test creates a makefile to test the error function."; $details = ""; open(MAKEFILE,"> $makefile"); print MAKEFILE 'err = $(error Error found!) ifdef ERROR1 $(error error is $(ERROR1)) endif ifdef ERROR2 $(error error is $(ERROR2)) endif ifdef ERROR3 all: some; @echo $(error error is $(ERROR3)) endif ifdef ERROR4 all: some; @echo error is $(ERROR4) @echo $(error error is $(ERROR4)) endif some: ; @echo Some stuff testvar: ; @: $(err) '; close(MAKEFILE); # Test #1 &run_make_with_options($makefile, "ERROR1=yes", &get_logfile, 512); $answer = "$makefile:4: *** error is yes. Stop.\n"; &compare_output($answer,&get_logfile(1)); # Test #2 &run_make_with_options($makefile, "ERROR2=no", &get_logfile, 512); $answer = "$makefile:8: *** error is no. Stop.\n"; &compare_output($answer,&get_logfile(1)); # Test #3 &run_make_with_options($makefile, "ERROR3=maybe", &get_logfile, 512); $answer = "Some stuff\n$makefile:12: *** error is maybe. Stop.\n"; &compare_output($answer,&get_logfile(1)); # Test #4 &run_make_with_options($makefile, "ERROR4=definitely", &get_logfile, 512); $answer = "Some stuff\n$makefile:16: *** error is definitely. Stop.\n"; &compare_output($answer,&get_logfile(1)); # Test #5 &run_make_with_options($makefile, "testvar", &get_logfile, 512); $answer = "$makefile:22: *** Error found!. Stop.\n"; &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/eval0000644000175000017500000000671010416553102022230 0ustar srivastasrivasta# -*-perl-*- $description = "Test the eval function."; $details = "This is a test of the eval function in GNU make. This function will evaluate inline makefile syntax and incorporate the results into its internal database.\n"; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; define Y all:: ; @echo $AA A = B endef X = $(eval $(value Y)) $(eval $(shell echo A = A)) $(eval $(Y)) $(eval A = C) $(eval $(X)) EOF close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile); # Create the answer to what should be produced by this Makefile $answer = "AA\nBA\n"; &compare_output($answer,&get_logfile(1)); # Test to make sure defining variables when we have extra scope pushed works # as expected. $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile2"); print MAKEFILE <<'EOF'; VARS = A B VARSET = $(1) = $(2) $(foreach v,$(VARS),$(eval $(call VARSET,$v,$v))) all: ; @echo A = $(A) B = $(B) EOF close(MAKEFILE); &run_make_with_options($makefile2, "", &get_logfile); # Create the answer to what should be produced by this Makefile $answer = "A = A B = B\n"; &compare_output($answer,&get_logfile(1)); # Test to make sure eval'ing inside conditionals works properly $makefile3 = &get_tmpfile; open(MAKEFILE,"> $makefile3"); print MAKEFILE <<'EOF'; FOO = foo all:: ; @echo it define Y all:: ; @echo worked endef ifdef BAR $(eval $(Y)) endif EOF close(MAKEFILE); &run_make_with_options($makefile3, "", &get_logfile); $answer = "it\n"; &compare_output($answer,&get_logfile(1)); &run_make_with_options($makefile3, "BAR=1", &get_logfile); $answer = "it\nworked\n"; &compare_output($answer,&get_logfile(1)); # TEST very recursive invocation of eval $makefile3 = &get_tmpfile; open(MAKEFILE,"> $makefile3"); print MAKEFILE <<'EOF'; ..9 := 0 1 2 3 4 5 6 7 8 9 rev=$(eval res:=)$(foreach word,$1,$(eval res:=${word} ${res}))${res} a:=$(call rev,${..9}) all: ; @echo '[$(a)]' EOF close(MAKEFILE); &run_make_with_options($makefile3, "", &get_logfile); $answer = "[ 9 8 7 6 5 4 3 2 1 0 ]\n"; &compare_output($answer,&get_logfile(1)); # TEST eval with no filename context. # The trick here is that because EVAR is taken from the environment, it must # be evaluated before every command is invoked. Make sure that works, when # we have no file context for reading_file (bug # 6195) $makefile4 = &get_tmpfile; open(MAKEFILE,"> $makefile4"); print MAKEFILE <<'EOF'; EVAR = $(eval FOBAR = 1) all: ; @echo "OK" EOF close(MAKEFILE); $extraENV{EVAR} = '1'; &run_make_with_options($makefile4, "", &get_logfile); $answer = "OK\n"; &compare_output($answer,&get_logfile(1)); # Clean out previous information to allow new run_make_test() interface. # If we ever convert all the above to run_make_test() we can remove this line. $makefile = undef; # Test handling of backslashes in strings to be evaled. run_make_test(' define FOO all: ; @echo hello \ world endef $(eval $(FOO)) ', '', 'hello world'); run_make_test(' define FOO all: ; @echo '."'".'he\llo'."'".' @echo world endef $(eval $(FOO)) ', '', 'he\llo world'); # We don't allow new target/prerequisite relationships to be defined within a # command script, because these are evaluated after snap_deps() and that # causes lots of problems (like core dumps!) # See Savannah bug # 12124. run_make_test('deps: ; $(eval deps: foo)', '', '#MAKEFILE#:1: *** prerequisites cannot be defined in command scripts. Stop.', 512); 1; make-dfsg-3.81.orig/tests/scripts/functions/filter-out0000644000175000017500000000176610416553102023401 0ustar srivastasrivasta# -*-perl-*- $description = "Test the filter-out function."; $details = "The makefile created in this test has two variables. The filter-out function is first used to discard names ending in .o with a single simple pattern. The second filter-out function augments the simple pattern with three literal names, which are also added to the text argument. This tests an internal hash table which is only used if there are multiple literals present in both the pattern and text arguments. The result of both filter-out functions is the same single .elc name.\n"; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; files1 := $(filter-out %.o, foo.elc bar.o lose.o) files2 := $(filter-out foo.i bar.i lose.i %.o, foo.i bar.i lose.i foo.elc bar.o lose.o) all: ; @echo $(files1) $(files2) EOF close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile, 0); $answer = "foo.elc foo.elc\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/functions/findstring0000644000175000017500000000223110416553102023442 0ustar srivastasrivasta$description = "The following test creates a makefile to test the findstring " ."function."; $details = ""; # IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(findstring port, reporter)\n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile, 0); # Create the answer to what should be produced by this Makefile $answer = "port\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/flavor0000644000175000017500000000111710416553102022566 0ustar srivastasrivasta# -*-perl-*- $description = "Test the flavor function."; $details = ""; # Test #1: Test general logic. # run_make_test(' s := s r = r $(info u $(flavor u)) $(info s $(flavor s)) $(info r $(flavor r)) ra += ra rc ?= rc $(info ra $(flavor ra)) $(info rc $(flavor rc)) s += s r += r $(info s $(flavor s)) $(info r $(flavor r)) .PHONY: all all:;@: ', '', 'u undefined s simple r recursive ra recursive rc recursive s simple r recursive'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/foreach0000644000175000017500000000415010416553102022704 0ustar srivastasrivasta# -*-perl-*- # $Id: foreach,v 1.5 2006/03/10 02:20:46 psmith Exp $ $description = "Test the foreach function."; $details = "This is a test of the foreach function in gnu make. This function starts with a space separated list of names and a variable. Each name in the list is subsituted into the variable and the given text evaluated. The general form of the command is $(foreach var,$list,$text). Several types of foreach loops are tested\n"; # TEST 0 # Set an environment variable that we can test in the makefile. $extraENV{FOOFOO} = 'foo foo'; run_make_test("space = ' '".' null := auto_var = udef space CC null FOOFOO MAKE foo CFLAGS WHITE @ < foo = bletch null @ garf av = $(foreach var, $(auto_var), $(origin $(var)) ) override WHITE := BLACK for_var = $(addsuffix .c,foo $(null) $(foo) $(space) $(av) ) fe = $(foreach var2, $(for_var),$(subst .c,.o, $(var2) ) ) all: auto for2 auto : ; @echo $(av) for2: ; @echo $(fe)', '-e WHITE=WHITE CFLAGS=', "undefined file default file environment default file command line override automatic automatic foo.o bletch.o null.o @.o garf.o .o .o undefined.o file.o default.o file.o environment.o default.o file.o command.o line.o override.o automatic.o automatic.o"); delete $extraENV{FOOFOO}; # TEST 1: Test that foreach variables take precedence over global # variables in a global scope (like inside an eval). Tests bug #11913 run_make_test(' .PHONY: all target all: target x := BAD define mktarget target: x := $(x) target: ; @echo "$(x)" endef x := GLOBAL $(foreach x,FOREACH,$(eval $(value mktarget)))', '', 'FOREACH'); # TEST 2: Check some error conditions. run_make_test(' x = $(foreach ) y = $x all: ; @echo $y', '', "#MAKEFILE#:2: *** insufficient number of arguments (1) to function `foreach'. Stop.", 512); run_make_test(' x = $(foreach ) y := $x all: ; @echo $y', '', "#MAKEFILE#:2: *** insufficient number of arguments (1) to function `foreach'. Stop.", 512); 1; make-dfsg-3.81.orig/tests/scripts/functions/if0000644000175000017500000000164710416553102021703 0ustar srivastasrivasta# -*-perl-*- $description = "Test the if function.\n"; $details = "Try various uses of if and ensure they all give the correct results.\n"; open(MAKEFILE, "> $makefile"); print MAKEFILE <1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(join a b c,foo hacks .pl1) \n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "afoo bhacks c.pl1\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/notdir0000644000175000017500000000214510416553102022576 0ustar srivastasrivasta$description = "The following test creates a makefile to test the notdir " ."function."; $details = ""; # IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := \$(notdir ${pathsep}src${pathsep}foo.c hacks) \n" ."all: \n" ."\t\@echo \$(string) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "foo.c hacks\n"; # COMPARE RESULTS # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/origin0000644000175000017500000000250010416553102022561 0ustar srivastasrivasta# -*-perl-*- $description = "Test the origin function."; $details = "This is a test of the origin function in gnu make. This function will report on where a variable was defined per the following list: 'undefined' never defined 'default' default definition 'environment' environment var without -e 'environment override' environment var with -e 'file' defined in makefile 'command line' defined on the command line 'override' defined by override in makefile 'automatic' Automatic variable\n"; # Set an environment variable $extraENV{MAKETEST} = 1; run_make_test(' foo := bletch garf auto_var = undefined CC MAKETEST MAKE foo CFLAGS WHITE @ av = $(foreach var, $(auto_var), $(origin $(var)) ) override WHITE := BLACK all: auto @echo $(origin undefined) @echo $(origin CC) @echo $(origin MAKETEST) @echo $(origin MAKE) @echo $(origin foo) @echo $(origin CFLAGS) @echo $(origin WHITE) @echo $(origin @) auto : @echo $(av)', '-e WHITE=WHITE CFLAGS=', 'undefined default environment default file command line override automatic undefined default environment default file command line override automatic'); # Reset an environment variable delete $extraENV{MAKETEST}; 1; make-dfsg-3.81.orig/tests/scripts/functions/realpath0000644000175000017500000000222610416553102023077 0ustar srivastasrivasta# -*-perl-*- $description = "Test the realpath functions."; $details = ""; run_make_test(' ifneq ($(realpath .),$(CURDIR)) $(error ) endif ifneq ($(realpath ./),$(CURDIR)) $(error ) endif ifneq ($(realpath .///),$(CURDIR)) $(error ) endif ifneq ($(realpath /),/) $(error ) endif ifneq ($(realpath /.),/) $(error ) endif ifneq ($(realpath /./),/) $(error ) endif ifneq ($(realpath /.///),/) $(error ) endif ifneq ($(realpath /..),/) $(error ) endif ifneq ($(realpath /../),/) $(error ) endif ifneq ($(realpath /..///),/) $(error ) endif ifneq ($(realpath . /..),$(CURDIR) /) $(error ) endif .PHONY: all all: ; @: ', '', ''); # On Windows platforms, "//" means something special. So, don't do these # tests there. if ($port_type ne 'W32') { run_make_test(' ifneq ($(realpath ///),/) $(error ) endif ifneq ($(realpath ///.),/) $(error ) endif ifneq ($(realpath ///..),/) $(error ) endif .PHONY: all all: ; @:', '', ''); } # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/shell0000644000175000017500000000077710416553102022417 0ustar srivastasrivasta# -*-perl-*- $description = 'Test the $(shell ...) function.'; $details = ''; # Test shells inside rules. run_make_test('.PHONY: all all: ; @echo $(shell echo hi) ','','hi'); # Test shells inside exported environment variables. # This is the test that fails if we try to put make exported variables into # the environment for a $(shell ...) call. run_make_test(' export HI = $(shell echo hi) .PHONY: all all: ; @echo $$HI ','','hi'); 1; make-dfsg-3.81.orig/tests/scripts/functions/sort0000644000175000017500000000420310416553102022263 0ustar srivastasrivasta$description = "The following test creates a makefile to verify\n" ."the ability of make to sort lists of object. Sort\n" ."will also remove any duplicate entries. This will also\n" ."be tested."; $details = "The make file is built with a list of object in a random order\n" ."and includes some duplicates. Make should sort all of the elements\n" ."remove all duplicates\n"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "foo := moon_light days \n" ."foo1:= jazz\n" ."bar := captured \n" ."bar2 = boy end, has rise A midnight \n" ."bar3:= \$(foo)\n" ."s1 := _by\n" ."s2 := _and_a\n" ."t1 := \$(addsuffix \$(s1), \$(bar) )\n" ."t2 := \$(addsuffix \$(s2), \$(foo1) )\n" ."t3 := \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \$(t2) \n" ."t4 := \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \$(t3) \n" ."t5 := \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \$(t4) \n" ."t6 := \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \$(t5) \n" ."t7 := \$(t6) \$(t6) \$(t6) \n" ."p1 := \$(addprefix \$(foo1), \$(s2) )\n" ."blank:= \n" ."all:\n" ."\t\@echo \$(sort \$(bar2) \$(foo) \$(addsuffix \$(s1), \$(bar) ) \$(t2) \$(bar2) \$(bar3))\n" ."\t\@echo \$(sort \$(blank) \$(foo) \$(bar2) \$(t1) \$(p1) )\n" ."\t\@echo \$(sort \$(foo) \$(bar2) \$(t1) \$(t4) \$(t5) \$(t7) \$(t6) )\n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "A boy captured_by days end, has jazz_and_a midnight moon_light rise\n" ."A boy captured_by days end, has jazz_and_a midnight moon_light rise\n" ."A boy captured_by days end, has jazz_and_a midnight moon_light rise\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/functions/strip0000644000175000017500000000324610416553102022443 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to verify the ability of make to strip white space from lists of object.\n"; $details = "The make file is built with a list of objects that contain white space These are then run through the strip command to remove it. This is then verified by echoing the result.\n"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOMAKE'; TEST1 := "Is this TERMINAL fun? What makes you believe is this terminal fun? JAPAN is a WONDERFUL planet -- I wonder if we will ever reach their level of COMPARATIVE SHOPPING..." E := TEST2 := $E try this and this $E define TEST3 and these test out some blank lines endef .PHONY: all all: @echo '$(strip $(TEST1) )' @echo '$(strip $(TEST2) )' @echo '$(strip $(TEST3) )' space: ; @echo '$(strip ) $(strip )' EOMAKE # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile); $answer = "\"Is this TERMINAL fun? What makes you believe is this terminal fun? JAPAN is a WONDERFUL planet -- I wonder if we will ever reach their level of COMPARATIVE SHOPPING...\" try this and this and these test out some blank lines "; &compare_output($answer,&get_logfile(1)); &run_make_with_options($makefile,"space",&get_logfile); $answer = " \n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/functions/substitution0000644000175000017500000000157210416553102024056 0ustar srivastasrivasta# -*-perl-*- $description = "Test the subst and patsubst functions"; $details = ""; # Generic patsubst test: test both the function and variable form. run_make_test(' foo := a.o b.o c.o bar := $(foo:.o=.c) bar2:= $(foo:%.o=%.c) bar3:= $(patsubst %.c,%.o,x.c.c bar.c) all:;@echo $(bar); echo $(bar2); echo $(bar3)', '', 'a.c b.c c.c a.c b.c c.c x.c.o bar.o'); # Patsubst without '%'--shouldn't match because the whole word has to match # in patsubst. Based on a bug report by Markus Mauhart run_make_test('all:;@echo $(patsubst Foo,Repl,FooFoo)', '', 'FooFoo'); # Variable subst where a pattern matches multiple times in a single word. # Based on a bug report by Markus Mauhart run_make_test(' A := fooBARfooBARfoo all:;@echo $(A:fooBARfoo=REPL)', '', 'fooBARREPL'); 1; make-dfsg-3.81.orig/tests/scripts/functions/suffix0000644000175000017500000000404710416553102022606 0ustar srivastasrivasta$description = "The following test creates a makefile to test the suffix\n" ."function. \n"; $details = "The suffix function will return the string following the last _._\n" ."the list provided. It will provide all of the unique suffixes found\n" ."in the list. The long strings are sorted to remove duplicates.\n"; # IF YOU NEED >1 MAKEFILE FOR THIS TEST, USE &get_tmpfile; TO GET # THE NAME OF THE MAKEFILE. THIS INSURES CONSISTENCY AND KEEPS TRACK OF # HOW MANY MAKEFILES EXIST FOR EASY DELETION AT THE END. # EXAMPLE: $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "string := word.pl general_test2.pl1 FORCE.pl word.pl3 generic_test.perl /tmp.c/bar foo.baz/bar.c MAKEFILES_variable.c\n" ."string2 := \$(string) \$(string) \$(string) \$(string) \$(string) \$(string) \$(string)\n" ."string3 := \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2) \$(string2)\n" ."string4 := \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3) \$(string3)\n" ."all: \n" ."\t\@echo \$(suffix \$(string)) \n" ."\t\@echo \$(sort \$(suffix \$(string4))) \n" ."\t\@echo \$(suffix \$(string) a.out) \n" ."\t\@echo \$(sort \$(suffix \$(string3))) \n"; # END of Contents of MAKEFILE close(MAKEFILE); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile # COMPARE RESULTS $answer = ".pl .pl1 .pl .pl3 .perl .c .c\n" .".c .perl .pl .pl1 .pl3\n" .".pl .pl1 .pl .pl3 .perl .c .c .out\n" .".c .perl .pl .pl1 .pl3\n"; # In this call to compare output, you should use the call &get_logfile(1) # to send the name of the last logfile created. You may also use # the special call &get_logfile(1) which returns the same as &get_logfile(1). &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/value0000644000175000017500000000133410416553102022412 0ustar srivastasrivasta# -*-perl-*- $description = "Test the value function."; $details = "This is a test of the value function in GNU make. This function will evaluate to the value of the named variable with no further expansion performed on it.\n"; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; export FOO = foo recurse = FOO = $FOO static := FOO = $(value FOO) all: ; @echo $(recurse) $(value recurse) $(static) $(value static) EOF close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile); # Create the answer to what should be produced by this Makefile $answer = "FOO = OO FOO = foo FOO = foo FOO = foo\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/functions/warning0000644000175000017500000000255710416553102022753 0ustar srivastasrivasta# -*-Perl-*- $description = "\ The following test creates a makefile to test the warning function."; $details = ""; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; ifdef WARNING1 $(warning warning is $(WARNING1)) endif ifdef WARNING2 $(warning warning is $(WARNING2)) endif ifdef WARNING3 all: some; @echo hi $(warning warning is $(WARNING3)) endif ifdef WARNING4 all: some; @echo hi @echo there $(warning warning is $(WARNING4)) endif some: ; @echo Some stuff EOF close(MAKEFILE); # Test #1 &run_make_with_options($makefile, "WARNING1=yes", &get_logfile, 0); $answer = "$makefile:2: warning is yes\nSome stuff\n"; &compare_output($answer,&get_logfile(1)); # Test #2 &run_make_with_options($makefile, "WARNING2=no", &get_logfile, 0); $answer = "$makefile:6: warning is no\nSome stuff\n"; &compare_output($answer,&get_logfile(1)); # Test #3 &run_make_with_options($makefile, "WARNING3=maybe", &get_logfile, 0); $answer = "Some stuff\n$makefile:10: warning is maybe\nhi\n"; &compare_output($answer,&get_logfile(1)); # Test #4 &run_make_with_options($makefile, "WARNING4=definitely", &get_logfile, 0); $answer = "Some stuff\n$makefile:14: warning is definitely\nhi\nthere\n"; &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/functions/wildcard0000644000175000017500000000374310416553102023075 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to test wildcard expansions and the ability to put a command on the same line as the target name separated by a semi-colon."; $details = "\ This test creates 4 files by the names of 1.example, two.example and 3.example. We execute three tests. The first executes the print1 target which tests the '*' wildcard by echoing all filenames by the name of '*.example'. The second test echo's all files which match '?.example' and [a-z0-9].example. Lastly we clean up all of the files using the '*' wildcard as in the first test"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE < $makefile"); print MAKEFILE <<'EOF'; string := word.pl general_test2.pl FORCE.pl word.pl generic_test.perl MAKEFILES_variable.pl string2 := $(string) $(string) $(string) $(string) $(string) $(string) $(string) string3 := $(string2) $(string2) $(string2) $(string2) $(string2) $(string2) $(string2) string4 := $(string3) $(string3) $(string3) $(string3) $(string3) $(string3) $(string3) all: @echo $(words $(string)) @echo $(words $(string4)) @echo $(word 1, $(string)) @echo $(word 100, $(string)) @echo $(word 1, $(string)) @echo $(word 1000, $(string3)) @echo $(wordlist 3, 4, $(string)) @echo $(wordlist 4, 3, $(string)) @echo $(wordlist 1, 6, $(string)) @echo $(wordlist 5, 7, $(string)) @echo $(wordlist 100, 110, $(string)) @echo $(wordlist 7, 10, $(string2)) EOF close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile); $answer = "6\n" ."2058\n" ."word.pl\n" ."\n" ."word.pl\n" ."\n" ."FORCE.pl word.pl\n" ."\n" ."word.pl general_test2.pl FORCE.pl word.pl generic_test.perl MAKEFILES_variable.pl\n" ."generic_test.perl MAKEFILES_variable.pl\n" ."\n" ."word.pl general_test2.pl FORCE.pl word.pl\n"; &compare_output($answer, &get_logfile(1)); # Test error conditions run_make_test('FOO = foo bar biz baz word-e1: ; @echo $(word ,$(FOO)) word-e2: ; @echo $(word abc ,$(FOO)) word-e3: ; @echo $(word 1a,$(FOO)) wordlist-e1: ; @echo $(wordlist ,,$(FOO)) wordlist-e2: ; @echo $(wordlist abc ,,$(FOO)) wordlist-e3: ; @echo $(wordlist 1, 12a ,$(FOO))', 'word-e1', "#MAKEFILE#:3: *** non-numeric first argument to `word' function: ''. Stop.", 512); run_make_test(undef, 'word-e2', "#MAKEFILE#:4: *** non-numeric first argument to `word' function: 'abc '. Stop.", 512); run_make_test(undef, 'word-e3', "#MAKEFILE#:5: *** non-numeric first argument to `word' function: '1a'. Stop.", 512); run_make_test(undef, 'wordlist-e1', "#MAKEFILE#:7: *** non-numeric first argument to `wordlist' function: ''. Stop.", 512); run_make_test(undef, 'wordlist-e2', "#MAKEFILE#:8: *** non-numeric first argument to `wordlist' function: 'abc '. Stop.", 512); run_make_test(undef, 'wordlist-e3', "#MAKEFILE#:9: *** non-numeric second argument to `wordlist' function: ' 12a '. Stop.", 512); # Test error conditions again, but this time in a variable reference run_make_test('FOO = foo bar biz baz W = $(word $x,$(FOO)) WL = $(wordlist $s,$e,$(FOO)) word-e: ; @echo $(W) wordlist-e: ; @echo $(WL)', 'word-e x=', "#MAKEFILE#:3: *** non-numeric first argument to `word' function: ''. Stop.", 512); run_make_test(undef, 'word-e x=abc', "#MAKEFILE#:3: *** non-numeric first argument to `word' function: 'abc'. Stop.", 512); run_make_test(undef, 'word-e x=0', "#MAKEFILE#:3: *** first argument to `word' function must be greater than 0. Stop.", 512); run_make_test(undef, 'wordlist-e s= e=', "#MAKEFILE#:4: *** non-numeric first argument to `wordlist' function: ''. Stop.", 512); run_make_test(undef, 'wordlist-e s=abc e=', "#MAKEFILE#:4: *** non-numeric first argument to `wordlist' function: 'abc'. Stop.", 512); run_make_test(undef, 'wordlist-e s=4 e=12a', "#MAKEFILE#:4: *** non-numeric second argument to `wordlist' function: '12a'. Stop.", 512); run_make_test(undef, 'wordlist-e s=0 e=12', "#MAKEFILE#:4: *** invalid first argument to `wordlist' function: `0'. Stop.", 512); # TEST #8 -- test $(firstword ) # run_make_test(' void := list := $(void) foo bar baz # a := $(word 1,$(list)) b := $(firstword $(list)) .PHONY: all all: @test "$a" = "$b" && echo $a ', '', 'foo'); # TEST #9 -- test $(lastword ) # run_make_test(' void := list := $(void) foo bar baz # a := $(word $(words $(list)),$(list)) b := $(lastword $(list)) .PHONY: all all: @test "$a" = "$b" && echo $a ', '', 'baz'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/misc/0000755000175000017500000000000010416553102020275 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/misc/close_stdout0000644000175000017500000000037110416553102022730 0ustar srivastasrivasta# -*-perl-*- $description = "Make sure make exits with an error if stdout is full."; if (-e '/dev/full') { run_make_test('', '-v > /dev/full', '#MAKE#: write error', 256); } 1; make-dfsg-3.81.orig/tests/scripts/misc/general10000644000175000017500000000277610416553102021732 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to test the simple functionality of make. It mimics the rebuilding of a product with dependencies. It also tests the simple definition of VPATH."; open(MAKEFILE,"> $makefile"); print MAKEFILE < $makefile"); # The contents of the Makefile ... print MAKEFILE < $makefile2"); print MAKEFILE "all:;\@echo FOO = \$(FOO)\nFOO = foo"; close(MAKEFILE); &run_make_with_options($makefile2,"",&get_logfile); $answer = "FOO = foo\n"; &compare_output($answer,&get_logfile(1)); # TEST 3 # Check semicolons in variable references run_make_test(' $(if true,$(info true; true)) all: ; @: ', '', 'true; true'); # TEST 4 # Check that backslashes in command scripts are handled according to POSIX. # Checks Savannah bug # 1332. # Test the fastpath / no quotes run_make_test(' all: @echo foo\ bar @echo foo\ bar @echo foo\ bar @echo foo\ bar @echo foo \ bar @echo foo \ bar @echo foo \ bar @echo foo \ bar ', '', 'foobar foobar foo bar foo bar foo bar foo bar foo bar foo bar'); # Test the fastpath / single quotes run_make_test(" all: \@echo 'foo\\ bar' \@echo 'foo\\ bar' \@echo 'foo\\ bar' \@echo 'foo\\ bar' \@echo 'foo \\ bar' \@echo 'foo \\ bar' \@echo 'foo \\ bar' \@echo 'foo \\ bar' ", '', 'foo\ bar foo\ bar foo\ bar foo\ bar foo \ bar foo \ bar foo \ bar foo \ bar'); # Test the fastpath / double quotes run_make_test(' all: @echo "foo\ bar" @echo "foo\ bar" @echo "foo\ bar" @echo "foo\ bar" @echo "foo \ bar" @echo "foo \ bar" @echo "foo \ bar" @echo "foo \ bar" ', '', 'foobar foobar foo bar foo bar foo bar foo bar foo bar foo bar'); # Test the slow path / no quotes run_make_test(' all: @echo hi; echo foo\ bar @echo hi; echo foo\ bar @echo hi; echo foo\ bar @echo hi; echo foo\ bar @echo hi; echo foo \ bar @echo hi; echo foo \ bar @echo hi; echo foo \ bar @echo hi; echo foo \ bar ', '', 'hi foobar hi foobar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar'); # Test the slow path / no quotes. This time we put the slow path # determination _after_ the backslash-newline handling. run_make_test(' all: @echo foo\ bar; echo hi @echo foo\ bar; echo hi @echo foo\ bar; echo hi @echo foo\ bar; echo hi @echo foo \ bar; echo hi @echo foo \ bar; echo hi @echo foo \ bar; echo hi @echo foo \ bar; echo hi ', '', 'foobar hi foobar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar hi'); # Test the slow path / single quotes run_make_test(" all: \@echo hi; echo 'foo\\ bar' \@echo hi; echo 'foo\\ bar' \@echo hi; echo 'foo\\ bar' \@echo hi; echo 'foo\\ bar' \@echo hi; echo 'foo \\ bar' \@echo hi; echo 'foo \\ bar' \@echo hi; echo 'foo \\ bar' \@echo hi; echo 'foo \\ bar' ", '', 'hi foo\ bar hi foo\ bar hi foo\ bar hi foo\ bar hi foo \ bar hi foo \ bar hi foo \ bar hi foo \ bar'); # Test the slow path / double quotes run_make_test(' all: @echo hi; echo "foo\ bar" @echo hi; echo "foo\ bar" @echo hi; echo "foo\ bar" @echo hi; echo "foo\ bar" @echo hi; echo "foo \ bar" @echo hi; echo "foo \ bar" @echo hi; echo "foo \ bar" @echo hi; echo "foo \ bar" ', '', 'hi foobar hi foobar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar hi foo bar'); 1; make-dfsg-3.81.orig/tests/scripts/misc/general40000644000175000017500000000363310416553102021726 0ustar srivastasrivasta# -*-perl-*- $description = "\ This tests random features of make's algorithms, often somewhat obscure, which have either broken at some point in the past or seem likely to break."; run_make_test(' # Make sure that subdirectories built as prerequisites are actually handled # properly. all: dir/subdir/file.a dir/subdir: ; @echo mkdir -p dir/subdir dir/subdir/file.b: dir/subdir ; @echo touch dir/subdir/file.b dir/subdir/%.a: dir/subdir/%.b ; @echo cp $< $@', '', "mkdir -p dir/subdir\ntouch dir/subdir/file.b\ncp dir/subdir/file.b dir/subdir/file.a\n"); # Test implicit rules &touch('foo.c'); run_make_test('foo: foo.o', 'CC="@echo cc" OUTPUT_OPTION=', 'cc -c foo.c cc foo.o -o foo'); unlink('foo.c'); # Test other implicit rule searching &touch('bar'); run_make_test(' test.foo: %.foo : baz ; @echo done $< %.foo : bar ; @echo done $< fox: baz ', '', 'done bar'); unlink('bar'); # Test implicit rules with '$' in the name (see se_implicit) run_make_test(q! %.foo : baz$$bar ; @echo 'done $<' %.foo : bar$$baz ; @echo 'done $<' test.foo: baz$$bar bar$$baz: ; @echo '$@' !, '', "baz\$bar\ndone baz\$bar"); # Test implicit rules with '$' in the name (see se_implicit) # Use the '$' in the pattern. run_make_test(q! %.foo : %$$bar ; @echo 'done $<' test.foo: test$$bar: ; @echo '$@' !, '', "test\$bar\ndone test\$bar"); # Make sure that subdirectories built as prerequisites are actually handled # properly... this time with '$' run_make_test(q! all: dir/subdir/file.$$a dir/subdir: ; @echo mkdir -p '$@' dir/subdir/file.$$b: dir/subdir ; @echo touch '$@' dir/subdir/%.$$a: dir/subdir/%.$$b ; @echo 'cp $< $@' !, '', "mkdir -p dir/subdir\ntouch dir/subdir/file.\$b\ncp dir/subdir/file.\$b dir/subdir/file.\$a\n"); 1; make-dfsg-3.81.orig/tests/scripts/options/0000755000175000017500000000000010416553102021035 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/options/dash-B0000644000175000017500000000305010416553102022054 0ustar srivastasrivasta# -*-perl-*- $description = "Test make -B (always remake) option.\n"; $details = "\ Construct a simple makefile that builds a target. Invoke make once, so it builds everything. Invoke it again and verify that nothing is built. Then invoke it with -B and verify that everything is built again."; &touch('bar.x'); run_make_test(' .SUFFIXES: .PHONY: all all: foo foo: bar.x @echo cp $< $@ @echo "" > $@ ', '', 'cp bar.x foo'); run_make_test(undef, '', "#MAKE#: Nothing to be done for `all'."); run_make_test(undef, '-B', 'cp bar.x foo'); # Put the timestamp for foo into the future; it should still be remade. utouch(1000, 'foo'); run_make_test(undef, '', "#MAKE#: Nothing to be done for `all'."); run_make_test(undef, '-B', 'cp bar.x foo'); # Clean up rmfiles('bar.x', 'foo'); # Test -B with the re-exec feature: we don't want to re-exec forever # Savannah bug # 7566 run_make_test(' all: ; @: $(info MAKE_RESTARTS=$(MAKE_RESTARTS)) include foo.x foo.x: ; @touch $@ ', '-B', 'MAKE_RESTARTS= #MAKEFILE#:4: foo.x: No such file or directory MAKE_RESTARTS=1'); rmfiles('foo.x'); # Test -B with the re-exec feature: we DO want -B in the "normal" part of the # makefile. &touch('blah.x'); run_make_test(' all: blah.x ; @echo $@ $(info MAKE_RESTARTS=$(MAKE_RESTARTS)) include foo.x foo.x: ; @touch $@ blah.x: ; @echo $@ ', '-B', 'MAKE_RESTARTS= #MAKEFILE#:4: foo.x: No such file or directory MAKE_RESTARTS=1 blah.x all'); rmfiles('foo.x', 'blah.x'); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-C0000644000175000017500000000332210416553102022057 0ustar srivastasrivasta# -*-perl-*- $description = "Test the -C option to GNU make."; $details = "\ This test is similar to the clean test except that this test creates the file to delete in the work directory instead of the current directory. Make is called from another directory using the -C workdir option so that it can both find the makefile and the file to delete in the work directory."; $example = $workdir . $pathsep . "EXAMPLE"; open(MAKEFILE,"> $makefile"); print MAKEFILE < $makefile"); # The Contents of the MAKEFILE ... $mf2 = substr ($makefile2, index ($makefile2, $pathsep) + 1); print MAKEFILE < $makefile2"); print MAKEFILE <> $@ ', '', "echo >> b.x\necho >> a.x"); # Run it again: nothing should happen run_make_test(undef, '', "#MAKE#: `a.x' is up to date."); # Now run it with -W b.x: should rebuild a.x run_make_test(undef, '-W b.x', 'echo >> a.x'); # Put the timestamp for a.x into the future; it should still be remade. utouch(1000, 'a.x'); run_make_test(undef, '', "#MAKE#: `a.x' is up to date."); run_make_test(undef, '-W b.x', 'echo >> a.x'); # Clean up rmfiles('a.x', 'b.x'); # Test -W with the re-exec feature: we don't want to re-exec forever # Savannah bug # 7566 # First set it up with a normal build run_make_test(' all: baz.x ; @: include foo.x foo.x: bar.x @echo "\$$(info restarts=\$$(MAKE_RESTARTS))" > $@ @echo "touch $@" bar.x: ; echo >> $@ baz.x: bar.x ; @echo "touch $@" ', '', '#MAKEFILE#:3: foo.x: No such file or directory echo >> bar.x touch foo.x restarts=1 touch baz.x'); # Now run with -W bar.x # Tweak foo.x's timestamp so the update will change it. &utouch(1000, 'foo.x'); run_make_test(undef, '-W bar.x', "restarts=\ntouch foo.x\nrestarts=1\ntouch baz.x"); rmfiles('foo.x', 'bar.x'); # Test -W on vpath-found files: it should take effect. # Savannah bug # 15341 mkdir('x-dir', 0777); utouch(-20, 'x-dir/x'); touch('y'); run_make_test(' y: x ; @echo cp $< $@ ', '-W x-dir/x VPATH=x-dir', 'cp x-dir/x y'); # Make sure ./ stripping doesn't interfere with the match. run_make_test(' y: x ; @echo cp $< $@ ', '-W ./x-dir/x VPATH=x-dir', 'cp x-dir/x y'); run_make_test(undef, '-W x-dir/x VPATH=./x-dir', 'cp ./x-dir/x y'); unlink(qw(y x-dir/x)); rmdir('x-dir'); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-e0000644000175000017500000000066310416553102022126 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to ..."; $details = ""; $extraENV{GOOGLE} = 'boggle'; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; GOOGLE = bazzle all:; @echo "$(GOOGLE)" EOF close(MAKEFILE); &run_make_with_options($makefile, '-e' ,&get_logfile); $answer = "boggle\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-f0000644000175000017500000000503110416553102022121 0ustar srivastasrivasta$description = "The following test tests that if you specify greater \n" ."than one '-f makefilename' on the command line, \n" ."that make concatenates them. This test creates three \n" ."makefiles and specifies all of them with the -f option \n" ."on the command line. To make sure they were concatenated, \n" ."we then call make with the rules from the concatenated \n" ."makefiles one at a time. Finally, it calls all three \n" ."rules in one call to make and checks that the output\n" ."is in the correct order."; $makefile2 = &get_tmpfile; $makefile3 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "all: \n"; print MAKEFILE "\t\@echo This is the output from the original makefile\n"; # END of Contents of MAKEFILE close(MAKEFILE); # Create a second makefile open(MAKEFILE,"> $makefile2"); print MAKEFILE "TWO: \n"; print MAKEFILE "\t\@echo This is the output from makefile 2\n"; close(MAKEFILE); # Create a third makefile open(MAKEFILE,"> $makefile3"); print MAKEFILE "THREE: \n"; print MAKEFILE "\t\@echo This is the output from makefile 3\n"; close(MAKEFILE); # Create the answer to what should be produced by this Makefile $answer = "This is the output from the original makefile\n"; # Run make to catch the default rule &run_make_with_options($makefile,"-f $makefile2 -f $makefile3",&get_logfile,0); &compare_output($answer,&get_logfile(1)); # Run Make again with the rule from the second makefile: TWO $answer = "This is the output from makefile 2\n"; &run_make_with_options($makefile,"-f $makefile2 -f $makefile3 TWO",&get_logfile,0); &compare_output($answer,&get_logfile(1)); # Run Make again with the rule from the third makefile: THREE $answer = "This is the output from makefile 3\n"; &run_make_with_options($makefile, "-f $makefile2 -f $makefile3 THREE", &get_logfile, 0); &compare_output($answer,&get_logfile(1)); # Run Make again with ALL three rules in the order 2 1 3 to make sure # that all rules are executed in the proper order $answer = "This is the output from makefile 2\n"; $answer .= "This is the output from the original makefile\n"; $answer .= "This is the output from makefile 3\n"; &run_make_with_options($makefile, "-f $makefile2 -f $makefile3 TWO all THREE", &get_logfile, 0); &compare_output($answer,&get_logfile(1)); make-dfsg-3.81.orig/tests/scripts/options/dash-k0000644000175000017500000000545410416553102022137 0ustar srivastasrivasta# -*-perl-*- $description = "Test the make -k (don't stop on error) option.\n"; $details = "\ The makefile created in this test is a simulation of building a small product. However, the trick to this one is that one of the dependencies of the main target does not exist. Without the -k option, make would fail immediately and not build any part of the target. What we are looking for here, is that make builds the rest of the dependencies even though it knows that at the end it will fail to rebuild the main target."; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE < $makefile2"); print MAKEFILE <<'EOF'; .SUFFIXES: all: exe1 exe2; @echo making $@ exe1 exe2: lib; @echo cp $^ $@ lib: foo.o; @echo cp $^ $@ foo.o: ; exit 1 EOF close(MAKEFILE); &run_make_with_options($makefile2, "-k", &get_logfile, $error_code); $answer = "exit 1 $make_name: *** [foo.o] Error 1 $make_name: Target `all' not remade because of errors.\n"; &compare_output($answer, &get_logfile(1)); # TEST -- make sure we keep the error code if we can't create an included # makefile. run_make_test('all: ; @echo hi include ifile ifile: no-such-file; @false ', '-k', "#MAKEFILE#:2: ifile: No such file or directory #MAKE#: *** No rule to make target `no-such-file', needed by `ifile'. #MAKE#: Failed to remake makefile `ifile'. hi\n", 512); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-l0000644000175000017500000000271210416553102022132 0ustar srivastasrivasta# -*-perl-*- # Date: Tue, 11 Aug 1992 09:34:26 -0400 # From: pds@lemming.webo.dg.com (Paul D. Smith) $description = "Test load balancing (-l) option."; $details = "\ This test creates a makefile where all depends on three rules which contain the same body. Each rule checks for the existence of a temporary file; if it exists an error is generated. If it doesn't exist then it is created, the rule sleeps, then deletes the temp file again. Thus if any of the rules are run in parallel the test will fail. When make is called in this test, it is given the -l option with a value of 0.0001. This ensures that the load will be above this number and make will therefore decide that it cannot run more than one job even though -j 4 was also specified on the command line."; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOF'; SHELL = /bin/sh define test if [ ! -f test-file ]; then \ echo >> test-file; sleep 2; rm -f test-file; \ else \ echo $@ FAILED; \ fi endef all : ONE TWO THREE ONE : ; @$(test) TWO : ; @$(test) THREE : ; @$(test) EOF # END of Contents of MAKEFILE close(MAKEFILE); $mkoptions = "-l 0.0001"; $mkoptions .= " -j 4" if ($parallel_jobs); &run_make_with_options($makefile, $mkoptions, &get_logfile); $slurp = &read_file_into_string (&get_logfile(1)); if ($slurp !~ /cannot enforce load limit/) { &compare_output("", &get_logfile(1)); } 1; make-dfsg-3.81.orig/tests/scripts/options/dash-n0000644000175000017500000000265210416553102022137 0ustar srivastasrivasta# -*-perl-*- $description = "Test the -n option.\n"; $details = "Try various uses of -n and ensure they all give the correct results.\n"; open(MAKEFILE, "> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOMAKE'; final: intermediate ; echo >> $@ intermediate: orig ; echo >> $@ EOMAKE close(MAKEFILE); &touch('orig'); # TEST 0 &run_make_with_options($makefile, "", &get_logfile); $answer = "echo >> intermediate\necho >> final\n"; &compare_output($answer, &get_logfile(1)); # TEST 1 &run_make_with_options($makefile, "-Worig -n", &get_logfile); $answer = "echo >> intermediate\necho >> final\n"; &compare_output($answer, &get_logfile(1)); unlink('orig', 'intermediate', 'final'); # We consider the actual updated timestamp of targets with all # recursive commands, even with -n. $makefile2 = &get_tmpfile; open(MAKEFILE, "> $makefile2"); print MAKEFILE <<'EOF'; .SUFFIXES: BAR = # nothing FOO = +$(BAR) a: b; echo > $@ b: c; $(FOO) EOF close(MAKEFILE); &utouch(-20, 'b'); &utouch(-10, 'a'); &touch('c'); # TEST 2 &run_make_with_options($makefile2, "", &get_logfile); $answer = "$make_name: `a' is up to date.\n"; &compare_output($answer, &get_logfile(1)); # TEST 3 &run_make_with_options($makefile2, "-n", &get_logfile); $answer = "$make_name: `a' is up to date.\n"; &compare_output($answer, &get_logfile(1)); unlink('a', 'b', 'c'); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-q0000644000175000017500000000144010416553102022134 0ustar srivastasrivasta# -*-perl-*- $description = "Test the -q option.\n"; $details = "Try various uses of -q and ensure they all give the correct results.\n"; # TEST 0 run_make_test(' one: two: ; three: ; : four: ; $(.XY) five: ; \ $(.XY) six: ; \ $(.XY) $(.XY) seven: ; \ $(.XY) : foo $(.XY) ', '-q one', ''); # TEST 1 run_make_test(undef, '-q two', ''); # TEST 2 run_make_test(undef, '-q three', '', 256); # TEST 3 run_make_test(undef, '-q four', ''); # TEST 4 run_make_test(undef, '-q five', ''); # TEST 5 run_make_test(undef, '-q six', ''); # TEST 6 run_make_test(undef, '-q seven', '', 256); # TEST 7 : Savannah bug # 7144 run_make_test(' one:: ; @echo one one:: ; @echo two ', '-q', '', 256); 1; make-dfsg-3.81.orig/tests/scripts/options/dash-t0000644000175000017500000000306610416553102022145 0ustar srivastasrivasta# -*-perl-*- $description = "Test the -t option.\n"; $details = "Look out for regressions of prior bugs related to -t.\n"; # That means, nobody has even tried to make the tests below comprehensive # TEST 0 # bug reported by Henning Makholm on 2001-11-03: # make 3.79.1 touches only interm-[ab] but reports final-[a] as # 'up to date' without touching them. # The 'obvious' fix didn't work for double-colon rules, so pay special # attention to them. open(MAKEFILE, "> $makefile"); print MAKEFILE <<'EOMAKE'; final-a: interm-a ; echo >> $@ final-b: interm-b ; echo >> $@ interm-a:: orig1-a ; echo >> $@ interm-a:: orig2-a ; echo >> $@ interm-b:: orig1-b ; echo >> $@ interm-b:: orig2-b ; echo >> $@ EOMAKE close(MAKEFILE); &utouch(-30, 'orig1-a','orig2-b'); &utouch(-20, 'interm-a','interm-b'); &utouch(-10, 'final-a','final-b'); &touch('orig2-a','orig1-b'); &run_make_with_options($makefile, "-t final-a final-b", &get_logfile); $answer = "touch interm-a\ntouch final-a\ntouch interm-b\ntouch final-b\n"; &compare_output($answer, &get_logfile(1)); unlink('orig1-a', 'orig2-a', 'interm-a', 'final-a'); unlink('orig1-b', 'orig2-b', 'interm-b', 'final-b'); # TEST 1 # -t should not touch files with no commands. $makefile2 = &get_tmpfile; open(MAKEFILE, "> $makefile2"); print MAKEFILE <<'EOMAKE'; PHOOEY: xxx xxx: ; @: EOMAKE close(MAKEFILE); &run_make_with_options($makefile2, "-t", &get_logfile); $answer = "touch xxx\n"; &compare_output($answer, &get_logfile(1)); unlink('xxx'); 1; make-dfsg-3.81.orig/tests/scripts/options/general0000644000175000017500000000173510416553102022403 0ustar srivastasrivasta# -*-perl-*- $description = "Test generic option processing.\n"; open(MAKEFILE, "> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "foo 1foo: ; \@echo \$\@\n"; close(MAKEFILE); # TEST 0 &run_make_with_options($makefile, "-j 1foo", &get_logfile); if (!$parallel_jobs) { $answer = "$make_name: Parallel jobs (-j) are not supported on this platform.\n$make_name: Resetting to single job (-j1) mode.\n1foo\n"; } else { $answer = "1foo\n"; } # TEST 1 # This test prints the usage string; I don't really know a good way to # test it. I guess I could invoke make with a known-bad option to see # what the usage looks like, then compare it to what I get here... :( # If I were always on UNIX, I could invoke it with 2>/dev/null, then # just check the error code. &run_make_with_options($makefile, "-j1foo 2>/dev/null", &get_logfile, 512); $answer = ""; &compare_output($answer, &get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/options/symlinks0000644000175000017500000000422310416553102022632 0ustar srivastasrivasta# -*-perl-*- $description = "Test the -L option."; $details = "Verify that symlink handling with and without -L works properly."; # Only run these tests if the system sypports symlinks # Apparently the Windows port of Perl reports that it does support symlinks # (in that the symlink() function doesn't fail) but it really doesn't, so # check for it explicitly. if ($port_type eq 'W32' || !( eval { symlink("",""); 1 })) { # This test is N/A -1; } else { # Set up a symlink sym -> dep # We'll make both dep and targ older than sym $pwd =~ m%/([^/]+)$%; $dirnm = $1; &utouch(-10, 'dep'); &utouch(-5, 'targ'); symlink("../$dirnm/dep", 'sym'); # Without -L, nothing should happen # With -L, it should update targ run_make_test('targ: sym ; @echo make $@ from $<', '', "#MAKE#: `targ' is up to date."); run_make_test(undef, '-L', "make targ from sym"); # Now update dep; in all cases targ should be out of date. &touch('dep'); run_make_test(undef, '', "make targ from sym"); run_make_test(undef, '-L', "make targ from sym"); # Now update targ; in all cases targ should be up to date. &touch('targ'); run_make_test(undef, '', "#MAKE#: `targ' is up to date."); run_make_test(undef, '-L', "#MAKE#: `targ' is up to date."); # Add in a new link between sym and dep. Be sure it's newer than targ. sleep(1); rename('dep', 'dep1'); symlink('dep1', 'dep'); # Without -L, nothing should happen # With -L, it should update targ run_make_test(undef, '', "#MAKE#: `targ' is up to date."); run_make_test(undef, '-L', "make targ from sym"); rmfiles('targ', 'dep', 'sym', 'dep1'); # Check handling when symlinks point to non-existent files. Without -L we # should get an error: with -L we should use the timestamp of the symlink. symlink("../$dirname/dep", 'sym'); run_make_test('targ: sym ; @echo make $@ from $<', '', "#MAKE#: *** No rule to make target `sym', needed by `targ'. Stop.", 512); run_make_test('targ: sym ; @echo make $@ from $<', '-L', 'make targ from sym'); rmfiles('targ', 'sym'); 1; } make-dfsg-3.81.orig/tests/scripts/options/warn-undefined-variables0000644000175000017500000000125510416553102025637 0ustar srivastasrivasta# -*-perl-*- $description = "Test the --warn-undefined-variables option."; $details = "Verify that warnings are printed for referencing undefined variables."; # Without --warn-undefined-variables, nothing should happen run_make_test(' EMPTY = EREF = $(EMPTY) UREF = $(UNDEFINED) SEREF := $(EREF) SUREF := $(UREF) all: ; @echo ref $(EREF) $(UREF)', '', 'ref'); # With --warn-undefined-variables, it should warn me run_make_test(undef, '--warn-undefined-variables', "#MAKEFILE#:7: warning: undefined variable `UNDEFINED' #MAKEFILE#:9: warning: undefined variable `UNDEFINED' ref"); 1; make-dfsg-3.81.orig/tests/scripts/targets/0000755000175000017500000000000010416553102021013 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/targets/DEFAULT0000644000175000017500000000266310416553102022031 0ustar srivastasrivasta$description = "The following test creates a makefile to override part\n" ."of one Makefile with Another Makefile with the .DEFAULT\n" ."rule."; $details = "This tests the use of the .DEFAULT special target to say that \n" ."to remake any target that cannot be made fram the information\n" ."in the containing makefile, make should look in another makefile\n" ."This test gives this makefile the target bar which is not \n" ."defined here but passes the target bar on to another makefile\n" ."which does have the target bar defined.\n"; $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "foo:\n"; print MAKEFILE "\t\@echo Executing rule FOO\n\n"; print MAKEFILE ".DEFAULT:\n"; print MAKEFILE "\t\@\$(MAKE) -f $makefile2 \$\@ \n"; # END of Contents of MAKEFILE close(MAKEFILE); open(MAKEFILE,"> $makefile2"); print MAKEFILE "bar:\n"; print MAKEFILE "\t\@echo Executing rule BAR\n\n"; close(MAKEFILE); &run_make_with_options($makefile,'bar',&get_logfile); # Create the answer to what should be produced by this Makefile $answer = "${make_name}[1]: Entering directory `$pwd'\n" . "Executing rule BAR\n" . "${make_name}[1]: Leaving directory `$pwd'\n"; # COMPARE RESULTS &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/targets/FORCE0000644000175000017500000000142110416553102021572 0ustar srivastasrivasta# -*-perl-*- $description = "The following tests rules without Commands or Dependencies."; $details = "If the rule ...\n"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE ".IGNORE :\n"; print MAKEFILE "clean: FORCE\n"; print MAKEFILE "\t$delete_command clean\n"; print MAKEFILE "FORCE:\n"; # END of Contents of MAKEFILE close(MAKEFILE); # Create a file named "clean". This is the same name as the target clean # and tricks the target into thinking that it is up to date. (Unless you # use the .PHONY target. &touch("clean"); $answer = "$delete_command clean\n"; &run_make_with_options($makefile,"clean",&get_logfile); &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/targets/INTERMEDIATE0000644000175000017500000000541210416553102022612 0ustar srivastasrivasta# -*-perl-*- $description = "Test the behaviour of the .INTERMEDIATE target."; $details = "\ Test the behavior of the .INTERMEDIATE special target. Create a makefile where a file would not normally be considered intermediate, then specify it as .INTERMEDIATE. Build and ensure it's deleted properly. Rebuild to ensure that it's not created if it doesn't exist but doesn't need to be built. Change the original and ensure that the intermediate file and the ultimate target are both rebuilt, and that the intermediate file is again deleted. Try this with implicit rules and explicit rules: both should work.\n"; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; .INTERMEDIATE: foo.e bar.e # Implicit rule test %.d : %.e ; cp $< $@ %.e : %.f ; cp $< $@ foo.d: foo.e # Explicit rule test foo.c: foo.e bar.e; cat $^ > $@ EOF close(MAKEFILE); # TEST #0 &utouch(-20, 'foo.f', 'bar.f'); &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "cp foo.f foo.e\ncp foo.e foo.d\nrm foo.e\n"; &compare_output($answer, &get_logfile(1)); # TEST #1 &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "$make_name: `foo.d' is up to date.\n"; &compare_output($answer, &get_logfile(1)); # TEST #2 &utouch(-10, 'foo.d'); &touch('foo.f'); &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "cp foo.f foo.e\ncp foo.e foo.d\nrm foo.e\n"; &compare_output($answer, &get_logfile(1)); # TEST #3 &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "cp foo.f foo.e\ncp bar.f bar.e\ncat foo.e bar.e > foo.c\nrm bar.e foo.e\n"; &compare_output($answer, &get_logfile(1)); # TEST #4 &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "$make_name: `foo.c' is up to date.\n"; &compare_output($answer, &get_logfile(1)); # TEST #5 &utouch(-10, 'foo.c'); &touch('foo.f'); &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "cp foo.f foo.e\ncp bar.f bar.e\ncat foo.e bar.e > foo.c\nrm bar.e foo.e\n"; &compare_output($answer, &get_logfile(1)); # TEST #6 -- added for PR/1669: don't remove files mentioned on the cmd line. &run_make_with_options($makefile,'foo.e',&get_logfile); $answer = "cp foo.f foo.e\n"; &compare_output($answer, &get_logfile(1)); unlink('foo.f', 'foo.e', 'foo.d', 'foo.c', 'bar.f', 'bar.e', 'bar.d', 'bar.c'); # TEST #7 -- added for PR/1423 $makefile2 = &get_tmpfile; open(MAKEFILE, "> $makefile2"); print MAKEFILE <<'EOF'; all: foo foo.a: ; touch $@ %: %.a ; touch $@ .INTERMEDIATE: foo.a EOF close(MAKEFILE); &run_make_with_options($makefile2, '-R', &get_logfile); $answer = "touch foo.a\ntouch foo\nrm foo.a\n"; &compare_output($answer, &get_logfile(1)); unlink('foo'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/targets/PHONY0000644000175000017500000000261010416553102021632 0ustar srivastasrivasta# -*-perl-*- $description = "The following tests the use of a PHONY target. It makes\n" ."sure that the rules under a target get executed even if\n" ."a filename of the same name of the target exists in the\n" ."directory.\n"; $details = "This makefile in this test declares the target clean to be a \n" ."PHONY target. We then create a file named \"clean\" in the \n" ."directory. Although this file exists, the rule under the target\n" ."clean should still execute because of it's phony status."; $example = "EXAMPLE_FILE"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE ".PHONY : clean \n"; print MAKEFILE "all: \n"; print MAKEFILE "\t\@echo This makefile did not clean the dir ... good\n"; print MAKEFILE "clean: \n"; print MAKEFILE "\t$delete_command $example clean\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch($example); # Create a file named "clean". This is the same name as the target clean # and tricks the target into thinking that it is up to date. (Unless you # use the .PHONY target. &touch("clean"); $answer = "$delete_command $example clean\n"; &run_make_with_options($makefile,"clean",&get_logfile); if (-f $example) { $test_passed = 0; } &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/targets/SECONDARY0000644000175000017500000000531710416553102022273 0ustar srivastasrivasta#! -*-perl-*- $description = "Test the behaviour of the .SECONDARY target."; $details = "\ Test the behavior of the .SECONDARY special target. Create a makefile where a file would not normally be considered intermediate, then specify it as .SECONDARY. Build and note that it's not automatically deleted. Delete the file. Rebuild to ensure that it's not created if it doesn't exist but doesn't need to be built. Change the original and ensure that the secondary file and the ultimate target are both rebuilt, and that the secondary file is not deleted. Try this with implicit rules and explicit rules: both should work.\n"; open(MAKEFILE,"> $makefile"); print MAKEFILE <<'EOF'; .SECONDARY: foo.e # Implicit rule test %.d : %.e ; cp $< $@ %.e : %.f ; cp $< $@ foo.d: foo.e # Explicit rule test foo.c: foo.e ; cp $< $@ EOF close(MAKEFILE); # TEST #1 &utouch(-20, 'foo.f'); &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "cp foo.f foo.e\ncp foo.e foo.d\n"; &compare_output($answer, &get_logfile(1)); # TEST #2 unlink('foo.e'); &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "$make_name: `foo.d' is up to date.\n"; &compare_output($answer, &get_logfile(1)); # TEST #3 &utouch(-10, 'foo.d'); &touch('foo.f'); &run_make_with_options($makefile,'foo.d',&get_logfile); $answer = "cp foo.f foo.e\ncp foo.e foo.d\n"; &compare_output($answer, &get_logfile(1)); # TEST #4 &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "cp foo.e foo.c\n"; &compare_output($answer, &get_logfile(1)); # TEST #5 unlink('foo.e'); &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "$make_name: `foo.c' is up to date.\n"; &compare_output($answer, &get_logfile(1)); # TEST #6 &utouch(-10, 'foo.c'); &touch('foo.f'); &run_make_with_options($makefile,'foo.c',&get_logfile); $answer = "cp foo.f foo.e\ncp foo.e foo.c\n"; &compare_output($answer, &get_logfile(1)); unlink('foo.f', 'foo.e', 'foo.d', 'foo.c'); # TEST #7 -- test the "global" .SECONDARY, with no targets. $makefile2 = &get_tmpfile; open(MAKEFILE, "> $makefile2"); print MAKEFILE <<'EOF'; .SECONDARY: final: intermediate intermediate: source final intermediate source: echo $< > $@ EOF close(MAKEFILE); &utouch(-10, 'source'); touch('final'); &run_make_with_options($makefile2, '', &get_logfile); $answer = "$make_name: `final' is up to date.\n"; &compare_output($answer, &get_logfile(1)); unlink('source', 'final', 'intermediate'); # TEST #8 -- test the "global" .SECONDARY, with .PHONY. touch('version2'); run_make_test(' .PHONY: version .SECONDARY: version2: version ; @echo GOOD all: version2', 'all', 'GOOD'); unlink('version2'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/targets/SILENT0000644000175000017500000000156310416553102021741 0ustar srivastasrivasta# -*-perl-*- $description = "The following tests the special target .SILENT. By simply\n" ."mentioning this as a target, it tells make not to print\n" ."commands before executing them."; $details = "This test is the same as the clean test except that it should\n" ."not echo its command before deleting the specified file.\n"; $example = "EXAMPLE_FILE"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE ".SILENT : clean\n"; print MAKEFILE "clean: \n"; print MAKEFILE "\t$delete_command EXAMPLE_FILE\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch($example); $answer = ""; &run_make_with_options($makefile,"clean",&get_logfile,0); if (-f $example) { $test_passed = 0; } &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/targets/clean0000644000175000017500000000216110416553102022020 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to delete a \n" ."file in the directory. It tests to see if make will \n" ."NOT execute the command unless the rule is given in \n" ."the make command line."; $example = "EXAMPLE_FILE"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "all: \n"; print MAKEFILE "\t\@echo This makefile did not clean the dir... good\n"; print MAKEFILE "clean: \n"; print MAKEFILE "\t$delete_command EXAMPLE_FILE\n"; # END of Contents of MAKEFILE close(MAKEFILE); &touch($example); &run_make_with_options($makefile,"",&get_logfile,0); # Create the answer to what should be produced by this Makefile $answer = "This makefile did not clean the dir... good\n"; &compare_output($answer,&get_logfile(1)) || &error ("abort"); $answer = "$delete_command $example\n"; &run_make_with_options($makefile,"clean",&get_logfile,0); if (-f $example) { $test_passed = 0; } &compare_output($answer,&get_logfile(1)) || &error ("abort"); 1; make-dfsg-3.81.orig/tests/scripts/test_template0000644000175000017500000000176710416553102022152 0ustar srivastasrivasta# -*-perl-*- $description = ""; $details = ""; # Run a make test. See the documentation of run_make_test() in # run_make_tests.pl, but briefly the first argument is a string with the # contents of a makefile to be tested, the second is a string containing the # arguments to be passed to the make invocation, the third is a string # containing the expected output. The fourth is the expected exit code for # make. If not specified, it's assumed that the make program should succeed # (exit with 0). run_make_test('Your test makefile goes here', 'Arguments to pass to make go here', 'Expected output from the invocation goes here'); # There are various special tokens, options, etc. See the full documentation # in run_make_tests.pl. # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/variables/0000755000175000017500000000000010416553102021312 5ustar srivastasrivastamake-dfsg-3.81.orig/tests/scripts/variables/CURDIR0000644000175000017500000000067710416553102022237 0ustar srivastasrivasta# -*-perl-*- $description = "This tests the CURDIR varaible."; $details = "Echo CURDIR both with and without -C. Also ensure overrides work."; open(MAKEFILE,"> $makefile"); print MAKEFILE "all: ; \@echo \$(CURDIR)\n"; close(MAKEFILE); # TEST #1 # ------- &run_make_with_options($makefile,"",&get_logfile); $answer = "$pwd\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/variables/DEFAULT_GOAL0000644000175000017500000000172110416553102023124 0ustar srivastasrivasta# -*-perl-*- $description = "Test the .DEFAULT_GOAL special variable."; $details = ""; # Test #1: basic logic. # run_make_test(' # Basics. # foo: ; @: ifneq ($(.DEFAULT_GOAL),foo) $(error ) endif # Reset to empty. # .DEFAULT_GOAL := bar: ; @: ifneq ($(.DEFAULT_GOAL),bar) $(error ) endif # Change to a different goal. # .DEFAULT_GOAL := baz baz: ; @echo $@ ', '', 'baz'); # Test #2: unknown goal. # run_make_test(' .DEFAULT_GOAL = foo ', '', '#MAKE#: *** No rule to make target `foo\'. Stop.', 512); # Test #3: more than one goal. # run_make_test(' .DEFAULT_GOAL := foo bar ', '', '#MAKE#: *** .DEFAULT_GOAL contains more than one target. Stop.', 512); # Test #4: Savannah bug #12226. # run_make_test(' define rule foo: ; @echo $$@ endef define make-rule $(eval $(rule)) endef $(call make-rule) ', '', 'foo'); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/variables/INCLUDE_DIRS0000644000175000017500000000150310416553102023140 0ustar srivastasrivasta# -*-perl-*- $description = "Test the .INCLUDE_DIRS special variable."; $details = ""; use Cwd; $dir = cwd; $dir =~ s,.*/([^/]+)$,../$1,; # Test #1: The content of .INCLUDE_DIRS depends on the platform for which # make was built. What we know for sure is that it shouldn't be # empty. # run_make_test(' ifeq ($(.INCLUDE_DIRS),) $(warning .INCLUDE_DIRS is empty) endif .PHONY: all all:;@: ', '', ''); # Test #2: Make sure -I paths end up in .INCLUDE_DIRS. # run_make_test(' ifeq ($(dir),) $(warning dir is empty) endif ifeq ($(filter $(dir),$(.INCLUDE_DIRS)),) $(warning .INCLUDE_DIRS does not contain $(dir)) endif .PHONY: all all:;@: ', "-I$dir dir=$dir", ''); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/variables/MAKE0000644000175000017500000000160210416553102021751 0ustar srivastasrivasta# -*-perl-*- $description = "The following test creates a makefile to test MAKE \n" ."(very generic)"; $details = "DETAILS"; open(MAKEFILE,"> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE "TMP := \$(MAKE)\n"; print MAKEFILE "MAKE := \$(subst X=\$(X),,\$(MAKE))\n\n"; print MAKEFILE "all:\n"; print MAKEFILE "\t\@echo \$(TMP)\n"; print MAKEFILE "\t\$(MAKE) -f $makefile foo\n\n"; print MAKEFILE "foo:\n"; print MAKEFILE "\t\@echo \$(MAKE)\n"; # END of Contents of MAKEFILE close(MAKEFILE); # Create the answer to what should be produced by this Makefile $answer = "$mkpath\n$mkpath -f $makefile foo\n" . "${make_name}[1]: Entering directory `$pwd'\n" . "$mkpath\n${make_name}[1]: Leaving directory `$pwd'\n"; &run_make_with_options($makefile,"",&get_logfile,0); &rmfiles("foo"); # COMPARE RESULTS &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/variables/MAKECMDGOALS0000644000175000017500000000215210416553102023064 0ustar srivastasrivasta# -*-perl-*- $description = "Test the MAKECMDGOALS variable."; $details = "\ We construct a makefile with various targets, all of which print out \$(MAKECMDGOALS), then call it different ways."; open(MAKEFILE,"> $makefile"); print MAKEFILE "\ .DEFAULT all: \@echo \$(MAKECMDGOALS) "; close(MAKEFILE); # TEST #1 &run_make_with_options($makefile, "", &get_logfile, 0); $answer = "\n"; &compare_output($answer,&get_logfile(1)); # TEST #2 &run_make_with_options($makefile, "all", &get_logfile, 0); $answer = "all\n"; &compare_output($answer,&get_logfile(1)); # TEST #3 &run_make_with_options($makefile, "foo bar baz yaz", &get_logfile, 0); $answer = "foo bar baz yaz\nfoo bar baz yaz\nfoo bar baz yaz\nfoo bar baz yaz\n"; &compare_output($answer,&get_logfile(1)); # This tells the test driver that the perl test script executed properly. 1; make-dfsg-3.81.orig/tests/scripts/variables/MAKEFILES0000644000175000017500000000134310416553102022536 0ustar srivastasrivasta# -*-perl-*- $description = "Test the MAKEFILES variable."; $makefile2 = &get_tmpfile; $makefile3 = &get_tmpfile; open(MAKEFILE,"> $makefile"); print MAKEFILE 'all: ; @echo DEFAULT RULE: M2=$(M2) M3=$(M3)', "\n"; close(MAKEFILE); open(MAKEFILE,"> $makefile2"); print MAKEFILE < $makefile3"); print MAKEFILE < $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE < $@ bar.x: ; @touch $@ ', '', 'MAKE_RESTARTS= #MAKEFILE#:4: foo.x: No such file or directory MAKE_RESTARTS=1 foo.x:1: bar.x: No such file or directory MAKE_RESTARTS=2'); rmfiles('foo.x', 'bar.x'); # Test multiple restarts and make sure the variable is cleaned up run_make_test(' recurse: @echo recurse MAKE_RESTARTS=$$MAKE_RESTARTS @$(MAKE) -f #MAKEFILE# all all: @echo all MAKE_RESTARTS=$$MAKE_RESTARTS $(info MAKE_RESTARTS=$(MAKE_RESTARTS)) include foo.x foo.x: ; @echo "include bar.x" > $@ bar.x: ; @touch $@ ', '', "MAKE_RESTARTS= #MAKEFILE#:8: foo.x: No such file or directory MAKE_RESTARTS=1 foo.x:1: bar.x: No such file or directory MAKE_RESTARTS=2 recurse MAKE_RESTARTS= MAKE_RESTARTS= #MAKE#[1]: Entering directory `#PWD#' all MAKE_RESTARTS= #MAKE#[1]: Leaving directory `#PWD#'"); rmfiles('foo.x', 'bar.x'); 1; make-dfsg-3.81.orig/tests/scripts/variables/MFILE_LIST0000644000175000017500000000115310416553102022724 0ustar srivastasrivasta# -*-perl-*- $description = "Test the MAKEFILE_LIST variable."; $makefile2 = &get_tmpfile; open(MAKEFILE,"> $makefile"); print MAKEFILE < $makefile2"); print MAKEFILE "m2 := \$(MAKEFILE_LIST)\n"; close(MAKEFILE); &run_make_with_options($makefile, "", &get_logfile); $answer = "$makefile\n$makefile $makefile2\n$makefile $makefile2\n"; &compare_output($answer,&get_logfile(1)); 1; make-dfsg-3.81.orig/tests/scripts/variables/SHELL0000644000175000017500000000332210416553102022104 0ustar srivastasrivasta# -*-perl-*- $description = "Test proper handling of SHELL."; # Find the default value when SHELL is not set. On UNIX it will be /bin/sh, # but on other platforms who knows? resetENV(); delete $ENV{SHELL}; $mshell = `echo 'all:;\@echo \$(SHELL)' | $make_path -f-`; chop $mshell; # According to POSIX, the value of SHELL in the environment has no impact on # the value in the makefile. # Note %extraENV takes precedence over the default value for the shell. $extraENV{SHELL} = '/dev/null'; run_make_test('all:;@echo "$(SHELL)"', '', $mshell); # According to POSIX, any value of SHELL set in the makefile should _NOT_ be # exported to the subshell! I wanted to set SHELL to be $^X (perl) in the # makefile, but make runs $(SHELL) -c 'commandline' and that doesn't work at # all when $(SHELL) is perl :-/. So, we just add an extra initial /./ which # works well on UNIX and seems to work OK on at least some non-UNIX systems. $extraENV{SHELL} = $mshell; run_make_test("SHELL := /./$mshell\n".' all:;@echo "$(SHELL) $$SHELL" ', '', "/./$mshell $mshell"); # As a GNU make extension, if make's SHELL variable is explicitly exported, # then we really _DO_ export it. $extraENV{SHELL} = $mshell; run_make_test("export SHELL := /./$mshell\n".' all:;@echo "$(SHELL) $$SHELL" ', '', "/./$mshell /./$mshell"); # Test out setting of SHELL, both exported and not, as a target-specific # variable. $extraENV{SHELL} = $mshell; run_make_test("all: SHELL := /./$mshell\n".' all:;@echo "$(SHELL) $$SHELL" ', '', "/./$mshell $mshell"); $extraENV{SHELL} = $mshell; run_make_test("all: export SHELL := /./$mshell\n".' all:;@echo "$(SHELL) $$SHELL" ', '', "/./$mshell $mshell"); 1; make-dfsg-3.81.orig/tests/scripts/variables/automatic0000644000175000017500000000552610416553102023233 0ustar srivastasrivasta# -*-perl-*- $description = "Test automatic variable setting."; $details = ""; use Cwd; $dir = cwd; $dir =~ s,.*/([^/]+)$,../$1,; open(MAKEFILE, "> $makefile"); print MAKEFILE "dir = $dir\n"; print MAKEFILE <<'EOF'; .SUFFIXES: .SUFFIXES: .x .y .z $(dir)/foo.x : baz.z $(dir)/bar.y baz.z @echo '$$@ = $@, $$(@D) = $(@D), $$(@F) = $(@F)' @echo '$$* = $*, $$(*D) = $(*D), $$(*F) = $(*F)' @echo '$$< = $<, $$( $makefile2"); print MAKEFILE "dir = $dir\n"; print MAKEFILE <<'EOF'; .SECONDEXPANSION: .SUFFIXES: .DEFAULT: ; @echo '$@' $(dir)/foo $(dir)/bar: $@.x $$@.x $$$@.x $$$$@.x $$(@D).x $$(@F).x $(dir)/x.z $(dir)/y.z: $(dir)/%.z : $@.% $$@.% $$$@.% $$$$@.% $$(@D).% $$(@F).% $(dir)/biz: $$(@).x $${@}.x $${@D}.x $${@F}.x EOF close(MAKEFILE); &run_make_with_options($makefile2, "$dir/foo $dir/bar", &get_logfile); $answer = ".x\n$dir/foo.x\nx\n\$@.x\n$dir.x\nfoo.x\n$dir/bar.x\nbar.x\n"; &compare_output($answer, &get_logfile(1)); &run_make_with_options($makefile2, "$dir/x.z $dir/y.z", &get_logfile); $answer = ".x\n$dir/x.z.x\nx\n\$@.x\n$dir.x\nx.z.x\n.y\n$dir/y.z.y\n\y\n\$@.y\n$dir.y\ny.z.y\n"; &compare_output($answer, &get_logfile(1)); &run_make_with_options($makefile2, "$dir/biz", &get_logfile); $answer = "$dir/biz.x\n$dir.x\nbiz.x\n"; &compare_output($answer, &get_logfile(1)); # TEST #2 -- test for Savannah bug #12320. # run_make_test(' .SUFFIXES: .b .src mbr.b: mbr.src @echo $* mbr.src: ; @:', '', 'mbr'); # TEST #3 -- test for Savannah bug #8154 # Make sure that nonexistent prerequisites are listed in $?, since they are # considered reasons for the target to be rebuilt. # # This was undone due to Savannah bug #16002. We'll re-do it in the next # release. See Savannah bug #16051. #touch('foo'); # #run_make_test(' #foo: bar ; @echo "\$$? = $?" #bar: ;', # '', # '$? = bar'); # #unlink('foo'); 1; make-dfsg-3.81.orig/tests/scripts/variables/flavors0000644000175000017500000000615510416553102022720 0ustar srivastasrivasta# -*-perl-*- $description = "Test various flavors of make variable setting."; $details = ""; open(MAKEFILE, "> $makefile"); # The Contents of the MAKEFILE ... print MAKEFILE <<'EOF'; foo = $(bar) bar = ${ugh} ugh = Hello all: multi ; @echo $(foo) multi: ; $(multi) x := foo y := $(x) bar x := later nullstring := space := $(nullstring) $(nullstring) next: ; @echo $x$(space)$y define multi @echo hi echo there endef ifdef BOGUS define @echo error endef endif define outer define inner A = B endef endef $(eval $(outer)) outer: ; @echo $(inner) EOF # END of Contents of MAKEFILE close(MAKEFILE); # TEST #1 # ------- &run_make_with_options($makefile, "", &get_logfile); $answer = "hi\necho there\nthere\nHello\n"; &compare_output($answer, &get_logfile(1)); # TEST #2 # ------- &run_make_with_options($makefile, "next", &get_logfile); $answer = "later foo bar\n"; &compare_output($answer, &get_logfile(1)); # TEST #3 # ------- &run_make_with_options($makefile, "BOGUS=true", &get_logfile, 512); $answer = "$makefile:24: *** empty variable name. Stop.\n"; &compare_output($answer, &get_logfile(1)); # TEST #4 # ------- &run_make_with_options($makefile, "outer", &get_logfile); $answer = "A = B\n"; &compare_output($answer, &get_logfile(1)); # Clean up from "old style" testing. If all the above tests are converted to # run_make_test() syntax than this line can be removed. $makefile = undef; # ------------------------- # Make sure that prefix characters apply properly to define/endef values. # # There's a bit of oddness here if you try to use a variable to hold the # prefix character for a define. Even though something like this: # # define foo # echo bar # endef # # all: ; $(V)$(foo) # # (where V=@) can be seen by the user to be obviously different than this: # # define foo # $(V)echo bar # endef # # all: ; $(foo) # # and the user thinks it should behave the same as when the "@" is literal # instead of in a variable, that can't happen because by the time make # expands the variables for the command line and sees it begins with a "@" it # can't know anymore whether the prefix character came before the variable # reference or was included in the first line of the variable reference. # TEST #5 # ------- run_make_test(' define FOO $(V1)echo hello $(V2)echo world endef all: ; @$(FOO) ', '', 'hello world'); # TEST #6 # ------- run_make_test(undef, 'V1=@ V2=@', 'hello world'); # TEST #7 # ------- run_make_test(' define FOO $(V1)echo hello $(V2)echo world endef all: ; $(FOO) ', 'V1=@', 'hello echo world world'); # TEST #8 # ------- run_make_test(undef, 'V2=@', 'echo hello hello world'); # TEST #9 # ------- run_make_test(undef, 'V1=@ V2=@', 'hello world'); # TEST #10 # ------- # Test the basics; a "@" internally to the variable applies to only one line. # A "@" before the variable applies to the entire variable. run_make_test(' define FOO @echo hello echo world endef define BAR echo hello echo world endef all: foo bar foo: ; $(FOO) bar: ; @$(BAR) ', '', 'hello echo world world hello world '); 1; make-dfsg-3.81.orig/tests/scripts/variables/negative0000644000175000017500000000207710416553102023045 0ustar srivastasrivasta# -*-perl-*- $description = "Run some negative tests (things that should fail)."; # TEST #0 # Check that non-terminated variable references are detected (and # reported using the best filename/lineno info run_make_test(' foo = bar x = $(foo y = $x all: ; @echo $y ', '', '#MAKEFILE#:3: *** unterminated variable reference. Stop.', 512); # TEST #1 # Bogus variable value passed on the command line. run_make_test(undef, 'x=\$\(other', '#MAKEFILE#:4: *** unterminated variable reference. Stop.', 512); # TEST #2 # Again, but this time while reading the makefile. run_make_test(' foo = bar x = $(foo y = $x z := $y all: ; @echo $y ', '', '#MAKEFILE#:3: *** unterminated variable reference. Stop.', 512); # TEST #3 # Bogus variable value passed on the command line. run_make_test(undef, 'x=\$\(other', '#MAKEFILE#:4: *** unterminated variable reference. Stop.', 512); 1; make-dfsg-3.81.orig/tests/scripts/variables/special0000644000175000017500000000157510416553102022665 0ustar srivastasrivasta# -*-perl-*- $description = "Test special GNU make variables."; $details = ""; &run_make_test(' X1 := $(sort $(filter FOO BAR,$(.VARIABLES))) FOO := foo X2 := $(sort $(filter FOO BAR,$(.VARIABLES))) BAR := bar all: @echo X1 = $(X1) @echo X2 = $(X2) @echo LAST = $(sort $(filter FOO BAR,$(.VARIABLES))) ', '', "X1 =\nX2 = FOO\nLAST = BAR FOO\n"); # $makefile2 = &get_tmpfile; # open(MAKEFILE, "> $makefile2"); # print MAKEFILE <<'EOF'; # X1 := $(sort $(.TARGETS)) # all: foo # @echo X1 = $(X1) # @echo X2 = $(X2) # @echo LAST = $(sort $(.TARGETS)) # X2 := $(sort $(.TARGETS)) # foo: # EOF # close(MAKEFILE); # # TEST #2 # # ------- # &run_make_with_options($makefile2, "", &get_logfile); # $answer = "X1 =\nX2 = all\nLAST = all foo\n"; # &compare_output($answer, &get_logfile(1)); 1; make-dfsg-3.81.orig/tests/test_driver.pl0000644000175000017500000007254710416553102020561 0ustar srivastasrivasta#!/usr/bin/perl # -*-perl-*- # # Modification history: # Written 91-12-02 through 92-01-01 by Stephen McGee. # Modified 92-02-11 through 92-02-22 by Chris Arthur to further generalize. # # Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, # 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # Test driver routines used by a number of test suites, including # those for SCS, make, roll_dir, and scan_deps (?). # # this routine controls the whole mess; each test suite sets up a few # variables and then calls &toplevel, which does all the real work. # $Id: test_driver.pl,v 1.19 2006/03/10 02:20:45 psmith Exp $ # The number of test categories we've run $categories_run = 0; # The number of test categroies that have passed $categories_passed = 0; # The total number of individual tests that have been run $total_tests_run = 0; # The total number of individual tests that have passed $total_tests_passed = 0; # The number of tests in this category that have been run $tests_run = 0; # The number of tests in this category that have passed $tests_passed = 0; # Yeesh. This whole test environment is such a hack! $test_passed = 1; # %makeENV is the cleaned-out environment. %makeENV = (); # %extraENV are any extra environment variables the tests might want to set. # These are RESET AFTER EVERY TEST! %extraENV = (); # %origENV is the caller's original environment %origENV = %ENV; sub resetENV { # We used to say "%ENV = ();" but this doesn't work in Perl 5.000 # through Perl 5.004. It was fixed in Perl 5.004_01, but we don't # want to require that here, so just delete each one individually. foreach $v (keys %ENV) { delete $ENV{$v}; } %ENV = %makeENV; foreach $v (keys %extraENV) { $ENV{$v} = $extraENV{$v}; delete $extraENV{$v}; } } sub toplevel { # Pull in benign variables from the user's environment # foreach (# UNIX-specific things 'TZ', 'LANG', 'TMPDIR', 'HOME', 'USER', 'LOGNAME', 'PATH', # Purify things 'PURIFYOPTIONS', # Windows NT-specific stuff 'Path', 'SystemRoot', # DJGPP-specific stuff 'DJDIR', 'DJGPP', 'SHELL', 'COMSPEC', 'HOSTNAME', 'LFN', 'FNCASE', '387', 'EMU387', 'GROUP' ) { $makeENV{$_} = $ENV{$_} if $ENV{$_}; } # Replace the environment with the new one # %origENV = %ENV; resetENV(); $| = 1; # unbuffered output $debug = 0; # debug flag $profile = 0; # profiling flag $verbose = 0; # verbose mode flag $detail = 0; # detailed verbosity $keep = 0; # keep temp files around $workdir = "work"; # The directory where the test will start running $scriptdir = "scripts"; # The directory where we find the test scripts $tmpfilesuffix = "t"; # the suffix used on tmpfiles $default_output_stack_level = 0; # used by attach_default_output, etc. $default_input_stack_level = 0; # used by attach_default_input, etc. $cwd = "."; # don't we wish we knew $cwdslash = ""; # $cwd . $pathsep, but "" rather than "./" &get_osname; # sets $osname, $vos, $pathsep, and $short_filenames &set_defaults; # suite-defined &parse_command_line (@ARGV); print "OS name = `$osname'\n" if $debug; $workpath = "$cwdslash$workdir"; $scriptpath = "$cwdslash$scriptdir"; &set_more_defaults; # suite-defined &print_banner; if (-d $workpath) { print "Clearing $workpath...\n"; &remove_directory_tree("$workpath/") || &error ("Couldn't wipe out $workpath\n"); } else { mkdir ($workpath, 0777) || &error ("Couldn't mkdir $workpath: $!\n"); } if (!-d $scriptpath) { &error ("Failed to find $scriptpath containing perl test scripts.\n"); } if (@TESTS) { print "Making work dirs...\n"; foreach $test (@TESTS) { if ($test =~ /^([^\/]+)\//) { $dir = $1; push (@rmdirs, $dir); -d "$workpath/$dir" || mkdir ("$workpath/$dir", 0777) || &error ("Couldn't mkdir $workpath/$dir: $!\n"); } } } else { print "Finding tests...\n"; opendir (SCRIPTDIR, $scriptpath) || &error ("Couldn't opendir $scriptpath: $!\n"); @dirs = grep (!/^(\..*|CVS|RCS)$/, readdir (SCRIPTDIR) ); closedir (SCRIPTDIR); foreach $dir (@dirs) { next if ($dir =~ /^(\..*|CVS|RCS)$/ || ! -d "$scriptpath/$dir"); push (@rmdirs, $dir); mkdir ("$workpath/$dir", 0777) || &error ("Couldn't mkdir $workpath/$dir: $!\n"); opendir (SCRIPTDIR, "$scriptpath/$dir") || &error ("Couldn't opendir $scriptpath/$dir: $!\n"); @files = grep (!/^(\..*|CVS|RCS|.*~)$/, readdir (SCRIPTDIR) ); closedir (SCRIPTDIR); foreach $test (@files) { -d $test and next; push (@TESTS, "$dir/$test"); } } } if (@TESTS == 0) { &error ("\nNo tests in $scriptpath, and none were specified.\n"); } print "\n"; &run_each_test; foreach $dir (@rmdirs) { rmdir ("$workpath/$dir"); } $| = 1; $categories_failed = $categories_run - $categories_passed; $total_tests_failed = $total_tests_run - $total_tests_passed; if ($total_tests_failed) { print "\n$total_tests_failed Test"; print "s" unless $total_tests_failed == 1; print " in $categories_failed Categor"; print ($categories_failed == 1 ? "y" : "ies"); print " Failed (See .$diffext files in $workdir dir for details) :-(\n\n"; return 0; } else { print "\n$total_tests_passed Test"; print "s" unless $total_tests_passed == 1; print " in $categories_passed Categor"; print ($categories_passed == 1 ? "y" : "ies"); print " Complete ... No Failures :-)\n\n"; return 1; } } sub get_osname { # Set up an initial value. In perl5 we can do it the easy way. # $osname = defined($^O) ? $^O : ''; # See if the filesystem supports long file names with multiple # dots. DOS doesn't. $short_filenames = 0; (open (TOUCHFD, "> fancy.file.name") && close (TOUCHFD)) || ($short_filenames = 1); unlink ("fancy.file.name") || ($short_filenames = 1); if (! $short_filenames) { # Thanks go to meyering@cs.utexas.edu (Jim Meyering) for suggesting a # better way of doing this. (We used to test for existence of a /mnt # dir, but that apparently fails on an SGI Indigo (whatever that is).) # Because perl on VOS translates /'s to >'s, we need to test for # VOSness rather than testing for Unixness (ie, try > instead of /). mkdir (".ostest", 0777) || &error ("Couldn't create .ostest: $!\n", 1); open (TOUCHFD, "> .ostest>ick") && close (TOUCHFD); chdir (".ostest") || &error ("Couldn't chdir to .ostest: $!\n", 1); } if (! $short_filenames && -f "ick") { $osname = "vos"; $vos = 1; $pathsep = ">"; } else { # the following is regrettably knarly, but it seems to be the only way # to not get ugly error messages if uname can't be found. # Hmmm, BSD/OS 2.0's uname -a is excessively verbose. Let's try it # with switches first. eval "chop (\$osname = `sh -c 'uname -nmsr 2>&1'`)"; if ($osname =~ /not found/i) { $osname = "(something unixy with no uname)"; } elsif ($@ ne "" || $?) { eval "chop (\$osname = `sh -c 'uname -a 2>&1'`)"; if ($@ ne "" || $?) { $osname = "(something unixy)"; } } $vos = 0; $pathsep = "/"; } if (! $short_filenames) { chdir ("..") || &error ("Couldn't chdir to ..: $!\n", 1); unlink (".ostest>ick"); rmdir (".ostest") || &error ("Couldn't rmdir .ostest: $!\n", 1); } } sub parse_command_line { @argv = @_; # use @ARGV if no args were passed in if (@argv == 0) { @argv = @ARGV; } # look at each option; if we don't recognize it, maybe the suite-specific # command line parsing code will... while (@argv) { $option = shift @argv; if ($option =~ /^-debug$/i) { print "\nDEBUG ON\n"; $debug = 1; } elsif ($option =~ /^-usage$/i) { &print_usage; exit 0; } elsif ($option =~ /^-(h|help)$/i) { &print_help; exit 0; } elsif ($option =~ /^-profile$/i) { $profile = 1; } elsif ($option =~ /^-verbose$/i) { $verbose = 1; } elsif ($option =~ /^-detail$/i) { $detail = 1; $verbose = 1; } elsif ($option =~ /^-keep$/i) { $keep = 1; } elsif (&valid_option($option)) { # The suite-defined subroutine takes care of the option } elsif ($option =~ /^-/) { print "Invalid option: $option\n"; &print_usage; exit 0; } else # must be the name of a test { $option =~ s/\.pl$//; push(@TESTS,$option); } } } sub max { local($num) = shift @_; local($newnum); while (@_) { $newnum = shift @_; if ($newnum > $num) { $num = $newnum; } } return $num; } sub print_centered { local($width, $string) = @_; local($pad); if (length ($string)) { $pad = " " x ( ($width - length ($string) + 1) / 2); print "$pad$string"; } } sub print_banner { local($info); local($line); local($len); $info = "Running tests for $testee on $osname\n"; # $testee is suite-defined $len = &max (length ($line), length ($testee_version), length ($banner_info), 73) + 5; $line = ("-" x $len) . "\n"; if ($len < 78) { $len = 78; } &print_centered ($len, $line); &print_centered ($len, $info); &print_centered ($len, $testee_version); # suite-defined &print_centered ($len, $banner_info); # suite-defined &print_centered ($len, $line); print "\n"; } sub run_each_test { $categories_run = 0; foreach $testname (sort @TESTS) { ++$categories_run; $suite_passed = 1; # reset by test on failure $num_of_logfiles = 0; $num_of_tmpfiles = 0; $description = ""; $details = ""; $old_makefile = undef; $testname =~ s/^$scriptpath$pathsep//; $perl_testname = "$scriptpath$pathsep$testname"; $testname =~ s/(\.pl|\.perl)$//; $testpath = "$workpath$pathsep$testname"; # Leave enough space in the extensions to append a number, even # though it needs to fit into 8+3 limits. if ($short_filenames) { $logext = 'l'; $diffext = 'd'; $baseext = 'b'; $extext = ''; } else { $logext = 'log'; $diffext = 'diff'; $baseext = 'base'; $extext = '.'; } $log_filename = "$testpath.$logext"; $diff_filename = "$testpath.$diffext"; $base_filename = "$testpath.$baseext"; $tmp_filename = "$testpath.$tmpfilesuffix"; &setup_for_test; # suite-defined $output = "........................................................ "; substr($output,0,length($testname)) = "$testname "; print $output; # Run the actual test! $tests_run = 0; $tests_passed = 0; $code = do $perl_testname; $total_tests_run += $tests_run; $total_tests_passed += $tests_passed; # How did it go? if (!defined($code)) { $suite_passed = 0; if (length ($@)) { warn "\n*** Test died ($testname): $@\n"; } else { warn "\n*** Couldn't run $perl_testname\n"; } } elsif ($code == -1) { $suite_passed = 0; } elsif ($code != 1 && $code != -1) { $suite_passed = 0; warn "\n*** Test returned $code\n"; } if ($suite_passed) { ++$categories_passed; $status = "ok ($tests_passed passed)"; for ($i = $num_of_tmpfiles; $i; $i--) { &rmfiles ($tmp_filename . &num_suffix ($i) ); } for ($i = $num_of_logfiles ? $num_of_logfiles : 1; $i; $i--) { &rmfiles ($log_filename . &num_suffix ($i) ); &rmfiles ($base_filename . &num_suffix ($i) ); } } elsif (!defined $code || $code > 0) { $status = "FAILED ($tests_passed/$tests_run passed)"; } elsif ($code < 0) { $status = "N/A"; --$categories_run; } # If the verbose option has been specified, then a short description # of each test is printed before displaying the results of each test # describing WHAT is being tested. if ($verbose) { if ($detail) { print "\nWHAT IS BEING TESTED\n"; print "--------------------"; } print "\n\n$description\n\n"; } # If the detail option has been specified, then the details of HOW # the test is testing what it says it is testing in the verbose output # will be displayed here before the results of the test are displayed. if ($detail) { print "\nHOW IT IS TESTED\n"; print "----------------"; print "\n\n$details\n\n"; } print "$status\n"; } } # If the keep flag is not set, this subroutine deletes all filenames that # are sent to it. sub rmfiles { local(@files) = @_; if (!$keep) { return (unlink @files); } return 1; } sub print_standard_usage { local($plname,@moreusage) = @_; local($line); print "Usage: perl $plname [testname] [-verbose] [-detail] [-keep]\n"; print " [-profile] [-usage] [-help] " . "[-debug]\n"; foreach $line (@moreusage) { print " $line\n"; } } sub print_standard_help { local(@morehelp) = @_; local($line); local($tline); local($t) = " "; $line = "Test Driver For $testee"; print "$line\n"; $line = "=" x length ($line); print "$line\n"; &print_usage; print "\ntestname\n" . "${t}You may, if you wish, run only ONE test if you know the name\n" . "${t}of that test and specify this name anywhere on the command\n" . "${t}line. Otherwise ALL existing tests in the scripts directory\n" . "${t}will be run.\n" . "-verbose\n" . "${t}If this option is given, a description of every test is\n" . "${t}displayed before the test is run. (Not all tests may have\n" . "${t}descriptions at this time)\n" . "-detail\n" . "${t}If this option is given, a detailed description of every\n" . "${t}test is displayed before the test is run. (Not all tests\n" . "${t}have descriptions at this time)\n" . "-profile\n" . "${t}If this option is given, then the profile file\n" . "${t}is added to other profiles every time $testee is run.\n" . "${t}This option only works on VOS at this time.\n" . "-keep\n" . "${t}You may give this option if you DO NOT want ANY\n" . "${t}of the files generated by the tests to be deleted. \n" . "${t}Without this option, all files generated by the test will\n" . "${t}be deleted IF THE TEST PASSES.\n" . "-debug\n" . "${t}Use this option if you would like to see all of the system\n" . "${t}calls issued and their return status while running the tests\n" . "${t}This can be helpful if you're having a problem adding a test\n" . "${t}to the suite, or if the test fails!\n"; foreach $line (@morehelp) { $tline = $line; if (substr ($tline, 0, 1) eq "\t") { substr ($tline, 0, 1) = $t; } print "$tline\n"; } } ####################################################################### ########### Generic Test Driver Subroutines ########### ####################################################################### sub get_caller { local($depth); local($package); local($filename); local($linenum); $depth = defined ($_[0]) ? $_[0] : 1; ($package, $filename, $linenum) = caller ($depth + 1); return "$filename: $linenum"; } sub error { local($message) = $_[0]; local($caller) = &get_caller (1); if (defined ($_[1])) { $caller = &get_caller ($_[1] + 1) . " -> $caller"; } die "$caller: $message"; } sub compare_output { local($answer,$logfile) = @_; local($slurp, $answer_matched) = ('', 0); print "Comparing Output ........ " if $debug; $slurp = &read_file_into_string ($logfile); # For make, get rid of any time skew error before comparing--too bad this # has to go into the "generic" driver code :-/ $slurp =~ s/^.*modification time .*in the future.*\n//gm; $slurp =~ s/^.*Clock skew detected.*\n//gm; ++$tests_run; if ($slurp eq $answer) { $answer_matched = 1; } else { # See if it is a slash or CRLF problem local ($answer_mod) = $answer; $answer_mod =~ tr,\\,/,; $answer_mod =~ s,\r\n,\n,gs; $slurp =~ tr,\\,/,; $slurp =~ s,\r\n,\n,gs; $answer_matched = ($slurp eq $answer_mod); } if ($answer_matched && $test_passed) { print "ok\n" if $debug; ++$tests_passed; return 1; } if (! $answer_matched) { print "DIFFERENT OUTPUT\n" if $debug; &create_file (&get_basefile, $answer); print "\nCreating Difference File ...\n" if $debug; # Create the difference file local($command) = "diff -c " . &get_basefile . " " . $logfile; &run_command_with_output(&get_difffile,$command); } $suite_passed = 0; return 0; } sub read_file_into_string { local($filename) = @_; local($oldslash) = $/; undef $/; open (RFISFILE, $filename) || return ""; local ($slurp) = ; close (RFISFILE); $/ = $oldslash; return $slurp; } sub attach_default_output { local ($filename) = @_; local ($code); if ($vos) { $code = system "++attach_default_output_hack $filename"; $code == -2 || &error ("adoh death\n", 1); return 1; } open ("SAVEDOS" . $default_output_stack_level . "out", ">&STDOUT") || &error ("ado: $! duping STDOUT\n", 1); open ("SAVEDOS" . $default_output_stack_level . "err", ">&STDERR") || &error ("ado: $! duping STDERR\n", 1); open (STDOUT, "> " . $filename) || &error ("ado: $filename: $!\n", 1); open (STDERR, ">&STDOUT") || &error ("ado: $filename: $!\n", 1); $default_output_stack_level++; } # close the current stdout/stderr, and restore the previous ones from # the "stack." sub detach_default_output { local ($code); if ($vos) { $code = system "++detach_default_output_hack"; $code == -2 || &error ("ddoh death\n", 1); return 1; } if (--$default_output_stack_level < 0) { &error ("default output stack has flown under!\n", 1); } close (STDOUT); close (STDERR); open (STDOUT, ">&SAVEDOS" . $default_output_stack_level . "out") || &error ("ddo: $! duping STDOUT\n", 1); open (STDERR, ">&SAVEDOS" . $default_output_stack_level . "err") || &error ("ddo: $! duping STDERR\n", 1); close ("SAVEDOS" . $default_output_stack_level . "out") || &error ("ddo: $! closing SCSDOSout\n", 1); close ("SAVEDOS" . $default_output_stack_level . "err") || &error ("ddo: $! closing SAVEDOSerr\n", 1); } # run one command (passed as a list of arg 0 - n), returning 0 on success # and nonzero on failure. sub run_command { local ($code); # We reset this before every invocation. On Windows I think there is only # one environment, not one per process, so I think that variables set in # test scripts might leak into subsequent tests if this isn't reset--??? resetENV(); print "\nrun_command: @_\n" if $debug; $code = system @_; print "run_command: \"@_\" returned $code.\n" if $debug; return $code; } # run one command (passed as a list of arg 0 - n, with arg 0 being the # second arg to this routine), returning 0 on success and non-zero on failure. # The first arg to this routine is a filename to connect to the stdout # & stderr of the child process. sub run_command_with_output { local ($filename) = shift; local ($code); # We reset this before every invocation. On Windows I think there is only # one environment, not one per process, so I think that variables set in # test scripts might leak into subsequent tests if this isn't reset--??? resetENV(); &attach_default_output ($filename); $code = system @_; &detach_default_output; print "run_command_with_output: '@_' returned $code.\n" if $debug; return $code; } # performs the equivalent of an "rm -rf" on the first argument. Like # rm, if the path ends in /, leaves the (now empty) directory; otherwise # deletes it, too. sub remove_directory_tree { local ($targetdir) = @_; local ($nuketop) = 1; local ($ch); $ch = substr ($targetdir, length ($targetdir) - 1); if ($ch eq "/" || $ch eq $pathsep) { $targetdir = substr ($targetdir, 0, length ($targetdir) - 1); $nuketop = 0; } if (! -e $targetdir) { return 1; } &remove_directory_tree_inner ("RDT00", $targetdir) || return 0; if ($nuketop) { rmdir $targetdir || return 0; } return 1; } sub remove_directory_tree_inner { local ($dirhandle, $targetdir) = @_; local ($object); local ($subdirhandle); opendir ($dirhandle, $targetdir) || return 0; $subdirhandle = $dirhandle; $subdirhandle++; while ($object = readdir ($dirhandle)) { if ($object =~ /^(\.\.?|CVS|RCS)$/) { next; } $object = "$targetdir$pathsep$object"; lstat ($object); if (-d _ && &remove_directory_tree_inner ($subdirhandle, $object)) { rmdir $object || return 0; } else { unlink $object || return 0; } } closedir ($dirhandle); return 1; } # We used to use this behavior for this function: # #sub touch #{ # local (@filenames) = @_; # local ($now) = time; # local ($file); # # foreach $file (@filenames) # { # utime ($now, $now, $file) # || (open (TOUCHFD, ">> $file") && close (TOUCHFD)) # || &error ("Couldn't touch $file: $!\n", 1); # } # return 1; #} # # But this behaves badly on networked filesystems where the time is # skewed, because it sets the time of the file based on the _local_ # host. Normally when you modify a file, it's the _remote_ host that # determines the modtime, based on _its_ clock. So, instead, now we open # the file and write something into it to force the remote host to set # the modtime correctly according to its clock. # sub touch { local ($file); foreach $file (@_) { (open(T, ">> $file") && print(T "\n") && close(T)) || &error("Couldn't touch $file: $!\n", 1); } } # Touch with a time offset. To DTRT, call touch() then use stat() to get the # access/mod time for each file and apply the offset. sub utouch { local ($off) = shift; local ($file); &touch(@_); local (@s) = stat($_[0]); utime($s[8]+$off, $s[9]+$off, @_); } # open a file, write some stuff to it, and close it. sub create_file { local ($filename, @lines) = @_; open (CF, "> $filename") || &error ("Couldn't open $filename: $!\n", 1); foreach $line (@lines) { print CF $line; } close (CF); } # create a directory tree described by an associative array, wherein each # key is a relative pathname (using slashes) and its associated value is # one of: # DIR indicates a directory # FILE:contents indicates a file, which should contain contents +\n # LINK:target indicates a symlink, pointing to $basedir/target # The first argument is the dir under which the structure will be created # (the dir will be made and/or cleaned if necessary); the second argument # is the associative array. sub create_dir_tree { local ($basedir, %dirtree) = @_; local ($path); &remove_directory_tree ("$basedir"); mkdir ($basedir, 0777) || &error ("Couldn't mkdir $basedir: $!\n", 1); foreach $path (sort keys (%dirtree)) { if ($dirtree {$path} =~ /^DIR$/) { mkdir ("$basedir/$path", 0777) || &error ("Couldn't mkdir $basedir/$path: $!\n", 1); } elsif ($dirtree {$path} =~ /^FILE:(.*)$/) { &create_file ("$basedir/$path", $1 . "\n"); } elsif ($dirtree {$path} =~ /^LINK:(.*)$/) { symlink ("$basedir/$1", "$basedir/$path") || &error ("Couldn't symlink $basedir/$path -> $basedir/$1: $!\n", 1); } else { &error ("Bogus dirtree type: \"$dirtree{$path}\"\n", 1); } } if ($just_setup_tree) { die "Tree is setup...\n"; } } # compare a directory tree with an associative array in the format used # by create_dir_tree, above. # The first argument is the dir under which the structure should be found; # the second argument is the associative array. sub compare_dir_tree { local ($basedir, %dirtree) = @_; local ($path); local ($i); local ($bogus) = 0; local ($contents); local ($target); local ($fulltarget); local ($found); local (@files); local (@allfiles); opendir (DIR, $basedir) || &error ("Couldn't open $basedir: $!\n", 1); @allfiles = grep (!/^(\.\.?|CVS|RCS)$/, readdir (DIR) ); closedir (DIR); if ($debug) { print "dirtree: (%dirtree)\n$basedir: (@allfiles)\n"; } foreach $path (sort keys (%dirtree)) { if ($debug) { print "Checking $path ($dirtree{$path}).\n"; } $found = 0; foreach $i (0 .. $#allfiles) { if ($allfiles[$i] eq $path) { splice (@allfiles, $i, 1); # delete it if ($debug) { print " Zapped $path; files now (@allfiles).\n"; } lstat ("$basedir/$path"); $found = 1; last; } } if (!$found) { print "compare_dir_tree: $path does not exist.\n"; $bogus = 1; next; } if ($dirtree {$path} =~ /^DIR$/) { if (-d _ && opendir (DIR, "$basedir/$path") ) { @files = readdir (DIR); closedir (DIR); @files = grep (!/^(\.\.?|CVS|RCS)$/ && ($_ = "$path/$_"), @files); push (@allfiles, @files); if ($debug) { print " Read in $path; new files (@files).\n"; } } else { print "compare_dir_tree: $path is not a dir.\n"; $bogus = 1; } } elsif ($dirtree {$path} =~ /^FILE:(.*)$/) { if (-l _ || !-f _) { print "compare_dir_tree: $path is not a file.\n"; $bogus = 1; next; } if ($1 ne "*") { $contents = &read_file_into_string ("$basedir/$path"); if ($contents ne "$1\n") { print "compare_dir_tree: $path contains wrong stuff." . " Is:\n$contentsShould be:\n$1\n"; $bogus = 1; } } } elsif ($dirtree {$path} =~ /^LINK:(.*)$/) { $target = $1; if (!-l _) { print "compare_dir_tree: $path is not a link.\n"; $bogus = 1; next; } $contents = readlink ("$basedir/$path"); $contents =~ tr/>/\//; $fulltarget = "$basedir/$target"; $fulltarget =~ tr/>/\//; if (!($contents =~ /$fulltarget$/)) { if ($debug) { $target = $fulltarget; } print "compare_dir_tree: $path should be link to $target, " . "not $contents.\n"; $bogus = 1; } } else { &error ("Bogus dirtree type: \"$dirtree{$path}\"\n", 1); } } if ($debug) { print "leftovers: (@allfiles).\n"; } foreach $file (@allfiles) { print "compare_dir_tree: $file should not exist.\n"; $bogus = 1; } return !$bogus; } # this subroutine generates the numeric suffix used to keep tmp filenames, # log filenames, etc., unique. If the number passed in is 1, then a null # string is returned; otherwise, we return ".n", where n + 1 is the number # we were given. sub num_suffix { local($num) = @_; if (--$num > 0) { return "$extext$num"; } return ""; } # This subroutine returns a log filename with a number appended to # the end corresponding to how many logfiles have been created in the # current running test. An optional parameter may be passed (0 or 1). # If a 1 is passed, then it does NOT increment the logfile counter # and returns the name of the latest logfile. If either no parameter # is passed at all or a 0 is passed, then the logfile counter is # incremented and the new name is returned. sub get_logfile { local($no_increment) = @_; $num_of_logfiles += !$no_increment; return ($log_filename . &num_suffix ($num_of_logfiles)); } # This subroutine returns a base (answer) filename with a number # appended to the end corresponding to how many logfiles (and thus # base files) have been created in the current running test. # NO PARAMETERS ARE PASSED TO THIS SUBROUTINE. sub get_basefile { return ($base_filename . &num_suffix ($num_of_logfiles)); } # This subroutine returns a difference filename with a number appended # to the end corresponding to how many logfiles (and thus diff files) # have been created in the current running test. sub get_difffile { return ($diff_filename . &num_suffix ($num_of_logfiles)); } # just like logfile, only a generic tmp filename for use by the test. # they are automatically cleaned up unless -keep was used, or the test fails. # Pass an argument of 1 to return the same filename as the previous call. sub get_tmpfile { local($no_increment) = @_; $num_of_tmpfiles += !$no_increment; return ($tmp_filename . &num_suffix ($num_of_tmpfiles)); } 1; make-dfsg-3.81.orig/variable.c0000644000175000017500000012765610416553102016463 0ustar srivastasrivasta/* Internals of variables for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include #include "dep.h" #include "filedef.h" #include "job.h" #include "commands.h" #include "variable.h" #include "rule.h" #ifdef WINDOWS32 #include "pathstuff.h" #endif #include "hash.h" /* Chain of all pattern-specific variables. */ static struct pattern_var *pattern_vars; /* Pointer to last struct in the chain, so we can add onto the end. */ static struct pattern_var *last_pattern_var; /* Create a new pattern-specific variable struct. */ struct pattern_var * create_pattern_var (char *target, char *suffix) { register struct pattern_var *p = (struct pattern_var *) xmalloc (sizeof (struct pattern_var)); if (last_pattern_var != 0) last_pattern_var->next = p; else pattern_vars = p; last_pattern_var = p; p->next = 0; p->target = target; p->len = strlen (target); p->suffix = suffix + 1; return p; } /* Look up a target in the pattern-specific variable list. */ static struct pattern_var * lookup_pattern_var (struct pattern_var *start, char *target) { struct pattern_var *p; unsigned int targlen = strlen(target); for (p = start ? start->next : pattern_vars; p != 0; p = p->next) { char *stem; unsigned int stemlen; if (p->len > targlen) /* It can't possibly match. */ continue; /* From the lengths of the filename and the pattern parts, find the stem: the part of the filename that matches the %. */ stem = target + (p->suffix - p->target - 1); stemlen = targlen - p->len + 1; /* Compare the text in the pattern before the stem, if any. */ if (stem > target && !strneq (p->target, target, stem - target)) continue; /* Compare the text in the pattern after the stem, if any. We could test simply using streq, but this way we compare the first two characters immediately. This saves time in the very common case where the first character matches because it is a period. */ if (*p->suffix == stem[stemlen] && (*p->suffix == '\0' || streq (&p->suffix[1], &stem[stemlen+1]))) break; } return p; } /* Hash table of all global variable definitions. */ static unsigned long variable_hash_1 (const void *keyv) { struct variable const *key = (struct variable const *) keyv; return_STRING_N_HASH_1 (key->name, key->length); } static unsigned long variable_hash_2 (const void *keyv) { struct variable const *key = (struct variable const *) keyv; return_STRING_N_HASH_2 (key->name, key->length); } static int variable_hash_cmp (const void *xv, const void *yv) { struct variable const *x = (struct variable const *) xv; struct variable const *y = (struct variable const *) yv; int result = x->length - y->length; if (result) return result; return_STRING_N_COMPARE (x->name, y->name, x->length); } #ifndef VARIABLE_BUCKETS #define VARIABLE_BUCKETS 523 #endif #ifndef PERFILE_VARIABLE_BUCKETS #define PERFILE_VARIABLE_BUCKETS 23 #endif #ifndef SMALL_SCOPE_VARIABLE_BUCKETS #define SMALL_SCOPE_VARIABLE_BUCKETS 13 #endif static struct variable_set global_variable_set; static struct variable_set_list global_setlist = { 0, &global_variable_set }; struct variable_set_list *current_variable_set_list = &global_setlist; /* Implement variables. */ void init_hash_global_variable_set (void) { hash_init (&global_variable_set.table, VARIABLE_BUCKETS, variable_hash_1, variable_hash_2, variable_hash_cmp); } /* Define variable named NAME with value VALUE in SET. VALUE is copied. LENGTH is the length of NAME, which does not need to be null-terminated. ORIGIN specifies the origin of the variable (makefile, command line or environment). If RECURSIVE is nonzero a flag is set in the variable saying that it should be recursively re-expanded. */ struct variable * define_variable_in_set (const char *name, unsigned int length, char *value, enum variable_origin origin, int recursive, struct variable_set *set, const struct floc *flocp) { struct variable *v; struct variable **var_slot; struct variable var_key; if (set == NULL) set = &global_variable_set; var_key.name = (char *) name; var_key.length = length; var_slot = (struct variable **) hash_find_slot (&set->table, &var_key); if (env_overrides && origin == o_env) origin = o_env_override; v = *var_slot; if (! HASH_VACANT (v)) { if (env_overrides && v->origin == o_env) /* V came from in the environment. Since it was defined before the switches were parsed, it wasn't affected by -e. */ v->origin = o_env_override; /* A variable of this name is already defined. If the old definition is from a stronger source than this one, don't redefine it. */ if ((int) origin >= (int) v->origin) { if (v->value != 0) free (v->value); v->value = xstrdup (value); if (flocp != 0) v->fileinfo = *flocp; else v->fileinfo.filenm = 0; v->origin = origin; v->recursive = recursive; } return v; } /* Create a new variable definition and add it to the hash table. */ v = (struct variable *) xmalloc (sizeof (struct variable)); v->name = savestring (name, length); v->length = length; hash_insert_at (&set->table, v, var_slot); v->value = xstrdup (value); if (flocp != 0) v->fileinfo = *flocp; else v->fileinfo.filenm = 0; v->origin = origin; v->recursive = recursive; v->special = 0; v->expanding = 0; v->exp_count = 0; v->per_target = 0; v->append = 0; v->export = v_default; v->exportable = 1; if (*name != '_' && (*name < 'A' || *name > 'Z') && (*name < 'a' || *name > 'z')) v->exportable = 0; else { for (++name; *name != '\0'; ++name) if (*name != '_' && (*name < 'a' || *name > 'z') && (*name < 'A' || *name > 'Z') && !ISDIGIT(*name)) break; if (*name != '\0') v->exportable = 0; } return v; } /* If the variable passed in is "special", handle its special nature. Currently there are two such variables, both used for introspection: .VARIABLES expands to a list of all the variables defined in this instance of make. .TARGETS expands to a list of all the targets defined in this instance of make. Returns the variable reference passed in. */ #define EXPANSION_INCREMENT(_l) ((((_l) / 500) + 1) * 500) static struct variable * handle_special_var (struct variable *var) { static unsigned long last_var_count = 0; /* This one actually turns out to be very hard, due to the way the parser records targets. The way it works is that target information is collected internally until make knows the target is completely specified. It unitl it sees that some new construct (a new target or variable) is defined that it knows the previous one is done. In short, this means that if you do this: all: TARGS := $(.TARGETS) then $(TARGS) won't contain "all", because it's not until after the variable is created that the previous target is completed. Changing this would be a major pain. I think a less complex way to do it would be to pre-define the target files as soon as the first line is parsed, then come back and do the rest of the definition as now. That would allow $(.TARGETS) to be correct without a major change to the way the parser works. if (streq (var->name, ".TARGETS")) var->value = build_target_list (var->value); else */ if (streq (var->name, ".VARIABLES") && global_variable_set.table.ht_fill != last_var_count) { unsigned long max = EXPANSION_INCREMENT (strlen (var->value)); unsigned long len; char *p; struct variable **vp = (struct variable **) global_variable_set.table.ht_vec; struct variable **end = &vp[global_variable_set.table.ht_size]; /* Make sure we have at least MAX bytes in the allocated buffer. */ var->value = xrealloc (var->value, max); /* Walk through the hash of variables, constructing a list of names. */ p = var->value; len = 0; for (; vp < end; ++vp) if (!HASH_VACANT (*vp)) { struct variable *v = *vp; int l = v->length; len += l + 1; if (len > max) { unsigned long off = p - var->value; max += EXPANSION_INCREMENT (l + 1); var->value = xrealloc (var->value, max); p = &var->value[off]; } bcopy (v->name, p, l); p += l; *(p++) = ' '; } *(p-1) = '\0'; /* Remember how many variables are in our current count. Since we never remove variables from the list, this is a reliable way to know whether the list is up to date or needs to be recomputed. */ last_var_count = global_variable_set.table.ht_fill; } return var; } /* Lookup a variable whose name is a string starting at NAME and with LENGTH chars. NAME need not be null-terminated. Returns address of the `struct variable' containing all info on the variable, or nil if no such variable is defined. */ struct variable * lookup_variable (const char *name, unsigned int length) { const struct variable_set_list *setlist; struct variable var_key; var_key.name = (char *) name; var_key.length = length; for (setlist = current_variable_set_list; setlist != 0; setlist = setlist->next) { const struct variable_set *set = setlist->set; struct variable *v; v = (struct variable *) hash_find_item ((struct hash_table *) &set->table, &var_key); if (v) return v->special ? handle_special_var (v) : v; } #ifdef VMS /* since we don't read envp[] on startup, try to get the variable via getenv() here. */ { char *vname = alloca (length + 1); char *value; strncpy (vname, name, length); vname[length] = 0; value = getenv (vname); if (value != 0) { char *sptr; int scnt; sptr = value; scnt = 0; while ((sptr = strchr (sptr, '$'))) { scnt++; sptr++; } if (scnt > 0) { char *nvalue; char *nptr; nvalue = alloca (strlen (value) + scnt + 1); sptr = value; nptr = nvalue; while (*sptr) { if (*sptr == '$') { *nptr++ = '$'; *nptr++ = '$'; } else { *nptr++ = *sptr; } sptr++; } *nptr = '\0'; return define_variable (vname, length, nvalue, o_env, 1); } return define_variable (vname, length, value, o_env, 1); } } #endif /* VMS */ return 0; } /* Lookup a variable whose name is a string starting at NAME and with LENGTH chars in set SET. NAME need not be null-terminated. Returns address of the `struct variable' containing all info on the variable, or nil if no such variable is defined. */ struct variable * lookup_variable_in_set (const char *name, unsigned int length, const struct variable_set *set) { struct variable var_key; var_key.name = (char *) name; var_key.length = length; return (struct variable *) hash_find_item ((struct hash_table *) &set->table, &var_key); } /* Initialize FILE's variable set list. If FILE already has a variable set list, the topmost variable set is left intact, but the the rest of the chain is replaced with FILE->parent's setlist. If FILE is a double-colon rule, then we will use the "root" double-colon target's variable set as the parent of FILE's variable set. If we're READing a makefile, don't do the pattern variable search now, since the pattern variable might not have been defined yet. */ void initialize_file_variables (struct file *file, int reading) { struct variable_set_list *l = file->variables; if (l == 0) { l = (struct variable_set_list *) xmalloc (sizeof (struct variable_set_list)); l->set = (struct variable_set *) xmalloc (sizeof (struct variable_set)); hash_init (&l->set->table, PERFILE_VARIABLE_BUCKETS, variable_hash_1, variable_hash_2, variable_hash_cmp); file->variables = l; } /* If this is a double-colon, then our "parent" is the "root" target for this double-colon rule. Since that rule has the same name, parent, etc. we can just use its variables as the "next" for ours. */ if (file->double_colon && file->double_colon != file) { initialize_file_variables (file->double_colon, reading); l->next = file->double_colon->variables; return; } if (file->parent == 0) l->next = &global_setlist; else { initialize_file_variables (file->parent, reading); l->next = file->parent->variables; } /* If we're not reading makefiles and we haven't looked yet, see if we can find pattern variables for this target. */ if (!reading && !file->pat_searched) { struct pattern_var *p; p = lookup_pattern_var (0, file->name); if (p != 0) { struct variable_set_list *global = current_variable_set_list; /* We found at least one. Set up a new variable set to accumulate all the pattern variables that match this target. */ file->pat_variables = create_new_variable_set (); current_variable_set_list = file->pat_variables; do { /* We found one, so insert it into the set. */ struct variable *v; if (p->variable.flavor == f_simple) { v = define_variable_loc ( p->variable.name, strlen (p->variable.name), p->variable.value, p->variable.origin, 0, &p->variable.fileinfo); v->flavor = f_simple; } else { v = do_variable_definition ( &p->variable.fileinfo, p->variable.name, p->variable.value, p->variable.origin, p->variable.flavor, 1); } /* Also mark it as a per-target and copy export status. */ v->per_target = p->variable.per_target; v->export = p->variable.export; } while ((p = lookup_pattern_var (p, file->name)) != 0); current_variable_set_list = global; } file->pat_searched = 1; } /* If we have a pattern variable match, set it up. */ if (file->pat_variables != 0) { file->pat_variables->next = l->next; l->next = file->pat_variables; } } /* Pop the top set off the current variable set list, and free all its storage. */ struct variable_set_list * create_new_variable_set (void) { register struct variable_set_list *setlist; register struct variable_set *set; set = (struct variable_set *) xmalloc (sizeof (struct variable_set)); hash_init (&set->table, SMALL_SCOPE_VARIABLE_BUCKETS, variable_hash_1, variable_hash_2, variable_hash_cmp); setlist = (struct variable_set_list *) xmalloc (sizeof (struct variable_set_list)); setlist->set = set; setlist->next = current_variable_set_list; return setlist; } static void free_variable_name_and_value (const void *item) { struct variable *v = (struct variable *) item; free (v->name); free (v->value); } void free_variable_set (struct variable_set_list *list) { hash_map (&list->set->table, free_variable_name_and_value); hash_free (&list->set->table, 1); free ((char *) list->set); free ((char *) list); } /* Create a new variable set and push it on the current setlist. If we're pushing a global scope (that is, the current scope is the global scope) then we need to "push" it the other way: file variable sets point directly to the global_setlist so we need to replace that with the new one. */ struct variable_set_list * push_new_variable_scope (void) { current_variable_set_list = create_new_variable_set(); if (current_variable_set_list->next == &global_setlist) { /* It was the global, so instead of new -> &global we want to replace &global with the new one and have &global -> new, with current still pointing to &global */ struct variable_set *set = current_variable_set_list->set; current_variable_set_list->set = global_setlist.set; global_setlist.set = set; current_variable_set_list->next = global_setlist.next; global_setlist.next = current_variable_set_list; current_variable_set_list = &global_setlist; } return (current_variable_set_list); } void pop_variable_scope (void) { struct variable_set_list *setlist; struct variable_set *set; /* Can't call this if there's no scope to pop! */ assert(current_variable_set_list->next != NULL); if (current_variable_set_list != &global_setlist) { /* We're not pointing to the global setlist, so pop this one. */ setlist = current_variable_set_list; set = setlist->set; current_variable_set_list = setlist->next; } else { /* This set is the one in the global_setlist, but there is another global set beyond that. We want to copy that set to global_setlist, then delete what used to be in global_setlist. */ setlist = global_setlist.next; set = global_setlist.set; global_setlist.set = setlist->set; global_setlist.next = setlist->next; } /* Free the one we no longer need. */ free ((char *) setlist); hash_map (&set->table, free_variable_name_and_value); hash_free (&set->table, 1); free ((char *) set); } /* Merge FROM_SET into TO_SET, freeing unused storage in FROM_SET. */ static void merge_variable_sets (struct variable_set *to_set, struct variable_set *from_set) { struct variable **from_var_slot = (struct variable **) from_set->table.ht_vec; struct variable **from_var_end = from_var_slot + from_set->table.ht_size; for ( ; from_var_slot < from_var_end; from_var_slot++) if (! HASH_VACANT (*from_var_slot)) { struct variable *from_var = *from_var_slot; struct variable **to_var_slot = (struct variable **) hash_find_slot (&to_set->table, *from_var_slot); if (HASH_VACANT (*to_var_slot)) hash_insert_at (&to_set->table, from_var, to_var_slot); else { /* GKM FIXME: delete in from_set->table */ free (from_var->value); free (from_var); } } } /* Merge SETLIST1 into SETLIST0, freeing unused storage in SETLIST1. */ void merge_variable_set_lists (struct variable_set_list **setlist0, struct variable_set_list *setlist1) { struct variable_set_list *to = *setlist0; struct variable_set_list *last0 = 0; /* If there's nothing to merge, stop now. */ if (!setlist1) return; /* This loop relies on the fact that all setlists terminate with the global setlist (before NULL). If that's not true, arguably we SHOULD die. */ if (to) while (setlist1 != &global_setlist && to != &global_setlist) { struct variable_set_list *from = setlist1; setlist1 = setlist1->next; merge_variable_sets (to->set, from->set); last0 = to; to = to->next; } if (setlist1 != &global_setlist) { if (last0 == 0) *setlist0 = setlist1; else last0->next = setlist1; } } /* Define the automatic variables, and record the addresses of their structures so we can change their values quickly. */ void define_automatic_variables (void) { #if defined(WINDOWS32) || defined(__EMX__) extern char* default_shell; #else extern char default_shell[]; #endif register struct variable *v; char buf[200]; sprintf (buf, "%u", makelevel); (void) define_variable (MAKELEVEL_NAME, MAKELEVEL_LENGTH, buf, o_env, 0); sprintf (buf, "%s%s%s", version_string, (remote_description == 0 || remote_description[0] == '\0') ? "" : "-", (remote_description == 0 || remote_description[0] == '\0') ? "" : remote_description); (void) define_variable ("MAKE_VERSION", 12, buf, o_default, 0); #ifdef __MSDOS__ /* Allow to specify a special shell just for Make, and use $COMSPEC as the default $SHELL when appropriate. */ { static char shell_str[] = "SHELL"; const int shlen = sizeof (shell_str) - 1; struct variable *mshp = lookup_variable ("MAKESHELL", 9); struct variable *comp = lookup_variable ("COMSPEC", 7); /* Make $MAKESHELL override $SHELL even if -e is in effect. */ if (mshp) (void) define_variable (shell_str, shlen, mshp->value, o_env_override, 0); else if (comp) { /* $COMSPEC shouldn't override $SHELL. */ struct variable *shp = lookup_variable (shell_str, shlen); if (!shp) (void) define_variable (shell_str, shlen, comp->value, o_env, 0); } } #elif defined(__EMX__) { static char shell_str[] = "SHELL"; const int shlen = sizeof (shell_str) - 1; struct variable *shell = lookup_variable (shell_str, shlen); struct variable *replace = lookup_variable ("MAKESHELL", 9); /* if $MAKESHELL is defined in the environment assume o_env_override */ if (replace && *replace->value && replace->origin == o_env) replace->origin = o_env_override; /* if $MAKESHELL is not defined use $SHELL but only if the variable did not come from the environment */ if (!replace || !*replace->value) if (shell && *shell->value && (shell->origin == o_env || shell->origin == o_env_override)) { /* overwrite whatever we got from the environment */ free(shell->value); shell->value = xstrdup (default_shell); shell->origin = o_default; } /* Some people do not like cmd to be used as the default if $SHELL is not defined in the Makefile. With -DNO_CMD_DEFAULT you can turn off this behaviour */ # ifndef NO_CMD_DEFAULT /* otherwise use $COMSPEC */ if (!replace || !*replace->value) replace = lookup_variable ("COMSPEC", 7); /* otherwise use $OS2_SHELL */ if (!replace || !*replace->value) replace = lookup_variable ("OS2_SHELL", 9); # else # warning NO_CMD_DEFAULT: GNU make will not use CMD.EXE as default shell # endif if (replace && *replace->value) /* overwrite $SHELL */ (void) define_variable (shell_str, shlen, replace->value, replace->origin, 0); else /* provide a definition if there is none */ (void) define_variable (shell_str, shlen, default_shell, o_default, 0); } #endif /* This won't override any definition, but it will provide one if there isn't one there. */ v = define_variable ("SHELL", 5, default_shell, o_default, 0); /* On MSDOS we do use SHELL from environment, since it isn't a standard environment variable on MSDOS, so whoever sets it, does that on purpose. On OS/2 we do not use SHELL from environment but we have already handled that problem above. */ #if !defined(__MSDOS__) && !defined(__EMX__) /* Don't let SHELL come from the environment. */ if (*v->value == '\0' || v->origin == o_env || v->origin == o_env_override) { free (v->value); v->origin = o_file; v->value = xstrdup (default_shell); } #endif /* Make sure MAKEFILES gets exported if it is set. */ v = define_variable ("MAKEFILES", 9, "", o_default, 0); v->export = v_ifset; /* Define the magic D and F variables in terms of the automatic variables they are variations of. */ #ifdef VMS define_variable ("@D", 2, "$(dir $@)", o_automatic, 1); define_variable ("%D", 2, "$(dir $%)", o_automatic, 1); define_variable ("*D", 2, "$(dir $*)", o_automatic, 1); define_variable ("variables; hash_init (&table, VARIABLE_BUCKETS, variable_hash_1, variable_hash_2, variable_hash_cmp); /* Run through all the variable sets in the list, accumulating variables in TABLE. */ for (s = set_list; s != 0; s = s->next) { struct variable_set *set = s->set; v_slot = (struct variable **) set->table.ht_vec; v_end = v_slot + set->table.ht_size; for ( ; v_slot < v_end; v_slot++) if (! HASH_VACANT (*v_slot)) { struct variable **new_slot; struct variable *v = *v_slot; /* If this is a per-target variable and it hasn't been touched already then look up the global version and take its export value. */ if (v->per_target && v->export == v_default) { struct variable *gv; gv = lookup_variable_in_set (v->name, strlen(v->name), &global_variable_set); if (gv) v->export = gv->export; } switch (v->export) { case v_default: if (v->origin == o_default || v->origin == o_automatic) /* Only export default variables by explicit request. */ continue; /* The variable doesn't have a name that can be exported. */ if (! v->exportable) continue; if (! export_all_variables && v->origin != o_command && v->origin != o_env && v->origin != o_env_override) continue; break; case v_export: break; case v_noexport: /* If this is the SHELL variable and it's not exported, then add the value from our original environment. */ if (streq (v->name, "SHELL")) { extern struct variable shell_var; v = &shell_var; break; } continue; case v_ifset: if (v->origin == o_default) continue; break; } new_slot = (struct variable **) hash_find_slot (&table, v); if (HASH_VACANT (*new_slot)) hash_insert_at (&table, v, new_slot); } } makelevel_key.name = MAKELEVEL_NAME; makelevel_key.length = MAKELEVEL_LENGTH; hash_delete (&table, &makelevel_key); result = result_0 = (char **) xmalloc ((table.ht_fill + 2) * sizeof (char *)); v_slot = (struct variable **) table.ht_vec; v_end = v_slot + table.ht_size; for ( ; v_slot < v_end; v_slot++) if (! HASH_VACANT (*v_slot)) { struct variable *v = *v_slot; /* If V is recursively expanded and didn't come from the environment, expand its value. If it came from the environment, it should go back into the environment unchanged. */ if (v->recursive && v->origin != o_env && v->origin != o_env_override) { char *value = recursively_expand_for_file (v, file); #ifdef WINDOWS32 if (strcmp(v->name, "Path") == 0 || strcmp(v->name, "PATH") == 0) convert_Path_to_windows32(value, ';'); #endif *result++ = concat (v->name, "=", value); free (value); } else { #ifdef WINDOWS32 if (strcmp(v->name, "Path") == 0 || strcmp(v->name, "PATH") == 0) convert_Path_to_windows32(v->value, ';'); #endif *result++ = concat (v->name, "=", v->value); } } *result = (char *) xmalloc (100); (void) sprintf (*result, "%s=%u", MAKELEVEL_NAME, makelevel + 1); *++result = 0; hash_free (&table, 0); return result_0; } /* Given a variable, a value, and a flavor, define the variable. See the try_variable_definition() function for details on the parameters. */ struct variable * do_variable_definition (const struct floc *flocp, const char *varname, char *value, enum variable_origin origin, enum variable_flavor flavor, int target_var) { char *p, *alloc_value = NULL; struct variable *v; int append = 0; int conditional = 0; /* Calculate the variable's new value in VALUE. */ switch (flavor) { default: case f_bogus: /* Should not be possible. */ abort (); case f_simple: /* A simple variable definition "var := value". Expand the value. We have to allocate memory since otherwise it'll clobber the variable buffer, and we may still need that if we're looking at a target-specific variable. */ p = alloc_value = allocated_variable_expand (value); break; case f_conditional: /* A conditional variable definition "var ?= value". The value is set IFF the variable is not defined yet. */ v = lookup_variable (varname, strlen (varname)); if (v) return v; conditional = 1; flavor = f_recursive; /* FALLTHROUGH */ case f_recursive: /* A recursive variable definition "var = value". The value is used verbatim. */ p = value; break; case f_append: { /* If we have += but we're in a target variable context, we want to append only with other variables in the context of this target. */ if (target_var) { append = 1; v = lookup_variable_in_set (varname, strlen (varname), current_variable_set_list->set); /* Don't append from the global set if a previous non-appending target-specific variable definition exists. */ if (v && !v->append) append = 0; } else v = lookup_variable (varname, strlen (varname)); if (v == 0) { /* There was no old value. This becomes a normal recursive definition. */ p = value; flavor = f_recursive; } else { /* Paste the old and new values together in VALUE. */ unsigned int oldlen, vallen; char *val; val = value; if (v->recursive) /* The previous definition of the variable was recursive. The new value is the unexpanded old and new values. */ flavor = f_recursive; else /* The previous definition of the variable was simple. The new value comes from the old value, which was expanded when it was set; and from the expanded new value. Allocate memory for the expansion as we may still need the rest of the buffer if we're looking at a target-specific variable. */ val = alloc_value = allocated_variable_expand (val); oldlen = strlen (v->value); vallen = strlen (val); p = (char *) alloca (oldlen + 1 + vallen + 1); bcopy (v->value, p, oldlen); p[oldlen] = ' '; bcopy (val, &p[oldlen + 1], vallen + 1); } } } #ifdef __MSDOS__ /* Many Unix Makefiles include a line saying "SHELL=/bin/sh", but non-Unix systems don't conform to this default configuration (in fact, most of them don't even have `/bin'). On the other hand, $SHELL in the environment, if set, points to the real pathname of the shell. Therefore, we generally won't let lines like "SHELL=/bin/sh" from the Makefile override $SHELL from the environment. But first, we look for the basename of the shell in the directory where SHELL= points, and along the $PATH; if it is found in any of these places, we define $SHELL to be the actual pathname of the shell. Thus, if you have bash.exe installed as d:/unix/bash.exe, and d:/unix is on your $PATH, then SHELL=/usr/local/bin/bash will have the effect of defining SHELL to be "d:/unix/bash.exe". */ if ((origin == o_file || origin == o_override) && strcmp (varname, "SHELL") == 0) { PATH_VAR (shellpath); extern char * __dosexec_find_on_path (const char *, char *[], char *); /* See if we can find "/bin/sh.exe", "/bin/sh.com", etc. */ if (__dosexec_find_on_path (p, (char **)0, shellpath)) { char *p; for (p = shellpath; *p; p++) { if (*p == '\\') *p = '/'; } v = define_variable_loc (varname, strlen (varname), shellpath, origin, flavor == f_recursive, flocp); } else { char *shellbase, *bslash; struct variable *pathv = lookup_variable ("PATH", 4); char *path_string; char *fake_env[2]; size_t pathlen = 0; shellbase = strrchr (p, '/'); bslash = strrchr (p, '\\'); if (!shellbase || bslash > shellbase) shellbase = bslash; if (!shellbase && p[1] == ':') shellbase = p + 1; if (shellbase) shellbase++; else shellbase = p; /* Search for the basename of the shell (with standard executable extensions) along the $PATH. */ if (pathv) pathlen = strlen (pathv->value); path_string = (char *)xmalloc (5 + pathlen + 2 + 1); /* On MSDOS, current directory is considered as part of $PATH. */ sprintf (path_string, "PATH=.;%s", pathv ? pathv->value : ""); fake_env[0] = path_string; fake_env[1] = (char *)0; if (__dosexec_find_on_path (shellbase, fake_env, shellpath)) { char *p; for (p = shellpath; *p; p++) { if (*p == '\\') *p = '/'; } v = define_variable_loc (varname, strlen (varname), shellpath, origin, flavor == f_recursive, flocp); } else v = lookup_variable (varname, strlen (varname)); free (path_string); } } else #endif /* __MSDOS__ */ #ifdef WINDOWS32 if ((origin == o_file || origin == o_override || origin == o_command) && streq (varname, "SHELL")) { extern char *default_shell; /* Call shell locator function. If it returns TRUE, then set no_default_sh_exe to indicate sh was found and set new value for SHELL variable. */ if (find_and_set_default_shell (p)) { v = define_variable_in_set (varname, strlen (varname), default_shell, origin, flavor == f_recursive, (target_var ? current_variable_set_list->set : NULL), flocp); no_default_sh_exe = 0; } else v = lookup_variable (varname, strlen (varname)); } else #endif /* If we are defining variables inside an $(eval ...), we might have a different variable context pushed, not the global context (maybe we're inside a $(call ...) or something. Since this function is only ever invoked in places where we want to define globally visible variables, make sure we define this variable in the global set. */ v = define_variable_in_set (varname, strlen (varname), p, origin, flavor == f_recursive, (target_var ? current_variable_set_list->set : NULL), flocp); v->append = append; v->conditional = conditional; if (alloc_value) free (alloc_value); return v; } /* Try to interpret LINE (a null-terminated string) as a variable definition. ORIGIN may be o_file, o_override, o_env, o_env_override, or o_command specifying that the variable definition comes from a makefile, an override directive, the environment with or without the -e switch, or the command line. See the comments for parse_variable_definition(). If LINE was recognized as a variable definition, a pointer to its `struct variable' is returned. If LINE is not a variable definition, NULL is returned. */ struct variable * parse_variable_definition (struct variable *v, char *line) { register int c; register char *p = line; register char *beg; register char *end; enum variable_flavor flavor = f_bogus; char *name; while (1) { c = *p++; if (c == '\0' || c == '#') return 0; if (c == '=') { end = p - 1; flavor = f_recursive; break; } else if (c == ':') if (*p == '=') { end = p++ - 1; flavor = f_simple; break; } else /* A colon other than := is a rule line, not a variable defn. */ return 0; else if (c == '+' && *p == '=') { end = p++ - 1; flavor = f_append; break; } else if (c == '?' && *p == '=') { end = p++ - 1; flavor = f_conditional; break; } else if (c == '$') { /* This might begin a variable expansion reference. Make sure we don't misrecognize chars inside the reference as =, := or +=. */ char closeparen; int count; c = *p++; if (c == '(') closeparen = ')'; else if (c == '{') closeparen = '}'; else continue; /* Nope. */ /* P now points past the opening paren or brace. Count parens or braces until it is matched. */ count = 0; for (; *p != '\0'; ++p) { if (*p == c) ++count; else if (*p == closeparen && --count < 0) { ++p; break; } } } } v->flavor = flavor; beg = next_token (line); while (end > beg && isblank ((unsigned char)end[-1])) --end; p = next_token (p); v->value = p; /* Expand the name, so "$(foo)bar = baz" works. */ name = (char *) alloca (end - beg + 1); bcopy (beg, name, end - beg); name[end - beg] = '\0'; v->name = allocated_variable_expand (name); if (v->name[0] == '\0') fatal (&v->fileinfo, _("empty variable name")); return v; } /* Try to interpret LINE (a null-terminated string) as a variable definition. ORIGIN may be o_file, o_override, o_env, o_env_override, or o_command specifying that the variable definition comes from a makefile, an override directive, the environment with or without the -e switch, or the command line. See the comments for parse_variable_definition(). If LINE was recognized as a variable definition, a pointer to its `struct variable' is returned. If LINE is not a variable definition, NULL is returned. */ struct variable * try_variable_definition (const struct floc *flocp, char *line, enum variable_origin origin, int target_var) { struct variable v; struct variable *vp; if (flocp != 0) v.fileinfo = *flocp; else v.fileinfo.filenm = 0; if (!parse_variable_definition (&v, line)) return 0; vp = do_variable_definition (flocp, v.name, v.value, origin, v.flavor, target_var); free (v.name); return vp; } /* Print information for variable V, prefixing it with PREFIX. */ static void print_variable (const void *item, void *arg) { const struct variable *v = (struct variable *) item; const char *prefix = (char *) arg; const char *origin; switch (v->origin) { case o_default: origin = _("default"); break; case o_env: origin = _("environment"); break; case o_file: origin = _("makefile"); break; case o_env_override: origin = _("environment under -e"); break; case o_command: origin = _("command line"); break; case o_override: origin = _("`override' directive"); break; case o_automatic: origin = _("automatic"); break; case o_invalid: default: abort (); } fputs ("# ", stdout); fputs (origin, stdout); if (v->fileinfo.filenm) printf (_(" (from `%s', line %lu)"), v->fileinfo.filenm, v->fileinfo.lineno); putchar ('\n'); fputs (prefix, stdout); /* Is this a `define'? */ if (v->recursive && strchr (v->value, '\n') != 0) printf ("define %s\n%s\nendef\n", v->name, v->value); else { register char *p; printf ("%s %s= ", v->name, v->recursive ? v->append ? "+" : "" : ":"); /* Check if the value is just whitespace. */ p = next_token (v->value); if (p != v->value && *p == '\0') /* All whitespace. */ printf ("$(subst ,,%s)", v->value); else if (v->recursive) fputs (v->value, stdout); else /* Double up dollar signs. */ for (p = v->value; *p != '\0'; ++p) { if (*p == '$') putchar ('$'); putchar (*p); } putchar ('\n'); } } /* Print all the variables in SET. PREFIX is printed before the actual variable definitions (everything else is comments). */ void print_variable_set (struct variable_set *set, char *prefix) { hash_map_arg (&set->table, print_variable, prefix); fputs (_("# variable set hash-table stats:\n"), stdout); fputs ("# ", stdout); hash_print_stats (&set->table, stdout); putc ('\n', stdout); } /* Print the data base of variables. */ void print_variable_data_base (void) { puts (_("\n# Variables\n")); print_variable_set (&global_variable_set, ""); puts (_("\n# Pattern-specific Variable Values")); { struct pattern_var *p; int rules = 0; for (p = pattern_vars; p != 0; p = p->next) { ++rules; printf ("\n%s :\n", p->target); print_variable (&p->variable, "# "); } if (rules == 0) puts (_("\n# No pattern-specific variable values.")); else printf (_("\n# %u pattern-specific variable values"), rules); } } /* Print all the local variables of FILE. */ void print_file_variables (struct file *file) { if (file->variables != 0) print_variable_set (file->variables->set, "# "); } #ifdef WINDOWS32 void sync_Path_environment (void) { char *path = allocated_variable_expand ("$(PATH)"); static char *environ_path = NULL; if (!path) return; /* * If done this before, don't leak memory unnecessarily. * Free the previous entry before allocating new one. */ if (environ_path) free (environ_path); /* * Create something WINDOWS32 world can grok */ convert_Path_to_windows32 (path, ';'); environ_path = concat ("PATH", "=", path); putenv (environ_path); free (path); } #endif make-dfsg-3.81.orig/variable.h0000644000175000017500000002124010416553102016446 0ustar srivastasrivasta/* Definitions for using variables in GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "hash.h" /* Codes in a variable definition saying where the definition came from. Increasing numeric values signify less-overridable definitions. */ enum variable_origin { o_default, /* Variable from the default set. */ o_env, /* Variable from environment. */ o_file, /* Variable given in a makefile. */ o_env_override, /* Variable from environment, if -e. */ o_command, /* Variable given by user. */ o_override, /* Variable from an `override' directive. */ o_automatic, /* Automatic variable -- cannot be set. */ o_invalid /* Core dump time. */ }; enum variable_flavor { f_bogus, /* Bogus (error) */ f_simple, /* Simple definition (:=) */ f_recursive, /* Recursive definition (=) */ f_append, /* Appending definition (+=) */ f_conditional /* Conditional definition (?=) */ }; /* Structure that represents one variable definition. Each bucket of the hash table is a chain of these, chained through `next'. */ #define EXP_COUNT_BITS 15 /* This gets all the bitfields into 32 bits */ #define EXP_COUNT_MAX ((1<1, allow this many self-referential expansions. */ enum variable_flavor flavor ENUM_BITFIELD (3); /* Variable flavor. */ enum variable_origin origin ENUM_BITFIELD (3); /* Variable origin. */ enum variable_export { v_export, /* Export this variable. */ v_noexport, /* Don't export this variable. */ v_ifset, /* Export it if it has a non-default value. */ v_default /* Decide in target_environment. */ } export ENUM_BITFIELD (2); }; /* Structure that represents a variable set. */ struct variable_set { struct hash_table table; /* Hash table of variables. */ }; /* Structure that represents a list of variable sets. */ struct variable_set_list { struct variable_set_list *next; /* Link in the chain. */ struct variable_set *set; /* Variable set. */ }; /* Structure used for pattern-specific variables. */ struct pattern_var { struct pattern_var *next; char *target; unsigned int len; char *suffix; struct variable variable; }; extern char *variable_buffer; extern struct variable_set_list *current_variable_set_list; /* expand.c */ extern char *variable_buffer_output PARAMS ((char *ptr, char *string, unsigned int length)); extern char *variable_expand PARAMS ((char *line)); extern char *variable_expand_for_file PARAMS ((char *line, struct file *file)); extern char *allocated_variable_expand_for_file PARAMS ((char *line, struct file *file)); #define allocated_variable_expand(line) \ allocated_variable_expand_for_file (line, (struct file *) 0) extern char *expand_argument PARAMS ((const char *str, const char *end)); extern char *variable_expand_string PARAMS ((char *line, char *string, long length)); extern void install_variable_buffer PARAMS ((char **bufp, unsigned int *lenp)); extern void restore_variable_buffer PARAMS ((char *buf, unsigned int len)); /* function.c */ extern int handle_function PARAMS ((char **op, char **stringp)); extern int pattern_matches PARAMS ((char *pattern, char *percent, char *str)); extern char *subst_expand PARAMS ((char *o, char *text, char *subst, char *replace, unsigned int slen, unsigned int rlen, int by_word)); extern char *patsubst_expand PARAMS ((char *o, char *text, char *pattern, char *replace, char *pattern_percent, char *replace_percent)); /* expand.c */ extern char *recursively_expand_for_file PARAMS ((struct variable *v, struct file *file)); #define recursively_expand(v) recursively_expand_for_file (v, NULL) /* variable.c */ extern struct variable_set_list *create_new_variable_set PARAMS ((void)); extern void free_variable_set PARAMS ((struct variable_set_list *)); extern struct variable_set_list *push_new_variable_scope PARAMS ((void)); extern void pop_variable_scope PARAMS ((void)); extern void define_automatic_variables PARAMS ((void)); extern void initialize_file_variables PARAMS ((struct file *file, int read)); extern void print_file_variables PARAMS ((struct file *file)); extern void print_variable_set PARAMS ((struct variable_set *set, char *prefix)); extern void merge_variable_set_lists PARAMS ((struct variable_set_list **to_list, struct variable_set_list *from_list)); extern struct variable *do_variable_definition PARAMS ((const struct floc *flocp, const char *name, char *value, enum variable_origin origin, enum variable_flavor flavor, int target_var)); extern struct variable *parse_variable_definition PARAMS ((struct variable *v, char *line)); extern struct variable *try_variable_definition PARAMS ((const struct floc *flocp, char *line, enum variable_origin origin, int target_var)); extern void init_hash_global_variable_set PARAMS ((void)); extern void hash_init_function_table PARAMS ((void)); extern struct variable *lookup_variable PARAMS ((const char *name, unsigned int length)); extern struct variable *lookup_variable_in_set PARAMS ((const char *name, unsigned int length, const struct variable_set *set)); extern struct variable *define_variable_in_set PARAMS ((const char *name, unsigned int length, char *value, enum variable_origin origin, int recursive, struct variable_set *set, const struct floc *flocp)); /* Define a variable in the current variable set. */ #define define_variable(n,l,v,o,r) \ define_variable_in_set((n),(l),(v),(o),(r),\ current_variable_set_list->set,NILF) /* Define a variable with a location in the current variable set. */ #define define_variable_loc(n,l,v,o,r,f) \ define_variable_in_set((n),(l),(v),(o),(r),\ current_variable_set_list->set,(f)) /* Define a variable with a location in the global variable set. */ #define define_variable_global(n,l,v,o,r,f) \ define_variable_in_set((n),(l),(v),(o),(r),NULL,(f)) /* Define a variable in FILE's variable set. */ #define define_variable_for_file(n,l,v,o,r,f) \ define_variable_in_set((n),(l),(v),(o),(r),(f)->variables->set,NILF) /* Warn that NAME is an undefined variable. */ #define warn_undefined(n,l) do{\ if (warn_undefined_variables_flag) \ error (reading_file, \ _("warning: undefined variable `%.*s'"), \ (int)(l), (n)); \ }while(0) extern char **target_environment PARAMS ((struct file *file)); extern struct pattern_var *create_pattern_var PARAMS ((char *target, char *suffix)); extern int export_all_variables; #define MAKELEVEL_NAME "MAKELEVEL" #define MAKELEVEL_LENGTH (sizeof (MAKELEVEL_NAME) - 1) make-dfsg-3.81.orig/version.c0000644000175000017500000000245510416553102016350 0ustar srivastasrivasta/* Record version and build host architecture for GNU make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* We use instead of "config.h" so that a compilation using -I. -I$srcdir will use ./config.h rather than $srcdir/config.h (which it would do because make.h was found in $srcdir). */ #include #ifndef MAKE_HOST # define MAKE_HOST "unknown" #endif char *version_string = VERSION; char *make_host = MAKE_HOST; /* Local variables: version-control: never End: */ make-dfsg-3.81.orig/vmsdir.h0000644000175000017500000000354210416553102016172 0ustar srivastasrivasta/* dirent.h for vms Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef VMSDIR_H #define VMSDIR_H #include #define MAXNAMLEN 255 #ifndef __DECC #if !defined (__GNUC__) && !defined (__ALPHA) typedef unsigned long u_long; typedef unsigned short u_short; #endif #endif struct direct { off_t d_off; u_long d_fileno; u_short d_reclen; u_short d_namlen; char d_name[MAXNAMLEN + 1]; }; #undef DIRSIZ #define DIRSIZ(dp) \ (((sizeof (struct direct) \ - (MAXNAMLEN+1) \ + ((dp)->d_namlen+1)) \ + 3) & ~3) #define d_ino d_fileno /* compatability */ /* * Definitions for library routines operating on directories. */ typedef struct DIR { struct direct dir; char d_result[MAXNAMLEN + 1]; #if defined (__ALPHA) || defined (__DECC) struct FAB fab; #else struct fabdef fab; #endif } DIR; #ifndef NULL #define NULL 0 #endif extern DIR *opendir PARAMS (()); extern struct direct *readdir PARAMS ((DIR *dfd)); #define rewinddir(dirp) seekdir((dirp), (long)0) extern int closedir PARAMS ((DIR *dfd)); extern char *vmsify PARAMS ((char *name, int type)); #endif /* VMSDIR_H */ make-dfsg-3.81.orig/vmsfunctions.c0000644000175000017500000001473410416553102017424 0ustar srivastasrivasta/* VMS functions Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "debug.h" #include "job.h" #ifdef __DECC #include #endif #include #include #include #include #include #include "vmsdir.h" #ifdef HAVE_VMSDIR_H DIR * opendir (char *dspec) { struct DIR *dir = (struct DIR *)xmalloc (sizeof (struct DIR)); struct NAM *dnam = (struct NAM *)xmalloc (sizeof (struct NAM)); struct FAB *dfab = &dir->fab; char *searchspec = (char *)xmalloc (MAXNAMLEN + 1); memset (dir, 0, sizeof *dir); *dfab = cc$rms_fab; *dnam = cc$rms_nam; sprintf (searchspec, "%s*.*;", dspec); dfab->fab$l_fna = searchspec; dfab->fab$b_fns = strlen (searchspec); dfab->fab$l_nam = dnam; *dnam = cc$rms_nam; dnam->nam$l_esa = searchspec; dnam->nam$b_ess = MAXNAMLEN; if (! (sys$parse (dfab) & 1)) { free (dir); free (dnam); free (searchspec); return (NULL); } return dir; } #define uppercasify(str) \ do \ { \ char *tmp; \ for (tmp = (str); *tmp != '\0'; tmp++) \ if (islower ((unsigned char)*tmp)) \ *tmp = toupper ((unsigned char)*tmp); \ } \ while (0) struct direct * readdir (DIR *dir) { struct FAB *dfab = &dir->fab; struct NAM *dnam = (struct NAM *)(dfab->fab$l_nam); struct direct *dentry = &dir->dir; int i; memset (dentry, 0, sizeof *dentry); dnam->nam$l_rsa = dir->d_result; dnam->nam$b_rss = MAXNAMLEN; DB (DB_VERBOSE, (".")); if (!((i = sys$search (dfab)) & 1)) { DB (DB_VERBOSE, (_("sys$search failed with %d\n"), i)); return (NULL); } dentry->d_off = 0; if (dnam->nam$w_fid == 0) dentry->d_fileno = 1; else dentry->d_fileno = dnam->nam$w_fid[0] + (dnam->nam$w_fid[1] << 16); dentry->d_reclen = sizeof (struct direct); dentry->d_namlen = dnam->nam$b_name + dnam->nam$b_type; strncpy (dentry->d_name, dnam->nam$l_name, dentry->d_namlen); dentry->d_name[dentry->d_namlen] = '\0'; #ifdef HAVE_CASE_INSENSITIVE_FS uppercasify (dentry->d_name); #endif return (dentry); } int closedir (DIR *dir) { if (dir != NULL) { struct FAB *dfab = &dir->fab; struct NAM *dnam = (struct NAM *)(dfab->fab$l_nam); if (dnam != NULL) free (dnam->nam$l_esa); free (dnam); free (dir); } return 0; } #endif /* compiled for OpenVMS prior to V7.x */ char * getwd (char *cwd) { static char buf[512]; if (cwd) return (getcwd (cwd, 512)); else return (getcwd (buf, 512)); } int vms_stat (char *name, struct stat *buf) { int status; int i; static struct FAB Fab; static struct NAM Nam; static struct fibdef Fib; /* short fib */ static struct dsc$descriptor FibDesc = { sizeof (Fib), DSC$K_DTYPE_Z, DSC$K_CLASS_S, (char *) &Fib }; static struct dsc$descriptor_s DevDesc = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, &Nam.nam$t_dvi[1] }; static char EName[NAM$C_MAXRSS]; static char RName[NAM$C_MAXRSS]; static struct dsc$descriptor_s FileName = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, 0 }; static struct dsc$descriptor_s string = { 0, DSC$K_DTYPE_T, DSC$K_CLASS_S, 0 }; static unsigned long Rdate[2]; static unsigned long Cdate[2]; static struct atrdef Atr[] = { #if defined(VAX) /* Revision date */ { sizeof (Rdate), ATR$C_REVDATE, (unsigned int) &Rdate[0] }, /* Creation date */ { sizeof (Cdate), ATR$C_CREDATE, (unsigned int) &Cdate[0] }, #else /* Revision date */ { sizeof (Rdate), ATR$C_REVDATE, &Rdate[0] }, /* Creation date */ { sizeof (Cdate), ATR$C_CREDATE, &Cdate[0]}, #endif { 0, 0, 0 } }; static short int DevChan; static short int iosb[4]; name = vmsify (name, 0); /* initialize RMS structures, we need a NAM to retrieve the FID */ Fab = cc$rms_fab; Fab.fab$l_fna = name; /* name of file */ Fab.fab$b_fns = strlen (name); Fab.fab$l_nam = &Nam; /* FAB has an associated NAM */ Nam = cc$rms_nam; Nam.nam$l_esa = EName; /* expanded filename */ Nam.nam$b_ess = sizeof (EName); Nam.nam$l_rsa = RName; /* resultant filename */ Nam.nam$b_rss = sizeof (RName); /* do $PARSE and $SEARCH here */ status = sys$parse (&Fab); if (!(status & 1)) return -1; DevDesc.dsc$w_length = Nam.nam$t_dvi[0]; status = sys$assign (&DevDesc, &DevChan, 0, 0); if (!(status & 1)) return -1; FileName.dsc$a_pointer = Nam.nam$l_name; FileName.dsc$w_length = Nam.nam$b_name + Nam.nam$b_type + Nam.nam$b_ver; /* Initialize the FIB */ for (i = 0; i < 3; i++) { #ifndef __VAXC Fib.fib$w_fid[i] = Nam.nam$w_fid[i]; Fib.fib$w_did[i] = Nam.nam$w_did[i]; #else Fib.fib$r_fid_overlay.fib$w_fid[i] = Nam.nam$w_fid[i]; Fib.fib$r_did_overlay.fib$w_did[i] = Nam.nam$w_did[i]; #endif } status = sys$qiow (0, DevChan, IO$_ACCESS, &iosb, 0, 0, &FibDesc, &FileName, 0, 0, &Atr, 0); sys$dassgn (DevChan); if (!(status & 1)) return -1; status = iosb[0]; if (!(status & 1)) return -1; status = stat (name, buf); if (status) return -1; buf->st_mtime = ((Rdate[0] >> 24) & 0xff) + ((Rdate[1] << 8) & 0xffffff00); buf->st_ctime = ((Cdate[0] >> 24) & 0xff) + ((Cdate[1] << 8) & 0xffffff00); return 0; } char * cvt_time (unsigned long tval) { static long int date[2]; static char str[27]; static struct dsc$descriptor date_str = { 26, DSC$K_DTYPE_T, DSC$K_CLASS_S, str }; date[0] = (tval & 0xff) << 24; date[1] = ((tval >> 8) & 0xffffff); if ((date[0] == 0) && (date[1] == 0)) return ("never"); sys$asctim (0, &date_str, date, 0); str[26] = '\0'; return (str); } int strcmpi (const char *s1, const char *s2) { while (*s1 != '\0' && toupper(*s1) == toupper(*s2)) { s1++; s2++; } return toupper(*(unsigned char *) s1) - toupper(*(unsigned char *) s2); } make-dfsg-3.81.orig/vmsify.c0000644000175000017500000004171510416553102016202 0ustar srivastasrivasta/* vmsify.c -- Module for vms <-> unix file name conversion Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ /* Written by Klaus Kämpf (kkaempf@progis.de) of proGIS Software, Aachen, Germany */ #include #include #include #if VMS #include #include #include #include #include #include #include #include /* Initialize a string descriptor (struct dsc$descriptor_s) for an arbitrary string. ADDR is a pointer to the first character of the string, and LEN is the length of the string. */ #define INIT_DSC_S(dsc, addr, len) do { \ (dsc).dsc$b_dtype = DSC$K_DTYPE_T; \ (dsc).dsc$b_class = DSC$K_CLASS_S; \ (dsc).dsc$w_length = (len); \ (dsc).dsc$a_pointer = (addr); \ } while (0) /* Initialize a string descriptor (struct dsc$descriptor_s) for a NUL-terminated string. S is a pointer to the string; the length is determined by calling strlen(). */ #define INIT_DSC_CSTRING(dsc, s) INIT_DSC_S(dsc, s, strlen(s)) #endif /* copy 'from' to 'to' up to but not including 'upto' return 0 if eos on from return 1 if upto found return 'to' at last char + 1 return 'from' at match + 1 or eos if no match if as_dir == 1, change all '.' to '_' else change all '.' but the last to '_' */ static int copyto (char **to, char **from, char upto, int as_dir) { char *s; s = strrchr (*from, '.'); while (**from) { if (**from == upto) { do { (*from)++; } while (**from == upto); return 1; } if (**from == '.') { if ((as_dir == 1) || (*from != s)) **to = '_'; else **to = '.'; } else { #ifdef HAVE_CASE_INSENSITIVE_FS if (isupper ((unsigned char)**from)) **to = tolower ((unsigned char)**from); else #endif **to = **from; } (*to)++; (*from)++; } return 0; } /* get translation of logical name */ static char * trnlog (char *name) { int stat; static char reslt[1024]; $DESCRIPTOR (reslt_dsc, reslt); short resltlen; struct dsc$descriptor_s name_dsc; char *s; INIT_DSC_CSTRING (name_dsc, name); stat = lib$sys_trnlog (&name_dsc, &resltlen, &reslt_dsc); if ((stat&1) == 0) { return ""; } if (stat == SS$_NOTRAN) { return ""; } reslt[resltlen] = '\0'; s = (char *)malloc (resltlen+1); if (s == 0) return ""; strcpy (s, reslt); return s; } static char * showall (char *s) { static char t[512]; char *pt; pt = t; if (strchr (s, '\\') == 0) return s; while (*s) { if (*s == '\\') { *pt++ = *s; } *pt++ = *s++; } return pt; } enum namestate { N_START, N_DEVICE, N_OPEN, N_DOT, N_CLOSED, N_DONE }; /* convert unix style name to vms style type = 0 -> name is a full name (directory and filename part) type = 1 -> name is a directory type = 2 -> name is a filename without directory The following conversions are applied (0) (1) (2) input full name dir name file name 1 ./ [] .dir 2 ../ .dir 3 // : :[000000] :000000.dir 4 //a a: a: a: 5 //a/ a: a: a:000000.dir 9 / [000000] [000000] 000000.dir 10 /a [000000]a [a] [000000]a 11 /a/ [a] [a] [000000]a.dir 12 /a/b [a]b [a.b] [a]b 13 /a/b/ [a.b] [a.b] [a]b.dir 14 /a/b/c [a.b]c [a.b.c] [a.b]c 15 /a/b/c/ [a.b.c] [a.b.c] [a.b]c.dir 16 a a [.a] a 17 a/ [.a] [.a] a.dir 18 a/b [.a]b [.a.b] [.a]b 19 a/b/ [.a.b] [.a.b] [.a]b.dir 20 a/b/c [.a.b]c [.a.b.c] [.a.b]c 21 a/b/c/ [.a.b.c] [.a.b.c] [.a.b]c.dir 22 a.b.c a_b.c [.a_b_c] a_b_c.dir 23 [x][y]z [x.y]z [x.y]z [x.y]z 24 [x][.y]z [x.y]z [x.y]z [x.y]z 25 filenames with '$' are left unchanged if they contain no '/' 25 filenames with ':' are left unchanged 26 filenames with a single pair of '[' ']' are left unchanged the input string is not written to */ char * vmsify (char *name, int type) { /* max 255 device max 39 directory max 39 filename max 39 filetype max 5 version */ #define MAXPATHLEN 512 enum namestate nstate; static char vmsname[MAXPATHLEN+1]; char *fptr; char *vptr; char *s,*s1; int as_dir; int count; if (name == 0) return 0; fptr = name; vptr = vmsname; nstate = N_START; /* case 25a */ s = strpbrk (name, "$:"); if (s != 0) { char *s1; char *s2; if (type == 1) { s1 = strchr (s+1, '['); s2 = strchr (s+1, ']'); } if (*s == '$') { if (strchr (name, '/') == 0) { if ((type == 1) && (s1 != 0) && (s2 == 0)) { strcpy (vmsname, name); strcat (vmsname, "]"); return vmsname; } else return name; } } else { if ((type == 1) && (s1 != 0) && (s2 == 0)) { strcpy (vmsname, name); strcat (vmsname, "]"); return vmsname; } else return name; } } /* case 26 */ s = strchr (name, '['); if (s != 0) { s1 = strchr (s+1, '['); if (s1 == 0) { if ((type == 1) && (strchr (s+1, ']') == 0)) { strcpy (vmsname, name); strcat (vmsname, "]"); return vmsname; } else return name; /* single [, keep unchanged */ } s1--; if (*s1 != ']') { return name; /* not ][, keep unchanged */ } /* we have ][ */ s = name; /* s -> starting char s1 -> ending ']' */ do { strncpy (vptr, s, s1-s); /* copy up to but not including ']' */ vptr += s1-s; if (*s1 == 0) break; s = s1 + 1; /* s -> char behind ']' */ if (*s != '[') /* was '][' ? */ break; /* no, last ] found, exit */ s++; if (*s != '.') *vptr++ = '.'; s1 = strchr (s, ']'); if (s1 == 0) /* no closing ] */ s1 = s + strlen (s); } while (1); *vptr++ = ']'; fptr = s; } else /* no [ in name */ { int state; int rooted = 1; /* flag if logical is rooted, else insert [000000] */ state = 0; do { switch (state) { case 0: /* start of loop */ if (*fptr == '/') { fptr++; state = 1; } else if (*fptr == '.') { fptr++; state = 10; } else state = 2; break; case 1: /* '/' at start */ if (*fptr == '/') { fptr++; state = 3; } else state = 4; break; case 2: /* no '/' at start */ s = strchr (fptr, '/'); if (s == 0) /* no '/' (16) */ { if (type == 1) { strcpy (vptr, "[."); vptr += 2; } copyto (&vptr, &fptr, 0, (type==1)); if (type == 1) *vptr++ = ']'; state = -1; } else /* found '/' (17..21) */ { if ((type == 2) && (*(s+1) == 0)) /* 17(2) */ { copyto (&vptr, &fptr, '/', 1); state = 7; } else { strcpy (vptr, "[."); vptr += 2; copyto (&vptr, &fptr, '/', 1); nstate = N_OPEN; state = 9; } } break; case 3: /* '//' at start */ while (*fptr == '/') /* collapse all '/' */ fptr++; if (*fptr == 0) /* just // */ { char cwdbuf[MAXPATHLEN+1]; s1 = getcwd(cwdbuf, MAXPATHLEN); if (s1 == 0) { return ""; /* FIXME, err getcwd */ } s = strchr (s1, ':'); if (s == 0) { return ""; /* FIXME, err no device */ } strncpy (vptr, s1, s-s1+1); vptr += s-s1+1; state = -1; break; } s = vptr; if (copyto (&vptr, &fptr, '/', 1) == 0) /* copy device part */ { *vptr++ = ':'; state = -1; break; } *vptr = ':'; nstate = N_DEVICE; if (*fptr == 0) /* just '//a/' */ { strcpy (vptr+1, "[000000]"); vptr += 9; state = -1; break; } *vptr = 0; /* check logical for [000000] insertion */ s1 = trnlog (s); if (*s1 != 0) { /* found translation */ char *s2; for (;;) /* loop over all nested logicals */ { s2 = s1 + strlen (s1) - 1; if (*s2 == ':') /* translation ends in ':' */ { s2 = trnlog (s1); free (s1); if (*s2 == 0) { rooted = 0; break; } s1 = s2; continue; /* next iteration */ } if (*s2 == ']') /* translation ends in ']' */ { if (*(s2-1) == '.') /* ends in '.]' */ { if (strncmp (fptr, "000000", 6) != 0) rooted = 0; } else { strcpy (vmsname, s1); s = strchr (vmsname, ']'); *s = '.'; nstate = N_DOT; vptr = s; } } break; } free (s1); } else rooted = 0; if (*vptr == 0) { nstate = N_DEVICE; *vptr++ = ':'; } else vptr++; if (rooted == 0) { strcpy (vptr, "[000000."); vptr += 8; s1 = vptr-1; nstate = N_DOT; } else s1 = 0; /* s1-> '.' after 000000 or NULL */ s = strchr (fptr, '/'); if (s == 0) { /* no next '/' */ if (*(vptr-1) == '.') *(vptr-1) = ']'; else if (rooted == 0) *vptr++ = ']'; copyto (&vptr, &fptr, 0, (type == 1)); state = -1; break; } else { while (*(s+1) == '/') /* skip multiple '/' */ s++; } if ((rooted != 0) && (*(vptr-1) != '.')) { *vptr++ = '['; nstate = N_DOT; } else if ((nstate == N_DOT) && (s1 != 0) && (*(s+1) == 0)) { if (type == 2) { *s1 = ']'; nstate = N_CLOSED; } } state = 9; break; case 4: /* single '/' at start (9..15) */ if (*fptr == 0) state = 5; else state = 6; break; case 5: /* just '/' at start (9) */ if (type != 2) { *vptr++ = '['; nstate = N_OPEN; } strcpy (vptr, "000000"); vptr += 6; if (type == 2) state = 7; else state = 8; break; case 6: /* chars following '/' at start 10..15 */ *vptr++ = '['; nstate = N_OPEN; s = strchr (fptr, '/'); if (s == 0) /* 10 */ { if (type != 1) { strcpy (vptr, "000000]"); vptr += 7; } copyto (&vptr, &fptr, 0, (type == 1)); if (type == 1) { *vptr++ = ']'; } state = -1; } else /* 11..15 */ { if ( (type == 2) && (*(s+1) == 0)) /* 11(2) */ { strcpy (vptr, "000000]"); nstate = N_CLOSED; vptr += 7; } copyto (&vptr, &fptr, '/', (*(vptr-1) != ']')); state = 9; } break; case 7: /* add '.dir' and exit */ if ((nstate == N_OPEN) || (nstate == N_DOT)) { s = vptr-1; while (s > vmsname) { if (*s == ']') { break; } if (*s == '.') { *s = ']'; break; } s--; } } strcpy (vptr, ".dir"); vptr += 4; state = -1; break; case 8: /* add ']' and exit */ *vptr++ = ']'; state = -1; break; case 9: /* 17..21, fptr -> 1st '/' + 1 */ if (*fptr == 0) { if (type == 2) { state = 7; } else state = 8; break; } s = strchr (fptr, '/'); if (s == 0) { if (type != 1) { if (nstate == N_OPEN) { *vptr++ = ']'; nstate = N_CLOSED; } as_dir = 0; } else { if (nstate == N_OPEN) { *vptr++ = '.'; nstate = N_DOT; } as_dir = 1; } } else { while (*(s+1) == '/') s++; if ( (type == 2) && (*(s+1) == 0)) /* 19(2), 21(2)*/ { if (nstate != N_CLOSED) { *vptr++ = ']'; nstate = N_CLOSED; } as_dir = 1; } else { if (nstate == N_OPEN) { *vptr++ = '.'; nstate = N_DOT; } as_dir = 1; } } if ( (*fptr == '.') /* check for '..' or '../' */ && (*(fptr+1) == '.') && ((*(fptr+2) == '/') || (*(fptr+2) == 0)) ) { fptr += 2; if (*fptr == '/') { do { fptr++; } while (*fptr == '/'); } else if (*fptr == 0) type = 1; vptr--; /* vptr -> '.' or ']' */ s1 = vptr; for (;;) { s1--; if (*s1 == '.') /* one back */ { vptr = s1; nstate = N_OPEN; break; } if (*s1 == '[') /* top level reached */ { if (*fptr == 0) { strcpy (s1, "[000000]"); vptr = s1 + 8; nstate = N_CLOSED; s = 0; break; } else { vptr = s1+1; nstate = N_OPEN; break; } } } } else { copyto (&vptr, &fptr, '/', as_dir); if (nstate == N_DOT) nstate = N_OPEN; } if (s == 0) { /* 18,20 */ if (type == 1) *vptr++ = ']'; state = -1; } else { if (*(s+1) == 0) { if (type == 2) /* 19,21 */ { state = 7; } else { *vptr++ = ']'; state = -1; } } } break; case 10: /* 1,2 first is '.' */ if (*fptr == '.') { fptr++; state = 11; } else state = 12; break; case 11: /* 2, '..' at start */ count = 1; if (*fptr != 0) { if (*fptr != '/') /* got ..xxx */ { return name; } do /* got ../ */ { fptr++; while (*fptr == '/') fptr++; if (*fptr != '.') break; if (*(fptr+1) != '.') break; fptr += 2; if ((*fptr == 0) || (*fptr == '/')) count++; } while (*fptr == '/'); } { /* got '..' or '../' */ char cwdbuf[MAXPATHLEN+1]; s1 = getcwd(cwdbuf, MAXPATHLEN); if (s1 == 0) { return ""; /* FIXME, err getcwd */ } strcpy (vptr, s1); s = strchr (vptr, ']'); if (s != 0) { nstate = N_OPEN; while (s > vptr) { s--; if (*s == '[') { s++; strcpy (s, "000000]"); state = -1; break; } else if (*s == '.') { if (--count == 0) { if (*fptr == 0) /* had '..' or '../' */ { *s++ = ']'; state = -1; } else /* had '../xxx' */ { state = 9; } *s = 0; break; } } } } vptr += strlen (vptr); } break; case 12: /* 1, '.' at start */ if (*fptr != 0) { if (*fptr != '/') { return name; } while (*fptr == '/') fptr++; } { char cwdbuf[MAXPATHLEN+1]; s1 = getcwd(cwdbuf, MAXPATHLEN); if (s1 == 0) { return ""; /*FIXME, err getcwd */ } strcpy (vptr, s1); if (*fptr == 0) { state = -1; break; } else { s = strchr (vptr, ']'); if (s == 0) { state = -1; break; } *s = 0; nstate = N_OPEN; vptr += strlen (vptr); state = 9; } } break; } } while (state > 0); } /* directory conversion done fptr -> filename part of input string vptr -> free space in vmsname */ *vptr++ = 0; return vmsname; } /* convert from vms-style to unix-style dev:[dir1.dir2] //dev/dir1/dir2/ */ char * unixify (char *name) { static char piece[512]; char *s, *p; if (strchr (name, '/') != 0) /* already in unix style */ return name; p = piece; *p = 0; /* device part */ s = strchr (name, ':'); if (s != 0) { *s = 0; *p++ = '/'; *p++ = '/'; strcpy (p, name); p += strlen (p); *s = ':'; } /* directory part */ *p++ = '/'; s = strchr (name, '['); if (s != 0) { s++; switch (*s) { case ']': /* [] */ strcat (p, "./"); break; case '-': /* [- */ strcat (p, "../"); break; case '.': strcat (p, "./"); /* [. */ break; default: s--; break; } s++; while (*s) { if (*s == '.') *p++ = '/'; else *p++ = *s; s++; if (*s == ']') { s++; break; } } if (*s != 0) /* more after ']' ?? */ { if (*(p-1) != '/') *p++ = '/'; strcpy (p, s); /* copy it anyway */ } } else /* no '[' anywhere */ { *p++ = 0; } /* force end with '/' */ if (*(p-1) != '/') *p++ = '/'; *p = 0; return piece; } /* EOF */ make-dfsg-3.81.orig/vmsjobs.c0000644000175000017500000004101310416553102016337 0ustar srivastasrivasta/* --------------- Moved here from job.c --------------- This file must be #included in job.c, as it accesses static functions. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include #include extern char *vmsify PARAMS ((char *name, int type)); static int vms_jobsefnmask = 0; /* Wait for nchildren children to terminate */ static void vmsWaitForChildren(int *status) { while (1) { if (!vms_jobsefnmask) { *status = 0; return; } *status = sys$wflor (32, vms_jobsefnmask); } return; } /* Set up IO redirection. */ char * vms_redirect (struct dsc$descriptor_s *desc, char *fname, char *ibuf) { char *fptr; ibuf++; while (isspace ((unsigned char)*ibuf)) ibuf++; fptr = ibuf; while (*ibuf && !isspace ((unsigned char)*ibuf)) ibuf++; *ibuf = 0; if (strcmp (fptr, "/dev/null") != 0) { strcpy (fname, vmsify (fptr, 0)); if (strchr (fname, '.') == 0) strcat (fname, "."); } desc->dsc$w_length = strlen(fname); desc->dsc$a_pointer = fname; desc->dsc$b_dtype = DSC$K_DTYPE_T; desc->dsc$b_class = DSC$K_CLASS_S; if (*fname == 0) printf (_("Warning: Empty redirection\n")); return ibuf; } /* found apostrophe at (p-1) inc p until after closing apostrophe. */ char * vms_handle_apos (char *p) { int alast; #define SEPCHARS ",/()= " alast = 0; while (*p != 0) { if (*p == '"') { if (alast) { alast = 0; p++; } else { p++; if (strchr (SEPCHARS, *p)) break; alast = 1; } } else p++; } return p; } /* This is called as an AST when a child process dies (it won't get interrupted by anything except a higher level AST). */ int vmsHandleChildTerm(struct child *child) { int status; register struct child *lastc, *c; int child_failed; vms_jobsefnmask &= ~(1 << (child->efn - 32)); lib$free_ef(&child->efn); (void) sigblock (fatal_signal_mask); child_failed = !(child->cstatus & 1 || ((child->cstatus & 7) == 0)); /* Search for a child matching the deceased one. */ lastc = 0; #if defined(RECURSIVEJOBS) /* I've had problems with recursive stuff and process handling */ for (c = children; c != 0 && c != child; lastc = c, c = c->next) ; #else c = child; #endif if (child_failed && !c->noerror && !ignore_errors_flag) { /* The commands failed. Write an error message, delete non-precious targets, and abort. */ child_error (c->file->name, c->cstatus, 0, 0, 0); c->file->update_status = 1; delete_child_targets (c); } else { if (child_failed) { /* The commands failed, but we don't care. */ child_error (c->file->name, c->cstatus, 0, 0, 1); child_failed = 0; } #if defined(RECURSIVEJOBS) /* I've had problems with recursive stuff and process handling */ /* If there are more commands to run, try to start them. */ start_job (c); switch (c->file->command_state) { case cs_running: /* Successfully started. */ break; case cs_finished: if (c->file->update_status != 0) { /* We failed to start the commands. */ delete_child_targets (c); } break; default: error (NILF, _("internal error: `%s' command_state"), c->file->name); abort (); break; } #endif /* RECURSIVEJOBS */ } /* Set the state flag to say the commands have finished. */ c->file->command_state = cs_finished; notice_finished_file (c->file); #if defined(RECURSIVEJOBS) /* I've had problems with recursive stuff and process handling */ /* Remove the child from the chain and free it. */ if (lastc == 0) children = c->next; else lastc->next = c->next; free_child (c); #endif /* RECURSIVEJOBS */ /* There is now another slot open. */ if (job_slots_used > 0) --job_slots_used; /* If the job failed, and the -k flag was not given, die. */ if (child_failed && !keep_going_flag) die (EXIT_FAILURE); (void) sigsetmask (sigblock (0) & ~(fatal_signal_mask)); return 1; } /* VMS: Spawn a process executing the command in ARGV and return its pid. */ #define MAXCMDLEN 200 /* local helpers to make ctrl+c and ctrl+y working, see below */ #include #include #include static int ctrlMask= LIB$M_CLI_CTRLY; static int oldCtrlMask; static int setupYAstTried= 0; static int pidToAbort= 0; static int chan= 0; static void reEnableAst(void) { lib$enable_ctrl (&oldCtrlMask,0); } static void astHandler (void) { if (pidToAbort) { sys$forcex (&pidToAbort, 0, SS$_ABORT); pidToAbort= 0; } kill (getpid(),SIGQUIT); } static void tryToSetupYAst(void) { $DESCRIPTOR(inputDsc,"SYS$COMMAND"); int status; struct { short int status, count; int dvi; } iosb; setupYAstTried++; if (!chan) { status= sys$assign(&inputDsc,&chan,0,0); if (!(status&SS$_NORMAL)) { lib$signal(status); return; } } status= sys$qiow (0, chan, IO$_SETMODE|IO$M_CTRLYAST,&iosb,0,0, astHandler,0,0,0,0,0); if (status==SS$_NORMAL) status= iosb.status; if (status==SS$_ILLIOFUNC || status==SS$_NOPRIV) { sys$dassgn(chan); #ifdef CTRLY_ENABLED_ANYWAY fprintf (stderr, _("-warning, CTRL-Y will leave sub-process(es) around.\n")); #else return; #endif } else if (!(status&SS$_NORMAL)) { sys$dassgn(chan); lib$signal(status); return; } /* called from AST handler ? */ if (setupYAstTried>1) return; if (atexit(reEnableAst)) fprintf (stderr, _("-warning, you may have to re-enable CTRL-Y handling from DCL.\n")); status= lib$disable_ctrl (&ctrlMask, &oldCtrlMask); if (!(status&SS$_NORMAL)) { lib$signal(status); return; } } int child_execute_job (char *argv, struct child *child) { int i; static struct dsc$descriptor_s cmddsc; static struct dsc$descriptor_s pnamedsc; static struct dsc$descriptor_s ifiledsc; static struct dsc$descriptor_s ofiledsc; static struct dsc$descriptor_s efiledsc; int have_redirection = 0; int have_newline = 0; int spflags = CLI$M_NOWAIT; int status; char *cmd = alloca (strlen (argv) + 512), *p, *q; char ifile[256], ofile[256], efile[256]; char *comname = 0; char procname[100]; int in_string; /* Parse IO redirection. */ ifile[0] = 0; ofile[0] = 0; efile[0] = 0; DB (DB_JOBS, ("child_execute_job (%s)\n", argv)); while (isspace ((unsigned char)*argv)) argv++; if (*argv == 0) return 0; sprintf (procname, "GMAKE_%05x", getpid () & 0xfffff); pnamedsc.dsc$w_length = strlen(procname); pnamedsc.dsc$a_pointer = procname; pnamedsc.dsc$b_dtype = DSC$K_DTYPE_T; pnamedsc.dsc$b_class = DSC$K_CLASS_S; in_string = 0; /* Handle comments and redirection. */ for (p = argv, q = cmd; *p; p++, q++) { if (*p == '"') in_string = !in_string; if (in_string) { *q = *p; continue; } switch (*p) { case '#': *p-- = 0; *q-- = 0; break; case '\\': p++; if (*p == '\n') p++; if (isspace ((unsigned char)*p)) { do { p++; } while (isspace ((unsigned char)*p)); p--; } *q = *p; break; case '<': p = vms_redirect (&ifiledsc, ifile, p); *q = ' '; have_redirection = 1; break; case '>': have_redirection = 1; if (*(p-1) == '2') { q--; if (strncmp (p, ">&1", 3) == 0) { p += 3; strcpy (efile, "sys$output"); efiledsc.dsc$w_length = strlen(efile); efiledsc.dsc$a_pointer = efile; efiledsc.dsc$b_dtype = DSC$K_DTYPE_T; efiledsc.dsc$b_class = DSC$K_CLASS_S; } else { p = vms_redirect (&efiledsc, efile, p); } } else { p = vms_redirect (&ofiledsc, ofile, p); } *q = ' '; break; case '\n': have_newline = 1; default: *q = *p; break; } } *q = *p; while (isspace ((unsigned char)*--q)) *q = '\0'; if (strncmp (cmd, "builtin_", 8) == 0) { child->pid = 270163; child->efn = 0; child->cstatus = 1; DB (DB_JOBS, (_("BUILTIN [%s][%s]\n"), cmd, cmd+8)); p = cmd + 8; if ((*(p) == 'c') && (*(p+1) == 'd') && ((*(p+2) == ' ') || (*(p+2) == '\t'))) { p += 3; while ((*p == ' ') || (*p == '\t')) p++; DB (DB_JOBS, (_("BUILTIN CD %s\n"), p)); if (chdir (p)) return 0; else return 1; } else if ((*(p) == 'r') && (*(p+1) == 'm') && ((*(p+2) == ' ') || (*(p+2) == '\t'))) { int in_arg; /* rm */ p += 3; while ((*p == ' ') || (*p == '\t')) p++; in_arg = 1; DB (DB_JOBS, (_("BUILTIN RM %s\n"), p)); while (*p) { switch (*p) { case ' ': case '\t': if (in_arg) { *p++ = ';'; in_arg = 0; } break; default: break; } p++; } } else { printf(_("Unknown builtin command '%s'\n"), cmd); fflush(stdout); return 0; } } /* Create a *.com file if either the command is too long for lib$spawn, or the command contains a newline, or if redirection is desired. Forcing commands with newlines into DCLs allows to store search lists on user mode logicals. */ if (strlen (cmd) > MAXCMDLEN || (have_redirection != 0) || (have_newline != 0)) { FILE *outfile; char c; char *sep; int alevel = 0; /* apostrophe level */ if (strlen (cmd) == 0) { printf (_("Error, empty command\n")); fflush (stdout); return 0; } outfile = open_tmpfile (&comname, "sys$scratch:CMDXXXXXX.COM"); if (outfile == 0) pfatal_with_name (_("fopen (temporary file)")); if (ifile[0]) { fprintf (outfile, "$ assign/user %s sys$input\n", ifile); DB (DB_JOBS, (_("Redirected input from %s\n"), ifile)); ifiledsc.dsc$w_length = 0; } if (efile[0]) { fprintf (outfile, "$ define sys$error %s\n", efile); DB (DB_JOBS, (_("Redirected error to %s\n"), efile)); efiledsc.dsc$w_length = 0; } if (ofile[0]) { fprintf (outfile, "$ define sys$output %s\n", ofile); DB (DB_JOBS, (_("Redirected output to %s\n"), ofile)); ofiledsc.dsc$w_length = 0; } p = sep = q = cmd; for (c = '\n'; c; c = *q++) { switch (c) { case '\n': /* At a newline, skip any whitespace around a leading $ from the command and issue exactly one $ into the DCL. */ while (isspace ((unsigned char)*p)) p++; if (*p == '$') p++; while (isspace ((unsigned char)*p)) p++; fwrite (p, 1, q - p, outfile); fputc ('$', outfile); fputc (' ', outfile); /* Reset variables. */ p = sep = q; break; /* Nice places for line breaks are after strings, after comma or space and before slash. */ case '"': q = vms_handle_apos (q); sep = q; break; case ',': case ' ': sep = q; break; case '/': case '\0': sep = q - 1; break; default: break; } if (sep - p > 78) { /* Enough stuff for a line. */ fwrite (p, 1, sep - p, outfile); p = sep; if (*sep) { /* The command continues. */ fputc ('-', outfile); } fputc ('\n', outfile); } } fwrite (p, 1, q - p, outfile); fputc ('\n', outfile); fclose (outfile); sprintf (cmd, "$ @%s", comname); DB (DB_JOBS, (_("Executing %s instead\n"), cmd)); } cmddsc.dsc$w_length = strlen(cmd); cmddsc.dsc$a_pointer = cmd; cmddsc.dsc$b_dtype = DSC$K_DTYPE_T; cmddsc.dsc$b_class = DSC$K_CLASS_S; child->efn = 0; while (child->efn < 32 || child->efn > 63) { status = lib$get_ef ((unsigned long *)&child->efn); if (!(status & 1)) return 0; } sys$clref (child->efn); vms_jobsefnmask |= (1 << (child->efn - 32)); /* LIB$SPAWN [command-string] [,input-file] [,output-file] [,flags] [,process-name] [,process-id] [,completion-status-address] [,byte-integer-event-flag-num] [,AST-address] [,varying-AST-argument] [,prompt-string] [,cli] [,table] */ #ifndef DONTWAITFORCHILD /* * Code to make ctrl+c and ctrl+y working. * The problem starts with the synchronous case where after lib$spawn is * called any input will go to the child. But with input re-directed, * both control characters won't make it to any of the programs, neither * the spawning nor to the spawned one. Hence the caller needs to spawn * with CLI$M_NOWAIT to NOT give up the input focus. A sys$waitfr * has to follow to simulate the wanted synchronous behaviour. * The next problem is ctrl+y which isn't caught by the crtl and * therefore isn't converted to SIGQUIT (for a signal handler which is * already established). The only way to catch ctrl+y, is an AST * assigned to the input channel. But ctrl+y handling of DCL needs to be * disabled, otherwise it will handle it. Not to mention the previous * ctrl+y handling of DCL needs to be re-established before make exits. * One more: At the time of LIB$SPAWN signals are blocked. SIGQUIT will * make it to the signal handler after the child "normally" terminates. * This isn't enough. It seems reasonable for simple command lines like * a 'cc foobar.c' spawned in a subprocess but it is unacceptable for * spawning make. Therefore we need to abort the process in the AST. * * Prior to the spawn it is checked if an AST is already set up for * ctrl+y, if not one is set up for a channel to SYS$COMMAND. In general * this will work except if make is run in a batch environment, but there * nobody can press ctrl+y. During the setup the DCL handling of ctrl+y * is disabled and an exit handler is established to re-enable it. * If the user interrupts with ctrl+y, the assigned AST will fire, force * an abort to the subprocess and signal SIGQUIT, which will be caught by * the already established handler and will bring us back to common code. * After the spawn (now /nowait) a sys$waitfr simulates the /wait and * enables the ctrl+y be delivered to this code. And the ctrl+c too, * which the crtl converts to SIGINT and which is caught by the common * signal handler. Because signals were blocked before entering this code * sys$waitfr will always complete and the SIGQUIT will be processed after * it (after termination of the current block, somewhere in common code). * And SIGINT too will be delayed. That is ctrl+c can only abort when the * current command completes. Anyway it's better than nothing :-) */ if (!setupYAstTried) tryToSetupYAst(); status = lib$spawn (&cmddsc, /* cmd-string */ (ifiledsc.dsc$w_length == 0)?0:&ifiledsc, /* input-file */ (ofiledsc.dsc$w_length == 0)?0:&ofiledsc, /* output-file */ &spflags, /* flags */ &pnamedsc, /* proc name */ &child->pid, &child->cstatus, &child->efn, 0, 0, 0, 0, 0); if (status & 1) { pidToAbort= child->pid; status= sys$waitfr (child->efn); pidToAbort= 0; vmsHandleChildTerm(child); } #else status = lib$spawn (&cmddsc, (ifiledsc.dsc$w_length == 0)?0:&ifiledsc, (ofiledsc.dsc$w_length == 0)?0:&ofiledsc, &spflags, &pnamedsc, &child->pid, &child->cstatus, &child->efn, vmsHandleChildTerm, child, 0, 0, 0); #endif if (!(status & 1)) { printf (_("Error spawning, %d\n") ,status); fflush (stdout); switch (status) { case 0x1c: errno = EPROCLIM; break; default: errno = EFAIL; } } if (comname && !ISDB (DB_JOBS)) unlink (comname); return (status & 1); } make-dfsg-3.81.orig/vpath.c0000644000175000017500000004176510416553102016014 0ustar srivastasrivasta/* Implementation of pattern-matching file search paths for GNU Make. Copyright (C) 1988, 1989, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include "make.h" #include "filedef.h" #include "variable.h" #ifdef WINDOWS32 #include "pathstuff.h" #endif /* Structure used to represent a selective VPATH searchpath. */ struct vpath { struct vpath *next; /* Pointer to next struct in the linked list. */ char *pattern; /* The pattern to match. */ char *percent; /* Pointer into `pattern' where the `%' is. */ unsigned int patlen;/* Length of the pattern. */ char **searchpath; /* Null-terminated list of directories. */ unsigned int maxlen;/* Maximum length of any entry in the list. */ }; /* Linked-list of all selective VPATHs. */ static struct vpath *vpaths; /* Structure for the general VPATH given in the variable. */ static struct vpath *general_vpath; /* Structure for GPATH given in the variable. */ static struct vpath *gpaths; static int selective_vpath_search PARAMS ((struct vpath *path, char **file, FILE_TIMESTAMP *mtime_ptr)); /* Reverse the chain of selective VPATH lists so they will be searched in the order given in the makefiles and construct the list from the VPATH variable. */ void build_vpath_lists () { register struct vpath *new = 0; register struct vpath *old, *nexto; register char *p; /* Reverse the chain. */ for (old = vpaths; old != 0; old = nexto) { nexto = old->next; old->next = new; new = old; } vpaths = new; /* If there is a VPATH variable with a nonnull value, construct the general VPATH list from it. We use variable_expand rather than just calling lookup_variable so that it will be recursively expanded. */ { /* Turn off --warn-undefined-variables while we expand SHELL and IFS. */ int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; p = variable_expand ("$(strip $(VPATH))"); warn_undefined_variables_flag = save; } if (*p != '\0') { /* Save the list of vpaths. */ struct vpath *save_vpaths = vpaths; /* Empty `vpaths' so the new one will have no next, and `vpaths' will still be nil if P contains no existing directories. */ vpaths = 0; /* Parse P. */ construct_vpath_list ("%", p); /* Store the created path as the general path, and restore the old list of vpaths. */ general_vpath = vpaths; vpaths = save_vpaths; } /* If there is a GPATH variable with a nonnull value, construct the GPATH list from it. We use variable_expand rather than just calling lookup_variable so that it will be recursively expanded. */ { /* Turn off --warn-undefined-variables while we expand SHELL and IFS. */ int save = warn_undefined_variables_flag; warn_undefined_variables_flag = 0; p = variable_expand ("$(strip $(GPATH))"); warn_undefined_variables_flag = save; } if (*p != '\0') { /* Save the list of vpaths. */ struct vpath *save_vpaths = vpaths; /* Empty `vpaths' so the new one will have no next, and `vpaths' will still be nil if P contains no existing directories. */ vpaths = 0; /* Parse P. */ construct_vpath_list ("%", p); /* Store the created path as the GPATH, and restore the old list of vpaths. */ gpaths = vpaths; vpaths = save_vpaths; } } /* Construct the VPATH listing for the pattern and searchpath given. This function is called to generate selective VPATH lists and also for the general VPATH list (which is in fact just a selective VPATH that is applied to everything). The returned pointer is either put in the linked list of all selective VPATH lists or in the GENERAL_VPATH variable. If SEARCHPATH is nil, remove all previous listings with the same pattern. If PATTERN is nil, remove all VPATH listings. Existing and readable directories that are not "." given in the searchpath separated by the path element separator (defined in make.h) are loaded into the directory hash table if they are not there already and put in the VPATH searchpath for the given pattern with trailing slashes stripped off if present (and if the directory is not the root, "/"). The length of the longest entry in the list is put in the structure as well. The new entry will be at the head of the VPATHS chain. */ void construct_vpath_list (char *pattern, char *dirpath) { register unsigned int elem; register char *p; register char **vpath; register unsigned int maxvpath; unsigned int maxelem; char *percent = NULL; if (pattern != 0) { pattern = xstrdup (pattern); percent = find_percent (pattern); } if (dirpath == 0) { /* Remove matching listings. */ register struct vpath *path, *lastpath; lastpath = 0; path = vpaths; while (path != 0) { struct vpath *next = path->next; if (pattern == 0 || (((percent == 0 && path->percent == 0) || (percent - pattern == path->percent - path->pattern)) && streq (pattern, path->pattern))) { /* Remove it from the linked list. */ if (lastpath == 0) vpaths = path->next; else lastpath->next = next; /* Free its unused storage. */ free (path->pattern); free ((char *) path->searchpath); free ((char *) path); } else lastpath = path; path = next; } if (pattern != 0) free (pattern); return; } #ifdef WINDOWS32 convert_vpath_to_windows32(dirpath, ';'); #endif /* Figure out the maximum number of VPATH entries and put it in MAXELEM. We start with 2, one before the first separator and one nil (the list terminator) and increment our estimated number for each separator or blank we find. */ maxelem = 2; p = dirpath; while (*p != '\0') if (*p++ == PATH_SEPARATOR_CHAR || isblank ((unsigned char)*p)) ++maxelem; vpath = (char **) xmalloc (maxelem * sizeof (char *)); maxvpath = 0; /* Skip over any initial separators and blanks. */ p = dirpath; while (*p == PATH_SEPARATOR_CHAR || isblank ((unsigned char)*p)) ++p; elem = 0; while (*p != '\0') { char *v; unsigned int len; /* Find the end of this entry. */ v = p; while (*p != '\0' && *p != PATH_SEPARATOR_CHAR && !isblank ((unsigned char)*p)) ++p; len = p - v; /* Make sure there's no trailing slash, but still allow "/" as a directory. */ #if defined(__MSDOS__) || defined(__EMX__) /* We need also to leave alone a trailing slash in "d:/". */ if (len > 3 || (len > 1 && v[1] != ':')) #endif if (len > 1 && p[-1] == '/') --len; if (len > 1 || *v != '.') { v = savestring (v, len); /* Verify that the directory actually exists. */ if (dir_file_exists_p (v, "")) { /* It does. Put it in the list. */ vpath[elem++] = dir_name (v); free (v); if (len > maxvpath) maxvpath = len; } else /* The directory does not exist. Omit from the list. */ free (v); } /* Skip over separators and blanks between entries. */ while (*p == PATH_SEPARATOR_CHAR || isblank ((unsigned char)*p)) ++p; } if (elem > 0) { struct vpath *path; /* ELEM is now incremented one element past the last entry, to where the nil-pointer terminator goes. Usually this is maxelem - 1. If not, shrink down. */ if (elem < (maxelem - 1)) vpath = (char **) xrealloc ((char *) vpath, (elem + 1) * sizeof (char *)); /* Put the nil-pointer terminator on the end of the VPATH list. */ vpath[elem] = 0; /* Construct the vpath structure and put it into the linked list. */ path = (struct vpath *) xmalloc (sizeof (struct vpath)); path->searchpath = vpath; path->maxlen = maxvpath; path->next = vpaths; vpaths = path; /* Set up the members. */ path->pattern = pattern; path->percent = percent; path->patlen = strlen (pattern); } else { /* There were no entries, so free whatever space we allocated. */ free ((char *) vpath); if (pattern != 0) free (pattern); } } /* Search the GPATH list for a pathname string that matches the one passed in. If it is found, return 1. Otherwise we return 0. */ int gpath_search (char *file, unsigned int len) { char **gp; if (gpaths && (len <= gpaths->maxlen)) for (gp = gpaths->searchpath; *gp != NULL; ++gp) if (strneq (*gp, file, len) && (*gp)[len] == '\0') return 1; return 0; } /* Search the VPATH list whose pattern matches *FILE for a directory where the name pointed to by FILE exists. If it is found, we set *FILE to the newly malloc'd name of the existing file, *MTIME_PTR (if MTIME_PTR is not NULL) to its modtime (or zero if no stat call was done), and return 1. Otherwise we return 0. */ int vpath_search (char **file, FILE_TIMESTAMP *mtime_ptr) { register struct vpath *v; /* If there are no VPATH entries or FILENAME starts at the root, there is nothing we can do. */ if (**file == '/' #ifdef HAVE_DOS_PATHS || **file == '\\' || (*file)[1] == ':' #endif || (vpaths == 0 && general_vpath == 0)) return 0; for (v = vpaths; v != 0; v = v->next) if (pattern_matches (v->pattern, v->percent, *file)) if (selective_vpath_search (v, file, mtime_ptr)) return 1; if (general_vpath != 0 && selective_vpath_search (general_vpath, file, mtime_ptr)) return 1; return 0; } /* Search the given VPATH list for a directory where the name pointed to by FILE exists. If it is found, we set *FILE to the newly malloc'd name of the existing file, *MTIME_PTR (if MTIME_PTR is not NULL) to its modtime (or zero if no stat call was done), and we return 1. Otherwise we return 0. */ static int selective_vpath_search (struct vpath *path, char **file, FILE_TIMESTAMP *mtime_ptr) { int not_target; char *name, *n; char *filename; register char **vpath = path->searchpath; unsigned int maxvpath = path->maxlen; register unsigned int i; unsigned int flen, vlen, name_dplen; int exists = 0; /* Find out if *FILE is a target. If and only if it is NOT a target, we will accept prospective files that don't exist but are mentioned in a makefile. */ { struct file *f = lookup_file (*file); not_target = f == 0 || !f->is_target; } flen = strlen (*file); /* Split *FILE into a directory prefix and a name-within-directory. NAME_DPLEN gets the length of the prefix; FILENAME gets the pointer to the name-within-directory and FLEN is its length. */ n = strrchr (*file, '/'); #ifdef HAVE_DOS_PATHS /* We need the rightmost slash or backslash. */ { char *bslash = strrchr(*file, '\\'); if (!n || bslash > n) n = bslash; } #endif name_dplen = n != 0 ? n - *file : 0; filename = name_dplen > 0 ? n + 1 : *file; if (name_dplen > 0) flen -= name_dplen + 1; /* Allocate enough space for the biggest VPATH entry, a slash, the directory prefix that came with *FILE, another slash (although this one may not always be necessary), the filename, and a null terminator. */ name = (char *) xmalloc (maxvpath + 1 + name_dplen + 1 + flen + 1); /* Try each VPATH entry. */ for (i = 0; vpath[i] != 0; ++i) { int exists_in_cache = 0; n = name; /* Put the next VPATH entry into NAME at N and increment N past it. */ vlen = strlen (vpath[i]); bcopy (vpath[i], n, vlen); n += vlen; /* Add the directory prefix already in *FILE. */ if (name_dplen > 0) { #ifndef VMS *n++ = '/'; #endif bcopy (*file, n, name_dplen); n += name_dplen; } #ifdef HAVE_DOS_PATHS /* Cause the next if to treat backslash and slash alike. */ if (n != name && n[-1] == '\\' ) n[-1] = '/'; #endif /* Now add the name-within-directory at the end of NAME. */ #ifndef VMS if (n != name && n[-1] != '/') { *n = '/'; bcopy (filename, n + 1, flen + 1); } else #endif bcopy (filename, n, flen + 1); /* Check if the file is mentioned in a makefile. If *FILE is not a target, that is enough for us to decide this file exists. If *FILE is a target, then the file must be mentioned in the makefile also as a target to be chosen. The restriction that *FILE must not be a target for a makefile-mentioned file to be chosen was added by an inadequately commented change in July 1990; I am not sure off hand what problem it fixes. In December 1993 I loosened this restriction to allow a file to be chosen if it is mentioned as a target in a makefile. This seem logical. Special handling for -W / -o: make sure we preserve the special values here. Actually this whole thing is a little bogus: I think we should ditch the name/hname thing and look into the renamed capability that already exists for files: that is, have a new struct file* entry for the VPATH-found file, and set the renamed field if we use it. */ { struct file *f = lookup_file (name); if (f != 0) { exists = not_target || f->is_target; if (exists && mtime_ptr && (f->last_mtime == OLD_MTIME || f->last_mtime == NEW_MTIME)) { *mtime_ptr = f->last_mtime; mtime_ptr = 0; } } } if (!exists) { /* That file wasn't mentioned in the makefile. See if it actually exists. */ #ifdef VMS exists_in_cache = exists = dir_file_exists_p (vpath[i], filename); #else /* Clobber a null into the name at the last slash. Now NAME is the name of the directory to look in. */ *n = '\0'; /* We know the directory is in the hash table now because either construct_vpath_list or the code just above put it there. Does the file we seek exist in it? */ exists_in_cache = exists = dir_file_exists_p (name, filename); #endif } if (exists) { /* The file is in the directory cache. Now check that it actually exists in the filesystem. The cache may be out of date. When vpath thinks a file exists, but stat fails for it, confusion results in the higher levels. */ struct stat st; #ifndef VMS /* Put the slash back in NAME. */ *n = '/'; #endif if (exists_in_cache) /* Makefile-mentioned file need not exist. */ { int e; EINTRLOOP (e, stat (name, &st)); /* Does it really exist? */ if (e != 0) { exists = 0; continue; } /* Store the modtime into *MTIME_PTR for the caller. */ if (mtime_ptr != 0) { *mtime_ptr = FILE_TIMESTAMP_STAT_MODTIME (name, st); mtime_ptr = 0; } } /* We have found a file. Store the name we found into *FILE for the caller. */ *file = savestring (name, (n + 1 - name) + flen); /* If we get here and mtime_ptr hasn't been set, record UNKNOWN_MTIME to indicate this. */ if (mtime_ptr != 0) *mtime_ptr = UNKNOWN_MTIME; free (name); return 1; } } free (name); return 0; } /* Print the data base of VPATH search paths. */ void print_vpath_data_base (void) { register unsigned int nvpaths; register struct vpath *v; puts (_("\n# VPATH Search Paths\n")); nvpaths = 0; for (v = vpaths; v != 0; v = v->next) { register unsigned int i; ++nvpaths; printf ("vpath %s ", v->pattern); for (i = 0; v->searchpath[i] != 0; ++i) printf ("%s%c", v->searchpath[i], v->searchpath[i + 1] == 0 ? '\n' : PATH_SEPARATOR_CHAR); } if (vpaths == 0) puts (_("# No `vpath' search paths.")); else printf (_("\n# %u `vpath' search paths.\n"), nvpaths); if (general_vpath == 0) puts (_("\n# No general (`VPATH' variable) search path.")); else { register char **path = general_vpath->searchpath; register unsigned int i; fputs (_("\n# General (`VPATH' variable) search path:\n# "), stdout); for (i = 0; path[i] != 0; ++i) printf ("%s%c", path[i], path[i + 1] == 0 ? '\n' : PATH_SEPARATOR_CHAR); } } make-dfsg-3.81.orig/w32/0000755000175000017500000000000010416553102015124 5ustar srivastasrivastamake-dfsg-3.81.orig/w32/.deps/0000755000175000017500000000000010416553102016135 5ustar srivastasrivastamake-dfsg-3.81.orig/w32/.deps/libw32_a-misc.Po0000644000175000017500000000001010416553102020757 0ustar srivastasrivasta# dummy make-dfsg-3.81.orig/w32/.deps/libw32_a-pathstuff.Po0000644000175000017500000000001010416553102022030 0ustar srivastasrivasta# dummy make-dfsg-3.81.orig/w32/.deps/libw32_a-sub_proc.Po0000644000175000017500000000001010416553102021640 0ustar srivastasrivasta# dummy make-dfsg-3.81.orig/w32/.deps/libw32_a-w32err.Po0000644000175000017500000000001010416553102021150 0ustar srivastasrivasta# dummy make-dfsg-3.81.orig/w32/Makefile0000644000175000017500000004646310416553102016601 0ustar srivastasrivasta# Makefile.in generated by automake 1.9.6 from Makefile.am. # w32/Makefile. Generated from Makefile.in by configure. # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. # Makefile.am to create libw32.a for mingw32 host. # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. srcdir = . top_srcdir = .. pkgdatadir = $(datadir)/make pkglibdir = $(libdir)/make pkgincludedir = $(includedir)/make top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = /usr/bin/install -c install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = i686-pc-linux-gnu host_triplet = i686-pc-linux-gnu subdir = w32 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ $(top_srcdir)/config/gettext.m4 $(top_srcdir)/config/iconv.m4 \ $(top_srcdir)/config/lib-ld.m4 \ $(top_srcdir)/config/lib-link.m4 \ $(top_srcdir)/config/lib-prefix.m4 $(top_srcdir)/config/nls.m4 \ $(top_srcdir)/config/po.m4 $(top_srcdir)/config/progtest.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = LIBRARIES = $(noinst_LIBRARIES) ARFLAGS = cru libw32_a_AR = $(AR) $(ARFLAGS) libw32_a_LIBADD = am_libw32_a_OBJECTS = libw32_a-misc.$(OBJEXT) \ libw32_a-sub_proc.$(OBJEXT) libw32_a-w32err.$(OBJEXT) \ libw32_a-pathstuff.$(OBJEXT) libw32_a_OBJECTS = $(am_libw32_a_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libw32_a_SOURCES) DIST_SOURCES = $(libw32_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = ${SHELL} /opt/src/make/make-release/config/missing --run aclocal-1.9 ALLOCA = AMDEP_FALSE = # AMDEP_TRUE = AMTAR = ${SHELL} /opt/src/make/make-release/config/missing --run tar AR = ar AUTOCONF = ${SHELL} /opt/src/make/make-release/config/missing --run autoconf AUTOHEADER = ${SHELL} /opt/src/make/make-release/config/missing --run autoheader AUTOMAKE = ${SHELL} /opt/src/make/make-release/config/missing --run automake-1.9 AWK = gawk CC = gcc CCDEPMODE = depmode=gcc3 CFLAGS = -g -O2 CPP = gcc -E CPPFLAGS = CYGPATH_W = echo DEFS = -DHAVE_CONFIG_H DEPDIR = .deps ECHO_C = ECHO_N = -n ECHO_T = EGREP = grep -E EXEEXT = GETLOADAVG_LIBS = GLOBINC = GLOBLIB = GMSGFMT = /usr/bin/msgfmt INSTALL_DATA = ${INSTALL} -m 644 INSTALL_PROGRAM = ${INSTALL} INSTALL_SCRIPT = ${INSTALL} INSTALL_STRIP_PROGRAM = ${SHELL} $(install_sh) -c -s INTLLIBS = KMEM_GROUP = LDFLAGS = LIBICONV = -liconv LIBINTL = LIBOBJS = LIBS = -lrt LTLIBICONV = -liconv LTLIBINTL = LTLIBOBJS = MAKEINFO = ${SHELL} /opt/src/make/make-release/config/missing --run makeinfo MAKE_HOST = i686-pc-linux-gnu MKINSTALLDIRS = $(top_builddir)/config/mkinstalldirs MSGFMT = /usr/bin/msgfmt MSGMERGE = /usr/bin/msgmerge NEED_SETGID = false OBJEXT = o PACKAGE = make PACKAGE_BUGREPORT = bug-make@gnu.org PACKAGE_NAME = GNU make PACKAGE_STRING = GNU make 3.81 PACKAGE_TARNAME = make PACKAGE_VERSION = 3.81 PATH_SEPARATOR = : PERL = perl POSUB = po RANLIB = ranlib REMOTE = stub SET_MAKE = SHELL = /bin/sh STRIP = U = USE_CUSTOMS_FALSE = USE_CUSTOMS_TRUE = # USE_LOCAL_GLOB_FALSE = USE_LOCAL_GLOB_TRUE = # USE_NLS = yes VERSION = 3.81 WINDOWSENV_FALSE = WINDOWSENV_TRUE = # XGETTEXT = /usr/bin/xgettext ac_ct_CC = gcc ac_ct_RANLIB = ranlib ac_ct_STRIP = am__fastdepCC_FALSE = # am__fastdepCC_TRUE = am__include = include am__leading_dot = . am__quote = am__tar = ${AMTAR} chof - "$$tardir" am__untar = ${AMTAR} xf - bindir = ${exec_prefix}/bin build = i686-pc-linux-gnu build_alias = build_cpu = i686 build_os = linux-gnu build_vendor = pc datadir = ${prefix}/share exec_prefix = ${prefix} host = i686-pc-linux-gnu host_alias = host_cpu = i686 host_os = linux-gnu host_vendor = pc includedir = ${prefix}/include infodir = ${prefix}/info install_sh = /opt/src/make/make-release/config/install-sh libdir = ${exec_prefix}/lib libexecdir = ${exec_prefix}/libexec localstatedir = ${prefix}/var mandir = ${prefix}/man mkdir_p = mkdir -p -- oldincludedir = /usr/include prefix = /usr/local program_transform_name = s,x,x, sbindir = ${exec_prefix}/sbin sharedstatedir = ${prefix}/com sysconfdir = ${prefix}/etc target_alias = noinst_LIBRARIES = libw32.a libw32_a_SOURCES = subproc/misc.c subproc/sub_proc.c subproc/w32err.c \ pathstuff.c libw32_a_CPPFLAGS = -I$(srcdir)/include -I$(srcdir)/subproc -I$(top_srcdir) all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu w32/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu w32/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libw32.a: $(libw32_a_OBJECTS) $(libw32_a_DEPENDENCIES) -rm -f libw32.a $(libw32_a_AR) libw32.a $(libw32_a_OBJECTS) $(libw32_a_LIBADD) $(RANLIB) libw32.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c include ./$(DEPDIR)/libw32_a-misc.Po include ./$(DEPDIR)/libw32_a-pathstuff.Po include ./$(DEPDIR)/libw32_a-sub_proc.Po include ./$(DEPDIR)/libw32_a-w32err.Po .c.o: if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi # source='$<' object='$@' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(COMPILE) -c $< .c.obj: if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi # source='$<' object='$@' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(COMPILE) -c `$(CYGPATH_W) '$<'` libw32_a-misc.o: subproc/misc.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-misc.o -MD -MP -MF "$(DEPDIR)/libw32_a-misc.Tpo" -c -o libw32_a-misc.o `test -f 'subproc/misc.c' || echo '$(srcdir)/'`subproc/misc.c; \ then mv -f "$(DEPDIR)/libw32_a-misc.Tpo" "$(DEPDIR)/libw32_a-misc.Po"; else rm -f "$(DEPDIR)/libw32_a-misc.Tpo"; exit 1; fi # source='subproc/misc.c' object='libw32_a-misc.o' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-misc.o `test -f 'subproc/misc.c' || echo '$(srcdir)/'`subproc/misc.c libw32_a-misc.obj: subproc/misc.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-misc.obj -MD -MP -MF "$(DEPDIR)/libw32_a-misc.Tpo" -c -o libw32_a-misc.obj `if test -f 'subproc/misc.c'; then $(CYGPATH_W) 'subproc/misc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/misc.c'; fi`; \ then mv -f "$(DEPDIR)/libw32_a-misc.Tpo" "$(DEPDIR)/libw32_a-misc.Po"; else rm -f "$(DEPDIR)/libw32_a-misc.Tpo"; exit 1; fi # source='subproc/misc.c' object='libw32_a-misc.obj' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-misc.obj `if test -f 'subproc/misc.c'; then $(CYGPATH_W) 'subproc/misc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/misc.c'; fi` libw32_a-sub_proc.o: subproc/sub_proc.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-sub_proc.o -MD -MP -MF "$(DEPDIR)/libw32_a-sub_proc.Tpo" -c -o libw32_a-sub_proc.o `test -f 'subproc/sub_proc.c' || echo '$(srcdir)/'`subproc/sub_proc.c; \ then mv -f "$(DEPDIR)/libw32_a-sub_proc.Tpo" "$(DEPDIR)/libw32_a-sub_proc.Po"; else rm -f "$(DEPDIR)/libw32_a-sub_proc.Tpo"; exit 1; fi # source='subproc/sub_proc.c' object='libw32_a-sub_proc.o' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-sub_proc.o `test -f 'subproc/sub_proc.c' || echo '$(srcdir)/'`subproc/sub_proc.c libw32_a-sub_proc.obj: subproc/sub_proc.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-sub_proc.obj -MD -MP -MF "$(DEPDIR)/libw32_a-sub_proc.Tpo" -c -o libw32_a-sub_proc.obj `if test -f 'subproc/sub_proc.c'; then $(CYGPATH_W) 'subproc/sub_proc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/sub_proc.c'; fi`; \ then mv -f "$(DEPDIR)/libw32_a-sub_proc.Tpo" "$(DEPDIR)/libw32_a-sub_proc.Po"; else rm -f "$(DEPDIR)/libw32_a-sub_proc.Tpo"; exit 1; fi # source='subproc/sub_proc.c' object='libw32_a-sub_proc.obj' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-sub_proc.obj `if test -f 'subproc/sub_proc.c'; then $(CYGPATH_W) 'subproc/sub_proc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/sub_proc.c'; fi` libw32_a-w32err.o: subproc/w32err.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-w32err.o -MD -MP -MF "$(DEPDIR)/libw32_a-w32err.Tpo" -c -o libw32_a-w32err.o `test -f 'subproc/w32err.c' || echo '$(srcdir)/'`subproc/w32err.c; \ then mv -f "$(DEPDIR)/libw32_a-w32err.Tpo" "$(DEPDIR)/libw32_a-w32err.Po"; else rm -f "$(DEPDIR)/libw32_a-w32err.Tpo"; exit 1; fi # source='subproc/w32err.c' object='libw32_a-w32err.o' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-w32err.o `test -f 'subproc/w32err.c' || echo '$(srcdir)/'`subproc/w32err.c libw32_a-w32err.obj: subproc/w32err.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-w32err.obj -MD -MP -MF "$(DEPDIR)/libw32_a-w32err.Tpo" -c -o libw32_a-w32err.obj `if test -f 'subproc/w32err.c'; then $(CYGPATH_W) 'subproc/w32err.c'; else $(CYGPATH_W) '$(srcdir)/subproc/w32err.c'; fi`; \ then mv -f "$(DEPDIR)/libw32_a-w32err.Tpo" "$(DEPDIR)/libw32_a-w32err.Po"; else rm -f "$(DEPDIR)/libw32_a-w32err.Tpo"; exit 1; fi # source='subproc/w32err.c' object='libw32_a-w32err.obj' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-w32err.obj `if test -f 'subproc/w32err.c'; then $(CYGPATH_W) 'subproc/w32err.c'; else $(CYGPATH_W) '$(srcdir)/subproc/w32err.c'; fi` libw32_a-pathstuff.o: pathstuff.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-pathstuff.o -MD -MP -MF "$(DEPDIR)/libw32_a-pathstuff.Tpo" -c -o libw32_a-pathstuff.o `test -f 'pathstuff.c' || echo '$(srcdir)/'`pathstuff.c; \ then mv -f "$(DEPDIR)/libw32_a-pathstuff.Tpo" "$(DEPDIR)/libw32_a-pathstuff.Po"; else rm -f "$(DEPDIR)/libw32_a-pathstuff.Tpo"; exit 1; fi # source='pathstuff.c' object='libw32_a-pathstuff.o' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-pathstuff.o `test -f 'pathstuff.c' || echo '$(srcdir)/'`pathstuff.c libw32_a-pathstuff.obj: pathstuff.c if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-pathstuff.obj -MD -MP -MF "$(DEPDIR)/libw32_a-pathstuff.Tpo" -c -o libw32_a-pathstuff.obj `if test -f 'pathstuff.c'; then $(CYGPATH_W) 'pathstuff.c'; else $(CYGPATH_W) '$(srcdir)/pathstuff.c'; fi`; \ then mv -f "$(DEPDIR)/libw32_a-pathstuff.Tpo" "$(DEPDIR)/libw32_a-pathstuff.Po"; else rm -f "$(DEPDIR)/libw32_a-pathstuff.Tpo"; exit 1; fi # source='pathstuff.c' object='libw32_a-pathstuff.obj' libtool=no \ # DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) \ # $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-pathstuff.obj `if test -f 'pathstuff.c'; then $(CYGPATH_W) 'pathstuff.c'; else $(CYGPATH_W) '$(srcdir)/pathstuff.c'; fi` uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-exec install-exec-am install-info \ install-info-am install-man install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/w32/Makefile.am0000644000175000017500000000207410416553102017163 0ustar srivastasrivasta# Makefile.am to create libw32.a for mingw32 host. # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. noinst_LIBRARIES = libw32.a libw32_a_SOURCES = subproc/misc.c subproc/sub_proc.c subproc/w32err.c \ pathstuff.c libw32_a_CPPFLAGS = -I$(srcdir)/include -I$(srcdir)/subproc -I$(top_srcdir) make-dfsg-3.81.orig/w32/Makefile.in0000644000175000017500000005206510416553102017201 0ustar srivastasrivasta# Makefile.in generated by automake 1.9.6 from Makefile.am. # @configure_input@ # Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, # 2003, 2004, 2005 Free Software Foundation, Inc. # This Makefile.in is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, # with or without modifications, as long as this notice is preserved. # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY, to the extent permitted by law; without # even the implied warranty of MERCHANTABILITY or FITNESS FOR A # PARTICULAR PURPOSE. @SET_MAKE@ # Makefile.am to create libw32.a for mingw32 host. # Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 # Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. srcdir = @srcdir@ top_srcdir = @top_srcdir@ VPATH = @srcdir@ pkgdatadir = $(datadir)/@PACKAGE@ pkglibdir = $(libdir)/@PACKAGE@ pkgincludedir = $(includedir)/@PACKAGE@ top_builddir = .. am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd INSTALL = @INSTALL@ install_sh_DATA = $(install_sh) -c -m 644 install_sh_PROGRAM = $(install_sh) -c install_sh_SCRIPT = $(install_sh) -c INSTALL_HEADER = $(INSTALL_DATA) transform = $(program_transform_name) NORMAL_INSTALL = : PRE_INSTALL = : POST_INSTALL = : NORMAL_UNINSTALL = : PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ subdir = w32 DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 am__aclocal_m4_deps = $(top_srcdir)/config/dospaths.m4 \ $(top_srcdir)/config/gettext.m4 $(top_srcdir)/config/iconv.m4 \ $(top_srcdir)/config/lib-ld.m4 \ $(top_srcdir)/config/lib-link.m4 \ $(top_srcdir)/config/lib-prefix.m4 $(top_srcdir)/config/nls.m4 \ $(top_srcdir)/config/po.m4 $(top_srcdir)/config/progtest.m4 \ $(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.in am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ $(ACLOCAL_M4) mkinstalldirs = $(SHELL) $(top_srcdir)/config/mkinstalldirs CONFIG_HEADER = $(top_builddir)/config.h CONFIG_CLEAN_FILES = LIBRARIES = $(noinst_LIBRARIES) ARFLAGS = cru libw32_a_AR = $(AR) $(ARFLAGS) libw32_a_LIBADD = am_libw32_a_OBJECTS = libw32_a-misc.$(OBJEXT) \ libw32_a-sub_proc.$(OBJEXT) libw32_a-w32err.$(OBJEXT) \ libw32_a-pathstuff.$(OBJEXT) libw32_a_OBJECTS = $(am_libw32_a_OBJECTS) DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir) depcomp = $(SHELL) $(top_srcdir)/config/depcomp am__depfiles_maybe = depfiles COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ SOURCES = $(libw32_a_SOURCES) DIST_SOURCES = $(libw32_a_SOURCES) ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ALLOCA = @ALLOCA@ AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_TRUE = @AMDEP_TRUE@ AMTAR = @AMTAR@ AR = @AR@ AUTOCONF = @AUTOCONF@ AUTOHEADER = @AUTOHEADER@ AUTOMAKE = @AUTOMAKE@ AWK = @AWK@ CC = @CC@ CCDEPMODE = @CCDEPMODE@ CFLAGS = @CFLAGS@ CPP = @CPP@ CPPFLAGS = @CPPFLAGS@ CYGPATH_W = @CYGPATH_W@ DEFS = @DEFS@ DEPDIR = @DEPDIR@ ECHO_C = @ECHO_C@ ECHO_N = @ECHO_N@ ECHO_T = @ECHO_T@ EGREP = @EGREP@ EXEEXT = @EXEEXT@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ GLOBINC = @GLOBINC@ GLOBLIB = @GLOBLIB@ GMSGFMT = @GMSGFMT@ INSTALL_DATA = @INSTALL_DATA@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ INTLLIBS = @INTLLIBS@ KMEM_GROUP = @KMEM_GROUP@ LDFLAGS = @LDFLAGS@ LIBICONV = @LIBICONV@ LIBINTL = @LIBINTL@ LIBOBJS = @LIBOBJS@ LIBS = @LIBS@ LTLIBICONV = @LTLIBICONV@ LTLIBINTL = @LTLIBINTL@ LTLIBOBJS = @LTLIBOBJS@ MAKEINFO = @MAKEINFO@ MAKE_HOST = @MAKE_HOST@ MKINSTALLDIRS = @MKINSTALLDIRS@ MSGFMT = @MSGFMT@ MSGMERGE = @MSGMERGE@ NEED_SETGID = @NEED_SETGID@ OBJEXT = @OBJEXT@ PACKAGE = @PACKAGE@ PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ PACKAGE_NAME = @PACKAGE_NAME@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ PERL = @PERL@ POSUB = @POSUB@ RANLIB = @RANLIB@ REMOTE = @REMOTE@ SET_MAKE = @SET_MAKE@ SHELL = @SHELL@ STRIP = @STRIP@ U = @U@ USE_CUSTOMS_FALSE = @USE_CUSTOMS_FALSE@ USE_CUSTOMS_TRUE = @USE_CUSTOMS_TRUE@ USE_LOCAL_GLOB_FALSE = @USE_LOCAL_GLOB_FALSE@ USE_LOCAL_GLOB_TRUE = @USE_LOCAL_GLOB_TRUE@ USE_NLS = @USE_NLS@ VERSION = @VERSION@ WINDOWSENV_FALSE = @WINDOWSENV_FALSE@ WINDOWSENV_TRUE = @WINDOWSENV_TRUE@ XGETTEXT = @XGETTEXT@ ac_ct_CC = @ac_ct_CC@ ac_ct_RANLIB = @ac_ct_RANLIB@ ac_ct_STRIP = @ac_ct_STRIP@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__include = @am__include@ am__leading_dot = @am__leading_dot@ am__quote = @am__quote@ am__tar = @am__tar@ am__untar = @am__untar@ bindir = @bindir@ build = @build@ build_alias = @build_alias@ build_cpu = @build_cpu@ build_os = @build_os@ build_vendor = @build_vendor@ datadir = @datadir@ exec_prefix = @exec_prefix@ host = @host@ host_alias = @host_alias@ host_cpu = @host_cpu@ host_os = @host_os@ host_vendor = @host_vendor@ includedir = @includedir@ infodir = @infodir@ install_sh = @install_sh@ libdir = @libdir@ libexecdir = @libexecdir@ localstatedir = @localstatedir@ mandir = @mandir@ mkdir_p = @mkdir_p@ oldincludedir = @oldincludedir@ prefix = @prefix@ program_transform_name = @program_transform_name@ sbindir = @sbindir@ sharedstatedir = @sharedstatedir@ sysconfdir = @sysconfdir@ target_alias = @target_alias@ noinst_LIBRARIES = libw32.a libw32_a_SOURCES = subproc/misc.c subproc/sub_proc.c subproc/w32err.c \ pathstuff.c libw32_a_CPPFLAGS = -I$(srcdir)/include -I$(srcdir)/subproc -I$(top_srcdir) all: all-am .SUFFIXES: .SUFFIXES: .c .o .obj $(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ && exit 0; \ exit 1;; \ esac; \ done; \ echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu w32/Makefile'; \ cd $(top_srcdir) && \ $(AUTOMAKE) --gnu w32/Makefile .PRECIOUS: Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ *) \ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ esac; $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(top_srcdir)/configure: $(am__configure_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh $(ACLOCAL_M4): $(am__aclocal_m4_deps) cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh clean-noinstLIBRARIES: -test -z "$(noinst_LIBRARIES)" || rm -f $(noinst_LIBRARIES) libw32.a: $(libw32_a_OBJECTS) $(libw32_a_DEPENDENCIES) -rm -f libw32.a $(libw32_a_AR) libw32.a $(libw32_a_OBJECTS) $(libw32_a_LIBADD) $(RANLIB) libw32.a mostlyclean-compile: -rm -f *.$(OBJEXT) distclean-compile: -rm -f *.tab.c @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw32_a-misc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw32_a-pathstuff.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw32_a-sub_proc.Po@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libw32_a-w32err.Po@am__quote@ .c.o: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: @am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` libw32_a-misc.o: subproc/misc.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-misc.o -MD -MP -MF "$(DEPDIR)/libw32_a-misc.Tpo" -c -o libw32_a-misc.o `test -f 'subproc/misc.c' || echo '$(srcdir)/'`subproc/misc.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-misc.Tpo" "$(DEPDIR)/libw32_a-misc.Po"; else rm -f "$(DEPDIR)/libw32_a-misc.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/misc.c' object='libw32_a-misc.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-misc.o `test -f 'subproc/misc.c' || echo '$(srcdir)/'`subproc/misc.c libw32_a-misc.obj: subproc/misc.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-misc.obj -MD -MP -MF "$(DEPDIR)/libw32_a-misc.Tpo" -c -o libw32_a-misc.obj `if test -f 'subproc/misc.c'; then $(CYGPATH_W) 'subproc/misc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/misc.c'; fi`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-misc.Tpo" "$(DEPDIR)/libw32_a-misc.Po"; else rm -f "$(DEPDIR)/libw32_a-misc.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/misc.c' object='libw32_a-misc.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-misc.obj `if test -f 'subproc/misc.c'; then $(CYGPATH_W) 'subproc/misc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/misc.c'; fi` libw32_a-sub_proc.o: subproc/sub_proc.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-sub_proc.o -MD -MP -MF "$(DEPDIR)/libw32_a-sub_proc.Tpo" -c -o libw32_a-sub_proc.o `test -f 'subproc/sub_proc.c' || echo '$(srcdir)/'`subproc/sub_proc.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-sub_proc.Tpo" "$(DEPDIR)/libw32_a-sub_proc.Po"; else rm -f "$(DEPDIR)/libw32_a-sub_proc.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/sub_proc.c' object='libw32_a-sub_proc.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-sub_proc.o `test -f 'subproc/sub_proc.c' || echo '$(srcdir)/'`subproc/sub_proc.c libw32_a-sub_proc.obj: subproc/sub_proc.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-sub_proc.obj -MD -MP -MF "$(DEPDIR)/libw32_a-sub_proc.Tpo" -c -o libw32_a-sub_proc.obj `if test -f 'subproc/sub_proc.c'; then $(CYGPATH_W) 'subproc/sub_proc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/sub_proc.c'; fi`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-sub_proc.Tpo" "$(DEPDIR)/libw32_a-sub_proc.Po"; else rm -f "$(DEPDIR)/libw32_a-sub_proc.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/sub_proc.c' object='libw32_a-sub_proc.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-sub_proc.obj `if test -f 'subproc/sub_proc.c'; then $(CYGPATH_W) 'subproc/sub_proc.c'; else $(CYGPATH_W) '$(srcdir)/subproc/sub_proc.c'; fi` libw32_a-w32err.o: subproc/w32err.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-w32err.o -MD -MP -MF "$(DEPDIR)/libw32_a-w32err.Tpo" -c -o libw32_a-w32err.o `test -f 'subproc/w32err.c' || echo '$(srcdir)/'`subproc/w32err.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-w32err.Tpo" "$(DEPDIR)/libw32_a-w32err.Po"; else rm -f "$(DEPDIR)/libw32_a-w32err.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/w32err.c' object='libw32_a-w32err.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-w32err.o `test -f 'subproc/w32err.c' || echo '$(srcdir)/'`subproc/w32err.c libw32_a-w32err.obj: subproc/w32err.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-w32err.obj -MD -MP -MF "$(DEPDIR)/libw32_a-w32err.Tpo" -c -o libw32_a-w32err.obj `if test -f 'subproc/w32err.c'; then $(CYGPATH_W) 'subproc/w32err.c'; else $(CYGPATH_W) '$(srcdir)/subproc/w32err.c'; fi`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-w32err.Tpo" "$(DEPDIR)/libw32_a-w32err.Po"; else rm -f "$(DEPDIR)/libw32_a-w32err.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='subproc/w32err.c' object='libw32_a-w32err.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-w32err.obj `if test -f 'subproc/w32err.c'; then $(CYGPATH_W) 'subproc/w32err.c'; else $(CYGPATH_W) '$(srcdir)/subproc/w32err.c'; fi` libw32_a-pathstuff.o: pathstuff.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-pathstuff.o -MD -MP -MF "$(DEPDIR)/libw32_a-pathstuff.Tpo" -c -o libw32_a-pathstuff.o `test -f 'pathstuff.c' || echo '$(srcdir)/'`pathstuff.c; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-pathstuff.Tpo" "$(DEPDIR)/libw32_a-pathstuff.Po"; else rm -f "$(DEPDIR)/libw32_a-pathstuff.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='pathstuff.c' object='libw32_a-pathstuff.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-pathstuff.o `test -f 'pathstuff.c' || echo '$(srcdir)/'`pathstuff.c libw32_a-pathstuff.obj: pathstuff.c @am__fastdepCC_TRUE@ if $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -MT libw32_a-pathstuff.obj -MD -MP -MF "$(DEPDIR)/libw32_a-pathstuff.Tpo" -c -o libw32_a-pathstuff.obj `if test -f 'pathstuff.c'; then $(CYGPATH_W) 'pathstuff.c'; else $(CYGPATH_W) '$(srcdir)/pathstuff.c'; fi`; \ @am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libw32_a-pathstuff.Tpo" "$(DEPDIR)/libw32_a-pathstuff.Po"; else rm -f "$(DEPDIR)/libw32_a-pathstuff.Tpo"; exit 1; fi @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='pathstuff.c' object='libw32_a-pathstuff.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libw32_a_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c -o libw32_a-pathstuff.obj `if test -f 'pathstuff.c'; then $(CYGPATH_W) 'pathstuff.c'; else $(CYGPATH_W) '$(srcdir)/pathstuff.c'; fi` uninstall-info-am: ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ mkid -fID $$unique tags: TAGS TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ test -n "$$unique" || unique=$$empty_fix; \ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ $$tags $$unique; \ fi ctags: CTAGS CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \ $(TAGS_FILES) $(LISP) tags=; \ here=`pwd`; \ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ unique=`for i in $$list; do \ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ done | \ $(AWK) ' { files[$$0] = 1; } \ END { for (i in files) print i; }'`; \ test -z "$(CTAGS_ARGS)$$tags$$unique" \ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ $$tags $$unique GTAGS: here=`$(am__cd) $(top_builddir) && pwd` \ && cd $(top_srcdir) \ && gtags -i $(GTAGS_ARGS) $$here distclean-tags: -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ list='$(DISTFILES)'; for file in $$list; do \ case $$file in \ $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ esac; \ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ if test "$$dir" != "$$file" && test "$$dir" != "."; then \ dir="/$$dir"; \ $(mkdir_p) "$(distdir)$$dir"; \ else \ dir=''; \ fi; \ if test -d $$d/$$file; then \ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ fi; \ cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ else \ test -f $(distdir)/$$file \ || cp -p $$d/$$file $(distdir)/$$file \ || exit 1; \ fi; \ done check-am: all-am check: check-am all-am: Makefile $(LIBRARIES) installdirs: install: install-am install-exec: install-exec-am install-data: install-data-am uninstall: uninstall-am install-am: all-am @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am installcheck: installcheck-am install-strip: $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ `test -z '$(STRIP)' || \ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install mostlyclean-generic: clean-generic: distclean-generic: -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." clean: clean-am clean-am: clean-generic clean-noinstLIBRARIES mostlyclean-am distclean: distclean-am -rm -rf ./$(DEPDIR) -rm -f Makefile distclean-am: clean-am distclean-compile distclean-generic \ distclean-tags dvi: dvi-am dvi-am: html: html-am info: info-am info-am: install-data-am: install-exec-am: install-info: install-info-am install-man: installcheck-am: maintainer-clean: maintainer-clean-am -rm -rf ./$(DEPDIR) -rm -f Makefile maintainer-clean-am: distclean-am maintainer-clean-generic mostlyclean: mostlyclean-am mostlyclean-am: mostlyclean-compile mostlyclean-generic pdf: pdf-am pdf-am: ps: ps-am ps-am: uninstall-am: uninstall-info-am .PHONY: CTAGS GTAGS all all-am check check-am clean clean-generic \ clean-noinstLIBRARIES ctags distclean distclean-compile \ distclean-generic distclean-tags distdir dvi dvi-am html \ html-am info info-am install install-am install-data \ install-data-am install-exec install-exec-am install-info \ install-info-am install-man install-strip installcheck \ installcheck-am installdirs maintainer-clean \ maintainer-clean-generic mostlyclean mostlyclean-compile \ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \ uninstall-am uninstall-info-am # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. .NOEXPORT: make-dfsg-3.81.orig/w32/compat/0000755000175000017500000000000010416553102016407 5ustar srivastasrivastamake-dfsg-3.81.orig/w32/compat/dirent.c0000644000175000017500000001110610416553102020037 0ustar srivastasrivasta/* Directory entry code for Window platforms. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include #include #include #include #include "dirent.h" DIR* opendir(const char* pDirName) { struct stat sb; DIR* pDir; char* pEndDirName; int nBufferLen; /* sanity checks */ if (!pDirName) { errno = EINVAL; return NULL; } if (stat(pDirName, &sb) != 0) { errno = ENOENT; return NULL; } if ((sb.st_mode & S_IFMT) != S_IFDIR) { errno = ENOTDIR; return NULL; } /* allocate a DIR structure to return */ pDir = (DIR *) malloc(sizeof (DIR)); if (!pDir) return NULL; /* input directory name length */ nBufferLen = strlen(pDirName); /* copy input directory name to DIR buffer */ strcpy(pDir->dir_pDirectoryName, pDirName); /* point to end of the copied directory name */ pEndDirName = &pDir->dir_pDirectoryName[nBufferLen - 1]; /* if directory name did not end in '/' or '\', add '/' */ if ((*pEndDirName != '/') && (*pEndDirName != '\\')) { pEndDirName++; *pEndDirName = '/'; } /* now append the wildcard character to the buffer */ pEndDirName++; *pEndDirName = '*'; pEndDirName++; *pEndDirName = '\0'; /* other values defaulted */ pDir->dir_nNumFiles = 0; pDir->dir_hDirHandle = INVALID_HANDLE_VALUE; pDir->dir_ulCookie = __DIRENT_COOKIE; return pDir; } void closedir(DIR *pDir) { /* got a valid pointer? */ if (!pDir) { errno = EINVAL; return; } /* sanity check that this is a DIR pointer */ if (pDir->dir_ulCookie != __DIRENT_COOKIE) { errno = EINVAL; return; } /* close the WINDOWS32 directory handle */ if (pDir->dir_hDirHandle != INVALID_HANDLE_VALUE) FindClose(pDir->dir_hDirHandle); free(pDir); return; } struct dirent * readdir(DIR* pDir) { WIN32_FIND_DATA wfdFindData; if (!pDir) { errno = EINVAL; return NULL; } /* sanity check that this is a DIR pointer */ if (pDir->dir_ulCookie != __DIRENT_COOKIE) { errno = EINVAL; return NULL; } if (pDir->dir_nNumFiles == 0) { pDir->dir_hDirHandle = FindFirstFile(pDir->dir_pDirectoryName, &wfdFindData); if (pDir->dir_hDirHandle == INVALID_HANDLE_VALUE) return NULL; } else if (!FindNextFile(pDir->dir_hDirHandle, &wfdFindData)) return NULL; /* bump count for next call to readdir() or telldir() */ pDir->dir_nNumFiles++; /* fill in struct dirent values */ pDir->dir_sdReturn.d_ino = -1; strcpy(pDir->dir_sdReturn.d_name, wfdFindData.cFileName); return &pDir->dir_sdReturn; } void rewinddir(DIR* pDir) { if (!pDir) { errno = EINVAL; return; } /* sanity check that this is a DIR pointer */ if (pDir->dir_ulCookie != __DIRENT_COOKIE) { errno = EINVAL; return; } /* close the WINDOWS32 directory handle */ if (pDir->dir_hDirHandle != INVALID_HANDLE_VALUE) if (!FindClose(pDir->dir_hDirHandle)) errno = EBADF; /* reset members which control readdir() */ pDir->dir_hDirHandle = INVALID_HANDLE_VALUE; pDir->dir_nNumFiles = 0; return; } int telldir(DIR* pDir) { if (!pDir) { errno = EINVAL; return -1; } /* sanity check that this is a DIR pointer */ if (pDir->dir_ulCookie != __DIRENT_COOKIE) { errno = EINVAL; return -1; } /* return number of times readdir() called */ return pDir->dir_nNumFiles; } void seekdir(DIR* pDir, long nPosition) { if (!pDir) return; /* sanity check that this is a DIR pointer */ if (pDir->dir_ulCookie != __DIRENT_COOKIE) return; /* go back to beginning of directory */ rewinddir(pDir); /* loop until we have found position we care about */ for (--nPosition; nPosition && readdir(pDir); nPosition--); /* flag invalid nPosition value */ if (nPosition) errno = EINVAL; return; } make-dfsg-3.81.orig/w32/include/0000755000175000017500000000000010416553102016547 5ustar srivastasrivastamake-dfsg-3.81.orig/w32/include/dirent.h0000644000175000017500000000307010416553102020205 0ustar srivastasrivasta/* Windows version of dirent.h Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _DIRENT_H #define _DIRENT_H #ifdef __MINGW32__ # include # include_next #else #include #include #include #include #ifndef NAME_MAX #define NAME_MAX 255 #endif #define __DIRENT_COOKIE 0xfefeabab struct dirent { ino_t d_ino; /* unused - no equivalent on WINDOWS32 */ char d_name[NAME_MAX+1]; }; typedef struct dir_struct { ULONG dir_ulCookie; HANDLE dir_hDirHandle; DWORD dir_nNumFiles; char dir_pDirectoryName[NAME_MAX+1]; struct dirent dir_sdReturn; } DIR; DIR *opendir(const char *); struct dirent *readdir(DIR *); void rewinddir(DIR *); void closedir(DIR *); int telldir(DIR *); void seekdir(DIR *, long); #endif /* !__MINGW32__ */ #endif make-dfsg-3.81.orig/w32/include/pathstuff.h0000644000175000017500000000217110416553102020725 0ustar srivastasrivasta/* Definitions for Windows path manipulation. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _PATHSTUFF_H #define _PATHSTUFF_H extern char * convert_Path_to_windows32(char *Path, char to_delim); extern char * convert_vpath_to_windows32(char *Path, char to_delim); extern char * w32ify(char *file, int resolve); extern char * getcwd_fs(char *buf, int len); #endif make-dfsg-3.81.orig/w32/include/sub_proc.h0000644000175000017500000000456610416553102020547 0ustar srivastasrivasta/* Definitions for Windows process invocation. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef SUB_PROC_H #define SUB_PROC_H /* * Component Name: * * $Date: 2006/02/11 22:16:05 $ * * $Source: /sources/make/make/w32/include/sub_proc.h,v $ * * $Id: sub_proc.h,v 1.8 2006/02/11 22:16:05 psmith Exp $ */ #define EXTERN_DECL(entry, args) extern entry args #define VOID_DECL void EXTERN_DECL(HANDLE process_init, (VOID_DECL)); EXTERN_DECL(HANDLE process_init_fd, (HANDLE stdinh, HANDLE stdouth, HANDLE stderrh)); EXTERN_DECL(long process_begin, (HANDLE proc, char **argv, char **envp, char *exec_path, char *as_user)); EXTERN_DECL(long process_pipe_io, (HANDLE proc, char *stdin_data, int stdin_data_len)); EXTERN_DECL(long process_file_io, (HANDLE proc)); EXTERN_DECL(void process_cleanup, (HANDLE proc)); EXTERN_DECL(HANDLE process_wait_for_any, (VOID_DECL)); EXTERN_DECL(void process_register, (HANDLE proc)); EXTERN_DECL(HANDLE process_easy, (char** argv, char** env)); EXTERN_DECL(BOOL process_kill, (HANDLE proc, int signal)); EXTERN_DECL(int process_used_slots, (VOID_DECL)); /* support routines */ EXTERN_DECL(long process_errno, (HANDLE proc)); EXTERN_DECL(long process_last_err, (HANDLE proc)); EXTERN_DECL(long process_exit_code, (HANDLE proc)); EXTERN_DECL(long process_signal, (HANDLE proc)); EXTERN_DECL(char * process_outbuf, (HANDLE proc)); EXTERN_DECL(char * process_errbuf, (HANDLE proc)); EXTERN_DECL(int process_outcnt, (HANDLE proc)); EXTERN_DECL(int process_errcnt, (HANDLE proc)); EXTERN_DECL(void process_pipes, (HANDLE proc, int pipes[3])); #endif make-dfsg-3.81.orig/w32/include/w32err.h0000644000175000017500000000210310416553102020040 0ustar srivastasrivasta/* Definitions for Windows error handling. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _W32ERR_H_ #define _W32ERR_H_ #ifndef EXTERN_DECL #define EXTERN_DECL(entry, args) entry args #endif EXTERN_DECL(char * map_windows32_error_to_string, (DWORD error)); #endif /* !_W32ERR_H */ make-dfsg-3.81.orig/w32/pathstuff.c0000644000175000017500000001730610416553102017303 0ustar srivastasrivasta/* Path conversion for Windows pathnames. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include #include "make.h" #include "pathstuff.h" /* * Convert delimiter separated vpath to Canonical format. */ char * convert_vpath_to_windows32(char *Path, char to_delim) { char *etok; /* token separator for old Path */ /* * Convert all spaces to delimiters. Note that pathnames which * contain blanks get trounced here. Use 8.3 format as a workaround. */ for (etok = Path; etok && *etok; etok++) if (isblank ((unsigned char) *etok)) *etok = to_delim; return (convert_Path_to_windows32(Path, to_delim)); } /* * Convert delimiter separated path to Canonical format. */ char * convert_Path_to_windows32(char *Path, char to_delim) { char *etok; /* token separator for old Path */ char *p; /* points to element of old Path */ /* is this a multi-element Path ? */ for (p = Path, etok = strpbrk(p, ":;"); etok; etok = strpbrk(p, ":;")) if ((etok - p) == 1) { if (*(etok - 1) == ';' || *(etok - 1) == ':') { etok[-1] = to_delim; etok[0] = to_delim; p = ++etok; continue; /* ignore empty bucket */ } else if (!isalpha ((unsigned char) *p)) { /* found one to count, handle things like '.' */ *etok = to_delim; p = ++etok; } else if ((*etok == ':') && (etok = strpbrk(etok+1, ":;"))) { /* found one to count, handle drive letter */ *etok = to_delim; p = ++etok; } else /* all finished, force abort */ p += strlen(p); } else { /* found another one, no drive letter */ *etok = to_delim; p = ++etok; } return Path; } /* * Convert to forward slashes. Resolve to full pathname optionally */ char * w32ify(char *filename, int resolve) { static char w32_path[FILENAME_MAX]; char *p; if (resolve) _fullpath(w32_path, filename, sizeof (w32_path)); else strncpy(w32_path, filename, sizeof (w32_path)); for (p = w32_path; p && *p; p++) if (*p == '\\') *p = '/'; return w32_path; } char * getcwd_fs(char* buf, int len) { char *p = getcwd(buf, len); if (p) { char *q = w32ify(buf, 0); strncpy(buf, q, len); } return p; } #ifdef unused /* * Convert delimiter separated pathnames (e.g. PATH) or single file pathname * (e.g. c:/foo, c:\bar) to NutC format. If we are handed a string that * _NutPathToNutc() fails to convert, just return the path we were handed * and assume the caller will know what to do with it (It was probably * a mistake to try and convert it anyway due to some of the bizarre things * that might look like pathnames in makefiles). */ char * convert_path_to_nutc(char *path) { int count; /* count of path elements */ char *nutc_path; /* new NutC path */ int nutc_path_len; /* length of buffer to allocate for new path */ char *pathp; /* pointer to nutc_path used to build it */ char *etok; /* token separator for old path */ char *p; /* points to element of old path */ char sep; /* what flavor of separator used in old path */ char *rval; /* is this a multi-element path ? */ for (p = path, etok = strpbrk(p, ":;"), count = 0; etok; etok = strpbrk(p, ":;")) if ((etok - p) == 1) { if (*(etok - 1) == ';' || *(etok - 1) == ':') { p = ++etok; continue; /* ignore empty bucket */ } else if (etok = strpbrk(etok+1, ":;")) /* found one to count, handle drive letter */ p = ++etok, count++; else /* all finished, force abort */ p += strlen(p); } else /* found another one, no drive letter */ p = ++etok, count++; if (count) { count++; /* x1;x2;x3 <- need to count x3 */ /* * Hazard a guess on how big the buffer needs to be. * We have to convert things like c:/foo to /c=/foo. */ nutc_path_len = strlen(path) + (count*2) + 1; nutc_path = xmalloc(nutc_path_len); pathp = nutc_path; *pathp = '\0'; /* * Loop through PATH and convert one elemnt of the path at at * a time. Single file pathnames will fail this and fall * to the logic below loop. */ for (p = path, etok = strpbrk(p, ":;"); etok; etok = strpbrk(p, ":;")) { /* don't trip up on device specifiers or empty path slots */ if ((etok - p) == 1) if (*(etok - 1) == ';' || *(etok - 1) == ':') { p = ++etok; continue; } else if ((etok = strpbrk(etok+1, ":;")) == NULL) break; /* thing found was a WINDOWS32 pathname */ /* save separator */ sep = *etok; /* terminate the current path element -- temporarily */ *etok = '\0'; #ifdef __NUTC__ /* convert to NutC format */ if (_NutPathToNutc(p, pathp, 0) == FALSE) { free(nutc_path); rval = savestring(path, strlen(path)); return rval; } #else *pathp++ = '/'; *pathp++ = p[0]; *pathp++ = '='; *pathp++ = '/'; strcpy(pathp, &p[2]); #endif pathp += strlen(pathp); *pathp++ = ':'; /* use Unix style path separtor for new path */ *pathp = '\0'; /* make sure we are null terminaed */ /* restore path separator */ *etok = sep; /* point p to first char of next path element */ p = ++etok; } } else { nutc_path_len = strlen(path) + 3; nutc_path = xmalloc(nutc_path_len); pathp = nutc_path; *pathp = '\0'; p = path; } /* * OK, here we handle the last element in PATH (e.g. c of a;b;c) * or the path was a single filename and will be converted * here. Note, testing p here assures that we don't trip up * on paths like a;b; which have trailing delimiter followed by * nothing. */ if (*p != '\0') { #ifdef __NUTC__ if (_NutPathToNutc(p, pathp, 0) == FALSE) { free(nutc_path); rval = savestring(path, strlen(path)); return rval; } #else *pathp++ = '/'; *pathp++ = p[0]; *pathp++ = '='; *pathp++ = '/'; strcpy(pathp, &p[2]); #endif } else *(pathp-1) = '\0'; /* we're already done, don't leave trailing : */ rval = savestring(nutc_path, strlen(nutc_path)); free(nutc_path); return rval; } #endif make-dfsg-3.81.orig/w32/subproc/0000755000175000017500000000000010416553102016601 5ustar srivastasrivastamake-dfsg-3.81.orig/w32/subproc/NMakefile0000644000175000017500000000372510416553102020366 0ustar srivastasrivasta# NOTE: If you have no `make' program at all to process this makefile, run # `build.bat' instead. # # Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, # 2006 Free Software Foundation, Inc. # This file is part of GNU Make. # # GNU Make is free software; you can redistribute it and/or modify it under the # terms of the GNU General Public License as published by the Free Software # Foundation; either version 2, or (at your option) any later version. # # GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY # WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR # A PARTICULAR PURPOSE. See the GNU General Public License for more details. # # You should have received a copy of the GNU General Public License along with # GNU Make; see the file COPYING. If not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. # # NMakefile for GNU Make (subproc library) # LIB = lib CC = cl MAKE = nmake OUTDIR=. MAKEFILE=NMakefile CFLAGS_any = /nologo /MT /W4 /GX /Z7 /YX /D WIN32 /D WINDOWS32 /D _WINDOWS -I. -I../include -I../../ CFLAGS_debug = $(CFLAGS_any) /Od /D _DEBUG /FR.\WinDebug\ /Fp.\WinDebug\subproc.pch /Fo.\WinDebug/ CFLAGS_release = $(CFLAGS_any) /O2 /FR.\WinRel\ /Fp.\WinRel\subproc.pch /Fo.\WinRel/ all: Release Debug Release: $(MAKE) /f $(MAKEFILE) OUTDIR=WinRel CFLAGS="$(CFLAGS_release)" WinRel/subproc.lib Debug: $(MAKE) /f $(MAKEFILE) OUTDIR=WinDebug CFLAGS="$(CFLAGS_debug)" WinDebug/subproc.lib clean: rmdir /s /q WinRel WinDebug erase *.pdb $(OUTDIR): if not exist .\$@\nul mkdir .\$@ OBJS = $(OUTDIR)/misc.obj $(OUTDIR)/w32err.obj $(OUTDIR)/sub_proc.obj $(OUTDIR)/subproc.lib: $(OUTDIR) $(OBJS) $(LIB) -out:$@ @<< $(OBJS) << .c{$(OUTDIR)}.obj: $(CC) $(CFLAGS) /c $< $(OUTDIR)/misc.obj: misc.c proc.h $(OUTDIR)/sub_proc.obj: sub_proc.c ../include/sub_proc.h ../include/w32err.h proc.h $(OUTDIR)/w32err.obj: w32err.c ../include/w32err.h make-dfsg-3.81.orig/w32/subproc/build.bat0000644000175000017500000000510410416553102020370 0ustar srivastasrivasta@if "%1" == "gcc" GoTo GCCBuild if not exist .\WinDebug\nul mkdir .\WinDebug cl.exe /nologo /MT /W4 /GX /Z7 /YX /Od /I .. /I . /I ../include /D WIN32 /D WINDOWS32 /D _DEBUG /D _WINDOWS /FR.\WinDebug/ /Fp.\WinDebug/subproc.pch /Fo.\WinDebug/ /c misc.c cl.exe /nologo /MT /W4 /GX /Z7 /YX /Od /I .. /I . /I ../include /I ../.. /D WIN32 /D WINDOWS32 /D _DEBUG /D _WINDOWS /FR.\WinDebug/ /Fp.\WinDebug/subproc.pch /Fo.\WinDebug/ /c sub_proc.c cl.exe /nologo /MT /W4 /GX /Z7 /YX /Od /I .. /I . /I ../include /D WIN32 /D WINDOWS32 /D _DEBUG /D _WINDOWS /FR.\WinDebug/ /Fp.\WinDebug/subproc.pch /Fo.\WinDebug/ /c w32err.c lib.exe /NOLOGO /OUT:.\WinDebug\subproc.lib .\WinDebug/misc.obj .\WinDebug/sub_proc.obj .\WinDebug/w32err.obj if not exist .\WinRel\nul mkdir .\WinRel cl.exe /nologo /MT /W4 /GX /YX /O2 /I ../include /D WIN32 /D WINDOWS32 /D NDEBUG /D _WINDOWS /FR.\WinRel/ /Fp.\WinRel/subproc.pch /Fo.\WinRel/ /c misc.c cl.exe /nologo /MT /W4 /GX /YX /O2 /I ../include /I ../.. /D WIN32 /D WINDOWS32 /D NDEBUG /D _WINDOWS /FR.\WinRel/ /Fp.\WinRel/subproc.pch /Fo.\WinRel/ /c sub_proc.c cl.exe /nologo /MT /W4 /GX /YX /O2 /I ../include /D WIN32 /D WINDOWS32 /D NDEBUG /D _WINDOWS /FR.\WinRel/ /Fp.\WinRel/subproc.pch /Fo.\WinRel/ /c w32err.c lib.exe /NOLOGO /OUT:.\WinRel\subproc.lib .\WinRel/misc.obj .\WinRel/sub_proc.obj .\WinRel/w32err.obj GoTo BuildEnd :GCCBuild gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I.. -I. -I../include -I../.. -DWINDOWS32 -c misc.c -o ../../w32_misc.o gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I.. -I. -I../include -I../.. -DWINDOWS32 -c sub_proc.c -o ../../sub_proc.o gcc -mthreads -Wall -gstabs+ -ggdb3 -O2 -I.. -I. -I../include -I../.. -DWINDOWS32 -c w32err.c -o ../../w32err.o :BuildEnd @echo off rem Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, rem 2005, 2006 Free Software Foundation, Inc. rem This file is part of GNU Make. rem GNU Make is free software; you can redistribute it and/or modify it under the rem terms of the GNU General Public License as published by the Free Software rem Foundation; either version 2, or (at your option) any later version. rem GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY rem WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR rem A PARTICULAR PURPOSE. See the GNU General Public License for more details. rem You should have received a copy of the GNU General Public License along with rem GNU Make; see the file COPYING. If not, write to the Free Software rem Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. make-dfsg-3.81.orig/w32/subproc/misc.c0000644000175000017500000000420210416553102017676 0ustar srivastasrivasta/* Process handling for Windows Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include #include #include #include "proc.h" /* * Description: Convert a NULL string terminated UNIX environment block to * an environment block suitable for a windows32 system call * * Returns: TRUE= success, FALSE=fail * * Notes/Dependencies: the environment block is sorted in case-insensitive * order, is double-null terminated, and is a char *, not a char ** */ int _cdecl compare(const void *a1, const void *a2) { return _stricoll(*((char**)a1),*((char**)a2)); } bool_t arr2envblk(char **arr, char **envblk_out) { char **tmp; int size_needed; int arrcnt; char *ptr; arrcnt = 0; while (arr[arrcnt]) { arrcnt++; } tmp = (char**) calloc(arrcnt + 1, sizeof(char *)); if (!tmp) { return FALSE; } arrcnt = 0; size_needed = 0; while (arr[arrcnt]) { tmp[arrcnt] = arr[arrcnt]; size_needed += strlen(arr[arrcnt]) + 1; arrcnt++; } size_needed++; qsort((void *) tmp, (size_t) arrcnt, sizeof (char*), compare); ptr = *envblk_out = calloc(size_needed, 1); if (!ptr) { free(tmp); return FALSE; } arrcnt = 0; while (tmp[arrcnt]) { strcpy(ptr, tmp[arrcnt]); ptr += strlen(tmp[arrcnt]) + 1; arrcnt++; } free(tmp); return TRUE; } make-dfsg-3.81.orig/w32/subproc/proc.h0000644000175000017500000000206510416553102017720 0ustar srivastasrivasta/* Definitions for Windows Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #ifndef _PROC_H #define _PROC_H typedef int bool_t; #define E_SCALL 101 #define E_IO 102 #define E_NO_MEM 103 #define E_FORK 104 extern bool_t arr2envblk(char **arr, char **envblk_out); #endif make-dfsg-3.81.orig/w32/subproc/sub_proc.c0000644000175000017500000007066610416553102020600 0ustar srivastasrivasta/* Process handling for Windows. Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include #include /* for msvc _beginthreadex, _endthreadex */ #include #include #include "sub_proc.h" #include "proc.h" #include "w32err.h" #include "config.h" #include "debug.h" static char *make_command_line(char *shell_name, char *exec_path, char **argv); typedef struct sub_process_t { int sv_stdin[2]; int sv_stdout[2]; int sv_stderr[2]; int using_pipes; char *inp; DWORD incnt; char * volatile outp; volatile DWORD outcnt; char * volatile errp; volatile DWORD errcnt; int pid; int exit_code; int signal; long last_err; long lerrno; } sub_process; /* keep track of children so we can implement a waitpid-like routine */ static sub_process *proc_array[MAXIMUM_WAIT_OBJECTS]; static int proc_index = 0; static int fake_exits_pending = 0; /* * When a process has been waited for, adjust the wait state * array so that we don't wait for it again */ static void process_adjust_wait_state(sub_process* pproc) { int i; if (!proc_index) return; for (i = 0; i < proc_index; i++) if (proc_array[i]->pid == pproc->pid) break; if (i < proc_index) { proc_index--; if (i != proc_index) memmove(&proc_array[i], &proc_array[i+1], (proc_index-i) * sizeof(sub_process*)); proc_array[proc_index] = NULL; } } /* * Waits for any of the registered child processes to finish. */ static sub_process * process_wait_for_any_private(void) { HANDLE handles[MAXIMUM_WAIT_OBJECTS]; DWORD retval, which; int i; if (!proc_index) return NULL; /* build array of handles to wait for */ for (i = 0; i < proc_index; i++) { handles[i] = (HANDLE) proc_array[i]->pid; if (fake_exits_pending && proc_array[i]->exit_code) break; } /* wait for someone to exit */ if (!fake_exits_pending) { retval = WaitForMultipleObjects(proc_index, handles, FALSE, INFINITE); which = retval - WAIT_OBJECT_0; } else { fake_exits_pending--; retval = !WAIT_FAILED; which = i; } /* return pointer to process */ if (retval != WAIT_FAILED) { sub_process* pproc = proc_array[which]; process_adjust_wait_state(pproc); return pproc; } else return NULL; } /* * Terminate a process. */ BOOL process_kill(HANDLE proc, int signal) { sub_process* pproc = (sub_process*) proc; pproc->signal = signal; return (TerminateProcess((HANDLE) pproc->pid, signal)); } /* * Use this function to register processes you wish to wait for by * calling process_file_io(NULL) or process_wait_any(). This must be done * because it is possible for callers of this library to reuse the same * handle for multiple processes launches :-( */ void process_register(HANDLE proc) { if (proc_index < MAXIMUM_WAIT_OBJECTS) proc_array[proc_index++] = (sub_process *) proc; } /* * Return the number of processes that we are still waiting for. */ int process_used_slots(void) { return proc_index; } /* * Public function which works kind of like waitpid(). Wait for any * of the children to die and return results. To call this function, * you must do 1 of things: * * x = process_easy(...); * * or * * x = process_init_fd(); * process_register(x); * * or * * x = process_init(); * process_register(x); * * You must NOT then call process_pipe_io() because this function is * not capable of handling automatic notification of any child * death. */ HANDLE process_wait_for_any(void) { sub_process* pproc = process_wait_for_any_private(); if (!pproc) return NULL; else { /* * Ouch! can't tell caller if this fails directly. Caller * will have to use process_last_err() */ (void) process_file_io(pproc); return ((HANDLE) pproc); } } long process_signal(HANDLE proc) { if (proc == INVALID_HANDLE_VALUE) return 0; return (((sub_process *)proc)->signal); } long process_last_err(HANDLE proc) { if (proc == INVALID_HANDLE_VALUE) return ERROR_INVALID_HANDLE; return (((sub_process *)proc)->last_err); } long process_exit_code(HANDLE proc) { if (proc == INVALID_HANDLE_VALUE) return EXIT_FAILURE; return (((sub_process *)proc)->exit_code); } /* 2006-02: All the following functions are currently unused. All of them would crash gmake if called with argument INVALID_HANDLE_VALUE. Hence whoever wants to use one of this functions must invent and implement a reasonable error handling for this function. char * process_outbuf(HANDLE proc) { return (((sub_process *)proc)->outp); } char * process_errbuf(HANDLE proc) { return (((sub_process *)proc)->errp); } int process_outcnt(HANDLE proc) { return (((sub_process *)proc)->outcnt); } int process_errcnt(HANDLE proc) { return (((sub_process *)proc)->errcnt); } void process_pipes(HANDLE proc, int pipes[3]) { pipes[0] = ((sub_process *)proc)->sv_stdin[0]; pipes[1] = ((sub_process *)proc)->sv_stdout[0]; pipes[2] = ((sub_process *)proc)->sv_stderr[0]; return; } */ HANDLE process_init() { sub_process *pproc; /* * open file descriptors for attaching stdin/stdout/sterr */ HANDLE stdin_pipes[2]; HANDLE stdout_pipes[2]; HANDLE stderr_pipes[2]; SECURITY_ATTRIBUTES inherit; BYTE sd[SECURITY_DESCRIPTOR_MIN_LENGTH]; pproc = malloc(sizeof(*pproc)); memset(pproc, 0, sizeof(*pproc)); /* We can't use NULL for lpSecurityDescriptor because that uses the default security descriptor of the calling process. Instead we use a security descriptor with no DACL. This allows nonrestricted access to the associated objects. */ if (!InitializeSecurityDescriptor((PSECURITY_DESCRIPTOR)(&sd), SECURITY_DESCRIPTOR_REVISION)) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; return((HANDLE)pproc); } inherit.nLength = sizeof(inherit); inherit.lpSecurityDescriptor = (PSECURITY_DESCRIPTOR)(&sd); inherit.bInheritHandle = TRUE; // By convention, parent gets pipe[0], and child gets pipe[1] // This means the READ side of stdin pipe goes into pipe[1] // and the WRITE side of the stdout and stderr pipes go into pipe[1] if (CreatePipe( &stdin_pipes[1], &stdin_pipes[0], &inherit, 0) == FALSE || CreatePipe( &stdout_pipes[0], &stdout_pipes[1], &inherit, 0) == FALSE || CreatePipe( &stderr_pipes[0], &stderr_pipes[1], &inherit, 0) == FALSE) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; return((HANDLE)pproc); } // // Mark the parent sides of the pipes as non-inheritable // if (SetHandleInformation(stdin_pipes[0], HANDLE_FLAG_INHERIT, 0) == FALSE || SetHandleInformation(stdout_pipes[0], HANDLE_FLAG_INHERIT, 0) == FALSE || SetHandleInformation(stderr_pipes[0], HANDLE_FLAG_INHERIT, 0) == FALSE) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; return((HANDLE)pproc); } pproc->sv_stdin[0] = (int) stdin_pipes[0]; pproc->sv_stdin[1] = (int) stdin_pipes[1]; pproc->sv_stdout[0] = (int) stdout_pipes[0]; pproc->sv_stdout[1] = (int) stdout_pipes[1]; pproc->sv_stderr[0] = (int) stderr_pipes[0]; pproc->sv_stderr[1] = (int) stderr_pipes[1]; pproc->using_pipes = 1; pproc->lerrno = 0; return((HANDLE)pproc); } HANDLE process_init_fd(HANDLE stdinh, HANDLE stdouth, HANDLE stderrh) { sub_process *pproc; pproc = malloc(sizeof(*pproc)); memset(pproc, 0, sizeof(*pproc)); /* * Just pass the provided file handles to the 'child side' of the * pipe, bypassing pipes altogether. */ pproc->sv_stdin[1] = (int) stdinh; pproc->sv_stdout[1] = (int) stdouth; pproc->sv_stderr[1] = (int) stderrh; pproc->last_err = pproc->lerrno = 0; return((HANDLE)pproc); } static HANDLE find_file(char *exec_path, LPOFSTRUCT file_info) { HANDLE exec_handle; char *fname; char *ext; fname = malloc(strlen(exec_path) + 5); strcpy(fname, exec_path); ext = fname + strlen(fname); strcpy(ext, ".exe"); if ((exec_handle = (HANDLE)OpenFile(fname, file_info, OF_READ | OF_SHARE_COMPAT)) != (HANDLE)HFILE_ERROR) { free(fname); return(exec_handle); } strcpy(ext, ".cmd"); if ((exec_handle = (HANDLE)OpenFile(fname, file_info, OF_READ | OF_SHARE_COMPAT)) != (HANDLE)HFILE_ERROR) { free(fname); return(exec_handle); } strcpy(ext, ".bat"); if ((exec_handle = (HANDLE)OpenFile(fname, file_info, OF_READ | OF_SHARE_COMPAT)) != (HANDLE)HFILE_ERROR) { free(fname); return(exec_handle); } /* should .com come before this case? */ if ((exec_handle = (HANDLE)OpenFile(exec_path, file_info, OF_READ | OF_SHARE_COMPAT)) != (HANDLE)HFILE_ERROR) { free(fname); return(exec_handle); } strcpy(ext, ".com"); if ((exec_handle = (HANDLE)OpenFile(fname, file_info, OF_READ | OF_SHARE_COMPAT)) != (HANDLE)HFILE_ERROR) { free(fname); return(exec_handle); } free(fname); return(exec_handle); } /* * Description: Create the child process to be helped * * Returns: success <=> 0 * * Notes/Dependencies: */ long process_begin( HANDLE proc, char **argv, char **envp, char *exec_path, char *as_user) { sub_process *pproc = (sub_process *)proc; char *shell_name = 0; int file_not_found=0; HANDLE exec_handle; char buf[256]; DWORD bytes_returned; DWORD flags; char *command_line; STARTUPINFO startInfo; PROCESS_INFORMATION procInfo; char *envblk=NULL; OFSTRUCT file_info; /* * Shell script detection... if the exec_path starts with #! then * we want to exec shell-script-name exec-path, not just exec-path * NT doesn't recognize #!/bin/sh or #!/etc/Tivoli/bin/perl. We do not * hard-code the path to the shell or perl or whatever: Instead, we * assume it's in the path somewhere (generally, the NT tools * bin directory) * We use OpenFile here because it is capable of searching the Path. */ exec_handle = find_file(exec_path, &file_info); /* * If we couldn't open the file, just assume that Windows32 will be able * to find and execute it. */ if (exec_handle == (HANDLE)HFILE_ERROR) { file_not_found++; } else { /* Attempt to read the first line of the file */ if (ReadFile( exec_handle, buf, sizeof(buf) - 1, /* leave room for trailing NULL */ &bytes_returned, 0) == FALSE || bytes_returned < 2) { pproc->last_err = GetLastError(); pproc->lerrno = E_IO; CloseHandle(exec_handle); return(-1); } if (buf[0] == '#' && buf[1] == '!') { /* * This is a shell script... Change the command line from * exec_path args to shell_name exec_path args */ char *p; /* Make sure buf is NULL terminated */ buf[bytes_returned] = 0; /* * Depending on the file system type, etc. the first line * of the shell script may end with newline or newline-carriage-return * Whatever it ends with, cut it off. */ p= strchr(buf, '\n'); if (p) *p = 0; p = strchr(buf, '\r'); if (p) *p = 0; /* * Find base name of shell */ shell_name = strrchr( buf, '/'); if (shell_name) { shell_name++; } else { shell_name = &buf[2];/* skipping "#!" */ } } CloseHandle(exec_handle); } flags = 0; if (file_not_found) command_line = make_command_line( shell_name, exec_path, argv); else command_line = make_command_line( shell_name, file_info.szPathName, argv); if ( command_line == NULL ) { pproc->last_err = 0; pproc->lerrno = E_NO_MEM; return(-1); } if (envp) { if (arr2envblk(envp, &envblk) ==FALSE) { pproc->last_err = 0; pproc->lerrno = E_NO_MEM; free( command_line ); return(-1); } } if ((shell_name) || (file_not_found)) { exec_path = 0; /* Search for the program in %Path% */ } else { exec_path = file_info.szPathName; } /* * Set up inherited stdin, stdout, stderr for child */ GetStartupInfo(&startInfo); startInfo.dwFlags = STARTF_USESTDHANDLES; startInfo.lpReserved = 0; startInfo.cbReserved2 = 0; startInfo.lpReserved2 = 0; startInfo.lpTitle = shell_name ? shell_name : exec_path; startInfo.hStdInput = (HANDLE)pproc->sv_stdin[1]; startInfo.hStdOutput = (HANDLE)pproc->sv_stdout[1]; startInfo.hStdError = (HANDLE)pproc->sv_stderr[1]; if (as_user) { if (envblk) free(envblk); return -1; } else { DB (DB_JOBS, ("CreateProcess(%s,%s,...)\n", exec_path ? exec_path : "NULL", command_line ? command_line : "NULL")); if (CreateProcess( exec_path, command_line, NULL, 0, /* default security attributes for thread */ TRUE, /* inherit handles (e.g. helper pipes, oserv socket) */ flags, envblk, 0, /* default starting directory */ &startInfo, &procInfo) == FALSE) { pproc->last_err = GetLastError(); pproc->lerrno = E_FORK; fprintf(stderr, "process_begin: CreateProcess(%s, %s, ...) failed.\n", exec_path ? exec_path : "NULL", command_line); if (envblk) free(envblk); free( command_line ); return(-1); } } pproc->pid = (int)procInfo.hProcess; /* Close the thread handle -- we'll just watch the process */ CloseHandle(procInfo.hThread); /* Close the halves of the pipes we don't need */ CloseHandle((HANDLE)pproc->sv_stdin[1]); CloseHandle((HANDLE)pproc->sv_stdout[1]); CloseHandle((HANDLE)pproc->sv_stderr[1]); pproc->sv_stdin[1] = 0; pproc->sv_stdout[1] = 0; pproc->sv_stderr[1] = 0; free( command_line ); if (envblk) free(envblk); pproc->lerrno=0; return 0; } static DWORD proc_stdin_thread(sub_process *pproc) { DWORD in_done; for (;;) { if (WriteFile( (HANDLE) pproc->sv_stdin[0], pproc->inp, pproc->incnt, &in_done, NULL) == FALSE) _endthreadex(0); // This if should never be true for anonymous pipes, but gives // us a chance to change I/O mechanisms later if (in_done < pproc->incnt) { pproc->incnt -= in_done; pproc->inp += in_done; } else { _endthreadex(0); } } return 0; // for compiler warnings only.. not reached } static DWORD proc_stdout_thread(sub_process *pproc) { DWORD bufsize = 1024; char c; DWORD nread; pproc->outp = malloc(bufsize); if (pproc->outp == NULL) _endthreadex(0); pproc->outcnt = 0; for (;;) { if (ReadFile( (HANDLE)pproc->sv_stdout[0], &c, 1, &nread, NULL) == FALSE) { /* map_windows32_error_to_string(GetLastError());*/ _endthreadex(0); } if (nread == 0) _endthreadex(0); if (pproc->outcnt + nread > bufsize) { bufsize += nread + 512; pproc->outp = realloc(pproc->outp, bufsize); if (pproc->outp == NULL) { pproc->outcnt = 0; _endthreadex(0); } } pproc->outp[pproc->outcnt++] = c; } return 0; } static DWORD proc_stderr_thread(sub_process *pproc) { DWORD bufsize = 1024; char c; DWORD nread; pproc->errp = malloc(bufsize); if (pproc->errp == NULL) _endthreadex(0); pproc->errcnt = 0; for (;;) { if (ReadFile( (HANDLE)pproc->sv_stderr[0], &c, 1, &nread, NULL) == FALSE) { map_windows32_error_to_string(GetLastError()); _endthreadex(0); } if (nread == 0) _endthreadex(0); if (pproc->errcnt + nread > bufsize) { bufsize += nread + 512; pproc->errp = realloc(pproc->errp, bufsize); if (pproc->errp == NULL) { pproc->errcnt = 0; _endthreadex(0); } } pproc->errp[pproc->errcnt++] = c; } return 0; } /* * Purpose: collects output from child process and returns results * * Description: * * Returns: * * Notes/Dependencies: */ long process_pipe_io( HANDLE proc, char *stdin_data, int stdin_data_len) { sub_process *pproc = (sub_process *)proc; bool_t stdin_eof = FALSE, stdout_eof = FALSE, stderr_eof = FALSE; HANDLE childhand = (HANDLE) pproc->pid; HANDLE tStdin = NULL, tStdout = NULL, tStderr = NULL; unsigned int dwStdin, dwStdout, dwStderr; HANDLE wait_list[4]; DWORD wait_count; DWORD wait_return; HANDLE ready_hand; bool_t child_dead = FALSE; BOOL GetExitCodeResult; /* * Create stdin thread, if needed */ pproc->inp = stdin_data; pproc->incnt = stdin_data_len; if (!pproc->inp) { stdin_eof = TRUE; CloseHandle((HANDLE)pproc->sv_stdin[0]); pproc->sv_stdin[0] = 0; } else { tStdin = (HANDLE) _beginthreadex( 0, 1024, (unsigned (__stdcall *) (void *))proc_stdin_thread, pproc, 0, &dwStdin); if (tStdin == 0) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; goto done; } } /* * Assume child will produce stdout and stderr */ tStdout = (HANDLE) _beginthreadex( 0, 1024, (unsigned (__stdcall *) (void *))proc_stdout_thread, pproc, 0, &dwStdout); tStderr = (HANDLE) _beginthreadex( 0, 1024, (unsigned (__stdcall *) (void *))proc_stderr_thread, pproc, 0, &dwStderr); if (tStdout == 0 || tStderr == 0) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; goto done; } /* * Wait for all I/O to finish and for the child process to exit */ while (!stdin_eof || !stdout_eof || !stderr_eof || !child_dead) { wait_count = 0; if (!stdin_eof) { wait_list[wait_count++] = tStdin; } if (!stdout_eof) { wait_list[wait_count++] = tStdout; } if (!stderr_eof) { wait_list[wait_count++] = tStderr; } if (!child_dead) { wait_list[wait_count++] = childhand; } wait_return = WaitForMultipleObjects(wait_count, wait_list, FALSE, /* don't wait for all: one ready will do */ child_dead? 1000 :INFINITE); /* after the child dies, subthreads have one second to collect all remaining output */ if (wait_return == WAIT_FAILED) { /* map_windows32_error_to_string(GetLastError());*/ pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; goto done; } ready_hand = wait_list[wait_return - WAIT_OBJECT_0]; if (ready_hand == tStdin) { CloseHandle((HANDLE)pproc->sv_stdin[0]); pproc->sv_stdin[0] = 0; CloseHandle(tStdin); tStdin = 0; stdin_eof = TRUE; } else if (ready_hand == tStdout) { CloseHandle((HANDLE)pproc->sv_stdout[0]); pproc->sv_stdout[0] = 0; CloseHandle(tStdout); tStdout = 0; stdout_eof = TRUE; } else if (ready_hand == tStderr) { CloseHandle((HANDLE)pproc->sv_stderr[0]); pproc->sv_stderr[0] = 0; CloseHandle(tStderr); tStderr = 0; stderr_eof = TRUE; } else if (ready_hand == childhand) { DWORD ierr; GetExitCodeResult = GetExitCodeProcess(childhand, &ierr); if (ierr == CONTROL_C_EXIT) { pproc->signal = SIGINT; } else { pproc->exit_code = ierr; } if (GetExitCodeResult == FALSE) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; goto done; } child_dead = TRUE; } else { /* ?? Got back a handle we didn't query ?? */ pproc->last_err = 0; pproc->lerrno = E_FAIL; goto done; } } done: if (tStdin != 0) CloseHandle(tStdin); if (tStdout != 0) CloseHandle(tStdout); if (tStderr != 0) CloseHandle(tStderr); if (pproc->lerrno) return(-1); else return(0); } /* * Purpose: collects output from child process and returns results * * Description: * * Returns: * * Notes/Dependencies: */ long process_file_io( HANDLE proc) { sub_process *pproc; HANDLE childhand; DWORD wait_return; BOOL GetExitCodeResult; DWORD ierr; if (proc == NULL) pproc = process_wait_for_any_private(); else pproc = (sub_process *)proc; /* some sort of internal error */ if (!pproc) return -1; childhand = (HANDLE) pproc->pid; /* * This function is poorly named, and could also be used just to wait * for child death if you're doing your own pipe I/O. If that is * the case, close the pipe handles here. */ if (pproc->sv_stdin[0]) { CloseHandle((HANDLE)pproc->sv_stdin[0]); pproc->sv_stdin[0] = 0; } if (pproc->sv_stdout[0]) { CloseHandle((HANDLE)pproc->sv_stdout[0]); pproc->sv_stdout[0] = 0; } if (pproc->sv_stderr[0]) { CloseHandle((HANDLE)pproc->sv_stderr[0]); pproc->sv_stderr[0] = 0; } /* * Wait for the child process to exit */ wait_return = WaitForSingleObject(childhand, INFINITE); if (wait_return != WAIT_OBJECT_0) { /* map_windows32_error_to_string(GetLastError());*/ pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; goto done2; } GetExitCodeResult = GetExitCodeProcess(childhand, &ierr); if (ierr == CONTROL_C_EXIT) { pproc->signal = SIGINT; } else { pproc->exit_code = ierr; } if (GetExitCodeResult == FALSE) { pproc->last_err = GetLastError(); pproc->lerrno = E_SCALL; } done2: if (pproc->lerrno) return(-1); else return(0); } /* * Description: Clean up any leftover handles, etc. It is up to the * caller to manage and free the input, ouput, and stderr buffers. */ void process_cleanup( HANDLE proc) { sub_process *pproc = (sub_process *)proc; int i; if (pproc->using_pipes) { for (i= 0; i <= 1; i++) { if ((HANDLE)pproc->sv_stdin[i]) CloseHandle((HANDLE)pproc->sv_stdin[i]); if ((HANDLE)pproc->sv_stdout[i]) CloseHandle((HANDLE)pproc->sv_stdout[i]); if ((HANDLE)pproc->sv_stderr[i]) CloseHandle((HANDLE)pproc->sv_stderr[i]); } } if ((HANDLE)pproc->pid) CloseHandle((HANDLE)pproc->pid); free(pproc); } /* * Description: * Create a command line buffer to pass to CreateProcess * * Returns: the buffer or NULL for failure * Shell case: sh_name a:/full/path/to/script argv[1] argv[2] ... * Otherwise: argv[0] argv[1] argv[2] ... * * Notes/Dependencies: * CreateProcess does not take an argv, so this command creates a * command line for the executable. */ static char * make_command_line( char *shell_name, char *full_exec_path, char **argv) { int argc = 0; char** argvi; int* enclose_in_quotes = NULL; int* enclose_in_quotes_i; unsigned int bytes_required = 0; char* command_line; char* command_line_i; int cygwin_mode = 0; /* HAVE_CYGWIN_SHELL */ int have_sh = 0; /* HAVE_CYGWIN_SHELL */ #ifdef HAVE_CYGWIN_SHELL have_sh = (shell_name != NULL || strstr(full_exec_path, "sh.exe")); cygwin_mode = 1; #endif if (shell_name && full_exec_path) { bytes_required = strlen(shell_name) + 1 + strlen(full_exec_path); /* * Skip argv[0] if any, when shell_name is given. */ if (*argv) argv++; /* * Add one for the intervening space. */ if (*argv) bytes_required++; } argvi = argv; while (*(argvi++)) argc++; if (argc) { enclose_in_quotes = (int*) calloc(1, argc * sizeof(int)); if (!enclose_in_quotes) { return NULL; } } /* We have to make one pass through each argv[i] to see if we need * to enclose it in ", so we might as well figure out how much * memory we'll need on the same pass. */ argvi = argv; enclose_in_quotes_i = enclose_in_quotes; while(*argvi) { char* p = *argvi; unsigned int backslash_count = 0; /* * We have to enclose empty arguments in ". */ if (!(*p)) *enclose_in_quotes_i = 1; while(*p) { switch (*p) { case '\"': /* * We have to insert a backslash for each " * and each \ that precedes the ". */ bytes_required += (backslash_count + 1); backslash_count = 0; break; #if !defined(HAVE_MKS_SHELL) && !defined(HAVE_CYGWIN_SHELL) case '\\': backslash_count++; break; #endif /* * At one time we set *enclose_in_quotes_i for '*' or '?' to suppress * wildcard expansion in programs linked with MSVC's SETARGV.OBJ so * that argv in always equals argv out. This was removed. Say you have * such a program named glob.exe. You enter * glob '*' * at the sh command prompt. Obviously the intent is to make glob do the * wildcarding instead of sh. If we set *enclose_in_quotes_i for '*' or '?', * then the command line that glob would see would be * glob "*" * and the _setargv in SETARGV.OBJ would _not_ expand the *. */ case ' ': case '\t': *enclose_in_quotes_i = 1; /* fall through */ default: backslash_count = 0; break; } /* * Add one for each character in argv[i]. */ bytes_required++; p++; } if (*enclose_in_quotes_i) { /* * Add one for each enclosing ", * and one for each \ that precedes the * closing ". */ bytes_required += (backslash_count + 2); } /* * Add one for the intervening space. */ if (*(++argvi)) bytes_required++; enclose_in_quotes_i++; } /* * Add one for the terminating NULL. */ bytes_required++; command_line = (char*) malloc(bytes_required); if (!command_line) { if (enclose_in_quotes) free(enclose_in_quotes); return NULL; } command_line_i = command_line; if (shell_name && full_exec_path) { while(*shell_name) { *(command_line_i++) = *(shell_name++); } *(command_line_i++) = ' '; while(*full_exec_path) { *(command_line_i++) = *(full_exec_path++); } if (*argv) { *(command_line_i++) = ' '; } } argvi = argv; enclose_in_quotes_i = enclose_in_quotes; while(*argvi) { char* p = *argvi; unsigned int backslash_count = 0; if (*enclose_in_quotes_i) { *(command_line_i++) = '\"'; } while(*p) { if (*p == '\"') { if (cygwin_mode && have_sh) { /* HAVE_CYGWIN_SHELL */ /* instead of a \", cygwin likes "" */ *(command_line_i++) = '\"'; } else { /* * We have to insert a backslash for the " * and each \ that precedes the ". */ backslash_count++; while(backslash_count) { *(command_line_i++) = '\\'; backslash_count--; }; } #if !defined(HAVE_MKS_SHELL) && !defined(HAVE_CYGWIN_SHELL) } else if (*p == '\\') { backslash_count++; } else { backslash_count = 0; #endif } /* * Copy the character. */ *(command_line_i++) = *(p++); } if (*enclose_in_quotes_i) { #if !defined(HAVE_MKS_SHELL) && !defined(HAVE_CYGWIN_SHELL) /* * Add one \ for each \ that precedes the * closing ". */ while(backslash_count--) { *(command_line_i++) = '\\'; }; #endif *(command_line_i++) = '\"'; } /* * Append an intervening space. */ if (*(++argvi)) { *(command_line_i++) = ' '; } enclose_in_quotes_i++; } /* * Append the terminating NULL. */ *command_line_i = '\0'; if (enclose_in_quotes) free(enclose_in_quotes); return command_line; } /* * Description: Given an argv and optional envp, launch the process * using the default stdin, stdout, and stderr handles. * Also, register process so that process_wait_for_any_private() * can be used via process_file_io(NULL) or * process_wait_for_any(). * * Returns: * * Notes/Dependencies: */ HANDLE process_easy( char **argv, char **envp) { HANDLE hIn; HANDLE hOut; HANDLE hErr; HANDLE hProcess; if (proc_index >= MAXIMUM_WAIT_OBJECTS) { DB (DB_JOBS, ("process_easy: All process slots used up\n")); return INVALID_HANDLE_VALUE; } if (DuplicateHandle(GetCurrentProcess(), GetStdHandle(STD_INPUT_HANDLE), GetCurrentProcess(), &hIn, 0, TRUE, DUPLICATE_SAME_ACCESS) == FALSE) { fprintf(stderr, "process_easy: DuplicateHandle(In) failed (e=%ld)\n", GetLastError()); return INVALID_HANDLE_VALUE; } if (DuplicateHandle(GetCurrentProcess(), GetStdHandle(STD_OUTPUT_HANDLE), GetCurrentProcess(), &hOut, 0, TRUE, DUPLICATE_SAME_ACCESS) == FALSE) { fprintf(stderr, "process_easy: DuplicateHandle(Out) failed (e=%ld)\n", GetLastError()); return INVALID_HANDLE_VALUE; } if (DuplicateHandle(GetCurrentProcess(), GetStdHandle(STD_ERROR_HANDLE), GetCurrentProcess(), &hErr, 0, TRUE, DUPLICATE_SAME_ACCESS) == FALSE) { fprintf(stderr, "process_easy: DuplicateHandle(Err) failed (e=%ld)\n", GetLastError()); return INVALID_HANDLE_VALUE; } hProcess = process_init_fd(hIn, hOut, hErr); if (process_begin(hProcess, argv, envp, argv[0], NULL)) { fake_exits_pending++; /* process_begin() failed: make a note of that. */ if (!((sub_process*) hProcess)->last_err) ((sub_process*) hProcess)->last_err = -1; ((sub_process*) hProcess)->exit_code = process_last_err(hProcess); /* close up unused handles */ CloseHandle(hIn); CloseHandle(hOut); CloseHandle(hErr); } process_register(hProcess); return hProcess; } make-dfsg-3.81.orig/w32/subproc/w32err.c0000644000175000017500000000422610416553102020075 0ustar srivastasrivasta/* Error handling for Windows Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. This file is part of GNU Make. GNU Make is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Make; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. */ #include #include "w32err.h" /* * Description: the windows32 version of perror() * * Returns: a pointer to a static error * * Notes/Dependencies: I got this from * comp.os.ms-windows.programmer.win32 */ char * map_windows32_error_to_string (DWORD ercode) { /* __declspec (thread) necessary if you will use multiple threads on MSVC */ #ifdef _MSC_VER __declspec (thread) static char szMessageBuffer[128]; #else static char szMessageBuffer[128]; #endif /* Fill message buffer with a default message in * case FormatMessage fails */ wsprintf (szMessageBuffer, "Error %ld\n", ercode); /* * Special code for winsock error handling. */ if (ercode > WSABASEERR) { HMODULE hModule = GetModuleHandle("wsock32"); if (hModule != NULL) { FormatMessage(FORMAT_MESSAGE_FROM_HMODULE, hModule, ercode, LANG_NEUTRAL, szMessageBuffer, sizeof(szMessageBuffer), NULL); FreeLibrary(hModule); } } else { /* * Default system message handling */ FormatMessage(FORMAT_MESSAGE_FROM_SYSTEM, NULL, ercode, LANG_NEUTRAL, szMessageBuffer, sizeof(szMessageBuffer), NULL); } return szMessageBuffer; }