From 11640855e16c233153df3329d1d5b7da49d55ce9 Mon Sep 17 00:00:00 2001 From: Packit Date: Sep 17 2020 19:50:10 +0000 Subject: devhelp-3.28.1 base --- diff --git a/ABOUT-NLS b/ABOUT-NLS new file mode 100644 index 0000000..1551426 --- /dev/null +++ b/ABOUT-NLS @@ -0,0 +1,1379 @@ +1 Notes 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 free software 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 on translations can contact the appropriate team. + +1.1 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. Installers may use special +options at configuration time for changing the default behaviour. The +command: + + ./configure --disable-nls + +will _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' library and +will decide to use it. If not, you may have to to use the +'--with-libintl-prefix' option to tell 'configure' where to look for it. + + Internationalized packages usually have 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. + +1.2 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. If you happen to have the 'LC_ALL' or some other +'LC_xxx' environment variables set, you should unset them before setting +'LANG', otherwise the setting of 'LANG' will not have the desired +effect. 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 language 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. + +1.3 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://translationproject.org/', in the "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 'coordinator@translationproject.org' 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 skills are praised more than +programming skills, here. + +1.4 Available Packages +====================== + +Languages are not equally supported in all packages. The following +matrix shows the current state of internationalization, as of Jun 2014. +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 an ar as ast az be bg bn bn_IN bs ca crh cs + +---------------------------------------------------+ + a2ps | [] [] [] | + aegis | | + anubis | | + aspell | [] [] [] | + bash | [] [] [] | + bfd | | + binutils | [] | + bison | | + bison-runtime | [] | + buzztrax | [] | + ccd2cue | | + ccide | | + cflow | | + clisp | | + coreutils | [] [] | + cpio | | + cppi | | + cpplib | [] | + cryptsetup | [] | + datamash | | + denemo | [] [] | + dfarc | [] | + dialog | [] [] [] | + dico | | + diffutils | [] | + dink | [] | + direvent | | + doodle | [] | + dos2unix | | + dos2unix-man | | + e2fsprogs | [] [] | + enscript | [] | + exif | [] | + fetchmail | [] [] | + findutils | [] | + flex | [] | + freedink | [] [] | + fusionforge | | + gas | | + gawk | [] | + gcal | [] | + gcc | | + gdbm | | + gettext-examples | [] [] [] [] [] | + gettext-runtime | [] [] [] | + gettext-tools | [] [] | + gjay | | + glunarclock | [] [] [] | + gnubiff | [] | + gnubik | [] | + gnucash | () () [] | + gnuchess | | + gnulib | [] | + gnunet | | + gnunet-gtk | | + gold | | + gphoto2 | [] | + gprof | [] | + gramadoir | | + grep | [] [] [] | + grub | [] | + gsasl | | + gss | | + gst-plugins-bad | [] | + gst-plugins-base | [] [] [] | + gst-plugins-good | [] [] [] | + gst-plugins-ugly | [] [] [] | + gstreamer | [] [] [] [] | + gtick | [] | + gtkam | [] [] | + gtkspell | [] [] [] [] [] | + guix | | + guix-packages | | + gutenprint | [] | + hello | [] | + help2man | | + help2man-texi | | + hylafax | | + idutils | | + iso_15924 | [] | + iso_3166 | [] [] [] [] [] [] [] [] [] [] | + iso_3166_2 | | + iso_4217 | [] | + iso_639 | [] [] [] [] [] [] [] [] [] | + iso_639_3 | [] [] | + iso_639_5 | | + jwhois | | + kbd | [] | + klavaro | [] [] [] [] [] | + latrine | | + ld | [] | + leafpad | [] [] [] [] | + libc | [] [] [] | + libexif | () | + libextractor | | + libgnutls | [] | + libgphoto2 | [] | + libgphoto2_port | [] | + libgsasl | | + libiconv | [] [] | + libidn | [] | + liferea | [] [] [] [] | + lilypond | [] [] | + lordsawar | [] | + lprng | | + lynx | [] [] | + m4 | [] | + mailfromd | | + mailutils | | + make | [] | + man-db | [] [] | + man-db-manpages | | + midi-instruments | [] [] [] | + minicom | [] | + mkisofs | [] | + myserver | [] | + nano | [] [] [] | + opcodes | | + parted | [] | + pies | | + popt | [] | + procps-ng | | + procps-ng-man | | + psmisc | [] | + pspp | [] | + pushover | [] | + pwdutils | | + pyspread | | + radius | [] | + recode | [] [] [] | + recutils | | + rpm | | + rush | | + sarg | | + sed | [] [] [] | + sharutils | [] | + shishi | | + skribilo | | + solfege | [] | + solfege-manual | | + spotmachine | | + sudo | [] [] | + sudoers | [] [] | + sysstat | [] | + tar | [] [] [] | + texinfo | [] [] | + texinfo_document | [] | + tigervnc | [] | + tin | | + tin-man | | + tracgoogleappsa... | | + trader | | + util-linux | [] | + ve | | + vice | | + vmm | | + vorbis-tools | [] | + wastesedge | | + wcd | | + wcd-man | | + wdiff | [] [] | + wget | [] | + wyslij-po | | + xboard | | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] | + +---------------------------------------------------+ + af am an ar as ast az be bg bn bn_IN bs ca crh cs + 4 0 2 5 3 11 0 8 23 3 3 1 54 4 73 + + da de el en en_GB en_ZA eo es et eu fa fi fr + +--------------------------------------------------+ + a2ps | [] [] [] [] [] [] [] [] [] | + aegis | [] [] [] [] | + anubis | [] [] [] [] [] | + aspell | [] [] [] [] [] [] [] | + bash | [] [] [] | + bfd | [] [] [] [] | + binutils | [] [] [] | + bison | [] [] [] [] [] [] [] [] | + bison-runtime | [] [] [] [] [] [] [] [] | + buzztrax | [] [] [] [] | + ccd2cue | [] [] [] | + ccide | [] [] [] [] [] [] | + cflow | [] [] [] [] [] | + clisp | [] [] [] [] [] | + coreutils | [] [] [] [] [] | + cpio | [] [] [] [] [] | + cppi | [] [] [] [] [] | + cpplib | [] [] [] [] [] [] | + cryptsetup | [] [] [] [] [] | + datamash | [] [] [] [] | + denemo | [] | + dfarc | [] [] [] [] [] [] | + dialog | [] [] [] [] [] [] [] [] [] | + dico | [] [] [] [] | + diffutils | [] [] [] [] [] [] | + dink | [] [] [] [] [] [] | + direvent | [] [] [] [] | + doodle | [] [] [] [] | + dos2unix | [] [] [] [] [] | + dos2unix-man | [] [] [] | + e2fsprogs | [] [] [] [] [] | + enscript | [] [] [] [] [] [] | + exif | [] [] [] [] [] [] | + fetchmail | [] () [] [] [] [] [] | + findutils | [] [] [] [] [] [] [] [] | + flex | [] [] [] [] [] [] | + freedink | [] [] [] [] [] [] [] [] | + fusionforge | [] [] [] | + gas | [] [] [] | + gawk | [] [] [] [] [] | + gcal | [] [] [] [] | + gcc | [] [] | + gdbm | [] [] [] [] [] | + gettext-examples | [] [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] | + gettext-tools | [] [] [] [] [] | + gjay | [] [] [] [] | + glunarclock | [] [] [] [] [] | + gnubiff | () [] [] () | + gnubik | [] [] [] [] [] | + gnucash | [] () () () () () () | + gnuchess | [] [] [] [] | + gnulib | [] [] [] [] [] [] [] | + gnunet | [] | + gnunet-gtk | [] | + gold | [] [] [] | + gphoto2 | [] () [] [] | + gprof | [] [] [] [] [] [] | + gramadoir | [] [] [] [] [] | + grep | [] [] [] [] [] [] [] | + grub | [] [] [] [] [] | + gsasl | [] [] [] [] [] | + gss | [] [] [] [] [] | + gst-plugins-bad | [] [] | + gst-plugins-base | [] [] [] [] [] [] | + gst-plugins-good | [] [] [] [] [] [] [] | + gst-plugins-ugly | [] [] [] [] [] [] [] [] | + gstreamer | [] [] [] [] [] [] [] | + gtick | [] () [] [] [] | + gtkam | [] () [] [] [] [] | + gtkspell | [] [] [] [] [] [] [] [] | + guix | [] [] | + guix-packages | | + gutenprint | [] [] [] [] | + hello | [] [] [] [] [] [] [] [] | + help2man | [] [] [] [] [] [] [] | + help2man-texi | [] [] [] | + hylafax | [] [] | + idutils | [] [] [] [] [] | + iso_15924 | [] () [] [] () [] () | + iso_3166 | [] () [] [] [] [] () [] () | + iso_3166_2 | [] () () () | + iso_4217 | [] () [] [] [] () [] () | + iso_639 | [] () [] [] () [] () | + iso_639_3 | () () () | + iso_639_5 | () () () | + jwhois | [] [] [] [] [] | + kbd | [] [] [] [] [] [] | + klavaro | [] [] [] [] [] [] [] | + latrine | [] () [] [] | + ld | [] [] [] [] | + leafpad | [] [] [] [] [] [] [] [] | + libc | [] [] [] [] [] | + libexif | [] [] () [] [] | + libextractor | [] | + libgnutls | [] [] [] [] | + libgphoto2 | [] () [] | + libgphoto2_port | [] () [] [] [] [] | + libgsasl | [] [] [] [] [] | + libiconv | [] [] [] [] [] [] [] | + libidn | [] [] [] [] [] | + liferea | [] () [] [] [] [] [] | + lilypond | [] [] [] [] [] [] | + lordsawar | [] [] | + lprng | | + lynx | [] [] [] [] [] [] | + m4 | [] [] [] [] [] [] | + mailfromd | [] | + mailutils | [] [] [] [] | + make | [] [] [] [] [] | + man-db | [] [] [] [] | + man-db-manpages | [] [] | + midi-instruments | [] [] [] [] [] [] [] [] [] | + minicom | [] [] [] [] [] | + mkisofs | [] [] [] | + myserver | [] [] [] [] | + nano | [] [] [] [] [] [] [] | + opcodes | [] [] [] [] [] | + parted | [] [] [] | + pies | [] | + popt | [] [] [] [] [] [] | + procps-ng | [] [] | + procps-ng-man | [] [] | + psmisc | [] [] [] [] [] [] [] | + pspp | [] [] [] | + pushover | () [] [] [] | + pwdutils | [] [] [] | + pyspread | [] [] [] | + radius | [] [] | + recode | [] [] [] [] [] [] [] | + recutils | [] [] [] [] | + rpm | [] [] [] [] [] | + rush | [] [] [] | + sarg | [] [] | + sed | [] [] [] [] [] [] [] [] | + sharutils | [] [] [] [] | + shishi | [] [] [] | + skribilo | [] [] | + solfege | [] [] [] [] [] [] [] [] | + solfege-manual | [] [] [] [] [] | + spotmachine | [] [] [] [] | + sudo | [] [] [] [] [] [] | + sudoers | [] [] [] [] [] [] | + sysstat | [] [] [] [] [] [] | + tar | [] [] [] [] [] [] [] | + texinfo | [] [] [] [] [] | + texinfo_document | [] [] [] [] | + tigervnc | [] [] [] [] [] [] | + tin | [] [] [] [] | + tin-man | [] | + tracgoogleappsa... | [] [] [] [] [] | + trader | [] [] [] [] [] [] | + util-linux | [] [] [] [] | + ve | [] [] [] [] [] | + vice | () () () | + vmm | [] [] | + vorbis-tools | [] [] [] [] | + wastesedge | [] () | + wcd | [] [] [] [] | + wcd-man | [] | + wdiff | [] [] [] [] [] [] [] | + wget | [] [] [] [] [] [] | + wyslij-po | [] [] [] [] | + xboard | [] [] [] [] | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] [] [] [] [] | + +--------------------------------------------------+ + da de el en en_GB en_ZA eo es et eu fa fi fr + 120 130 32 1 6 0 94 95 22 13 4 103 136 + + ga gd gl gu he hi hr hu hy ia id is it ja ka kk + +-------------------------------------------------+ + a2ps | [] [] [] [] | + aegis | [] | + anubis | [] [] [] [] | + aspell | [] [] [] [] [] | + bash | [] [] [] | + bfd | [] [] | + binutils | [] [] [] | + bison | [] | + bison-runtime | [] [] [] [] [] [] [] [] | + buzztrax | | + ccd2cue | [] | + ccide | [] [] | + cflow | [] [] [] | + clisp | | + coreutils | [] [] [] | + cpio | [] [] [] [] [] [] | + cppi | [] [] [] [] [] | + cpplib | [] [] | + cryptsetup | [] | + datamash | | + denemo | [] | + dfarc | [] [] [] | + dialog | [] [] [] [] [] [] [] [] [] [] | + dico | | + diffutils | [] [] [] [] | + dink | [] | + direvent | [] | + doodle | [] [] | + dos2unix | [] [] | + dos2unix-man | | + e2fsprogs | [] | + enscript | [] [] [] | + exif | [] [] [] [] [] [] | + fetchmail | [] [] [] | + findutils | [] [] [] [] [] [] [] | + flex | [] | + freedink | [] [] [] [] | + fusionforge | | + gas | [] | + gawk | [] () [] | + gcal | | + gcc | | + gdbm | | + gettext-examples | [] [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] [] | + gettext-tools | [] [] [] | + gjay | [] | + glunarclock | [] [] [] [] [] [] | + gnubiff | [] [] () | + gnubik | [] [] [] | + gnucash | () () () () () [] | + gnuchess | | + gnulib | [] [] [] [] [] | + gnunet | | + gnunet-gtk | | + gold | [] [] | + gphoto2 | [] [] [] [] | + gprof | [] [] [] [] | + gramadoir | [] [] [] | + grep | [] [] [] [] [] [] [] | + grub | [] [] [] | + gsasl | [] [] [] [] [] | + gss | [] [] [] [] [] | + gst-plugins-bad | [] | + gst-plugins-base | [] [] [] [] | + gst-plugins-good | [] [] [] [] [] [] | + gst-plugins-ugly | [] [] [] [] [] [] | + gstreamer | [] [] [] [] [] | + gtick | [] [] [] [] [] | + gtkam | [] [] [] [] [] | + gtkspell | [] [] [] [] [] [] [] [] [] [] | + guix | | + guix-packages | | + gutenprint | [] [] [] | + hello | [] [] [] [] [] | + help2man | [] [] [] | + help2man-texi | | + hylafax | [] | + idutils | [] [] | + iso_15924 | [] [] [] [] [] [] | + iso_3166 | [] [] [] [] [] [] [] [] [] [] [] [] [] | + iso_3166_2 | [] [] | + iso_4217 | [] [] [] [] [] [] | + iso_639 | [] [] [] [] [] [] [] [] [] | + iso_639_3 | [] [] | + iso_639_5 | | + jwhois | [] [] [] [] | + kbd | [] [] [] | + klavaro | [] [] [] [] [] | + latrine | [] | + ld | [] [] [] [] | + leafpad | [] [] [] [] [] [] [] () | + libc | [] [] [] [] [] | + libexif | [] | + libextractor | | + libgnutls | [] | + libgphoto2 | [] [] | + libgphoto2_port | [] [] | + libgsasl | [] [] [] [] | + libiconv | [] [] [] [] [] [] [] | + libidn | [] [] [] [] | + liferea | [] [] [] [] [] | + lilypond | [] | + lordsawar | | + lprng | [] | + lynx | [] [] [] [] | + m4 | [] [] [] [] [] | + mailfromd | | + mailutils | | + make | [] [] [] [] | + man-db | [] [] | + man-db-manpages | [] [] | + midi-instruments | [] [] [] [] [] [] [] [] [] | + minicom | [] [] [] | + mkisofs | [] [] | + myserver | [] | + nano | [] [] [] [] [] | + opcodes | [] [] [] | + parted | [] [] [] [] | + pies | | + popt | [] [] [] [] [] [] [] [] [] [] | + procps-ng | | + procps-ng-man | | + psmisc | [] [] [] [] | + pspp | [] [] | + pushover | [] | + pwdutils | [] | + pyspread | | + radius | [] | + recode | [] [] [] [] [] [] [] | + recutils | | + rpm | [] | + rush | [] | + sarg | | + sed | [] [] [] [] [] [] [] | + sharutils | | + shishi | | + skribilo | [] | + solfege | [] [] | + solfege-manual | | + spotmachine | | + sudo | [] [] [] [] | + sudoers | [] [] [] | + sysstat | [] [] [] | + tar | [] [] [] [] [] [] | + texinfo | [] [] [] | + texinfo_document | [] [] | + tigervnc | | + tin | | + tin-man | | + tracgoogleappsa... | [] [] [] [] | + trader | [] [] | + util-linux | [] | + ve | [] | + vice | () () | + vmm | | + vorbis-tools | [] [] | + wastesedge | () | + wcd | | + wcd-man | | + wdiff | [] [] [] | + wget | [] [] [] | + wyslij-po | [] [] [] | + xboard | | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] [] [] | + +-------------------------------------------------+ + ga gd gl gu he hi hr hu hy ia id is it ja ka kk + 35 2 47 4 8 2 53 69 2 6 80 11 86 58 0 3 + + kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl + +--------------------------------------------------+ + a2ps | [] [] | + aegis | [] | + anubis | [] [] [] | + aspell | [] [] | + bash | [] [] | + bfd | | + binutils | | + bison | [] | + bison-runtime | [] [] [] [] [] [] | + buzztrax | | + ccd2cue | | + ccide | [] [] | + cflow | [] | + clisp | [] | + coreutils | [] [] | + cpio | [] | + cppi | | + cpplib | [] | + cryptsetup | [] | + datamash | [] [] | + denemo | | + dfarc | [] [] | + dialog | [] [] [] [] [] [] | + dico | | + diffutils | [] [] [] | + dink | [] | + direvent | [] | + doodle | [] | + dos2unix | [] [] | + dos2unix-man | [] | + e2fsprogs | [] | + enscript | [] | + exif | [] [] | + fetchmail | [] | + findutils | [] [] | + flex | [] | + freedink | [] [] | + fusionforge | | + gas | | + gawk | [] | + gcal | | + gcc | | + gdbm | | + gettext-examples | [] [] [] [] [] [] | + gettext-runtime | [] [] | + gettext-tools | [] | + gjay | | + glunarclock | [] [] | + gnubiff | [] | + gnubik | [] [] | + gnucash | () () () () () () () [] | + gnuchess | [] [] | + gnulib | [] | + gnunet | | + gnunet-gtk | | + gold | | + gphoto2 | [] | + gprof | [] [] | + gramadoir | [] | + grep | [] [] | + grub | [] [] [] | + gsasl | [] | + gss | | + gst-plugins-bad | [] [] | + gst-plugins-base | [] [] [] | + gst-plugins-good | [] [] [] [] | + gst-plugins-ugly | [] [] [] [] [] | + gstreamer | [] [] | + gtick | [] | + gtkam | [] [] | + gtkspell | [] [] [] [] [] [] [] | + guix | | + guix-packages | | + gutenprint | [] | + hello | [] [] [] | + help2man | [] | + help2man-texi | | + hylafax | [] | + idutils | [] | + iso_15924 | () [] [] | + iso_3166 | [] [] [] () [] [] [] [] [] [] | + iso_3166_2 | () [] | + iso_4217 | () [] [] [] | + iso_639 | [] [] () [] [] [] [] | + iso_639_3 | [] () [] | + iso_639_5 | () | + jwhois | [] [] | + kbd | [] | + klavaro | [] [] | + latrine | | + ld | | + leafpad | [] [] [] [] [] | + libc | [] [] | + libexif | [] | + libextractor | [] | + libgnutls | [] [] | + libgphoto2 | [] | + libgphoto2_port | [] | + libgsasl | [] | + libiconv | [] [] | + libidn | [] | + liferea | [] [] [] | + lilypond | [] | + lordsawar | | + lprng | | + lynx | [] | + m4 | [] | + mailfromd | | + mailutils | | + make | [] [] | + man-db | [] | + man-db-manpages | [] | + midi-instruments | [] [] [] [] [] [] [] | + minicom | [] | + mkisofs | [] | + myserver | | + nano | [] [] [] | + opcodes | [] | + parted | [] | + pies | | + popt | [] [] [] [] [] | + procps-ng | | + procps-ng-man | | + psmisc | [] | + pspp | [] [] | + pushover | | + pwdutils | [] | + pyspread | | + radius | [] | + recode | [] [] | + recutils | [] | + rpm | [] | + rush | [] | + sarg | | + sed | [] [] | + sharutils | [] | + shishi | | + skribilo | | + solfege | [] [] | + solfege-manual | [] | + spotmachine | [] | + sudo | [] [] | + sudoers | [] [] | + sysstat | [] [] | + tar | [] [] [] | + texinfo | [] | + texinfo_document | [] | + tigervnc | [] | + tin | | + tin-man | | + tracgoogleappsa... | [] [] [] | + trader | [] | + util-linux | [] | + ve | [] | + vice | [] | + vmm | [] | + vorbis-tools | [] | + wastesedge | [] | + wcd | [] | + wcd-man | [] | + wdiff | [] | + wget | [] [] | + wyslij-po | [] | + xboard | [] | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] | + +--------------------------------------------------+ + kn ko ku ky lg lt lv mk ml mn mr ms mt nb ne nl + 5 11 4 6 0 13 22 3 3 3 4 11 2 40 1 124 + + nn or os pa pl ps pt pt_BR ro ru rw sk sl sq sr + +--------------------------------------------------+ + a2ps | [] [] [] [] [] [] [] | + aegis | [] [] | + anubis | [] [] [] | + aspell | [] [] [] [] [] [] [] | + bash | [] [] [] [] [] | + bfd | [] | + binutils | [] [] | + bison | [] [] [] | + bison-runtime | [] [] [] [] [] [] [] [] | + buzztrax | | + ccd2cue | [] | + ccide | [] [] [] | + cflow | [] [] | + clisp | [] | + coreutils | [] [] [] [] | + cpio | [] [] [] | + cppi | [] [] [] | + cpplib | [] [] [] | + cryptsetup | [] [] | + datamash | [] [] | + denemo | | + dfarc | [] [] [] | + dialog | [] [] [] [] [] [] [] | + dico | [] | + diffutils | [] [] | + dink | | + direvent | [] [] | + doodle | [] [] | + dos2unix | [] [] [] [] | + dos2unix-man | [] [] | + e2fsprogs | [] | + enscript | [] [] [] [] [] [] | + exif | [] [] [] [] [] [] | + fetchmail | [] [] [] | + findutils | [] [] [] [] [] | + flex | [] [] [] [] [] | + freedink | [] [] [] [] [] | + fusionforge | | + gas | | + gawk | [] | + gcal | | + gcc | | + gdbm | [] [] [] | + gettext-examples | [] [] [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] [] [] [] | + gettext-tools | [] [] [] [] [] [] [] | + gjay | [] | + glunarclock | [] [] [] [] [] [] | + gnubiff | [] | + gnubik | [] [] [] [] | + gnucash | () () () () [] | + gnuchess | [] [] | + gnulib | [] [] [] [] [] | + gnunet | | + gnunet-gtk | | + gold | | + gphoto2 | [] [] [] [] [] | + gprof | [] [] [] [] | + gramadoir | [] [] | + grep | [] [] [] [] [] [] | + grub | [] [] [] [] [] | + gsasl | [] [] [] | + gss | [] [] [] [] | + gst-plugins-bad | [] [] [] [] | + gst-plugins-base | [] [] [] [] [] [] | + gst-plugins-good | [] [] [] [] [] [] [] | + gst-plugins-ugly | [] [] [] [] [] [] [] | + gstreamer | [] [] [] [] [] [] [] | + gtick | [] [] [] [] [] | + gtkam | [] [] [] [] [] [] | + gtkspell | [] [] [] [] [] [] [] [] [] | + guix | | + guix-packages | | + gutenprint | [] [] | + hello | [] [] [] [] [] [] | + help2man | [] [] [] [] | + help2man-texi | [] | + hylafax | | + idutils | [] [] [] | + iso_15924 | [] () [] [] [] [] | + iso_3166 | [] [] [] [] () [] [] [] [] [] [] [] [] | + iso_3166_2 | [] () [] | + iso_4217 | [] [] () [] [] [] [] [] | + iso_639 | [] [] [] () [] [] [] [] [] [] | + iso_639_3 | [] () | + iso_639_5 | () [] | + jwhois | [] [] [] [] | + kbd | [] [] | + klavaro | [] [] [] [] [] | + latrine | [] | + ld | | + leafpad | [] [] [] [] [] [] [] [] [] | + libc | [] [] [] | + libexif | [] () [] | + libextractor | [] | + libgnutls | [] | + libgphoto2 | [] | + libgphoto2_port | [] [] [] [] [] | + libgsasl | [] [] [] [] | + libiconv | [] [] [] [] [] | + libidn | [] [] [] | + liferea | [] [] [] [] () [] [] | + lilypond | | + lordsawar | | + lprng | [] | + lynx | [] [] | + m4 | [] [] [] [] [] | + mailfromd | [] | + mailutils | [] | + make | [] [] [] | + man-db | [] [] [] | + man-db-manpages | [] [] [] | + midi-instruments | [] [] [] [] [] [] [] [] | + minicom | [] [] [] [] | + mkisofs | [] [] [] | + myserver | [] [] | + nano | [] [] [] [] [] [] | + opcodes | | + parted | [] [] [] [] [] [] | + pies | [] | + popt | [] [] [] [] [] [] | + procps-ng | [] | + procps-ng-man | [] | + psmisc | [] [] [] [] | + pspp | [] [] | + pushover | | + pwdutils | [] | + pyspread | [] [] | + radius | [] [] | + recode | [] [] [] [] [] [] [] [] | + recutils | [] | + rpm | [] | + rush | [] [] [] | + sarg | [] [] | + sed | [] [] [] [] [] [] [] [] | + sharutils | [] [] [] | + shishi | [] [] | + skribilo | | + solfege | [] [] [] | + solfege-manual | [] [] | + spotmachine | [] [] | + sudo | [] [] [] [] [] [] | + sudoers | [] [] [] [] | + sysstat | [] [] [] [] [] | + tar | [] [] [] [] [] | + texinfo | [] [] [] | + texinfo_document | [] [] | + tigervnc | [] | + tin | [] | + tin-man | | + tracgoogleappsa... | [] [] [] [] | + trader | [] | + util-linux | [] [] | + ve | [] [] [] | + vice | | + vmm | | + vorbis-tools | [] [] [] | + wastesedge | | + wcd | | + wcd-man | | + wdiff | [] [] [] [] [] | + wget | [] [] [] [] | + wyslij-po | [] [] [] [] | + xboard | [] [] [] | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] [] | + +--------------------------------------------------+ + nn or os pa pl ps pt pt_BR ro ru rw sk sl sq sr + 7 3 1 6 114 1 12 83 32 80 3 38 45 7 94 + + sv sw ta te tg th tr uk ur vi wa wo zh_CN zh_HK + +---------------------------------------------------+ + a2ps | [] [] [] [] [] | + aegis | [] | + anubis | [] [] [] [] | + aspell | [] [] [] [] | + bash | [] [] [] [] | + bfd | [] [] | + binutils | [] [] [] | + bison | [] [] [] [] | + bison-runtime | [] [] [] [] [] [] | + buzztrax | [] [] [] | + ccd2cue | [] [] [] | + ccide | [] [] [] [] | + cflow | [] [] [] [] | + clisp | | + coreutils | [] [] [] [] | + cpio | [] [] [] [] [] | + cppi | [] [] [] [] | + cpplib | [] [] [] [] [] | + cryptsetup | [] [] [] | + datamash | [] [] [] | + denemo | | + dfarc | [] | + dialog | [] [] [] [] [] [] | + dico | [] | + diffutils | [] [] [] [] [] | + dink | | + direvent | [] [] | + doodle | [] [] | + dos2unix | [] [] [] [] | + dos2unix-man | [] [] [] | + e2fsprogs | [] [] [] [] | + enscript | [] [] [] [] | + exif | [] [] [] [] [] | + fetchmail | [] [] [] [] | + findutils | [] [] [] [] [] | + flex | [] [] [] [] | + freedink | [] [] | + fusionforge | | + gas | [] | + gawk | [] [] | + gcal | [] [] | + gcc | [] [] | + gdbm | [] [] | + gettext-examples | [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] | + gettext-tools | [] [] [] [] [] | + gjay | [] [] | + glunarclock | [] [] [] [] | + gnubiff | [] [] | + gnubik | [] [] [] [] | + gnucash | () () () () [] | + gnuchess | [] [] | + gnulib | [] [] [] [] | + gnunet | | + gnunet-gtk | | + gold | [] [] | + gphoto2 | [] [] [] [] | + gprof | [] [] [] [] | + gramadoir | [] [] [] | + grep | [] [] [] [] [] | + grub | [] [] [] [] | + gsasl | [] [] [] [] | + gss | [] [] [] | + gst-plugins-bad | [] [] [] [] | + gst-plugins-base | [] [] [] [] [] | + gst-plugins-good | [] [] [] [] [] | + gst-plugins-ugly | [] [] [] [] [] | + gstreamer | [] [] [] [] [] | + gtick | [] [] [] | + gtkam | [] [] [] [] | + gtkspell | [] [] [] [] [] [] [] [] | + guix | [] | + guix-packages | | + gutenprint | [] [] [] [] | + hello | [] [] [] [] [] [] | + help2man | [] [] [] | + help2man-texi | [] | + hylafax | [] | + idutils | [] [] [] | + iso_15924 | [] () [] [] () [] | + iso_3166 | [] [] () [] [] () [] [] [] | + iso_3166_2 | () [] [] () [] | + iso_4217 | [] () [] [] () [] [] | + iso_639 | [] [] [] () [] [] () [] [] [] | + iso_639_3 | [] () [] [] () | + iso_639_5 | () [] () | + jwhois | [] [] [] [] | + kbd | [] [] [] | + klavaro | [] [] [] [] [] [] | + latrine | [] [] | + ld | [] [] [] [] [] | + leafpad | [] [] [] [] [] [] | + libc | [] [] [] [] [] | + libexif | [] () | + libextractor | [] [] | + libgnutls | [] [] [] [] | + libgphoto2 | [] [] | + libgphoto2_port | [] [] [] [] | + libgsasl | [] [] [] [] | + libiconv | [] [] [] [] [] | + libidn | () [] [] [] | + liferea | [] [] [] [] [] | + lilypond | [] | + lordsawar | | + lprng | [] | + lynx | [] [] [] [] | + m4 | [] [] [] | + mailfromd | [] [] | + mailutils | [] | + make | [] [] [] [] | + man-db | [] [] | + man-db-manpages | [] | + midi-instruments | [] [] [] [] [] [] | + minicom | [] [] | + mkisofs | [] [] [] | + myserver | [] | + nano | [] [] [] [] | + opcodes | [] [] [] | + parted | [] [] [] [] [] | + pies | [] [] | + popt | [] [] [] [] [] [] [] | + procps-ng | [] [] | + procps-ng-man | [] | + psmisc | [] [] [] [] | + pspp | [] [] [] | + pushover | [] | + pwdutils | [] [] | + pyspread | [] | + radius | [] [] | + recode | [] [] [] [] | + recutils | [] [] [] | + rpm | [] [] [] [] | + rush | [] [] | + sarg | | + sed | [] [] [] [] [] | + sharutils | [] [] [] | + shishi | [] [] | + skribilo | [] | + solfege | [] [] [] | + solfege-manual | [] | + spotmachine | [] [] [] | + sudo | [] [] [] [] | + sudoers | [] [] [] | + sysstat | [] [] [] [] [] | + tar | [] [] [] [] [] | + texinfo | [] [] [] | + texinfo_document | [] | + tigervnc | [] [] | + tin | [] | + tin-man | | + tracgoogleappsa... | [] [] [] [] [] | + trader | [] | + util-linux | [] [] [] | + ve | [] [] [] [] | + vice | () () | + vmm | | + vorbis-tools | [] [] | + wastesedge | | + wcd | [] [] [] | + wcd-man | [] | + wdiff | [] [] [] [] | + wget | [] [] [] | + wyslij-po | [] [] | + xboard | [] | + xdg-user-dirs | [] [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] [] | + +---------------------------------------------------+ + sv sw ta te tg th tr uk ur vi wa wo zh_CN zh_HK + 91 1 4 3 0 13 50 113 1 126 7 1 95 7 + + zh_TW + +-------+ + a2ps | | 30 + aegis | | 9 + anubis | | 19 + aspell | | 28 + bash | [] | 21 + bfd | | 9 + binutils | | 12 + bison | [] | 18 + bison-runtime | [] | 38 + buzztrax | | 8 + ccd2cue | | 8 + ccide | | 17 + cflow | | 15 + clisp | | 10 + coreutils | | 20 + cpio | | 20 + cppi | | 17 + cpplib | [] | 19 + cryptsetup | | 13 + datamash | | 11 + denemo | | 4 + dfarc | | 16 + dialog | [] | 42 + dico | | 6 + diffutils | | 21 + dink | | 9 + direvent | | 10 + doodle | | 12 + dos2unix | [] | 18 + dos2unix-man | | 9 + e2fsprogs | | 14 + enscript | | 21 + exif | | 26 + fetchmail | | 19 + findutils | | 28 + flex | [] | 19 + freedink | | 23 + fusionforge | | 3 + gas | | 5 + gawk | | 12 + gcal | | 7 + gcc | | 4 + gdbm | | 10 + gettext-examples | [] | 40 + gettext-runtime | [] | 34 + gettext-tools | [] | 24 + gjay | | 8 + glunarclock | [] | 27 + gnubiff | | 9 + gnubik | | 19 + gnucash | () | 7 + gnuchess | | 10 + gnulib | | 23 + gnunet | | 1 + gnunet-gtk | | 1 + gold | | 7 + gphoto2 | [] | 19 + gprof | | 21 + gramadoir | | 14 + grep | [] | 31 + grub | | 21 + gsasl | [] | 19 + gss | | 17 + gst-plugins-bad | | 14 + gst-plugins-base | | 27 + gst-plugins-good | | 32 + gst-plugins-ugly | | 34 + gstreamer | [] | 31 + gtick | | 19 + gtkam | | 24 + gtkspell | [] | 48 + guix | | 3 + guix-packages | | 0 + gutenprint | | 15 + hello | [] | 30 + help2man | | 18 + help2man-texi | | 5 + hylafax | | 5 + idutils | | 14 + iso_15924 | [] | 23 + iso_3166 | [] | 58 + iso_3166_2 | | 9 + iso_4217 | [] | 28 + iso_639 | [] | 46 + iso_639_3 | | 10 + iso_639_5 | | 2 + jwhois | [] | 20 + kbd | | 16 + klavaro | | 30 + latrine | | 7 + ld | [] | 15 + leafpad | [] | 40 + libc | [] | 24 + libexif | | 9 + libextractor | | 5 + libgnutls | | 13 + libgphoto2 | | 9 + libgphoto2_port | [] | 19 + libgsasl | | 18 + libiconv | [] | 29 + libidn | | 17 + liferea | | 29 + lilypond | | 11 + lordsawar | | 3 + lprng | | 3 + lynx | | 19 + m4 | [] | 22 + mailfromd | | 4 + mailutils | | 6 + make | | 19 + man-db | | 14 + man-db-manpages | | 9 + midi-instruments | [] | 43 + minicom | [] | 17 + mkisofs | | 13 + myserver | | 9 + nano | [] | 29 + opcodes | | 12 + parted | [] | 21 + pies | | 4 + popt | [] | 36 + procps-ng | | 5 + procps-ng-man | | 4 + psmisc | [] | 22 + pspp | | 13 + pushover | | 6 + pwdutils | | 8 + pyspread | | 6 + radius | | 9 + recode | | 31 + recutils | | 9 + rpm | [] | 13 + rush | | 10 + sarg | | 4 + sed | [] | 34 + sharutils | | 12 + shishi | | 7 + skribilo | | 4 + solfege | | 19 + solfege-manual | | 9 + spotmachine | | 10 + sudo | | 24 + sudoers | | 20 + sysstat | | 22 + tar | [] | 30 + texinfo | | 17 + texinfo_document | | 11 + tigervnc | | 11 + tin | [] | 7 + tin-man | | 1 + tracgoogleappsa... | [] | 22 + trader | | 11 + util-linux | | 12 + ve | | 14 + vice | | 1 + vmm | | 3 + vorbis-tools | | 13 + wastesedge | | 2 + wcd | | 8 + wcd-man | | 3 + wdiff | [] | 23 + wget | | 19 + wyslij-po | | 14 + xboard | | 9 + xdg-user-dirs | [] | 68 + xkeyboard-config | [] | 27 + +-------+ + 90 teams zh_TW + 166 domains 42 2748 + + 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 Jun 2014 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://translationproject.org/extra/matrix.html'. + +1.5 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 Lesser 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 +'coordinator@translationproject.org' to make the '.pot' files available +to the translation teams. diff --git a/AUTHORS b/AUTHORS new file mode 100644 index 0000000..1e34a8d --- /dev/null +++ b/AUTHORS @@ -0,0 +1,7 @@ +Johan Dahlin +Mikael Hallendal +Richard Hult +Ross Burton +Aleksander Morgado +Frédéric Péters +Sébastien Wilmet diff --git a/COPYING b/COPYING new file mode 100644 index 0000000..d60c31a --- /dev/null +++ b/COPYING @@ -0,0 +1,340 @@ + 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 + + 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) + + 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) year 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. diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..5e2f380 --- /dev/null +++ b/Makefile.am @@ -0,0 +1,18 @@ +SUBDIRS = data plugins po help src unit-tests docs + +AM_DISTCHECK_CONFIGURE_FLAGS = \ + --enable-gtk-doc \ + --enable-introspection \ + --enable-appstream-util + +EXTRA_DIST = devhelp.doap + +MAINTAINERCLEANFILES = \ + $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \ + $(GITIGNORE_MAINTAINERCLEANFILES_MAKEFILE_IN) \ + $(GITIGNORE_MAINTAINERCLEANFILES_M4_GETTEXT) \ + $(GITIGNORE_MAINTAINERCLEANFILES_M4_LIBTOOL) \ + gtk-doc.make \ + py-compile + +-include $(top_srcdir)/git.mk diff --git a/Makefile.in b/Makefile.in new file mode 100644 index 0000000..03dd0b7 --- /dev/null +++ b/Makefile.in @@ -0,0 +1,912 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = . +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(top_srcdir)/configure \ + $(am__configure_deps) $(am__DIST_COMMON) +am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \ + configure.lineno config.status.lineno +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + cscope distdir dist dist-all distcheck +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \ + $(LISP)config.h.in +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +CSCOPE = cscope +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/config.h.in \ + ABOUT-NLS AUTHORS COPYING NEWS README compile config.guess \ + config.rpath config.sub install-sh ltmain.sh missing +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +distdir = $(PACKAGE)-$(VERSION) +top_distdir = $(distdir) +am__remove_distdir = \ + if test -d "$(distdir)"; then \ + find "$(distdir)" -type d ! -perm -200 -exec chmod u+w {} ';' \ + && rm -rf "$(distdir)" \ + || { sleep 5 && rm -rf "$(distdir)"; }; \ + else :; fi +am__post_remove_distdir = $(am__remove_distdir) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +GZIP_ENV = --best +DIST_ARCHIVES = $(distdir).tar.xz +DIST_TARGETS = dist-xz +distuninstallcheck_listfiles = find . -type f -print +am__distuninstallcheck_listfiles = $(distuninstallcheck_listfiles) \ + | sed 's|^\./|$(prefix)/|' | grep -v '$(infodir)/dir$$' +distcleancheck_listfiles = find . -type f -print +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = data plugins po help src unit-tests docs +AM_DISTCHECK_CONFIGURE_FLAGS = \ + --enable-gtk-doc \ + --enable-introspection \ + --enable-appstream-util + +EXTRA_DIST = devhelp.doap +MAINTAINERCLEANFILES = \ + $(GITIGNORE_MAINTAINERCLEANFILES_TOPLEVEL) \ + $(GITIGNORE_MAINTAINERCLEANFILES_MAKEFILE_IN) \ + $(GITIGNORE_MAINTAINERCLEANFILES_M4_GETTEXT) \ + $(GITIGNORE_MAINTAINERCLEANFILES_M4_LIBTOOL) \ + gtk-doc.make \ + py-compile + +all: config.h + $(MAKE) $(AM_MAKEFLAGS) all-recursive + +.SUFFIXES: +am--refresh: Makefile + @: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ + && exit 0; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign 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) + $(am__cd) $(srcdir) && $(AUTOCONF) +$(ACLOCAL_M4): $(am__aclocal_m4_deps) + $(am__cd) $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) +$(am__aclocal_m4_deps): + +config.h: stamp-h1 + @test -f $@ || rm -f stamp-h1 + @test -f $@ || $(MAKE) $(AM_MAKEFLAGS) stamp-h1 + +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) + ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) + rm -f stamp-h1 + touch $@ + +distclean-hdr: + -rm -f config.h stamp-h1 + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +distclean-libtool: + -rm -f libtool config.lt + +# 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. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + 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; \ + ($(am__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" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + 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 || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscope: cscope.files + test ! -s cscope.files \ + || $(CSCOPE) -b -q $(AM_CSCOPEFLAGS) $(CSCOPEFLAGS) -i cscope.files $(CSCOPE_ARGS) +clean-cscope: + -rm -f cscope.files +cscope.files: clean-cscope cscopelist +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + -rm -f cscope.out cscope.in.out cscope.po.out cscope.files + +distdir: $(DISTFILES) + $(am__remove_distdir) + test -d "$(distdir)" || mkdir "$(distdir)" + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done + -test -n "$(am__skip_mode_fix)" \ + || find "$(distdir)" -type d ! -perm -755 \ + -exec chmod u+rwx,go+rx {} \; -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 $(install_sh) -c -m a+r {} {} \; \ + || chmod -R a+r "$(distdir)" +dist-gzip: distdir + tardir=$(distdir) && $(am__tar) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).tar.gz + $(am__post_remove_distdir) + +dist-bzip2: distdir + tardir=$(distdir) && $(am__tar) | BZIP2=$${BZIP2--9} bzip2 -c >$(distdir).tar.bz2 + $(am__post_remove_distdir) + +dist-lzip: distdir + tardir=$(distdir) && $(am__tar) | lzip -c $${LZIP_OPT--9} >$(distdir).tar.lz + $(am__post_remove_distdir) +dist-xz: distdir + tardir=$(distdir) && $(am__tar) | XZ_OPT=$${XZ_OPT--e} xz -c >$(distdir).tar.xz + $(am__post_remove_distdir) + +dist-tarZ: distdir + @echo WARNING: "Support for distribution archives compressed with" \ + "legacy program 'compress' is deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + tardir=$(distdir) && $(am__tar) | compress -c >$(distdir).tar.Z + $(am__post_remove_distdir) + +dist-shar: distdir + @echo WARNING: "Support for shar distribution archives is" \ + "deprecated." >&2 + @echo WARNING: "It will be removed altogether in Automake 2.0" >&2 + shar $(distdir) | eval GZIP= gzip $(GZIP_ENV) -c >$(distdir).shar.gz + $(am__post_remove_distdir) + +dist-zip: distdir + -rm -f $(distdir).zip + zip -rq $(distdir).zip $(distdir) + $(am__post_remove_distdir) + +dist dist-all: + $(MAKE) $(AM_MAKEFLAGS) $(DIST_TARGETS) am__post_remove_distdir='@:' + $(am__post_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*) \ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).tar.gz | $(am__untar) ;;\ + *.tar.bz2*) \ + bzip2 -dc $(distdir).tar.bz2 | $(am__untar) ;;\ + *.tar.lz*) \ + lzip -dc $(distdir).tar.lz | $(am__untar) ;;\ + *.tar.xz*) \ + xz -dc $(distdir).tar.xz | $(am__untar) ;;\ + *.tar.Z*) \ + uncompress -c $(distdir).tar.Z | $(am__untar) ;;\ + *.shar.gz*) \ + eval GZIP= gzip $(GZIP_ENV) -dc $(distdir).shar.gz | unshar ;;\ + *.zip*) \ + unzip $(distdir).zip ;;\ + esac + chmod -R a-w $(distdir) + chmod u+w $(distdir) + mkdir $(distdir)/_build $(distdir)/_build/sub $(distdir)/_inst + chmod a-w $(distdir) + test -d $(distdir)/_build || exit 0; \ + dc_install_base=`$(am__cd) $(distdir)/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ + && dc_destdir="$${TMPDIR-/tmp}/am-dc-$$$$/" \ + && am__cwd=`pwd` \ + && $(am__cd) $(distdir)/_build/sub \ + && ../../configure \ + $(AM_DISTCHECK_CONFIGURE_FLAGS) \ + $(DISTCHECK_CONFIGURE_FLAGS) \ + --srcdir=../.. --prefix="$$dc_install_base" \ + && $(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 \ + && cd "$$am__cwd" \ + || exit 1 + $(am__post_remove_distdir) + @(echo "$(distdir) archives ready for distribution: "; \ + list='$(DIST_ARCHIVES)'; for i in $$list; do echo $$i; done) | \ + sed -e 1h -e 1s/./=/g -e 1p -e 1x -e '$$p' -e '$$x' +distuninstallcheck: + @test -n '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: trying to run $@ with an empty' \ + '$$(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + $(am__cd) '$(distuninstallcheck_dir)' || { \ + echo 'ERROR: cannot chdir into $(distuninstallcheck_dir)' >&2; \ + exit 1; \ + }; \ + test `$(am__distuninstallcheck_listfiles) | wc -l` -eq 0 \ + || { 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 +check: check-recursive +all-am: Makefile config.h +installdirs: installdirs-recursive +installdirs-am: +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." + -test -z "$(MAINTAINERCLEANFILES)" || rm -f $(MAINTAINERCLEANFILES) +clean: clean-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-hdr \ + distclean-libtool distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f $(am__CONFIG_DISTCLEAN_FILES) + -rm -rf $(top_srcdir)/autom4te.cache + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) all install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am \ + am--refresh check check-am clean clean-cscope clean-generic \ + clean-libtool cscope cscopelist-am ctags ctags-am dist \ + dist-all dist-bzip2 dist-gzip dist-lzip dist-shar dist-tarZ \ + dist-xz dist-zip distcheck distclean distclean-generic \ + distclean-hdr distclean-libtool distclean-tags distcleancheck \ + distdir distuninstallcheck dvi dvi-am html html-am info \ + info-am install install-am install-data install-data-am \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs installdirs-am maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags tags-am uninstall \ + uninstall-am + +.PRECIOUS: Makefile + + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/NEWS b/NEWS new file mode 100644 index 0000000..f023057 --- /dev/null +++ b/NEWS @@ -0,0 +1,1684 @@ +News in 3.28.1, 2018-04-08 +-------------------------- +* AppData: update screenshots. +* Translation updates. + +News in 3.28.0, 2018-03-10 +-------------------------- +* Improve default GSettings values. +* A few other small improvements. +* Translation updates. + +=============== +Version 3.27.90 +=============== + +- Flatpak: see books installed on the host (usually installed by traditional + Linux distribution packages). The Flatpak needs to be built with the new + --enable-flatpak-build configure flag. +- Lots of code refactorings, fixing various bugs along the way. Have more + classes, but smaller: from DhKeywordModel extract DhSearchContext; from + DhWindow extract DhWebView, DhTab and DhTabLabel. +- All bugs in bugzilla fixed (only enhancement bugs remaining). +- Write more unit tests. +- Write first page of *user* documentation (in Mallard), to explain some + features of the search in the side panel. +- Fix and document a feature useful for integration with other developer tools: + filtering by book and page when doing a search, see the README. +- Improve error info bar (shown on top of the HTML page), use the TeplInfoBar + utility class, copied from the Tepl library. + +Fixed bugs: + + - #696905, press Escape to cancel search + - #790902, writes window state settings on each configure event + - #792068, Make it work with Flatpak + - #792443, Missing emacs/vim plugins in 3.27.2 tarball + +Updated translations: de, fi, fur, hu, id, pl + +Many thanks to all contributors: Balázs Úr, Fabio Tomat, Tim Sabsch, +Sébastien Wilmet, Mario Blättermann, Piotr Drąg, Kukuh Syafaat, Christian +Kirbach, Jiri Grönroos + +============== +Version 3.27.2 +============== + +- Deprecate Devhelp index file format version 1 (with file extension *.devhelp + or *.devhelp.gz), print warning when loading such index files. +- Lots of code refactorings. +- Do not use deprecated GCompletion API, implement re-usable DhCompletion class + based on GSequence with an API better suited for Devhelp. +- Do not use deprecated GdkScreen API, use GdkMonitor. +- Use WebKit's new font size functionality. +- Increase number of maximum search results (100 -> 1000). +- Use the GtkSearchEntry::search-changed signal, adding a small delay to show + search results. +- Make right-click menu work in the WebKitWebView. +- Do not save/restore GtkWindows x/y positions. +- Improve application description and documentation. +- Some cleanup and file reorganisation in the git repository. +- Fix several bugs. + +Fixed bugs: + + - #606831, Devhelp applications lacks right-click context menu + - #668978, Add timeout to search entry. + - #784652, Searching "GFile" doesn't return an exact match (too many + results) + - #789862, dh-sidebar: Crashes when interacting with the GCompletion + - #790680, Start using WebKit's new font size functionality + - #791127, Assertion failed in DhBookManager + +Updated translations: cs, sr + +Many thanks to all contributors: Милош Поповић, Sébastien +Wilmet, Marek Černocký, Gabriel Ivascu + +============== +Version 3.27.1 +============== + +- Lots of code refactorings. +- Write first unit test. +- DhLink: use a union inside the struct to use less memory. +- Improve API documentation. +- Some minor bug fixes. +- Translation updates. + +============== +Version 3.26.1 +============== + +- Move New Tab button on the right side of the headerbar. + +Updated translations: ca, ca@valencia, da, el, nb, nl + +Many thanks to all contributors: Sébastien Wilmet, Ask Hjorth Larsen, +Efstathios Iosifidis, Nathan Follens, Kjartan Maraas, Xavi Ivars + +============== +Version 3.26.0 +============== + +Updated translations: be, da, eu, fi, hu, it, ko, lt, lv, ne, pt_BR, +sk, tr + +Many thanks to all contributors: Balázs Úr, Changwoo Ryu, Osman Karagöz, +Yuras Shumovich, Piotr Drąg, Milo Casagrande, Ask Hjorth Larsen, Inaki +Larranaga Murgoitio, Enrico Nicoletto, Rūdolfs Mazurs, Jiri Grönroos, +Dušan Kazik + +=============== +Version 3.25.91 +=============== + +- Bump Libtool version. + +Fixed bugs: + + - #786008, Constant updating of window positions causing high CPU load + Fixed by adding a timeout to save the GSettings for the window state. + +Updated translations: ca, gl, ne, pl, sr@latin, sr + +Many thanks to all contributors: Fran Dieguez, Мирослав +Николић, Sébastien Wilmet, Pawan Chitrakar, Jordi Mas, Debarshi Ray + +============== +Version 3.25.2 +============== + +- Move New Tab action as a button in the headerbar (it's no longer in the + hamburger menu). +- Refactorings in DhLink. +- Rename dh_free_resources() to dh_finalize(). + +Fixed bugs: + + - #721082, a couple of scripts to add javadocs as Devhelp books + - #779386, Consider moving contents of "hamburger" menu elsewhere + - #783964, [PATCH] mouse forward/back buttons don't work + +Updated translations: cs, de, es, fr, fur, id, kk, sl, sv, vi + +Many thanks to all contributors: Fabio Tomat, Anders Jonsson, Sébastien +Wilmet, Mario Blättermann, Piotr Drąg, Kukuh Syafaat, Matej Urbančič, +Trần Ngọc Quân, Claude Paroz, Daniel Mustieles, Lubomir Rintel, +Baurzhan Muftakhidinov, Marek Cernocky + +============== +Version 3.25.1 +============== + +- Book tree in the side panel: add context menu with Collapse All action. +- Update GUI when system fonts change. +- Lots of code clean-up and refactorings. +- Clean up the GSettings schema. +- Use GIO to load the index files. +- Several bug fixes in the parser. +- Build system: + - Disable -Werror by default. + - Use git.mk. + - Check for gsettings-desktop-schemas with pkg-config. + +API: +- There has been some API breaks documented in the reference manual, but both + Anjuta and gnome-builder should still compile and work fine. +- Several fixes in the GTK-Doc comments and GObject Introspection annotations. +- Improve documentation, write class descriptions for public classes. +- DhBookManager is now a singleton. +- Deprecate dh_link_get_page_name(). +- dh_init() now initializes the i18n. +- New function: dh_free_resources(). + +Fixed bugs: + + - #761292, Book tree in sidebar: add right click -> collapse all + - #775175, Problems with back/forward buttons sensitivity + - #776596, devhelp --search sometimes doesn't jump to symbol + - #782511, Take advantage of Unicode + +Updated translations: be, de, el, hu, id, pl + +Many thanks to all contributors: Balázs Úr, Andika Triwidada, Tom +Tryfonidis, Yuras Shumovich, Sébastien Wilmet, Mario Blättermann, Piotr +Drąg, Kukuh Syafaat, Rico Tzschichholz + +============== +Version 3.24.0 +============== + +Updated translations: lv + +Many thanks to all contributors: Rūdolfs Mazurs + + +=============== +Version 3.23.92 +=============== + +Fixed bugs: + + - #779378, devhelp 3.23.91 fails to build because of -Werror + - #779563, Add Flatpak build manifest + +Updated translations: da, fr, gl, id, ko, lt, zh_TW + +Many thanks to all contributors: Changwoo Ryu, Kukuh Syafaat, Fran Dieguez, +Sébastien Wilmet, Ask Hjorth Larsen, Aurimas Černius, Chao-Hsiung Liao, +Charles Monzat + + +=============== +Version 3.23.91 +=============== + +Fixed bugs: + + - #763518, Add sidebar toggler to the menu + - #770785, Add GTK-Doc API reference and GObject Introspection support + - #771503, fix warning in finalize of sidebar + - #773900, Small build system update + - #774069, unable to build devhelp by jhbuild + - #775261, Make DhLanguage a GObject subclass + +Updated translations: cs, de, es, eu, fi, fur, hr, hu, it, kk, nb, pl, +pt_BR, sk, sl, sr@latin, sr, sv + +Many thanks to all contributors: Balázs Meskó, Мирослав +Николић, Corentin Noël, Mario Blättermann, Milo Casagrande, Kjartan +Maraas, Enrico Nicoletto, Balázs Úr, Piotr Drąg, Marek Černocký, +Christian Hergert, Fabio Tomat, Sébastien Wilmet, gogo, Matej Urbančič, +Michael Catanzaro, Fábio Nogueira, Anders Jonsson, Rafael Fontenelle, +Miguel Vaello Martínez, Inaki Larranaga Murgoitio, Daniel Mustieles, +Baurzhan Muftakhidinov, Jiri Grönroos, Dušan Kazik + + +============== +Version 3.22.0 +============== + +No changes. + + +=============== +Version 3.21.92 +=============== + +Fixed bugs: + + - #771327, dh-window: do not disable javascript. + +Updated translations: es, fur, pl + +Many thanks to all contributors: Jeremy Bicha, Fabio Tomat, Mathieu +Duponchelle, Piotr Drąg + + +=============== +Version 3.21.91 +=============== + +Updated translations: en_GB, fi, pl, sl + +Many thanks to all contributors: Matej Urbančič, Jiri Grönroos, David +King, Piotr Drąg + + +=============== +Version 3.21.90 +=============== + +Fixed bugs: + + - #763942, Let Control+scroll change the zoom level + - #769606, 3 trivial commits + +Updated translations: eu, id, it, nb, oc, pt, th + +Many thanks to all contributors: Ernestas Kulik, Andika Triwidada, Sébastien +Wilmet, Piotr Drąg, Theppitak Karoonboonyanan, Inaki Larranaga Murgoitio, +Kjartan Maraas, Cédric Valmary, Milo Casagrande + + +============== +Version 3.20.0 +============== + +Updated translations: da, ru, sr + +Many thanks to all contributors: Ask Hjorth Larsen, Марко Костић, +Yuri Myasoedov + + +=============== +Version 3.19.92 +=============== + +Updated translations: ca, cs, fi, fr, gl, he, ko, lt, oc, sr@latin, +sr, sv, zh_CN, zh_TW + +Many thanks to all contributors: Changwoo Ryu, Chao-Hsiung Liao, Fran +Dieguez, Мирослав Николић, Guillaume Bernard, Marek +Černocký, Jordi Mas, Aurimas Černius, Anders Jonsson, Yosef Or Boczko, +Cédric Valmary, Jiri Grönroos, Mingye Wang (Arthur2e5), Sébastien Wilmet + + +=============== +Version 3.19.90 +=============== + +Fixed bugs: + + - #645620, Mis-handling of external-URL in .devhelp2 + - #696904, each class name is listed twice + - #723135, Ctrl-K shortcut is not discoverable + - #741806, Add support for XF86Back/XF86Forward keys + - #743704, Add "Ctrl =" keyboard shortcut for zoom in + - #757177, Add keyboard shortcuts for switching tabs (Ctrl+PgUp/PgDn) + - #757877, Provide a shortcuts window + - #758141, Misc code enhancements + - #759691, Search problem: do not jump to the exact link if another link + with a longer name exists + - #759692, Search: a trailing space is sometimes added to the entry + - #761407, Add context to strings in the shortcut window + +Updated translations: de, el, es, hu, lt, lv, pl, pt_BR, sk + +Many thanks to all contributors: Balázs Meskó, Tom Tryfonidis, Rafael +Fontenelle, Sébastien Wilmet, Richard Hughes, Mario Blättermann, Piotr +Drąg, Aurimas Černius, Nirbheek Chauhan, Daniel Mustieles, Rūdolfs +Mazurs, Dušan Kazik + + +============== +Version 3.19.3 +============== + +Fixed bugs: + + - #709658, gedit plugin: too many .plugin files (some generated, some + weird) + - #755872, Sometimes a page doesn't get opened + - #756341, Various code improvements and bug fixes + +Updated translations: eu, pt, th, zh_CN + +Many thanks to all contributors: Pedro Albuquerque, Sébastien Wilmet, Akom +Chotiphantawanon, Inaki Larranaga Murgoitio, YunQiang Su + + +============== +Version 3.18.1 +============== + +Updated translations: eo, sr@latin, sr + +Many thanks to all contributors: Kristjan SCHMIDT, Милош +Поповић, Марко Костић + + +============== +Version 3.18.0 +============== + +Updated translations: da, de, fa, fi, it, ja, ko, lt, lv, pt_BR, sl, +tr + +Many thanks to all contributors: Changwoo Ryu, Paul Seyfert, Muhammet Kara, +Rafael Fontenelle, Arash Mousavi, Milo Casagrande, Ask Hjorth Larsen, Matej +Urbančič, Aurimas Černius, Jiro Matsuzawa, Rūdolfs Mazurs, Jiri +Grönroos + + +=============== +Version 3.17.91 +=============== + +Fixed bugs: + + - #704833, books sidebar shouldn't have type ahead find + - #727243, gedit plugin needs to be ported to new menu API + - #749797, Misc code improvements + - #751446, AppData file needs updating for new desktop file name + +Updated translations: cs, el, es, fr, gl, he, hu, id, nb, pl, pt, sk, +sv, zh_TW + +Many thanks to all contributors: Balázs Úr, Andika Triwidada, Alexandre +Franke, Fran Dieguez, Anders Jonsson, Richard Hughes, Piotr Drąg, Daniel +Mustieles, Pedro Albuquerque, Kjartan Maraas, Yosef Or Boczko, Marek +Černocký, Chao-Hsiung Liao, Dušan Kazik, Tom Tryfonidis + + +============== +Version 3.17.3 +============== + +Fixed bugs: + + - #593267, devhelp manpage + - #728384, Make DBus-activatable + - #749452, Misc maintenance stuff + - #749797, Misc code improvements + +Updated translations: oc, uk + +Many thanks to all contributors: Sébastien Wilmet, Cédric Valmary, +Matthias Clasen, Colin Walters + + +============== +Version 3.16.1 +============== + +Fixed bugs: + + - Update list of official developer documentation sites + - #747016, icon: provide a symbolic variant of the app icon + +Many thanks to all contributors: Jakub Steiner, Alexandre Franke + + +============== +Version 3.16.0 +============== + +Fixed bugs: + + - #746609, Fix warning when book cannot be read + +Updated translations: bs + +Many thanks to all contributors: Michael Catanzaro, Kalev Lember + + +=============== +Version 3.15.92 +=============== + +Fixed bugs: + + - #746166, Disable some WebKit features we don't need + +Updated translations: bs + +Many thanks to all contributors: Michael Catanzaro, Samir Ribic, Sebastien +Lafargue + + +=============== +Version 3.15.91 +=============== + +Fixed bugs: + + - #745256, Update font size automatically when Xft resolution changes + +Updated translations: sv + +Many thanks to all contributors: Mario Sanchez Prada, Anders Jonsson + + +=============== +Version 3.15.90 +=============== + +Fixed bugs: + + - #728916, Can't find "_" in the results + - #741806, Added support for XF86Back/XF86Forward keys + - #742447, devhelp crashes with empty documentation file + - #742457, Typo in GSettings conversion file causes gsettings-data-convert + to crash + - #742687, DevHelpBookTree is wider when searching + +Updated translations: fi, it, ja, sl, tr + +Many thanks to all contributors: Muhammet Kara, Necdet Yücel, Timo Jyrinki, +Milo Casagrande, Jiri Horner, Matej Urbančič, Trinh Anh Ngoc, Jiro +Matsuzawa, Debarshi Ray, Aleksander Morgado + + +============== +Version 3.14.0 +============== + +Updated translations: da, de, sr@latin, sr, zh_CN + +Many thanks to all contributors: Tong Hui, Kenneth Nielsen, Bernd Homuth, +Мирослав Николић + + +=============== +Version 3.13.92 +=============== + +Fixed bugs: + + - #735252, libdevhelp: Fix .pc file requires when building with + webkit2gtk-4.0 + +Updated translations: fi, gl, hu, id, ko, lv, pl, ru, sv, zh_HK, zh_TW + +Many thanks to all contributors: Balázs Úr, Ville-Pekka Vainio, Andika +Triwidada, Fran Diéguez, Changwoo Ryu, Yuri Myasoedov, Piotr Drąg, +Sebastian Rasmussen, Rūdolfs Mazurs, Chao-Hsiung Liao + + +=============== +Version 3.13.90 +=============== + +Fixed bugs: + + - #734324, Build against webkit2gtk-4.0 + +Updated translations: as, ca, ca@valencia, cs, eu, fi, fr, lt, nb + +Many thanks to all contributors: Gil Forcada, Lasse Liehu, Alexandre Franke, +Kalev Lember, Andre Klapper, ngoswami, Inaki Larranaga Murgoitio, Aurimas +Černius, Olav Vitters, Kjartan Maraas, Michael Catanzaro, Carles Ferrando, +Marek Černocký, Ignacio Casal Quinteiro + + +============== +Version 3.13.4 +============== + +Fixed bugs: + + - #724098, center tab labels + - #724538, Use popver for the gear menu + - #727064, Use headerbar in the preference dialog + - #730445, Expand tabs in the pref dialog + - #730723, window: Allow Shift-Return to previous find + - #730772, Use the new support for RTL icons in GtkIconTheme + - #732897, Use view-context-menu-symbolic for the gear menu + +Updated translations: ca, ca@valencia, el, es, he, pt_BR, sl + +Many thanks to all contributors: MarMav, Carles Ferrando, Pau Iranzo, +chrysn, Damián Nohales, Matej Urbančič, Daniel Mustieles, Enrico +Nicoletto, Yosef Or Boczko + + +============== +Version 3.12.1 +============== + +Updated translation: eu + +Many thanks to all contributors: Inaki Larranaga Murgoitio, Piotr Drąg + + +============== +Version 3.12.0 +============== + +Updated translations: da, id, pt, sl + +Many thanks to all contributors: Duarte Loreto, Matej Urbančič, Andika +Triwidada, Ask H. Larsen + + +=============== +Version 3.11.92 +=============== + +Updated translations: fi, fr, ko, lv, pl, ru, sr@latin, sr, zh_CN + +Many thanks to all contributors: Changwoo Ryu, Ville-Pekka Vainio, Мирослав +Николић, Paweł Żołnowski, Yuri Myasoedov, Wylmer Wang, Rūdolfs Mazurs + + +=============== +Version 3.11.91 +=============== + +Fixed bugs: + + - #696573, search toggle buttons + - #723225, License text contains obsolete FSF postal address + - #723933, Don't assume we can always read BYTES_PER_READ + +Updated translations: as, fi, gl, hu, it, lt, nb, pt_BR, uk, zh_HK, +zh_TW + +Many thanks to all contributors: Balázs Úr, Jiri Grönroos, Daniel +Mustieles, William Jon McCann, Ignacio Casal Quinteiro, Rafael Ferreira, +ngoswami, Fran Diéguez, Milo Casagrande, Aurimas Černius, Kjartan Maraas, +Daniel Korostil, Chao-Hsiung Liao + + +============== +Version 3.11.4 +============== + +Fixed bugs: + + - #712183, about devhelp, wrong URL + - #720167, App menu: standardize Help/About/Quit + - #720948, Add "sidebar" style class to the sidebar + +Updated translations: ca, ca@valencia, cs, el, es, gl, he, it, pt_BR, +sl, zh_CN + +Many thanks to all contributors: Gil Forcada, Dimitris Spingos, Carles +Ferrando, Rafael Ferreira, Ignacio Casal Quinteiro, Fran Diéguez, Milo +Casagrande, Matej Urbančič, Sphinx Jiang, Bastien Nocera, Daniel +Mustieles, Yosef Or Boczko, Michael Catanzaro, Marek Černocký, Piotr +Drąg, Pierre-Yves Luyten, Aleksander Morgado + + +============== +Version 3.10.2 +============== + +Updated translations: ca, ca@valencia, de, el + +Many thanks to all contributors: Christian Kirbach, Efstathios Iosifidis, +Gil Forcada, Carles Ferrando + + +============== +Version 3.10.0 +============== + +Fixed bugs: + + - #707490, [PATCH] Don't use AM_GNU_GETTEXT + +Updated translations: as, be, da, fi, he, id, ja, ko, lv, ru, sk, +sr@latin, sr, th + +Many thanks to all contributors: Changwoo Ryu, Ville-Pekka Vainio, Andika +Triwidada, Мирослав Николић, Ignacio Casal Quinteiro, Pavol +Klačanský, Ihar Hrachyshka, Ask H. Larsen, Theppitak Karoonboonyanan, +Nilamdyuti Goswami, Jiro Matsuzawa, Yosef Or Boczko, Rūdolfs Mazurs, +Kerrick Staley, Yuri Myasoedov + + +============== +Version 3.9.91 +============== + +Fixed bugs: + + - #700588, Error regarding gsetting schema when gsettings-data-convert + starts + - #706498, Typo in the last devhelp´s POT File + +Updated translations: cs, es, fr, gl, he, hu, it, lt, nb, pl, pt_BR, +sl, zh_HK, zh_TW + +Many thanks to all contributors: Balázs Úr, Milo Casagrande, Kjartan +Maraas, Ignacio Casal Quinteiro, Fran Diéguez, Piotr Drąg, Matej +Urbančič, Aurimas Černius, Daniel Mustieles, Enrico Nicoletto, Marek +Černocký, Chao-Hsiung Liao, Yaron Shahrabani, Alexandre Franke + + +============== +Version 3.9.90 +============== + +Ignacio Casal Quinteiro ported devhelp to GtkHeaderBar, GtkSearchBar, +and more. + +Fixed bugs: + + - #700588, Error regarding gsetting schema when gsettings-data-convert + starts + +Updated translations: it, lt, pt_BR, zh_HK, zh_TW + +Many thanks to all contributors: Milo Casagrande, Ignacio Casal Quinteiro, +Rafael Ferreira, Piotr Drąg, Baptiste Mille-Mathias, Aurimas Černius, +Chao-Hsiung Liao + + +============= +Version 3.9.5 +============= + +Fixed bugs: + + - #703609, Set button arrow icons according to locale's text direction + - #704752, Make window a template and other stuff + - #704805, The notebook in the preferences does not expand properly + +Many thanks to all contributors: Garrett Regier, Ignacio Casal Quinteiro, +Piotr Drąg + + +============= +Version 3.9.4 +============= + +Fixed bugs: + + - #665531, devhelp: change ShowSearchTab key to ctrl+K + - #695758, Ctrl+F/Ctrl+S don't focus the search entry + - #696922, Tabs should be reorderable + - #700430, .pc uses WEBKITGTK_PC_NAME which is no longer defined + +Updated translations: cs, es, eu, gl, he, hu, ml, nb, ru, sl + +Many thanks to all contributors: Balázs Úr, Kjartan Maraas, Carlos Garcia +Campos, Ignacio Casal Quinteiro, Fran Diéguez, Javier Jardón, Matej +Urbančič, Yuri Myasoedov, Daniel Mustieles, Yosef Or Boczko, Adam Dingle, +Marek Černocký, Arnel A. Borja, Yaron Shahrabani, Anish A, Aleksander +Morgado + + +============= +Version 3.8.2 +============= + +Fixed bugs: + + - disconnect signals when preferences dialog is shutdown + +Updated translations: ru + +Many thanks to all contributors: Dmitriy S. Seregin, Aleksander Morgado + + +============= +Version 3.8.1 +============= + +Fixed bugs: + + - #697026, font size is too small by default and don't match system font + size + - #697541, changing preferences crashes/fails after closing one of + multiple windows + +Many thanks to all contributors: Carlos Garcia Campos, Ignacio Casal +Quinteiro, Aleksander Morgado + + +============= +Version 3.8.0 +============= + +Fixed bugs: + + - #695455, gedit-plugin: Set loader to python3 + - #696367, devhelp's gschema crashes gsettings tool + +Updated translations: as, be, da, el, et, fa, fi, fr, hu, ko, pt_BR, +pt, tg + +Many thanks to all contributors: Balázs Úr, Changwoo Ryu, Mattias +Põldaru, Dimitris Spingos, Alexandre Franke, Thomas Bechtold, Ville-Pekka +Vainio, Victor Ibragimov, Arash Mousavi, Ask H. Larsen, Ihar Hrachyshka, +Duarte Loreto, Nilamdyuti Goswami, Enrico Nicoletto, Jeremy Bicha, +Aleksander Morgado + + +============== +Version 3.7.91 +============== + +Fixed bugs: + + - #569021, header links don't jump to correct point in text + - #600309, impossible or very cumbersome to navigate from keyboard + - #640567, Error shown when changing books/pages too fast + - #665531, devhelp: change ShowSearchTab key to ctrl+K + - #671907, Do not use custom marshallers + - #673320, Nodes in side tree should not expand on focus + - #693237, Syntax errors in the desktop file + +Updated translations: ca, ca@valencia, cs, de, el, gl, it, lt, nb, nl, +pl, sl, sr@latin, sr, th, ug + +Many thanks to all contributors: Gil Forcada, Gheyret Kenji, Kalev Lember, +Thomas Bechtold, Мирослав Николић, Matej Urbančič, Mario +Blättermann, Piotr Drąg, Theppitak Karoonboonyanan, Aurimas Černius, Fran +Diéguez, Kjartan Maraas, Javier Jardón, Carles Ferrando, Marek Černocký, +Milo Casagrande, Aleksander Morgado + + +============= +Version 3.7.5 +============= + +This release sees a revamp of the UI according to match GNOME 3 applications, +thanks to the work of Aleksander Morgado and Thomas Bechtold during the +developer experience hackfest in Brussels. + +Fixed bugs: + + - #569021, header links don't jump to correct point in text + - #646402, [patch] port devhelp to gsettings + - #664080, Window title not updated when opening pages using search + - #671907, Do not use custom marshallers + - #679955, Use search entry for search entries + - #679956, Would be nice not to have to switch a tab to search + - #688955, Font selection does nothing + - #690599, memory leaks + - #690980, port to python3 + - #692242, libdevhelp: Remove dh_init() from header since it doesn't exist + anymore. + - #692732, assistant-view: don't reference DhApplication + - #693017, Navigation back/forward seems broken with webkit2 + - #693023, libdevhelp: Fix .pc file "Requires" when building with + webkitgtk2 + +Updated translations: bg, el, es, gl, he, it, lt, nb, pl, sr@latin, +sr, ug, zh_HK, zh_TW + +Many thanks to all contributors: Gheyret Kenji, Kjartan Maraas, Thomas +Bechtold, Carl-Anton Ingmarsson, Alexander Shopov, Pavel Vasin, +Мирослав Николић, Fran Diéguez, Piotr Drąg, Aurimas +Černius, Daniel Mustieles, Milo Casagrande, Dimitris Spingos, Chao-Hsiung +Liao, Yaron Shahrabani, Aleksander Morgado, Javier Jardón + + +============= +Version 3.7.3 +============= + +Fixed bugs: + + - #646402, port devhelp to gsettings + - #683882, Can't Ctrl+C to copy + - #687607, add keywords to the desktop file + - #688919, devhelp fails to build with GNU gold due to underlinking + +Updated translations: es, et, nl, pl, ru, sl + +Many thanks to all contributors: Mattias Põldaru, Aleksej Kabanov, Thomas +Bechtold, Wouter Bolsterlee, Piotr Drąg, Matej Urbančič, Daniel +Mustieles, Alexandre Rostovtsev, Pavel Vasin, Matthias Clasen + + +============= +Version 3.7.1 +============= + +Fixed bugs: + + - #685710, Switch to WebKit2 by default for 3.7.x + +Updated translations: lv, ml, sk + +Many thanks to all contributors: Carlos Garcia Campos, Rūdolfs Mazurs, +Roman Mátyus, Anish A + + +============= +Version 3.6.0 +============= + +Updated translations: bg, ca, ca@valencia, de, zh_CN + +Many thanks to all contributors: Gil Forcada, Carles Ferrando, Cheng Lu, +Alexander Shopov, Mario Blättermann + + +============== +Version 3.5.92 +============== + +Updated translations: as, be, cs, da, en_GB, fi, fr, gl, he, hu, id, +it, ko, pl, pt_BR, pt, ru, sl, th, vi, zh_CN + +Many thanks to all contributors: Rafael Ferreira, Milo Casagrande, Duarte +Loreto, Theppitak Karoonboonyanan, Bruce Cowan, Gabor Kelemen, Nilamdyuti +Goswami, Timo Jyrinki, Fran Diéguez, Piotr Drąg, Marek Černocký, +Changwoo Ryu, Alexandre Franke, Ask H. Larsen, Matej Urbančič, Andika +Triwidada, Leah Liu, Nguyễn Thái Ngọc Duy, Yuri Myasoedov, Ihar +Hrachyshka, Yaron Shahrabani + + +============= +Version 3.5.5 +============= + +Fixed bugs: + + - #677927, (patch) Implement application menu + +Updated translations: el, es, gl, ja, lt, nb, nn, sk, sr@latin, sr, +zh_HK, zh_TW + +Many thanks to all contributors: Åsmund Skjæveland, Tom Tryfonidis, +Мирослав Николић, Roman Mátyus, Fran Diéguez, Piotr Drąg, +Daniel Mustieles, Aurimas Černius, Jiro Matsuzawa, Kjartan Maraas, Chao- +Hsiung Liao, Rafał Mużyło, Aleksander Morgado + + +============= +Version 3.4.1 +============= + +Updated translations: fa, hi + +Many thanks to all contributors: Chandan Kumar, chandankumar, Arash Mousavi, +Chandan Kumar (ciypro) + + +============= +Version 3.4.0 +============= + +Fixed bugs: + +- #671256, Fix compilation warnings with -Wunused-but-set-variable + +Updated translations: ar, as, fa, fi, fr, it, km, ko, lv, pt, uk + + +============== +Version 3.3.91 +============== + +This release can be built using WebKit2 (pass --with-webkit2 to configure), +thanks to Carlos Garcia Campos for the port. + +Fixed bugs: + + - #647383, Should not use DISABLE_DEPRECATED in releases + - #669696, Use of freed memory in dh_assistant_view_set_link() + +Updated translations: bg, cs, hu, ja, nb, pl, ru, si, sr@latin, sr, sv, te, tr + +Many thanks to all contributors: Praveen Illa, Muhammet Kara, Мирослав Николић, +Carlos Garcia Campos, Alexander Shopov, Daniel Nylander, Yuri Myasoedov, Piotr +Drąg, Martin Robinson, OKANO Takayoshi, Danishka Navin, Kjartan Maraas, Sergio +Villar Senin, Marek Černocký, Gabor Kelemen, Aleksander Morgado + +============= +Version 3.3.3 +============= + +Fixed bugs: + + - #456282, Add globbing/wildcards to search fields + - #646398, [patch] build: libwnck is no longer user + - #649064, Some messages have gone untranslatable. + - #652999, building against GTK3 with x11 and broadway backend enabled + fails + - #663789, Change IgeMacIntegration to GtkOSXApplication + - #666446, libdevhelp-3.0.pc Requires.private: @REQUIRES_LIBWNCK@ not + expanded + +Updated translations: nb, te, tr + +Many thanks to all contributors: Philip Chimento, Muhammet Kara, krishnababu +k, Jiro Matsuzawa, Kjartan Maraas, Jason Siefken, Vincent Untz, Saleem +Abdulrasool + +============= +Version 3.2.0 +============= + +Fixed bugs: + + - #592897, window is reused only if on the current page + - #646399, [patch] remove unused PLATFORM_{C,LD}FLAGS + - #646400, [patch] remove dead GTK+ code + - #646962, Doesn't build on Mac OS/Quartz + - #650542, Some small UI tweaks + +Updated translations: ast, ca@valencia, en_CA, eo, es, eu, fi, ja, lt + +Many thanks to all contributors: Kristjan SCHMIDT, Tiffany Antopolski, +Carles Ferrando, P. F. Chimento, Tommi Vainikainen, Jorge González, Xandru +Armesto, Javier Jardón, Inaki Larranaga Murgoitio, OKANO Takayoshi, Jiro +Matsuzawa, Cosimo Cecchi, Aurimas Černius, Saleem Abdulrasool + +============= +Version 3.0.0 +============= + +Updated translations: da, de, it, lv, pt_BR, sk, sr@latin, sr, ug + +Many thanks to all contributors: Abduxukur Abdurixit, Luca Ferretti, Roman +Mátyus, Ask H. Larsen, Wolfgang Stöggl, Mateus Zenaide, Rudolfs Mazurs, +Miroslav Nikolić + +=============== +Version 2.91.92 +=============== + +Fixed bugs: + + - #644221, window: set the style class before adding to the parent box + +Updated translations: de, en_GB, pl, ro, sk, sq + +Many thanks to all contributors: Laurent Dhima, Lucian Adrian Grijincu, Roman +Mátyus, Mario Blättermann, Bruce Cowan, Cosimo Cecchi + +================= +Version 2.91.91.2 +================= + +Fixed bugs: + + - partial update for gtk-style-context, some deprecated functions are still + being used. + +================= +Version 2.91.91.1 +================= + +Fixed bugs: + + - really install the 256x256 icon + +=============== +Version 2.91.91 +=============== + +Fixed bugs: + + - #643145, [gedit plugin] check for the right type + - #644026, Needs a 256x256 size icon + +Updated translations: hu, pt + +Many thanks to all contributors: Ignacio Casal Quinteiro, Andreas Nilsson, +Duarte Loreto, Cosimo Cecchi, Gabor Kelemen + +=============== +Version 2.91.90 +=============== + +Fixed bugs: + + - #642002, [PATCH] port gedit plugin to GObject Introspection and latest + GEdit + +Updated translations: ar, bg, ca, el, eo, es, fa, fr, gl, ko, nl, ru, +ug, uk, zh_HK, zh_TW + +Many thanks to all contributors: Changwoo Ryu, Kristjan SCHMIDT, Gil +Forcada, Khaled Hosny, Alexander Shopov, Wouter Bolsterlee, Jorge González, +Fran Diéguez, Sahran, Claude Paroz, Yuri Myasoedov, Daniel Korostil, +Michael Kotsarinis, Chao-Hsiung Liao, Mahyar Moghimi, Dan Williams + +============== +Version 2.91.5 +============== + +Fixed bugs: + + - #638748, Adapt to new multi backend GTK+ + - #638761, Add ellipsize to search combo + +Updated translations: cs, es, et, gl, id, nb, sl, sv, ug, zh_CN + +Many thanks to all contributors: Andika Triwidada, Aron Xu, Jorge Gonzalez, +Ivar Smolin, Daniel Nylander, Fran Diéguez, Matej Urbančič, Kjartan +Maraas, Gheyret T.Kenji, Marek Černocký, Matthias Clasen, Johannes Schmid + +============== +Version 2.91.4 +============== + +Fixed bugs: + + - #90469, Search function to allow selecting books for search + - #349608, Monitor books and update when they change + - #353108, Search by language + - #601201, [PATCH] inadequate search result ordering + - #633834, L10N: msgid "Enabled" + - #635162, Devhelp won't build due to the new GApplication API + - #636339, Fix default value for list type key + state/main/contents/books_disabled + - #636933, [PATCH] Crash when closing the preferences dialog with the + titlebar close button + +Updated translations: et, he, th, zh_HK, zh_TW + +Many thanks to all contributors: Ivar Smolin, Yanko Kaneti, Akom +Chotiphantawanon, Chao-Hsiung Liao, Yaron Shahrabani, Aleksander Morgado + +============== +Version 2.91.3 +============== + +Fixed bugs: + + - #606593, Devhelp no longer recognizes "page:" search keyword + - #624197, [patch] port to GtkApplication + - #630108, Update autotools configuration + - #632872, Cannot build devhelp - Replace GDK_ with + GDK_KEY_ + - #635162, Devhelp won't build due to the new GApplication API + +Updated translations: ast, be, bg, ca, ca@valencia, cs, da, de, el, +en_GB, es, et, fr, gl, he, hu, id, it, ja, ko, lt, nb, nl, pl, pt_BR, +pt, ro, ru, sk, sl, sr@latin, sr, sv, th, ug, zh_CN, zh_HK, zh_TW + +Many thanks to all contributors: Gil Forcada, Gheyret T.Kenji, Bruce Cowan, +Kalev Lember, Petr Kovar, Yinghua Wang, Mario Blättermann, Dirgita, Philip +Withnall, Duarte Loreto, Theppitak Karoonboonyanan, Kjartan Maraas, +Gintautas Miliauskas, Javier Jardón, Gabor Kelemen, Bastien Nocera, Chao- +Hsiung Liao, Lucian Adrian Grijincu, Takayuki KUSANO, Lucas Lommer, +Christian Kirbach, Roman Mátyus, Kenneth Nielsen, Jorge González, Fran +Diéguez, Piotr Drąg, Claude Paroz, Милош Поповић, Marek +Černocký, Aleksander Morgado, Yavor Doganov, Matthias Clasen, Changwoo +Ryu, Aron Xu, Ivar Smolin, Eiichi Sato, Wouter Bolsterlee, Daniel Nylander, +Bruno Brouard, Xandru Armesto, Matej Urbančič, Jonh Wendell, Johannes +Schmid, Damyan Ivanov, Leonid Kanter, Wladzimir Manulenka, Andika Triwidada, +Carles Ferrando, Francesco Marletta, Saleem Abdulrasool, Daniel +Șerbănescu, Olav Vitters, Simos Xenitellis, Yaron Shahrabani + +============== +Version 2.90.5 +============== + +Fixed bugs: + + - #614798, find string is slow + - #619202, Add the possibility of enabling or disabling specific books + +Many thanks to all contributors: Aleksander Morgado + +NEW in 2.30.1 +============= + +Updated translations: ca@valencia, en@shaw, eo, fr, gl, hy, id, nl, +sl, sq, ug + +Many thanks to all contributors: Kristjan Schmidt, Laurent Dhima, Andika +Triwidada, Gheyret Kenji, noch, Wouter Bolsterlee, Fran Diéguez, Matej +Urbančič, Claude Paroz, Thomas Thurman, Carles Ferrando + +NEW in 2.30.0 +============= + +Updated translations: ar, bn, ca, cs, da, el, en_GB, fi, gl, hu, it, +ko, lt, pl, pt, ro, ru, sr@latin, sr + +Many thanks to all contributors: Changwoo Ryu, Leonid Kanter, Lucian Adrian +Grijincu, Gil Forcada, Miloš Popović, Duarte Loreto, Petr Kovar, Francesco +Marletta, Tommi Vainikainen, Ask H. Larsen, Piotr Drąg, Nikos Bakaoukas, +Khaled Hosny, Jamil Ahmed, Fran Diéguez, Bruce Cowan, Gintautas Miliauskas, +Gabor Kelemen, Pablo Castellano + +NEW in 2.29.90 +============== + +Fixed bugs: + + - #601048, Segfaults when typing too fast in the search box + - #603623, libdevhelp-1.0.pc is missing webkit-1.0 + +Updated translations: ast, bg, bn, de, fr, he, pt_BR, th, uk, zh_HK, +zh_TW + +Many thanks to all contributors: Matthew Barnes, Christian Kirbach, +Alexander Shopov, Theppitak Karoonboonyanan, Jamil Ahmed, Jonh Wendell, +Xandru Armesto Fernandez, Yaron Sharabani, Claude Paroz, Chao-Hsiung Liao, +Maxim V. Dziumanenko + +NEW in 2.29.3 +============= + +Fixed bugs: + + - #603040, Opening the wrong arrow in the left side bar + +Updated translations: ca@valencia, sv + +Many thanks to all contributors: Carles Ferrando, Daniel Nylander + +NEW in 2.29.2: +============== + +Fixed bugs: + + - #601651, devhelp needs to link against libgthread + +Updated translations: en@shaw, es, et, gl, nb, zh_CN + +Many thanks to all contributors: Emilio Pozuelo Monfort, Richard Ma, Antón +Méixome, Jorge González, Thomas Thurman, Kjartan Maraas, Ivar Smolin + +NEW in 2.29.1: +============== + + - #544388, Fullscreen mode + - #593566, Miscellaneous string fixes + +Updated translations: ca, es, is, sl, zh_CN + +Many thanks to all contributors: Anna Jonna Armannsdottir, Gil Forcada, +Jonathon Jongsma, Jorge González, Philip Withnall, Matej Urbančič, Tao +Wei + +NEW in 2.28.1: +============== + +Fixed bugs: + + - #589435, Track pad horizontal scrolling + - #596808, Fix several leaks reported by valgrind + - #596810, Clicking close button on a tab always closes the current tab + - #598598, Linking across GNOME components + +Updated translations: ca, ja, ru, zh_CN + +Many thanks to all contributors: Leonid Kanter, Gil Forcada, Jonathon Jongsma, +Takeshi Aihana, Tao Wei + +NEW in 2.28.0: +============== + +Fixed bugs: + + - #594633, Remove libwnck from Requires in .pc file + - #595567, devhelp launches along with a spurious empty browser window + +Updated translations: bg, cs, da, fi, gl, hu, mai, ro, sl, sr@latin, +sr, th, uk, zh_CN, zh_HK, zh_TW + +Many thanks to all contributors: Gabor Kelemen, Lucas Lommer, Branko +Kokanović, Rajesh Ranjan, Alexander Shopov, Ilkka Tuohela, Ask H. Larsen, +Fran Diéguez, Yanko Kaneti, Theppitak Karoonboonyanan, Matej Urbančič, +Adi Roiban, Aron Xu, Chao-Hsiung Liao, Maxim V. Dziumanenko + +NEW in 2.27.92: +=============== + +New maintainer (Frederic Peters) (to Richard, thanks for everything). + +Fixed bugs: + + - #517003, Translated strings are not being used in gedit's plugin + - #552640, New tabs should not steal focus + - #563036, Desensitize zoom items when non applicable + - #566117, Book titles should be forced to be single line + - #566459, generate Enumeration and Flag Types + - #568172, Wrong management of fonts + - #571626, Space should scroll down + - #578964, Make Ctrl+C copy the symbol name in the symbol listing pane + - #579539, New tabs don't suit a window well + - #585110, Use accessor functions instead direct access + - #585670, Blank Screen on DevHelp Assistant + - #587984, emacs devhelp-word-at-point clobbers global "w" + - #587986, html2xml.py does not close + - #587999, Page sensitive searches have been broken. + - #588655, Work around deprecated g_mapped_file_free() + - #588850, Installs empty images dir + - #590207, link in About dialog is out of date + - #590209, toolbar actions could use some is_important love + - #591046, Assistant window resizes automatically + - #592157, Application name is desktop file and main window is not + translatable + - #592712, build fails using automake 1.11 + - #592750, Support silent build rules with automake 1.11 + - #593174, Incredibly small string fix + +Updated translations: ar, de, en_GB, et, fr, hu, it, nb, pl, pt_BR, +pt, sv, tr + +Many thanks to all contributors: Duarte Loreto, Michael Gratton, Kjartan +Maraas, Ivar Smolin, Khaled Hosny, Baris Cicek, Daniel Nylander, Mario +Blättermann, Luca Ferretti, Tomasz Dominikowski, Claude Paroz, Bruce Cowan, +Richard Cohen, Javier Jardón, Gabor Kelemen, Gustavo Noronha Silva, Og B. +Maciel + +NEW in 0.23.1: +============== + +This is a build fix release for latest glib and a translation update. +The updated translations are: + +Updated translations: ca, ko, sv, es, cs, el, it, ja, ga, pt_BR, uk, +et, fr, se, zh_CN, zh_HK, bg, ge, he + +Many thanks to the translators: Gil Forcada, Changwoo Ryu, +Jani Monoses, Daniel Nylander, Jorge Gonzalez Gonzalez, Petr Kovar, +Jennie Petoumenou, Francesco Marletta, Yair Hershkovitz, +Takeshi Aihana, Ignacio Casal Quinteiro, Miquel Esplà, +Leonardo Ferreira Fontenelle, Matej Urban, Ihar Hrachyshka, +Maxim V. Dziumanenko, Maxim V. Dziumanenko, Socratis Vavilis, +Antón Méixome, Βασίλης Κοντογιάνης, Mattias Põldaru, Kjartan Maraas, +Claude Paroz, Chao-Hsiung Liao, Theppitak Karoonboonyanan, +Ivar Smolin, Yavor Doganov, Christian Kirbach + +NEW in 0.23: +============ + +This is a translation update. The updated translations are: + +Updated translations: hu, nb, pt_BR, zh_CN, th, sl, et, sv + +Many thanks to the translators: Gabor Kelemen, Kjartan Maraas, Taylon +Silmer, Deng Xiyue, Visal Srivisal, Matej Urbančič, Mattias Põldaru, +Daniel Nylander + + +NEW in 0.22: +============ + +This is the first release from the WebKit branch. Many thanks to Alp +Toker, Frederic Peters and Jan Alonzo for the initial patches. + +Updated translations: ar, be@latin, bg, bn_IN, ca, cs, da, de, en_GB, +es, et, fi, fr, gl, he, hr, hu, it, ja, ko, lt, mk, nb, ne, nl, nn, +oc, pl, ps, pt, pt_BR, ru, sq, sv, th, tr, uk, vi, zh_TW + +Many thanks to the translators: Alexander Shopov, Arangel Angov, Artur +Flinta, Baris Cicek, Changwoo Ryu, Claude Paroz, Clytie Siddall, +Daniel Nylander, David Lodge, Djihed Afifi, Duarte Loreto, Eskild +Hustvedt, Gabor Kelemen, Gil Forcada, Gintautas Miliauskas, Hong Kong, +Ignacio Casal Quinteiro, Ihar Hrachyshka, Ilkka Tuohela, Jonh Wendell, +Jorge Gonzalez, Jovan Naumovski, Kenneth Nielsen, Kjartan Maraas, +Laurent Dhima, Leonardo Ferreira Fontenelle, Luca Ferretti, Maxim +Dziumanenko, Pawan Chitrakar, Petr Kovar, Philipp Kerling, Priit Laes, +Richard Hult, Robert Sedak, Runa Bhattacharjee, Takeshi AIHANA, +Theppitak Karoonboonyanan, Wouter Bolsterlee, Yair Hershkovitz, Yannig +Marchegay, Yuri Kozlov. + + +NEW in 0.19: +============ + +- Specify an icon for the GEdit plugin (bug #512000) +- Updated translations: ar, be@latin, ca, nl, pt_BR, pt + +Many thanks to the translators: Leonardo Ferreira Fontenelle, Pedro de +Medeiros, Og Maciel, Wouter Bolsterlee, Duarte Loreto, Khaled Hosny, +Ihar Hrachyshka, Joan Duran, Djihed Afifi. + + +NEW in 0.18: +============ + +- Use proper size icon for close buttons in tabs (bug #510984, Luca Ferretti) +- Polish the new Zoom UI (bugs #508510 and #508513, Wouter Bolsterlee) +- Updated translations: be, ca, de, es, et, gl, he, ja, nb, sv, th, uk + +Many thanks to the translators: Ihar Hrachyshka, Gil Forcada, Andre +Klapper, Jorge Gonzalez, Priit Laes, Ignacio Casal Quinteiro, Yair +Hershkovitz, Takeshi AIHANA, Kjartan Maraas, Daniel Nylander, +Theppitak Karoonboonyanan, Maxim Dziumanenko. + + +NEW in 0.17: +============ + +- Devhelp doesn't run new instance on new display (bug #354895) +- New icons from Andreas Nilsson (bug #463131) +- Add zoom actions (bug #144517, Cosimo Cecchi) +- Add close buttons to tabs (bug #479306, Cosimo Cecchi) +- Fix build against xyulrunner 1.9 (bug #499050, Matthias Clasen) +- Remove obsolete dependencies (libgnomeui and gnome-vfs, bug #484896) + and make libwnck optional +- Use po/LINGUAS (bug #464108, Gilles Dartiguelongue) +- Updated and new translations: ar, be@latin, es, et, gl, nb, oc, sl, + sv, ta, vi + +Many thanks to all the translators: Djihed Afifi, Sohaib Afifi, Ihar +Hrachyshka, Jorge Gonzalez, Priit Laes, Ignacio Casal Quinteiro, +Kjartan Maraas, Yannig Marchegay, Matej Urbančič, I. Felix, Clytie +Siddall + + +NEW in 0.16.1: +============== + +Updated translations: ru, fr, bg, nl, be@latin, pt, sq, bn, de, ko, +it, hu, lt, ar, et, ca, ja, pl + +Many thanks to all the translators: Nickolay V. Shmyrev, Stéphane +Raimbault, Alexander Shopov, Wouter Bolsterlee, Ihar Hrachyshka, +Duarte Loreto, Laurent Dhima, Khandakar Mujahidul Islam, Jamil Ahmed, +Hendrik Richter, Changwoo Ryu, Luca Ferretti, Gabor Kelemen, Gintautas +Miliauskas, Djihed Afifi, Priit Laes, Gil Forcada, Takeshi AIHANA, +Artur Flinta + + +NEW in 0.16: +============ + +- Changed keybinding in GEdit plugin from F7 to F2 to avoid a conflict + with GTK+ 2.12 + +Translations: +- Updated gu: Ankit Patel +- Updated vi: Clytie Siddall, Nguyễn Thái Ngọc Duy +- Updated fi: Ilkka Tuohela +- Updated et: Priit Laes +- Updated gl: Ignacio Casal Quinteiro +- Updated es: Jorge Gonzalez +- Updated bn_IN: Runa Bhattacharjee +- Updated sr.po, sr@Latn: Goran Rakić +- Updated pt: Duarte Loreto +- Updated nb: Kjartan Maraas +- Updated tr: Baris Cicek +- Updated th: Theppitak Karoonboonyanan +- Updated te: Sunil Mohan Adapa +- Updated en_CA: Adam Weinberger +- Updated fr: Stéphane Raimbault +- Updated bg: Alexander Shopov +- Updated pt_BR: Raphael Higino +- Updated de: Johannes Schmid +- Updated da: Kenneth Nielsen +- Updated nl: Wouter Bolsterlee +- Updated hu: Gabor Kelemen +- Updated zh_CN: Funda Wang +- Updated sv: Daniel Nylander +- Updated mk: Jovan Naumovski ++ +- Updated uk: Maxim Dziumanenko +- Updated sl: Matic Žgur + + +NEW in 0.15: +============ + +- Fix build on Solaris (bug #439054) +- Don't hardcode the png extension in desktop file (bug #440434, Loïc Minier) + +Translations: +- Updated ja: Takeshi AIHANA +- Updated th: Theppitak Karoonboonyanan + + +NEW in 0.14: +============ + +- Use theme colors for gecko 1.9 and later (bug #347967) +- Call g_thread_init (bug #414221, Mikael Hallendal) +- Add --focus-search command line option (bug #409182, Ryan Lortie) +- Add typeahead searching (bug #116322, Huang Peng) +- Update information about where books should be installed (bug #411748) +- Add missing mnemonics (bug #411376, Mariano Suárez-Alvarez) +- GNOME Goal #3: Remove "Application" category (bug #417613, Kamil Páral) + +Translations: +- Updated el: Simos Xenitellis +- Updated gu: Ankit Patel +- Updated vi: Nguyễn Thái Ngọc Duy +- Updated it: Luca Ferretti +- Updated ar: Theppitak Karoonboonyanan +- Updated et: Priit Laes +- Updated gl: Ignacio Casal Quinteiro +- Updated es: Jorge Gonzalez, Vincent van Adrighem +- Updated bn_IN: Runa Bhattacharjee +- Updated ru: Nickolay V. Shmyrev +- Updated rw: Ihar Hrachyshka +- Updated nl: Wouter Bolsterlee +- Updated pt: Vincent van Adrighem +- Updated nb: Kjartan Maraas +- Updated zh_HK.po, zh_TW: Abel Cheung +- Updated lv: Vincent van Adrighem +- Updated lt: Gintautas Miliauskas +- Updated th: Theppitak Karoonboonyanan +- Updated pl: Artur Flinta +- Updated be: Ihar Hrachyshka +- Updated fr: shortcuts +- Updated pt_BR: Leonardo Ferreira Fontenelle, Raphael Higino, Ihar Hrachyshka, Vincent van Adrighem +- Updated hr: Ihar Hrachyshka +- Updated da: Peter Bach +- Updated dz: Pema Geyleg +- Updated hu: Gabor Kelemen +- Updated ja: Takeshi AIHANA +- Updated be@latin: Ihar Hrachyshka +- Updated zh_CN: Funda Wang +- Updated ml: Ani Peter +- Updated sq: Laurent Dhima +- Updated sv: Richard Hult +- Updated en_GB: David Lodge +- Updated uk: Maxim Dziumanenko +- Updated or: Subhransu Behera + + +NEW in 0.13: +============ + +- Revert theme change since it breaks gecko < 1.9 +- Make deprecated keywords grey +- Only search for books in the XDG data/home directories +- Fixed #310542, Improve the gtk-doc devhelp format (Richard) +- Fixed #349229, Documentation page header is transparent (Richard) +- Fixed #349352, GConf schema has wrong key (Jonathon Jongsma) +- Fixed #349880, add a generic name to the .desktop file (Matthias Clasen) +- Fixed #341170, Added gecko_home variable to .pc file (Naba Kumar) +- Fixed #334867, Initialize the HTML view to display about:blank (David Trowbridge) + +Translations: +- Updated el: Kostas Papadimas +- Updated fr: Christophe Merlet +- Updated bg: Alexander Shopov +- Updated sv: Richard Hult +- Updated pt: Duarte Loreto +- Updated vi: Clytie Siddall +- Updated nb: Kjartan Maraas +- Updated de: Hendrik Richter +- Updated ko: Changwoo Ryu +- Updated ne: Pawan Chitrakar +- Updated it: Alessio Frusciante +- Updated ar: Djihed Afifi +- Updated es: Francisco Javier F. Serrador +- Updated sl: Matic Zgur +- Updated et: Priit Laes +- Updated hu: Gabor Kelemen +- Updated gl: Ignacio Casal Quinteiro +- Updated ca: Josep Puigdemont i Casamajó +- Updated en_GB: David Lodge + + +Devhelp 0.12: +------------- + +* Add advanced (book/page) search options (Tristan Van Berkom) +* Improve libdevhelp (Tristan, Johannes Schmid) +* Add --version option (Tristan) +* Fix mnemomics (Wouter Bolsterlee) +* Add a very simple gedit plugin (Richard) +* Add quit menu item (Richard) +* Build fixes and clean ups (Behdad Esfahbod) +* Lots of Gecko build fixes and improvements (Christian Persch) +* Open external links in browser (Christian) +* UI tweaks (Christian) +* Shiny new icon (Marcus Leyman, Behdad) +* Read books installed in XDG data dirs (Antoine Dopffer, Behdad) +* Use correct category in desktop file (Stephane Loeuillet) +* Translations (Miloslav Trmac, Xavier Conde, Ilkka Tuohela, Francisco + Javier F. Serrador, Gabor Kelemen, Ignacio Casal Quinteiro, Vincent + van Adrighem, Takeshi AIHANA, Daniel Nylander, Sergey Al. Safonov, + Clytie Siddall, Chao-Hsiung Liao) + + +Devhelp 0.11: +------------- +* Tab support (based on patch from Brent Smith) +* Support for multiple windows (based on patch from Nirmal Kumar) +* Parse the new gtk-doc format (Richard) +* Reuse devhelp windows from the current workspace only (Richard) +* Sync the contents tree with the actual selection (Richard) +* Smart case searching (Ruben Vermeersch) +* Use book title + html title as window title (Tommi Komulainen) +* Improve build against various mozilla-derivates (Peter Volkov, + Christian Persch, Robert O'Callahan) +* General UI tweaks and bug fixes (Richard, Mikael, Christian, Paolo + Borelli, Pedro Villavicencio) +* New and updated translations: bg, cs, de, en_CA, es, fi, gl, hu, it, + ja, nb, ne, nl, no, sk, sv, vi, zh_TW + +Devhelp 0.10: +------------- +* Added third party contributed scripts for generating Devhelp books. +* Mozilla build fixes (Christian Persch) +* Improved Bug Buddy support (Christoffer Olsen) +* Fix to not have the HTML widget steal focus (Tommi Komulainen) +* Ported to GTK+ 2.6 and removed libgnomeui depdendency. (Kristof Vansant) +* Window presentation fixes for new Metacity (Richard Hult) +* Fixed crash when searching (Ray Strode) +* Plugged memory leak in the gecko bindings (Paolo Borelli) +* New translations (hu, rw) +* Updated translations + (el, en_CA, de, cs, ca, sk, sv, en_GB) + +Devhelp 0.9.3: +-------------- +* Compiling against firefox (Christian Persch) +* Get rid of startup script (Christian Persch) +* Fixed font sizes +* Render scrollbars with GTK theme +* Updated translations (de) + +Devhelp 0.9.2: +-------------- +* Added accelerators for back and forward (Johan Svedberg) +* Bacon-love for IPC +* Support searching for substrings "gtk new" (Nickolay V. Shmyrev) +* New translations (nb, gu, mk) +* Updated translations + (sq, no, fi, pt, sq, da, be, nb, fr, it, zh_TW) + +Devhelp 0.9.1: +-------------- +* Save maximized state +* Support for Mozilla 1.7 +* Show direct hits directly. +* Make sure that the window has a minimum width even if GConf setup isn't + working properly. +* Make sure user installed documentation is shown before system installed. +* New translations (en_GB, en_CA) +* Updated translations + (ja, cs, nl, hr, sk, sr, es, en_GB, uk, is, pt_BR, sv,fi, es, sq) + +Devhelp 0.9: +------------ +* Depending on Mozilla for HTML rendering +* Depending on GTK 2.3/2.4 +* Fixed History support +* Fixed a number of bugs related to Gtkhtml2 +* Added support for customized fonts +* Saves window layout/geometry/location +* New translations (pa) +* Updated translations + (ja, hi, fr, nl, it, da, no, pt_BR, zh_CN, sv) + +Devhelp 0.8: +------------ +* Installs a library and header files to embed Devhelp widgets + into a program. Used by Anjuta. +* Build fix for FreeBSD +* New translations (tr, ca) +* Updated translations + (cs, sv, ja, sk, nl, de, es, pl, is, ms, pt, no, da, fr, az) + +Devhelp 0.7: +------------ +* Crash fix (Ross) +* Better error handling (Ross) +* Plug memory leak (Mikael) +* Usability fixes (Richard) +* Dist the emacs and vim scripts (Richard) +* Added --geometry (Richard) +* UI fixes (Richard) +* Listen to GConf toolbar and menu settings (Richard) +* Fixed bug #114558 (Mike Harn, + Richard) + + +Devhelp 0.6: +------------ +* Added both html widget implementations to tarball (Mikael) +* Lots of work on error handling (Ross) +* Fixes to searched paths (Ross) +* Added gnome-vfs MIME support (Ross) +* New and updated translations, thanks to Kang Jeong-Hee, Vincent van Adrighem, + Duarte Loreto, Zbigniew Chyla, Takeshi AIHANA, Metin Amiroff, + Samúel Jón Gunnarsson, Guntupalli Karunakar. + +Devhelp 0.5: +------------ +* GNOME 2 port (Mikael, Richard) +* LOTS of code cleanups (Mikael) +* Support gzipped books (Ross Burton) +* Better activation (Richard) +* Support for gtk-doc built .devhelp files (Mikael) + (Thanks Jamesh!!) + +Devhelp 0.4: +------------ +* Raise minimized window (Richard) +* Bug fixes (Mikael, Richard) +* Limit history length (Nils O. Selåsdal) +* Saner installdirs (Mikael) + +Devhelp 0.3: +------------ +* Lots of bugfixes. (Johan, Mikael, Richard) +* Debian and Red Hat packages now availible. (Johan) +* Devhelp can now handle different versions of the same book + much better. (Johan) +* New and updated translations, Thanks goes to Ismael Olea, + Joe Man, Marcel Telka, Alessio Frusciante, Kjartan Maraas, + Christophe Fergeau, Zbigniew Chyla, Ole Laursen and + Christian Rose. + +Devhelp 0.2: +------------ +* New maintainer: Mikael Hallendal is now + maintainer Devhelp. +* Bonobization: To make it easier to embedd Devhelp in IDE's (like + gIDE and Anjuta) Devhelp now consists of a couple of controlls which + can be used in other applications. (Mikael Hallendal) +* Code-cleanups, Cleaned up the code to make it more + maintainable. (Mikael Hallendal). + +Devhelp 0.1.1: +-------------- +* A few bugfixes. Should compile with non cvs version of libxml now. + +Devhelp 0.1.0: +-------------- +* Initial release. diff --git a/README b/README new file mode 100644 index 0000000..3975d5e --- /dev/null +++ b/README @@ -0,0 +1,91 @@ +Devhelp +======= + +The Devhelp web page: + + https://wiki.gnome.org/Apps/Devhelp + +Dependencies +------------ + +- glib >= 2.40 +- gtk+ >= 3.22 +- webkit2gtk-4.0 >= 2.19.2 +- gsettings-desktop-schemas + +Description +----------- + +Devhelp is a developer tool for browsing and searching API documentation. +It provides an easy way to navigate through libraries and to search by +function, struct, or macro. + +The documentation must be installed locally, so an internet connection is +not needed to use Devhelp. + +Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are +well supported. But other development platforms can be supported as well, +as long as the API documentation is available in HTML and a *.devhelp2 +index file is generated. + +Devhelp integrates with other applications such as Glade, Builder or +Anjuta, and plugins are available for different text editors (gedit, Vim, +Emacs, Geany, …). + +Integration with other developer tools +-------------------------------------- + +Devhelp provides some command line options, such as --search and +--search-assistant. A text editor plugin can for example launch the command +`devhelp --search function_name` when a keyboard shortcut is pressed, with the +function_name under the cursor. + +Devhelp also provides a shared library, to integrate the GTK+ widgets inside an +IDE. It is used for example by Builder and Anjuta. + +For the --search command line option, see the class description of +DhKeywordModel, the search string supports additional features useful for IDEs +or other developer tools. + +How it finds the API documentation +---------------------------------- + +When you build (or install) a GNOME library, GTK-Doc will build an API +reference for you and install it into: + + $datadir/gtk-doc/html/$PACKAGE/ + +Along with the HTML files, a *.devhelp and/or *.devhelp2 index file is +also generated automatically. Thus Devhelp can simply scan that folder +for those index files and display the books they represent. + +Devhelp uses the "XDG Base Directory Specification" to find +documentation. You can read more about that specification here: + + https://specifications.freedesktop.org/basedir-spec/latest/ + +The list of locations searched for devhelp books is: + +$XDG_DATA_HOME/devhelp/books + e.g. /home/ross/.local/share/devhelp/books/glib-2.0/glib-2.0.devhelp2 + +$XDG_DATA_HOME/gtk-doc/html + e.g. /home/ross/.local/share/gtk-doc/html/glib-2.0/glib-2.0.devhelp2 + +$XDG_DATA_DIRS/devhelp/books + e.g. /usr/local/share/devhelp/books/glib-2.0/glib-2.0.devhelp2 + +$XDG_DATA_DIRS/gtk-doc/html + e.g. /usr/local/share/gtk-doc/html/glib-2.0/glib-2.0.devhelp2 + +Note that the two latter consist of :-separated lists of directories to +look for. Those environment variables are normally set up by the +desktop environment or distribution. + +Note that the name of the directory the *.devhelp2 file is in and the +name of the *.devhelp2 file (minus the extension) must match. + +The first version of the index file format (with the *.devhelp file +extension) is deprecated and its support will probably be removed in a +future version. You should use the second version, with the *.devhelp2 +file extension. diff --git a/aclocal.m4 b/aclocal.m4 new file mode 100644 index 0000000..e3c2f57 --- /dev/null +++ b/aclocal.m4 @@ -0,0 +1,1420 @@ +# generated automatically by aclocal 1.15.1 -*- Autoconf -*- + +# Copyright (C) 1996-2017 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. + +m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])]) +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],, +[m4_warning([this file was generated for autoconf 2.69. +You have another version of autoconf. It may work, but is not guaranteed to. +If you have problems, you may need to regenerate the build system entirely. +To do so, use the procedure documented by the package, typically 'autoreconf'.])]) + +# Copyright (C) 2002-2017 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. +# (This private macro should not be called outside this file.) +AC_DEFUN([AM_AUTOMAKE_VERSION], +[am__api_version='1.15' +dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to +dnl require some minimum version. Point them to the right macro. +m4_if([$1], [1.15.1], [], + [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl +]) + +# _AM_AUTOCONF_VERSION(VERSION) +# ----------------------------- +# aclocal traces this macro to find the Autoconf version. +# This is a private macro too. Using m4_define simplifies +# the logic in aclocal, which can simply ignore this definition. +m4_define([_AM_AUTOCONF_VERSION], []) + +# AM_SET_CURRENT_AUTOMAKE_VERSION +# ------------------------------- +# Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced. +# This function is AC_REQUIREd by AM_INIT_AUTOMAKE. +AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION], +[AM_AUTOMAKE_VERSION([1.15.1])dnl +m4_ifndef([AC_AUTOCONF_VERSION], + [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl +_AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))]) + +# AM_AUX_DIR_EXPAND -*- Autoconf -*- + +# Copyright (C) 2001-2017 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], +[AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` +]) + +# AM_CONDITIONAL -*- Autoconf -*- + +# Copyright (C) 1997-2017 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_CONDITIONAL(NAME, SHELL-CONDITION) +# ------------------------------------- +# Define a conditional. +AC_DEFUN([AM_CONDITIONAL], +[AC_PREREQ([2.52])dnl + m4_if([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])], + [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl +AC_SUBST([$1_TRUE])dnl +AC_SUBST([$1_FALSE])dnl +_AM_SUBST_NOTMAKE([$1_TRUE])dnl +_AM_SUBST_NOTMAKE([$1_FALSE])dnl +m4_define([_AM_COND_VALUE_$1], [$2])dnl +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-2017 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. + + +# 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", "OBJC", "OBJCXX", "UPC", or "GJC". +# 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 + +m4_if([$1], [CC], [depcc="$CC" am_compiler_list=], + [$1], [CXX], [depcc="$CXX" am_compiler_list=], + [$1], [OBJC], [depcc="$OBJC" am_compiler_list='gcc3 gcc'], + [$1], [OBJCXX], [depcc="$OBJCXX" am_compiler_list='gcc3 gcc'], + [$1], [UPC], [depcc="$UPC" am_compiler_list=], + [$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". + rm -rf conftest.dir + 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 + am__universal=false + m4_case([$1], [CC], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac], + [CXX], + [case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac]) + + 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 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # 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. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + 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 + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj 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], [dnl +AS_HELP_STRING( + [--enable-dependency-tracking], + [do not reject slow dependency extractors]) +AS_HELP_STRING( + [--disable-dependency-tracking], + [speeds up one-time build])]) +if test "x$enable_dependency_tracking" != xno; then + am_depcomp="$ac_aux_dir/depcomp" + AMDEPBACKSLASH='\' + am__nodep='_no' +fi +AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno]) +AC_SUBST([AMDEPBACKSLASH])dnl +_AM_SUBST_NOTMAKE([AMDEPBACKSLASH])dnl +AC_SUBST([am__nodep])dnl +_AM_SUBST_NOTMAKE([am__nodep])dnl +]) + +# Generate code to set up dependency tracking. -*- Autoconf -*- + +# Copyright (C) 1999-2017 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_OUTPUT_DEPENDENCY_COMMANDS +# ------------------------------ +AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS], +[{ + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + 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. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/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"` + # 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'`; 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"]) +]) + +# Do all the work for Automake. -*- Autoconf -*- + +# Copyright (C) 1996-2017 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 macro actually does too much. Some checks are only needed if +# your package does certain things. But this isn't really a big deal. + +dnl Redefine AC_PROG_CC to automatically invoke _AM_PROG_CC_C_O. +m4_define([AC_PROG_CC], +m4_defn([AC_PROG_CC]) +[_AM_PROG_CC_C_O +]) + +# 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.65])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 +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + AC_SUBST([am__isrc], [' -I$(srcdir)'])_AM_SUBST_NOTMAKE([am__isrc])dnl + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + AC_MSG_ERROR([source directory already configured; run "make distclean" there first]) + fi +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], +[AC_DIAGNOSE([obsolete], + [$0: two- and three-arguments forms are deprecated.]) +m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl + AC_SUBST([PACKAGE], [$1])dnl + AC_SUBST([VERSION], [$2])], +[_AM_SET_OPTIONS([$1])dnl +dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT. +m4_if( + m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]), + [ok:ok],, + [m4_fatal([AC_INIT should be called with package and version arguments])])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]) +AC_REQUIRE([AM_PROG_INSTALL_SH])dnl +AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl +AC_REQUIRE([AC_PROG_MKDIR_P])dnl +# For better backward compatibility. To be removed once Automake 1.9.x +# dies out for good. For more background, see: +# +# +AC_SUBST([mkdir_p], ['$(MKDIR_P)']) +# We need awk for the "check" target (and possibly the TAP driver). 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])], + [m4_define([AC_PROG_CC], + m4_defn([AC_PROG_CC])[_AM_DEPENDENCIES([CC])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_CXX], + [_AM_DEPENDENCIES([CXX])], + [m4_define([AC_PROG_CXX], + m4_defn([AC_PROG_CXX])[_AM_DEPENDENCIES([CXX])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJC], + [_AM_DEPENDENCIES([OBJC])], + [m4_define([AC_PROG_OBJC], + m4_defn([AC_PROG_OBJC])[_AM_DEPENDENCIES([OBJC])])])dnl +AC_PROVIDE_IFELSE([AC_PROG_OBJCXX], + [_AM_DEPENDENCIES([OBJCXX])], + [m4_define([AC_PROG_OBJCXX], + m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl +]) +AC_REQUIRE([AM_SILENT_RULES])dnl +dnl The testsuite driver may need to know about EXEEXT, so add the +dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen. This +dnl macro is hooked onto _AC_COMPILER_EXEEXT early, see below. +AC_CONFIG_COMMANDS_PRE(dnl +[m4_provide_if([_AM_COMPILER_EXEEXT], + [AM_CONDITIONAL([am__EXEEXT], [test -n "$EXEEXT"])])])dnl + +# POSIX will say in a future version that running "rm -f" with no argument +# is OK; and we want to be able to make that assumption in our Makefile +# recipes. So use an aggressive probe to check that the usage we want is +# actually supported "in the wild" to an acceptable degree. +# See automake bug#10828. +# To make any issue more visible, cause the running configure to be aborted +# by default if the 'rm' program in use doesn't match our expectations; the +# user can still override this though. +if rm -f && rm -fr && rm -rf; then : OK; else + cat >&2 <<'END' +Oops! + +Your 'rm' program seems unable to run without file operands specified +on the command line, even when the '-f' option is present. This is contrary +to the behaviour of most rm programs out there, and not conforming with +the upcoming POSIX standard: + +Please tell bug-automake@gnu.org about your system, including the value +of your $PATH and any error possibly output before this message. This +can help us improve future automake versions. + +END + if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then + echo 'Configuration will proceed anyway, since you have set the' >&2 + echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 + echo >&2 + else + cat >&2 <<'END' +Aborting the configuration process, to ensure you take notice of the issue. + +You can download and install GNU coreutils to get an 'rm' implementation +that behaves properly: . + +If you want to complete the configuration process using your problematic +'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM +to "yes", and re-run configure. + +END + AC_MSG_ERROR([Your 'rm' program is bad, sorry.]) + fi +fi +dnl The trailing newline in this macro's definition is deliberate, for +dnl backward compatibility and to allow trailing 'dnl'-style comments +dnl after the AM_INIT_AUTOMAKE invocation. See automake bug#16841. +]) + +dnl Hook into '_AC_COMPILER_EXEEXT' early to learn its expansion. Do not +dnl add the conditional right here, as _AC_COMPILER_EXEEXT may be further +dnl mangled by Autoconf and run in a shell conditional statement. +m4_define([_AC_COMPILER_EXEEXT], +m4_defn([_AC_COMPILER_EXEEXT])[m4_provide([_AM_COMPILER_EXEEXT])]) + +# 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_arg=$1 +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count]) + +# Copyright (C) 2001-2017 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 +if test x"${install_sh+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi +AC_SUBST([install_sh])]) + +# Copyright (C) 2003-2017 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. + +# 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-2017 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_MAKE_INCLUDE() +# ----------------- +# Check to see how make treats includes. +AC_DEFUN([AM_MAKE_INCLUDE], +[am_make=${MAKE-make} +cat > confinc << 'END' +am__doit: + @echo this is the am__doit target +.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 +# Ignore all kinds of additional output from 'make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi +AC_SUBST([am__include]) +AC_SUBST([am__quote]) +AC_MSG_RESULT([$_am_result]) +rm -f confinc confmf +]) + +# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*- + +# Copyright (C) 1997-2017 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_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 is modern enough. +# If it is, set am_missing_run to use it, otherwise, to nothing. +AC_DEFUN([AM_MISSING_HAS_RUN], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([missing])dnl +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --is-lightweight"; then + am_missing_run="$MISSING " +else + am_missing_run= + AC_MSG_WARN(['missing' script is too old or missing]) +fi +]) + +# Helper functions for option handling. -*- Autoconf -*- + +# Copyright (C) 2001-2017 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_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], +[m4_foreach_w([_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) 1999-2017 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_CC_C_O +# --------------- +# Like AC_PROG_CC_C_O, but changed for automake. We rewrite AC_PROG_CC +# to automatically call this. +AC_DEFUN([_AM_PROG_CC_C_O], +[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl +AC_REQUIRE_AUX_FILE([compile])dnl +AC_LANG_PUSH([C])dnl +AC_CACHE_CHECK( + [whether $CC understands -c and -o together], + [am_cv_prog_cc_c_o], + [AC_LANG_CONFTEST([AC_LANG_PROGRAM([])]) + # Make sure it works both with $CC and with simple cc. + # Following AC_PROG_CC_C_O, we do the test twice because some + # compilers refuse to overwrite an existing .o file with -o, + # though they will create one. + am_cv_prog_cc_c_o=yes + for am_i in 1 2; do + if AM_RUN_LOG([$CC -c conftest.$ac_ext -o conftest2.$ac_objext]) \ + && test -f conftest2.$ac_objext; then + : OK + else + am_cv_prog_cc_c_o=no + break + fi + done + rm -f core conftest* + unset am_i]) +if test "$am_cv_prog_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 +AC_LANG_POP([C])]) + +# For backward compatibility. +AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])]) + +# Copyright (C) 1999-2017 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_PATH_PYTHON([MINIMUM-VERSION], [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +# --------------------------------------------------------------------------- +# Adds support for distributing Python modules and packages. To +# install modules, copy them to $(pythondir), using the python_PYTHON +# automake variable. To install a package with the same name as the +# automake package, install to $(pkgpythondir), or use the +# pkgpython_PYTHON automake variable. +# +# The variables $(pyexecdir) and $(pkgpyexecdir) are provided as +# locations to install python extension modules (shared libraries). +# Another macro is required to find the appropriate flags to compile +# extension modules. +# +# If your package is configured with a different prefix to python, +# users will have to add the install directory to the PYTHONPATH +# environment variable, or create a .pth file (see the python +# documentation for details). +# +# If the MINIMUM-VERSION argument is passed, AM_PATH_PYTHON will +# cause an error if the version of python installed on the system +# doesn't meet the requirement. MINIMUM-VERSION should consist of +# numbers and dots only. +AC_DEFUN([AM_PATH_PYTHON], + [ + dnl Find a Python interpreter. Python versions prior to 2.0 are not + dnl supported. (2.0 was released on October 16, 2000). + dnl FIXME: Remove the need to hard-code Python versions here. + m4_define_default([_AM_PYTHON_INTERPRETER_LIST], +[python python2 python3 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2.7 dnl + python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0]) + + AC_ARG_VAR([PYTHON], [the Python interpreter]) + + m4_if([$1],[],[ + dnl No version check is needed. + # Find any Python interpreter. + if test -z "$PYTHON"; then + AC_PATH_PROGS([PYTHON], _AM_PYTHON_INTERPRETER_LIST, :) + fi + am_display_PYTHON=python + ], [ + dnl A version check is needed. + if test -n "$PYTHON"; then + # If the user set $PYTHON, use it and don't search something else. + AC_MSG_CHECKING([whether $PYTHON version is >= $1]) + AM_PYTHON_CHECK_VERSION([$PYTHON], [$1], + [AC_MSG_RESULT([yes])], + [AC_MSG_RESULT([no]) + AC_MSG_ERROR([Python interpreter is too old])]) + am_display_PYTHON=$PYTHON + else + # Otherwise, try each interpreter until we find one that satisfies + # VERSION. + AC_CACHE_CHECK([for a Python interpreter with version >= $1], + [am_cv_pathless_PYTHON],[ + for am_cv_pathless_PYTHON in _AM_PYTHON_INTERPRETER_LIST none; do + test "$am_cv_pathless_PYTHON" = none && break + AM_PYTHON_CHECK_VERSION([$am_cv_pathless_PYTHON], [$1], [break]) + done]) + # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. + if test "$am_cv_pathless_PYTHON" = none; then + PYTHON=: + else + AC_PATH_PROG([PYTHON], [$am_cv_pathless_PYTHON]) + fi + am_display_PYTHON=$am_cv_pathless_PYTHON + fi + ]) + + if test "$PYTHON" = :; then + dnl Run any user-specified action, or abort. + m4_default([$3], [AC_MSG_ERROR([no suitable Python interpreter found])]) + else + + dnl Query Python for its version number. Getting [:3] seems to be + dnl the best way to do this; it's what "site.py" does in the standard + dnl library. + + AC_CACHE_CHECK([for $am_display_PYTHON version], [am_cv_python_version], + [am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[[:3]])"`]) + AC_SUBST([PYTHON_VERSION], [$am_cv_python_version]) + + dnl Use the values of $prefix and $exec_prefix for the corresponding + dnl values of PYTHON_PREFIX and PYTHON_EXEC_PREFIX. These are made + dnl distinct variables so they can be overridden if need be. However, + dnl general consensus is that you shouldn't need this ability. + + AC_SUBST([PYTHON_PREFIX], ['${prefix}']) + AC_SUBST([PYTHON_EXEC_PREFIX], ['${exec_prefix}']) + + dnl At times (like when building shared libraries) you may want + dnl to know which OS platform Python thinks this is. + + AC_CACHE_CHECK([for $am_display_PYTHON platform], [am_cv_python_platform], + [am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"`]) + AC_SUBST([PYTHON_PLATFORM], [$am_cv_python_platform]) + + # Just factor out some code duplication. + am_python_setup_sysconfig="\ +import sys +# Prefer sysconfig over distutils.sysconfig, for better compatibility +# with python 3.x. See automake bug#10227. +try: + import sysconfig +except ImportError: + can_use_sysconfig = 0 +else: + can_use_sysconfig = 1 +# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: +# +try: + from platform import python_implementation + if python_implementation() == 'CPython' and sys.version[[:3]] == '2.7': + can_use_sysconfig = 0 +except ImportError: + pass" + + dnl Set up 4 directories: + + dnl pythondir -- where to install python scripts. This is the + dnl site-packages directory, not the python standard library + dnl directory like in previous automake betas. This behavior + dnl is more consistent with lispdir.m4 for example. + dnl Query distutils for this directory. + AC_CACHE_CHECK([for $am_display_PYTHON script directory], + [am_cv_python_pythondir], + [if test "x$prefix" = xNONE + then + am_py_prefix=$ac_default_prefix + else + am_py_prefix=$prefix + fi + am_cv_python_pythondir=`$PYTHON -c " +$am_python_setup_sysconfig +if can_use_sysconfig: + sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) +else: + from distutils import sysconfig + sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') +sys.stdout.write(sitedir)"` + case $am_cv_python_pythondir in + $am_py_prefix*) + am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` + am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` + ;; + *) + case $am_py_prefix in + /usr|/System*) ;; + *) + am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages + ;; + esac + ;; + esac + ]) + AC_SUBST([pythondir], [$am_cv_python_pythondir]) + + dnl pkgpythondir -- $PACKAGE directory under pythondir. Was + dnl PYTHON_SITE_PACKAGE in previous betas, but this naming is + dnl more consistent with the rest of automake. + + AC_SUBST([pkgpythondir], [\${pythondir}/$PACKAGE]) + + dnl pyexecdir -- directory for installing python extension modules + dnl (shared libraries) + dnl Query distutils for this directory. + AC_CACHE_CHECK([for $am_display_PYTHON extension module directory], + [am_cv_python_pyexecdir], + [if test "x$exec_prefix" = xNONE + then + am_py_exec_prefix=$am_py_prefix + else + am_py_exec_prefix=$exec_prefix + fi + am_cv_python_pyexecdir=`$PYTHON -c " +$am_python_setup_sysconfig +if can_use_sysconfig: + sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'}) +else: + from distutils import sysconfig + sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix') +sys.stdout.write(sitedir)"` + case $am_cv_python_pyexecdir in + $am_py_exec_prefix*) + am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` + am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` + ;; + *) + case $am_py_exec_prefix in + /usr|/System*) ;; + *) + am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages + ;; + esac + ;; + esac + ]) + AC_SUBST([pyexecdir], [$am_cv_python_pyexecdir]) + + dnl pkgpyexecdir -- $(pyexecdir)/$(PACKAGE) + + AC_SUBST([pkgpyexecdir], [\${pyexecdir}/$PACKAGE]) + + dnl Run any user-specified action. + $2 + fi + +]) + + +# AM_PYTHON_CHECK_VERSION(PROG, VERSION, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) +# --------------------------------------------------------------------------- +# Run ACTION-IF-TRUE if the Python interpreter PROG has version >= VERSION. +# Run ACTION-IF-FALSE otherwise. +# This test uses sys.hexversion instead of the string equivalent (first +# word of sys.version), in order to cope with versions such as 2.2c1. +# This supports Python 2.0 or higher. (2.0 was released on October 16, 2000). +AC_DEFUN([AM_PYTHON_CHECK_VERSION], + [prog="import sys +# split strings by '.' and convert to numeric. Append some zeros +# because we need at least 4 digits for the hex conversion. +# map returns an iterator in Python 3.0 and a list in 2.x +minver = list(map(int, '$2'.split('.'))) + [[0, 0, 0]] +minverhex = 0 +# xrange is not present in Python 3.0 and range returns an iterator +for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[[i]] +sys.exit(sys.hexversion < minverhex)" + AS_IF([AM_RUN_LOG([$1 -c "$prog"])], [$3], [$4])]) + +# Copyright (C) 2001-2017 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_RUN_LOG(COMMAND) +# ------------------- +# Run COMMAND, save the exit status in ac_status, and log it. +# (This has been adapted from Autoconf's _AC_RUN_LOG macro.) +AC_DEFUN([AM_RUN_LOG], +[{ echo "$as_me:$LINENO: $1" >&AS_MESSAGE_LOG_FD + ($1) >&AS_MESSAGE_LOG_FD 2>&AS_MESSAGE_LOG_FD + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + (exit $ac_status); }]) + +# Check to make sure that the build environment is sane. -*- Autoconf -*- + +# Copyright (C) 1996-2017 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_SANITY_CHECK +# --------------- +AC_DEFUN([AM_SANITY_CHECK], +[AC_MSG_CHECKING([whether build environment is sane]) +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[[\\\"\#\$\&\'\`$am_lf]]*) + AC_MSG_ERROR([unsafe absolute working directory name]);; +esac +case $srcdir in + *[[\\\"\#\$\&\'\`$am_lf\ \ ]]*) + AC_MSG_ERROR([unsafe srcdir value: '$srcdir']);; +esac + +# 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 ( + am_has_slept=no + for am_try in 1 2; do + echo "timestamp, slept: $am_has_slept" > conftest.file + 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 + 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 + if test "$[2]" = conftest.file || test $am_try -eq 2; then + break + fi + # Just in case. + sleep 1 + am_has_slept=yes + done + 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]) +# If we didn't sleep, we still need to ensure time stamps of config.status and +# generated files are strictly newer. +am_sleep_pid= +if grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep 1 ) & + am_sleep_pid=$! +fi +AC_CONFIG_COMMANDS_PRE( + [AC_MSG_CHECKING([that generated files are newer than configure]) + if test -n "$am_sleep_pid"; then + # Hide warnings about reused PIDs. + wait $am_sleep_pid 2>/dev/null + fi + AC_MSG_RESULT([done])]) +rm -f conftest.file +]) + +# Copyright (C) 2009-2017 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_SILENT_RULES([DEFAULT]) +# -------------------------- +# Enable less verbose build rules; with the default set to DEFAULT +# ("yes" being less verbose, "no" or empty being verbose). +AC_DEFUN([AM_SILENT_RULES], +[AC_ARG_ENABLE([silent-rules], [dnl +AS_HELP_STRING( + [--enable-silent-rules], + [less verbose build output (undo: "make V=1")]) +AS_HELP_STRING( + [--disable-silent-rules], + [verbose build output (undo: "make V=0")])dnl +]) +case $enable_silent_rules in @%:@ ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; +esac +dnl +dnl A few 'make' implementations (e.g., NonStop OS and NextStep) +dnl do not support nested variable expansions. +dnl See automake bug#9928 and bug#10237. +am_make=${MAKE-make} +AC_CACHE_CHECK([whether $am_make supports nested variables], + [am_cv_make_support_nested_variables], + [if AS_ECHO([['TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit']]) | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi]) +if test $am_cv_make_support_nested_variables = yes; then + dnl Using '$V' instead of '$(V)' breaks IRIX make. + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AC_SUBST([AM_V])dnl +AM_SUBST_NOTMAKE([AM_V])dnl +AC_SUBST([AM_DEFAULT_V])dnl +AM_SUBST_NOTMAKE([AM_DEFAULT_V])dnl +AC_SUBST([AM_DEFAULT_VERBOSITY])dnl +AM_BACKSLASH='\' +AC_SUBST([AM_BACKSLASH])dnl +_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl +]) + +# Copyright (C) 2001-2017 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="\$(install_sh) -c -s" +AC_SUBST([INSTALL_STRIP_PROGRAM])]) + +# Copyright (C) 2006-2017 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_SUBST_NOTMAKE(VARIABLE) +# --------------------------- +# Prevent Automake from outputting VARIABLE = @VARIABLE@ in Makefile.in. +# This macro is traced by Automake. +AC_DEFUN([_AM_SUBST_NOTMAKE]) + +# AM_SUBST_NOTMAKE(VARIABLE) +# -------------------------- +# Public sister of _AM_SUBST_NOTMAKE. +AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE($@)]) + +# Check how to create a tarball. -*- Autoconf -*- + +# Copyright (C) 2004-2017 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_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. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AC_SUBST([AMTAR], ['$${TAR-tar}']) + +# We'll loop over all known methods to create a tar archive until one works. +_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none' + +m4_if([$1], [v7], + [am__tar='$${TAR-tar} chof - "$$tardir"' am__untar='$${TAR-tar} xf -'], + + [m4_case([$1], + [ustar], + [# The POSIX 1988 'ustar' format is defined with fixed-size fields. + # There is notably a 21 bits limit for the UID and the GID. In fact, + # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 + # and bug#13588). + am_max_uid=2097151 # 2^21 - 1 + am_max_gid=$am_max_uid + # The $UID and $GID variables are not portable, so we need to resort + # to the POSIX-mandated id(1) utility. Errors in the 'id' calls + # below are definitely unexpected, so allow the users to see them + # (that is, avoid stderr redirection). + am_uid=`id -u || echo unknown` + am_gid=`id -g || echo unknown` + AC_MSG_CHECKING([whether UID '$am_uid' is supported by ustar format]) + if test $am_uid -le $am_max_uid; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + _am_tools=none + fi + AC_MSG_CHECKING([whether GID '$am_gid' is supported by ustar format]) + if test $am_gid -le $am_max_gid; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + _am_tools=none + fi], + + [pax], + [], + + [m4_fatal([Unknown tar format])]) + + AC_MSG_CHECKING([how to create a $1 tar archive]) + + # Go ahead even if we have the value already cached. We do so because we + # need to set the values for the 'am__tar' and 'am__untar' variables. + _am_tools=${am_cv_prog_tar_$1-$_am_tools} + + 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([m4/appstream-xml.m4]) +m4_include([m4/ax_append_compile_flags.m4]) +m4_include([m4/ax_append_flag.m4]) +m4_include([m4/ax_append_link_flags.m4]) +m4_include([m4/ax_check_compile_flag.m4]) +m4_include([m4/ax_check_link_flag.m4]) +m4_include([m4/ax_compiler_flags.m4]) +m4_include([m4/ax_compiler_flags_cflags.m4]) +m4_include([m4/ax_compiler_flags_gir.m4]) +m4_include([m4/ax_compiler_flags_ldflags.m4]) +m4_include([m4/ax_is_release.m4]) +m4_include([m4/ax_pkg_check_modules.m4]) +m4_include([m4/ax_require_defined.m4]) +m4_include([m4/gettext.m4]) +m4_include([m4/gsettings.m4]) +m4_include([m4/gtk-doc.m4]) +m4_include([m4/iconv.m4]) +m4_include([m4/intlmacosx.m4]) +m4_include([m4/introspection.m4]) +m4_include([m4/lib-ld.m4]) +m4_include([m4/lib-link.m4]) +m4_include([m4/lib-prefix.m4]) +m4_include([m4/libtool.m4]) +m4_include([m4/ltoptions.m4]) +m4_include([m4/ltsugar.m4]) +m4_include([m4/ltversion.m4]) +m4_include([m4/lt~obsolete.m4]) +m4_include([m4/nls.m4]) +m4_include([m4/pkg.m4]) +m4_include([m4/po.m4]) +m4_include([m4/progtest.m4]) +m4_include([m4/yelp.m4]) diff --git a/compile b/compile new file mode 100755 index 0000000..2ab71e4 --- /dev/null +++ b/compile @@ -0,0 +1,348 @@ +#! /bin/sh +# Wrapper for compilers which do not understand '-c -o'. + +scriptversion=2016-01-11.22; # UTC + +# Copyright (C) 1999-2017 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, see . + +# 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 +# . + +nl=' +' + +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent tools from complaining about whitespace usage. +IFS=" "" $nl" + +file_conv= + +# func_file_conv build_file lazy +# Convert a $build file to $host form and store it in $file +# Currently only supports Windows hosts. If the determined conversion +# type is listed in (the comma separated) LAZY, no conversion will +# take place. +func_file_conv () +{ + file=$1 + case $file in + / | /[!/]*) # absolute file, and not a UNC file + if test -z "$file_conv"; then + # lazily determine how to convert abs files + case `uname -s` in + MINGW*) + file_conv=mingw + ;; + CYGWIN*) + file_conv=cygwin + ;; + *) + file_conv=wine + ;; + esac + fi + case $file_conv/,$2, in + *,$file_conv,*) + ;; + mingw/*) + file=`cmd //C echo "$file " | sed -e 's/"\(.*\) " *$/\1/'` + ;; + cygwin/*) + file=`cygpath -m "$file" || echo "$file"` + ;; + wine/*) + file=`winepath -w "$file" || echo "$file"` + ;; + esac + ;; + esac +} + +# func_cl_dashL linkdir +# Make cl look for libraries in LINKDIR +func_cl_dashL () +{ + func_file_conv "$1" + if test -z "$lib_path"; then + lib_path=$file + else + lib_path="$lib_path;$file" + fi + linker_opts="$linker_opts -LIBPATH:$file" +} + +# func_cl_dashl library +# Do a library search-path lookup for cl +func_cl_dashl () +{ + lib=$1 + found=no + save_IFS=$IFS + IFS=';' + for dir in $lib_path $LIB + do + IFS=$save_IFS + if $shared && test -f "$dir/$lib.dll.lib"; then + found=yes + lib=$dir/$lib.dll.lib + break + fi + if test -f "$dir/$lib.lib"; then + found=yes + lib=$dir/$lib.lib + break + fi + if test -f "$dir/lib$lib.a"; then + found=yes + lib=$dir/lib$lib.a + break + fi + done + IFS=$save_IFS + + if test "$found" != yes; then + lib=$lib.lib + fi +} + +# func_cl_wrapper cl arg... +# Adjust compile command to suit cl +func_cl_wrapper () +{ + # Assume a capable shell + lib_path= + shared=: + linker_opts= + 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'. + eat=1 + case $2 in + *.o | *.[oO][bB][jJ]) + func_file_conv "$2" + set x "$@" -Fo"$file" + shift + ;; + *) + func_file_conv "$2" + set x "$@" -Fe"$file" + shift + ;; + esac + ;; + -I) + eat=1 + func_file_conv "$2" mingw + set x "$@" -I"$file" + shift + ;; + -I*) + func_file_conv "${1#-I}" mingw + set x "$@" -I"$file" + shift + ;; + -l) + eat=1 + func_cl_dashl "$2" + set x "$@" "$lib" + shift + ;; + -l*) + func_cl_dashl "${1#-l}" + set x "$@" "$lib" + shift + ;; + -L) + eat=1 + func_cl_dashL "$2" + ;; + -L*) + func_cl_dashL "${1#-L}" + ;; + -static) + shared=false + ;; + -Wl,*) + arg=${1#-Wl,} + save_ifs="$IFS"; IFS=',' + for flag in $arg; do + IFS="$save_ifs" + linker_opts="$linker_opts $flag" + done + IFS="$save_ifs" + ;; + -Xlinker) + eat=1 + linker_opts="$linker_opts $2" + ;; + -*) + set x "$@" "$1" + shift + ;; + *.cc | *.CC | *.cxx | *.CXX | *.[cC]++) + func_file_conv "$1" + set x "$@" -Tp"$file" + shift + ;; + *.c | *.cpp | *.CPP | *.lib | *.LIB | *.Lib | *.OBJ | *.obj | *.[oO]) + func_file_conv "$1" mingw + set x "$@" "$file" + shift + ;; + *) + set x "$@" "$1" + shift + ;; + esac + fi + shift + done + if test -n "$linker_opts"; then + linker_opts="-link$linker_opts" + fi + exec "$@" $linker_opts + exit 1 +} + +eat= + +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 $? + ;; + cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \ + icl | *[/\\]icl | icl.exe | *[/\\]icl.exe ) + func_cl_wrapper "$@" # Doesn't return... + ;; +esac + +ofile= +cfile= + +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 's|^.*[\\/]||; s|^[a-zA-Z]:||; 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 + test "$cofile" = "$ofile" || mv "$cofile" "$ofile" +elif test -f "${cofile}bj"; then + test "${cofile}bj" = "$ofile" || 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-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/config.guess b/config.guess new file mode 100755 index 0000000..a744844 --- /dev/null +++ b/config.guess @@ -0,0 +1,1476 @@ +#! /bin/sh +# Attempt to guess a canonical system name. +# Copyright 1992-2017 Free Software Foundation, Inc. + +timestamp='2017-08-08' + +# 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 3 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, see . +# +# 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 Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). +# +# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. +# +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess +# +# Please send patches to . + + +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 1992-2017 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 + +case "${UNAME_SYSTEM}" in +Linux|GNU|GNU/*) + # If the system lacks a compiler, then just pick glibc. + # We could probably try harder. + LIBC=gnu + + eval $set_cc_for_build + cat <<-EOF > $dummy.c + #include + #if defined(__UCLIBC__) + LIBC=uclibc + #elif defined(__dietlibc__) + LIBC=dietlibc + #else + LIBC=gnu + #endif + EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` + ;; +esac + +# 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 tuples: *-*-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=`(uname -p 2>/dev/null || \ + /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 ;; + sh5el) machine=sh5le-unknown ;; + earmv*) + arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` + endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` + machine=${arch}${endian}-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) and ABI. + case "${UNAME_MACHINE_ARCH}" in + earm*) + os=netbsdelf + ;; + arm*|i386|m68k|ns32k|sh3*|sparc|vax) + eval $set_cc_for_build + if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ELF__ + 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 + # Determine ABI tags. + case "${UNAME_MACHINE_ARCH}" in + earm*) + expr='s/^earmv[0-9]/-eabi/;s/eb$//' + abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` + ;; + 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/[-_].*//' | cut -d. -f1,2` + ;; + 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}${abi}" + exit ;; + *:Bitrig:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} + exit ;; + *:OpenBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} + exit ;; + *:LibertyBSD:*:*) + UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` + echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} + exit ;; + *:ekkoBSD:*:*) + echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} + exit ;; + *:SolidBSD:*:*) + echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} + exit ;; + macppc:MirBSD:*:*) + echo powerpc-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:MirBSD:*:*) + echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} + exit ;; + *:Sortix:*:*) + echo ${UNAME_MACHINE}-unknown-sortix + exit ;; + *:Redox:*:*) + echo ${UNAME_MACHINE}-unknown-redox + 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` + # Reset EXIT trap before exiting to avoid spurious non-zero exit code. + exitcode=$? + trap '' 0 + exit $exitcode ;; + 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 ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; + 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:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) + echo i386-pc-auroraux${UNAME_RELEASE} + exit ;; + i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) + eval $set_cc_for_build + SUN_ARCH=i386 + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH=x86_64 + fi + fi + echo ${SUN_ARCH}-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:*:[4567]) + 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/lslpp ] ; then + IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | + awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` + 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 -q __LP64__ + 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:*:*) + UNAME_PROCESSOR=`/usr/bin/uname -p` + case ${UNAME_PROCESSOR} in + amd64) + UNAME_PROCESSOR=x86_64 ;; + i386) + UNAME_PROCESSOR=i586 ;; + esac + echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` + exit ;; + i*:CYGWIN*:*) + echo ${UNAME_MACHINE}-pc-cygwin + exit ;; + *:MINGW64*:*) + echo ${UNAME_MACHINE}-pc-mingw64 + exit ;; + *:MINGW*:*) + echo ${UNAME_MACHINE}-pc-mingw32 + exit ;; + *:MSYS*:*) + echo ${UNAME_MACHINE}-pc-msys + exit ;; + i*:windows32*:*) + # uname -m includes "-pc" on this system. + echo ${UNAME_MACHINE}-mingw32 + exit ;; + i*:PW*:*) + echo ${UNAME_MACHINE}-pc-pw32 + exit ;; + *:Interix*:*) + case ${UNAME_MACHINE} in + x86) + echo i586-pc-interix${UNAME_RELEASE} + exit ;; + authenticamd | genuineintel | EM64T) + echo x86_64-unknown-interix${UNAME_RELEASE} + exit ;; + IA64) + echo ia64-unknown-interix${UNAME_RELEASE} + exit ;; + esac ;; + [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) + echo i${UNAME_MACHINE}-pc-mks + exit ;; + 8664:Windows_NT:*) + echo x86_64-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-${LIBC}`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 "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} + exit ;; + i*86:Minix:*:*) + echo ${UNAME_MACHINE}-pc-minix + exit ;; + aarch64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + aarch64_be:Linux:*:*) + UNAME_MACHINE=aarch64_be + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + 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 -q ld.so.1 + if test "$?" = 0 ; then LIBC=gnulibc1 ; fi + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + arc:Linux:*:* | arceb:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + arm*:Linux:*:*) + eval $set_cc_for_build + if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_EABI__ + then + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + else + if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ + | grep -q __ARM_PCS_VFP + then + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi + else + echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf + fi + fi + exit ;; + avr32*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + cris:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-${LIBC} + exit ;; + crisv32:Linux:*:*) + echo ${UNAME_MACHINE}-axis-linux-${LIBC} + exit ;; + e2k:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + frv:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + hexagon:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + i*86:Linux:*:*) + echo ${UNAME_MACHINE}-pc-linux-${LIBC} + exit ;; + ia64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + k1om:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + m32r*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + m68*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + mips:Linux:*:* | mips64:Linux:*:*) + eval $set_cc_for_build + sed 's/^ //' << EOF >$dummy.c + #undef CPU + #undef ${UNAME_MACHINE} + #undef ${UNAME_MACHINE}el + #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) + CPU=${UNAME_MACHINE}el + #else + #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) + CPU=${UNAME_MACHINE} + #else + CPU= + #endif + #endif +EOF + eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` + test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } + ;; + mips64el:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + openrisc*:Linux:*:*) + echo or1k-unknown-linux-${LIBC} + exit ;; + or32:Linux:*:* | or1k*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-${LIBC} + exit ;; + parisc64:Linux:*:* | hppa64:Linux:*:*) + echo hppa64-unknown-linux-${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-${LIBC} ;; + PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; + *) echo hppa-unknown-linux-${LIBC} ;; + esac + exit ;; + ppc64:Linux:*:*) + echo powerpc64-unknown-linux-${LIBC} + exit ;; + ppc:Linux:*:*) + echo powerpc-unknown-linux-${LIBC} + exit ;; + ppc64le:Linux:*:*) + echo powerpc64le-unknown-linux-${LIBC} + exit ;; + ppcle:Linux:*:*) + echo powerpcle-unknown-linux-${LIBC} + exit ;; + riscv32:Linux:*:* | riscv64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + s390:Linux:*:* | s390x:Linux:*:*) + echo ${UNAME_MACHINE}-ibm-linux-${LIBC} + exit ;; + sh64*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + sh*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + sparc:Linux:*:* | sparc64:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + tile*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + exit ;; + vax:Linux:*:*) + echo ${UNAME_MACHINE}-dec-linux-${LIBC} + exit ;; + x86_64:Linux:*:*) + echo ${UNAME_MACHINE}-pc-linux-${LIBC} + exit ;; + xtensa*:Linux:*:*) + echo ${UNAME_MACHINE}-unknown-linux-${LIBC} + 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.[02]*:*) + 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 i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configure will decide that + # this is a cross-build. + echo i586-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; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + 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; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; 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.[02]*:*) + 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 ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; + x86_64:Haiku:*:*) + echo x86_64-unknown-haiku + 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 ;; + SX-7:SUPER-UX:*:*) + echo sx7-nec-superux${UNAME_RELEASE} + exit ;; + SX-8:SUPER-UX:*:*) + echo sx8-nec-superux${UNAME_RELEASE} + exit ;; + SX-8R:SUPER-UX:*:*) + echo sx8r-nec-superux${UNAME_RELEASE} + exit ;; + SX-ACE:SUPER-UX:*:*) + echo sxace-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 + eval $set_cc_for_build + if test "$UNAME_PROCESSOR" = unknown ; then + UNAME_PROCESSOR=powerpc + fi + if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then + if [ "$CC_FOR_BUILD" != no_compiler_found ]; then + if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + case $UNAME_PROCESSOR in + i386) UNAME_PROCESSOR=x86_64 ;; + powerpc) UNAME_PROCESSOR=powerpc64 ;; + esac + fi + # On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc + if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \ + (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_PPC >/dev/null + then + UNAME_PROCESSOR=powerpc + fi + fi + elif test "$UNAME_PROCESSOR" = i386 ; then + # Avoid executing cc on OS X 10.9, as it ships with a stub + # that puts up a graphical alert prompting to install + # developer tools. Any system running Mac OS X 10.7 or + # later (Darwin 11 and later) is required to have a 64-bit + # processor. This is not true of the ARM version of Darwin + # that Apple uses in portable devices. + UNAME_PROCESSOR=x86_64 + fi + 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 ;; + NEO-*:NONSTOP_KERNEL:*:*) + echo neo-tandem-nsk${UNAME_RELEASE} + exit ;; + NSE-*:NONSTOP_KERNEL:*:*) + echo nse-tandem-nsk${UNAME_RELEASE} + exit ;; + NSR-*:NONSTOP_KERNEL:*:*) + echo nsr-tandem-nsk${UNAME_RELEASE} + exit ;; + NSX-*:NONSTOP_KERNEL:*:*) + echo nsx-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 ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; + x86_64:VMkernel:*:*) + echo ${UNAME_MACHINE}-unknown-esx + exit ;; + amd64:Isilon\ OneFS:*:*) + echo x86_64-unknown-onefs + exit ;; +esac + +cat >&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: diff --git a/config.h.in b/config.h.in new file mode 100644 index 0000000..9036d2d --- /dev/null +++ b/config.h.in @@ -0,0 +1,83 @@ +/* config.h.in. Generated from configure.ac by autoheader. */ + +/* Define to 1 if translation of program messages to the user's native + language is requested. */ +#undef ENABLE_NLS + +/* Whether Flatpak build mode is enabled */ +#undef FLATPAK_BUILD + +/* Package name for gettext */ +#undef GETTEXT_PACKAGE + +/* Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the + CoreFoundation framework. */ +#undef HAVE_CFLOCALECOPYCURRENT + +/* Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in + the CoreFoundation framework. */ +#undef HAVE_CFPREFERENCESCOPYAPPVALUE + +/* Define if the GNU dcgettext() function is already present or preinstalled. + */ +#undef HAVE_DCGETTEXT + +/* Define to 1 if you have the header file. */ +#undef HAVE_DLFCN_H + +/* Define if the GNU gettext() function is already present or preinstalled. */ +#undef HAVE_GETTEXT + +/* Define if you have the iconv() function and it works. */ +#undef HAVE_ICONV + +/* Define to 1 if you have the header file. */ +#undef HAVE_INTTYPES_H + +/* Define to 1 if you have the header file. */ +#undef HAVE_MEMORY_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 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 header file. */ +#undef HAVE_SYS_STAT_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_UNISTD_H + +/* Define to the sub-directory where libtool stores uninstalled libraries. */ +#undef LT_OBJDIR + +/* 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 home page for this package. */ +#undef PACKAGE_URL + +/* Define to the version of this package. */ +#undef PACKAGE_VERSION + +/* Define to 1 if you have the ANSI C header files. */ +#undef STDC_HEADERS diff --git a/config.rpath b/config.rpath new file mode 100755 index 0000000..a3e25c8 --- /dev/null +++ b/config.rpath @@ -0,0 +1,684 @@ +#! /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-2015 Free Software Foundation, Inc. +# Taken from GNU libtool, 2001 +# Originally by Gordon Matzigkeit , 1996 +# +# 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. +# +# 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 MSVC, +# 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 _LT_CC_BASENAME. + +for cc_temp in $CC""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac +done +cc_basename=`echo "$cc_temp" | sed -e 's%^.*/%%'` + +# Code taken from libtool.m4's _LT_COMPILER_PIC. + +wl= +if test "$GCC" = yes; then + wl='-Wl,' +else + case "$host_os" in + aix*) + wl='-Wl,' + ;; + mingw* | cygwin* | pw32* | os2* | cegcc*) + ;; + hpux9* | hpux10* | hpux11*) + wl='-Wl,' + ;; + irix5* | irix6* | nonstopux*) + wl='-Wl,' + ;; + linux* | k*bsd*-gnu | kopensolaris*-gnu) + case $cc_basename in + ecc*) + wl='-Wl,' + ;; + icc* | ifort*) + wl='-Wl,' + ;; + lf95*) + wl='-Wl,' + ;; + nagfor*) + wl='-Wl,-Wl,,' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + wl='-Wl,' + ;; + ccc*) + wl='-Wl,' + ;; + xl* | bgxl* | bgf* | mpixl*) + wl='-Wl,' + ;; + como) + wl='-lopt=' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ F* | *Sun*Fortran*) + wl= + ;; + *Sun\ C*) + wl='-Wl,' + ;; + esac + ;; + esac + ;; + newsos6) + ;; + *nto* | *qnx*) + ;; + osf3* | osf4* | osf5*) + wl='-Wl,' + ;; + rdos*) + ;; + solaris*) + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + wl='-Qoption ld ' + ;; + *) + wl='-Wl,' + ;; + esac + ;; + sunos4*) + wl='-Qoption ld ' + ;; + sysv4 | sysv4.2uw2* | sysv4.3*) + wl='-Wl,' + ;; + sysv4*MP*) + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + wl='-Wl,' + ;; + unicos*) + wl='-Wl,' + ;; + uts4*) + ;; + esac +fi + +# Code taken from libtool.m4's _LT_LINKER_SHLIBS. + +hardcode_libdir_flag_spec= +hardcode_libdir_separator= +hardcode_direct=no +hardcode_minus_L=no + +case "$host_os" in + cygwin* | mingw* | pw32* | cegcc*) + # 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 + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd*) + with_gnu_ld=no + ;; +esac + +ld_shlibs=yes +if test "$with_gnu_ld" = yes; then + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + # 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' + case "$host_os" in + aix[3-9]*) + # On AIX/PPC, the GNU linker is very broken + if test "$host_cpu" != ia64; then + ld_shlibs=no + fi + ;; + amigaos*) + case "$host_cpu" in + powerpc) + ;; + m68k) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + beos*) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + : + else + ld_shlibs=no + fi + ;; + cygwin* | mingw* | pw32* | cegcc*) + # 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 + ;; + haiku*) + ;; + interix[3-9]*) + hardcode_direct=no + hardcode_libdir_flag_spec='${wl}-rpath,$libdir' + ;; + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + : + else + ld_shlibs=no + fi + ;; + netbsd*) + ;; + solaris*) + 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 + ;; + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) + ld_shlibs=no + ;; + *) + if $LD --help 2>&1 | grep ': supported targets:.* elf' > /dev/null; then + hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-rpath,$libdir`' + else + ld_shlibs=no + fi + ;; + esac + ;; + 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" = no; then + hardcode_libdir_flag_spec= + 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 + ;; + aix[4-9]*) + 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].*|aix[5-9]*) + 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 + : + 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*) + case "$host_cpu" in + powerpc) + ;; + m68k) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + bsdi[45]*) + ;; + cygwin* | mingw* | pw32* | cegcc*) + # 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*) + hardcode_direct=no + if { case $cc_basename in ifort*) true;; *) test "$GCC" = yes;; esac; }; then + : + else + ld_shlibs=no + fi + ;; + dgux*) + hardcode_libdir_flag_spec='-L$libdir' + ;; + freebsd2.[01]*) + hardcode_direct=yes + hardcode_minus_L=yes + ;; + freebsd* | dragonfly*) + 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*) + if test "$with_gnu_ld" = no; then + 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 + fi + ;; + hpux11*) + if test "$with_gnu_ld" = no; then + hardcode_libdir_flag_spec='${wl}+b ${wl}$libdir' + hardcode_libdir_separator=: + case $host_cpu in + hppa*64*|ia64*) + hardcode_direct=no + ;; + *) + 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=: + ;; + *nto* | *qnx*) + ;; + openbsd*) + if test -f /usr/libexec/ld.so; then + 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 + else + ld_shlibs=no + 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=: + ;; + 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*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) + ;; + sysv5* | sco3.2v5* | sco5v6*) + hardcode_libdir_flag_spec='`test -z "$SCOABSPATH" && echo ${wl}-R,$libdir`' + hardcode_libdir_separator=':' + ;; + uts4*) + hardcode_libdir_flag_spec='-L$libdir' + ;; + *) + ld_shlibs=no + ;; + esac +fi + +# Check dynamic linker characteristics +# Code taken from libtool.m4's _LT_SYS_DYNAMIC_LINKER. +# Unlike libtool.m4, here we don't care about _all_ names of the library, but +# only about the one the linker finds when passed -lNAME. This is the last +# element of library_names_spec in libtool.m4, or possibly two of them if the +# linker has special search rules. +library_names_spec= # the last element of library_names_spec in libtool.m4 +libname_spec='lib$name' +case "$host_os" in + aix3*) + library_names_spec='$libname.a' + ;; + aix[4-9]*) + library_names_spec='$libname$shrext' + ;; + amigaos*) + case "$host_cpu" in + powerpc*) + library_names_spec='$libname$shrext' ;; + m68k) + library_names_spec='$libname.a' ;; + esac + ;; + beos*) + library_names_spec='$libname$shrext' + ;; + bsdi[45]*) + library_names_spec='$libname$shrext' + ;; + cygwin* | mingw* | pw32* | cegcc*) + shrext=.dll + library_names_spec='$libname.dll.a $libname.lib' + ;; + darwin* | rhapsody*) + shrext=.dylib + library_names_spec='$libname$shrext' + ;; + dgux*) + library_names_spec='$libname$shrext' + ;; + freebsd[23].*) + library_names_spec='$libname$shrext$versuffix' + ;; + freebsd* | dragonfly*) + library_names_spec='$libname$shrext' + ;; + gnu*) + library_names_spec='$libname$shrext' + ;; + haiku*) + library_names_spec='$libname$shrext' + ;; + hpux9* | hpux10* | hpux11*) + case $host_cpu in + ia64*) + shrext=.so + ;; + hppa*64*) + shrext=.sl + ;; + *) + shrext=.sl + ;; + esac + library_names_spec='$libname$shrext' + ;; + interix[3-9]*) + library_names_spec='$libname$shrext' + ;; + irix5* | irix6* | nonstopux*) + library_names_spec='$libname$shrext' + 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* | k*bsd*-gnu | kopensolaris*-gnu) + library_names_spec='$libname$shrext' + ;; + knetbsd*-gnu) + library_names_spec='$libname$shrext' + ;; + netbsd*) + library_names_spec='$libname$shrext' + ;; + newsos6) + library_names_spec='$libname$shrext' + ;; + *nto* | *qnx*) + library_names_spec='$libname$shrext' + ;; + openbsd*) + library_names_spec='$libname$shrext$versuffix' + ;; + os2*) + libname_spec='$name' + shrext=.dll + library_names_spec='$libname.a' + ;; + osf3* | osf4* | osf5*) + library_names_spec='$libname$shrext' + ;; + rdos*) + ;; + solaris*) + library_names_spec='$libname$shrext' + ;; + sunos4*) + library_names_spec='$libname$shrext$versuffix' + ;; + sysv4 | sysv4.3*) + library_names_spec='$libname$shrext' + ;; + sysv4*MP*) + library_names_spec='$libname$shrext' + ;; + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + library_names_spec='$libname$shrext' + ;; + tpf*) + library_names_spec='$libname$shrext' + ;; + uts4*) + library_names_spec='$libname$shrext' + ;; +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_libname_spec=`echo "X$libname_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` +escaped_library_names_spec=`echo "X$library_names_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` +escaped_hardcode_libdir_flag_spec=`echo "X$hardcode_libdir_flag_spec" | sed -e 's/^X//' -e "$sed_quote_subst"` + +LC_ALL=C sed -e 's/^\([a-zA-Z0-9_]*\)=/acl_cv_\1=/' <. +# +# 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 Exception is an additional permission under section 7 +# of the GNU General Public License, version 3 ("GPLv3"). + + +# Please send patches to . +# +# 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. + +# You can get the latest version of this script from: +# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub + +# 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 or 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 1992-2017 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-android* | linux-dietlibc | linux-newlib* | \ + linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ + knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ + kopensolaris*-gnu* | cloudabi*-eabi* | \ + storm-chaos* | os2-emx* | rtmk-nova*) + os=-$maybe_os + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` + ;; + android-linux) + os=-linux-android + basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown + ;; + *) + 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 | -microblaze*) + os= + basic_machine=$1 + ;; + -bluegene*) + os=-cnk + ;; + -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*178) + os=-lynxos178 + ;; + -lynx*5) + os=-lynxos5 + ;; + -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 \ + | aarch64 | aarch64_be \ + | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ + | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ + | am33_2.0 \ + | arc | arceb \ + | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ + | avr | avr32 \ + | ba \ + | be32 | be64 \ + | bfin \ + | c4x | c8051 | clipper \ + | d10v | d30v | dlx | dsp16xx \ + | e2k | epiphany \ + | fido | fr30 | frv | ft32 \ + | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ + | hexagon \ + | i370 | i860 | i960 | ia16 | ia64 \ + | ip2k | iq2000 \ + | k1om \ + | le32 | le64 \ + | lm32 \ + | m32c | m32r | m32rle | m68000 | m68k | m88k \ + | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ + | mips | mipsbe | mipseb | mipsel | mipsle \ + | mips16 \ + | mips64 | mips64el \ + | mips64octeon | mips64octeonel \ + | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ + | mips64vr4100 | mips64vr4100el \ + | mips64vr4300 | mips64vr4300el \ + | mips64vr5000 | mips64vr5000el \ + | mips64vr5900 | mips64vr5900el \ + | mipsisa32 | mipsisa32el \ + | mipsisa32r2 | mipsisa32r2el \ + | mipsisa32r6 | mipsisa32r6el \ + | mipsisa64 | mipsisa64el \ + | mipsisa64r2 | mipsisa64r2el \ + | mipsisa64r6 | mipsisa64r6el \ + | mipsisa64sb1 | mipsisa64sb1el \ + | mipsisa64sr71k | mipsisa64sr71kel \ + | mipsr5900 | mipsr5900el \ + | mipstx39 | mipstx39el \ + | mn10200 | mn10300 \ + | moxie \ + | mt \ + | msp430 \ + | nds32 | nds32le | nds32be \ + | nios | nios2 | nios2eb | nios2el \ + | ns16k | ns32k \ + | open8 | or1k | or1knd | or32 \ + | pdp10 | pdp11 | pj | pjl \ + | powerpc | powerpc64 | powerpc64le | powerpcle \ + | pru \ + | pyramid \ + | riscv32 | riscv64 \ + | rl78 | rx \ + | score \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh64 | sh64le \ + | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ + | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ + | spu \ + | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ + | ubicom32 \ + | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ + | visium \ + | wasm32 \ + | we32k \ + | x86 | xc16x | xstormy16 | xtensa \ + | z8k | z80) + basic_machine=$basic_machine-unknown + ;; + c54x) + basic_machine=tic54x-unknown + ;; + c55x) + basic_machine=tic55x-unknown + ;; + c6x) + basic_machine=tic6x-unknown + ;; + leon|leon[3-9]) + basic_machine=sparc-$basic_machine + ;; + m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) + basic_machine=$basic_machine-unknown + os=-none + ;; + m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) + ;; + ms1) + basic_machine=mt-unknown + ;; + + strongarm | thumb | xscale) + basic_machine=arm-unknown + ;; + xgate) + basic_machine=$basic_machine-unknown + os=-none + ;; + xscaleeb) + basic_machine=armeb-unknown + ;; + + xscaleel) + basic_machine=armel-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-* \ + | aarch64-* | aarch64_be-* \ + | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ + | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ + | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ + | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ + | avr-* | avr32-* \ + | ba-* \ + | be32-* | be64-* \ + | bfin-* | bs2000-* \ + | c[123]* | c30-* | [cjt]90-* | c4x-* \ + | c8051-* | clipper-* | craynv-* | cydra-* \ + | d10v-* | d30v-* | dlx-* \ + | e2k-* | elxsi-* \ + | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ + | h8300-* | h8500-* \ + | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ + | hexagon-* \ + | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ + | ip2k-* | iq2000-* \ + | k1om-* \ + | le32-* | le64-* \ + | lm32-* \ + | m32c-* | m32r-* | m32rle-* \ + | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ + | microblaze-* | microblazeel-* \ + | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ + | mips16-* \ + | mips64-* | mips64el-* \ + | mips64octeon-* | mips64octeonel-* \ + | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ + | mips64vr4100-* | mips64vr4100el-* \ + | mips64vr4300-* | mips64vr4300el-* \ + | mips64vr5000-* | mips64vr5000el-* \ + | mips64vr5900-* | mips64vr5900el-* \ + | mipsisa32-* | mipsisa32el-* \ + | mipsisa32r2-* | mipsisa32r2el-* \ + | mipsisa32r6-* | mipsisa32r6el-* \ + | mipsisa64-* | mipsisa64el-* \ + | mipsisa64r2-* | mipsisa64r2el-* \ + | mipsisa64r6-* | mipsisa64r6el-* \ + | mipsisa64sb1-* | mipsisa64sb1el-* \ + | mipsisa64sr71k-* | mipsisa64sr71kel-* \ + | mipsr5900-* | mipsr5900el-* \ + | mipstx39-* | mipstx39el-* \ + | mmix-* \ + | mt-* \ + | msp430-* \ + | nds32-* | nds32le-* | nds32be-* \ + | nios-* | nios2-* | nios2eb-* | nios2el-* \ + | none-* | np1-* | ns16k-* | ns32k-* \ + | open8-* \ + | or1k*-* \ + | orion-* \ + | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ + | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ + | pru-* \ + | pyramid-* \ + | riscv32-* | riscv64-* \ + | rl78-* | romp-* | rs6000-* | rx-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | 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-* | sv1-* | sx*-* \ + | tahoe-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tile*-* \ + | tron-* \ + | ubicom32-* \ + | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ + | vax-* \ + | visium-* \ + | wasm32-* \ + | we32k-* \ + | x86-* | x86_64-* | xc16x-* | xps100-* \ + | xstormy16-* | xtensa*-* \ + | ymp-* \ + | z8k-* | z80-*) + ;; + # Recognize the basic CPU types without company name, with glob match. + xtensa*) + basic_machine=$basic_machine-unknown + ;; + # 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 + ;; + aros) + basic_machine=i386-pc + os=-aros + ;; + asmjs) + basic_machine=asmjs-unknown + ;; + aux) + basic_machine=m68k-apple + os=-aux + ;; + balance) + basic_machine=ns32k-sequent + os=-dynix + ;; + blackfin) + basic_machine=bfin-unknown + os=-linux + ;; + blackfin-*) + basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + bluegene*) + basic_machine=powerpc-ibm + os=-cnk + ;; + c54x-*) + basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c55x-*) + basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c6x-*) + basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + c90) + basic_machine=c90-cray + os=-unicos + ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; + 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 + ;; + cr16 | cr16-*) + basic_machine=cr16-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 + ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; + djgpp) + basic_machine=i586-pc + os=-msdosdjgpp + ;; + dpx20 | dpx20-*) + basic_machine=rs6000-bull + os=-bosx + ;; + dpx2* | dpx2*-bull) + basic_machine=m68k-bull + os=-sysv3 + ;; + e500v[12]) + basic_machine=powerpc-unknown + os=$os"spe" + ;; + e500v[12]-*) + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + os=$os"spe" + ;; + 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*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 + ;; + leon-*|leon[3-9]-*) + basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` + ;; + m68knommu) + basic_machine=m68k-unknown + os=-linux + ;; + m68knommu-*) + basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + m88k-omron*) + basic_machine=m88k-omron + ;; + magnum | m3230) + basic_machine=mips-mips + os=-sysv + ;; + merlin) + basic_machine=ns32k-utek + os=-sysv + ;; + microblaze*) + basic_machine=microblaze-xilinx + ;; + mingw64) + basic_machine=x86_64-pc + os=-mingw64 + ;; + mingw32) + basic_machine=i686-pc + os=-mingw32 + ;; + mingw32ce) + basic_machine=arm-unknown + os=-mingw32ce + ;; + 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 + ;; + moxiebox) + basic_machine=moxie-unknown + os=-moxiebox + ;; + msdos) + basic_machine=i386-pc + os=-msdos + ;; + ms1-*) + basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` + ;; + msys) + basic_machine=i686-pc + os=-msys + ;; + mvs) + basic_machine=i370-ibm + os=-mvs + ;; + nacl) + basic_machine=le32-unknown + os=-nacl + ;; + 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 + ;; + neo-tandem) + basic_machine=neo-tandem + ;; + nse-tandem) + basic_machine=nse-tandem + ;; + nsr-tandem) + basic_machine=nsr-tandem + ;; + nsx-tandem) + basic_machine=nsx-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 + ;; + parisc) + basic_machine=hppa-unknown + os=-linux + ;; + parisc-*) + basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` + os=-linux + ;; + 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 | ppcbe) basic_machine=powerpc-unknown + ;; + ppc-* | ppcbe-*) + basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppcle | powerpclittle) + basic_machine=powerpcle-unknown + ;; + ppcle-* | powerpclittle-*) + basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64) basic_machine=powerpc64-unknown + ;; + ppc64-* | ppc64p7-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + ppc64le | powerpc64little) + 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 | rdos64) + basic_machine=x86_64-pc + os=-rdos + ;; + rdos32) + 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 + ;; + sde) + basic_machine=mipsisa32-sde + os=-elf + ;; + sei) + basic_machine=mips-sei + os=-seiux + ;; + sequent) + basic_machine=i386-sequent + ;; + sh) + basic_machine=sh-hitachi + os=-hms + ;; + sh5el) + basic_machine=sh5le-unknown + ;; + 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 + ;; + strongarm-* | thumb-*) + basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` + ;; + 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 + ;; + tile*) + basic_machine=$basic_machine-unknown + os=-linux-gnu + ;; + 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 + ;; + wasm32) + basic_machine=wasm32-unknown + ;; + 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 + ;; + xscale-* | xscalee[bl]-*) + basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` + ;; + ymp) + basic_machine=ymp-cray + os=-unicos + ;; + z8k-*-coff) + basic_machine=z8k-unknown + os=-sim + ;; + z80-*-coff) + basic_machine=z80-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[24]aeb | 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. + -auroraux) + os=-auroraux + ;; + -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* | -cnk* | -sunos | -sunos[34]*\ + | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ + | -sym* | -kopensolaris* | -plan9* \ + | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ + | -aos* | -aros* | -cloudabi* | -sortix* \ + | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ + | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ + | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ + | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ + | -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* | -cegcc* | -glidix* \ + | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ + | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ + | -linux-newlib* | -linux-musl* | -linux-uclibc* \ + | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ + | -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* | -toppers* | -drops* | -es* \ + | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*) + # 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 + ;; + -zvmoe) + os=-zvmoe + ;; + -dicos*) + os=-dicos + ;; + -nacl*) + ;; + -ios) + ;; + -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 + score-*) + os=-elf + ;; + spu-*) + os=-elf + ;; + *-acorn) + os=-riscix1.2 + ;; + arm*-rebel) + os=-linux + ;; + arm*-semi) + os=-aout + ;; + c4x-* | tic4x-*) + os=-coff + ;; + c8051-*) + os=-elf + ;; + hexagon-*) + os=-elf + ;; + tic54x-*) + os=-coff + ;; + tic55x-*) + os=-coff + ;; + tic6x-*) + 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 + ;; + m68*-cisco) + os=-aout + ;; + mep-*) + os=-elf + ;; + 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 + ;; + pru-*) + os=-elf + ;; + *-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 + ;; + -cnk*|-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: diff --git a/configure b/configure new file mode 100755 index 0000000..379b6e8 --- /dev/null +++ b/configure @@ -0,0 +1,20107 @@ +#! /bin/sh +# Guess values for system-dependent variables and create Makefiles. +# Generated by GNU Autoconf 2.69 for Devhelp 3.28.1. +# +# Report bugs to . +# +# +# Copyright (C) 1992-1996, 1998-2012 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 more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +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 +IFS=$as_save_IFS + + ;; +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 + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Use a proper internal environment variable to ensure we don't fall + # into an infinite loop, continuously re-executing ourselves. + if test x"${_as_can_reexec}" != xno && test "x$CONFIG_SHELL" != x; then + _as_can_reexec=no; export _as_can_reexec; + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +as_fn_exit 255 + fi + # We don't want this to propagate to other subprocesses. + { _as_can_reexec=; unset _as_can_reexec;} +if test "x$CONFIG_SHELL" = x; then + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } + +exitcode=0 +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1 +test -x / || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 + + test -n \"\${ZSH_VERSION+set}\${BASH_VERSION+set}\" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + ECHO=\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO\$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\ + || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes +else + as_have_required=no +fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : + +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false +for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + as_found=: + case $as_dir in #( + /*) + for as_base in sh bash ksh sh5; do + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi + done;; + esac + as_found=false +done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } +IFS=$as_save_IFS + + + if test "x$CONFIG_SHELL" != x; then : + export CONFIG_SHELL + # We cannot yet assume a decent shell, so we have to provide a +# neutralization value for shells without unset; and this also +# works around shells that cannot unset nonexistent variables. +# Preserve -v and -x to the replacement shell. +BASH_ENV=/dev/null +ENV=/dev/null +(unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV +case $- in # (((( + *v*x* | *x*v* ) as_opts=-vx ;; + *v* ) as_opts=-v ;; + *x* ) as_opts=-x ;; + * ) as_opts= ;; +esac +exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"} +# Admittedly, this is quite paranoid, since all the known shells bail +# out after a failed `exec'. +$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2 +exit 255 +fi + + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf@gnu.org and +$0: https://bugzilla.gnome.org/browse.cgi?product=devhelp +$0: about your system, including any error possibly output +$0: before this message. Then install a modern shell, or +$0: manually run the script under such a shell if you do +$0: have one." + fi + exit 1 +fi +fi +fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; 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 + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# 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 + + + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) + sed -n ' + p + /[$]LINENO/= + ' <$as_myself | + sed ' + s/[$]LINENO.*/&-/ + t lineno + b + :lineno + N + :loop + s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ + t loop + s/-\n.*// + ' >$as_me.lineno && + chmod +x "$as_me.lineno" || + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } + + # If we had to re-execute with $CONFIG_SHELL, we're ensured to have + # already done that, so ensure we don't try to do so again and fall + # in an infinite loop. This has already happened in practice. + _as_can_reexec=no; export _as_can_reexec + # 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 sensitive to this). + . "./$as_me.lineno" + # Exit status is that of the last command. + exit +} + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# 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'" + +SHELL=${CONFIG_SHELL-/bin/sh} + + +test -n "$DJDIR" || exec 7<&0 &1 + +# Name of the host. +# hostname on some systems (SVR3.2, old GNU/Linux) returns a bogus exit status, +# so uname gets run too. +ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q` + +# +# Initializations. +# +ac_default_prefix=/usr/local +ac_clean_files= +ac_config_libobj_dir=. +LIBOBJS= +cross_compiling=no +subdirs= +MFLAGS= +MAKEFLAGS= + +# Identity of this package. +PACKAGE_NAME='Devhelp' +PACKAGE_TARNAME='devhelp' +PACKAGE_VERSION='3.28.1' +PACKAGE_STRING='Devhelp 3.28.1' +PACKAGE_BUGREPORT='https://bugzilla.gnome.org/browse.cgi?product=devhelp' +PACKAGE_URL='https://wiki.gnome.org/Apps/Devhelp' + +ac_unique_file="src/dh-main.c" +# Factoring default headers for most tests. +ac_includes_default="\ +#include +#ifdef HAVE_SYS_TYPES_H +# include +#endif +#ifdef HAVE_SYS_STAT_H +# include +#endif +#ifdef STDC_HEADERS +# include +# include +#else +# ifdef HAVE_STDLIB_H +# include +# endif +#endif +#ifdef HAVE_STRING_H +# if !defined STDC_HEADERS && defined HAVE_MEMORY_H +# include +# endif +# include +#endif +#ifdef HAVE_STRINGS_H +# include +#endif +#ifdef HAVE_INTTYPES_H +# include +#endif +#ifdef HAVE_STDINT_H +# include +#endif +#ifdef HAVE_UNISTD_H +# include +#endif" + +gt_needs= +ac_subst_vars='am__EXEEXT_FALSE +am__EXEEXT_TRUE +LTLIBOBJS +LIBOBJS +WEBKITGTK_PREFIX +GTK_DOC_USE_REBASE_FALSE +GTK_DOC_USE_REBASE_TRUE +GTK_DOC_USE_LIBTOOL_FALSE +GTK_DOC_USE_LIBTOOL_TRUE +GTK_DOC_BUILD_PDF_FALSE +GTK_DOC_BUILD_PDF_TRUE +GTK_DOC_BUILD_HTML_FALSE +GTK_DOC_BUILD_HTML_TRUE +ENABLE_GTK_DOC_FALSE +ENABLE_GTK_DOC_TRUE +HAVE_GTK_DOC_FALSE +HAVE_GTK_DOC_TRUE +GTKDOC_DEPS_LIBS +GTKDOC_DEPS_CFLAGS +HTML_DIR +GTKDOC_MKPDF +GTKDOC_REBASE +GTKDOC_CHECK_PATH +GTKDOC_CHECK +pkgpyexecdir +pyexecdir +pkgpythondir +pythondir +PYTHON_PLATFORM +PYTHON_EXEC_PREFIX +PYTHON_PREFIX +PYTHON_VERSION +PYTHON +GETTEXT_PACKAGE +POSUB +LTLIBINTL +LIBINTL +INTLLIBS +LTLIBICONV +LIBICONV +INTL_MACOSX_LIBS +XGETTEXT_EXTRA_OPTIONS +MSGMERGE +XGETTEXT_015 +XGETTEXT +GMSGFMT_015 +MSGFMT_015 +GMSGFMT +MSGFMT +GETTEXT_MACRO_VERSION +USE_NLS +AX_PACKAGE_REQUIRES_PRIVATE +AX_PACKAGE_REQUIRES +DEVHELP_LIBS +DEVHELP_CFLAGS +LIBM +WARN_SCANNERFLAGS +WARN_LDFLAGS +WARN_CFLAGS +YELP_HELP_RULES +XMLLINT +ITSTOOL +HELP_DIR +YELP_LC_DIST +YELP_LC_MEDIA_LINKS +HAVE_INTROSPECTION_FALSE +HAVE_INTROSPECTION_TRUE +INTROSPECTION_MAKEFILE +INTROSPECTION_LIBS +INTROSPECTION_CFLAGS +INTROSPECTION_TYPELIBDIR +INTROSPECTION_GIRDIR +INTROSPECTION_GENERATE +INTROSPECTION_COMPILER +INTROSPECTION_SCANNER +GSETTINGS_RULES +GLIB_COMPILE_SCHEMAS +gsettingsschemadir +PKG_CONFIG_LIBDIR +PKG_CONFIG_PATH +PKG_CONFIG +GSETTINGS_DISABLE_SCHEMAS_COMPILE +APPSTREAM_XML_RULES +appstreamxmldir +APPSTREAM_UTIL +CPP +LT_SYS_LIBRARY_PATH +OTOOL64 +OTOOL +LIPO +NMEDIT +DSYMUTIL +MANIFEST_TOOL +RANLIB +ac_ct_AR +AR +DLLTOOL +OBJDUMP +LN_S +NM +ac_ct_DUMPBIN +DUMPBIN +LD +FGREP +EGREP +GREP +SED +host_os +host_vendor +host_cpu +host +build_os +build_vendor +build_cpu +build +LIBTOOL +GLIB_COMPILE_RESOURCES +GLIB_MKENUMS +am__fastdepCC_FALSE +am__fastdepCC_TRUE +CCDEPMODE +am__nodep +AMDEPBACKSLASH +AMDEP_FALSE +AMDEP_TRUE +am__quote +am__include +DEPDIR +OBJEXT +EXEEXT +ac_ct_CC +CPPFLAGS +LDFLAGS +CFLAGS +CC +AM_BACKSLASH +AM_DEFAULT_VERBOSITY +AM_DEFAULT_V +AM_V +am__untar +am__tar +AMTAR +am__leading_dot +SET_MAKE +AWK +mkdir_p +MKDIR_P +INSTALL_STRIP_PROGRAM +STRIP +install_sh +MAKEINFO +AUTOHEADER +AUTOMAKE +AUTOCONF +ACLOCAL +VERSION +PACKAGE +CYGPATH_W +am__isrc +INSTALL_DATA +INSTALL_SCRIPT +INSTALL_PROGRAM +LIBDEVHELP_LT_VERSION +target_alias +host_alias +build_alias +LIBS +ECHO_T +ECHO_N +ECHO_C +DEFS +mandir +localedir +libdir +psdir +pdfdir +dvidir +htmldir +infodir +docdir +oldincludedir +includedir +localstatedir +sharedstatedir +sysconfdir +datadir +datarootdir +libexecdir +sbindir +bindir +program_transform_name +prefix +exec_prefix +PACKAGE_URL +PACKAGE_BUGREPORT +PACKAGE_STRING +PACKAGE_VERSION +PACKAGE_TARNAME +PACKAGE_NAME +PATH_SEPARATOR +SHELL' +ac_subst_files='' +ac_user_opts=' +enable_option_checking +enable_silent_rules +enable_dependency_tracking +enable_static +enable_shared +with_pic +enable_fast_install +with_aix_soname +with_gnu_ld +with_sysroot +enable_libtool_lock +enable_appstream_util +enable_schemas_compile +enable_introspection +with_help_dir +enable_compile_warnings +enable_Werror +enable_nls +enable_rpath +with_libiconv_prefix +with_libintl_prefix +enable_flatpak_build +with_html_dir +enable_gtk_doc +enable_gtk_doc_html +enable_gtk_doc_pdf +' + ac_precious_vars='build_alias +host_alias +target_alias +CC +CFLAGS +LDFLAGS +LIBS +CPPFLAGS +LT_SYS_LIBRARY_PATH +CPP +PKG_CONFIG +PKG_CONFIG_PATH +PKG_CONFIG_LIBDIR +ITSTOOL +XMLLINT +DEVHELP_CFLAGS +DEVHELP_LIBS +PYTHON +GTKDOC_DEPS_CFLAGS +GTKDOC_DEPS_LIBS +WEBKITGTK_PREFIX' + + +# Initialize some variables set by options. +ac_init_help= +ac_init_version=false +ac_unrecognized_opts= +ac_unrecognized_sep= +# 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. +# (The list follows the same order as the GNU Coding Standards.) +bindir='${exec_prefix}/bin' +sbindir='${exec_prefix}/sbin' +libexecdir='${exec_prefix}/libexec' +datarootdir='${prefix}/share' +datadir='${datarootdir}' +sysconfdir='${prefix}/etc' +sharedstatedir='${prefix}/com' +localstatedir='${prefix}/var' +includedir='${prefix}/include' +oldincludedir='/usr/include' +docdir='${datarootdir}/doc/${PACKAGE_TARNAME}' +infodir='${datarootdir}/info' +htmldir='${docdir}' +dvidir='${docdir}' +pdfdir='${docdir}' +psdir='${docdir}' +libdir='${exec_prefix}/lib' +localedir='${datarootdir}/locale' +mandir='${datarootdir}/man' + +ac_prev= +ac_dashdash= +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 + + case $ac_option in + *=?*) ac_optarg=`expr "X$ac_option" : '[^=]*=\(.*\)'` ;; + *=) ac_optarg= ;; + *) ac_optarg=yes ;; + esac + + # Accept the important Cygnus configure options, so we can diagnose typos. + + case $ac_dashdash$ac_option in + --) + ac_dashdash=yes ;; + + -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) + ac_prev=datadir ;; + -datadir=* | --datadir=* | --datadi=* | --datad=*) + datadir=$ac_optarg ;; + + -datarootdir | --datarootdir | --datarootdi | --datarootd | --dataroot \ + | --dataroo | --dataro | --datar) + ac_prev=datarootdir ;; + -datarootdir=* | --datarootdir=* | --datarootdi=* | --datarootd=* \ + | --dataroot=* | --dataroo=* | --dataro=* | --datar=*) + datarootdir=$ac_optarg ;; + + -disable-* | --disable-*) + ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--disable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=no ;; + + -docdir | --docdir | --docdi | --doc | --do) + ac_prev=docdir ;; + -docdir=* | --docdir=* | --docdi=* | --doc=* | --do=*) + docdir=$ac_optarg ;; + + -dvidir | --dvidir | --dvidi | --dvid | --dvi | --dv) + ac_prev=dvidir ;; + -dvidir=* | --dvidir=* | --dvidi=* | --dvid=* | --dvi=* | --dv=*) + dvidir=$ac_optarg ;; + + -enable-* | --enable-*) + ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid feature name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"enable_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--enable-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval enable_$ac_useropt=\$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 ;; + + -htmldir | --htmldir | --htmldi | --htmld | --html | --htm | --ht) + ac_prev=htmldir ;; + -htmldir=* | --htmldir=* | --htmldi=* | --htmld=* | --html=* | --htm=* \ + | --ht=*) + htmldir=$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 ;; + + -localedir | --localedir | --localedi | --localed | --locale) + ac_prev=localedir ;; + -localedir=* | --localedir=* | --localedi=* | --localed=* | --locale=*) + localedir=$ac_optarg ;; + + -localstatedir | --localstatedir | --localstatedi | --localstated \ + | --localstate | --localstat | --localsta | --localst | --locals) + ac_prev=localstatedir ;; + -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \ + | --localstate=* | --localstat=* | --localsta=* | --localst=* | --locals=*) + 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 ;; + + -pdfdir | --pdfdir | --pdfdi | --pdfd | --pdf | --pd) + ac_prev=pdfdir ;; + -pdfdir=* | --pdfdir=* | --pdfdi=* | --pdfd=* | --pdf=* | --pd=*) + pdfdir=$ac_optarg ;; + + -psdir | --psdir | --psdi | --psd | --ps) + ac_prev=psdir ;; + -psdir=* | --psdir=* | --psdi=* | --psd=* | --ps=*) + psdir=$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_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--with-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=\$ac_optarg ;; + + -without-* | --without-*) + ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` + # Reject names that are not valid shell variable names. + expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && + as_fn_error $? "invalid package name: $ac_useropt" + ac_useropt_orig=$ac_useropt + ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` + case $ac_user_opts in + *" +"with_$ac_useropt" +"*) ;; + *) ac_unrecognized_opts="$ac_unrecognized_opts$ac_unrecognized_sep--without-$ac_useropt_orig" + ac_unrecognized_sep=', ';; + esac + eval with_$ac_useropt=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 ;; + + -*) as_fn_error $? "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information" + ;; + + *=*) + ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` + # Reject names that are not valid shell variable names. + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error $? "invalid variable name: \`$ac_envvar'" ;; + esac + eval $ac_envvar=\$ac_optarg + export $ac_envvar ;; + + *) + # FIXME: should be removed in autoconf 3.0. + $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2 + expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null && + $as_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'` + as_fn_error $? "missing argument to $ac_option" +fi + +if test -n "$ac_unrecognized_opts"; then + case $enable_option_checking in + no) ;; + fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;; + *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; + esac +fi + +# Check all directory arguments for consistency. +for ac_var in exec_prefix prefix bindir sbindir libexecdir datarootdir \ + datadir sysconfdir sharedstatedir localstatedir includedir \ + oldincludedir docdir infodir htmldir dvidir pdfdir psdir \ + libdir localedir mandir +do + eval ac_val=\$$ac_var + # Remove trailing slashes. + case $ac_val in + */ ) + ac_val=`expr "X$ac_val" : 'X\(.*[^/]\)' \| "X$ac_val" : 'X\(.*\)'` + eval $ac_var=\$ac_val;; + esac + # Be sure to have absolute directory names. + case $ac_val in + [\\/$]* | ?:[\\/]* ) continue;; + NONE | '' ) case $ac_var in *prefix ) continue;; esac;; + esac + as_fn_error $? "expected an absolute directory name for --$ac_var: $ac_val" +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 + 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 + + +ac_pwd=`pwd` && test -n "$ac_pwd" && +ac_ls_di=`ls -di .` && +ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || + as_fn_error $? "working directory cannot be determined" +test "X$ac_ls_di" = "X$ac_pwd_ls_di" || + as_fn_error $? "pwd does not report name of working directory" + + +# 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 the parent directory. + ac_confdir=`$as_dirname -- "$as_myself" || +$as_expr X"$as_myself" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_myself" : 'X\(//\)[^/]' \| \ + X"$as_myself" : 'X\(//\)$' \| \ + X"$as_myself" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_myself" | + 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 + test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." + as_fn_error $? "cannot find sources ($ac_unique_file) in $srcdir" +fi +ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" +ac_abs_confdir=`( + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error $? "$ac_msg" + pwd)` +# When building in place, set srcdir=. +if test "$ac_abs_confdir" = "$ac_pwd"; then + srcdir=. +fi +# Remove unnecessary trailing slashes from srcdir. +# Double slashes in file names in object file debugging info +# mess up M-x gdb in Emacs. +case $srcdir in +*/) srcdir=`expr "X$srcdir" : 'X\(.*[^/]\)' \| "X$srcdir" : 'X\(.*\)'`;; +esac +for ac_var in $ac_precious_vars; do + eval ac_env_${ac_var}_set=\${${ac_var}+set} + eval ac_env_${ac_var}_value=\$${ac_var} + eval ac_cv_env_${ac_var}_set=\${${ac_var}+set} + eval ac_cv_env_${ac_var}_value=\$${ac_var} +done + +# +# 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 Devhelp 3.28.1 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 \`..'] + +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] + --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] + --datarootdir=DIR read-only arch.-independent data root [PREFIX/share] + --datadir=DIR read-only architecture-independent data [DATAROOTDIR] + --infodir=DIR info documentation [DATAROOTDIR/info] + --localedir=DIR locale-dependent data [DATAROOTDIR/locale] + --mandir=DIR man documentation [DATAROOTDIR/man] + --docdir=DIR documentation root [DATAROOTDIR/doc/devhelp] + --htmldir=DIR html documentation [DOCDIR] + --dvidir=DIR dvi documentation [DOCDIR] + --pdfdir=DIR pdf documentation [DOCDIR] + --psdir=DIR ps documentation [DOCDIR] +_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 Devhelp 3.28.1:";; + esac + cat <<\_ACEOF + +Optional Features: + --disable-option-checking ignore unrecognized --enable/--with options + --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no) + --enable-FEATURE[=ARG] include FEATURE [ARG=yes] + --enable-silent-rules less verbose build output (undo: "make V=1") + --disable-silent-rules verbose build output (undo: "make V=0") + --enable-dependency-tracking + do not reject slow dependency extractors + --disable-dependency-tracking + speeds up one-time build + --enable-static[=PKGS] build static libraries [default=no] + --enable-shared[=PKGS] build shared libraries [default=yes] + --enable-fast-install[=PKGS] + optimize for fast installation [default=yes] + --disable-libtool-lock avoid locking (might break parallel builds) + --disable-appstream-util + Disable validating AppData XML files during check + phase + --disable-schemas-compile + Disable regeneration of gschemas.compiled on install + --enable-introspection=[no/auto/yes] + Enable introspection for this build + --enable-compile-warnings=[no/yes/error] + Enable compiler warnings and errors + --disable-Werror Unconditionally make all compiler warnings non-fatal + --disable-nls do not use Native Language Support + --disable-rpath do not hardcode runtime library paths + --enable-flatpak-build Enable Flatpak build mode + --enable-gtk-doc use gtk-doc to build documentation [[default=no]] + --enable-gtk-doc-html build documentation in html format [[default=yes]] + --enable-gtk-doc-pdf build documentation in pdf format [[default=no]] + +Optional Packages: + --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] + --without-PACKAGE do not use PACKAGE (same as --with-PACKAGE=no) + --with-pic[=PKGS] try to use only PIC/non-PIC objects [default=use + both] + --with-aix-soname=aix|svr4|both + shared library versioning (aka "SONAME") variant to + provide on AIX, [default=aix]. + --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-sysroot[=DIR] Search for dependent libraries within DIR (or the + compiler's sysroot if not specified). + --with-help-dir=DIR path where help files are installed + --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-html-dir=PATH path to installed docs + +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 + LIBS libraries to pass to the linker, e.g. -l + CPPFLAGS (Objective) C/C++ preprocessor flags, e.g. -I if + you have headers in a nonstandard directory + LT_SYS_LIBRARY_PATH + User-defined run-time library search path. + CPP C preprocessor + PKG_CONFIG path to pkg-config utility + PKG_CONFIG_PATH + directories to add to pkg-config's search path + PKG_CONFIG_LIBDIR + path overriding pkg-config's built-in search path + ITSTOOL Path to the `itstool` command + XMLLINT Path to the `xmllint` command + DEVHELP_CFLAGS + C compiler flags for DEVHELP, overriding pkg-config + DEVHELP_LIBS + linker flags for DEVHELP, overriding pkg-config + PYTHON the Python interpreter + GTKDOC_DEPS_CFLAGS + C compiler flags for GTKDOC_DEPS, overriding pkg-config + GTKDOC_DEPS_LIBS + linker flags for GTKDOC_DEPS, overriding pkg-config + WEBKITGTK_PREFIX + value of prefix for webkit2gtk-4.0, overriding pkg-config + +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 . +Devhelp home page: . +_ACEOF +ac_status=$? +fi + +if test "$ac_init_help" = "recursive"; then + # If there are subdirs, report their specific --help. + for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue + test -d "$ac_dir" || + { cd "$srcdir" && ac_pwd=`pwd` && srcdir=. && test -d "$ac_dir"; } || + continue + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + cd "$ac_dir" || { ac_status=$?; continue; } + # Check for guested 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 + else + $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2 + fi || ac_status=$? + cd "$ac_pwd" || { ac_status=$?; break; } + done +fi + +test -n "$ac_init_help" && exit $ac_status +if $ac_init_version; then + cat <<\_ACEOF +Devhelp configure 3.28.1 +generated by GNU Autoconf 2.69 + +Copyright (C) 2012 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 +fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + test -x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } > conftest.i && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + as_fn_set_status $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if eval \${$3+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* 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_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno + +} # ac_fn_c_check_func +cat >config.log <<_ACEOF +This file contains any messages produced by compilers while +running configure, to aid debugging if configure makes a mistake. + +It was created by Devhelp $as_me 3.28.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + $ $0 $@ + +_ACEOF +exec 5>>config.log +{ +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` +/usr/bin/hostinfo = `(/usr/bin/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=. + $as_echo "PATH: $as_dir" + done +IFS=$as_save_IFS + +} >&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_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=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + case $ac_pass in + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; + 2) + as_fn_append 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 + as_fn_append ac_configure_args " '$ac_arg'" + ;; + esac + done +done +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset 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: Use '\'' to represent an apostrophe within the trap. +# WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug. +trap 'exit_status=$? + # Save into config.log some information that might help in debugging. + { + echo + + $as_echo "## ---------------- ## +## Cache variables. ## +## ---------------- ##" + echo + # The following way of writing the cache mishandles newlines in values, +( + for ac_var in `(set) 2>&1 | sed -n '\''s/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'\''`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + (set) 2>&1 | + case $as_nl`(ac_space='\'' '\''; set) 2>&1` in #( + *${as_nl}ac_space=\ *) + sed -n \ + "s/'\''/'\''\\\\'\'''\''/g; + s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\''\\2'\''/p" + ;; #( + *) + sed -n "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) + echo + + $as_echo "## ----------------- ## +## Output variables. ## +## ----------------- ##" + echo + for ac_var in $ac_subst_vars + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + + if test -n "$ac_subst_files"; then + $as_echo "## ------------------- ## +## File substitutions. ## +## ------------------- ##" + echo + for ac_var in $ac_subst_files + do + eval ac_val=\$$ac_var + case $ac_val in + *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;; + esac + $as_echo "$ac_var='\''$ac_val'\''" + done | sort + echo + fi + + if test -s confdefs.h; then + $as_echo "## ----------- ## +## confdefs.h. ## +## ----------- ##" + echo + cat confdefs.h + echo + fi + test "$ac_signal" != 0 && + $as_echo "$as_me: caught signal $ac_signal" + $as_echo "$as_me: exit $exit_status" + } >&5 + rm -f core *.core core.conftest.* && + rm -f -r conftest* confdefs* conf$$* $ac_clean_files && + exit $exit_status +' 0 +for ac_signal in 1 2 13 15; do + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal +done +ac_signal=0 + +# confdefs.h avoids OS command line length limits that DEFS can exceed. +rm -f -r conftest* confdefs.h + +$as_echo "/* confdefs.h */" > 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 + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + + +# Let the site file select an alternate cache file if it wants to. +# Prefer an explicitly selected file to automatically selected ones. +ac_site_file1=NONE +ac_site_file2=NONE +if test -n "$CONFIG_SITE"; then + # We do not want a PATH search for config.site. + case $CONFIG_SITE in #(( + -*) ac_site_file1=./$CONFIG_SITE;; + */*) ac_site_file1=$CONFIG_SITE;; + *) ac_site_file1=./$CONFIG_SITE;; + esac +elif test "x$prefix" != xNONE; then + ac_site_file1=$prefix/share/config.site + ac_site_file2=$prefix/etc/config.site +else + ac_site_file1=$ac_default_prefix/share/config.site + ac_site_file2=$ac_default_prefix/etc/config.site +fi +for ac_site_file in "$ac_site_file1" "$ac_site_file2" +do + test "x$ac_site_file" = xNONE && continue + if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 +$as_echo "$as_me: loading site script $ac_site_file" >&6;} + sed 's/^/| /' "$ac_site_file" >&5 + . "$ac_site_file" \ + || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "failed to load site script $ac_site_file +See \`config.log' for more details" "$LINENO" 5; } + 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. DJGPP emulates it as a regular file. + if test /dev/null != "$cache_file" && test -f "$cache_file"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 +$as_echo "$as_me: loading cache $cache_file" >&6;} + case $cache_file in + [\\/]* | ?:[\\/]* ) . "$cache_file";; + *) . "./$cache_file";; + esac + fi +else + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 +$as_echo "$as_me: creating cache $cache_file" >&6;} + >$cache_file +fi + +gt_needs="$gt_needs " +# Check that the precious variables saved in the cache have kept the same +# value. +ac_cache_corrupted=false +for ac_var in $ac_precious_vars; 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,) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 +$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} + ac_cache_corrupted=: ;; + ,set) + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 +$as_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 + # differences in whitespace do not lead to failure. + ac_old_val_w=`echo x $ac_old_val` + ac_new_val_w=`echo x $ac_new_val` + if test "$ac_old_val_w" != "$ac_new_val_w"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 +$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} + ac_cache_corrupted=: + else + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 +$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} + eval $ac_var=\$ac_old_val + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 +$as_echo "$as_me: former value: \`$ac_old_val'" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 +$as_echo "$as_me: current value: \`$ac_new_val'" >&2;} + fi;; + esac + # Pass precious variables to config.status. + if test "$ac_new_set" = set; then + case $ac_new_val in + *\'*) ac_arg=$ac_var=`$as_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. + *) as_fn_append ac_configure_args " '$ac_arg'" ;; + esac + fi +done +if $ac_cache_corrupted; then + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 +$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} + as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 +fi +## -------------------- ## +## Main body of script. ## +## -------------------- ## + +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 + + + + + + + + + + # $is_release = (.git directory does not exist) + if test -d ${srcdir}/.git; then : + ax_is_release=no +else + ax_is_release=yes +fi + + + +# LT Version numbers, remember to change them just *before* a release. +# A good time to update it is for the GNOME x.y.90 version, at API freeze, +# so that packagers have the time to update the package. +# (Interfaces removed: CURRENT++, AGE=0, REVISION=0) +# (Interfaces added: CURRENT++, AGE++, REVISION=0) +# (No interfaces changed: REVISION++) +LIBDEVHELP_LT_CURRENT=5 +LIBDEVHELP_LT_REVISION=0 +LIBDEVHELP_LT_AGE=0 +LIBDEVHELP_LT_VERSION="$LIBDEVHELP_LT_CURRENT:$LIBDEVHELP_LT_REVISION:$LIBDEVHELP_LT_AGE" + + +ac_config_headers="$ac_config_headers config.h" + + + + +am__api_version='1.15' + +ac_aux_dir= +for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; 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 + as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5 +fi + +# These three variables are undocumented and unsupported, +# and are intended to be withdrawn in a future Autoconf release. +# They can cause serious problems if a builder's source tree is in a directory +# whose full name contains unusual characters. +ac_config_guess="$SHELL $ac_aux_dir/config.guess" # Please don't use this var. +ac_config_sub="$SHELL $ac_aux_dir/config.sub" # Please don't use this var. +ac_configure="$SHELL $ac_aux_dir/configure" # Please don't use this var. + + +# 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. +# Reject install programs that cannot install multiple files. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 +$as_echo_n "checking for a BSD-compatible install... " >&6; } +if test -z "$INSTALL"; then +if ${ac_cv_path_install+:} false; then : + $as_echo_n "(cached) " >&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_fn_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 + rm -rf conftest.one conftest.two conftest.dir + echo one > conftest.one + echo two > conftest.two + mkdir conftest.dir + if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" && + test -s conftest.one && test -s conftest.two && + test -s conftest.dir/conftest.one && + test -s conftest.dir/conftest.two + then + ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c" + break 3 + fi + fi + fi + done + done + ;; +esac + + done +IFS=$as_save_IFS + +rm -rf conftest.one conftest.two conftest.dir + +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. Don't cache a + # value for INSTALL within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + INSTALL=$ac_install_sh + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 +$as_echo "$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' + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5 +$as_echo_n "checking whether build environment is sane... " >&6; } +# Reject unsafe characters in $srcdir or the absolute working directory +# name. Accept space and tab only in the latter. +am_lf=' +' +case `pwd` in + *[\\\"\#\$\&\'\`$am_lf]*) + as_fn_error $? "unsafe absolute working directory name" "$LINENO" 5;; +esac +case $srcdir in + *[\\\"\#\$\&\'\`$am_lf\ \ ]*) + as_fn_error $? "unsafe srcdir value: '$srcdir'" "$LINENO" 5;; +esac + +# 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 ( + am_has_slept=no + for am_try in 1 2; do + echo "timestamp, slept: $am_has_slept" > conftest.file + 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 + 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". + as_fn_error $? "ls -t appears to fail. Make sure there is not a broken + alias in your environment" "$LINENO" 5 + fi + if test "$2" = conftest.file || test $am_try -eq 2; then + break + fi + # Just in case. + sleep 1 + am_has_slept=yes + done + test "$2" = conftest.file + ) +then + # Ok. + : +else + as_fn_error $? "newly created file is older than distributed files! +Check your system clock" "$LINENO" 5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +# If we didn't sleep, we still need to ensure time stamps of config.status and +# generated files are strictly newer. +am_sleep_pid= +if grep 'slept: no' conftest.file >/dev/null 2>&1; then + ( sleep 1 ) & + am_sleep_pid=$! +fi + +rm -f conftest.file + +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 $. +# By default was `s,x,x', remove it if useless. +ac_script='s/[\\$]/&&/g;s/;s,x,x,$//' +program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"` + +# Expand $ac_aux_dir to an absolute path. +am_aux_dir=`cd "$ac_aux_dir" && pwd` + +if test x"${MISSING+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + MISSING="\${SHELL} \"$am_aux_dir/missing\"" ;; + *) + MISSING="\${SHELL} $am_aux_dir/missing" ;; + esac +fi +# Use eval to expand $SHELL +if eval "$MISSING --is-lightweight"; then + am_missing_run="$MISSING " +else + am_missing_run= + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5 +$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;} +fi + +if test x"${install_sh+set}" != xset; then + case $am_aux_dir in + *\ * | *\ *) + install_sh="\${SHELL} '$am_aux_dir/install-sh'" ;; + *) + install_sh="\${SHELL} $am_aux_dir/install-sh" + esac +fi + +# 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +fi +INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s" + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5 +$as_echo_n "checking for a thread-safe mkdir -p... " >&6; } +if test -z "$MKDIR_P"; then + if ${ac_cv_path_mkdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in mkdir gmkdir; do + for ac_exec_ext in '' $ac_executable_extensions; do + as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue + case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #( + 'mkdir (GNU coreutils) '* | \ + 'mkdir (coreutils) '* | \ + 'mkdir (fileutils) '4.1*) + ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext + break 3;; + esac + done + done + done +IFS=$as_save_IFS + +fi + + test -d ./--version && rmdir ./--version + if test "${ac_cv_path_mkdir+set}" = set; then + MKDIR_P="$ac_cv_path_mkdir -p" + else + # As a last resort, use the slow shell script. Don't cache a + # value for MKDIR_P within a source directory, because that will + # break other packages using the cache if that directory is + # removed, or if the value is a relative name. + MKDIR_P="$ac_install_sh -d" + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5 +$as_echo "$MKDIR_P" >&6; } + +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AWK+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AWK="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AWK=$ac_cv_prog_AWK +if test -n "$AWK"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5 +$as_echo "$AWK" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AWK" && break +done + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5 +$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; } +set x ${MAKE-make} +ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'` +if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat >conftest.make <<\_ACEOF +SHELL = /bin/sh +all: + @echo '@@@%%%=$(MAKE)=@@@%%%' +_ACEOF +# GNU make sometimes prints "make[1]: Entering ...", which would confuse us. +case `${MAKE-make} -f conftest.make 2>/dev/null` in + *@@@%%%=?*=@@@%%%*) + eval ac_cv_prog_make_${ac_make}_set=yes;; + *) + eval ac_cv_prog_make_${ac_make}_set=no;; +esac +rm -f conftest.make +fi +if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + SET_MAKE= +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "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 + +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then : + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in # ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=1;; +esac +am_make=${MAKE-make} +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +$as_echo_n "checking whether $am_make supports nested variables... " >&6; } +if ${am_cv_make_support_nested_variables+:} false; then : + $as_echo_n "(cached) " >&6 +else + if $as_echo 'TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +$as_echo "$am_cv_make_support_nested_variables" >&6; } +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AM_BACKSLASH='\' + +if test "`cd $srcdir && pwd`" != "`pwd`"; then + # Use -I$(srcdir) only when $(srcdir) != ., so that make's output + # is not polluted with repeated "-I." + am__isrc=' -I$(srcdir)' + # test to see if srcdir already configured + if test -f $srcdir/config.status; then + as_fn_error $? "source directory already configured; run \"make distclean\" there first" "$LINENO" 5 + fi +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='devhelp' + VERSION='3.28.1' + + +# 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"} + +# For better backward compatibility. To be removed once Automake 1.9.x +# dies out for good. For more background, see: +# +# +mkdir_p='$(MKDIR_P)' + +# We need awk for the "check" target (and possibly the TAP driver). The +# system "awk" is bad on some platforms. +# Always define AMTAR for backward compatibility. Yes, it's still used +# in the wild :-( We should find a proper way to deprecate it ... +AMTAR='$${TAR-tar}' + + +# We'll loop over all known methods to create a tar archive until one works. +_am_tools='gnutar plaintar pax cpio none' + +# The POSIX 1988 'ustar' format is defined with fixed-size fields. + # There is notably a 21 bits limit for the UID and the GID. In fact, + # the 'pax' utility can hang on bigger UID/GID (see automake bug#8343 + # and bug#13588). + am_max_uid=2097151 # 2^21 - 1 + am_max_gid=$am_max_uid + # The $UID and $GID variables are not portable, so we need to resort + # to the POSIX-mandated id(1) utility. Errors in the 'id' calls + # below are definitely unexpected, so allow the users to see them + # (that is, avoid stderr redirection). + am_uid=`id -u || echo unknown` + am_gid=`id -g || echo unknown` + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether UID '$am_uid' is supported by ustar format" >&5 +$as_echo_n "checking whether UID '$am_uid' is supported by ustar format... " >&6; } + if test $am_uid -le $am_max_uid; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + _am_tools=none + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether GID '$am_gid' is supported by ustar format" >&5 +$as_echo_n "checking whether GID '$am_gid' is supported by ustar format... " >&6; } + if test $am_gid -le $am_max_gid; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + _am_tools=none + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to create a ustar tar archive" >&5 +$as_echo_n "checking how to create a ustar tar archive... " >&6; } + + # Go ahead even if we have the value already cached. We do so because we + # need to set the values for the 'am__tar' and 'am__untar' variables. + _am_tools=${am_cv_prog_tar_ustar-$_am_tools} + + for _am_tool in $_am_tools; do + case $_am_tool in + gnutar) + for _am_tar in tar gnutar gtar; do + { echo "$as_me:$LINENO: $_am_tar --version" >&5 + ($_am_tar --version) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && break + done + am__tar="$_am_tar --format=ustar -chf - "'"$$tardir"' + am__tar_="$_am_tar --format=ustar -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 ustar -w "$$tardir"' + am__tar_='pax -L -x ustar -w "$tardir"' + am__untar='pax -r' + ;; + cpio) + am__tar='find "$$tardir" -print | cpio -o -H ustar -L' + am__tar_='find "$tardir" -print | cpio -o -H ustar -L' + am__untar='cpio -i -H ustar -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_ustar}" && break + + # tar/untar a dummy directory, and stop if the command works. + rm -rf conftest.dir + mkdir conftest.dir + echo GrepMe > conftest.dir/file + { echo "$as_me:$LINENO: tardir=conftest.dir && eval $am__tar_ >conftest.tar" >&5 + (tardir=conftest.dir && eval $am__tar_ >conftest.tar) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + rm -rf conftest.dir + if test -s conftest.tar; then + { echo "$as_me:$LINENO: $am__untar &5 + ($am__untar &5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + { echo "$as_me:$LINENO: cat conftest.dir/file" >&5 + (cat conftest.dir/file) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } + grep GrepMe conftest.dir/file >/dev/null 2>&1 && break + fi + done + rm -rf conftest.dir + + if ${am_cv_prog_tar_ustar+:} false; then : + $as_echo_n "(cached) " >&6 +else + am_cv_prog_tar_ustar=$_am_tool +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_tar_ustar" >&5 +$as_echo "$am_cv_prog_tar_ustar" >&6; } + + + + + + +# POSIX will say in a future version that running "rm -f" with no argument +# is OK; and we want to be able to make that assumption in our Makefile +# recipes. So use an aggressive probe to check that the usage we want is +# actually supported "in the wild" to an acceptable degree. +# See automake bug#10828. +# To make any issue more visible, cause the running configure to be aborted +# by default if the 'rm' program in use doesn't match our expectations; the +# user can still override this though. +if rm -f && rm -fr && rm -rf; then : OK; else + cat >&2 <<'END' +Oops! + +Your 'rm' program seems unable to run without file operands specified +on the command line, even when the '-f' option is present. This is contrary +to the behaviour of most rm programs out there, and not conforming with +the upcoming POSIX standard: + +Please tell bug-automake@gnu.org about your system, including the value +of your $PATH and any error possibly output before this message. This +can help us improve future automake versions. + +END + if test x"$ACCEPT_INFERIOR_RM_PROGRAM" = x"yes"; then + echo 'Configuration will proceed anyway, since you have set the' >&2 + echo 'ACCEPT_INFERIOR_RM_PROGRAM variable to "yes"' >&2 + echo >&2 + else + cat >&2 <<'END' +Aborting the configuration process, to ensure you take notice of the issue. + +You can download and install GNU coreutils to get an 'rm' implementation +that behaves properly: . + +If you want to complete the configuration process using your problematic +'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM +to "yes", and re-run configure. + +END + as_fn_error $? "Your 'rm' program is bad, sorry." "$LINENO" 5 + fi +fi + + +# Support silent build rules, requires at least automake-1.11. Disable +# by either passing --disable-silent-rules to configure or passing V=1 +# to make +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then : + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in # ((( + yes) AM_DEFAULT_VERBOSITY=0;; + no) AM_DEFAULT_VERBOSITY=1;; + *) AM_DEFAULT_VERBOSITY=0;; +esac +am_make=${MAKE-make} +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5 +$as_echo_n "checking whether $am_make supports nested variables... " >&6; } +if ${am_cv_make_support_nested_variables+:} false; then : + $as_echo_n "(cached) " >&6 +else + if $as_echo 'TRUE=$(BAR$(V)) +BAR0=false +BAR1=true +V=1 +am__doit: + @$(TRUE) +.PHONY: am__doit' | $am_make -f - >/dev/null 2>&1; then + am_cv_make_support_nested_variables=yes +else + am_cv_make_support_nested_variables=no +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5 +$as_echo "$am_cv_make_support_nested_variables" >&6; } +if test $am_cv_make_support_nested_variables = yes; then + AM_V='$(V)' + AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)' +else + AM_V=$AM_DEFAULT_VERBOSITY + AM_DEFAULT_V=$AM_DEFAULT_VERBOSITY +fi +AM_BACKSLASH='\' + + +# Check 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="gcc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="${ac_tool_prefix}cc" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_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" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +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 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$CC"; then + if test -n "$ac_tool_prefix"; then + for ac_prog in cl.exe + 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_CC="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +CC=$ac_cv_prog_CC +if test -n "$CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 +$as_echo "$CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$CC" && break + done +fi +if test -z "$CC"; then + ac_ct_CC=$CC + for ac_prog in cl.exe +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_CC+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_CC="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_CC=$ac_cv_prog_ac_ct_CC +if test -n "$ac_ct_CC"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 +$as_echo "$ac_ct_CC" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_CC" && break +done + + if test "x$ac_ct_CC" = x; then + CC="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + CC=$ac_ct_CC + fi +fi + +fi + + +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "no acceptable C compiler found in \$PATH +See \`config.log' for more details" "$LINENO" 5; } + +# Provide some information about the compiler. +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 +set X $ac_compile +ac_compiler=$2 +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + fi + rm -f conftest.er1 conftest.err + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done + +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files a.out a.out.dSYM 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. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 +$as_echo_n "checking whether the C compiler works... " >&6; } +ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` + +# The possible output files: +ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*" + +ac_rmfiles= +for ac_file in $ac_files +do + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + * ) ac_rmfiles="$ac_rmfiles $ac_file";; + esac +done +rm -f $ac_rmfiles + +if { { ac_try="$ac_link_default" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link_default") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. +# So ignore a value of `no', otherwise this would lead to `EXEEXT = no' +# in a Makefile. We should not override ac_cv_exeext if it was cached, +# so that the user can short-circuit this test for compilers unknown to +# Autoconf. +for ac_file in $ac_files '' +do + test -f "$ac_file" || continue + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM | *.o | *.obj ) + ;; + [ab].out ) + # We found the default executable, but exeext='' is most + # certainly right. + break;; + *.* ) + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + then :; else + ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + fi + # We set ac_cv_exeext here because the later test for it is not + # safe: cross compilers may not add the suffix if given an `-o' + # argument, so we may need to know it at that point already. + # Even if this section looks crufty: it has the advantage of + # actually working. + break;; + * ) + break;; + esac +done +test "$ac_cv_exeext" = no && ac_cv_exeext= + +else + ac_file='' +fi +if test -z "$ac_file"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +$as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error 77 "C compiler cannot create executables +See \`config.log' for more details" "$LINENO" 5; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 +$as_echo_n "checking for C compiler default output file name... " >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 +$as_echo "$ac_file" >&6; } +ac_exeext=$ac_cv_exeext + +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 +$as_echo_n "checking for suffix of executables... " >&6; } +if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; 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 | *.map | *.inf | *.dSYM | *.o | *.obj ) ;; + *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` + break;; + * ) break;; + esac +done +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest conftest$ac_cv_exeext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 +$as_echo "$ac_cv_exeext" >&6; } + +rm -f conftest.$ac_ext +EXEEXT=$ac_cv_exeext +ac_exeext=$EXEEXT +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; + + ; + return 0; +} +_ACEOF +ac_clean_files="$ac_clean_files conftest.out" +# Check that the compiler produces executables we can run. If not, either +# the compiler is broken, or we cross compile. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 +$as_echo_n "checking whether we are cross compiling... " >&6; } +if test "$cross_compiling" != yes; then + { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if { ac_try='./conftest$ac_cv_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then + cross_compiling=no + else + if test "$cross_compiling" = maybe; then + cross_compiling=yes + else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot run C compiled programs. +If you meant to cross compile, use \`--host'. +See \`config.log' for more details" "$LINENO" 5; } + fi + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 +$as_echo "$cross_compiling" >&6; } + +rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out +ac_clean_files=$ac_clean_files_save +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 +$as_echo_n "checking for suffix of object files... " >&6; } +if ${ac_cv_objext+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +rm -f conftest.o conftest.obj +if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : + for ac_file in conftest.o conftest.obj conftest.*; do + test -f "$ac_file" || continue; + case $ac_file in + *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.map | *.inf | *.dSYM ) ;; + *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'` + break;; + esac +done +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "cannot compute suffix of object files: cannot compile +See \`config.log' for more details" "$LINENO" 5; } +fi +rm -f conftest.$ac_cv_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 +$as_echo "$ac_cv_objext" >&6; } +OBJEXT=$ac_cv_objext +ac_objext=$OBJEXT +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 +$as_echo_n "checking whether we are using the GNU C compiler... " >&6; } +if ${ac_cv_c_compiler_gnu+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ +#ifndef __GNUC__ + choke me +#endif + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_compiler_gnu=yes +else + ac_compiler_gnu=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +ac_cv_c_compiler_gnu=$ac_compiler_gnu + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 +$as_echo "$ac_cv_c_compiler_gnu" >&6; } +if test $ac_compiler_gnu = yes; then + GCC=yes +else + GCC= +fi +ac_test_CFLAGS=${CFLAGS+set} +ac_save_CFLAGS=$CFLAGS +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 +$as_echo_n "checking whether $CC accepts -g... " >&6; } +if ${ac_cv_prog_cc_g+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_save_c_werror_flag=$ac_c_werror_flag + ac_c_werror_flag=yes + ac_cv_prog_cc_g=no + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +else + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + ac_c_werror_flag=$ac_save_c_werror_flag + CFLAGS="-g" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_g=yes +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + ac_c_werror_flag=$ac_save_c_werror_flag +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 +$as_echo "$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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 +$as_echo_n "checking for $CC option to accept ISO C89... " >&6; } +if ${ac_cv_prog_cc_c89+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c89=no +ac_save_CC=$CC +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +struct stat; +/* 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 -std 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 -std. */ +int osf4_cc_array ['\x00' == 0 ? 1 : -1]; + +/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters + inside strings and character constants. */ +#define FOO(x) 'x' +int xlc6_cc_array[FOO(a) == 'x' ? 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 +for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \ + -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" +do + CC="$ac_save_CC $ac_arg" + if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_prog_cc_c89=$ac_arg +fi +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c89" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c89" in + x) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c89" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 +$as_echo "$ac_cv_prog_cc_c89" >&6; } ;; +esac +if test "x$ac_cv_prog_cc_c89" != xno; then : + +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 + +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5 +$as_echo_n "checking whether $CC understands -c and -o together... " >&6; } +if ${am_cv_prog_cc_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF + # Make sure it works both with $CC and with simple cc. + # Following AC_PROG_CC_C_O, we do the test twice because some + # compilers refuse to overwrite an existing .o file with -o, + # though they will create one. + am_cv_prog_cc_c_o=yes + for am_i in 1 2; do + if { echo "$as_me:$LINENO: $CC -c conftest.$ac_ext -o conftest2.$ac_objext" >&5 + ($CC -c conftest.$ac_ext -o conftest2.$ac_objext) >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } \ + && test -f conftest2.$ac_objext; then + : OK + else + am_cv_prog_cc_c_o=no + break + fi + done + rm -f core conftest* + unset am_i +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5 +$as_echo "$am_cv_prog_cc_c_o" >&6; } +if test "$am_cv_prog_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 +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 this is the am__doit target +.PHONY: am__doit +END +# If we don't find an include directive, just comment out the code. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5 +$as_echo_n "checking for style of include used by $am_make... " >&6; } +am__include="#" +am__quote= +_am_result=none +# First try GNU make style include. +echo "include confinc" > confmf +# Ignore all kinds of additional output from 'make'. +case `$am_make -s -f confmf 2> /dev/null` in #( +*the\ am__doit\ target*) + am__include=include + am__quote= + _am_result=GNU + ;; +esac +# Now try BSD make style include. +if test "$am__include" = "#"; then + echo '.include "confinc"' > confmf + case `$am_make -s -f confmf 2> /dev/null` in #( + *the\ am__doit\ target*) + am__include=.include + am__quote="\"" + _am_result=BSD + ;; + esac +fi + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5 +$as_echo "$_am_result" >&6; } +rm -f confinc confmf + +# Check whether --enable-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='\' + am__nodep='_no' +fi + if test "x$enable_dependency_tracking" != xno; then + AMDEP_TRUE= + AMDEP_FALSE='#' +else + AMDEP_TRUE='#' + AMDEP_FALSE= +fi + + + +depcc="$CC" am_compiler_list= + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5 +$as_echo_n "checking dependency style of $depcc... " >&6; } +if ${am_cv_CC_dependencies_compiler_type+:} false; then : + $as_echo_n "(cached) " >&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". + rm -rf conftest.dir + 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 + am__universal=false + case " $depcc " in #( + *\ -arch\ *\ -arch\ *) am__universal=true ;; + esac + + 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 10 /bin/sh. + echo '/* dummy */' > sub/conftst$i.h + done + echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf + + # 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. Also, some Intel + # versions had trouble with output in subdirs. + am__obj=sub/conftest.${OBJEXT-o} + am__minus_obj="-o $am__obj" + case $depmode in + gcc) + # This depmode causes a compiler race in universal mode. + test "$am__universal" = false || continue + ;; + 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 + ;; + msvc7 | msvc7msys | msvisualcpp | msvcmsys) + # This compiler won't grok '-c -o', but also, the minuso test has + # not run yet. These depmodes are late enough in the game, and + # so weak that their functioning should not be impacted. + am__obj=conftest.${OBJEXT-o} + am__minus_obj= + ;; + none) break ;; + esac + if depmode=$depmode \ + source=sub/conftest.c object=$am__obj \ + depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \ + $SHELL ./depcomp $depcc -c $am__minus_obj sub/conftest.c \ + >/dev/null 2>conftest.err && + grep sub/conftst1.h sub/conftest.Po > /dev/null 2>&1 && + grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 && + grep $am__obj 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5 +$as_echo "$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 + + +# Extract the first word of "glib-mkenums", so it can be a program name with args. +set dummy glib-mkenums; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GLIB_MKENUMS+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GLIB_MKENUMS in + [\\/]* | ?:[\\/]*) + ac_cv_path_GLIB_MKENUMS="$GLIB_MKENUMS" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GLIB_MKENUMS="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GLIB_MKENUMS=$ac_cv_path_GLIB_MKENUMS +if test -n "$GLIB_MKENUMS"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_MKENUMS" >&5 +$as_echo "$GLIB_MKENUMS" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +# Extract the first word of "glib-compile-resources", so it can be a program name with args. +set dummy glib-compile-resources; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GLIB_COMPILE_RESOURCES+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GLIB_COMPILE_RESOURCES in + [\\/]* | ?:[\\/]*) + ac_cv_path_GLIB_COMPILE_RESOURCES="$GLIB_COMPILE_RESOURCES" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GLIB_COMPILE_RESOURCES="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GLIB_COMPILE_RESOURCES=$ac_cv_path_GLIB_COMPILE_RESOURCES +if test -n "$GLIB_COMPILE_RESOURCES"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_COMPILE_RESOURCES" >&5 +$as_echo "$GLIB_COMPILE_RESOURCES" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + +# Initialize libtool + +case `pwd` in + *\ * | *\ *) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5 +$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;; +esac + + + +macro_version='2.4.6' +macro_revision='2.4.6' + + + + + + + + + + + + + +ltmain=$ac_aux_dir/ltmain.sh + +# Make sure we can run config.sub. +$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || + as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 +$as_echo_n "checking build system type... " >&6; } +if ${ac_cv_build+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_build_alias=$build_alias +test "x$ac_build_alias" = x && + ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` +test "x$ac_build_alias" = x && + as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5 +ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 +$as_echo "$ac_cv_build" >&6; } +case $ac_cv_build in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;; +esac +build=$ac_cv_build +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_build +shift +build_cpu=$1 +build_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +build_os=$* +IFS=$ac_save_IFS +case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 +$as_echo_n "checking host system type... " >&6; } +if ${ac_cv_host+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$host_alias" = x; then + ac_cv_host=$ac_cv_build +else + ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || + as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 +$as_echo "$ac_cv_host" >&6; } +case $ac_cv_host in +*-*-*) ;; +*) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;; +esac +host=$ac_cv_host +ac_save_IFS=$IFS; IFS='-' +set x $ac_cv_host +shift +host_cpu=$1 +host_vendor=$2 +shift; shift +# Remember, the first character of IFS is used to create $*, +# except with old shells: +host_os=$* +IFS=$ac_save_IFS +case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac + + +# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\(["`$\\]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' + +ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5 +$as_echo_n "checking how to print strings... " >&6; } +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "" +} + +case $ECHO in + printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5 +$as_echo "printf" >&6; } ;; + print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5 +$as_echo "print -r" >&6; } ;; + *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5 +$as_echo "cat" >&6; } ;; +esac + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5 +$as_echo_n "checking for a sed that does not truncate output... " >&6; } +if ${ac_cv_path_SED+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for ac_i in 1 2 3 4 5 6 7; do + ac_script="$ac_script$as_nl$ac_script" + done + echo "$ac_script" 2>/dev/null | sed 99q >conftest.sed + { ac_script=; unset ac_script;} + if test -z "$SED"; then + ac_path_SED_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + 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_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_SED="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_SED" || continue +# Check for GNU ac_path_SED and select it if it is found. + # Check for GNU $ac_path_SED +case `"$ac_path_SED" --version 2>&1` in +*GNU*) + ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo '' >> "conftest.nl" + "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_SED_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_SED="$ac_path_SED" + ac_path_SED_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_SED_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_SED"; then + as_fn_error $? "no acceptable sed could be found in \$PATH" "$LINENO" 5 + fi +else + ac_cv_path_SED=$SED +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5 +$as_echo "$ac_cv_path_SED" >&6; } + SED="$ac_cv_path_SED" + rm -f conftest.sed + +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 +$as_echo_n "checking for grep that handles long lines and -e... " >&6; } +if ${ac_cv_path_GREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$GREP"; then + ac_path_GREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in grep ggrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_GREP" || continue +# Check for GNU ac_path_GREP and select it if it is found. + # Check for GNU $ac_path_GREP +case `"$ac_path_GREP" --version 2>&1` in +*GNU*) + ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'GREP' >> "conftest.nl" + "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_GREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_GREP="$ac_path_GREP" + ac_path_GREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_GREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_GREP"; then + as_fn_error $? "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_GREP=$GREP +fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 +$as_echo "$ac_cv_path_GREP" >&6; } + GREP="$ac_cv_path_GREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 +$as_echo_n "checking for egrep... " >&6; } +if ${ac_cv_path_EGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 + then ac_cv_path_EGREP="$GREP -E" + else + if test -z "$EGREP"; then + ac_path_EGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in egrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_EGREP" || continue +# Check for GNU ac_path_EGREP and select it if it is found. + # Check for GNU $ac_path_EGREP +case `"$ac_path_EGREP" --version 2>&1` in +*GNU*) + ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'EGREP' >> "conftest.nl" + "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_EGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_EGREP="$ac_path_EGREP" + ac_path_EGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_EGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_EGREP"; then + as_fn_error $? "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_EGREP=$EGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 +$as_echo "$ac_cv_path_EGREP" >&6; } + EGREP="$ac_cv_path_EGREP" + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5 +$as_echo_n "checking for fgrep... " >&6; } +if ${ac_cv_path_FGREP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1 + then ac_cv_path_FGREP="$GREP -F" + else + if test -z "$FGREP"; then + ac_path_FGREP_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_prog in fgrep; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_FGREP" || continue +# Check for GNU ac_path_FGREP and select it if it is found. + # Check for GNU $ac_path_FGREP +case `"$ac_path_FGREP" --version 2>&1` in +*GNU*) + ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;; +*) + ac_count=0 + $as_echo_n 0123456789 >"conftest.in" + while : + do + cat "conftest.in" "conftest.in" >"conftest.tmp" + mv "conftest.tmp" "conftest.in" + cp "conftest.in" "conftest.nl" + $as_echo 'FGREP' >> "conftest.nl" + "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break + diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break + as_fn_arith $ac_count + 1 && ac_count=$as_val + if test $ac_count -gt ${ac_path_FGREP_max-0}; then + # Best one so far, save it but keep looking for a better one + ac_cv_path_FGREP="$ac_path_FGREP" + ac_path_FGREP_max=$ac_count + fi + # 10*(2^10) chars as input seems more than enough + test $ac_count -gt 10 && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out;; +esac + + $ac_path_FGREP_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_FGREP"; then + as_fn_error $? "no acceptable fgrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 + fi +else + ac_cv_path_FGREP=$FGREP +fi + + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5 +$as_echo "$ac_cv_path_FGREP" >&6; } + FGREP="$ac_cv_path_FGREP" + + +test -z "$GREP" && GREP=grep + + + + + + + + + + + + + + + + + + + +# Check whether --with-gnu-ld was given. +if test "${with_gnu_ld+set}" = set; then : + withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes +else + with_gnu_ld=no +fi + +ac_prog=ld +if test yes = "$GCC"; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&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. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname 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 yes = "$with_gnu_ld"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${lt_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD=$ac_dir/$ac_prog + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${lt_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$lt_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$lt_cv_prog_gnu_ld + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5 +$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; } +if ${lt_cv_path_NM+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM=$NM +else + lt_nm_to_check=${ac_tool_prefix}nm + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break 2 + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break 2 + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS=$lt_save_ifs + done + : ${lt_cv_path_NM=no} +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 +$as_echo "$lt_cv_path_NM" >&6; } +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM +else + # Didn't find any BSD compatible name lister, look for dumpbin. + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + if test -n "$ac_tool_prefix"; then + for ac_prog in dumpbin "link -dump" + 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DUMPBIN"; then + ac_cv_prog_DUMPBIN="$DUMPBIN" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DUMPBIN=$ac_cv_prog_DUMPBIN +if test -n "$DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5 +$as_echo "$DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$DUMPBIN" && break + done +fi +if test -z "$DUMPBIN"; then + ac_ct_DUMPBIN=$DUMPBIN + for ac_prog in dumpbin "link -dump" +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DUMPBIN"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DUMPBIN="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN +if test -n "$ac_ct_DUMPBIN"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5 +$as_echo "$ac_ct_DUMPBIN" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_DUMPBIN" && break +done + + if test "x$ac_ct_DUMPBIN" = x; then + DUMPBIN=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DUMPBIN=$ac_ct_DUMPBIN + fi +fi + + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols -headers" + ;; + *) + DUMPBIN=: + ;; + esac + fi + + if test : != "$DUMPBIN"; then + NM=$DUMPBIN + fi +fi +test -z "$NM" && NM=nm + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5 +$as_echo_n "checking the name lister ($NM) interface... " >&6; } +if ${lt_cv_nm_interface+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&5 + (eval echo "\"\$as_me:$LINENO: output\"" >&5) + cat conftest.out >&5 + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5 +$as_echo "$lt_cv_nm_interface" >&6; } + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 +$as_echo_n "checking whether ln -s works... " >&6; } +LN_S=$as_ln_s +if test "$LN_S" = "ln -s"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 +$as_echo "no, using $LN_S" >&6; } +fi + +# find the maximum length of command line arguments +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5 +$as_echo_n "checking the maximum length of command line arguments... " >&6; } +if ${lt_cv_sys_max_cmd_len+:} false; then : + $as_echo_n "(cached) " >&6 +else + i=0 + teststring=ABCD + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + mint*) + # On MiNT this can take a long time and run out of memory. + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[ ]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && + test 17 != "$i" # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac + +fi + +if test -n "$lt_cv_sys_max_cmd_len"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5 +$as_echo "$lt_cv_sys_max_cmd_len" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5 +$as_echo "none" >&6; } +fi +max_cmd_len=$lt_cv_sys_max_cmd_len + + + + + + +: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} + +if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi + + + + + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5 +$as_echo_n "checking how to convert $build file names to $host format... " >&6; } +if ${lt_cv_to_host_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac + +fi + +to_host_file_cmd=$lt_cv_to_host_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5 +$as_echo "$lt_cv_to_host_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5 +$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; } +if ${lt_cv_to_tool_file_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + #assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac + +fi + +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5 +$as_echo "$lt_cv_to_tool_file_cmd" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5 +$as_echo_n "checking for $LD option to reload object files... " >&6; } +if ${lt_cv_ld_reload_flag+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_reload_flag='-r' +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5 +$as_echo "$lt_cv_ld_reload_flag" >&6; } +reload_flag=$lt_cv_ld_reload_flag +case $reload_flag in +"" | " "*) ;; +*) reload_flag=" $reload_flag" ;; +esac +reload_cmds='$LD$reload_flag -o $output$reload_objs' +case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + if test yes != "$GCC"; then + reload_cmds=false + fi + ;; + darwin*) + if test yes = "$GCC"; then + reload_cmds='$LTCC $LTCFLAGS -nostdlib $wl-r -o $output$reload_objs' + else + reload_cmds='$LD$reload_flag -o $output$reload_objs' + fi + ;; +esac + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args. +set dummy ${ac_tool_prefix}objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OBJDUMP"; then + ac_cv_prog_OBJDUMP="$OBJDUMP" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OBJDUMP=$ac_cv_prog_OBJDUMP +if test -n "$OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5 +$as_echo "$OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OBJDUMP"; then + ac_ct_OBJDUMP=$OBJDUMP + # Extract the first word of "objdump", so it can be a program name with args. +set dummy objdump; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OBJDUMP"; then + ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OBJDUMP="objdump" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP +if test -n "$ac_ct_OBJDUMP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5 +$as_echo "$ac_ct_OBJDUMP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OBJDUMP" = x; then + OBJDUMP="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OBJDUMP=$ac_ct_OBJDUMP + fi +else + OBJDUMP="$ac_cv_prog_OBJDUMP" +fi + +test -z "$OBJDUMP" && OBJDUMP=objdump + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5 +$as_echo_n "checking how to recognize dependent libraries... " >&6; } +if ${lt_cv_deplibs_check_method+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# 'unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. + +case $host_os in +aix[4-9]*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi[45]*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # func_win32_libid shell function, so use a weaker test based on 'objdump', + # unless we find 'file', for example because we are cross-compiling. + if ( file / ) >/dev/null 2>&1; then + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + else + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc*) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[3-9]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +haiku*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF-[0-9][0-9]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]' + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|PA-RISC[0-9]\.[0-9]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix[3-9]*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +*nto* | *qnx*) + lt_cv_deplibs_check_method=pass_all + ;; + +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[^/]+(\.so\.[0-9]+\.[0-9]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [ML]SB (shared object|dynamic lib) M[0-9][0-9]* Version [0-9]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [0-9][0-9]*-bit [LM]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [0-9][0-9]*-bit [LM]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5 +$as_echo "$lt_cv_deplibs_check_method" >&6; } + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[\1]\/[\1]\/g;/g"` + fi + ;; + esac +fi + +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + + + + + + + + + + + + + + + + + + + + + + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args. +set dummy ${ac_tool_prefix}dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DLLTOOL"; then + ac_cv_prog_DLLTOOL="$DLLTOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DLLTOOL=$ac_cv_prog_DLLTOOL +if test -n "$DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5 +$as_echo "$DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DLLTOOL"; then + ac_ct_DLLTOOL=$DLLTOOL + # Extract the first word of "dlltool", so it can be a program name with args. +set dummy dlltool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DLLTOOL"; then + ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DLLTOOL="dlltool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL +if test -n "$ac_ct_DLLTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5 +$as_echo "$ac_ct_DLLTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DLLTOOL" = x; then + DLLTOOL="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DLLTOOL=$ac_ct_DLLTOOL + fi +else + DLLTOOL="$ac_cv_prog_DLLTOOL" +fi + +test -z "$DLLTOOL" && DLLTOOL=dlltool + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5 +$as_echo_n "checking how to associate runtime and link libraries... " >&6; } +if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd=$ECHO + ;; +esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5 +$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; } +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO + + + + + + + + +if test -n "$ac_tool_prefix"; then + for ac_prog in ar + 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_AR+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_AR="$ac_tool_prefix$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +AR=$ac_cv_prog_AR +if test -n "$AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5 +$as_echo "$AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$AR" && break + done +fi +if test -z "$AR"; then + ac_ct_AR=$AR + for ac_prog in ar +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_AR+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_AR"; then + ac_cv_prog_ac_ct_AR="$ac_ct_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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_AR="$ac_prog" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_AR=$ac_cv_prog_ac_ct_AR +if test -n "$ac_ct_AR"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5 +$as_echo "$ac_ct_AR" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$ac_ct_AR" && break +done + + if test "x$ac_ct_AR" = x; then + AR="false" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + AR=$ac_ct_AR + fi +fi + +: ${AR=ar} +: ${AR_FLAGS=cru} + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5 +$as_echo_n "checking for archiver @FILE support... " >&6; } +if ${lt_cv_ar_at_file+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ar_at_file=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5' + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test 0 -eq "$ac_status"; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5 + (eval $lt_ar_try) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + if test 0 -ne "$ac_status"; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5 +$as_echo "$lt_cv_ar_at_file" >&6; } + +if test no = "$lt_cv_ar_at_file"; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi + + + + + + + +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_STRIP+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_STRIP="${ac_tool_prefix}strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +STRIP=$ac_cv_prog_STRIP +if test -n "$STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5 +$as_echo "$STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_STRIP+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_STRIP="strip" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP +if test -n "$ac_ct_STRIP"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5 +$as_echo "$ac_ct_STRIP" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_STRIP" = x; then + STRIP=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + STRIP=$ac_ct_STRIP + fi +else + STRIP="$ac_cv_prog_STRIP" +fi + +test -z "$STRIP" && STRIP=: + + + + + + +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_RANLIB+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +RANLIB=$ac_cv_prog_RANLIB +if test -n "$RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 +$as_echo "$RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_RANLIB+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_RANLIB="ranlib" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB +if test -n "$ac_ct_RANLIB"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 +$as_echo "$ac_ct_RANLIB" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_RANLIB" = x; then + RANLIB=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + RANLIB=$ac_ct_RANLIB + fi +else + RANLIB="$ac_cv_prog_RANLIB" +fi + +test -z "$RANLIB" && RANLIB=: + + + + + + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + bitrig* | openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" +fi + +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + + +# Check for command to grab the raw symbol name followed by C symbol from nm. +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5 +$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; } +if ${lt_cv_sys_global_symbol_pipe+:} false; then : + $as_echo_n "(cached) " >&6 +else + +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[BCDEGRST]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([_A-Za-z][_A-Za-z0-9]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[BCDT]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[ABCDGISTW]' + ;; +hpux*) + if test ia64 = "$host_cpu"; then + symcode='[ABCDEGRST]' + fi + ;; +irix* | nonstopux*) + symcode='[BCDEGRST]' + ;; +osf*) + symcode='[BCDEGQRST]' + ;; +solaris*) + symcode='[BDRT]' + ;; +sco3.2v5*) + symcode='[DT]' + ;; +sysv4.2uw2*) + symcode='[DT]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[ABDT]' + ;; +sysv4) + symcode='[DFNSTU]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[ABCDGIRSTW]' ;; +esac + +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK '"\ +" {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[ ]\($symcode$symcode*\)[ ][ ]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + # Now try to grab the symbols. + nlist=conftest.nm + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5 + (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +LT_DLSYM_CONST struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS + LIBS=conftstm.$ac_objext + CFLAGS="$CFLAGS$lt_prog_compiler_no_builtin_flag" + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s conftest$ac_exeext; then + pipe_works=yes + fi + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_save_CFLAGS + else + echo "cannot find nm_test_func in $nlist" >&5 + fi + else + echo "cannot find nm_test_var in $nlist" >&5 + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&5 + fi + else + echo "$progname: failed program was:" >&5 + cat conftest.$ac_ext >&5 + fi + rm -rf conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test yes = "$pipe_works"; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done + +fi + +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5 +$as_echo "failed" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 +$as_echo "ok" >&6; } +fi + +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[@]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5 +$as_echo_n "checking for sysroot... " >&6; } + +# Check whether --with-sysroot was given. +if test "${with_sysroot+set}" = set; then : + withval=$with_sysroot; +else + with_sysroot=no +fi + + +lt_sysroot= +case $with_sysroot in #( + yes) + if test yes = "$GCC"; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5 +$as_echo "$with_sysroot" >&6; } + as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5 + ;; +esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5 +$as_echo "${lt_sysroot:-no}" >&6; } + + + + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5 +$as_echo_n "checking for a working dd... " >&6; } +if ${ac_cv_path_lt_DD+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +if test -z "$lt_DD"; then + ac_path_lt_DD_found=false + # Loop through the user's path and test for each of PROGNAME-LIST + 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_prog in dd; do + for ac_exec_ext in '' $ac_executable_extensions; do + ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext" + as_fn_executable_p "$ac_path_lt_DD" || continue +if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi + $ac_path_lt_DD_found && break 3 + done + done + done +IFS=$as_save_IFS + if test -z "$ac_cv_path_lt_DD"; then + : + fi +else + ac_cv_path_lt_DD=$lt_DD +fi + +rm -f conftest.i conftest2.i conftest.out +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5 +$as_echo "$ac_cv_path_lt_DD" >&6; } + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5 +$as_echo_n "checking how to truncate binary pipes... " >&6; } +if ${lt_cv_truncate_bin+:} false; then : + $as_echo_n "(cached) " >&6 +else + printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5 +$as_echo "$lt_cv_truncate_bin" >&6; } + + + + + + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + +# Check whether --enable-libtool-lock was given. +if test "${enable_libtool_lock+set}" = set; then : + enableval=$enable_libtool_lock; +fi + +test no = "$enable_libtool_lock" || enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE=32 + ;; + *ELF-64*) + HPUX_IA64_MODE=64 + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + if test yes = "$lt_cv_prog_gnu_ld"; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '#line '$LINENO' "configure"' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac + ;; + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS -belf" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5 +$as_echo_n "checking whether the C compiler needs -belf... " >&6; } +if ${lt_cv_cc_needs_belf+:} false; then : + $as_echo_n "(cached) " >&6 +else + 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 + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_cc_needs_belf=yes +else + lt_cv_cc_needs_belf=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext 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 + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5 +$as_echo "$lt_cv_cc_needs_belf" >&6; } + if test yes != "$lt_cv_cc_needs_belf"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS=$SAVE_CFLAGS + fi + ;; +*-*solaris*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) + case $host in + i?86-*-solaris*|x86_64-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD=${LD-ld}_sol2 + fi + ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks=$enable_libtool_lock + +if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args. +set dummy ${ac_tool_prefix}mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$MANIFEST_TOOL"; then + ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL +if test -n "$MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5 +$as_echo "$MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_MANIFEST_TOOL"; then + ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL + # Extract the first word of "mt", so it can be a program name with args. +set dummy mt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_MANIFEST_TOOL"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_MANIFEST_TOOL="mt" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL +if test -n "$ac_ct_MANIFEST_TOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5 +$as_echo "$ac_ct_MANIFEST_TOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_MANIFEST_TOOL" = x; then + MANIFEST_TOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL + fi +else + MANIFEST_TOOL="$ac_cv_prog_MANIFEST_TOOL" +fi + +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5 +$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; } +if ${lt_cv_path_mainfest_tool+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5 + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&5 + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest* +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5 +$as_echo "$lt_cv_path_mainfest_tool" >&6; } +if test yes != "$lt_cv_path_mainfest_tool"; then + MANIFEST_TOOL=: +fi + + + + + + + case $host_os in + rhapsody* | darwin*) + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args. +set dummy ${ac_tool_prefix}dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$DSYMUTIL"; then + ac_cv_prog_DSYMUTIL="$DSYMUTIL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +DSYMUTIL=$ac_cv_prog_DSYMUTIL +if test -n "$DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5 +$as_echo "$DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_DSYMUTIL"; then + ac_ct_DSYMUTIL=$DSYMUTIL + # Extract the first word of "dsymutil", so it can be a program name with args. +set dummy dsymutil; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_DSYMUTIL"; then + ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_DSYMUTIL="dsymutil" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL +if test -n "$ac_ct_DSYMUTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5 +$as_echo "$ac_ct_DSYMUTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_DSYMUTIL" = x; then + DSYMUTIL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + DSYMUTIL=$ac_ct_DSYMUTIL + fi +else + DSYMUTIL="$ac_cv_prog_DSYMUTIL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args. +set dummy ${ac_tool_prefix}nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$NMEDIT"; then + ac_cv_prog_NMEDIT="$NMEDIT" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +NMEDIT=$ac_cv_prog_NMEDIT +if test -n "$NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5 +$as_echo "$NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_NMEDIT"; then + ac_ct_NMEDIT=$NMEDIT + # Extract the first word of "nmedit", so it can be a program name with args. +set dummy nmedit; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_NMEDIT"; then + ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_NMEDIT="nmedit" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT +if test -n "$ac_ct_NMEDIT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5 +$as_echo "$ac_ct_NMEDIT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_NMEDIT" = x; then + NMEDIT=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + NMEDIT=$ac_ct_NMEDIT + fi +else + NMEDIT="$ac_cv_prog_NMEDIT" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args. +set dummy ${ac_tool_prefix}lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$LIPO"; then + ac_cv_prog_LIPO="$LIPO" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_LIPO="${ac_tool_prefix}lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +LIPO=$ac_cv_prog_LIPO +if test -n "$LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5 +$as_echo "$LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_LIPO"; then + ac_ct_LIPO=$LIPO + # Extract the first word of "lipo", so it can be a program name with args. +set dummy lipo; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_LIPO+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_LIPO"; then + ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_LIPO="lipo" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO +if test -n "$ac_ct_LIPO"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5 +$as_echo "$ac_ct_LIPO" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_LIPO" = x; then + LIPO=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + LIPO=$ac_ct_LIPO + fi +else + LIPO="$ac_cv_prog_LIPO" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL"; then + ac_cv_prog_OTOOL="$OTOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL="${ac_tool_prefix}otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL=$ac_cv_prog_OTOOL +if test -n "$OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5 +$as_echo "$OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL"; then + ac_ct_OTOOL=$OTOOL + # Extract the first word of "otool", so it can be a program name with args. +set dummy otool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL"; then + ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL="otool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL +if test -n "$ac_ct_OTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5 +$as_echo "$ac_ct_OTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL" = x; then + OTOOL=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL=$ac_ct_OTOOL + fi +else + OTOOL="$ac_cv_prog_OTOOL" +fi + + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args. +set dummy ${ac_tool_prefix}otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$OTOOL64"; then + ac_cv_prog_OTOOL64="$OTOOL64" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +OTOOL64=$ac_cv_prog_OTOOL64 +if test -n "$OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5 +$as_echo "$OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_prog_OTOOL64"; then + ac_ct_OTOOL64=$OTOOL64 + # Extract the first word of "otool64", so it can be a program name with args. +set dummy otool64; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ac_ct_OTOOL64"; then + ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ac_ct_OTOOL64="otool64" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64 +if test -n "$ac_ct_OTOOL64"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5 +$as_echo "$ac_ct_OTOOL64" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_ct_OTOOL64" = x; then + OTOOL64=":" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + OTOOL64=$ac_ct_OTOOL64 + fi +else + OTOOL64="$ac_cv_prog_OTOOL64" +fi + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5 +$as_echo_n "checking for -single_module linker flag... " >&6; } +if ${lt_cv_apple_cc_single_mod+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_apple_cc_single_mod=no + if test -z "$LT_MULTI_MODULE"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&5 + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&5 + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5 +$as_echo "$lt_cv_apple_cc_single_mod" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5 +$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; } +if ${lt_cv_ld_exported_symbols_list+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_ld_exported_symbols_list=yes +else + lt_cv_ld_exported_symbols_list=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5 +$as_echo "$lt_cv_ld_exported_symbols_list" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5 +$as_echo_n "checking for -force_load linker flag... " >&6; } +if ${lt_cv_ld_force_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&5 + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&5 + echo "$AR cru libconftest.a conftest.o" >&5 + $AR cru libconftest.a conftest.o 2>&5 + echo "$RANLIB libconftest.a" >&5 + $RANLIB libconftest.a 2>&5 + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&5 + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&5 + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&5 + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5 +$as_echo "$lt_cv_ld_force_load" >&6; } + case $host_os in + rhapsody* | darwin1.[012]) + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[91]*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[012][,.]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test yes = "$lt_cv_apple_cc_single_mod"; then + _lt_dar_single_mod='$single_module' + fi + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' + fi + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 +$as_echo_n "checking how to run the C preprocessor... " >&6; } +# On Suns, sometimes $CPP names a directory. +if test -n "$CPP" && test -d "$CPP"; then + CPP= +fi +if test -z "$CPP"; then + if ${ac_cv_prog_CPP+:} false; then : + $as_echo_n "(cached) " >&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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i 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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 +$as_echo "$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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#ifdef __STDC__ +# include +#else +# include +#endif + Syntax error +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + +else + # Broken: fails on valid input. +continue +fi +rm -f conftest.err conftest.i conftest.$ac_ext + + # OK, works on sane cases. Now check whether nonexistent headers + # can be detected and how. + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + # Broken: success on invalid input. +continue +else + # Passes both tests. +ac_preproc_ok=: +break +fi +rm -f conftest.err conftest.i conftest.$ac_ext + +done +# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. +rm -f conftest.i conftest.err conftest.$ac_ext +if $ac_preproc_ok; then : + +else + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details" "$LINENO" 5; } +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 + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 +$as_echo_n "checking for ANSI C header files... " >&6; } +if ${ac_cv_header_stdc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include +#include +#include + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_header_stdc=yes +else + ac_cv_header_stdc=no +fi +rm -f core 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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* 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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* 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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#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)) + return 2; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + +else + ac_cv_header_stdc=no +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + +fi +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 +$as_echo "$ac_cv_header_stdc" >&6; } +if test $ac_cv_header_stdc = yes; then + +$as_echo "#define STDC_HEADERS 1" >>confdefs.h + +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=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +if eval test \"x\$"$as_ac_Header"\" = x"yes"; then : + cat >>confdefs.h <<_ACEOF +#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 +_ACEOF + +fi + +done + + +for ac_header in dlfcn.h +do : + ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default +" +if test "x$ac_cv_header_dlfcn_h" = xyes; then : + cat >>confdefs.h <<_ACEOF +#define HAVE_DLFCN_H 1 +_ACEOF + +fi + +done + + + + + +# Set options +# Check whether --enable-static was given. +if test "${enable_static+set}" = set; then : + enableval=$enable_static; p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_static=no +fi + + + + + + + + + + + enable_dlopen=no + + + enable_win32_dll=no + + + # Check whether --enable-shared was given. +if test "${enable_shared+set}" = set; then : + enableval=$enable_shared; p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_shared=yes +fi + + + + + + + + + + + +# Check whether --with-pic was given. +if test "${with_pic+set}" = set; then : + withval=$with_pic; lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for lt_pkg in $withval; do + IFS=$lt_save_ifs + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + pic_mode=default +fi + + + + + + + + + # Check whether --enable-fast-install was given. +if test "${enable_fast_install+set}" = set; then : + enableval=$enable_fast_install; p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS=$lt_save_ifs + ;; + esac +else + enable_fast_install=yes +fi + + + + + + + + + shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[5-9]*,yes) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5 +$as_echo_n "checking which variant of shared library versioning to provide... " >&6; } + +# Check whether --with-aix-soname was given. +if test "${with_aix_soname+set}" = set; then : + withval=$with_aix_soname; case $withval in + aix|svr4|both) + ;; + *) + as_fn_error $? "Unknown argument to --with-aix-soname" "$LINENO" 5 + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname +else + if ${lt_cv_with_aix_soname+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_with_aix_soname=aix +fi + + with_aix_soname=$lt_cv_with_aix_soname +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5 +$as_echo "$with_aix_soname" >&6; } + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + + + + + + + + + + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS=$ltmain + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +test -z "$LN_S" && LN_S="ln -s" + + + + + + + + + + + + + + +if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5 +$as_echo_n "checking for objdir... " >&6; } +if ${lt_cv_objdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5 +$as_echo "$lt_cv_objdir" >&6; } +objdir=$lt_cv_objdir + + + + + +cat >>confdefs.h <<_ACEOF +#define LT_OBJDIR "$lt_cv_objdir/" +_ACEOF + + + + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a '.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld=$lt_cv_prog_gnu_ld + +old_CC=$CC +old_CFLAGS=$CFLAGS + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +func_cc_basename $compiler +cc_basename=$func_cc_basename_result + + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5 +$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/${ac_tool_prefix}file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"${ac_tool_prefix}file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD=$lt_cv_path_MAGIC_CMD + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD + ;; +esac +fi + +MAGIC_CMD=$lt_cv_path_MAGIC_CMD +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + + +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5 +$as_echo_n "checking for file... " >&6; } +if ${lt_cv_path_MAGIC_CMD+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $MAGIC_CMD in +[\\/*] | ?:[\\/]*) + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + ac_dummy="/usr/bin$PATH_SEPARATOR$PATH" + for ac_dir in $ac_dummy; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/file"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"file" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD=$lt_cv_path_MAGIC_CMD + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD + ;; +esac +fi + +MAGIC_CMD=$lt_cv_path_MAGIC_CMD +if test -n "$MAGIC_CMD"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5 +$as_echo "$MAGIC_CMD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + else + MAGIC_CMD=: + fi +fi + + fi + ;; +esac + +# Use C for the default configuration in the libtool script + +lt_save_CC=$CC +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 + + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +objext=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + + + + + + + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC + +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* + +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* + + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then + +lt_prog_compiler_no_builtin_flag= + +if test yes = "$GCC"; then + case $cc_basename in + nvcc*) + lt_prog_compiler_no_builtin_flag=' -Xcompiler -fno-builtin' ;; + *) + lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;; + esac + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5 +$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; } +if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_rtti_exceptions=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="-fno-rtti -fno-exceptions" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_rtti_exceptions=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5 +$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; } + +if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then + lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions" +else + : +fi + +fi + + + + + + + lt_prog_compiler_wl= +lt_prog_compiler_pic= +lt_prog_compiler_static= + + + if test yes = "$GCC"; then + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_static='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + fi + lt_prog_compiler_pic='-fPIC' + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + lt_prog_compiler_pic='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. + lt_prog_compiler_pic='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + ;; + + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + lt_prog_compiler_static= + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + ;; + + interix[3-9]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + lt_prog_compiler_can_build_shared=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic=-Kconform_pic + fi + ;; + + *) + lt_prog_compiler_pic='-fPIC' + ;; + esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + lt_prog_compiler_wl='-Xlinker ' + if test -n "$lt_prog_compiler_pic"; then + lt_prog_compiler_pic="-Xcompiler $lt_prog_compiler_pic" + fi + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + lt_prog_compiler_wl='-Wl,' + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + lt_prog_compiler_static='-Bstatic' + else + lt_prog_compiler_static='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + lt_prog_compiler_pic='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + lt_prog_compiler_pic='-DDLL_EXPORT' + case $host_os in + os2*) + lt_prog_compiler_static='$wl-static' + ;; + esac + ;; + + hpux9* | hpux10* | hpux11*) + lt_prog_compiler_wl='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + lt_prog_compiler_pic='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + lt_prog_compiler_static='$wl-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + lt_prog_compiler_wl='-Wl,' + # PIC (with -KPIC) is the default. + lt_prog_compiler_static='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + # old Intel for x86_64, which still supported -KPIC. + ecc*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='--shared' + lt_prog_compiler_static='--static' + ;; + nagfor*) + # NAG Fortran compiler + lt_prog_compiler_wl='-Wl,-Wl,,' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + ccc*) + lt_prog_compiler_wl='-Wl,' + # All Alpha code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-qpic' + lt_prog_compiler_static='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [1-7].* | *Sun*Fortran*\ 8.[0-3]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='' + ;; + *Sun\ F* | *Sun*Fortran*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Qoption ld ' + ;; + *Sun\ C*) + # Sun C 5.9 + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + lt_prog_compiler_wl='-Wl,' + ;; + *Intel*\ [CF]*Compiler*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fPIC' + lt_prog_compiler_static='-static' + ;; + *Portland\ Group*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-fpic' + lt_prog_compiler_static='-Bstatic' + ;; + esac + ;; + esac + ;; + + newsos6) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + lt_prog_compiler_pic='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + lt_prog_compiler_wl='-Wl,' + # All OSF/1 code is PIC. + lt_prog_compiler_static='-non_shared' + ;; + + rdos*) + lt_prog_compiler_static='-non_shared' + ;; + + solaris*) + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + lt_prog_compiler_wl='-Qoption ld ';; + *) + lt_prog_compiler_wl='-Wl,';; + esac + ;; + + sunos4*) + lt_prog_compiler_wl='-Qoption ld ' + lt_prog_compiler_pic='-PIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + lt_prog_compiler_pic='-Kconform_pic' + lt_prog_compiler_static='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_pic='-KPIC' + lt_prog_compiler_static='-Bstatic' + ;; + + unicos*) + lt_prog_compiler_wl='-Wl,' + lt_prog_compiler_can_build_shared=no + ;; + + uts4*) + lt_prog_compiler_pic='-pic' + lt_prog_compiler_static='-Bstatic' + ;; + + *) + lt_prog_compiler_can_build_shared=no + ;; + esac + fi + +case $host_os in + # For platforms that do not support PIC, -DPIC is meaningless: + *djgpp*) + lt_prog_compiler_pic= + ;; + *) + lt_prog_compiler_pic="$lt_prog_compiler_pic -DPIC" + ;; +esac + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5 +$as_echo_n "checking for $compiler option to produce PIC... " >&6; } +if ${lt_cv_prog_compiler_pic+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic=$lt_prog_compiler_pic +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5 +$as_echo "$lt_cv_prog_compiler_pic" >&6; } +lt_prog_compiler_pic=$lt_cv_prog_compiler_pic + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$lt_prog_compiler_pic"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5 +$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; } +if ${lt_cv_prog_compiler_pic_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_pic_works=no + ac_outfile=conftest.$ac_objext + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$lt_prog_compiler_pic -DPIC" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_pic_works=yes + fi + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5 +$as_echo "$lt_cv_prog_compiler_pic_works" >&6; } + +if test yes = "$lt_cv_prog_compiler_pic_works"; then + case $lt_prog_compiler_pic in + "" | " "*) ;; + *) lt_prog_compiler_pic=" $lt_prog_compiler_pic" ;; + esac +else + lt_prog_compiler_pic= + lt_prog_compiler_can_build_shared=no +fi + +fi + + + + + + + + + + + +# +# Check to make sure the static flag actually works. +# +wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\" +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5 +$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; } +if ${lt_cv_prog_compiler_static_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_static_works=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS $lt_tmp_static_flag" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler_static_works=yes + fi + else + lt_cv_prog_compiler_static_works=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5 +$as_echo "$lt_cv_prog_compiler_static_works" >&6; } + +if test yes = "$lt_cv_prog_compiler_static_works"; then + : +else + lt_prog_compiler_static= +fi + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5 +$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; } +if ${lt_cv_prog_compiler_c_o+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler_c_o=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&5) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&5 + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + lt_cv_prog_compiler_c_o=yes + fi + fi + chmod u+w . 2>&5 + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5 +$as_echo "$lt_cv_prog_compiler_c_o" >&6; } + + + + +hard_links=nottested +if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then + # do not overwrite the value of need_locks provided by the user + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5 +$as_echo_n "checking if we can lock with hard links... " >&6; } + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5 +$as_echo "$hard_links" >&6; } + if test no = "$hard_links"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5 +$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;} + need_locks=warn + fi +else + need_locks=no +fi + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5 +$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; } + + runpath_var= + allow_undefined_flag= + always_export_symbols=no + archive_cmds= + archive_expsym_cmds= + compiler_needs_object=no + enable_shared_with_static_runtimes=no + export_dynamic_flag_spec= + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + hardcode_automatic=no + hardcode_direct=no + hardcode_direct_absolute=no + hardcode_libdir_flag_spec= + hardcode_libdir_separator= + hardcode_minus_L=no + hardcode_shlibpath_var=unsupported + inherit_rpath=no + link_all_deplibs=unknown + module_cmds= + module_expsym_cmds= + old_archive_from_new_cmds= + old_archive_from_expsyms_cmds= + thread_safe_flag_spec= + whole_archive_flag_spec= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + include_expsyms= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. + exclude_expsyms='_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*' + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # 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 yes != "$GCC"; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd* | bitrig*) + with_gnu_ld=no + ;; + esac + + ld_shlibs=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no + if test yes = "$with_gnu_ld"; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[2-9]*) ;; + *\ \(GNU\ Binutils\)\ [3-9]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test yes = "$lt_use_gnu_ld_interface"; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='$wl' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + export_dynamic_flag_spec='$wl--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + whole_archive_flag_spec=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + else + whole_archive_flag_spec= + fi + supports_anon_versioning=no + case `$LD -v | $SED -e 's/(^)\+)\s\+//' 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [01].* | *\ 2.[0-9].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[3-9]*) + # On AIX/PPC, the GNU linker is very broken + if test ia64 != "$host_cpu"; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.19, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + allow_undefined_flag=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + archive_cmds='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + else + ld_shlibs=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, ) is actually meaningless, + # as there is no search path for DLLs. + hardcode_libdir_flag_spec='-L$libdir' + export_dynamic_flag_spec='$wl--export-all-symbols' + allow_undefined_flag=unsupported + always_export_symbols=no + enable_shared_with_static_runtimes=yes + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1 DATA/;s/^.*[ ]__nm__\([^ ]*\)[ ][^ ]*/\1 DATA/;/^I[ ]/d;/^[AITW][ ]/s/.* //'\'' | sort | uniq > $export_symbols' + exclude_expsyms='[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname' + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + ld_shlibs=no + fi + ;; + + haiku*) + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + link_all_deplibs=yes + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + + interix[3-9]*) + hardcode_direct=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + archive_expsym_cmds='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test linux-dietlibc = "$host_os"; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test no = "$tmp_diet" + then + tmp_addflag=' $pic_flag' + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + whole_archive_flag_spec= + tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; + xl[cC]* | bgxl[cC]* | mpixl[cC]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + whole_archive_flag_spec='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object=yes + ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + whole_archive_flag_spec='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + compiler_needs_object=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + archive_cmds='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + + if test yes = "$supports_anon_versioning"; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + tcc*) + export_dynamic_flag_spec='-rdynamic' + ;; + xlf* | bgf* | bgxlf* | mpixlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + whole_archive_flag_spec='--whole-archive$convenience --no-whole-archive' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' + if test yes = "$supports_anon_versioning"; then + archive_expsym_cmds='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + ld_shlibs=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [01].* | *\ 2.[0-9].* | *\ 2.1[0-5].*) + ld_shlibs=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + ;; + + sunos4*) + archive_cmds='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + ld_shlibs=no + fi + ;; + esac + + if test no = "$ld_shlibs"; then + runpath_var= + hardcode_libdir_flag_spec= + export_dynamic_flag_spec= + whole_archive_flag_spec= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + allow_undefined_flag=unsupported + always_export_symbols=yes + archive_expsym_cmds='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + hardcode_minus_L=yes + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + hardcode_direct=unsupported + fi + ;; + + aix[4-9]*) + if test ia64 = "$host_cpu"; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag= + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + export_symbols_cmds='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && (substr(\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' + else + export_symbols_cmds='`func_echo_all $NM | $SED -e '\''s/B\([^B]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && (substr(\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + fi + 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 + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive + case $host_os in aix4.[23]|aix4.[23].*|aix[5-9]*) + for ld_flag in $LDFLAGS; do + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then + aix_use_runtimelinking=yes + break + fi + done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + archive_cmds='' + hardcode_direct=yes + hardcode_direct_absolute=yes + hardcode_libdir_separator=':' + link_all_deplibs=yes + file_list_spec='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + hardcode_direct=no + hardcode_direct_absolute=no + ;; + esac + + if test yes = "$GCC"; then + case $host_os in aix4.[012]|aix4.[012].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`$CC -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + hardcode_direct=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + hardcode_minus_L=yes + hardcode_libdir_flag_spec='-L$libdir' + hardcode_libdir_separator= + fi + ;; + esac + shared_flag='-shared' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' + fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' + else + # not using gcc + if test ia64 = "$host_cpu"; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' + else + shared_flag='$wl-bM:SRE' + fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' + fi + fi + + export_dynamic_flag_spec='$wl-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + always_export_symbols=yes + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + allow_undefined_flag='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + archive_expsym_cmds='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag + else + if test ia64 = "$host_cpu"; then + hardcode_libdir_flag_spec='$wl-R $libdir:/usr/lib:/lib' + allow_undefined_flag="-z nodefs" + archive_expsym_cmds="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + if ${lt_cv_aix_libpath_+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + + lt_aix_libpath_sed=' + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }' + lt_cv_aix_libpath_=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if test -z "$lt_cv_aix_libpath_"; then + lt_cv_aix_libpath_=/usr/lib:/lib + fi + +fi + + aix_libpath=$lt_cv_aix_libpath_ +fi + + hardcode_libdir_flag_spec='$wl-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + no_undefined_flag=' $wl-bernotok' + allow_undefined_flag=' $wl-berok' + if test yes = "$with_gnu_ld"; then + # We only use this code for GNU lds that support --whole-archive. + whole_archive_flag_spec='$wl--whole-archive$convenience $wl--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + whole_archive_flag_spec='$convenience' + fi + archive_cmds_need_lc=yes + archive_expsym_cmds='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([, ]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + archive_expsym_cmds="$archive_expsym_cmds"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + archive_expsym_cmds="$archive_expsym_cmds"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + archive_expsym_cmds="$archive_expsym_cmds"'~$RM -r $output_objdir/$realname.d' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + archive_expsym_cmds='' + ;; + m68k) + archive_cmds='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + ;; + esac + ;; + + bsdi[45]*) + export_dynamic_flag_spec=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # 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. + case $cc_basename in + cl*) + # Native MSVC + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + always_export_symbols=yes + file_list_spec='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + archive_expsym_cmds='if test DEF = "`$SED -n -e '\''s/^[ ]*//'\'' -e '\''/^\(;.*\)*$/d'\'' -e '\''s/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p'\'' -e q $export_symbols`" ; then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, )='true' + enable_shared_with_static_runtimes=yes + exclude_expsyms='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + export_symbols_cmds='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[BCDGRS][ ]/s/.*[ ]\([^ ]*\)/\1,DATA/'\'' | $SED -e '\''/^[AITW][ ]/s/.*[ ]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + old_postinstall_cmds='chmod 644 $oldlib' + postlink_cmds='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + hardcode_libdir_flag_spec=' ' + allow_undefined_flag=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + archive_cmds='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + old_archive_from_new_cmds='true' + # FIXME: Should let the user specify the lib program. + old_archive_cmds='lib -OUT:$oldlib$oldobjs$old_deplibs' + enable_shared_with_static_runtimes=yes + ;; + esac + ;; + + darwin* | rhapsody*) + + + archive_cmds_need_lc=no + hardcode_direct=no + hardcode_automatic=yes + hardcode_shlibpath_var=unsupported + if test yes = "$lt_cv_ld_force_load"; then + whole_archive_flag_spec='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + + else + whole_archive_flag_spec='' + fi + link_all_deplibs=yes + allow_undefined_flag=$_lt_dar_allow_undefined + case $cc_basename in + ifort*|nagfor*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test yes = "$_lt_dar_can_shared"; then + output_verbose_link_cmd=func_echo_all + archive_cmds="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + module_cmds="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + archive_expsym_cmds="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + module_expsym_cmds="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + + else + ld_shlibs=no + fi + + ;; + + dgux*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2.*) + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + hpux9*) + if test yes = "$GCC"; then + archive_cmds='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + else + archive_cmds='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + fi + 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 + export_dynamic_flag_spec='$wl-E' + ;; + + hpux10*) + if test yes,no = "$GCC,$with_gnu_ld"; then + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' + hardcode_libdir_separator=: + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='$wl-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + hardcode_minus_L=yes + fi + ;; + + hpux11*) + if test yes,no = "$GCC,$with_gnu_ld"; then + case $host_cpu in + hppa*64*) + archive_cmds='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + archive_cmds='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + archive_cmds='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + archive_cmds='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5 +$as_echo_n "checking if $CC understands -b... " >&6; } +if ${lt_cv_prog_compiler__b+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_prog_compiler__b=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -b" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&5 + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + lt_cv_prog_compiler__b=yes + fi + else + lt_cv_prog_compiler__b=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5 +$as_echo "$lt_cv_prog_compiler__b" >&6; } + +if test yes = "$lt_cv_prog_compiler__b"; then + archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' +else + archive_cmds='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' +fi + + ;; + esac + fi + if test no = "$with_gnu_ld"; then + hardcode_libdir_flag_spec='$wl+b $wl$libdir' + hardcode_libdir_separator=: + + case $host_cpu in + hppa*64*|ia64*) + hardcode_direct=no + hardcode_shlibpath_var=no + ;; + *) + hardcode_direct=yes + hardcode_direct_absolute=yes + export_dynamic_flag_spec='$wl-E' + + # 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*) + if test yes = "$GCC"; then + archive_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + # This should be the same for all languages, so no per-tag cache variable. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5 +$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; } +if ${lt_cv_irix_exported_symbol+:} false; then : + $as_echo_n "(cached) " >&6 +else + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +int foo (void) { return 0; } +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + lt_cv_irix_exported_symbol=yes +else + lt_cv_irix_exported_symbol=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5 +$as_echo "$lt_cv_irix_exported_symbol" >&6; } + if test yes = "$lt_cv_irix_exported_symbol"; then + archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' + fi + else + archive_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + inherit_rpath=yes + link_all_deplibs=yes + ;; + + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + ld_shlibs=yes + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + archive_cmds='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + archive_cmds='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_direct=yes + hardcode_shlibpath_var=no + ;; + + newsos6) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + hardcode_shlibpath_var=no + ;; + + *nto* | *qnx*) + ;; + + openbsd* | bitrig*) + if test -f /usr/libexec/ld.so; then + hardcode_direct=yes + hardcode_shlibpath_var=no + hardcode_direct_absolute=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + export_dynamic_flag_spec='$wl-E' + else + archive_cmds='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + hardcode_libdir_flag_spec='$wl-rpath,$libdir' + fi + else + ld_shlibs=no + fi + ;; + + os2*) + hardcode_libdir_flag_spec='-L$libdir' + hardcode_minus_L=yes + allow_undefined_flag=unsupported + shrext_cmds=.dll + archive_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + archive_expsym_cmds='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + old_archive_From_new_cmds='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + enable_shared_with_static_runtimes=yes + ;; + + osf3*) + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + fi + archive_cmds_need_lc='no' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + hardcode_libdir_separator=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test yes = "$GCC"; then + allow_undefined_flag=' $wl-expect_unresolved $wl\*' + archive_cmds='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + hardcode_libdir_flag_spec='$wl-rpath $wl$libdir' + else + allow_undefined_flag=' -expect_unresolved \*' + archive_cmds='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + archive_expsym_cmds='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + hardcode_libdir_flag_spec='-rpath $libdir' + fi + archive_cmds_need_lc='no' + hardcode_libdir_separator=: + ;; + + solaris*) + no_undefined_flag=' -z defs' + if test yes = "$GCC"; then + wlarc='$wl' + archive_cmds='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + archive_cmds='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='$wl' + archive_cmds='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + hardcode_libdir_flag_spec='-R$libdir' + hardcode_shlibpath_var=no + case $host_os in + solaris2.[0-5] | solaris2.[0-5].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands '-z linker_flag'. GCC discards it without '$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test yes = "$GCC"; then + whole_archive_flag_spec='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' + else + whole_archive_flag_spec='-z allextract$convenience -z defaultextract' + fi + ;; + esac + link_all_deplibs=yes + ;; + + sunos4*) + if test sequent = "$host_vendor"; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + archive_cmds='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + hardcode_libdir_flag_spec='-L$libdir' + hardcode_direct=yes + hardcode_minus_L=yes + hardcode_shlibpath_var=no + ;; + + sysv4) + case $host_vendor in + sni) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + archive_cmds='$LD -G -o $lib $libobjs $deplibs $linker_flags' + reload_cmds='$CC -r -o $output$reload_objs' + hardcode_direct=no + ;; + motorola) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_direct=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + hardcode_shlibpath_var=no + ;; + + sysv4.3*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + export_dynamic_flag_spec='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_shlibpath_var=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + ld_shlibs=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[01].[10]* | unixware7* | sco3.2v5.0.[024]*) + no_undefined_flag='$wl-z,text' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We CANNOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + no_undefined_flag='$wl-z,text' + allow_undefined_flag='$wl-z,nodefs' + archive_cmds_need_lc=no + hardcode_shlibpath_var=no + hardcode_libdir_flag_spec='$wl-R,$libdir' + hardcode_libdir_separator=':' + link_all_deplibs=yes + export_dynamic_flag_spec='$wl-Bexport' + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + archive_cmds='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + archive_cmds='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + archive_expsym_cmds='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + archive_cmds='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + hardcode_libdir_flag_spec='-L$libdir' + hardcode_shlibpath_var=no + ;; + + *) + ld_shlibs=no + ;; + esac + + if test sni = "$host_vendor"; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + export_dynamic_flag_spec='$wl-Blargedynsym' + ;; + esac + fi + fi + +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5 +$as_echo "$ld_shlibs" >&6; } +test no = "$ld_shlibs" && can_build_shared=no + +with_gnu_ld=$with_gnu_ld + + + + + + + + + + + + + + + +# +# Do we need to explicitly link libc? +# +case "x$archive_cmds_need_lc" in +x|xyes) + # Assume -lc should be added + archive_cmds_need_lc=yes + + if test yes,yes = "$GCC,$enable_shared"; then + case $archive_cmds in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5 +$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; } +if ${lt_cv_archive_cmds_need_lc+:} false; then : + $as_echo_n "(cached) " >&6 +else + $RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5 + (eval $ac_compile) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$lt_prog_compiler_wl + pic_flag=$lt_prog_compiler_pic + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$allow_undefined_flag + allow_undefined_flag= + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5 + (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + then + lt_cv_archive_cmds_need_lc=no + else + lt_cv_archive_cmds_need_lc=yes + fi + allow_undefined_flag=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5 +$as_echo "$lt_cv_archive_cmds_need_lc" >&6; } + archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc + ;; + esac + fi + ;; +esac + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5 +$as_echo_n "checking dynamic linker characteristics... " >&6; } + +if test yes = "$GCC"; then + case $host_os in + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; + esac + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq='s|=\([A-Za-z]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac + # Ok, now we have the path, separated by spaces, we can step through it + # and add multilib dir if necessary... + lt_tmp_lt_search_path_spec= + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac + for lt_sys_path in $lt_search_path_spec; do + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then + test -d "$lt_sys_path" && \ + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" + fi + done + lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; + for (lt_i = NF; lt_i > 0; lt_i--) { + if ($lt_i != "" && $lt_i != ".") { + if ($lt_i == "..") { + lt_count++; + } else { + if (lt_count == 0) { + lt_foo = "/" $lt_i lt_foo; + } else { + lt_count--; + } + } + } + } + if (lt_foo != "") { lt_freq[lt_foo]++; } + if (lt_freq[lt_foo] == 1) { print lt_foo; } +}'` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's|/\([A-Za-z]:\)|\1|g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=.so +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + + + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='$libname$release$shared_ext$major' + ;; + +aix[4-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test ia64 = "$host_cpu"; then + # AIX 5 supports IA64 + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[01] | aix4.[01].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a(lib.so.V)' + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V($shared_archive_member_spec.o), lib.a(lib.so.V)" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a(lib.so.V), lib.so.V($shared_archive_member_spec.o)" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([^/]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + esac + ;; + +beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[45]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api" + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + ;; + esac + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([a-zA-Z]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec=$LIB + if $ECHO "$sys_lib_search_path_spec" | $GREP ';[c-zC-Z]:/' >/dev/null; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='$libname`echo $release | $SED -e 's/[.]/-/g'`$versuffix$shared_ext $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' + + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib" + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[23].*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[01]* | freebsdelf3.[01]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[2-9]* | freebsdelf3.[2-9]* | \ + freebsd4.[0-5] | freebsdelf4.[0-5] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + *) # from 4.6 on, and DragonFly + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=no + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 + fi + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... + postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[3-9]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test yes = "$lt_cv_prog_gnu_ld"; then + version_type=linux # correct to gnu/linux during the next big refactor + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + hardcode_libdir_flag_spec='-L$libdir' + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + if ${lt_cv_shlibpath_overrides_runpath+:} false; then : + $as_echo_n "(cached) " >&6 +else + lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$lt_prog_compiler_wl\"; \ + LDFLAGS=\"\$LDFLAGS $hardcode_libdir_flag_spec\"" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + if ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then : + lt_cv_shlibpath_overrides_runpath=yes +fi +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + +fi + + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Add ABI-specific directories to the system library path. + sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" + + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \$2)); skip = 1; } { if (!skip) print \$0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd* | bitrig*) + version_type=sunos + sys_lib_dlsearch_path_spec=/usr/lib + need_lib_prefix=no + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no + else + need_version=yes + fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test yes = "$with_gnu_ld"; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec; then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=sco + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test yes = "$with_gnu_ld"; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5 +$as_echo "$dynamic_linker" >&6; } +test no = "$dynamic_linker" && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test yes = "$GCC"; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec +fi + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec +fi + +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5 +$as_echo_n "checking how to hardcode library paths into programs... " >&6; } +hardcode_action= +if test -n "$hardcode_libdir_flag_spec" || + test -n "$runpath_var" || + test yes = "$hardcode_automatic"; then + + # We can hardcode non-existent directories. + if test no != "$hardcode_direct" && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, )" && + test no != "$hardcode_minus_L"; then + # Linking always hardcodes the temporary library directory. + hardcode_action=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + hardcode_action=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + hardcode_action=unsupported +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5 +$as_echo "$hardcode_action" >&6; } + +if test relink = "$hardcode_action" || + test yes = "$inherit_rpath"; then + # Fast installation is not supported + enable_fast_install=no +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then + # Fast installation is not necessary + enable_fast_install=needless +fi + + + + + + + if test yes != "$enable_dlopen"; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen=load_add_on + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen=LoadLibrary + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl +else + + lt_cv_dlopen=dyld + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + +fi + + ;; + + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + + *) + ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load" +if test "x$ac_cv_func_shl_load" = xyes; then : + lt_cv_dlopen=shl_load +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5 +$as_echo_n "checking for shl_load in -ldld... " >&6; } +if ${ac_cv_lib_dld_shl_load+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char shl_load (); +int +main () +{ +return shl_load (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_shl_load=yes +else + ac_cv_lib_dld_shl_load=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5 +$as_echo "$ac_cv_lib_dld_shl_load" >&6; } +if test "x$ac_cv_lib_dld_shl_load" = xyes; then : + lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld +else + ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen" +if test "x$ac_cv_func_dlopen" = xyes; then : + lt_cv_dlopen=dlopen +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5 +$as_echo_n "checking for dlopen in -ldl... " >&6; } +if ${ac_cv_lib_dl_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldl $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dl_dlopen=yes +else + ac_cv_lib_dl_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5 +$as_echo "$ac_cv_lib_dl_dlopen" >&6; } +if test "x$ac_cv_lib_dl_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5 +$as_echo_n "checking for dlopen in -lsvld... " >&6; } +if ${ac_cv_lib_svld_dlopen+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lsvld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dlopen (); +int +main () +{ +return dlopen (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_svld_dlopen=yes +else + ac_cv_lib_svld_dlopen=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5 +$as_echo "$ac_cv_lib_svld_dlopen" >&6; } +if test "x$ac_cv_lib_svld_dlopen" = xyes; then : + lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5 +$as_echo_n "checking for dld_link in -ldld... " >&6; } +if ${ac_cv_lib_dld_dld_link+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-ldld $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char dld_link (); +int +main () +{ +return dld_link (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_dld_dld_link=yes +else + ac_cv_lib_dld_dld_link=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5 +$as_echo "$ac_cv_lib_dld_dld_link" >&6; } +if test "x$ac_cv_lib_dld_dld_link" = xyes; then : + lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld +fi + + +fi + + +fi + + +fi + + +fi + + +fi + + ;; + esac + + if test no = "$lt_cv_dlopen"; then + enable_dlopen=no + else + enable_dlopen=yes + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS=$LDFLAGS + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS=$LIBS + LIBS="$lt_cv_dlopen_libs $LIBS" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5 +$as_echo_n "checking whether a program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test yes = "$cross_compiling"; then : + lt_cv_dlopen_self=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5 +$as_echo "$lt_cv_dlopen_self" >&6; } + + if test yes = "$lt_cv_dlopen_self"; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5 +$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; } +if ${lt_cv_dlopen_self_static+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test yes = "$cross_compiling"; then : + lt_cv_dlopen_self_static=cross +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +} +_LT_EOF + if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5 + (eval $ac_link) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&5 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlneed_uscore) lt_cv_dlopen_self_static=yes ;; + x$lt_dlunknown|x*) lt_cv_dlopen_self_static=no ;; + esac + else : + # compilation failed + lt_cv_dlopen_self_static=no + fi +fi +rm -fr conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5 +$as_echo "$lt_cv_dlopen_self_static" >&6; } + fi + + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi + + + + + + + + + + + + + + + + + +striplib= +old_striplib= +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5 +$as_echo_n "checking whether stripping libraries is possible... " >&6; } +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP"; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + fi + ;; + *) + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + ;; + esac +fi + + + + + + + + + + + + + # Report what library types will actually be built + { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5 +$as_echo_n "checking if libtool supports shared libraries... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5 +$as_echo "$can_build_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5 +$as_echo_n "checking whether to build shared libraries... " >&6; } + test no = "$can_build_shared" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test yes = "$enable_shared" && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[4-9]*) + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac + fi + ;; + esac + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5 +$as_echo "$enable_shared" >&6; } + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5 +$as_echo_n "checking whether to build static libraries... " >&6; } + # Make sure either enable_shared or enable_static is yes. + test yes = "$enable_shared" || enable_static=yes + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5 +$as_echo "$enable_static" >&6; } + + + + +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 + +CC=$lt_save_CC + + + + + + + + + + + + + + + + ac_config_commands="$ac_config_commands libtool" + + + + +# Only expand once: + + + + + + + + # Check whether --enable-appstream-util was given. +if test "${enable_appstream_util+set}" = set; then : + enableval=$enable_appstream_util; +fi + + + if test "x$enable_appstream_validate" != "xno"; then : + # Extract the first word of "appstream-util", so it can be a program name with args. +set dummy appstream-util; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_APPSTREAM_UTIL+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $APPSTREAM_UTIL in + [\\/]* | ?:[\\/]*) + ac_cv_path_APPSTREAM_UTIL="$APPSTREAM_UTIL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_APPSTREAM_UTIL="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +APPSTREAM_UTIL=$ac_cv_path_APPSTREAM_UTIL +if test -n "$APPSTREAM_UTIL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $APPSTREAM_UTIL" >&5 +$as_echo "$APPSTREAM_UTIL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + if test "x$APPSTREAM_UTIL" = "x"; then : + have_appstream_validate=no +else + have_appstream_validate=yes + +fi +else + have_appstream_validate=no +fi + + if test "x$have_appstream_validate" != "xno"; then : + appstream_validate=yes +else + appstream_validate=no + if test "x$enable_appstream_validate" = "xyes"; then : + as_fn_error $? "AppData validation was requested but appstream-util was not found" "$LINENO" 5 +fi +fi + + appstreamxmldir=${datadir}/metainfo + + + APPSTREAM_XML_RULES=' +.PHONY : uninstall-appstream-xml install-appstream-xml clean-appstream-xml + +mostlyclean-am: clean-appstream-xml + +%.appdata.valid: %.appdata.xml + $(AM_V_GEN) if test -f "$<"; then d=; else d="$(srcdir)/"; fi; \ + if test -n "$(APPSTREAM_UTIL)"; \ + then $(APPSTREAM_UTIL) --nonet validate $${d}$<; fi \ + && touch $@ + +check-am: $(appstream_XML:.appdata.xml=.appdata.valid) +uninstall-am: uninstall-appstream-xml +install-data-am: install-appstream-xml + +.SECONDARY: $(appstream_XML) + +install-appstream-xml: $(appstream_XML) + @$(NORMAL_INSTALL) + if test -n "$^"; then \ + test -z "$(appstreamxmldir)" || $(MKDIR_P) "$(DESTDIR)$(appstreamxmldir)"; \ + $(INSTALL_DATA) $^ "$(DESTDIR)$(appstreamxmldir)"; \ + fi + +uninstall-appstream-xml: + @$(NORMAL_UNINSTALL) + @list='\''$(appstream_XML)'\''; test -n "$(appstreamxmldir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '\''$(DESTDIR)$(appstreamxmldir)'\'' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(appstreamxmldir)" && rm -f $$files + +clean-appstream-xml: + rm -f $(appstream_XML:.appdata.xml=.appdata.valid) +' + + + + + + + + + + + + # Check whether --enable-schemas-compile was given. +if test "${enable_schemas_compile+set}" = set; then : + enableval=$enable_schemas_compile; case ${enableval} in + yes) GSETTINGS_DISABLE_SCHEMAS_COMPILE="" ;; + no) GSETTINGS_DISABLE_SCHEMAS_COMPILE="1" ;; + *) as_fn_error $? "bad value ${enableval} for --enable-schemas-compile" "$LINENO" 5 ;; + esac +fi + + + + + + + + + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + if test -n "$ac_tool_prefix"; then + # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args. +set dummy ${ac_tool_prefix}pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +PKG_CONFIG=$ac_cv_path_PKG_CONFIG +if test -n "$PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKG_CONFIG" >&5 +$as_echo "$PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +fi +if test -z "$ac_cv_path_PKG_CONFIG"; then + ac_pt_PKG_CONFIG=$PKG_CONFIG + # Extract the first word of "pkg-config", so it can be a program name with args. +set dummy pkg-config; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_ac_pt_PKG_CONFIG+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $ac_pt_PKG_CONFIG in + [\\/]* | ?:[\\/]*) + ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG +if test -n "$ac_pt_PKG_CONFIG"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKG_CONFIG" >&5 +$as_echo "$ac_pt_PKG_CONFIG" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + if test "x$ac_pt_PKG_CONFIG" = x; then + PKG_CONFIG="" + else + case $cross_compiling:$ac_tool_warned in +yes:) +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 +$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} +ac_tool_warned=yes ;; +esac + PKG_CONFIG=$ac_pt_PKG_CONFIG + fi +else + PKG_CONFIG="$ac_cv_path_PKG_CONFIG" +fi + +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=0.16 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking pkg-config is at least version $_pkg_min_version" >&5 +$as_echo_n "checking pkg-config is at least version $_pkg_min_version... " >&6; } + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + PKG_CONFIG="" + fi +fi + gsettingsschemadir=${datadir}/glib-2.0/schemas + + if test x$cross_compiling != xyes; then + GLIB_COMPILE_SCHEMAS=`$PKG_CONFIG --variable glib_compile_schemas gio-2.0` + else + # Extract the first word of "glib-compile-schemas", so it can be a program name with args. +set dummy glib-compile-schemas; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GLIB_COMPILE_SCHEMAS+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GLIB_COMPILE_SCHEMAS in + [\\/]* | ?:[\\/]*) + ac_cv_path_GLIB_COMPILE_SCHEMAS="$GLIB_COMPILE_SCHEMAS" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GLIB_COMPILE_SCHEMAS="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GLIB_COMPILE_SCHEMAS=$ac_cv_path_GLIB_COMPILE_SCHEMAS +if test -n "$GLIB_COMPILE_SCHEMAS"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GLIB_COMPILE_SCHEMAS" >&5 +$as_echo "$GLIB_COMPILE_SCHEMAS" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + + if test "x$GLIB_COMPILE_SCHEMAS" = "x"; then + as_fn_error $? "glib-compile-schemas not found." "$LINENO" 5 + else + : + fi + + GSETTINGS_RULES=' +.PHONY : uninstall-gsettings-schemas install-gsettings-schemas clean-gsettings-schemas + +mostlyclean-am: clean-gsettings-schemas + +gsettings__enum_file = $(addsuffix .enums.xml,$(gsettings_ENUM_NAMESPACE)) + +%.gschema.valid: %.gschema.xml $(gsettings__enum_file) + $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) --strict --dry-run $(addprefix --schema-file=,$(gsettings__enum_file)) --schema-file=$< && mkdir -p $(@D) && touch $@ + +all-am: $(gsettings_SCHEMAS:.xml=.valid) +uninstall-am: uninstall-gsettings-schemas +install-data-am: install-gsettings-schemas + +.SECONDARY: $(gsettings_SCHEMAS) + +install-gsettings-schemas: $(gsettings_SCHEMAS) $(gsettings__enum_file) + @$(NORMAL_INSTALL) + if test -n "$^"; then \ + test -z "$(gsettingsschemadir)" || $(MKDIR_P) "$(DESTDIR)$(gsettingsschemadir)"; \ + $(INSTALL_DATA) $^ "$(DESTDIR)$(gsettingsschemadir)"; \ + test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); \ + fi + +uninstall-gsettings-schemas: + @$(NORMAL_UNINSTALL) + @list='\''$(gsettings_SCHEMAS) $(gsettings__enum_file)'\''; test -n "$(gsettingsschemadir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '\''$(DESTDIR)$(gsettingsschemadir)'\'' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gsettingsschemadir)" && rm -f $$files + test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir) + +clean-gsettings-schemas: + rm -f $(gsettings_SCHEMAS:.xml=.valid) $(gsettings__enum_file) + +ifdef gsettings_ENUM_NAMESPACE +$(gsettings__enum_file): $(gsettings_ENUM_FILES) + $(AM_V_GEN) glib-mkenums --comments '\'''\'' --fhead "" --vhead " <@type@ id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod " " --vtail " " --ftail "" $^ > $@.tmp && mv $@.tmp $@ +endif +' + + + + + + + + + + + + + # Check whether --enable-introspection was given. +if test "${enable_introspection+set}" = set; then : + enableval=$enable_introspection; +else + enable_introspection=auto +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gobject-introspection" >&5 +$as_echo_n "checking for gobject-introspection... " >&6; } + + case $enable_introspection in #( + no) : + found_introspection="no (disabled, use --enable-introspection to enable)" + ;; #( + yes) : + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + : +else + as_fn_error $? "gobject-introspection-1.0 is not installed" "$LINENO" 5 +fi + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.30.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.30.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + found_introspection=yes +else + as_fn_error $? "You need to have gobject-introspection >= 1.30.0 installed to build Devhelp" "$LINENO" 5 +fi + ;; #( + auto) : + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gobject-introspection-1.0 >= 1.30.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gobject-introspection-1.0 >= 1.30.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + found_introspection=yes +else + found_introspection=no +fi + enable_introspection=$found_introspection + ;; #( + *) : + as_fn_error $? "invalid argument passed to --enable-introspection, should be one of [no/auto/yes]" "$LINENO" 5 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $found_introspection" >&5 +$as_echo "$found_introspection" >&6; } + + INTROSPECTION_SCANNER= + INTROSPECTION_COMPILER= + INTROSPECTION_GENERATE= + INTROSPECTION_GIRDIR= + INTROSPECTION_TYPELIBDIR= + if test "x$found_introspection" = "xyes"; then + INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` + INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` + INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` + INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` + INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection + fi + + + + + + + + + + if test "x$found_introspection" = "xyes"; then + HAVE_INTROSPECTION_TRUE= + HAVE_INTROSPECTION_FALSE='#' +else + HAVE_INTROSPECTION_TRUE='#' + HAVE_INTROSPECTION_FALSE= +fi + + + + + + + + + + + + +YELP_LC_MEDIA_LINKS=true +YELP_LC_DIST=true + +for yelpopt in ; do + case $yelpopt in + lc-media-links) YELP_LC_MEDIA_LINKS=true ;; + no-lc-media-links) YELP_LC_MEDIA_LINKS= ;; + lc-dist) YELP_LC_DIST=true ;; + no-lc-dist) YELP_LC_DIST= ;; + *) as_fn_error $? "Unrecognized YELP_HELP_INIT option $yelpopt\"" "$LINENO" 5 ;; + esac +done; + + + + +# Check whether --with-help-dir was given. +if test "${with_help_dir+set}" = set; then : + withval=$with_help_dir; +else + with_help_dir='${datadir}/help' +fi + +HELP_DIR="$with_help_dir" + + + +# Extract the first word of "itstool", so it can be a program name with args. +set dummy itstool; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_ITSTOOL+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$ITSTOOL"; then + ac_cv_prog_ITSTOOL="$ITSTOOL" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_ITSTOOL="itstool" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +ITSTOOL=$ac_cv_prog_ITSTOOL +if test -n "$ITSTOOL"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ITSTOOL" >&5 +$as_echo "$ITSTOOL" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +if test x"$ITSTOOL" = x; then + as_fn_error $? "itstool not found" "$LINENO" 5 +fi + + +# Extract the first word of "xmllint", so it can be a program name with args. +set dummy xmllint; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_XMLLINT+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$XMLLINT"; then + ac_cv_prog_XMLLINT="$XMLLINT" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_XMLLINT="xmllint" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +XMLLINT=$ac_cv_prog_XMLLINT +if test -n "$XMLLINT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XMLLINT" >&5 +$as_echo "$XMLLINT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + +if test x"$XMLLINT" = x; then + as_fn_error $? "xmllint not found" "$LINENO" 5 +fi + +YELP_HELP_RULES=' +HELP_ID ?= +HELP_POT ?= +HELP_FILES ?= +HELP_EXTRA ?= +HELP_MEDIA ?= +HELP_LINGUAS ?= + +_HELP_LINGUAS = $(if $(filter environment,$(origin LINGUAS)),$(filter $(LINGUAS),$(HELP_LINGUAS)),$(HELP_LINGUAS)) +_HELP_POTFILE = $(if $(HELP_POT),$(HELP_POT),$(if $(HELP_ID),$(HELP_ID).pot)) +_HELP_POFILES = $(if $(HELP_ID),$(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).po)) +_HELP_MOFILES = $(patsubst %.po,%.mo,$(_HELP_POFILES)) +_HELP_C_FILES = $(foreach f,$(HELP_FILES),C/$(f)) +_HELP_C_EXTRA = $(foreach f,$(HELP_EXTRA),C/$(f)) +_HELP_C_MEDIA = $(foreach f,$(HELP_MEDIA),C/$(f)) +_HELP_LC_FILES = $(foreach lc,$(_HELP_LINGUAS),$(foreach f,$(HELP_FILES),$(lc)/$(f))) +_HELP_LC_STAMPS = $(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).stamp) + +_HELP_DEFAULT_V = $(if $(AM_DEFAULT_VERBOSITY),$(AM_DEFAULT_VERBOSITY),1) +_HELP_V = $(if $(V),$(V),$(_HELP_DEFAULT_V)) +_HELP_LC_VERBOSE = $(_HELP_LC_VERBOSE_$(_HELP_V)) +_HELP_LC_VERBOSE_ = $(_HELP_LC_VERBOSE_$(_HELP_DEFAULT_V)) +_HELP_LC_VERBOSE_0 = @echo " GEN "$(dir $@); + +all: $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) $(_HELP_LC_FILES) $(_HELP_POFILES) + +.PHONY: pot +pot: $(_HELP_POTFILE) +$(_HELP_POTFILE): $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) + $(AM_V_GEN)if test -d "C"; then d=; else d="$(srcdir)/"; fi; \ + $(ITSTOOL) -o "$@" $(foreach f,$(_HELP_C_FILES),"$${d}$(f)") + +.PHONY: repo +repo: $(_HELP_POTFILE) + $(AM_V_at)for po in $(_HELP_POFILES); do \ + if test "x$(_HELP_V)" = "x0"; then echo " GEN $${po}"; fi; \ + msgmerge -q -o "$${po}" "$${po}" "$(_HELP_POTFILE)"; \ + done + +$(_HELP_POFILES): + $(AM_V_at)if ! test -d "$(dir $@)"; then mkdir "$(dir $@)"; fi + $(AM_V_at)if test ! -f "$@" -a -f "$(srcdir)/$@"; then cp "$(srcdir)/$@" "$@"; fi + $(AM_V_GEN)if ! test -f "$@"; then \ + (cd "$(dir $@)" && \ + $(ITSTOOL) -o "$(notdir $@).tmp" $(_HELP_C_FILES) && \ + mv "$(notdir $@).tmp" "$(notdir $@)"); \ + else \ + (cd "$(dir $@)" && \ + $(ITSTOOL) -o "$(notdir $@).tmp" $(_HELP_C_FILES) && \ + msgmerge -o "$(notdir $@)" "$(notdir $@)" "$(notdir $@).tmp" && \ + rm "$(notdir $@).tmp"); \ + fi + +$(_HELP_MOFILES): %.mo: %.po + $(AM_V_at)if ! test -d "$(dir $@)"; then mkdir "$(dir $@)"; fi + $(AM_V_GEN)msgfmt -o "$@" "$<" + +$(_HELP_LC_FILES): $(_HELP_LINGUAS) +$(_HELP_LINGUAS): $(_HELP_LC_STAMPS) +$(_HELP_LC_STAMPS): %.stamp: %.mo +$(_HELP_LC_STAMPS): $(_HELP_C_FILES) $(_HELP_C_EXTRA) + $(AM_V_at)if ! test -d "$(dir $@)"; then mkdir "$(dir $@)"; fi + $(_HELP_LC_VERBOSE)if test -d "C"; then d="../"; else d="$(abs_srcdir)/"; fi; \ + mo="$(dir $@)$(patsubst %/$(notdir $@),%,$@).mo"; \ + if test -f "$${mo}"; then mo="../$${mo}"; else mo="$(abs_srcdir)/$${mo}"; fi; \ + (cd "$(dir $@)" && $(ITSTOOL) -m "$${mo}" $(foreach f,$(_HELP_C_FILES),$${d}/$(f))) && \ + touch "$@" + +.PHONY: clean-help +mostlyclean-am: $(if $(HELP_ID),clean-help) +clean-help: + rm -f $(_HELP_LC_FILES) $(_HELP_LC_STAMPS) $(_HELP_MOFILES) + +EXTRA_DIST ?= +EXTRA_DIST += $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) +EXTRA_DIST += $(if $(YELP_LC_DIST),$(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).stamp)) +EXTRA_DIST += $(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).po) +EXTRA_DIST += $(foreach f,$(HELP_MEDIA),$(foreach lc,$(HELP_LINGUAS),$(wildcard $(lc)/$(f)))) + +distdir: distdir-help-files +distdir-help-files: $(_HELP_LC_FILES) + @for lc in C $(if $(YELP_LC_DIST),$(HELP_LINGUAS)) ; do \ + $(MKDIR_P) "$(distdir)/$$lc"; \ + for file in $(HELP_FILES); do \ + if test -f "$$lc/$$file"; then d=./; else d=$(srcdir)/; fi; \ + cp -p "$$d$$lc/$$file" "$(distdir)/$$lc/" || exit 1; \ + done; \ + done; \ + +.PHONY: check-help +check: check-help +check-help: + for lc in C $(_HELP_LINGUAS); do \ + if test -d "$$lc"; \ + then d=; \ + xmlpath="$$lc"; \ + else \ + d="$(srcdir)/"; \ + xmlpath="$$lc:$(srcdir)/$$lc"; \ + fi; \ + for page in $(HELP_FILES); do \ + echo "$(XMLLINT) --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ + $(XMLLINT) --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ + done; \ + done + + +.PHONY: install-help +install-data-am: $(if $(HELP_ID),install-help) +install-help: $(_HELP_LC_FILES) + @for lc in C $(_HELP_LINGUAS); do \ + $(mkinstalldirs) "$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)" || exit 1; \ + done + @for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \ + if test -f "$$lc/$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \ + echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir`basename $$f`"; \ + $(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir`basename $$f`" || exit 1; \ + done; done + @for f in $(_HELP_C_EXTRA); do \ + lc=`dirname "$$f"`; lc=`basename "$$lc"`; \ + if test -f "$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \ + echo "$(INSTALL_DATA) $$d$$f $$helpdir`basename $$f`"; \ + $(INSTALL_DATA) "$$d$$f" "$$helpdir`basename $$f`" || exit 1; \ + done + @for f in $(HELP_MEDIA); do \ + for lc in C $(_HELP_LINGUAS); do \ + if test -f "$$lc$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + mdir=`dirname "$$f"`; \ + if test "x$mdir" = "x."; then mdir=""; fi; \ + if ! test -d "$$helpdir$$mdir"; then $(mkinstalldirs) "$$helpdir$$mdir"; fi; \ + if test -f "$$d$$lc/$$f"; then \ + echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir$$f"; \ + $(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir$$f" || exit 1; \ + elif test "x$$lc" != "xC"; then \ + if test "x$(YELP_LC_MEDIA_LINKS)" != "x"; then \ + echo "$(LN_S) -f $(HELP_DIR)/C/$(HELP_ID)/$$f $$helpdir$$f"; \ + $(LN_S) -f "$(HELP_DIR)/C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ + fi; \ + fi; \ + done; \ + done + +.PHONY: uninstall-help +uninstall-am: $(if $(HELP_ID),uninstall-help) +uninstall-help: + for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir`basename $$f`"; \ + rm -f "$$helpdir`basename $$f`"; \ + done; done + @for f in $(_HELP_C_EXTRA); do \ + lc=`dirname "$$f"`; lc=`basename "$$lc"`; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir`basename $$f`"; \ + rm -f "$$helpdir`basename $$f`"; \ + done + @for f in $(HELP_MEDIA); do \ + for lc in C $(_HELP_LINGUAS); do \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir$$f"; \ + rm -f "$$helpdir$$f"; \ + done; \ + done; +' + + + + +# Compile warnings. There can be deprecation warnings at any time, so disable +# -Werror by default with the [yes] argument. + + + + # C support is enabled by default. + + + # Only enable C++ support if AC_PROG_CXX is called. The redefinition of + # AC_PROG_CXX is so that a fatal error is emitted if this macro is called + # before AC_PROG_CXX, which would otherwise cause no C++ warnings to be + # checked. + + + + + # Default value for IS-RELEASE is $ax_is_release + ax_compiler_flags_is_release=yes + + # Check whether --enable-compile-warnings was given. +if test "${enable_compile_warnings+set}" = set; then : + enableval=$enable_compile_warnings; +else + if test "$ax_compiler_flags_is_release" = "yes"; then : + enable_compile_warnings="yes" +else + enable_compile_warnings="error" +fi +fi + + # Check whether --enable-Werror was given. +if test "${enable_Werror+set}" = set; then : + enableval=$enable_Werror; +else + enable_Werror=maybe +fi + + + # Return the user's chosen warning level + if test "$enable_Werror" = "no" -a \ + "$enable_compile_warnings" = "error"; then : + + enable_compile_warnings="yes" + +fi + + ax_enable_compile_warnings=$enable_compile_warnings + + + + + + + + + + + # Variable names + + + 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 + + + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + + #ifndef __cplusplus + #error "no C++" + #endif +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_compiler_cxx=yes; +else + ax_compiler_cxx=no; +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + # Always pass -Werror=unknown-warning-option to get Clang to fail on bad + # flags, otherwise they are always appended to the warn_cflags variable, and + # Clang warns on them for every compilation unit. + # If this is passed to GCC, it will explode, so the flag must be enabled + # conditionally. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 +$as_echo_n "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } +if ${ax_cv_check_cflags___Werror_unknown_warning_option+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS -Werror=unknown-warning-option" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_cv_check_cflags___Werror_unknown_warning_option=yes +else + ax_cv_check_cflags___Werror_unknown_warning_option=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 +$as_echo "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } +if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes; then : + + ax_compiler_flags_test="-Werror=unknown-warning-option" + +else + + ax_compiler_flags_test="" + +fi + + + # Check that -Wno-suggest-attribute=format is supported + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Wno-suggest-attribute=format" >&5 +$as_echo_n "checking whether C compiler accepts -Wno-suggest-attribute=format... " >&6; } +if ${ax_cv_check_cflags___Wno_suggest_attribute_format+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS -Wno-suggest-attribute=format" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_cv_check_cflags___Wno_suggest_attribute_format=yes +else + ax_cv_check_cflags___Wno_suggest_attribute_format=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Wno_suggest_attribute_format" >&5 +$as_echo "$ax_cv_check_cflags___Wno_suggest_attribute_format" >&6; } +if test "x$ax_cv_check_cflags___Wno_suggest_attribute_format" = xyes; then : + + ax_compiler_no_suggest_attribute_flags="-Wno-suggest-attribute=format" + +else + + ax_compiler_no_suggest_attribute_flags="" + +fi + + + # Base flags + + + + +for flag in -fno-strict-aliasing ; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + (: WARN_CFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + + if test "$ax_enable_compile_warnings" != "no"; then : + + # "yes" flags + + + + +for flag in -Wall -Wextra -Wundef -Wwrite-strings -Wpointer-arith -Wmissing-declarations -Wredundant-decls -Wno-unused-parameter -Wno-missing-field-initializers -Wformat=2 -Wcast-align -Wformat-nonliteral -Wformat-security -Wsign-compare -Wstrict-aliasing -Wshadow -Winline -Wpacked -Wmissing-format-attribute -Wmissing-noreturn -Winit-self -Wredundant-decls -Wmissing-include-dirs -Wunused-but-set-variable -Warray-bounds -Wreturn-type -Wswitch-enum -Wswitch-default -Wduplicated-cond -Wduplicated-branches -Wlogical-op -Wrestrict -Wnull-dereference -Wdouble-promotion ; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + (: WARN_CFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + if test "$ax_compiler_cxx" = "no" ; then + # C-only flags. Warn in C++ + + + + +for flag in -Wnested-externs -Wmissing-prototypes -Wstrict-prototypes -Wdeclaration-after-statement -Wimplicit-function-declaration -Wold-style-definition -Wjump-misses-init ; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + (: WARN_CFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + fi + +fi + if test "$ax_enable_compile_warnings" = "error"; then : + + # "error" flags; -Werror has to be appended unconditionally because + # it's not possible to test for + # + # suggest-attribute=format is disabled because it gives too many false + # positives + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" -Werror "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains -Werror"; } >&5 + (: WARN_CFLAGS already contains -Werror) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " -Werror" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=-Werror + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + + + + + + +for flag in $ax_compiler_no_suggest_attribute_flags ; do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + (: WARN_CFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +fi + + # In the flags below, when disabling specific flags, always add *both* + # -Wno-foo and -Wno-error=foo. This fixes the situation where (for example) + # we enable -Werror, disable a flag, and a build bot passes CFLAGS=-Wall, + # which effectively turns that flag back on again as an error. + for flag in $WARN_CFLAGS; do + case $flag in #( + -Wno-*=*) : + ;; #( + -Wno-*) : + + + + + +for flag in -Wno-error=$($as_echo $flag | $SED 's/^-Wno-//'); do + as_CACHEVAR=`$as_echo "ax_cv_check_cflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts $flag" >&5 +$as_echo_n "checking whether C compiler accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_CFLAGS+:} false; then : + + case " $WARN_CFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS already contains \$flag"; } >&5 + (: WARN_CFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_CFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_CFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_CFLAGS=\"\$WARN_CFLAGS\""; } >&5 + (: WARN_CFLAGS="$WARN_CFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + ;; #( + *) : + ;; +esac + done + + 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 + + + # Substitute the variables + + + + + + + + + + + + + + # Variable names + + + # Always pass -Werror=unknown-warning-option to get Clang to fail on bad + # flags, otherwise they are always appended to the warn_ldflags variable, + # and Clang warns on them for every compilation unit. + # If this is passed to GCC, it will explode, so the flag must be enabled + # conditionally. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether C compiler accepts -Werror=unknown-warning-option" >&5 +$as_echo_n "checking whether C compiler accepts -Werror=unknown-warning-option... " >&6; } +if ${ax_cv_check_cflags___Werror_unknown_warning_option+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$CFLAGS + CFLAGS="$CFLAGS -Werror=unknown-warning-option" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ax_cv_check_cflags___Werror_unknown_warning_option=yes +else + ax_cv_check_cflags___Werror_unknown_warning_option=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + CFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_cflags___Werror_unknown_warning_option" >&5 +$as_echo "$ax_cv_check_cflags___Werror_unknown_warning_option" >&6; } +if test "x$ax_cv_check_cflags___Werror_unknown_warning_option" = xyes; then : + + ax_compiler_flags_test="-Werror=unknown-warning-option" + +else + + ax_compiler_flags_test="" + +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--as-needed" >&5 +$as_echo_n "checking whether the linker accepts -Wl,--as-needed... " >&6; } +if ${ax_cv_check_ldflags___Wl___as_needed+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,--as-needed" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl___as_needed=yes +else + ax_cv_check_ldflags___Wl___as_needed=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___as_needed" >&5 +$as_echo "$ax_cv_check_ldflags___Wl___as_needed" >&6; } +if test "x$ax_cv_check_ldflags___Wl___as_needed" = xyes; then : + + + + + +for flag in -Wl,--as-needed; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${AM_LDFLAGS+:} false; then : + + case " $AM_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + (: AM_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append AM_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + AM_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +else + : +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,relro" >&5 +$as_echo_n "checking whether the linker accepts -Wl,-z,relro... " >&6; } +if ${ax_cv_check_ldflags___Wl__z_relro+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,-z,relro" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl__z_relro=yes +else + ax_cv_check_ldflags___Wl__z_relro=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_relro" >&5 +$as_echo "$ax_cv_check_ldflags___Wl__z_relro" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_relro" = xyes; then : + + + + + +for flag in -Wl,-z,relro; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${AM_LDFLAGS+:} false; then : + + case " $AM_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + (: AM_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append AM_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + AM_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +else + : +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,now" >&5 +$as_echo_n "checking whether the linker accepts -Wl,-z,now... " >&6; } +if ${ax_cv_check_ldflags___Wl__z_now+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,-z,now" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl__z_now=yes +else + ax_cv_check_ldflags___Wl__z_now=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_now" >&5 +$as_echo "$ax_cv_check_ldflags___Wl__z_now" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_now" = xyes; then : + + + + + +for flag in -Wl,-z,now; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${AM_LDFLAGS+:} false; then : + + case " $AM_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + (: AM_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append AM_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + AM_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +else + : +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-z,noexecstack" >&5 +$as_echo_n "checking whether the linker accepts -Wl,-z,noexecstack... " >&6; } +if ${ax_cv_check_ldflags___Wl__z_noexecstack+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,-z,noexecstack" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl__z_noexecstack=yes +else + ax_cv_check_ldflags___Wl__z_noexecstack=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__z_noexecstack" >&5 +$as_echo "$ax_cv_check_ldflags___Wl__z_noexecstack" >&6; } +if test "x$ax_cv_check_ldflags___Wl__z_noexecstack" = xyes; then : + + + + + +for flag in -Wl,-z,noexecstack; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${AM_LDFLAGS+:} false; then : + + case " $AM_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS already contains \$flag"; } >&5 + (: AM_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append AM_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + AM_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : AM_LDFLAGS=\"\$AM_LDFLAGS\""; } >&5 + (: AM_LDFLAGS="$AM_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +else + : +fi + + # textonly, retpolineplt not yet + + # macOS and cygwin linker do not have --as-needed + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--no-as-needed" >&5 +$as_echo_n "checking whether the linker accepts -Wl,--no-as-needed... " >&6; } +if ${ax_cv_check_ldflags___Wl___no_as_needed+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,--no-as-needed" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl___no_as_needed=yes +else + ax_cv_check_ldflags___Wl___no_as_needed=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___no_as_needed" >&5 +$as_echo "$ax_cv_check_ldflags___Wl___no_as_needed" >&6; } +if test "x$ax_cv_check_ldflags___Wl___no_as_needed" = xyes; then : + + ax_compiler_flags_as_needed_option="-Wl,--no-as-needed" + +else + + ax_compiler_flags_as_needed_option="" + +fi + + + # macOS linker speaks with a different accent + ax_compiler_flags_fatal_warnings_option="" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,--fatal-warnings" >&5 +$as_echo_n "checking whether the linker accepts -Wl,--fatal-warnings... " >&6; } +if ${ax_cv_check_ldflags___Wl___fatal_warnings+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,--fatal-warnings" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl___fatal_warnings=yes +else + ax_cv_check_ldflags___Wl___fatal_warnings=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl___fatal_warnings" >&5 +$as_echo "$ax_cv_check_ldflags___Wl___fatal_warnings" >&6; } +if test "x$ax_cv_check_ldflags___Wl___fatal_warnings" = xyes; then : + + ax_compiler_flags_fatal_warnings_option="-Wl,--fatal-warnings" + +else + : +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts -Wl,-fatal_warnings" >&5 +$as_echo_n "checking whether the linker accepts -Wl,-fatal_warnings... " >&6; } +if ${ax_cv_check_ldflags___Wl__fatal_warnings+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS -Wl,-fatal_warnings" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ax_cv_check_ldflags___Wl__fatal_warnings=yes +else + ax_cv_check_ldflags___Wl__fatal_warnings=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ax_cv_check_ldflags___Wl__fatal_warnings" >&5 +$as_echo "$ax_cv_check_ldflags___Wl__fatal_warnings" >&6; } +if test "x$ax_cv_check_ldflags___Wl__fatal_warnings" = xyes; then : + + ax_compiler_flags_fatal_warnings_option="-Wl,-fatal_warnings" + +else + : +fi + + + # Base flags + + + + +for flag in $ax_compiler_flags_as_needed_option ; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_LDFLAGS+:} false; then : + + case " $WARN_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + (: WARN_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + + if test "$ax_enable_compile_warnings" != "no"; then : + + # "yes" flags + + + + +for flag in ; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_LDFLAGS+:} false; then : + + case " $WARN_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + (: WARN_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +fi + if test "$ax_enable_compile_warnings" = "error"; then : + + # "error" flags; -Werror has to be appended unconditionally because + # it's not possible to test for + # + # suggest-attribute=format is disabled because it gives too many false + # positives + + + + +for flag in $ax_compiler_flags_fatal_warnings_option ; do + as_CACHEVAR=`$as_echo "ax_cv_check_ldflags_$ax_compiler_flags_test_$flag" | $as_tr_sh` +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the linker accepts $flag" >&5 +$as_echo_n "checking whether the linker accepts $flag... " >&6; } +if eval \${$as_CACHEVAR+:} false; then : + $as_echo_n "(cached) " >&6 +else + + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $ax_compiler_flags_test $flag" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +int +main () +{ + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$as_CACHEVAR=yes" +else + eval "$as_CACHEVAR=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LDFLAGS=$ax_check_save_flags +fi +eval ac_res=\$$as_CACHEVAR + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +if eval test \"x\$"$as_CACHEVAR"\" = x"yes"; then : + +if ${WARN_LDFLAGS+:} false; then : + + case " $WARN_LDFLAGS " in #( + *" $flag "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS already contains \$flag"; } >&5 + (: WARN_LDFLAGS already contains $flag) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_LDFLAGS " $flag" + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_LDFLAGS=$flag + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_LDFLAGS=\"\$WARN_LDFLAGS\""; } >&5 + (: WARN_LDFLAGS="$WARN_LDFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + +else + : +fi + +done + + +fi + + # Substitute the variables + + + + + + + # Variable names + + + # Base flags + +if ${WARN_SCANNERFLAGS+:} false; then : + + case " $WARN_SCANNERFLAGS " in #( + *" "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains "; } >&5 + (: WARN_SCANNERFLAGS already contains ) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_SCANNERFLAGS " " + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_SCANNERFLAGS= + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + + + if test "$ax_enable_compile_warnings" != "no"; then : + + # "yes" flags + +if ${WARN_SCANNERFLAGS+:} false; then : + + case " $WARN_SCANNERFLAGS " in #( + *" --warn-all "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-all "; } >&5 + (: WARN_SCANNERFLAGS already contains --warn-all ) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_SCANNERFLAGS " --warn-all " + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_SCANNERFLAGS= --warn-all + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + + +fi + if test "$ax_enable_compile_warnings" = "error"; then : + + # "error" flags + +if ${WARN_SCANNERFLAGS+:} false; then : + + case " $WARN_SCANNERFLAGS " in #( + *" --warn-error "*) : + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS already contains --warn-error "; } >&5 + (: WARN_SCANNERFLAGS already contains --warn-error ) 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } ;; #( + *) : + + as_fn_append WARN_SCANNERFLAGS " --warn-error " + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + ;; +esac + +else + + WARN_SCANNERFLAGS= --warn-error + { { $as_echo "$as_me:${as_lineno-$LINENO}: : WARN_SCANNERFLAGS=\"\$WARN_SCANNERFLAGS\""; } >&5 + (: WARN_SCANNERFLAGS="$WARN_SCANNERFLAGS") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } + +fi + + +fi + + # Substitute the variables + + + + +LIBM= +case $host in +*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _mwvalidcheckl in -lmw" >&5 +$as_echo_n "checking for _mwvalidcheckl in -lmw... " >&6; } +if ${ac_cv_lib_mw__mwvalidcheckl+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lmw $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char _mwvalidcheckl (); +int +main () +{ +return _mwvalidcheckl (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_mw__mwvalidcheckl=yes +else + ac_cv_lib_mw__mwvalidcheckl=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mw__mwvalidcheckl" >&5 +$as_echo "$ac_cv_lib_mw__mwvalidcheckl" >&6; } +if test "x$ac_cv_lib_mw__mwvalidcheckl" = xyes; then : + LIBM=-lmw +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 +$as_echo_n "checking for cos in -lm... " >&6; } +if ${ac_cv_lib_m_cos+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char cos (); +int +main () +{ +return cos (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_m_cos=yes +else + ac_cv_lib_m_cos=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 +$as_echo "$ac_cv_lib_m_cos" >&6; } +if test "x$ac_cv_lib_m_cos" = xyes; then : + LIBM="$LIBM -lm" +fi + + ;; +*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for cos in -lm" >&5 +$as_echo_n "checking for cos in -lm... " >&6; } +if ${ac_cv_lib_m_cos+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lm $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char cos (); +int +main () +{ +return cos (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + ac_cv_lib_m_cos=yes +else + ac_cv_lib_m_cos=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_m_cos" >&5 +$as_echo "$ac_cv_lib_m_cos" >&6; } +if test "x$ac_cv_lib_m_cos" = xyes; then : + LIBM=-lm +fi + + ;; +esac + + + + + + + + + + AX_PACKAGE_REQUIRES="$AX_PACKAGE_REQUIRES gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2" + AX_PACKAGE_REQUIRES_PRIVATE="$AX_PACKAGE_REQUIRES_PRIVATE gsettings-desktop-schemas" + + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for DEVHELP" >&5 +$as_echo_n "checking for DEVHELP... " >&6; } + +if test -n "$DEVHELP_CFLAGS"; then + pkg_cv_DEVHELP_CFLAGS="$DEVHELP_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_DEVHELP_CFLAGS=`$PKG_CONFIG --cflags "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$DEVHELP_LIBS"; then + pkg_cv_DEVHELP_LIBS="$DEVHELP_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas\""; } >&5 + ($PKG_CONFIG --exists --print-errors "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_DEVHELP_LIBS=`$PKG_CONFIG --libs "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + DEVHELP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas" 2>&1` + else + DEVHELP_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$DEVHELP_PKG_ERRORS" >&5 + + as_fn_error $? "Package requirements (gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2 gsettings-desktop-schemas) were not met: + +$DEVHELP_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +Alternatively, you may set the environment variables DEVHELP_CFLAGS +and DEVHELP_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details." "$LINENO" 5 +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 +$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} +as_fn_error $? "The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +Alternatively, you may set the environment variables DEVHELP_CFLAGS +and DEVHELP_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details. + +To get pkg-config, see . +See \`config.log' for more details" "$LINENO" 5; } +else + DEVHELP_CFLAGS=$pkg_cv_DEVHELP_CFLAGS + DEVHELP_LIBS=$pkg_cv_DEVHELP_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + + # Substitute output. + + + + +# i18n stuff + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether NLS is requested" >&5 +$as_echo_n "checking whether NLS is requested... " >&6; } + # Check whether --enable-nls was given. +if test "${enable_nls+set}" = set; then : + enableval=$enable_nls; USE_NLS=$enableval +else + USE_NLS=yes +fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + + + + + GETTEXT_MACRO_VERSION=0.19 + + + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_MSGFMT+:} false; then : + $as_echo_n "(cached) " >&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 + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --statistics /dev/null >&5 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGFMT" >&5 +$as_echo "$MSGFMT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + # Extract the first word of "gmsgfmt", so it can be a program name with args. +set dummy gmsgfmt; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GMSGFMT+:} false; then : + $as_echo_n "(cached) " >&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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GMSGFMT="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + test -z "$ac_cv_path_GMSGFMT" && ac_cv_path_GMSGFMT="$MSGFMT" + ;; +esac +fi +GMSGFMT=$ac_cv_path_GMSGFMT +if test -n "$GMSGFMT"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GMSGFMT" >&5 +$as_echo "$GMSGFMT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; + *) MSGFMT_015=$MSGFMT ;; + esac + + case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; + *) GMSGFMT_015=$GMSGFMT ;; + esac + + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_XGETTEXT+:} false; then : + $as_echo_n "(cached) " >&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 + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --omit-header --copyright-holder= --msgid-bugs-address= /dev/null >&5 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $XGETTEXT" >&5 +$as_echo "$XGETTEXT" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + rm -f messages.po + + case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; + *) XGETTEXT_015=$XGETTEXT ;; + esac + + + +# Prepare PATH_SEPARATOR. +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_MSGMERGE+:} false; then : + $as_echo_n "(cached) " >&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 + echo "$as_me: trying $ac_dir/$ac_word..." >&5 + if $ac_dir/$ac_word --update -q /dev/null /dev/null >&5 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MSGMERGE" >&5 +$as_echo "$MSGMERGE" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$localedir" || localedir='${datadir}/locale' + + + test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= + + + ac_config_commands="$ac_config_commands po-directories" + + + + 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 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 + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +fi + +ac_prog=ld +if test "$GCC" = yes; then + # Check if gcc -print-prog-name=ld gives a path. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5 +$as_echo_n "checking for ld used by $CC... " >&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. + [\\/]* | ?:[\\/]*) + re_direlt='/[^/][^/]*/\.\./' + # Canonicalize the pathname 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 + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5 +$as_echo_n "checking for GNU ld... " >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5 +$as_echo_n "checking for non-GNU ld... " >&6; } +fi +if ${acl_cv_path_LD+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -z "$LD"; then + acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$acl_save_ifs" + 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 variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$acl_cv_path_LD" -v 2>&1 &5 +$as_echo "$LD" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5 +$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; } +if ${acl_cv_prog_gnu_ld+:} false; then : + $as_echo_n "(cached) " >&6 +else + # I'd rather use --version here, but apparently some GNU lds only accept -v. +case `$LD -v 2>&1 &5 +$as_echo "$acl_cv_prog_gnu_ld" >&6; } +with_gnu_ld=$acl_cv_prog_gnu_ld + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shared library run path origin" >&5 +$as_echo_n "checking for shared library run path origin... " >&6; } +if ${acl_cv_rpath+:} false; then : + $as_echo_n "(cached) " >&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 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $acl_cv_rpath" >&5 +$as_echo "$acl_cv_rpath" >&6; } + wl="$acl_cv_wl" + acl_libext="$acl_cv_libext" + acl_shlibext="$acl_cv_shlibext" + acl_libname_spec="$acl_cv_libname_spec" + acl_library_names_spec="$acl_cv_library_names_spec" + acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + acl_hardcode_direct="$acl_cv_hardcode_direct" + acl_hardcode_minus_L="$acl_cv_hardcode_minus_L" + # Check whether --enable-rpath was given. +if test "${enable_rpath+set}" = set; then : + enableval=$enable_rpath; : +else + enable_rpath=yes +fi + + + + + acl_libdirstem=lib + acl_libdirstem2= + case "$host_os" in + solaris*) + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for 64-bit host" >&5 +$as_echo_n "checking for 64-bit host... " >&6; } +if ${gl_cv_solaris_64bit+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#ifdef _LP64 +sixtyfour bits +#endif + +_ACEOF +if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | + $EGREP "sixtyfour bits" >/dev/null 2>&1; then : + gl_cv_solaris_64bit=yes +else + gl_cv_solaris_64bit=no +fi +rm -f conftest* + + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gl_cv_solaris_64bit" >&5 +$as_echo "$gl_cv_solaris_64bit" >&6; } + if test $gl_cv_solaris_64bit = yes; then + acl_libdirstem=lib/64 + case "$host_cpu" in + sparc*) acl_libdirstem2=lib/sparcv9 ;; + i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; + esac + fi + ;; + *) + searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; + */../ | */.. ) + # Better ignore directories of this form. They are misleading. + ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib64 ) acl_libdirstem=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + fi + ;; + esac + test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" + + + + + + + + + + + + + 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 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/$acl_libdirstem" + if test "$acl_libdirstem2" != "$acl_libdirstem" \ + && ! test -d "$withval/$acl_libdirstem"; then + additional_libdir="$withval/$acl_libdirstem2" + fi + fi + fi + +fi + + LIBICONV= + LTLIBICONV= + INCICONV= + LIBICONV_PREFIX= + HAVE_LIBICONV= + 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= + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name + if test -n "$acl_shlibext"; then + shrext=".$acl_shlibext" # typically: shrext=.so + else + shrext= + fi + if test $use_additional = yes; then + dir="$additional_libdir" + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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 "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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/$acl_libdirstem" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem2"; 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 "$acl_hardcode_direct" = yes; then + LIBICONV="${LIBICONV}${LIBICONV:+ }$found_so" + else + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_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 "$acl_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 + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` + if test "$name" = 'iconv'; then + LIBICONV_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem2 | */$acl_libdirstem2/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` + if test "$name" = 'iconv'; then + LIBICONV_PREFIX="$basedir" + fi + 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* | gnu* | k*bsd*-gnu) 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/$acl_libdirstem" \ + && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) 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 "$acl_hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_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=\"$acl_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 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFPreferencesCopyAppValue" >&5 +$as_echo_n "checking for CFPreferencesCopyAppValue... " >&6; } +if ${gt_cv_func_CFPreferencesCopyAppValue+:} false; then : + $as_echo_n "(cached) " >&6 +else + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +CFPreferencesCopyAppValue(NULL, NULL) + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gt_cv_func_CFPreferencesCopyAppValue=yes +else + gt_cv_func_CFPreferencesCopyAppValue=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$gt_save_LIBS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFPreferencesCopyAppValue" >&5 +$as_echo "$gt_cv_func_CFPreferencesCopyAppValue" >&6; } + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + +$as_echo "#define HAVE_CFPREFERENCESCOPYAPPVALUE 1" >>confdefs.h + + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for CFLocaleCopyCurrent" >&5 +$as_echo_n "checking for CFLocaleCopyCurrent... " >&6; } +if ${gt_cv_func_CFLocaleCopyCurrent+:} false; then : + $as_echo_n "(cached) " >&6 +else + gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +int +main () +{ +CFLocaleCopyCurrent(); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + gt_cv_func_CFLocaleCopyCurrent=yes +else + gt_cv_func_CFLocaleCopyCurrent=no +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$gt_save_LIBS" +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_cv_func_CFLocaleCopyCurrent" >&5 +$as_echo "$gt_cv_func_CFLocaleCopyCurrent" >&6; } + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + +$as_echo "#define HAVE_CFLOCALECOPYCURRENT 1" >>confdefs.h + + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi + + + + + + + LIBINTL= + LTLIBINTL= + POSUB= + + case " $gt_needs " in + *" need-formatstring-macros "*) gt_api_version=3 ;; + *" need-ngettext "*) gt_api_version=2 ;; + *) gt_api_version=1 ;; + esac + gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" + gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" + + if test "$USE_NLS" = "yes"; then + gt_use_preinstalled_gnugettext=no + + + if test $gt_api_version -ge 3; then + gt_revision_test_code=' +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +#define __GNU_GETTEXT_SUPPORTED_REVISION(major) ((major) == 0 ? 0 : -1) +#endif +typedef int array [2 * (__GNU_GETTEXT_SUPPORTED_REVISION(0) >= 1) - 1]; +' + else + gt_revision_test_code= + fi + if test $gt_api_version -ge 2; then + gt_expression_test_code=' + * ngettext ("", "", 0)' + else + gt_expression_test_code= + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libc" >&5 +$as_echo_n "checking for GNU gettext in libc... " >&6; } +if eval \${$gt_func_gnugettext_libc+:} false; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern int *_nl_domain_bindings; +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + +int +main () +{ + +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$gt_func_gnugettext_libc=yes" +else + eval "$gt_func_gnugettext_libc=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$gt_func_gnugettext_libc + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "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 + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for iconv" >&5 +$as_echo_n "checking for iconv... " >&6; } +if ${am_cv_func_iconv+:} false; then : + $as_echo_n "(cached) " >&6 +else + + am_cv_func_iconv="no, consider installing GNU libiconv" + am_cv_lib_iconv=no + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include + +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + am_cv_func_iconv=yes +fi +rm -f core 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 confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include + +int +main () +{ +iconv_t cd = iconv_open("",""); + iconv(cd,NULL,NULL,NULL,NULL); + iconv_close(cd); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + am_cv_lib_iconv=yes + am_cv_func_iconv=yes +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + LIBS="$am_save_LIBS" + fi + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv" >&5 +$as_echo "$am_cv_func_iconv" >&6; } + if test "$am_cv_func_iconv" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for working iconv" >&5 +$as_echo_n "checking for working iconv... " >&6; } +if ${am_cv_func_iconv_works+:} false; then : + $as_echo_n "(cached) " >&6 +else + + am_save_LIBS="$LIBS" + if test $am_cv_lib_iconv = yes; then + LIBS="$LIBS $LIBICONV" + fi + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + if test "$cross_compiling" = yes; then : + case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#include + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + +int +main () +{ +int result = 0; + /* Test against AIX 5.1 bug: Failures are not distinguishable from successful + returns. */ + { + iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); + if (cd_utf8_to_88591 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ + char buf[10]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_utf8_to_88591, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res == 0) + result |= 1; + iconv_close (cd_utf8_to_88591); + } + } + /* Test against Solaris 10 bug: Failures are not distinguishable from + successful returns. */ + { + iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); + if (cd_ascii_to_88591 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\263"; + char buf[10]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_ascii_to_88591, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res == 0) + result |= 2; + iconv_close (cd_ascii_to_88591); + } + } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + ICONV_CONST char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + result |= 4; + iconv_close (cd_88591_to_utf8); + } + } +#if 0 /* This bug could be worked around by the caller. */ + /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + char buf[50]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_88591_to_utf8, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if ((int)res > 0) + result |= 8; + iconv_close (cd_88591_to_utf8); + } + } +#endif + /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is + provided. */ + if (/* Try standardized names. */ + iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) + /* Try IRIX, OSF/1 names. */ + && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) + /* Try AIX names. */ + && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) + /* Try HP-UX names. */ + && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) + result |= 16; + return result; + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_run "$LINENO"; then : + am_cv_func_iconv_works=yes +fi +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext +fi + + test "$am_cv_func_iconv_works" = no || break + done + LIBS="$am_save_LIBS" + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_func_iconv_works" >&5 +$as_echo "$am_cv_func_iconv_works" >&6; } + case "$am_cv_func_iconv_works" in + *no) am_func_iconv=no am_cv_lib_iconv=no ;; + *) am_func_iconv=yes ;; + esac + else + am_func_iconv=no am_cv_lib_iconv=no + fi + if test "$am_func_iconv" = yes; then + +$as_echo "#define HAVE_ICONV 1" >>confdefs.h + + fi + if test "$am_cv_lib_iconv" = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libiconv" >&5 +$as_echo_n "checking how to link with libiconv... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBICONV" >&5 +$as_echo "$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 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/$acl_libdirstem" + if test "$acl_libdirstem2" != "$acl_libdirstem" \ + && ! test -d "$withval/$acl_libdirstem"; then + additional_libdir="$withval/$acl_libdirstem2" + fi + fi + fi + +fi + + LIBINTL= + LTLIBINTL= + INCINTL= + LIBINTL_PREFIX= + HAVE_LIBINTL= + 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= + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name + if test -n "$acl_shlibext"; then + shrext=".$acl_shlibext" # typically: shrext=.so + else + shrext= + fi + if test $use_additional = yes; then + dir="$additional_libdir" + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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 "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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/$acl_libdirstem" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem2"; 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 "$acl_hardcode_direct" = yes; then + LIBINTL="${LIBINTL}${LIBINTL:+ }$found_so" + else + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_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 "$acl_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 + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` + if test "$name" = 'intl'; then + LIBINTL_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem2 | */$acl_libdirstem2/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` + if test "$name" = 'intl'; then + LIBINTL_PREFIX="$basedir" + fi + 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* | gnu* | k*bsd*-gnu) 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/$acl_libdirstem" \ + && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) 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 "$acl_hardcode_libdir_separator"; then + alldirs= + for found_dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$found_dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_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=\"$acl_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 + + + + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU gettext in libintl" >&5 +$as_echo_n "checking for GNU gettext in libintl... " >&6; } +if eval \${$gt_func_gnugettext_libintl+:} false; then : + $as_echo_n "(cached) " >&6 +else + gt_save_CPPFLAGS="$CPPFLAGS" + CPPFLAGS="$CPPFLAGS $INCINTL" + gt_save_LIBS="$LIBS" + LIBS="$LIBS $LIBINTL" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + +int +main () +{ + +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$gt_func_gnugettext_libintl=yes" +else + eval "$gt_func_gnugettext_libintl=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then + LIBS="$LIBS $LIBICONV" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + +int +main () +{ + +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + eval "$gt_func_gnugettext_libintl=yes" + +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext + fi + CPPFLAGS="$gt_save_CPPFLAGS" + LIBS="$gt_save_LIBS" +fi +eval ac_res=\$$gt_func_gnugettext_libintl + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + fi + + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; } \ + && test "$PACKAGE" != gettext-runtime \ + && test "$PACKAGE" != gettext-tools; }; then + gt_use_preinstalled_gnugettext=yes + else + LIBINTL= + LTLIBINTL= + INCINTL= + fi + + + + if test -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + fi + + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + +$as_echo "#define ENABLE_NLS 1" >>confdefs.h + + else + USE_NLS=no + fi + fi + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use NLS" >&5 +$as_echo_n "checking whether to use NLS... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_NLS" >&5 +$as_echo "$USE_NLS" >&6; } + if test "$USE_NLS" = "yes"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking where the gettext function comes from" >&5 +$as_echo_n "checking where the gettext function comes from... " >&6; } + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then + gt_source="external libintl" + else + gt_source="libc" + fi + else + gt_source="included intl directory" + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gt_source" >&5 +$as_echo "$gt_source" >&6; } + fi + + if test "$USE_NLS" = "yes"; then + + if test "$gt_use_preinstalled_gnugettext" = "yes"; then + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "yes"; }; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to link with libintl" >&5 +$as_echo_n "checking how to link with libintl... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIBINTL" >&5 +$as_echo "$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 + + +$as_echo "#define HAVE_GETTEXT 1" >>confdefs.h + + +$as_echo "#define HAVE_DCGETTEXT 1" >>confdefs.h + + fi + + POSUB=po + fi + + + + INTLLIBS="$LIBINTL" + + + + + + + + +GETTEXT_PACKAGE=devhelp + + +cat >>confdefs.h <<_ACEOF +#define GETTEXT_PACKAGE "$GETTEXT_PACKAGE" +_ACEOF + + + + + + + + + if test -n "$PYTHON"; then + # If the user set $PYTHON, use it and don't search something else. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $PYTHON version is >= 2.3" >&5 +$as_echo_n "checking whether $PYTHON version is >= 2.3... " >&6; } + prog="import sys +# split strings by '.' and convert to numeric. Append some zeros +# because we need at least 4 digits for the hex conversion. +# map returns an iterator in Python 3.0 and a list in 2.x +minver = list(map(int, '2.3'.split('.'))) + [0, 0, 0] +minverhex = 0 +# xrange is not present in Python 3.0 and range returns an iterator +for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] +sys.exit(sys.hexversion < minverhex)" + if { echo "$as_me:$LINENO: $PYTHON -c "$prog"" >&5 + ($PYTHON -c "$prog") >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + as_fn_error $? "Python interpreter is too old" "$LINENO" 5 +fi + am_display_PYTHON=$PYTHON + else + # Otherwise, try each interpreter until we find one that satisfies + # VERSION. + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for a Python interpreter with version >= 2.3" >&5 +$as_echo_n "checking for a Python interpreter with version >= 2.3... " >&6; } +if ${am_cv_pathless_PYTHON+:} false; then : + $as_echo_n "(cached) " >&6 +else + + for am_cv_pathless_PYTHON in python python2 python3 python3.5 python3.4 python3.3 python3.2 python3.1 python3.0 python2.7 python2.6 python2.5 python2.4 python2.3 python2.2 python2.1 python2.0 none; do + test "$am_cv_pathless_PYTHON" = none && break + prog="import sys +# split strings by '.' and convert to numeric. Append some zeros +# because we need at least 4 digits for the hex conversion. +# map returns an iterator in Python 3.0 and a list in 2.x +minver = list(map(int, '2.3'.split('.'))) + [0, 0, 0] +minverhex = 0 +# xrange is not present in Python 3.0 and range returns an iterator +for i in list(range(0, 4)): minverhex = (minverhex << 8) + minver[i] +sys.exit(sys.hexversion < minverhex)" + if { echo "$as_me:$LINENO: $am_cv_pathless_PYTHON -c "$prog"" >&5 + ($am_cv_pathless_PYTHON -c "$prog") >&5 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); }; then : + break +fi + done +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_pathless_PYTHON" >&5 +$as_echo "$am_cv_pathless_PYTHON" >&6; } + # Set $PYTHON to the absolute path of $am_cv_pathless_PYTHON. + if test "$am_cv_pathless_PYTHON" = none; then + PYTHON=: + else + # Extract the first word of "$am_cv_pathless_PYTHON", so it can be a program name with args. +set dummy $am_cv_pathless_PYTHON; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_PYTHON+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $PYTHON in + [\\/]* | ?:[\\/]*) + ac_cv_path_PYTHON="$PYTHON" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_PYTHON="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +PYTHON=$ac_cv_path_PYTHON +if test -n "$PYTHON"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PYTHON" >&5 +$as_echo "$PYTHON" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + fi + am_display_PYTHON=$am_cv_pathless_PYTHON + fi + + + if test "$PYTHON" = :; then + no + else + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON version" >&5 +$as_echo_n "checking for $am_display_PYTHON version... " >&6; } +if ${am_cv_python_version+:} false; then : + $as_echo_n "(cached) " >&6 +else + am_cv_python_version=`$PYTHON -c "import sys; sys.stdout.write(sys.version[:3])"` +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_version" >&5 +$as_echo "$am_cv_python_version" >&6; } + PYTHON_VERSION=$am_cv_python_version + + + + PYTHON_PREFIX='${prefix}' + + PYTHON_EXEC_PREFIX='${exec_prefix}' + + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON platform" >&5 +$as_echo_n "checking for $am_display_PYTHON platform... " >&6; } +if ${am_cv_python_platform+:} false; then : + $as_echo_n "(cached) " >&6 +else + am_cv_python_platform=`$PYTHON -c "import sys; sys.stdout.write(sys.platform)"` +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_platform" >&5 +$as_echo "$am_cv_python_platform" >&6; } + PYTHON_PLATFORM=$am_cv_python_platform + + + # Just factor out some code duplication. + am_python_setup_sysconfig="\ +import sys +# Prefer sysconfig over distutils.sysconfig, for better compatibility +# with python 3.x. See automake bug#10227. +try: + import sysconfig +except ImportError: + can_use_sysconfig = 0 +else: + can_use_sysconfig = 1 +# Can't use sysconfig in CPython 2.7, since it's broken in virtualenvs: +# +try: + from platform import python_implementation + if python_implementation() == 'CPython' and sys.version[:3] == '2.7': + can_use_sysconfig = 0 +except ImportError: + pass" + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON script directory" >&5 +$as_echo_n "checking for $am_display_PYTHON script directory... " >&6; } +if ${am_cv_python_pythondir+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$prefix" = xNONE + then + am_py_prefix=$ac_default_prefix + else + am_py_prefix=$prefix + fi + am_cv_python_pythondir=`$PYTHON -c " +$am_python_setup_sysconfig +if can_use_sysconfig: + sitedir = sysconfig.get_path('purelib', vars={'base':'$am_py_prefix'}) +else: + from distutils import sysconfig + sitedir = sysconfig.get_python_lib(0, 0, prefix='$am_py_prefix') +sys.stdout.write(sitedir)"` + case $am_cv_python_pythondir in + $am_py_prefix*) + am__strip_prefix=`echo "$am_py_prefix" | sed 's|.|.|g'` + am_cv_python_pythondir=`echo "$am_cv_python_pythondir" | sed "s,^$am__strip_prefix,$PYTHON_PREFIX,"` + ;; + *) + case $am_py_prefix in + /usr|/System*) ;; + *) + am_cv_python_pythondir=$PYTHON_PREFIX/lib/python$PYTHON_VERSION/site-packages + ;; + esac + ;; + esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pythondir" >&5 +$as_echo "$am_cv_python_pythondir" >&6; } + pythondir=$am_cv_python_pythondir + + + + pkgpythondir=\${pythondir}/$PACKAGE + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $am_display_PYTHON extension module directory" >&5 +$as_echo_n "checking for $am_display_PYTHON extension module directory... " >&6; } +if ${am_cv_python_pyexecdir+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test "x$exec_prefix" = xNONE + then + am_py_exec_prefix=$am_py_prefix + else + am_py_exec_prefix=$exec_prefix + fi + am_cv_python_pyexecdir=`$PYTHON -c " +$am_python_setup_sysconfig +if can_use_sysconfig: + sitedir = sysconfig.get_path('platlib', vars={'platbase':'$am_py_prefix'}) +else: + from distutils import sysconfig + sitedir = sysconfig.get_python_lib(1, 0, prefix='$am_py_prefix') +sys.stdout.write(sitedir)"` + case $am_cv_python_pyexecdir in + $am_py_exec_prefix*) + am__strip_prefix=`echo "$am_py_exec_prefix" | sed 's|.|.|g'` + am_cv_python_pyexecdir=`echo "$am_cv_python_pyexecdir" | sed "s,^$am__strip_prefix,$PYTHON_EXEC_PREFIX,"` + ;; + *) + case $am_py_exec_prefix in + /usr|/System*) ;; + *) + am_cv_python_pyexecdir=$PYTHON_EXEC_PREFIX/lib/python$PYTHON_VERSION/site-packages + ;; + esac + ;; + esac + +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_python_pyexecdir" >&5 +$as_echo "$am_cv_python_pyexecdir" >&6; } + pyexecdir=$am_cv_python_pyexecdir + + + + pkgpyexecdir=\${pyexecdir}/$PACKAGE + + + + fi + + + +# Flatpak +# Check whether --enable-flatpak-build was given. +if test "${enable_flatpak_build+set}" = set; then : + enableval=$enable_flatpak_build; flatpak_build=${enableval} +else + flatpak_build=no +fi + + +if test "x${flatpak_build}" = xyes; then + +$as_echo "#define FLATPAK_BUILD 1" >>confdefs.h + +fi + +# GTK-Doc + + + + + + gtk_doc_requires="gtk-doc >= 1.25" + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gtk-doc" >&5 +$as_echo_n "checking for gtk-doc... " >&6; } + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"\$gtk_doc_requires\""; } >&5 + ($PKG_CONFIG --exists --print-errors "$gtk_doc_requires") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + have_gtk_doc=yes +else + have_gtk_doc=no +fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $have_gtk_doc" >&5 +$as_echo "$have_gtk_doc" >&6; } + + if test "$have_gtk_doc" = "no"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: + You will not be able to create source packages with 'make dist' + because $gtk_doc_requires is not found." >&5 +$as_echo "$as_me: WARNING: + You will not be able to create source packages with 'make dist' + because $gtk_doc_requires is not found." >&2;} + fi + + # Extract the first word of "gtkdoc-check", so it can be a program name with args. +set dummy gtkdoc-check; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_prog_GTKDOC_CHECK+:} false; then : + $as_echo_n "(cached) " >&6 +else + if test -n "$GTKDOC_CHECK"; then + ac_cv_prog_GTKDOC_CHECK="$GTKDOC_CHECK" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_prog_GTKDOC_CHECK="gtkdoc-check.test" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + +fi +fi +GTKDOC_CHECK=$ac_cv_prog_GTKDOC_CHECK +if test -n "$GTKDOC_CHECK"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK" >&5 +$as_echo "$GTKDOC_CHECK" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + # Extract the first word of "gtkdoc-check", so it can be a program name with args. +set dummy gtkdoc-check; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GTKDOC_CHECK_PATH+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GTKDOC_CHECK_PATH in + [\\/]* | ?:[\\/]*) + ac_cv_path_GTKDOC_CHECK_PATH="$GTKDOC_CHECK_PATH" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_CHECK_PATH="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GTKDOC_CHECK_PATH=$ac_cv_path_GTKDOC_CHECK_PATH +if test -n "$GTKDOC_CHECK_PATH"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_CHECK_PATH" >&5 +$as_echo "$GTKDOC_CHECK_PATH" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + for ac_prog in gtkdoc-rebase +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GTKDOC_REBASE+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GTKDOC_REBASE in + [\\/]* | ?:[\\/]*) + ac_cv_path_GTKDOC_REBASE="$GTKDOC_REBASE" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_REBASE="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GTKDOC_REBASE=$ac_cv_path_GTKDOC_REBASE +if test -n "$GTKDOC_REBASE"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_REBASE" >&5 +$as_echo "$GTKDOC_REBASE" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$GTKDOC_REBASE" && break +done +test -n "$GTKDOC_REBASE" || GTKDOC_REBASE="true" + + # Extract the first word of "gtkdoc-mkpdf", so it can be a program name with args. +set dummy gtkdoc-mkpdf; ac_word=$2 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if ${ac_cv_path_GTKDOC_MKPDF+:} false; then : + $as_echo_n "(cached) " >&6 +else + case $GTKDOC_MKPDF in + [\\/]* | ?:[\\/]*) + ac_cv_path_GTKDOC_MKPDF="$GTKDOC_MKPDF" # 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_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then + ac_cv_path_GTKDOC_MKPDF="$as_dir/$ac_word$ac_exec_ext" + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done + done +IFS=$as_save_IFS + + ;; +esac +fi +GTKDOC_MKPDF=$ac_cv_path_GTKDOC_MKPDF +if test -n "$GTKDOC_MKPDF"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GTKDOC_MKPDF" >&5 +$as_echo "$GTKDOC_MKPDF" >&6; } +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi + + + + +# Check whether --with-html-dir was given. +if test "${with_html_dir+set}" = set; then : + withval=$with_html_dir; +else + with_html_dir='${datadir}/gtk-doc/html' +fi + + HTML_DIR="$with_html_dir" + + + # Check whether --enable-gtk-doc was given. +if test "${enable_gtk_doc+set}" = set; then : + enableval=$enable_gtk_doc; +else + enable_gtk_doc=no +fi + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build gtk-doc documentation" >&5 +$as_echo_n "checking whether to build gtk-doc documentation... " >&6; } + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_gtk_doc" >&5 +$as_echo "$enable_gtk_doc" >&6; } + + if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then + as_fn_error $? " + You must have $gtk_doc_requires installed to build documentation for + $PACKAGE_NAME. Please install gtk-doc or disable building the + documentation by adding '--disable-gtk-doc' to '$0'." "$LINENO" 5 + fi + + if test "x$PACKAGE_NAME" != "xglib"; then + +pkg_failed=no +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GTKDOC_DEPS" >&5 +$as_echo_n "checking for GTKDOC_DEPS... " >&6; } + +if test -n "$GTKDOC_DEPS_CFLAGS"; then + pkg_cv_GTKDOC_DEPS_CFLAGS="$GTKDOC_DEPS_CFLAGS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_GTKDOC_DEPS_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +if test -n "$GTKDOC_DEPS_LIBS"; then + pkg_cv_GTKDOC_DEPS_LIBS="$GTKDOC_DEPS_LIBS" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_GTKDOC_DEPS_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi + + + +if test $pkg_failed = yes; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi + if test $_pkg_short_errors_supported = yes; then + GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` + else + GTKDOC_DEPS_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$GTKDOC_DEPS_PKG_ERRORS" >&5 + + : +elif test $pkg_failed = untried; then + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } + : +else + GTKDOC_DEPS_CFLAGS=$pkg_cv_GTKDOC_DEPS_CFLAGS + GTKDOC_DEPS_LIBS=$pkg_cv_GTKDOC_DEPS_LIBS + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + +fi + fi + + # Check whether --enable-gtk-doc-html was given. +if test "${enable_gtk_doc_html+set}" = set; then : + enableval=$enable_gtk_doc_html; +else + enable_gtk_doc_html=yes +fi + + # Check whether --enable-gtk-doc-pdf was given. +if test "${enable_gtk_doc_pdf+set}" = set; then : + enableval=$enable_gtk_doc_pdf; +else + enable_gtk_doc_pdf=no +fi + + + if test -z "$GTKDOC_MKPDF"; then + enable_gtk_doc_pdf=no + fi + + if test -z "$AM_DEFAULT_VERBOSITY"; then + AM_DEFAULT_VERBOSITY=1 + fi + + + if test x$have_gtk_doc = xyes; then + HAVE_GTK_DOC_TRUE= + HAVE_GTK_DOC_FALSE='#' +else + HAVE_GTK_DOC_TRUE='#' + HAVE_GTK_DOC_FALSE= +fi + + if test x$enable_gtk_doc = xyes; then + ENABLE_GTK_DOC_TRUE= + ENABLE_GTK_DOC_FALSE='#' +else + ENABLE_GTK_DOC_TRUE='#' + ENABLE_GTK_DOC_FALSE= +fi + + if test x$enable_gtk_doc_html = xyes; then + GTK_DOC_BUILD_HTML_TRUE= + GTK_DOC_BUILD_HTML_FALSE='#' +else + GTK_DOC_BUILD_HTML_TRUE='#' + GTK_DOC_BUILD_HTML_FALSE= +fi + + if test x$enable_gtk_doc_pdf = xyes; then + GTK_DOC_BUILD_PDF_TRUE= + GTK_DOC_BUILD_PDF_FALSE='#' +else + GTK_DOC_BUILD_PDF_TRUE='#' + GTK_DOC_BUILD_PDF_FALSE= +fi + + if test -n "$LIBTOOL"; then + GTK_DOC_USE_LIBTOOL_TRUE= + GTK_DOC_USE_LIBTOOL_FALSE='#' +else + GTK_DOC_USE_LIBTOOL_TRUE='#' + GTK_DOC_USE_LIBTOOL_FALSE= +fi + + if test -n "$GTKDOC_REBASE"; then + GTK_DOC_USE_REBASE_TRUE= + GTK_DOC_USE_REBASE_FALSE='#' +else + GTK_DOC_USE_REBASE_TRUE='#' + GTK_DOC_USE_REBASE_FALSE= +fi + + + + + + +if test -n "$WEBKITGTK_PREFIX"; then + pkg_cv_WEBKITGTK_PREFIX="$WEBKITGTK_PREFIX" + elif test -n "$PKG_CONFIG"; then + if test -n "$PKG_CONFIG" && \ + { { $as_echo "$as_me:${as_lineno-$LINENO}: \$PKG_CONFIG --exists --print-errors \"webkit2gtk-4.0\""; } >&5 + ($PKG_CONFIG --exists --print-errors "webkit2gtk-4.0") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then + pkg_cv_WEBKITGTK_PREFIX=`$PKG_CONFIG --variable="prefix" "webkit2gtk-4.0" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes +else + pkg_failed=yes +fi + else + pkg_failed=untried +fi +WEBKITGTK_PREFIX=$pkg_cv_WEBKITGTK_PREFIX + +if test "x$WEBKITGTK_PREFIX" = x""; then : + +fi + +ac_config_files="$ac_config_files Makefile data/libdevhelp-3.0.pc data/Makefile data/org.gnome.Devhelp.desktop.in data/icons/Makefile docs/Makefile docs/reference/Makefile help/Makefile plugins/Makefile plugins/gedit-plugin/Makefile po/Makefile.in src/Makefile unit-tests/Makefile" + + +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, we kill variables containing newlines. +# 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. +( + for ac_var in `(set) 2>&1 | sed -n 's/^\([a-zA-Z_][a-zA-Z0-9_]*\)=.*/\1/p'`; do + eval ac_val=\$$ac_var + case $ac_val in #( + *${as_nl}*) + case $ac_var in #( + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 +$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; + esac + case $ac_var in #( + _ | IFS | as_nl) ;; #( + BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( + *) { eval $ac_var=; unset $ac_var;} ;; + esac ;; + esac + done + + (set) 2>&1 | + case $as_nl`(ac_space=' '; set) 2>&1` in #( + *${as_nl}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 "/^[_$as_cr_alnum]*_cv_[_$as_cr_alnum]*=/p" + ;; + esac | + sort +) | + sed ' + /^ac_cv_env_/b end + t clear + :clear + s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/ + t end + s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/ + :end' >>confcache +if diff "$cache_file" confcache >/dev/null 2>&1; then :; else + if test -w "$cache_file"; then + if test "x$cache_file" != "x/dev/null"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 +$as_echo "$as_me: updating cache $cache_file" >&6;} + if test ! -f "$cache_file" || test -h "$cache_file"; then + cat confcache >"$cache_file" + else + case $cache_file in #( + */* | ?:*) + mv -f confcache "$cache_file"$$ && + mv -f "$cache_file"$$ "$cache_file" ;; #( + *) + mv -f confcache "$cache_file" ;; + esac + fi + fi + else + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 +$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} + 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}' + +DEFS=-DHAVE_CONFIG_H + +ac_libobjs= +ac_ltlibobjs= +U= +for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue + # 1. Remove the extension, and $U if already installed. + ac_script='s/\$U\././;s/\.o$//;s/\.obj$//' + ac_i=`$as_echo "$ac_i" | sed "$ac_script"` + # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR + # will be set to the directory where LIBOBJS objects are built. + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' +done +LIBOBJS=$ac_libobjs + +LTLIBOBJS=$ac_ltlibobjs + + +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5 +$as_echo_n "checking that generated files are newer than configure... " >&6; } + if test -n "$am_sleep_pid"; then + # Hide warnings about reused PIDs. + wait $am_sleep_pid 2>/dev/null + fi + { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5 +$as_echo "done" >&6; } + if test -n "$EXEEXT"; then + am__EXEEXT_TRUE= + am__EXEEXT_FALSE='#' +else + am__EXEEXT_TRUE='#' + am__EXEEXT_FALSE= +fi + +if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then + as_fn_error $? "conditional \"AMDEP\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then + as_fn_error $? "conditional \"am__fastdepCC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_INTROSPECTION_TRUE}" && test -z "${HAVE_INTROSPECTION_FALSE}"; then + as_fn_error $? "conditional \"HAVE_INTROSPECTION\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${HAVE_GTK_DOC_TRUE}" && test -z "${HAVE_GTK_DOC_FALSE}"; then + as_fn_error $? "conditional \"HAVE_GTK_DOC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${ENABLE_GTK_DOC_TRUE}" && test -z "${ENABLE_GTK_DOC_FALSE}"; then + as_fn_error $? "conditional \"ENABLE_GTK_DOC\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${GTK_DOC_BUILD_HTML_TRUE}" && test -z "${GTK_DOC_BUILD_HTML_FALSE}"; then + as_fn_error $? "conditional \"GTK_DOC_BUILD_HTML\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${GTK_DOC_BUILD_PDF_TRUE}" && test -z "${GTK_DOC_BUILD_PDF_FALSE}"; then + as_fn_error $? "conditional \"GTK_DOC_BUILD_PDF\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${GTK_DOC_USE_LIBTOOL_TRUE}" && test -z "${GTK_DOC_USE_LIBTOOL_FALSE}"; then + as_fn_error $? "conditional \"GTK_DOC_USE_LIBTOOL\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi +if test -z "${GTK_DOC_USE_REBASE_TRUE}" && test -z "${GTK_DOC_USE_REBASE_FALSE}"; then + as_fn_error $? "conditional \"GTK_DOC_USE_REBASE\" was never defined. +Usually this means the macro was only invoked conditionally." "$LINENO" 5 +fi + +: "${CONFIG_STATUS=./config.status}" +ac_write_fail=0 +ac_clean_files_save=$ac_clean_files +ac_clean_files="$ac_clean_files $CONFIG_STATUS" +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 +$as_echo "$as_me: creating $CONFIG_STATUS" >&6;} +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 +#! $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} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## + +# Be more Bourne compatible +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac +fi + + +as_nl=' +' +export as_nl +# Printing a long string crashes Solaris 7 /usr/bin/printf. +as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo +as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='printf %s\n' + as_echo_n='printf %s' +else + if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then + as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"' + as_echo_n='/usr/ucb/echo -n' + else + as_echo_body='eval expr "X$1" : "X\\(.*\\)"' + as_echo_n_body='eval + arg=$1; + case $arg in #( + *"$as_nl"*) + expr "X$arg" : "X\\(.*\\)$as_nl"; + arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; + esac; + expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl" + ' + export as_echo_n_body + as_echo_n='sh -c $as_echo_n_body as_echo' + fi + export as_echo_body + as_echo='sh -c $as_echo_body as_echo' +fi + +# The user is always right. +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + +# IFS +# We need space, tab and new line, in precisely that order. Quoting is +# there to prevent editors from complaining about space-tab. +# (If _AS_PATH_WALK were called with IFS unset, it would disable word +# splitting by setting IFS to empty value.) +IFS=" "" $as_nl" + +# Find who we are. Look in the path if we contain no directory separator. +as_myself= +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 +IFS=$as_save_IFS + + ;; +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 + $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 + exit 1 +fi + +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : +done +PS1='$ ' +PS2='> ' +PS4='+ ' + +# NLS nuisances. +LC_ALL=C +export LC_ALL +LANGUAGE=C +export LANGUAGE + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error STATUS ERROR [LINENO LOG_FD] +# ---------------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with STATUS, using 1 if that was 0. +as_fn_error () +{ + as_status=$1; test $as_status -eq 0 && as_status=1 + if test "$4"; then + as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4 + fi + $as_echo "$as_me: error: $2" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; 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 + +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi + +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + +# 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 + +ECHO_C= ECHO_N= ECHO_T= +case `echo -n x` in #((((( +-n*) + case `echo 'xy\c'` in + *c*) ECHO_T=' ';; # ECHO_T is single tab character. + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; + esac;; +*) + ECHO_N='-n';; +esac + +rm -f conf$$ conf$$.exe conf$$.file +if test -d conf$$.dir; then + rm -f conf$$.dir/conf$$.file +else + rm -f conf$$.dir + mkdir conf$$.dir 2>/dev/null +fi +if (echo >conf$$.file) 2>/dev/null; then + if ln -s conf$$.file conf$$ 2>/dev/null; then + as_ln_s='ln -s' + # ... but there are two gotchas: + # 1) On MSYS, both `ln -s file dir' and `ln file dir' fail. + # 2) DJGPP < 2.04 has no symlinks; `ln -s' creates a wrapper executable. + # In both cases, we have to default to `cp -pR'. + ln -s conf$$.file conf$$.dir 2>/dev/null && test ! -f conf$$.exe || + as_ln_s='cp -pR' + elif ln conf$$.file conf$$ 2>/dev/null; then + as_ln_s=ln + else + as_ln_s='cp -pR' + fi +else + as_ln_s='cp -pR' +fi +rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file +rmdir conf$$.dir 2>/dev/null + + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error $? "cannot create directory $as_dir" + + +} # as_fn_mkdir_p +if mkdir -p . 2>/dev/null; then + as_mkdir_p='mkdir -p "$as_dir"' +else + test -d ./-p && rmdir ./-p + as_mkdir_p=false +fi + + +# as_fn_executable_p FILE +# ----------------------- +# Test if FILE is an executable regular file. +as_fn_executable_p () +{ + test -f "$1" && test -x "$1" +} # as_fn_executable_p +as_test_x='test -x' +as_executable_p=as_fn_executable_p + +# 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'" + + +exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to +# report actual input values of CONFIG_FILES etc. instead of their +# values after options handling. +ac_log=" +This file was extended by Devhelp $as_me 3.28.1, which was +generated by GNU Autoconf 2.69. Invocation command line was + + CONFIG_FILES = $CONFIG_FILES + CONFIG_HEADERS = $CONFIG_HEADERS + CONFIG_LINKS = $CONFIG_LINKS + CONFIG_COMMANDS = $CONFIG_COMMANDS + $ $0 $@ + +on `(hostname || uname -n) 2>/dev/null | sed 1q` +" + +_ACEOF + +case $ac_config_files in *" +"*) set x $ac_config_files; shift; ac_config_files=$*;; +esac + +case $ac_config_headers in *" +"*) set x $ac_config_headers; shift; ac_config_headers=$*;; +esac + + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# Files that config.status was made for. +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" + +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +ac_cs_usage="\ +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. + +Usage: $0 [OPTION]... [TAG]... + + -h, --help print this help, then exit + -V, --version print version number and configuration settings, then exit + --config print configuration, then exit + -q, --quiet, --silent + 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 . +Devhelp home page: ." + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" +ac_cs_version="\\ +Devhelp config.status 3.28.1 +configured by $0, generated by GNU Autoconf 2.69, + with options \\"\$ac_cs_config\\" + +Copyright (C) 2012 Free Software Foundation, Inc. +This config.status script is free software; the Free Software Foundation +gives unlimited permission to copy, distribute and modify it." + +ac_pwd='$ac_pwd' +srcdir='$srcdir' +INSTALL='$INSTALL' +MKDIR_P='$MKDIR_P' +AWK='$AWK' +test -n "\$AWK" || AWK=awk +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# The default lists apply if the user does not specify any file. +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=`expr "X$1" : 'X\([^=]*\)='` + ac_optarg= + ac_shift=: + ;; + *) + ac_option=$1 + ac_optarg=$2 + ac_shift=shift + ;; + esac + + case $ac_option in + # Handling of the options. + -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r) + ac_cs_recheck=: ;; + --version | --versio | --versi | --vers | --ver | --ve | --v | -V ) + $as_echo "$ac_cs_version"; exit ;; + --config | --confi | --conf | --con | --co | --c ) + $as_echo "$ac_cs_config"; exit ;; + --debug | --debu | --deb | --de | --d | -d ) + debug=: ;; + --file | --fil | --fi | --f ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + '') as_fn_error $? "missing file argument" ;; + esac + as_fn_append CONFIG_FILES " '$ac_optarg'" + ac_need_defaults=false;; + --header | --heade | --head | --hea ) + $ac_shift + case $ac_optarg in + *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; + esac + as_fn_append CONFIG_HEADERS " '$ac_optarg'" + ac_need_defaults=false;; + --he | --h) + # Conflict between --help and --header + as_fn_error $? "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; + --help | --hel | -h ) + $as_echo "$ac_cs_usage"; exit ;; + -q | -quiet | --quiet | --quie | --qui | --qu | --q \ + | -silent | --silent | --silen | --sile | --sil | --si | --s) + ac_cs_silent=: ;; + + # This is an error. + -*) as_fn_error $? "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; + + *) as_fn_append ac_config_targets " $1" + ac_need_defaults=false ;; + + 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 || ac_write_fail=1 +if \$ac_cs_recheck; then + set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion + shift + \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6 + CONFIG_SHELL='$SHELL' + export CONFIG_SHELL + exec "\$@" +fi + +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +exec 5>>config.log +{ + echo + sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX +## Running $as_me. ## +_ASBOX + $as_echo "$ac_log" +} >&5 + +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +# +# INIT-COMMANDS +# +AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir" + + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +macro_version='`$ECHO "$macro_version" | $SED "$delay_single_quote_subst"`' +macro_revision='`$ECHO "$macro_revision" | $SED "$delay_single_quote_subst"`' +enable_static='`$ECHO "$enable_static" | $SED "$delay_single_quote_subst"`' +enable_shared='`$ECHO "$enable_shared" | $SED "$delay_single_quote_subst"`' +pic_mode='`$ECHO "$pic_mode" | $SED "$delay_single_quote_subst"`' +enable_fast_install='`$ECHO "$enable_fast_install" | $SED "$delay_single_quote_subst"`' +shared_archive_member_spec='`$ECHO "$shared_archive_member_spec" | $SED "$delay_single_quote_subst"`' +SHELL='`$ECHO "$SHELL" | $SED "$delay_single_quote_subst"`' +ECHO='`$ECHO "$ECHO" | $SED "$delay_single_quote_subst"`' +PATH_SEPARATOR='`$ECHO "$PATH_SEPARATOR" | $SED "$delay_single_quote_subst"`' +host_alias='`$ECHO "$host_alias" | $SED "$delay_single_quote_subst"`' +host='`$ECHO "$host" | $SED "$delay_single_quote_subst"`' +host_os='`$ECHO "$host_os" | $SED "$delay_single_quote_subst"`' +build_alias='`$ECHO "$build_alias" | $SED "$delay_single_quote_subst"`' +build='`$ECHO "$build" | $SED "$delay_single_quote_subst"`' +build_os='`$ECHO "$build_os" | $SED "$delay_single_quote_subst"`' +SED='`$ECHO "$SED" | $SED "$delay_single_quote_subst"`' +Xsed='`$ECHO "$Xsed" | $SED "$delay_single_quote_subst"`' +GREP='`$ECHO "$GREP" | $SED "$delay_single_quote_subst"`' +EGREP='`$ECHO "$EGREP" | $SED "$delay_single_quote_subst"`' +FGREP='`$ECHO "$FGREP" | $SED "$delay_single_quote_subst"`' +LD='`$ECHO "$LD" | $SED "$delay_single_quote_subst"`' +NM='`$ECHO "$NM" | $SED "$delay_single_quote_subst"`' +LN_S='`$ECHO "$LN_S" | $SED "$delay_single_quote_subst"`' +max_cmd_len='`$ECHO "$max_cmd_len" | $SED "$delay_single_quote_subst"`' +ac_objext='`$ECHO "$ac_objext" | $SED "$delay_single_quote_subst"`' +exeext='`$ECHO "$exeext" | $SED "$delay_single_quote_subst"`' +lt_unset='`$ECHO "$lt_unset" | $SED "$delay_single_quote_subst"`' +lt_SP2NL='`$ECHO "$lt_SP2NL" | $SED "$delay_single_quote_subst"`' +lt_NL2SP='`$ECHO "$lt_NL2SP" | $SED "$delay_single_quote_subst"`' +lt_cv_to_host_file_cmd='`$ECHO "$lt_cv_to_host_file_cmd" | $SED "$delay_single_quote_subst"`' +lt_cv_to_tool_file_cmd='`$ECHO "$lt_cv_to_tool_file_cmd" | $SED "$delay_single_quote_subst"`' +reload_flag='`$ECHO "$reload_flag" | $SED "$delay_single_quote_subst"`' +reload_cmds='`$ECHO "$reload_cmds" | $SED "$delay_single_quote_subst"`' +OBJDUMP='`$ECHO "$OBJDUMP" | $SED "$delay_single_quote_subst"`' +deplibs_check_method='`$ECHO "$deplibs_check_method" | $SED "$delay_single_quote_subst"`' +file_magic_cmd='`$ECHO "$file_magic_cmd" | $SED "$delay_single_quote_subst"`' +file_magic_glob='`$ECHO "$file_magic_glob" | $SED "$delay_single_quote_subst"`' +want_nocaseglob='`$ECHO "$want_nocaseglob" | $SED "$delay_single_quote_subst"`' +DLLTOOL='`$ECHO "$DLLTOOL" | $SED "$delay_single_quote_subst"`' +sharedlib_from_linklib_cmd='`$ECHO "$sharedlib_from_linklib_cmd" | $SED "$delay_single_quote_subst"`' +AR='`$ECHO "$AR" | $SED "$delay_single_quote_subst"`' +AR_FLAGS='`$ECHO "$AR_FLAGS" | $SED "$delay_single_quote_subst"`' +archiver_list_spec='`$ECHO "$archiver_list_spec" | $SED "$delay_single_quote_subst"`' +STRIP='`$ECHO "$STRIP" | $SED "$delay_single_quote_subst"`' +RANLIB='`$ECHO "$RANLIB" | $SED "$delay_single_quote_subst"`' +old_postinstall_cmds='`$ECHO "$old_postinstall_cmds" | $SED "$delay_single_quote_subst"`' +old_postuninstall_cmds='`$ECHO "$old_postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_cmds='`$ECHO "$old_archive_cmds" | $SED "$delay_single_quote_subst"`' +lock_old_archive_extraction='`$ECHO "$lock_old_archive_extraction" | $SED "$delay_single_quote_subst"`' +CC='`$ECHO "$CC" | $SED "$delay_single_quote_subst"`' +CFLAGS='`$ECHO "$CFLAGS" | $SED "$delay_single_quote_subst"`' +compiler='`$ECHO "$compiler" | $SED "$delay_single_quote_subst"`' +GCC='`$ECHO "$GCC" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_pipe='`$ECHO "$lt_cv_sys_global_symbol_pipe" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_cdecl='`$ECHO "$lt_cv_sys_global_symbol_to_cdecl" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_import='`$ECHO "$lt_cv_sys_global_symbol_to_import" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address" | $SED "$delay_single_quote_subst"`' +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix='`$ECHO "$lt_cv_sys_global_symbol_to_c_name_address_lib_prefix" | $SED "$delay_single_quote_subst"`' +lt_cv_nm_interface='`$ECHO "$lt_cv_nm_interface" | $SED "$delay_single_quote_subst"`' +nm_file_list_spec='`$ECHO "$nm_file_list_spec" | $SED "$delay_single_quote_subst"`' +lt_sysroot='`$ECHO "$lt_sysroot" | $SED "$delay_single_quote_subst"`' +lt_cv_truncate_bin='`$ECHO "$lt_cv_truncate_bin" | $SED "$delay_single_quote_subst"`' +objdir='`$ECHO "$objdir" | $SED "$delay_single_quote_subst"`' +MAGIC_CMD='`$ECHO "$MAGIC_CMD" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_no_builtin_flag='`$ECHO "$lt_prog_compiler_no_builtin_flag" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_pic='`$ECHO "$lt_prog_compiler_pic" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_wl='`$ECHO "$lt_prog_compiler_wl" | $SED "$delay_single_quote_subst"`' +lt_prog_compiler_static='`$ECHO "$lt_prog_compiler_static" | $SED "$delay_single_quote_subst"`' +lt_cv_prog_compiler_c_o='`$ECHO "$lt_cv_prog_compiler_c_o" | $SED "$delay_single_quote_subst"`' +need_locks='`$ECHO "$need_locks" | $SED "$delay_single_quote_subst"`' +MANIFEST_TOOL='`$ECHO "$MANIFEST_TOOL" | $SED "$delay_single_quote_subst"`' +DSYMUTIL='`$ECHO "$DSYMUTIL" | $SED "$delay_single_quote_subst"`' +NMEDIT='`$ECHO "$NMEDIT" | $SED "$delay_single_quote_subst"`' +LIPO='`$ECHO "$LIPO" | $SED "$delay_single_quote_subst"`' +OTOOL='`$ECHO "$OTOOL" | $SED "$delay_single_quote_subst"`' +OTOOL64='`$ECHO "$OTOOL64" | $SED "$delay_single_quote_subst"`' +libext='`$ECHO "$libext" | $SED "$delay_single_quote_subst"`' +shrext_cmds='`$ECHO "$shrext_cmds" | $SED "$delay_single_quote_subst"`' +extract_expsyms_cmds='`$ECHO "$extract_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds_need_lc='`$ECHO "$archive_cmds_need_lc" | $SED "$delay_single_quote_subst"`' +enable_shared_with_static_runtimes='`$ECHO "$enable_shared_with_static_runtimes" | $SED "$delay_single_quote_subst"`' +export_dynamic_flag_spec='`$ECHO "$export_dynamic_flag_spec" | $SED "$delay_single_quote_subst"`' +whole_archive_flag_spec='`$ECHO "$whole_archive_flag_spec" | $SED "$delay_single_quote_subst"`' +compiler_needs_object='`$ECHO "$compiler_needs_object" | $SED "$delay_single_quote_subst"`' +old_archive_from_new_cmds='`$ECHO "$old_archive_from_new_cmds" | $SED "$delay_single_quote_subst"`' +old_archive_from_expsyms_cmds='`$ECHO "$old_archive_from_expsyms_cmds" | $SED "$delay_single_quote_subst"`' +archive_cmds='`$ECHO "$archive_cmds" | $SED "$delay_single_quote_subst"`' +archive_expsym_cmds='`$ECHO "$archive_expsym_cmds" | $SED "$delay_single_quote_subst"`' +module_cmds='`$ECHO "$module_cmds" | $SED "$delay_single_quote_subst"`' +module_expsym_cmds='`$ECHO "$module_expsym_cmds" | $SED "$delay_single_quote_subst"`' +with_gnu_ld='`$ECHO "$with_gnu_ld" | $SED "$delay_single_quote_subst"`' +allow_undefined_flag='`$ECHO "$allow_undefined_flag" | $SED "$delay_single_quote_subst"`' +no_undefined_flag='`$ECHO "$no_undefined_flag" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_flag_spec='`$ECHO "$hardcode_libdir_flag_spec" | $SED "$delay_single_quote_subst"`' +hardcode_libdir_separator='`$ECHO "$hardcode_libdir_separator" | $SED "$delay_single_quote_subst"`' +hardcode_direct='`$ECHO "$hardcode_direct" | $SED "$delay_single_quote_subst"`' +hardcode_direct_absolute='`$ECHO "$hardcode_direct_absolute" | $SED "$delay_single_quote_subst"`' +hardcode_minus_L='`$ECHO "$hardcode_minus_L" | $SED "$delay_single_quote_subst"`' +hardcode_shlibpath_var='`$ECHO "$hardcode_shlibpath_var" | $SED "$delay_single_quote_subst"`' +hardcode_automatic='`$ECHO "$hardcode_automatic" | $SED "$delay_single_quote_subst"`' +inherit_rpath='`$ECHO "$inherit_rpath" | $SED "$delay_single_quote_subst"`' +link_all_deplibs='`$ECHO "$link_all_deplibs" | $SED "$delay_single_quote_subst"`' +always_export_symbols='`$ECHO "$always_export_symbols" | $SED "$delay_single_quote_subst"`' +export_symbols_cmds='`$ECHO "$export_symbols_cmds" | $SED "$delay_single_quote_subst"`' +exclude_expsyms='`$ECHO "$exclude_expsyms" | $SED "$delay_single_quote_subst"`' +include_expsyms='`$ECHO "$include_expsyms" | $SED "$delay_single_quote_subst"`' +prelink_cmds='`$ECHO "$prelink_cmds" | $SED "$delay_single_quote_subst"`' +postlink_cmds='`$ECHO "$postlink_cmds" | $SED "$delay_single_quote_subst"`' +file_list_spec='`$ECHO "$file_list_spec" | $SED "$delay_single_quote_subst"`' +variables_saved_for_relink='`$ECHO "$variables_saved_for_relink" | $SED "$delay_single_quote_subst"`' +need_lib_prefix='`$ECHO "$need_lib_prefix" | $SED "$delay_single_quote_subst"`' +need_version='`$ECHO "$need_version" | $SED "$delay_single_quote_subst"`' +version_type='`$ECHO "$version_type" | $SED "$delay_single_quote_subst"`' +runpath_var='`$ECHO "$runpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_var='`$ECHO "$shlibpath_var" | $SED "$delay_single_quote_subst"`' +shlibpath_overrides_runpath='`$ECHO "$shlibpath_overrides_runpath" | $SED "$delay_single_quote_subst"`' +libname_spec='`$ECHO "$libname_spec" | $SED "$delay_single_quote_subst"`' +library_names_spec='`$ECHO "$library_names_spec" | $SED "$delay_single_quote_subst"`' +soname_spec='`$ECHO "$soname_spec" | $SED "$delay_single_quote_subst"`' +install_override_mode='`$ECHO "$install_override_mode" | $SED "$delay_single_quote_subst"`' +postinstall_cmds='`$ECHO "$postinstall_cmds" | $SED "$delay_single_quote_subst"`' +postuninstall_cmds='`$ECHO "$postuninstall_cmds" | $SED "$delay_single_quote_subst"`' +finish_cmds='`$ECHO "$finish_cmds" | $SED "$delay_single_quote_subst"`' +finish_eval='`$ECHO "$finish_eval" | $SED "$delay_single_quote_subst"`' +hardcode_into_libs='`$ECHO "$hardcode_into_libs" | $SED "$delay_single_quote_subst"`' +sys_lib_search_path_spec='`$ECHO "$sys_lib_search_path_spec" | $SED "$delay_single_quote_subst"`' +configure_time_dlsearch_path='`$ECHO "$configure_time_dlsearch_path" | $SED "$delay_single_quote_subst"`' +configure_time_lt_sys_library_path='`$ECHO "$configure_time_lt_sys_library_path" | $SED "$delay_single_quote_subst"`' +hardcode_action='`$ECHO "$hardcode_action" | $SED "$delay_single_quote_subst"`' +enable_dlopen='`$ECHO "$enable_dlopen" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self='`$ECHO "$enable_dlopen_self" | $SED "$delay_single_quote_subst"`' +enable_dlopen_self_static='`$ECHO "$enable_dlopen_self_static" | $SED "$delay_single_quote_subst"`' +old_striplib='`$ECHO "$old_striplib" | $SED "$delay_single_quote_subst"`' +striplib='`$ECHO "$striplib" | $SED "$delay_single_quote_subst"`' + +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in SHELL \ +ECHO \ +PATH_SEPARATOR \ +SED \ +GREP \ +EGREP \ +FGREP \ +LD \ +NM \ +LN_S \ +lt_SP2NL \ +lt_NL2SP \ +reload_flag \ +OBJDUMP \ +deplibs_check_method \ +file_magic_cmd \ +file_magic_glob \ +want_nocaseglob \ +DLLTOOL \ +sharedlib_from_linklib_cmd \ +AR \ +AR_FLAGS \ +archiver_list_spec \ +STRIP \ +RANLIB \ +CC \ +CFLAGS \ +compiler \ +lt_cv_sys_global_symbol_pipe \ +lt_cv_sys_global_symbol_to_cdecl \ +lt_cv_sys_global_symbol_to_import \ +lt_cv_sys_global_symbol_to_c_name_address \ +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix \ +lt_cv_nm_interface \ +nm_file_list_spec \ +lt_cv_truncate_bin \ +lt_prog_compiler_no_builtin_flag \ +lt_prog_compiler_pic \ +lt_prog_compiler_wl \ +lt_prog_compiler_static \ +lt_cv_prog_compiler_c_o \ +need_locks \ +MANIFEST_TOOL \ +DSYMUTIL \ +NMEDIT \ +LIPO \ +OTOOL \ +OTOOL64 \ +shrext_cmds \ +export_dynamic_flag_spec \ +whole_archive_flag_spec \ +compiler_needs_object \ +with_gnu_ld \ +allow_undefined_flag \ +no_undefined_flag \ +hardcode_libdir_flag_spec \ +hardcode_libdir_separator \ +exclude_expsyms \ +include_expsyms \ +file_list_spec \ +variables_saved_for_relink \ +libname_spec \ +library_names_spec \ +soname_spec \ +install_override_mode \ +finish_eval \ +old_striplib \ +striplib; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in reload_cmds \ +old_postinstall_cmds \ +old_postuninstall_cmds \ +old_archive_cmds \ +extract_expsyms_cmds \ +old_archive_from_new_cmds \ +old_archive_from_expsyms_cmds \ +archive_cmds \ +archive_expsym_cmds \ +module_cmds \ +module_expsym_cmds \ +export_symbols_cmds \ +prelink_cmds \ +postlink_cmds \ +postinstall_cmds \ +postuninstall_cmds \ +finish_cmds \ +sys_lib_search_path_spec \ +configure_time_dlsearch_path \ +configure_time_lt_sys_library_path; do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[\\\\\\\`\\"\\\$]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +ac_aux_dir='$ac_aux_dir' + +# See if we are running on zsh, and set the options that allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + + + PACKAGE='$PACKAGE' + VERSION='$VERSION' + RM='$RM' + ofile='$ofile' + + + +# Capture the value of obsolete ALL_LINGUAS because we need it to compute + # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. But hide it + # from automake < 1.5. + 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 || ac_write_fail=1 + +# Handling of arguments. +for ac_config_target in $ac_config_targets +do + case $ac_config_target in + "config.h") CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;; + "depfiles") CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;; + "libtool") CONFIG_COMMANDS="$CONFIG_COMMANDS libtool" ;; + "po-directories") CONFIG_COMMANDS="$CONFIG_COMMANDS po-directories" ;; + "Makefile") CONFIG_FILES="$CONFIG_FILES Makefile" ;; + "data/libdevhelp-3.0.pc") CONFIG_FILES="$CONFIG_FILES data/libdevhelp-3.0.pc" ;; + "data/Makefile") CONFIG_FILES="$CONFIG_FILES data/Makefile" ;; + "data/org.gnome.Devhelp.desktop.in") CONFIG_FILES="$CONFIG_FILES data/org.gnome.Devhelp.desktop.in" ;; + "data/icons/Makefile") CONFIG_FILES="$CONFIG_FILES data/icons/Makefile" ;; + "docs/Makefile") CONFIG_FILES="$CONFIG_FILES docs/Makefile" ;; + "docs/reference/Makefile") CONFIG_FILES="$CONFIG_FILES docs/reference/Makefile" ;; + "help/Makefile") CONFIG_FILES="$CONFIG_FILES help/Makefile" ;; + "plugins/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/Makefile" ;; + "plugins/gedit-plugin/Makefile") CONFIG_FILES="$CONFIG_FILES plugins/gedit-plugin/Makefile" ;; + "po/Makefile.in") CONFIG_FILES="$CONFIG_FILES po/Makefile.in" ;; + "src/Makefile") CONFIG_FILES="$CONFIG_FILES src/Makefile" ;; + "unit-tests/Makefile") CONFIG_FILES="$CONFIG_FILES unit-tests/Makefile" ;; + + *) as_fn_error $? "invalid argument: \`$ac_config_target'" "$LINENO" 5;; + 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 against having it here, and in addition, +# creating and moving files from /tmp can sometimes cause problems. +# Hook for its removal unless debugging. +# Note that there is a small window in which the directory will not be cleaned: +# after its creation but before its name has been assigned to `$tmp'. +$debug || +{ + tmp= ac_tmp= + trap 'exit_status=$? + : "${ac_tmp:=$tmp}" + { test ! -d "$ac_tmp" || rm -fr "$ac_tmp"; } && exit $exit_status +' 0 + trap 'as_fn_exit 1' 1 2 13 15 +} +# Create a (secure) tmp directory for tmp files. + +{ + tmp=`(umask 077 && mktemp -d "./confXXXXXX") 2>/dev/null` && + test -d "$tmp" +} || +{ + tmp=./conf$$-$RANDOM + (umask 077 && mkdir "$tmp") +} || as_fn_error $? "cannot create a temporary directory in ." "$LINENO" 5 +ac_tmp=$tmp + +# Set up the scripts for CONFIG_FILES section. +# No need to generate them if there are no CONFIG_FILES. +# This happens for instance with `./config.status config.h'. +if test -n "$CONFIG_FILES"; then + + +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi +ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` +if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then + ac_cs_awk_cr='\\r' +else + ac_cs_awk_cr=$ac_cr +fi + +echo 'BEGIN {' >"$ac_tmp/subs1.awk" && +_ACEOF + + +{ + echo "cat >conf$$subs.awk <<_ACEOF" && + echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && + echo "_ACEOF" +} >conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 +ac_delim_num=`echo "$ac_subst_vars" | grep -c '^'` +ac_delim='%!_!# ' +for ac_last_try in false false false false false :; do + . ./conf$$subs.sh || + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + + ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` + if test $ac_delim_n = $ac_delim_num; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_STATUS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done +rm -f conf$$subs.sh + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +cat >>"\$ac_tmp/subs1.awk" <<\\_ACAWK && +_ACEOF +sed -n ' +h +s/^/S["/; s/!.*/"]=/ +p +g +s/^[^!]*!// +:repl +t repl +s/'"$ac_delim"'$// +t delim +:nl +h +s/\(.\{148\}\)..*/\1/ +t more1 +s/["\\]/\\&/g; s/^/"/; s/$/\\n"\\/ +p +n +b repl +:more1 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t nl +:delim +h +s/\(.\{148\}\)..*/\1/ +t more2 +s/["\\]/\\&/g; s/^/"/; s/$/"/ +p +b +:more2 +s/["\\]/\\&/g; s/^/"/; s/$/"\\/ +p +g +s/.\{148\}// +t delim +' >$CONFIG_STATUS || ac_write_fail=1 +rm -f conf$$subs.awk +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +_ACAWK +cat >>"\$ac_tmp/subs1.awk" <<_ACAWK && + for (key in S) S_is_set[key] = 1 + FS = "" + +} +{ + line = $ 0 + nfields = split(line, field, "@") + substed = 0 + len = length(field[1]) + for (i = 2; i < nfields; i++) { + key = field[i] + keylen = length(key) + if (S_is_set[key]) { + value = S[key] + line = substr(line, 1, len) "" value "" substr(line, len + keylen + 3) + len += length(value) + length(field[++i]) + substed = 1 + } else + len += 1 + keylen + } + + print line +} + +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +if sed "s/$ac_cr//" < /dev/null > /dev/null 2>&1; then + sed "s/$ac_cr\$//; s/$ac_cr/$ac_cs_awk_cr/g" +else + cat +fi < "$ac_tmp/subs1.awk" > "$ac_tmp/subs.awk" \ + || as_fn_error $? "could not setup config files machinery" "$LINENO" 5 +_ACEOF + +# VPATH may cause trouble with some makes, so we remove sole $(srcdir), +# ${srcdir} and @srcdir@ entries 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[ ]*=[ ]*/{ +h +s/// +s/^/:/ +s/[ ]*$/:/ +s/:\$(srcdir):/:/g +s/:\${srcdir}:/:/g +s/:@srcdir@:/:/g +s/^:*// +s/:*$// +x +s/\(=[ ]*\).*/\1/ +G +s/\n// +s/^[^=]*=[ ]*$// +}' +fi + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +fi # test -n "$CONFIG_FILES" + +# Set up the scripts for CONFIG_HEADERS section. +# No need to generate them if there are no CONFIG_HEADERS. +# This happens for instance with `./config.status Makefile'. +if test -n "$CONFIG_HEADERS"; then +cat >"$ac_tmp/defines.awk" <<\_ACAWK || +BEGIN { +_ACEOF + +# Transform confdefs.h into an awk script `defines.awk', embedded as +# here-document in config.status, that substitutes the proper values into +# config.h.in to produce config.h. + +# Create a delimiter string that does not exist in confdefs.h, to ease +# handling of long lines. +ac_delim='%!_!# ' +for ac_last_try in false false :; do + ac_tt=`sed -n "/$ac_delim/p" confdefs.h` + if test -z "$ac_tt"; then + break + elif $ac_last_try; then + as_fn_error $? "could not make $CONFIG_HEADERS" "$LINENO" 5 + else + ac_delim="$ac_delim!$ac_delim _$ac_delim!! " + fi +done + +# For the awk script, D is an array of macro values keyed by name, +# likewise P contains macro parameters if any. Preserve backslash +# newline sequences. + +ac_word_re=[_$as_cr_Letters][_$as_cr_alnum]* +sed -n ' +s/.\{148\}/&'"$ac_delim"'/g +t rset +:rset +s/^[ ]*#[ ]*define[ ][ ]*/ / +t def +d +:def +s/\\$// +t bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3"/p +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2"/p +d +:bsnl +s/["\\]/\\&/g +s/^ \('"$ac_word_re"'\)\(([^()]*)\)[ ]*\(.*\)/P["\1"]="\2"\ +D["\1"]=" \3\\\\\\n"\\/p +t cont +s/^ \('"$ac_word_re"'\)[ ]*\(.*\)/D["\1"]=" \2\\\\\\n"\\/p +t cont +d +:cont +n +s/.\{148\}/&'"$ac_delim"'/g +t clear +:clear +s/\\$// +t bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/"/p +d +:bsnlc +s/["\\]/\\&/g; s/^/"/; s/$/\\\\\\n"\\/p +b cont +' >$CONFIG_STATUS || ac_write_fail=1 + +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + for (key in D) D_is_set[key] = 1 + FS = "" +} +/^[\t ]*#[\t ]*(define|undef)[\t ]+$ac_word_re([\t (]|\$)/ { + line = \$ 0 + split(line, arg, " ") + if (arg[1] == "#") { + defundef = arg[2] + mac1 = arg[3] + } else { + defundef = substr(arg[1], 2) + mac1 = arg[2] + } + split(mac1, mac2, "(") #) + macro = mac2[1] + prefix = substr(line, 1, index(line, defundef) - 1) + if (D_is_set[macro]) { + # Preserve the white space surrounding the "#". + print prefix "define", macro P[macro] D[macro] + next + } else { + # Replace #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. + if (defundef == "undef") { + print "/*", prefix defundef, macro, "*/" + next + } + } +} +{ print } +_ACAWK +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 + as_fn_error $? "could not setup config headers machinery" "$LINENO" 5 +fi # test -n "$CONFIG_HEADERS" + + +eval set X " :F $CONFIG_FILES :H $CONFIG_HEADERS :C $CONFIG_COMMANDS" +shift +for ac_tag +do + case $ac_tag in + :[FHLC]) ac_mode=$ac_tag; continue;; + esac + case $ac_mode$ac_tag in + :[FHL]*:*);; + :L* | :C*:*) as_fn_error $? "invalid tag \`$ac_tag'" "$LINENO" 5;; + :[FH]-) ac_tag=-:-;; + :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; + esac + ac_save_IFS=$IFS + IFS=: + set x $ac_tag + IFS=$ac_save_IFS + shift + ac_file=$1 + shift + + case $ac_mode in + :L) ac_source=$1;; + :[FH]) + ac_file_inputs= + for ac_f + do + case $ac_f in + -) ac_f="$ac_tmp/stdin";; + *) # Look for the file first in the build tree, then in the source tree + # (if the path is not absolute). The absolute path cannot be DOS-style, + # because $ac_f cannot contain `:'. + test -f "$ac_f" || + case $ac_f in + [\\/$]*) false;; + *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; + esac || + as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;; + esac + case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac + as_fn_append ac_file_inputs " '$ac_f'" + done + + # 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. */ + configure_input='Generated from '` + $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g' + `' by configure.' + if test x"$ac_file" != x-; then + configure_input="$ac_file. $configure_input" + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 +$as_echo "$as_me: creating $ac_file" >&6;} + fi + # Neutralize special characters interpreted by sed in replacement strings. + case $configure_input in #( + *\&* | *\|* | *\\* ) + ac_sed_conf_input=`$as_echo "$configure_input" | + sed 's/[\\\\&|]/\\\\&/g'`;; #( + *) ac_sed_conf_input=$configure_input;; + esac + + case $ac_tag in + *:-:* | *:-) cat >"$ac_tmp/stdin" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 ;; + esac + ;; + esac + + ac_dir=`$as_dirname -- "$ac_file" || +$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$ac_file" : 'X\(//\)[^/]' \| \ + X"$ac_file" : 'X\(//\)$' \| \ + X"$ac_file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$ac_file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir="$ac_dir"; as_fn_mkdir_p + ac_builddir=. + +case "$ac_dir" in +.) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;; +*) + ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'` + # A ".." for each directory in $ac_dir_suffix. + ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'` + case $ac_top_builddir_sub in + "") ac_top_builddir_sub=. ac_top_build_prefix= ;; + *) ac_top_build_prefix=$ac_top_builddir_sub/ ;; + esac ;; +esac +ac_abs_top_builddir=$ac_pwd +ac_abs_builddir=$ac_pwd$ac_dir_suffix +# for backward compatibility: +ac_top_builddir=$ac_top_build_prefix + +case $srcdir in + .) # We are building in place. + ac_srcdir=. + ac_top_srcdir=$ac_top_builddir_sub + ac_abs_top_srcdir=$ac_pwd ;; + [\\/]* | ?:[\\/]* ) # Absolute name. + ac_srcdir=$srcdir$ac_dir_suffix; + ac_top_srcdir=$srcdir + ac_abs_top_srcdir=$srcdir ;; + *) # Relative name. + ac_srcdir=$ac_top_build_prefix$srcdir$ac_dir_suffix + ac_top_srcdir=$ac_top_build_prefix$srcdir + ac_abs_top_srcdir=$ac_pwd/$srcdir ;; +esac +ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix + + + case $ac_mode in + :F) + # + # CONFIG_FILE + # + + case $INSTALL in + [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;; + *) ac_INSTALL=$ac_top_build_prefix$INSTALL ;; + esac + ac_MKDIR_P=$MKDIR_P + case $MKDIR_P in + [\\/$]* | ?:[\\/]* ) ;; + */*) ac_MKDIR_P=$ac_top_build_prefix$MKDIR_P ;; + esac +_ACEOF + +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# If the template does not know about datarootdir, expand it. +# FIXME: This hack should be removed a few years after 2.60. +ac_datarootdir_hack=; ac_datarootdir_seen= +ac_sed_dataroot=' +/datarootdir/ { + p + q +} +/@datadir@/p +/@docdir@/p +/@infodir@/p +/@localedir@/p +/@mandir@/p' +case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in +*datarootdir*) ac_datarootdir_seen=yes;; +*@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 +$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} +_ACEOF +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 + ac_datarootdir_hack=' + s&@datadir@&$datadir&g + s&@docdir@&$docdir&g + s&@infodir@&$infodir&g + s&@localedir@&$localedir&g + s&@mandir@&$mandir&g + s&\\\${datarootdir}&$datarootdir&g' ;; +esac +_ACEOF + +# Neutralize VPATH when `$srcdir' = `.'. +# Shell code in configure.ac might set extrasub. +# FIXME: do we really want to maintain this feature? +cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +ac_sed_extra="$ac_vpsub +$extrasub +_ACEOF +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +:t +/@[a-zA-Z_][a-zA-Z_0-9]*@/!b +s|@configure_input@|$ac_sed_conf_input|;t t +s&@top_builddir@&$ac_top_builddir_sub&;t t +s&@top_build_prefix@&$ac_top_build_prefix&;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&@abs_top_builddir@&$ac_abs_top_builddir&;t t +s&@INSTALL@&$ac_INSTALL&;t t +s&@MKDIR_P@&$ac_MKDIR_P&;t t +$ac_datarootdir_hack +" +eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$ac_tmp/subs.awk" \ + >$ac_tmp/out || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + +test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && + { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } && + { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' \ + "$ac_tmp/out"`; test -z "$ac_out"; } && + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&5 +$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' +which seems to be undefined. Please make sure it is defined" >&2;} + + rm -f "$ac_tmp/stdin" + case $ac_file in + -) cat "$ac_tmp/out" && rm -f "$ac_tmp/out";; + *) rm -f "$ac_file" && mv "$ac_tmp/out" "$ac_file";; + esac \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + ;; + :H) + # + # CONFIG_HEADER + # + if test x"$ac_file" != x-; then + { + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" + } >"$ac_tmp/config.h" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 +$as_echo "$as_me: $ac_file is unchanged" >&6;} + else + rm -f "$ac_file" + mv "$ac_tmp/config.h" "$ac_file" \ + || as_fn_error $? "could not create $ac_file" "$LINENO" 5 + fi + else + $as_echo "/* $configure_input */" \ + && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \ + || as_fn_error $? "could not create -" "$LINENO" 5 + fi +# Compute "$ac_file"'s index in $config_headers. +_am_arg="$ac_file" +_am_stamp_count=1 +for _am_header in $config_headers :; do + case $_am_header in + $_am_arg | $_am_arg:* ) + break ;; + * ) + _am_stamp_count=`expr $_am_stamp_count + 1` ;; + esac +done +echo "timestamp for $_am_arg" >`$as_dirname -- "$_am_arg" || +$as_expr X"$_am_arg" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$_am_arg" : 'X\(//\)[^/]' \| \ + X"$_am_arg" : 'X\(//\)$' \| \ + X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$_am_arg" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'`/stamp-h$_am_stamp_count + ;; + + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 +$as_echo "$as_me: executing $ac_file commands" >&6;} + ;; + esac + + + case $ac_file$ac_mode in + "depfiles":C) test x"$AMDEP_TRUE" != x"" || { + # Older Autoconf quotes --file arguments for eval, but not when files + # are listed without --file. Let's play safe and only enable the eval + # if we detect the quoting. + case $CONFIG_FILES in + *\'*) eval set x "$CONFIG_FILES" ;; + *) set x $CONFIG_FILES ;; + esac + shift + for mf + 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. + # Grep'ing the whole file is not good either: AIX grep has a line + # limit of 2048, but all sed's we know have understand at least 4000. + if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then + dirpart=`$as_dirname -- "$mf" || +$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$mf" : 'X\(//\)[^/]' \| \ + X"$mf" : 'X\(//\)$' \| \ + X"$mf" : 'X\(/\)' \| . 2>/dev/null || +$as_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"` + # 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'`; do + # Make sure the directory exists. + test -f "$dirpart/$file" && continue + fdir=`$as_dirname -- "$file" || +$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$file" : 'X\(//\)[^/]' \| \ + X"$file" : 'X\(//\)$' \| \ + X"$file" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$file" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + as_dir=$dirpart/$fdir; as_fn_mkdir_p + # echo "creating $dirpart/$file" + echo '# dummy' > "$dirpart/$file" + done + done +} + ;; + "libtool":C) + + # See if we are running on zsh, and set the options that allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST + fi + + cfgfile=${ofile}T + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL +# Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +# Copyright (C) 2014 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. + +# GNU Libtool 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 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool 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, see . + + +# The names of the tagged configurations supported by this script. +available_tags='' + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + +# ### BEGIN LIBTOOL CONFIG + +# Which release of libtool.m4 was used? +macro_version=$macro_version +macro_revision=$macro_revision + +# Whether or not to build static libraries. +build_old_libs=$enable_static + +# Whether or not to build shared libraries. +build_libtool_libs=$enable_shared + +# What type of objects to build. +pic_mode=$pic_mode + +# Whether or not to optimize for fast installation. +fast_install=$enable_fast_install + +# Shared archive member basename,for filename based shared library versioning on AIX. +shared_archive_member_spec=$shared_archive_member_spec + +# Shell to use when invoking shell scripts. +SHELL=$lt_SHELL + +# An echo program that protects backslashes. +ECHO=$lt_ECHO + +# The PATH separator for the build system. +PATH_SEPARATOR=$lt_PATH_SEPARATOR + +# The host system. +host_alias=$host_alias +host=$host +host_os=$host_os + +# The build system. +build_alias=$build_alias +build=$build +build_os=$build_os + +# A sed program that does not truncate output. +SED=$lt_SED + +# Sed that helps us avoid accidentally triggering echo(1) options like -n. +Xsed="\$SED -e 1s/^X//" + +# A grep program that handles long lines. +GREP=$lt_GREP + +# An ERE matcher. +EGREP=$lt_EGREP + +# A literal string matcher. +FGREP=$lt_FGREP + +# A BSD- or MS-compatible name lister. +NM=$lt_NM + +# Whether we need soft or hard links. +LN_S=$lt_LN_S + +# What is the maximum length of a command? +max_cmd_len=$max_cmd_len + +# Object file suffix (normally "o"). +objext=$ac_objext + +# Executable file suffix (normally ""). +exeext=$exeext + +# whether the shell understands "unset". +lt_unset=$lt_unset + +# turn spaces into newlines. +SP2NL=$lt_lt_SP2NL + +# turn newlines into spaces. +NL2SP=$lt_lt_NL2SP + +# convert \$build file names to \$host format. +to_host_file_cmd=$lt_cv_to_host_file_cmd + +# convert \$build files to toolchain format. +to_tool_file_cmd=$lt_cv_to_tool_file_cmd + +# An object symbol dumper. +OBJDUMP=$lt_OBJDUMP + +# Method to check whether dependent libraries are shared objects. +deplibs_check_method=$lt_deplibs_check_method + +# Command to use when deplibs_check_method = "file_magic". +file_magic_cmd=$lt_file_magic_cmd + +# How to find potential files when deplibs_check_method = "file_magic". +file_magic_glob=$lt_file_magic_glob + +# Find potential files using nocaseglob when deplibs_check_method = "file_magic". +want_nocaseglob=$lt_want_nocaseglob + +# DLL creation program. +DLLTOOL=$lt_DLLTOOL + +# Command to associate shared and link libraries. +sharedlib_from_linklib_cmd=$lt_sharedlib_from_linklib_cmd + +# The archiver. +AR=$lt_AR + +# Flags to create an archive. +AR_FLAGS=$lt_AR_FLAGS + +# How to feed a file listing to the archiver. +archiver_list_spec=$lt_archiver_list_spec + +# A symbol stripping program. +STRIP=$lt_STRIP + +# Commands used to install an old-style archive. +RANLIB=$lt_RANLIB +old_postinstall_cmds=$lt_old_postinstall_cmds +old_postuninstall_cmds=$lt_old_postuninstall_cmds + +# Whether to use a lock for old archive extraction. +lock_old_archive_extraction=$lock_old_archive_extraction + +# A C compiler. +LTCC=$lt_CC + +# LTCC compiler flags. +LTCFLAGS=$lt_CFLAGS + +# Take the output of nm and produce a listing of raw symbols and C names. +global_symbol_pipe=$lt_lt_cv_sys_global_symbol_pipe + +# Transform the output of nm in a proper C declaration. +global_symbol_to_cdecl=$lt_lt_cv_sys_global_symbol_to_cdecl + +# Transform the output of nm into a list of symbols to manually relocate. +global_symbol_to_import=$lt_lt_cv_sys_global_symbol_to_import + +# Transform the output of nm in a C name address pair. +global_symbol_to_c_name_address=$lt_lt_cv_sys_global_symbol_to_c_name_address + +# Transform the output of nm in a C name address pair when lib prefix is needed. +global_symbol_to_c_name_address_lib_prefix=$lt_lt_cv_sys_global_symbol_to_c_name_address_lib_prefix + +# The name lister interface. +nm_interface=$lt_lt_cv_nm_interface + +# Specify filename containing input files for \$NM. +nm_file_list_spec=$lt_nm_file_list_spec + +# The root where to search for dependent libraries,and where our libraries should be installed. +lt_sysroot=$lt_sysroot + +# Command to truncate a binary pipe. +lt_truncate_bin=$lt_lt_cv_truncate_bin + +# The name of the directory that contains temporary libtool files. +objdir=$objdir + +# Used to examine libraries when file_magic_cmd begins with "file". +MAGIC_CMD=$MAGIC_CMD + +# Must we lock files when doing compilation? +need_locks=$lt_need_locks + +# Manifest tool. +MANIFEST_TOOL=$lt_MANIFEST_TOOL + +# Tool to manipulate archived DWARF debug symbol files on Mac OS X. +DSYMUTIL=$lt_DSYMUTIL + +# Tool to change global to local symbols on Mac OS X. +NMEDIT=$lt_NMEDIT + +# Tool to manipulate fat objects and archives on Mac OS X. +LIPO=$lt_LIPO + +# ldd/readelf like tool for Mach-O binaries on Mac OS X. +OTOOL=$lt_OTOOL + +# ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4. +OTOOL64=$lt_OTOOL64 + +# Old archive suffix (normally "a"). +libext=$libext + +# Shared library suffix (normally ".so"). +shrext_cmds=$lt_shrext_cmds + +# The commands to extract the exported symbol list from a shared archive. +extract_expsyms_cmds=$lt_extract_expsyms_cmds + +# Variables whose values should be saved in libtool wrapper scripts and +# restored at link time. +variables_saved_for_relink=$lt_variables_saved_for_relink + +# Do we need the "lib" prefix for modules? +need_lib_prefix=$need_lib_prefix + +# Do we need a version for libraries? +need_version=$need_version + +# Library versioning type. +version_type=$version_type + +# Shared library runtime path variable. +runpath_var=$runpath_var + +# Shared library path variable. +shlibpath_var=$shlibpath_var + +# Is shlibpath searched before the hard-coded library search path? +shlibpath_overrides_runpath=$shlibpath_overrides_runpath + +# Format of library name prefix. +libname_spec=$lt_libname_spec + +# List of archive names. First name is the real one, the rest are links. +# The last name is the one that the linker finds with -lNAME +library_names_spec=$lt_library_names_spec + +# The coded name of the library, if different from the real name. +soname_spec=$lt_soname_spec + +# Permission mode override for installation of shared libraries. +install_override_mode=$lt_install_override_mode + +# Command to use after installation of a shared archive. +postinstall_cmds=$lt_postinstall_cmds + +# Command to use after uninstallation of a shared archive. +postuninstall_cmds=$lt_postuninstall_cmds + +# Commands used to finish a libtool library installation in a directory. +finish_cmds=$lt_finish_cmds + +# As "finish_cmds", except a single script fragment to be evaled but +# not shown. +finish_eval=$lt_finish_eval + +# Whether we should hardcode library paths into libraries. +hardcode_into_libs=$hardcode_into_libs + +# Compile-time system search path for libraries. +sys_lib_search_path_spec=$lt_sys_lib_search_path_spec + +# Detected run-time system search path for libraries. +sys_lib_dlsearch_path_spec=$lt_configure_time_dlsearch_path + +# Explicit LT_SYS_LIBRARY_PATH set during ./configure time. +configure_time_lt_sys_library_path=$lt_configure_time_lt_sys_library_path + +# Whether dlopen is supported. +dlopen_support=$enable_dlopen + +# Whether dlopen of programs is supported. +dlopen_self=$enable_dlopen_self + +# Whether dlopen of statically linked programs is supported. +dlopen_self_static=$enable_dlopen_self_static + +# Commands to strip libraries. +old_striplib=$lt_old_striplib +striplib=$lt_striplib + + +# The linker used to build libraries. +LD=$lt_LD + +# How to create reloadable object files. +reload_flag=$lt_reload_flag +reload_cmds=$lt_reload_cmds + +# Commands used to build an old-style archive. +old_archive_cmds=$lt_old_archive_cmds + +# A language specific compiler. +CC=$lt_compiler + +# Is the compiler the GNU compiler? +with_gcc=$GCC + +# Compiler flag to turn off builtin functions. +no_builtin_flag=$lt_lt_prog_compiler_no_builtin_flag + +# Additional compiler flags for building library objects. +pic_flag=$lt_lt_prog_compiler_pic + +# How to pass a linker flag through the compiler. +wl=$lt_lt_prog_compiler_wl + +# Compiler flag to prevent dynamic linking. +link_static_flag=$lt_lt_prog_compiler_static + +# Does compiler simultaneously support -c and -o options? +compiler_c_o=$lt_lt_cv_prog_compiler_c_o + +# Whether or not to add -lc for building shared libraries. +build_libtool_need_lc=$archive_cmds_need_lc + +# Whether or not to disallow shared libs when runtime libs are static. +allow_libtool_libs_with_static_runtimes=$enable_shared_with_static_runtimes + +# Compiler flag to allow reflexive dlopens. +export_dynamic_flag_spec=$lt_export_dynamic_flag_spec + +# Compiler flag to generate shared objects directly from archives. +whole_archive_flag_spec=$lt_whole_archive_flag_spec + +# Whether the compiler copes with passing no objects directly. +compiler_needs_object=$lt_compiler_needs_object + +# Create an old-style archive from a shared archive. +old_archive_from_new_cmds=$lt_old_archive_from_new_cmds + +# Create a temporary old-style archive to link instead of a shared archive. +old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds + +# Commands used to build a shared archive. +archive_cmds=$lt_archive_cmds +archive_expsym_cmds=$lt_archive_expsym_cmds + +# Commands used to build a loadable module if different from building +# a shared archive. +module_cmds=$lt_module_cmds +module_expsym_cmds=$lt_module_expsym_cmds + +# Whether we are building with GNU ld or not. +with_gnu_ld=$lt_with_gnu_ld + +# Flag that allows shared libraries with undefined symbols to be built. +allow_undefined_flag=$lt_allow_undefined_flag + +# Flag that enforces no undefined symbols. +no_undefined_flag=$lt_no_undefined_flag + +# Flag to hardcode \$libdir into a binary during linking. +# This must work even if \$libdir does not exist +hardcode_libdir_flag_spec=$lt_hardcode_libdir_flag_spec + +# Whether we need a single "-rpath" flag with a separated argument. +hardcode_libdir_separator=$lt_hardcode_libdir_separator + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary. +hardcode_direct=$hardcode_direct + +# Set to "yes" if using DIR/libNAME\$shared_ext during linking hardcodes +# DIR into the resulting binary and the resulting library dependency is +# "absolute",i.e impossible to change by setting \$shlibpath_var if the +# library is relocated. +hardcode_direct_absolute=$hardcode_direct_absolute + +# Set to "yes" if using the -LDIR flag during linking hardcodes DIR +# into the resulting binary. +hardcode_minus_L=$hardcode_minus_L + +# Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR +# into the resulting binary. +hardcode_shlibpath_var=$hardcode_shlibpath_var + +# Set to "yes" if building a shared library automatically hardcodes DIR +# into the library and all subsequent libraries and executables linked +# against it. +hardcode_automatic=$hardcode_automatic + +# Set to yes if linker adds runtime paths of dependent libraries +# to runtime path list. +inherit_rpath=$inherit_rpath + +# Whether libtool must link a program against all its dependency libraries. +link_all_deplibs=$link_all_deplibs + +# Set to "yes" if exported symbols are required. +always_export_symbols=$always_export_symbols + +# The commands to list exported symbols. +export_symbols_cmds=$lt_export_symbols_cmds + +# Symbols that should not be listed in the preloaded symbols. +exclude_expsyms=$lt_exclude_expsyms + +# Symbols that must always be exported. +include_expsyms=$lt_include_expsyms + +# Commands necessary for linking programs (against libraries) with templates. +prelink_cmds=$lt_prelink_cmds + +# Commands necessary for finishing linking programs. +postlink_cmds=$lt_postlink_cmds + +# Specify filename containing input files. +file_list_spec=$lt_file_list_spec + +# How to hardcode a shared library path into an executable. +hardcode_action=$hardcode_action + +# ### END LIBTOOL CONFIG + +_LT_EOF + + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x$2 in + x) + ;; + *:) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'` \$$1\" + ;; + x:*) + eval $1=\"\$$1 `$ECHO $2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval $1=\"\$$1\ `$ECHO $2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval $1=\"`$ECHO $2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \$$1\" + ;; + *) + eval $1=\"`$ECHO $2 | $SED 's/:/ /g'`\" + ;; + esac +} + + +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in $*""; do + case $cc_temp in + compile | *[\\/]compile | ccache | *[\\/]ccache ) ;; + distcc | *[\\/]distcc | purify | *[\\/]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} + + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + +ltmain=$ac_aux_dir/ltmain.sh + + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" + + ;; + "po-directories":C) + 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 + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. + 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" + gt_tab=`printf '\t'` + cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/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" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` + # Hide the ALL_LINGUAS assignment from automake < 1.5. + eval 'ALL_LINGUAS''=$ALL_LINGUAS_' + POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" + else + # The set of available languages was given in configure.in. + # Hide the ALL_LINGUAS assignment from automake < 1.5. + 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 # for ac_tag + + +as_fn_exit 0 +_ACEOF +ac_clean_files=$ac_clean_files_save + +test $ac_write_fail = 0 || + as_fn_error $? "write failure creating $CONFIG_STATUS" "$LINENO" 5 + + +# 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 || as_fn_exit 1 +fi +if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 +$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} +fi + + +# Print a summary of the configuration +echo " +Configuration: + + ${PACKAGE_NAME} version ${PACKAGE_VERSION} + + Source code location: ${srcdir} + Prefix: ${prefix} + Compiler: ${CC} + API documentation: ${enable_gtk_doc} + GObject introspection: ${found_introspection} + Flatpak build mode: ${flatpak_build} +" diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..81dc302 --- /dev/null +++ b/configure.ac @@ -0,0 +1,124 @@ +AC_PREREQ([2.64]) +AC_INIT([Devhelp], + [3.28.1], + [https://bugzilla.gnome.org/browse.cgi?product=devhelp], + [devhelp], + [https://wiki.gnome.org/Apps/Devhelp]) + +AX_REQUIRE_DEFINED([AX_IS_RELEASE]) +AX_IS_RELEASE([git-directory]) + +# LT Version numbers, remember to change them just *before* a release. +# A good time to update it is for the GNOME x.y.90 version, at API freeze, +# so that packagers have the time to update the package. +# (Interfaces removed: CURRENT++, AGE=0, REVISION=0) +# (Interfaces added: CURRENT++, AGE++, REVISION=0) +# (No interfaces changed: REVISION++) +LIBDEVHELP_LT_CURRENT=5 +LIBDEVHELP_LT_REVISION=0 +LIBDEVHELP_LT_AGE=0 +LIBDEVHELP_LT_VERSION="$LIBDEVHELP_LT_CURRENT:$LIBDEVHELP_LT_REVISION:$LIBDEVHELP_LT_AGE" +AC_SUBST([LIBDEVHELP_LT_VERSION]) + +AC_CONFIG_HEADERS(config.h) +AC_CONFIG_SRCDIR(src/dh-main.c) +AC_CONFIG_MACRO_DIR([m4]) + +AM_INIT_AUTOMAKE([1.14 -Wall foreign no-define tar-ustar no-dist-gzip dist-xz -Wno-portability]) + +# Support silent build rules, requires at least automake-1.11. Disable +# by either passing --disable-silent-rules to configure or passing V=1 +# to make +AM_SILENT_RULES([yes]) + +# Check for programs +AC_PROG_CC +AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums]) +AC_PATH_PROG([GLIB_COMPILE_RESOURCES], [glib-compile-resources]) + +# Initialize libtool +LT_PREREQ([2.2]) +LT_INIT([disable-static]) + +AX_REQUIRE_DEFINED([APPSTREAM_XML]) +APPSTREAM_XML + +AX_REQUIRE_DEFINED([GLIB_GSETTINGS]) +GLIB_GSETTINGS + +AX_REQUIRE_DEFINED([GOBJECT_INTROSPECTION_CHECK]) +GOBJECT_INTROSPECTION_CHECK([1.30.0]) + +AX_REQUIRE_DEFINED([YELP_HELP_INIT]) +YELP_HELP_INIT + +# Compile warnings. There can be deprecation warnings at any time, so disable +# -Werror by default with the [yes] argument. +AX_REQUIRE_DEFINED([AX_COMPILER_FLAGS]) +AX_COMPILER_FLAGS([WARN_CFLAGS], [WARN_LDFLAGS], [yes]) + +LT_LIB_M + +AX_REQUIRE_DEFINED([AX_PKG_CHECK_MODULES]) +AX_PKG_CHECK_MODULES([DEVHELP], + [gio-2.0 >= 2.40 gtk+-3.0 >= 3.22 webkit2gtk-4.0 >= 2.19.2], + [gsettings-desktop-schemas]) + +# i18n stuff +AM_GNU_GETTEXT([external]) +AM_GNU_GETTEXT_VERSION([0.19.7]) + +GETTEXT_PACKAGE=devhelp +AC_SUBST(GETTEXT_PACKAGE) +AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE,"$GETTEXT_PACKAGE", [Package name for gettext]) + +AM_PATH_PYTHON([2.3],[],[no]) + +# Flatpak +AC_ARG_ENABLE([flatpak-build], + [AS_HELP_STRING([--enable-flatpak-build], [Enable Flatpak build mode])], + [flatpak_build=${enableval}], + [flatpak_build=no]) + +if test "x${flatpak_build}" = xyes; then + AC_DEFINE([FLATPAK_BUILD], 1, [Whether Flatpak build mode is enabled]) +fi + +# GTK-Doc +AX_REQUIRE_DEFINED([GTK_DOC_CHECK]) +GTK_DOC_CHECK([1.25],[--flavour no-tmpl]) + +AX_REQUIRE_DEFINED([PKG_CHECK_VAR]) +PKG_CHECK_VAR([WEBKITGTK_PREFIX], [webkit2gtk-4.0], [prefix]) + +AC_CONFIG_FILES([ + Makefile + data/libdevhelp-3.0.pc + data/Makefile + data/org.gnome.Devhelp.desktop.in + data/icons/Makefile + docs/Makefile + docs/reference/Makefile + help/Makefile + plugins/Makefile + plugins/gedit-plugin/Makefile + po/Makefile.in + src/Makefile + unit-tests/Makefile +]) + +AC_OUTPUT + +# Print a summary of the configuration +echo " +Configuration: + + ${PACKAGE_NAME} version ${PACKAGE_VERSION} + + Source code location: ${srcdir} + Prefix: ${prefix} + Compiler: ${CC} + API documentation: ${enable_gtk_doc} + GObject introspection: ${found_introspection} + Flatpak build mode: ${flatpak_build} +" diff --git a/data/Makefile.am b/data/Makefile.am new file mode 100644 index 0000000..3049cb5 --- /dev/null +++ b/data/Makefile.am @@ -0,0 +1,54 @@ +SUBDIRS = icons + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = libdevhelp-3.0.pc + +assistantdir = $(datadir)/devhelp/assistant +assistant_DATA = \ + assistant.js \ + assistant.css + +gsettings_SCHEMAS = org.gnome.devhelp.gschema.xml +@GSETTINGS_RULES@ + +appstream_in_files = org.gnome.Devhelp.appdata.xml.in +appstream_XML = $(appstream_in_files:.xml.in=.xml) +@APPSTREAM_XML_RULES@ + +$(appstream_XML): $(appstream_in_files) + $(AM_V_GEN) $(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ + +desktopdir = $(datadir)/applications +desktop_in_files = org.gnome.Devhelp.desktop.in +desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) + +$(desktop_DATA): $(desktop_in_files) + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ + +dbusservicedir = $(datadir)/dbus-1/services +dbusservice_DATA = org.gnome.Devhelp.service + +org.gnome.Devhelp.service: Makefile + $(AM_V_GEN) (echo '[D-BUS Service]'; \ + echo 'Name=org.gnome.Devhelp'; \ + echo 'Exec=${bindir}/devhelp --gapplication-service') > $@.tmp && \ + mv $@.tmp $@ + +man_MANS = devhelp.1 + +EXTRA_DIST = \ + libdevhelp-3.0.pc.in \ + $(desktop_in_files) \ + $(gsettings_SCHEMAS) \ + $(assistant_DATA) \ + $(man_MANS) \ + $(appstream_in_files) + +CLEANFILES = \ + $(DESKTOP_FILES) \ + $(defaults_DATA) \ + $(desktop_DATA) \ + $(dbusservice_DATA) \ + $(appstream_XML) + +-include $(top_srcdir)/git.mk diff --git a/data/Makefile.in b/data/Makefile.in new file mode 100644 index 0000000..8c96f87 --- /dev/null +++ b/data/Makefile.in @@ -0,0 +1,929 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = data +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = libdevhelp-3.0.pc org.gnome.Devhelp.desktop.in +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +man1dir = $(mandir)/man1 +am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(assistantdir)" \ + "$(DESTDIR)$(dbusservicedir)" "$(DESTDIR)$(desktopdir)" \ + "$(DESTDIR)$(pkgconfigdir)" +NROFF = nroff +MANS = $(man_MANS) +DATA = $(assistant_DATA) $(dbusservice_DATA) $(desktop_DATA) \ + $(pkgconfig_DATA) +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/libdevhelp-3.0.pc.in \ + $(srcdir)/org.gnome.Devhelp.desktop.in.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = icons +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = libdevhelp-3.0.pc +assistantdir = $(datadir)/devhelp/assistant +assistant_DATA = \ + assistant.js \ + assistant.css + +gsettings_SCHEMAS = org.gnome.devhelp.gschema.xml +appstream_in_files = org.gnome.Devhelp.appdata.xml.in +appstream_XML = $(appstream_in_files:.xml.in=.xml) +desktopdir = $(datadir)/applications +desktop_in_files = org.gnome.Devhelp.desktop.in +desktop_DATA = $(desktop_in_files:.desktop.in=.desktop) +dbusservicedir = $(datadir)/dbus-1/services +dbusservice_DATA = org.gnome.Devhelp.service +man_MANS = devhelp.1 +EXTRA_DIST = \ + libdevhelp-3.0.pc.in \ + $(desktop_in_files) \ + $(gsettings_SCHEMAS) \ + $(assistant_DATA) \ + $(man_MANS) \ + $(appstream_in_files) + +CLEANFILES = \ + $(DESKTOP_FILES) \ + $(defaults_DATA) \ + $(desktop_DATA) \ + $(dbusservice_DATA) \ + $(appstream_XML) + +all: all-recursive + +.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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign data/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 +$(am__aclocal_m4_deps): +libdevhelp-3.0.pc: $(top_builddir)/config.status $(srcdir)/libdevhelp-3.0.pc.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ +org.gnome.Devhelp.desktop.in: $(top_builddir)/config.status $(srcdir)/org.gnome.Devhelp.desktop.in.in + cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-man1: $(man_MANS) + @$(NORMAL_INSTALL) + @list1=''; \ + list2='$(man_MANS)'; \ + test -n "$(man1dir)" \ + && test -n "`echo $$list1$$list2`" \ + || exit 0; \ + echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \ + { for i in $$list1; do echo "$$i"; done; \ + if test -n "$$list2"; then \ + for i in $$list2; do echo "$$i"; done \ + | sed -n '/\.1[a-z]*$$/p'; \ + fi; \ + } | while read p; do \ + if test -f $$p; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; echo "$$p"; \ + done | \ + sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \ + sed 'N;N;s,\n, ,g' | { \ + list=; while read file base inst; do \ + if test "$$base" = "$$inst"; then list="$$list $$file"; else \ + echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \ + $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \ + fi; \ + done; \ + for i in $$list; do echo "$$i"; done | $(am__base_list) | \ + while read files; do \ + test -z "$$files" || { \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \ + done; } + +uninstall-man1: + @$(NORMAL_UNINSTALL) + @list=''; test -n "$(man1dir)" || exit 0; \ + files=`{ for i in $$list; do echo "$$i"; done; \ + l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \ + sed -n '/\.1[a-z]*$$/p'; \ + } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \ + -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \ + dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir) +install-assistantDATA: $(assistant_DATA) + @$(NORMAL_INSTALL) + @list='$(assistant_DATA)'; test -n "$(assistantdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(assistantdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(assistantdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(assistantdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(assistantdir)" || exit $$?; \ + done + +uninstall-assistantDATA: + @$(NORMAL_UNINSTALL) + @list='$(assistant_DATA)'; test -n "$(assistantdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(assistantdir)'; $(am__uninstall_files_from_dir) +install-dbusserviceDATA: $(dbusservice_DATA) + @$(NORMAL_INSTALL) + @list='$(dbusservice_DATA)'; test -n "$(dbusservicedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(dbusservicedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(dbusservicedir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(dbusservicedir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(dbusservicedir)" || exit $$?; \ + done + +uninstall-dbusserviceDATA: + @$(NORMAL_UNINSTALL) + @list='$(dbusservice_DATA)'; test -n "$(dbusservicedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(dbusservicedir)'; $(am__uninstall_files_from_dir) +install-desktopDATA: $(desktop_DATA) + @$(NORMAL_INSTALL) + @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(desktopdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(desktopdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(desktopdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(desktopdir)" || exit $$?; \ + done + +uninstall-desktopDATA: + @$(NORMAL_UNINSTALL) + @list='$(desktop_DATA)'; test -n "$(desktopdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(desktopdir)'; $(am__uninstall_files_from_dir) +install-pkgconfigDATA: $(pkgconfig_DATA) + @$(NORMAL_INSTALL) + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(pkgconfigdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(pkgconfigdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(pkgconfigdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(pkgconfigdir)" || exit $$?; \ + done + +uninstall-pkgconfigDATA: + @$(NORMAL_UNINSTALL) + @list='$(pkgconfig_DATA)'; test -n "$(pkgconfigdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(pkgconfigdir)'; $(am__uninstall_files_from_dir) + +# 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. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + 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; \ + ($(am__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" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + 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 || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +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)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile $(MANS) $(DATA) +installdirs: installdirs-recursive +installdirs-am: + for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(assistantdir)" "$(DESTDIR)$(dbusservicedir)" "$(DESTDIR)$(desktopdir)" "$(DESTDIR)$(pkgconfigdir)"; 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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: install-assistantDATA install-dbusserviceDATA \ + install-desktopDATA install-man install-pkgconfigDATA + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: install-man1 + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: uninstall-assistantDATA uninstall-dbusserviceDATA \ + uninstall-desktopDATA uninstall-man uninstall-pkgconfigDATA + +uninstall-man: uninstall-man1 + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-assistantDATA install-data \ + install-data-am install-dbusserviceDATA install-desktopDATA \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-man1 install-pdf install-pdf-am \ + install-pkgconfigDATA install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs installdirs-am \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-assistantDATA \ + uninstall-dbusserviceDATA uninstall-desktopDATA uninstall-man \ + uninstall-man1 uninstall-pkgconfigDATA + +.PRECIOUS: Makefile + +@GSETTINGS_RULES@ +@APPSTREAM_XML_RULES@ + +$(appstream_XML): $(appstream_in_files) + $(AM_V_GEN) $(MSGFMT) --xml --template $< -d $(top_srcdir)/po -o $@ + +$(desktop_DATA): $(desktop_in_files) + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ + +org.gnome.Devhelp.service: Makefile + $(AM_V_GEN) (echo '[D-BUS Service]'; \ + echo 'Name=org.gnome.Devhelp'; \ + echo 'Exec=${bindir}/devhelp --gapplication-service') > $@.tmp && \ + mv $@.tmp $@ + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/data/assistant.css b/data/assistant.css new file mode 100644 index 0000000..afeb215 --- /dev/null +++ b/data/assistant.css @@ -0,0 +1,106 @@ +body { + margin: 0; + padding: 0; +} + +body * { + font-size: 9pt; +} + +a { + text-decoration: none; +} + +.title { + font-size: 11pt; + margin: 6pt; + + color: #a52a2a; +} +.title a { + font-size: 11pt; + + color: #a52a2a; +} +.subtitle { + font-size: 9pt; + margin: 6pt; + + color: #a52a2a; +} + +.content { + margin: 6pt; + line-height: 1.3em; +} + +div.book { + display: none; + position: absolute; + right: 6pt; + top: 6pt; + color: #a52a2a; +} + +div.warning { + color: #A52A2A; + margin: 0 !important; +} +div.warning h3 { + background: inherit; + padding: 0; + margin: 0; + font-size: inherit; +} + +div.note { + margin: 0 !important; +} +div.note h3 { + padding: 0; + margin: 0; + font-size: inherit; +} + +p { + margin-top: 0; + margin-left: 2pt; +} + +div.variablelist { + padding: 6pt; + background: #dddddd; + -webkit-border-radius: 5px; +} + +code { + font-family: "Bitstream Vera Sans Mono", Monaco, Courier, monospace; + font-size: 8pt; +} + +pre.programlisting { + font-family: "Bitstream Vera Sans Mono", Monaco, Courier, monospace; + font-size: 8pt; + padding: 6pt; + background: #dddddd; + -webkit-border-radius: 5px; + overflow: hidden; +} + +pre.programlisting a { + font-family: "Bitstream Vera Sans Mono", Monaco, Courier, monospace; + font-size: 8pt; +} + +div.variablelist { + margin-bottom: 6pt; +} + +div.variablelist * { + vertical-align: top; + line-height: 1.3em; +} + +hr { + display: none; +} diff --git a/data/assistant.js b/data/assistant.js new file mode 100644 index 0000000..29d259d --- /dev/null +++ b/data/assistant.js @@ -0,0 +1,200 @@ +function strStrip(str) +{ + return str.replace(/^\s*(.*?)\s*$/, "$1"); +} + +function strCompactWhitespace(str) +{ + var length; + var i; + var ret; + var whitespace_count = 0; + + str = str.replace(/\t/, " "); + + ret = ""; + length = str.length; + i = 0; + while (i < length) { + if (str[i] == " ") { + whitespace_count++; + } else { + if (whitespace_count > 0) { + ret += " "; + whitespace_count = 0; + } + ret += str[i]; + } + + i++; + } + + return ret; +} + +function getIndexOfParen(str) +{ + var length = str.length; + + for (var i = 0; i < length; i++) { + if (str[i] == "(") + return i; + } + + return 0; +} + +function getIndexOfLastWord(str) +{ + for (var i = str.length; i >= 0; i--) { + if (str[i] == " ") + return i + 1; + } + + return -1; +} + +function getIndexOfLastWordIgnoreAsterisk(str) +{ + for (var i = str.length; i >= 0; i--) { + if (str[i] == " " || str[i] == "*") + return i + 1; + } + + return -1; +} + +function buildPadding(length) +{ + var str = ""; + + while (length > 0) { + str += " "; + length--; + } + + return str; +} + +function reformatSignature() +{ + var elements = document.getElementsByClassName('programlisting'); + + listing = elements[0]; + + /* Fixup oddly formatted HTML, e.g libxml has
inside the pre + * element. + */ + tmp = listing.innerHTML; + tmp = tmp.replace("
", "\n").replace("\t", " "); + listing.innerHTML = tmp; + + var input = listing.textContent; + var lines = input.split("\n"); + var line; + var i; + + i = 0; + while (line = lines[i]) { + lines[i] = strCompactWhitespace(strStrip(line)); + i++; + } + + var indexOfParen = getIndexOfParen(lines[1]); + var lastWordIndices = Array(lines.length); + var maxIndexOfLastWord = 0; + var maxDiff = 0; + + i = 1; + while (line = lines[i]) { + lastWordIndices[i] = getIndexOfLastWordIgnoreAsterisk(line); + tmp = getIndexOfLastWord(line); + + if (i > 1) { + lastWordIndices[i] += indexOfParen + 1; + tmp += indexOfParen + 1; + } + + if (tmp > maxIndexOfLastWord) + maxIndexOfLastWord = tmp; + + if (lastWordIndices[i] - tmp > maxDiff) + maxDiff = lastWordIndices[i] - tmp; + + i++; + } + + maxIndexOfLastWord += maxDiff; + + // Now get the formatted text. + var formattedLines = listing.innerHTML.split("\n"); + + i = 0; + while (line = formattedLines[i]) { + formattedLines[i] = strCompactWhitespace(strStrip(line)); + i++; + } + + var formattedLastWordIndices = Array(formattedLines.length); + + i = 1; + while (line = formattedLines[i]) { + formattedLastWordIndices[i] = getIndexOfLastWord(line); + + if (i > 1) + formattedLastWordIndices[i] += indexOfParen + 1; + + i++; + } + + padding = buildPadding(indexOfParen + 1); + i = 2; + while (line = formattedLines[i]) { + formattedLines[i] = padding + line; + i++; + } + + i = 1; + while (line = formattedLines[i]) { + padding = buildPadding(maxIndexOfLastWord - lastWordIndices[i]); + formattedLines[i] = line.substr(0, formattedLastWordIndices[i]) + + padding + line.substr(formattedLastWordIndices[i]); + + i++; + } + + var output = ""; + i = 0; + while (line = formattedLines[i]) { + output = output + line + "\n"; + i++; + } + + listing.innerHTML = output; +} + +function cleanupSignature() +{ + var elements = document.getElementsByClassName('programlisting'); + + listing = elements[0]; + + var input = listing.innerHTML; + var lines = input.split("\n"); + + var line; + var i = 0; + while (line = lines[i]) { + lines[i] = strCompactWhitespace(strStrip(line)); + i++; + } + + var output = ""; + i = 0; + while (line = lines[i]) { + output = output + line + "\n"; + i++; + } + + listing.innerHTML = output; +} diff --git a/data/devhelp.1 b/data/devhelp.1 new file mode 100644 index 0000000..8017791 --- /dev/null +++ b/data/devhelp.1 @@ -0,0 +1,38 @@ +.TH "devhelp" "1" "" "" "devhelp" +.SH "NAME" +.LP +devhelp \- An API documentation browser +.SH "SYNTAX" +.LP +devhelp [\fIOPTIONS\fP] +.SH "DESCRIPTION" +.LP +Devhelp is an API documentation browser for GNOME. +.br +.SH "OPTIONS" +.LP +.TP +\fB\-s, \-\-search\fR=KEYWORD +Search for a keyword (function, symbol...). +.LP +.TP +\fB\-a, \-\-search-assistant\fR=KEYWORD +Search and display any hit in the assistant window. +.SH "EXAMPLES" +.LP +To run this program the standard way type: +.LP +devhelp +.LP +If you would like to search for a function, type: +.LP +devhelp \-s search-string +.SH "AUTHORS" +.LP +Devhelp was written by Johan Dahlin , Mikael Hallendal +, Richard Hult , Frederic Peters +, Aleksander Morgado , and +Ignacio Casal Quinteiro . +.LP +This manual page is Copyright (c) 2001 Johan Dahlin and Copyright(c) 2015 Frederic Peters . +It has been written for the Debian GNU/Linux distribution and is distributed under the GNU General Public License. As such, it may be used, modified and distributed by anyone else as long as this copyright notice is preserved. diff --git a/data/icons/16x16/devhelp.png b/data/icons/16x16/devhelp.png new file mode 100644 index 0000000..b23baac Binary files /dev/null and b/data/icons/16x16/devhelp.png differ diff --git a/data/icons/22x22/devhelp.png b/data/icons/22x22/devhelp.png new file mode 100644 index 0000000..ebd501e Binary files /dev/null and b/data/icons/22x22/devhelp.png differ diff --git a/data/icons/24x24/devhelp.png b/data/icons/24x24/devhelp.png new file mode 100644 index 0000000..779c1ba Binary files /dev/null and b/data/icons/24x24/devhelp.png differ diff --git a/data/icons/256x256/devhelp.png b/data/icons/256x256/devhelp.png new file mode 100644 index 0000000..aca94bc Binary files /dev/null and b/data/icons/256x256/devhelp.png differ diff --git a/data/icons/32x32/devhelp.png b/data/icons/32x32/devhelp.png new file mode 100644 index 0000000..752a42f Binary files /dev/null and b/data/icons/32x32/devhelp.png differ diff --git a/data/icons/48x48/devhelp.png b/data/icons/48x48/devhelp.png new file mode 100644 index 0000000..9d9d31f Binary files /dev/null and b/data/icons/48x48/devhelp.png differ diff --git a/data/icons/Makefile.am b/data/icons/Makefile.am new file mode 100644 index 0000000..722b21e --- /dev/null +++ b/data/icons/Makefile.am @@ -0,0 +1,45 @@ +icon16dir = $(datadir)/icons/hicolor/16x16/apps +icon16_DATA = 16x16/devhelp.png + +icon22dir = $(datadir)/icons/hicolor/22x22/apps +icon22_DATA = 22x22/devhelp.png + +icon24dir = $(datadir)/icons/hicolor/24x24/apps +icon24_DATA = 24x24/devhelp.png + +icon32dir = $(datadir)/icons/hicolor/32x32/apps +icon32_DATA = 32x32/devhelp.png + +icon48dir = $(datadir)/icons/hicolor/48x48/apps +icon48_DATA = 48x48/devhelp.png + +icon256dir = $(datadir)/icons/hicolor/256x256/apps +icon256_DATA = 256x256/devhelp.png + +iconscalabledir = $(datadir)/icons/hicolor/symbolic/apps +iconscalable_DATA = symbolic/devhelp-symbolic.svg + +gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor + +install-data-hook: update-icon-cache +uninstall-hook: update-icon-cache +update-icon-cache: + @-if test -z "$(DESTDIR)"; then \ + echo "Updating Gtk icon cache."; \ + $(gtk_update_icon_cache); \ + else \ + echo "*** Icon cache not updated. After (un)install, run this:"; \ + echo "*** $(gtk_update_icon_cache)"; \ + fi + +EXTRA_DIST = \ + $(icon16_DATA) \ + $(icon22_DATA) \ + $(icon24_DATA) \ + $(icon32_DATA) \ + $(icon48_DATA) \ + $(icon256_DATA) \ + $(iconscalable_DATA) \ + devhelp.svg + +-include $(top_srcdir)/git.mk diff --git a/data/icons/Makefile.in b/data/icons/Makefile.in new file mode 100644 index 0000000..badfdf5 --- /dev/null +++ b/data/icons/Makefile.in @@ -0,0 +1,756 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = data/icons +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(icon16dir)" "$(DESTDIR)$(icon22dir)" \ + "$(DESTDIR)$(icon24dir)" "$(DESTDIR)$(icon256dir)" \ + "$(DESTDIR)$(icon32dir)" "$(DESTDIR)$(icon48dir)" \ + "$(DESTDIR)$(iconscalabledir)" +DATA = $(icon16_DATA) $(icon22_DATA) $(icon24_DATA) $(icon256_DATA) \ + $(icon32_DATA) $(icon48_DATA) $(iconscalable_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +icon16dir = $(datadir)/icons/hicolor/16x16/apps +icon16_DATA = 16x16/devhelp.png +icon22dir = $(datadir)/icons/hicolor/22x22/apps +icon22_DATA = 22x22/devhelp.png +icon24dir = $(datadir)/icons/hicolor/24x24/apps +icon24_DATA = 24x24/devhelp.png +icon32dir = $(datadir)/icons/hicolor/32x32/apps +icon32_DATA = 32x32/devhelp.png +icon48dir = $(datadir)/icons/hicolor/48x48/apps +icon48_DATA = 48x48/devhelp.png +icon256dir = $(datadir)/icons/hicolor/256x256/apps +icon256_DATA = 256x256/devhelp.png +iconscalabledir = $(datadir)/icons/hicolor/symbolic/apps +iconscalable_DATA = symbolic/devhelp-symbolic.svg +gtk_update_icon_cache = gtk-update-icon-cache -f -t $(datadir)/icons/hicolor +EXTRA_DIST = \ + $(icon16_DATA) \ + $(icon22_DATA) \ + $(icon24_DATA) \ + $(icon32_DATA) \ + $(icon48_DATA) \ + $(icon256_DATA) \ + $(iconscalable_DATA) \ + devhelp.svg + +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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign data/icons/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign data/icons/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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-icon16DATA: $(icon16_DATA) + @$(NORMAL_INSTALL) + @list='$(icon16_DATA)'; test -n "$(icon16dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon16dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon16dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon16dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon16dir)" || exit $$?; \ + done + +uninstall-icon16DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon16_DATA)'; test -n "$(icon16dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon16dir)'; $(am__uninstall_files_from_dir) +install-icon22DATA: $(icon22_DATA) + @$(NORMAL_INSTALL) + @list='$(icon22_DATA)'; test -n "$(icon22dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon22dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon22dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon22dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon22dir)" || exit $$?; \ + done + +uninstall-icon22DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon22_DATA)'; test -n "$(icon22dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon22dir)'; $(am__uninstall_files_from_dir) +install-icon24DATA: $(icon24_DATA) + @$(NORMAL_INSTALL) + @list='$(icon24_DATA)'; test -n "$(icon24dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon24dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon24dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon24dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon24dir)" || exit $$?; \ + done + +uninstall-icon24DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon24_DATA)'; test -n "$(icon24dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon24dir)'; $(am__uninstall_files_from_dir) +install-icon256DATA: $(icon256_DATA) + @$(NORMAL_INSTALL) + @list='$(icon256_DATA)'; test -n "$(icon256dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon256dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon256dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon256dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon256dir)" || exit $$?; \ + done + +uninstall-icon256DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon256_DATA)'; test -n "$(icon256dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon256dir)'; $(am__uninstall_files_from_dir) +install-icon32DATA: $(icon32_DATA) + @$(NORMAL_INSTALL) + @list='$(icon32_DATA)'; test -n "$(icon32dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon32dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon32dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon32dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon32dir)" || exit $$?; \ + done + +uninstall-icon32DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon32_DATA)'; test -n "$(icon32dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon32dir)'; $(am__uninstall_files_from_dir) +install-icon48DATA: $(icon48_DATA) + @$(NORMAL_INSTALL) + @list='$(icon48_DATA)'; test -n "$(icon48dir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(icon48dir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(icon48dir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(icon48dir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(icon48dir)" || exit $$?; \ + done + +uninstall-icon48DATA: + @$(NORMAL_UNINSTALL) + @list='$(icon48_DATA)'; test -n "$(icon48dir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(icon48dir)'; $(am__uninstall_files_from_dir) +install-iconscalableDATA: $(iconscalable_DATA) + @$(NORMAL_INSTALL) + @list='$(iconscalable_DATA)'; test -n "$(iconscalabledir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(iconscalabledir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(iconscalabledir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(iconscalabledir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(iconscalabledir)" || exit $$?; \ + done + +uninstall-iconscalableDATA: + @$(NORMAL_UNINSTALL) + @list='$(iconscalable_DATA)'; test -n "$(iconscalabledir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(iconscalabledir)'; $(am__uninstall_files_from_dir) +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 $(DATA) +installdirs: + for dir in "$(DESTDIR)$(icon16dir)" "$(DESTDIR)$(icon22dir)" "$(DESTDIR)$(icon24dir)" "$(DESTDIR)$(icon256dir)" "$(DESTDIR)$(icon32dir)" "$(DESTDIR)$(icon48dir)" "$(DESTDIR)$(iconscalabledir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-icon16DATA install-icon22DATA \ + install-icon24DATA install-icon256DATA install-icon32DATA \ + install-icon48DATA install-iconscalableDATA + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) install-data-hook +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +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 mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-icon16DATA uninstall-icon22DATA \ + uninstall-icon24DATA uninstall-icon256DATA \ + uninstall-icon32DATA uninstall-icon48DATA \ + uninstall-iconscalableDATA + @$(NORMAL_INSTALL) + $(MAKE) $(AM_MAKEFLAGS) uninstall-hook +.MAKE: install-am install-data-am install-strip uninstall-am + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am \ + install-data-hook install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am \ + install-icon16DATA install-icon22DATA install-icon24DATA \ + install-icon256DATA install-icon32DATA install-icon48DATA \ + install-iconscalableDATA install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags-am uninstall uninstall-am uninstall-hook \ + uninstall-icon16DATA uninstall-icon22DATA uninstall-icon24DATA \ + uninstall-icon256DATA uninstall-icon32DATA \ + uninstall-icon48DATA uninstall-iconscalableDATA + +.PRECIOUS: Makefile + + +install-data-hook: update-icon-cache +uninstall-hook: update-icon-cache +update-icon-cache: + @-if test -z "$(DESTDIR)"; then \ + echo "Updating Gtk icon cache."; \ + $(gtk_update_icon_cache); \ + else \ + echo "*** Icon cache not updated. After (un)install, run this:"; \ + echo "*** $(gtk_update_icon_cache)"; \ + fi + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/data/icons/devhelp.svg b/data/icons/devhelp.svg new file mode 100644 index 0000000..1eaee55 --- /dev/null +++ b/data/icons/devhelp.svg @@ -0,0 +1,2447 @@ + + + + + + + + SEtroubleshoot Icon + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + Máirín Duffy + + + + + SEtroubleshoot Icon + + + security + alert + selinux + + + 30 April 2010 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + D + D + D + D + D + D + D + D + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + D + D + + + + + + + + + + + + + + + + + + + + + + D + + + + + + + + diff --git a/data/icons/symbolic/devhelp-symbolic.svg b/data/icons/symbolic/devhelp-symbolic.svg new file mode 100644 index 0000000..5981d7c --- /dev/null +++ b/data/icons/symbolic/devhelp-symbolic.svg @@ -0,0 +1,25 @@ + + + + + + + + image/svg+xml + + Gnome Symbolic Icon Theme + + + + + + + Gnome Symbolic Icon Theme + + + + + + + + diff --git a/data/libdevhelp-3.0.pc.in b/data/libdevhelp-3.0.pc.in new file mode 100644 index 0000000..174e256 --- /dev/null +++ b/data/libdevhelp-3.0.pc.in @@ -0,0 +1,12 @@ +prefix=@prefix@ +exec_prefix=@exec_prefix@ +libdir=@libdir@ +includedir=@includedir@ + +Name: devhelp +Description: devhelp +Requires: @AX_PACKAGE_REQUIRES@ +Requires.private: @AX_PACKAGE_REQUIRES_PRIVATE@ +Version: @VERSION@ +Libs: -L${libdir} -ldevhelp-3 +Cflags: -I${includedir}/devhelp-3.0 diff --git a/data/org.gnome.Devhelp.appdata.xml.in b/data/org.gnome.Devhelp.appdata.xml.in new file mode 100644 index 0000000..5203be4 --- /dev/null +++ b/data/org.gnome.Devhelp.appdata.xml.in @@ -0,0 +1,44 @@ + + + org.gnome.Devhelp.desktop + CC0-1.0 + GPL-2.0+ + Devhelp + A developer tool for browsing and searching API documentation + +

+ Devhelp is a developer tool for browsing and searching API documentation. + It provides an easy way to navigate through libraries and to search by + function, struct, or macro. +

+

+ The documentation must be installed locally, so an internet connection is + not needed to use Devhelp. +

+

+ Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are + well supported. But other development platforms can be supported as well, + as long as the API documentation is available in HTML and a *.devhelp2 + index file is generated. +

+

+ Devhelp integrates with other applications such as Glade, Builder or + Anjuta, and plugins are available for different text editors (gedit, Vim, + Emacs, Geany, …). +

+
+ https://wiki.gnome.org/Apps/Devhelp/ + https://bugzilla.gnome.org/browse.cgi?product=devhelp + http://www.gnome.org/friends/ + + + https://people.gnome.org/~swilmet/devhelp/screenshot-1.png + + + https://people.gnome.org/~swilmet/devhelp/screenshot-2.png + + + GNOME + devhelp + swilmet@gnome.org +
diff --git a/data/org.gnome.Devhelp.desktop.in b/data/org.gnome.Devhelp.desktop.in new file mode 100644 index 0000000..f0b8739 --- /dev/null +++ b/data/org.gnome.Devhelp.desktop.in @@ -0,0 +1,18 @@ +[Desktop Entry] +Name=Devhelp +Comment=A developer tool for browsing and searching API documentation +GenericName=API Documentation Browser +# Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +Keywords=documentation;information;manual;developer;api; +Exec=devhelp +Terminal=false +Type=Application +# Translators: Do NOT translate or transliterate this text (this is an icon file name)! +Icon=devhelp +Categories=GNOME;GTK;Development; +StartupNotify=true +X-GNOME-Bugzilla-Bugzilla=GNOME +X-GNOME-Bugzilla-Product=devhelp +X-GNOME-Bugzilla-Component=General +X-GNOME-Bugzilla-Version=3.28.1 +DBusActivatable=true diff --git a/data/org.gnome.Devhelp.desktop.in.in b/data/org.gnome.Devhelp.desktop.in.in new file mode 100644 index 0000000..f1d52ad --- /dev/null +++ b/data/org.gnome.Devhelp.desktop.in.in @@ -0,0 +1,18 @@ +[Desktop Entry] +Name=Devhelp +Comment=A developer tool for browsing and searching API documentation +GenericName=API Documentation Browser +# Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +Keywords=documentation;information;manual;developer;api; +Exec=devhelp +Terminal=false +Type=Application +# Translators: Do NOT translate or transliterate this text (this is an icon file name)! +Icon=devhelp +Categories=GNOME;GTK;Development; +StartupNotify=true +X-GNOME-Bugzilla-Bugzilla=GNOME +X-GNOME-Bugzilla-Product=devhelp +X-GNOME-Bugzilla-Component=General +X-GNOME-Bugzilla-Version=@VERSION@ +DBusActivatable=true diff --git a/data/org.gnome.devhelp.gschema.xml b/data/org.gnome.devhelp.gschema.xml new file mode 100644 index 0000000..030f95c --- /dev/null +++ b/data/org.gnome.devhelp.gschema.xml @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + false + Main window maximized state + Whether the main window should start maximized. + + + 1000 + Width of the main window + The width of the main window. + + + 500 + Height of main window + The height of the main window. + + + + + 300 + Width of the index and search pane + The width of the index and search pane. + + + + + [] + Books disabled + List of books disabled by the user. + + + false + Group by language + Whether books should be grouped by language in the UI + + + + + + + + 350 + Width of the assistant window + The width of the assistant window. + + + 400 + Height of assistant window + The height of the assistant window. + + + + + true + Use system fonts + Use the system default fonts. + + + 'Sans 12' + Font for text + Font for text with variable width. + + + 'Monospace 12' + Font for fixed width text + Font for text with fixed width, such as code examples. + + + diff --git a/depcomp b/depcomp new file mode 100755 index 0000000..b39f98f --- /dev/null +++ b/depcomp @@ -0,0 +1,791 @@ +#! /bin/sh +# depcomp - compile a program generating dependencies as side-effects + +scriptversion=2016-01-11.22; # UTC + +# Copyright (C) 1999-2017 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, see . + +# 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 outputting dependencies. + libtool Whether libtool is used (yes/no). + +Report bugs to . +EOF + exit $? + ;; + -v | --v*) + echo "depcomp $scriptversion" + exit $? + ;; +esac + +# Get the directory component of the given path, and save it in the +# global variables '$dir'. Note that this directory component will +# be either empty or ending with a '/' character. This is deliberate. +set_dir_from () +{ + case $1 in + */*) dir=`echo "$1" | sed -e 's|/[^/]*$|/|'`;; + *) dir=;; + esac +} + +# Get the suffix-stripped basename of the given path, and save it the +# global variable '$base'. +set_base_from () +{ + base=`echo "$1" | sed -e 's|^.*/||' -e 's/\.[^.]*$//'` +} + +# If no dependency file was actually created by the compiler invocation, +# we still have to create a dummy depfile, to avoid errors with the +# Makefile "include basename.Plo" scheme. +make_dummy_depfile () +{ + echo "#dummy" > "$depfile" +} + +# Factor out some common post-processing of the generated depfile. +# Requires the auxiliary global variable '$tmpdepfile' to be set. +aix_post_process_depfile () +{ + # If the compiler actually managed to produce a dependency file, + # post-process it. + if test -f "$tmpdepfile"; then + # Each line is of the form 'foo.o: dependency.h'. + # Do two passes, one to just change these to + # $object: dependency.h + # and one to simply output + # dependency.h: + # which is needed to avoid the deleted-header problem. + { sed -e "s,^.*\.[$lower]*:,$object:," < "$tmpdepfile" + sed -e "s,^.*\.[$lower]*:[$tab ]*,," -e 's,$,:,' < "$tmpdepfile" + } > "$depfile" + rm -f "$tmpdepfile" + else + make_dummy_depfile + fi +} + +# A tabulation character. +tab=' ' +# A newline character. +nl=' +' +# Character ranges might be problematic outside the C locale. +# These definitions help. +upper=ABCDEFGHIJKLMNOPQRSTUVWXYZ +lower=abcdefghijklmnopqrstuvwxyz +digits=0123456789 +alpha=${upper}${lower} + +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" + +# Avoid interferences from the environment. +gccflag= dashmflag= + +# 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 + +cygpath_u="cygpath -u -f -" +if test "$depmode" = msvcmsys; then + # This is just like msvisualcpp but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvisualcpp +fi + +if test "$depmode" = msvc7msys; then + # This is just like msvc7 but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u='sed s,\\\\,/,g' + depmode=msvc7 +fi + +if test "$depmode" = xlc; then + # IBM C/C++ Compilers xlc/xlC can output gcc-like dependency information. + gccflag=-qmakedep=gcc,-MF + depmode=gcc +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. +## Unfortunately, FreeBSD c89 acceptance of flags depends upon +## the command line argument order; so add the flags where they +## appear in depend2.am. Note that the slowdown incurred here +## affects only configure: in makefiles, %FASTDEP% shortcuts this. + for arg + do + case $arg in + -c) set fnord "$@" -MT "$object" -MD -MP -MF "$tmpdepfile" "$arg" ;; + *) set fnord "$@" "$arg" ;; + esac + shift # fnord + shift # $arg + done + "$@" + stat=$? + if test $stat -ne 0; then + rm -f "$tmpdepfile" + exit $stat + fi + mv "$tmpdepfile" "$depfile" + ;; + +gcc) +## Note that this doesn't just cater to obsosete pre-3.x GCC compilers. +## but also to in-use compilers like IMB xlc/xlC and the HP C compiler. +## (see the conditional assignment to $gccflag above). +## 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). Also, it might not be +## supported by the other compilers which use the 'gcc' depmode. +## - 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 -ne 0; then + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # 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. +## 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. hp depmode also adds that space, but also prefixes the VPATH +## to the object. Take care to not repeat it in the output. +## Some versions of the HPUX 10.20 sed can't process this invocation +## correctly. Breaking it into two sed invocations is a workaround. + tr ' ' "$nl" < "$tmpdepfile" \ + | sed -e 's/^\\$//' -e '/^$/d' -e "s|.*$object$||" -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 -ne 0; then + 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 ' ' "$nl" < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' \ + | tr "$nl" ' ' >> "$depfile" + echo >> "$depfile" + # The second pass generates a dummy entry for each header file. + tr ' ' "$nl" < "$tmpdepfile" \ + | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ + >> "$depfile" + else + make_dummy_depfile + fi + rm -f "$tmpdepfile" + ;; + +xlc) + # 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 + ;; + +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. + set_dir_from "$object" + set_base_from "$object" + if test "$libtool" = yes; then + tmpdepfile1=$dir$base.u + tmpdepfile2=$base.u + tmpdepfile3=$dir.libs/$base.u + "$@" -Wc,-M + else + tmpdepfile1=$dir$base.u + tmpdepfile2=$dir$base.u + tmpdepfile3=$dir$base.u + "$@" -M + fi + stat=$? + if test $stat -ne 0; then + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + do + test -f "$tmpdepfile" && break + done + aix_post_process_depfile + ;; + +tcc) + # tcc (Tiny C Compiler) understand '-MD -MF file' since version 0.9.26 + # FIXME: That version still under development at the moment of writing. + # Make that this statement remains true also for stable, released + # versions. + # It will wrap lines (doesn't matter whether long or short) with a + # trailing '\', as in: + # + # foo.o : \ + # foo.c \ + # foo.h \ + # + # It will put a trailing '\' even on the last line, and will use leading + # spaces rather than leading tabs (at least since its commit 0394caf7 + # "Emit spaces for -MD"). + "$@" -MD -MF "$tmpdepfile" + stat=$? + if test $stat -ne 0; then + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + # Each non-empty line is of the form 'foo.o : \' or ' dep.h \'. + # We have to change lines of the first kind to '$object: \'. + sed -e "s|.*:|$object :|" < "$tmpdepfile" > "$depfile" + # And for each line of the second kind, we have to emit a 'dep.h:' + # dummy dependency, to avoid the deleted-header problem. + sed -n -e 's|^ *\(.*\) *\\$|\1:|p' < "$tmpdepfile" >> "$depfile" + rm -f "$tmpdepfile" + ;; + +## The order of this option in the case statement is important, since the +## shell code in configure will try each of these formats in the order +## listed in this file. A plain '-MD' option would be understood by many +## compilers, so we must ensure this comes after the gcc and icc options. +pgcc) + # Portland's C compiler understands '-MD'. + # Will always output deps to 'file.d' where file is the root name of the + # source file under compilation, even if file resides in a subdirectory. + # The object file name does not affect the name of the '.d' file. + # pgcc 10.2 will output + # foo.o: sub/foo.c sub/foo.h + # and will wrap long lines using '\' : + # foo.o: sub/foo.c ... \ + # sub/foo.h ... \ + # ... + set_dir_from "$object" + # Use the source, not the object, to determine the base name, since + # that's sadly what pgcc will do too. + set_base_from "$source" + tmpdepfile=$base.d + + # For projects that build the same source file twice into different object + # files, the pgcc approach of using the *source* file root name can cause + # problems in parallel builds. Use a locking strategy to avoid stomping on + # the same $tmpdepfile. + lockdir=$base.d-lock + trap " + echo '$0: caught signal, cleaning up...' >&2 + rmdir '$lockdir' + exit 1 + " 1 2 13 15 + numtries=100 + i=$numtries + while test $i -gt 0; do + # mkdir is a portable test-and-set. + if mkdir "$lockdir" 2>/dev/null; then + # This process acquired the lock. + "$@" -MD + stat=$? + # Release the lock. + rmdir "$lockdir" + break + else + # If the lock is being held by a different process, wait + # until the winning process is done or we timeout. + while test -d "$lockdir" && test $i -gt 0; do + sleep 1 + i=`expr $i - 1` + done + fi + i=`expr $i - 1` + done + trap - 1 2 13 15 + if test $i -le 0; then + echo "$0: failed to acquire lock after $numtries attempts" >&2 + echo "$0: check lockdir '$lockdir'" >&2 + exit 1 + fi + + if test $stat -ne 0; then + 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" + ;; + +hp2) + # The "hp" stanza above does not work with aCC (C++) and HP's ia64 + # compilers, which have integrated preprocessors. The correct option + # to use with these is +Maked; it writes dependencies to a file named + # 'foo.d', which lands next to the object file, wherever that + # happens to be. + # Much of this is similar to the tru64 case; see comments there. + set_dir_from "$object" + set_base_from "$object" + if test "$libtool" = yes; then + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir.libs/$base.d + "$@" -Wc,+Maked + else + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir$base.d + "$@" +Maked + fi + stat=$? + if test $stat -ne 0; then + rm -f "$tmpdepfile1" "$tmpdepfile2" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" + do + test -f "$tmpdepfile" && break + done + if test -f "$tmpdepfile"; then + sed -e "s,^.*\.[$lower]*:,$object:," "$tmpdepfile" > "$depfile" + # Add 'dependent.h:' lines. + sed -ne '2,${ + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" + else + make_dummy_depfile + fi + rm -f "$tmpdepfile" "$tmpdepfile2" + ;; + +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. + set_dir_from "$object" + set_base_from "$object" + + if test "$libtool" = yes; then + # Libtool generates 2 separate objects for the 2 libraries. These + # two compilations output dependencies 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$base.o.d # libtool 1.5 + tmpdepfile2=$dir.libs/$base.o.d # Likewise. + tmpdepfile3=$dir.libs/$base.d # Compaq CCC V6.2-504 + "$@" -Wc,-MD + else + tmpdepfile1=$dir$base.d + tmpdepfile2=$dir$base.d + tmpdepfile3=$dir$base.d + "$@" -MD + fi + + stat=$? + if test $stat -ne 0; then + rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + exit $stat + fi + + for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" + do + test -f "$tmpdepfile" && break + done + # Same post-processing that is required for AIX mode. + aix_post_process_depfile + ;; + +msvc7) + if test "$libtool" = yes; then + showIncludes=-Wc,-showIncludes + else + showIncludes=-showIncludes + fi + "$@" $showIncludes > "$tmpdepfile" + stat=$? + grep -v '^Note: including file: ' "$tmpdepfile" + if test $stat -ne 0; then + rm -f "$tmpdepfile" + exit $stat + fi + rm -f "$depfile" + echo "$object : \\" > "$depfile" + # The first sed program below extracts the file names and escapes + # backslashes for cygpath. The second sed program outputs the file + # name when reading, but also accumulates all include files in the + # hold buffer in order to output them again at the end. This only + # works with sed implementations that can handle large buffers. + sed < "$tmpdepfile" -n ' +/^Note: including file: *\(.*\)/ { + s//\1/ + s/\\/\\\\/g + p +}' | $cygpath_u | sort -u | sed -n ' +s/ /\\ /g +s/\(.*\)/'"$tab"'\1 \\/p +s/.\(.*\) \\/\1:/ +H +$ { + s/.*/'"$tab"'/ + G + p +}' >> "$depfile" + echo >> "$depfile" # make sure the fragment doesn't end with a backslash + rm -f "$tmpdepfile" + ;; + +msvc7msys) + # 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 + ;; + +#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 "X$1" != 'X--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|^[$tab ]*[^:$tab ][^:][^:]*:[$tab ]*|$object: |" > "$tmpdepfile" + rm -f "$depfile" + cat < "$tmpdepfile" > "$depfile" + # Some versions of the HPUX 10.20 sed can't process this sed invocation + # correctly. Breaking it into two sed invocations is a workaround. + tr ' ' "$nl" < "$tmpdepfile" \ + | 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 "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + # X makedepend + shift + cleared=no eat=no + for arg + do + case $cleared in + no) + set ""; shift + cleared=yes ;; + esac + if test $eat = yes; then + eat=no + continue + fi + 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. + -arch) + eat=yes ;; + -*|$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" + # makedepend may prepend the VPATH from the source file name to the object. + # No need to regex-escape $object, excess matching of '.' is harmless. + sed "s|^.*\($object *:\)|\1|" "$tmpdepfile" > "$depfile" + # Some versions of the HPUX 10.20 sed can't process the last invocation + # correctly. Breaking it into two sed invocations is a workaround. + sed '1,2d' "$tmpdepfile" \ + | tr ' ' "$nl" \ + | 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 "X$1" != 'X--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. + "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + + IFS=" " + for arg + do + case "$arg" in + -o) + shift + ;; + $object) + shift + ;; + "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") + set fnord "$@" + shift + shift + ;; + *) + set fnord "$@" "$arg" + shift + shift + ;; + esac + done + "$@" -E 2>/dev/null | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" + rm -f "$depfile" + echo "$object : \\" > "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::'"$tab"'\1 \\:p' >> "$depfile" + echo "$tab" >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" + rm -f "$tmpdepfile" + ;; + +msvcmsys) + # 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 + ;; + +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-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/devhelp.doap b/devhelp.doap new file mode 100644 index 0000000..4f9557f --- /dev/null +++ b/devhelp.doap @@ -0,0 +1,49 @@ + + + + devhelp + A developer tool for browsing and searching API documentation + +Devhelp is a developer tool for browsing and searching API documentation. +It provides an easy way to navigate through libraries and to search by +function, struct, or macro. + +The documentation must be installed locally, so an internet connection is +not needed to use Devhelp. + +Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are +well supported. But other development platforms can be supported as well, +as long as the API documentation is available in HTML and a *.devhelp2 +index file is generated. + +Devhelp integrates with other applications such as Glade, Builder or +Anjuta, and plugins are available for different text editors (gedit, Vim, +Emacs, Geany, …). + + + + + + + + C + + + + Frederic Peters + + fpeters + + + + + Sébastien Wilmet + + swilmet + + + diff --git a/docs/Makefile.am b/docs/Makefile.am new file mode 100644 index 0000000..034926c --- /dev/null +++ b/docs/Makefile.am @@ -0,0 +1,3 @@ +SUBDIRS = reference + +-include $(top_srcdir)/git.mk diff --git a/docs/Makefile.in b/docs/Makefile.in new file mode 100644 index 0000000..e1771ce --- /dev/null +++ b/docs/Makefile.in @@ -0,0 +1,704 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = docs +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = reference +all: all-recursive + +.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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign docs/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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# 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. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + 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; \ + ($(am__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" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + 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 || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +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)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/docs/reference/Makefile.am b/docs/reference/Makefile.am new file mode 100644 index 0000000..4132f04 --- /dev/null +++ b/docs/reference/Makefile.am @@ -0,0 +1,107 @@ + +# The name of the module, e.g. 'glib'. +DOC_MODULE = devhelp + +# Uncomment for versioned docs and specify the version of the module, e.g. '2'. +DOC_MODULE_VERSION = 3 + +# The top-level XML file. +DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml + +# Directories containing the source code. +# gtk-doc will search all .c and .h files beneath these paths +# for inline comments documenting functions and macros. +# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk +DOC_SOURCE_DIR = $(top_srcdir)/src + +# Extra options to pass to gtkdoc-scangobj. Normally not needed. +SCANGOBJ_OPTIONS = + +# Extra options to supply to gtkdoc-scan. +# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" +SCAN_OPTIONS = --rebuild-types + +# Extra options to supply to gtkdoc-mkdb +# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml +MKDB_OPTIONS = --xml-mode --output-format=xml + +# Extra options to supply to gtkdoc-mkhtml +MKHTML_OPTIONS = + +# Extra options to supply to gtkdoc-fixref. Normally not needed. +# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html +FIXXREF_OPTIONS = \ + --extra-dir=$(WEBKITGTK_PREFIX)/share/gtk-doc/html/webkit2gtk-4.0 + +# Used for dependencies. The docs will be rebuilt if any of these change. +# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h +# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c +HFILE_GLOB = $(top_srcdir)/src/*.h +CFILE_GLOB = $(top_srcdir)/src/*.c + +# Extra header to include when scanning, which are not under DOC_SOURCE_DIR +# e.g. EXTRA_HFILES=$(top_srcdir)/contrib/extra.h +EXTRA_HFILES = \ + $(top_builddir)/src/dh-enum-types.h + +# Header files or dirs to ignore when scanning. Use base file/dir names +# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code +IGNORE_HFILES = \ + dh-app.h \ + dh-assistant.h \ + dh-error.h \ + dh-parser.h \ + dh-preferences.h \ + dh-search-context.h \ + dh-settings.h \ + dh-tab.h \ + dh-tab-label.h \ + dh-util.h \ + dh-web-view.h \ + dh-window.h \ + tepl-info-bar.h + +# Images to copy into HTML directory. +# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png +HTML_IMAGES = + +# Extra files that are included by $(DOC_MAIN_SGML_FILE). +# e.g. content_files=running.xml building.xml changes-2.0.xml +content_files = \ + api-breaks.xml \ + $(NULL) + +# Files where gtk-doc abbrevations (#GtkWidget) are expanded +# e.g. expand_content_files=running.xml +expand_content_files = + +# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library. +# Only needed if you are using gtkdoc-scangobj to dynamically query widget +# signals and properties. +# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS) +# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib) +GTKDOC_CFLAGS = \ + -I$(top_srcdir) \ + -I$(top_builddir) \ + -I$(top_builddir)/src \ + $(DEVHELP_CFLAGS) \ + $(NULL) + +GTKDOC_LIBS = \ + $(top_builddir)/src/libdevhelp-3.la \ + $(DEVHELP_LIBS) \ + $(NULL) + +# This includes the standard gtk-doc make rules, copied by gtkdocize. +include $(top_srcdir)/gtk-doc.make + +# Comment this out if you want 'make check' to test you doc status +# and run some sanity checks +#if ENABLE_GTK_DOC +#TESTS_ENVIRONMENT = \ +# DOC_MODULE = $(DOC_MODULE) DOC_MAIN_SGML_FILE = $(DOC_MAIN_SGML_FILE) \ +# SRCDIR = $(abs_srcdir) BUILDDIR = $(abs_builddir) +#TESTS = $(GTKDOC_CHECK) +#endif + +-include $(top_srcdir)/git.mk diff --git a/docs/reference/Makefile.in b/docs/reference/Makefile.in new file mode 100644 index 0000000..9c4959f --- /dev/null +++ b/docs/reference/Makefile.in @@ -0,0 +1,937 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + +# -*- mode: makefile -*- +# +# gtk-doc.make - make rules for gtk-doc +# Copyright (C) 2003 James Henstridge +# 2004-2007 Damon Chaplin +# 2007-2017 Stefan Sauer +# +# 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 3 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, see . + +#################################### +# Everything below here is generic # +#################################### +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = docs/reference +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/gtk-doc.make +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ + +# The name of the module, e.g. 'glib'. +DOC_MODULE = devhelp + +# Uncomment for versioned docs and specify the version of the module, e.g. '2'. +DOC_MODULE_VERSION = 3 + +# The top-level XML file. +DOC_MAIN_SGML_FILE = $(DOC_MODULE)-docs.xml + +# Directories containing the source code. +# gtk-doc will search all .c and .h files beneath these paths +# for inline comments documenting functions and macros. +# e.g. DOC_SOURCE_DIR=$(top_srcdir)/gtk $(top_srcdir)/gdk +DOC_SOURCE_DIR = $(top_srcdir)/src + +# Extra options to pass to gtkdoc-scangobj. Normally not needed. +SCANGOBJ_OPTIONS = + +# Extra options to supply to gtkdoc-scan. +# e.g. SCAN_OPTIONS=--deprecated-guards="GTK_DISABLE_DEPRECATED" +SCAN_OPTIONS = --rebuild-types + +# Extra options to supply to gtkdoc-mkdb +# e.g. MKDB_OPTIONS=--xml-mode --output-format=xml +MKDB_OPTIONS = --xml-mode --output-format=xml + +# Extra options to supply to gtkdoc-mkhtml +MKHTML_OPTIONS = + +# Extra options to supply to gtkdoc-fixref. Normally not needed. +# e.g. FIXXREF_OPTIONS=--extra-dir=../gdk-pixbuf/html --extra-dir=../gdk/html +FIXXREF_OPTIONS = \ + --extra-dir=$(WEBKITGTK_PREFIX)/share/gtk-doc/html/webkit2gtk-4.0 + + +# Used for dependencies. The docs will be rebuilt if any of these change. +# e.g. HFILE_GLOB=$(top_srcdir)/gtk/*.h +# e.g. CFILE_GLOB=$(top_srcdir)/gtk/*.c +HFILE_GLOB = $(top_srcdir)/src/*.h +CFILE_GLOB = $(top_srcdir)/src/*.c + +# Extra header to include when scanning, which are not under DOC_SOURCE_DIR +# e.g. EXTRA_HFILES=$(top_srcdir)/contrib/extra.h +EXTRA_HFILES = \ + $(top_builddir)/src/dh-enum-types.h + + +# Header files or dirs to ignore when scanning. Use base file/dir names +# e.g. IGNORE_HFILES=gtkdebug.h gtkintl.h private_code +IGNORE_HFILES = \ + dh-app.h \ + dh-assistant.h \ + dh-error.h \ + dh-parser.h \ + dh-preferences.h \ + dh-search-context.h \ + dh-settings.h \ + dh-tab.h \ + dh-tab-label.h \ + dh-util.h \ + dh-web-view.h \ + dh-window.h \ + tepl-info-bar.h + + +# Images to copy into HTML directory. +# e.g. HTML_IMAGES=$(top_srcdir)/gtk/stock-icons/stock_about_24.png +HTML_IMAGES = + +# Extra files that are included by $(DOC_MAIN_SGML_FILE). +# e.g. content_files=running.xml building.xml changes-2.0.xml +content_files = \ + api-breaks.xml \ + $(NULL) + + +# Files where gtk-doc abbrevations (#GtkWidget) are expanded +# e.g. expand_content_files=running.xml +expand_content_files = + +# CFLAGS and LDFLAGS for compiling gtkdoc-scangobj with your library. +# Only needed if you are using gtkdoc-scangobj to dynamically query widget +# signals and properties. +# e.g. GTKDOC_CFLAGS=-I$(top_srcdir) -I$(top_builddir) $(GTK_DEBUG_FLAGS) +# e.g. GTKDOC_LIBS=$(top_builddir)/gtk/$(gtktargetlib) +GTKDOC_CFLAGS = \ + -I$(top_srcdir) \ + -I$(top_builddir) \ + -I$(top_builddir)/src \ + $(DEVHELP_CFLAGS) \ + $(NULL) + +GTKDOC_LIBS = \ + $(top_builddir)/src/libdevhelp-3.la \ + $(DEVHELP_LIBS) \ + $(NULL) + +@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +@GTK_DOC_USE_LIBTOOL_FALSE@GTKDOC_RUN = +@GTK_DOC_USE_LIBTOOL_TRUE@GTKDOC_RUN = $(LIBTOOL) --mode=execute + +# We set GPATH here; this gives us semantics for GNU make +# which are more like other make's VPATH, when it comes to +# whether a source that is a target of one rule is then +# searched for in VPATH/GPATH. +# +GPATH = $(srcdir) +TARGET_DIR = $(HTML_DIR)/$(DOC_MODULE) +SETUP_FILES = \ + $(content_files) \ + $(expand_content_files) \ + $(DOC_MAIN_SGML_FILE) \ + $(DOC_MODULE)-sections.txt \ + $(DOC_MODULE)-overrides.txt + +EXTRA_DIST = \ + $(HTML_IMAGES) \ + $(SETUP_FILES) + +DOC_STAMPS = setup-build.stamp scan-build.stamp sgml-build.stamp \ + html-build.stamp pdf-build.stamp \ + sgml.stamp html.stamp pdf.stamp + +SCANOBJ_FILES = \ + $(DOC_MODULE).args \ + $(DOC_MODULE).hierarchy \ + $(DOC_MODULE).interfaces \ + $(DOC_MODULE).prerequisites \ + $(DOC_MODULE).signals + +REPORT_FILES = \ + $(DOC_MODULE)-undocumented.txt \ + $(DOC_MODULE)-undeclared.txt \ + $(DOC_MODULE)-unused.txt + +CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test +@GTK_DOC_BUILD_HTML_FALSE@HTML_BUILD_STAMP = +@GTK_DOC_BUILD_HTML_TRUE@HTML_BUILD_STAMP = html-build.stamp +@GTK_DOC_BUILD_PDF_FALSE@PDF_BUILD_STAMP = +@GTK_DOC_BUILD_PDF_TRUE@PDF_BUILD_STAMP = pdf-build.stamp + +#### setup #### +GTK_DOC_V_SETUP = $(GTK_DOC_V_SETUP_@AM_V@) +GTK_DOC_V_SETUP_ = $(GTK_DOC_V_SETUP_@AM_DEFAULT_V@) +GTK_DOC_V_SETUP_0 = @echo " DOC Preparing build"; + +#### scan #### +GTK_DOC_V_SCAN = $(GTK_DOC_V_SCAN_@AM_V@) +GTK_DOC_V_SCAN_ = $(GTK_DOC_V_SCAN_@AM_DEFAULT_V@) +GTK_DOC_V_SCAN_0 = @echo " DOC Scanning header files"; +GTK_DOC_V_INTROSPECT = $(GTK_DOC_V_INTROSPECT_@AM_V@) +GTK_DOC_V_INTROSPECT_ = $(GTK_DOC_V_INTROSPECT_@AM_DEFAULT_V@) +GTK_DOC_V_INTROSPECT_0 = @echo " DOC Introspecting gobjects"; + +#### xml #### +GTK_DOC_V_XML = $(GTK_DOC_V_XML_@AM_V@) +GTK_DOC_V_XML_ = $(GTK_DOC_V_XML_@AM_DEFAULT_V@) +GTK_DOC_V_XML_0 = @echo " DOC Building XML"; + +#### html #### +GTK_DOC_V_HTML = $(GTK_DOC_V_HTML_@AM_V@) +GTK_DOC_V_HTML_ = $(GTK_DOC_V_HTML_@AM_DEFAULT_V@) +GTK_DOC_V_HTML_0 = @echo " DOC Building HTML"; +GTK_DOC_V_XREF = $(GTK_DOC_V_XREF_@AM_V@) +GTK_DOC_V_XREF_ = $(GTK_DOC_V_XREF_@AM_DEFAULT_V@) +GTK_DOC_V_XREF_0 = @echo " DOC Fixing cross-references"; + +#### pdf #### +GTK_DOC_V_PDF = $(GTK_DOC_V_PDF_@AM_V@) +GTK_DOC_V_PDF_ = $(GTK_DOC_V_PDF_@AM_DEFAULT_V@) +GTK_DOC_V_PDF_0 = @echo " DOC Building PDF"; +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(top_srcdir)/gtk-doc.make $(am__configure_deps) + @for dep in $?; do \ + case '$(am__configure_deps)' in \ + *$$dep*) \ + ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign docs/reference/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign docs/reference/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_srcdir)/gtk-doc.make $(am__empty): + +$(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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \ + else \ + test -f "$(distdir)/$$file" \ + || cp -p $$d/$$file "$(distdir)/$$file" \ + || exit 1; \ + fi; \ + done + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$(top_distdir)" distdir="$(distdir)" \ + dist-hook +check-am: all-am +check: check-am +@ENABLE_GTK_DOC_FALSE@all-local: +all-am: Makefile all-local +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-libtool clean-local mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-local + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-data-local + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic \ + maintainer-clean-local + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-local + +.MAKE: install-am install-strip + +.PHONY: all all-am all-local check check-am clean clean-generic \ + clean-libtool clean-local cscopelist-am ctags-am dist-hook \ + distclean distclean-generic distclean-libtool distclean-local \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am install-data-local \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-html install-html-am install-info install-info-am \ + install-man install-pdf install-pdf-am install-ps \ + install-ps-am install-strip installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + maintainer-clean-local mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ + uninstall-am uninstall-local + +.PRECIOUS: Makefile + + +gtkdoc-check.test: Makefile + $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \ + echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \ + chmod +x $@ + +all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) +.PHONY: all-gtk-doc + +@ENABLE_GTK_DOC_TRUE@all-local: all-gtk-doc + +docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) + +$(REPORT_FILES): sgml-build.stamp + +setup-build.stamp: + -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ + if test "x$$files" != "x" ; then \ + for file in $$files ; do \ + destdir=`dirname $(abs_builddir)/$$file`; \ + test -d "$$destdir" || mkdir -p "$$destdir"; \ + test -f $(abs_srcdir)/$$file && \ + cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \ + done; \ + fi; \ + fi + $(AM_V_at)touch setup-build.stamp + +scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB) + $(GTK_DOC_V_SCAN)_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) + $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \ + scanobj_options=""; \ + gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + scanobj_options="--verbose"; \ + fi; \ + fi; \ + CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \ + gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \ + else \ + for i in $(SCANOBJ_FILES) ; do \ + test -f $$i || touch $$i ; \ + done \ + fi + $(AM_V_at)touch scan-build.stamp + +$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp + @true + +sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent + $(GTK_DOC_V_XML)_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) + $(AM_V_at)touch sgml-build.stamp + +sgml.stamp: sgml-build.stamp + @true + +$(DOC_MAIN_SGML_FILE): sgml-build.stamp + @true + +xml/gtkdocentities.ent: Makefile + $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + ) > $@ + +html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) + $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \ + mkhtml_options=""; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkhtml_options="$$mkhtml_options --verbose"; \ + fi; \ + fi; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ + if test "$$?" = "0"; then \ + mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \ + fi; \ + cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) + -@test "x$(HTML_IMAGES)" = "x" || \ + for file in $(HTML_IMAGES) ; do \ + test -f $(abs_srcdir)/$$file && cp $(abs_srcdir)/$$file $(abs_builddir)/html; \ + test -f $(abs_builddir)/$$file && cp $(abs_builddir)/$$file $(abs_builddir)/html; \ + done; + $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + $(AM_V_at)touch html-build.stamp + +pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) + $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \ + mkpdf_options=""; \ + gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkpdf_options="$$mkpdf_options --verbose"; \ + fi; \ + fi; \ + if test "x$(HTML_IMAGES)" != "x"; then \ + for img in $(HTML_IMAGES); do \ + part=`dirname $$img`; \ + echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \ + if test $$? != 0; then \ + mkpdf_options="$$mkpdf_options --imgdir=$$part"; \ + fi; \ + done; \ + fi; \ + gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) + $(AM_V_at)touch pdf-build.stamp + +############## + +clean-local: + @rm -f *~ *.bak + @rm -rf .libs + @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \ + rm -f $(DOC_MODULE).types; \ + fi + @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-sections" ; then \ + rm -f $(DOC_MODULE)-sections.txt; \ + fi + +distclean-local: + @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \ + $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt + @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + rm -f $(SETUP_FILES) $(DOC_MODULE).types; \ + fi + +maintainer-clean-local: + @rm -rf xml html + +install-data-local: + @installfiles=`echo $(builddir)/html/*`; \ + if test "$$installfiles" = '$(builddir)/html/*'; \ + then echo 1>&2 'Nothing to install' ; \ + else \ + if test -n "$(DOC_MODULE_VERSION)"; then \ + installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ + else \ + installdir="$(DESTDIR)$(TARGET_DIR)"; \ + fi; \ + $(mkinstalldirs) $${installdir} ; \ + for i in $$installfiles; do \ + echo ' $(INSTALL_DATA) '$$i ; \ + $(INSTALL_DATA) $$i $${installdir}; \ + done; \ + if test -n "$(DOC_MODULE_VERSION)"; then \ + mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ + $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ + fi; \ + $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ + fi + +uninstall-local: + @if test -n "$(DOC_MODULE_VERSION)"; then \ + installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ + else \ + installdir="$(DESTDIR)$(TARGET_DIR)"; \ + fi; \ + rm -rf $${installdir} + +# +# Require gtk-doc when making dist +# +@HAVE_GTK_DOC_TRUE@dist-check-gtkdoc: docs +@HAVE_GTK_DOC_FALSE@dist-check-gtkdoc: +@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc is needed to run 'make dist'. ***" +@HAVE_GTK_DOC_FALSE@ @echo "*** gtk-doc was not found when 'configure' ran. ***" +@HAVE_GTK_DOC_FALSE@ @echo "*** please install gtk-doc and rerun 'configure'. ***" +@HAVE_GTK_DOC_FALSE@ @false + +dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local + @mkdir $(distdir)/html + @cp ./html/* $(distdir)/html + @-cp ./$(DOC_MODULE).pdf $(distdir)/ + @-cp ./$(DOC_MODULE).types $(distdir)/ + @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/ + @cd $(distdir) && rm -f $(DISTCLEANFILES) + @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html + +.PHONY : dist-hook-local docs + +# This includes the standard gtk-doc make rules, copied by gtkdocize. + +# Comment this out if you want 'make check' to test you doc status +# and run some sanity checks +#if ENABLE_GTK_DOC +#TESTS_ENVIRONMENT = \ +# DOC_MODULE = $(DOC_MODULE) DOC_MAIN_SGML_FILE = $(DOC_MAIN_SGML_FILE) \ +# SRCDIR = $(abs_srcdir) BUILDDIR = $(abs_builddir) +#TESTS = $(GTKDOC_CHECK) +#endif + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/docs/reference/api-breaks.xml b/docs/reference/api-breaks.xml new file mode 100644 index 0000000..c47c2b5 --- /dev/null +++ b/docs/reference/api-breaks.xml @@ -0,0 +1,236 @@ + + + + %gtkdocentities; +]> + + + API Breaks + + + Devhelp is a quite old piece of software (created in 2001), and as every + software, the code evolves during its lifetime. So there are sometimes API + breaks. We try to not break applications depending on the Devhelp API. But + if we see that a certain API is used nowhere else than the Devhelp + application itself (or is dead code), we don't hesitate to break the API to + improve the code. + + + + Currently we try to not break + Anjuta + and gnome-builder. + If your application is not listed and depends on the Devhelp API and is Free + Software, please speak up. + + + + 3.24 -> 3.25.1 + + + + All deprecated APIs have been removed. + + + + + dh-error.h is now private. + + + + + The DhApp, DhAssistant and + DhWindow classes are now private. DhApp is a + subclass of GtkApplication, and an application can have + only one GtkApplication instance, so as-is + DhApp didn't make sense in the library (what if two + different libraries have both a subclass of + GtkApplication?). Since DhAssistant and + DhWindow depend on DhApp, they are now also + private. + + + + + The DhLanguage class is now private, it's currently used + only internally by DhBookManager. + + + + + Due to DhBookManager being now a + singleton, there has been the following API changes: + + + + dh_assistant_view_set_book_manager() has been + removed. + + + + + dh_keyword_model_set_words() has been removed. + + + + + The DhBookTree:book-manager property has been + removed. + + + + + API break for + dh_book_tree_new(). + + + + + The DhSidebar:book-manager property has been + removed. + + + + + The book_manager parameter of + dh_sidebar_new() is now + deprecated. + + + + + + + + + + 3.25.1 -> 3.25.2 + + + + The page parameter of dh_link_new() + has been removed because it was broken in dh-parser.c. + The book parameter has also been moved, to group related + parameters together. + + + + + The dh_link_get_page_name() function has been removed + because it was broken and used nowhere. + + + + + The dh_link_get_type_as_string() function (which took a + DhLink parameter) has been removed, it + has been replaced by dh_link_type_to_string() + which takes a DhLinkType parameter. + + + + + + + 3.26.0 -> 3.27.1 + + + + dh_link_new() has been split in + two, with dh_link_new_book() + to create a DhLink of type + DH_LINK_TYPE_BOOK. + + + + + The dh_link_get_file_name() function has been removed. + + + + + The dh_book_get_path() function has been replaced by + dh_book_get_index_file(). + + + + + The dh_book_new() constructor now + takes a GFile argument instead of a path. + + + + + dh_book_get_name() has been renamed to + dh_book_get_id(). + + + + + dh_book_cmp_by_name() has been renamed to + dh_book_cmp_by_id(). + + + + + dh_link_get_book_name() has been renamed to + dh_link_get_book_title(). + + + + + dh_book_get_keywords() has been renamed to + dh_book_get_links(). + + + + + The ownership transfer of the return values of + dh_book_tree_get_selected_book() + and dh_sidebar_get_selected_book() + have been changed from (transfer none) to (transfer full). + + + + + + + 3.27.1 -> 3.27.2 + + + + dh_book_cmp_by_path() has been removed (dead code). + + + + + The DhBookManager::language-enabled and + DhBookManager::language-disabled signals have been + removed (dead code). + + + + + DhSidebar is now a subclass of + GtkGrid, not + GtkBox. + + + + + dh_sidebar_get_selected_book() has been removed (it was + used only inside DhSidebar). + + + + + dh_book_get_completions() has been replaced by + dh_book_get_completion(). + + + + + diff --git a/docs/reference/devhelp-docs.xml b/docs/reference/devhelp-docs.xml new file mode 100644 index 0000000..900e65d --- /dev/null +++ b/docs/reference/devhelp-docs.xml @@ -0,0 +1,81 @@ + + + + %gtkdocentities; +]> + + + &package_name; Reference Manual + + For &package_string;. + The latest version of this documentation can be found on-line at + https://developer.gnome.org/devhelp/. + + + + + API Reference + + + General + + + + + The Data + + + + + + + Side Panel + + + + + + + Assistant + + + + + Misc + + + + + + + + Annexes + + + Object Hierarchy + + + + + + + API Index + + + + Index of deprecated API + + + + Index of new symbols in 3.26 + + + + Index of new symbols in 3.28 + + + + diff --git a/docs/reference/devhelp-overrides.txt b/docs/reference/devhelp-overrides.txt new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/docs/reference/devhelp-overrides.txt diff --git a/docs/reference/devhelp-sections.txt b/docs/reference/devhelp-sections.txt new file mode 100644 index 0000000..047580e --- /dev/null +++ b/docs/reference/devhelp-sections.txt @@ -0,0 +1,169 @@ +devhelp/devhelp.h + +
+init +Initialization and Finalization +dh_init +dh_finalize +
+ +
+dh-assistant-view +DhAssistantView +dh_assistant_view_new +dh_assistant_view_set_link +dh_assistant_view_search + +DhAssistantViewClass +DH_ASSISTANT_VIEW +DH_ASSISTANT_VIEW_CLASS +DH_ASSISTANT_VIEW_GET_CLASS +DH_IS_ASSISTANT_VIEW +DH_IS_ASSISTANT_VIEW_CLASS +DH_TYPE_ASSISTANT_VIEW +dh_assistant_view_get_type +
+ +
+dh-book +DhBook +dh_book_new +dh_book_get_index_file +dh_book_get_id +dh_book_get_title +dh_book_get_language +dh_book_get_links +dh_book_get_tree +dh_book_get_completion +dh_book_get_enabled +dh_book_set_enabled +dh_book_cmp_by_id +dh_book_cmp_by_title + +DhBookClass +DH_BOOK +DH_BOOK_CLASS +DH_BOOK_GET_CLASS +DH_IS_BOOK +DH_IS_BOOK_CLASS +DH_TYPE_BOOK +dh_book_get_type +
+ +
+dh-book-manager +DhBookManager +dh_book_manager_new +dh_book_manager_get_singleton +dh_book_manager_populate +dh_book_manager_get_books +dh_book_manager_get_group_by_language +dh_book_manager_set_group_by_language + +DhBookManagerClass +DH_BOOK_MANAGER +DH_BOOK_MANAGER_CLASS +DH_BOOK_MANAGER_GET_CLASS +DH_IS_BOOK_MANAGER +DH_IS_BOOK_MANAGER_CLASS +DH_TYPE_BOOK_MANAGER +dh_book_manager_get_type +
+ +
+dh-book-tree +DhBookTree +dh_book_tree_new +dh_book_tree_select_uri +dh_book_tree_get_selected_book + +DhBookTreeClass +DH_BOOK_TREE +DH_BOOK_TREE_CLASS +DH_IS_BOOK_TREE +DH_IS_BOOK_TREE_CLASS +DH_TYPE_BOOK_TREE +dh_book_tree_get_type +
+ +
+dh-completion +DhCompletion +dh_completion_new +dh_completion_add_string +dh_completion_sort +dh_completion_complete +dh_completion_aggregate_complete + +DH_COMPLETION +DH_COMPLETION_CLASS +DH_COMPLETION_GET_CLASS +DH_IS_COMPLETION +DH_IS_COMPLETION_CLASS +DH_TYPE_COMPLETION +DhCompletionClass +DhCompletionPrivate +dh_completion_get_type +
+ +
+dh-keyword-model +DhKeywordModel +dh_keyword_model_new +dh_keyword_model_filter + +DhKeywordModelClass +DH_IS_KEYWORD_MODEL +DH_IS_KEYWORD_MODEL_CLASS +DH_KEYWORD_MODEL +DH_KEYWORD_MODEL_CLASS +DH_KEYWORD_MODEL_GET_CLASS +DH_TYPE_KEYWORD_MODEL +dh_keyword_model_get_type +
+ +
+dh-link +DhLink +DhLinkType +DhLinkFlags +dh_link_new_book +dh_link_new +dh_link_ref +dh_link_unref +dh_link_get_link_type +dh_link_get_flags +dh_link_set_flags +dh_link_get_name +dh_link_match_relative_url +dh_link_belongs_to_page +dh_link_get_uri +dh_link_get_book_title +dh_link_get_book_id +dh_link_compare +dh_link_type_to_string + +DH_TYPE_LINK +DH_TYPE_LINK_FLAGS +DH_TYPE_LINK_TYPE +dh_link_get_type +dh_link_flags_get_type +dh_link_type_get_type +
+ +
+dh-sidebar +DhSidebar +dh_sidebar_new +dh_sidebar_select_uri +dh_sidebar_set_search_string +dh_sidebar_set_search_focus + +DhSidebarClass +DH_IS_SIDEBAR +DH_IS_SIDEBAR_CLASS +DH_SIDEBAR +DH_SIDEBAR_CLASS +DH_TYPE_SIDEBAR +dh_sidebar_get_type +
diff --git a/docs/reference/devhelp.types b/docs/reference/devhelp.types new file mode 100644 index 0000000..fdd6a79 --- /dev/null +++ b/docs/reference/devhelp.types @@ -0,0 +1,10 @@ +dh_assistant_view_get_type +dh_book_get_type +dh_book_manager_get_type +dh_book_tree_get_type +dh_completion_get_type +dh_keyword_model_get_type +dh_link_flags_get_type +dh_link_get_type +dh_link_type_get_type +dh_sidebar_get_type diff --git a/docs/reference/html/DhAssistantView.html b/docs/reference/html/DhAssistantView.html new file mode 100644 index 0000000..ae52df3 --- /dev/null +++ b/docs/reference/html/DhAssistantView.html @@ -0,0 +1,263 @@ + + + + +DhAssistantView: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhAssistantView

+

DhAssistantView — A small “assistant” widget for displaying just one hit

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + +
+GtkWidget * + +dh_assistant_view_new () +
+gboolean + +dh_assistant_view_set_link () +
+gboolean + +dh_assistant_view_search () +
+
+
+

Signals

+
+++++ + + + + + +
voidopen-uri 
+
+
+

Types and Values

+
++++ + + + + +
structDhAssistantView
+
+
+

Object Hierarchy

+
    GObject
+    ╰── GInitiallyUnowned
+        ╰── GtkWidget
+            ╰── GtkContainer
+                ╰── WebKitWebViewBase
+                    ╰── WebKitWebView
+                        ╰── DhAssistantView
+
+
+
+

Implemented Interfaces

+

+DhAssistantView implements + AtkImplementorIface and GtkBuildable.

+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

DhAssistantView is a subclass of WebKitWebView for displaying the +documentation of just one symbol.

+

A possible use-case: in a text editor, pressing a keyboard shortcut could +display this widget for the symbol under the cursor.

+

With the Devhelp application, an assistant can easily be launched with the +command line option --search-assistant.

+
+
+

Functions

+
+

dh_assistant_view_new ()

+
GtkWidget *
+dh_assistant_view_new (void);
+
+

Returns

+

a new DhAssistantView widget.

+

[transfer floating]

+
+
+
+
+

dh_assistant_view_set_link ()

+
gboolean
+dh_assistant_view_set_link (DhAssistantView *view,
+                            DhLink *link);
+

Open link + in the assistant view, if NULL the view will be blanked.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

view

a DhAssistantView.

 

link

a DhLink to set or NULL.

[nullable]
+
+
+

Returns

+

TRUE if the requested link is open, FALSE otherwise.

+
+
+
+
+

dh_assistant_view_search ()

+
gboolean
+dh_assistant_view_search (DhAssistantView *view,
+                          const gchar *str);
+

Search for str + in the current assistant view.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

view

a DhAssistantView.

 

str

the search query.

 
+
+
+

Returns

+

TRUE if str +was found, FALSE otherwise.

+
+
+
+
+

Types and Values

+
+

struct DhAssistantView

+
struct DhAssistantView;
+
+
+
+

Signal Details

+
+

The “open-uri” signal

+
void
+user_function (DhAssistantView *view,
+               gchar           *uri,
+               gpointer         user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

view

the view on which the signal is emitted

 

uri

the uri to open

 

user_data

user data set when the signal handler was connected.

 
+
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhBook.html b/docs/reference/html/DhBook.html new file mode 100644 index 0000000..b7d6366 --- /dev/null +++ b/docs/reference/html/DhBook.html @@ -0,0 +1,698 @@ + + + + +DhBook: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhBook

+

DhBook — A book, usually the documentation for one library

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+DhBook * + +dh_book_new () +
+GFile * + +dh_book_get_index_file () +
const gchar * + +dh_book_get_id () +
const gchar * + +dh_book_get_title () +
const gchar * + +dh_book_get_language () +
+GList * + +dh_book_get_links () +
+GNode * + +dh_book_get_tree () +
+DhCompletion * + +dh_book_get_completion () +
+gboolean + +dh_book_get_enabled () +
+void + +dh_book_set_enabled () +
+gint + +dh_book_cmp_by_id () +
+gint + +dh_book_cmp_by_title () +
+
+
+

Signals

+
+++++ + + + + + + + + + + + + + + + + + + + + + + +
voiddeletedRun Last
voiddisabledRun Last
voidenabledRun Last
voidupdatedRun Last
+
+
+

Types and Values

+
++++ + + + + +
structDhBook
+
+
+

Object Hierarchy

+
    GObject
+    ╰── DhBook
+
+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

A DhBook usually contains the documentation for one library (or +application), for example GLib or GTK+. A DhBook corresponds to one index +file. An index file is a file with the extension *.devhelp, *.devhelp2, +*.devhelp.gz or *.devhelp2.gz.

+

DhBook creates a GFileMonitor on the index file, and emits the +“updated” or “deleted” signal in case the index file has +changed on the filesystem. DhBookManager listens to those DhBook signals, +and emits in turn the “book-deleted” and +“book-created” signals.

+
+
+

Functions

+
+

dh_book_new ()

+
DhBook *
+dh_book_new (GFile *index_file);
+
+

Parameters

+
+++++ + + + + + +

index_file

the index file.

 
+
+
+

Returns

+

a new DhBook object, or NULL if parsing the index file +failed.

+

[nullable]

+
+
+
+
+

dh_book_get_index_file ()

+
GFile *
+dh_book_get_index_file (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the index file.

+

[transfer none]

+
+
+
+
+

dh_book_get_id ()

+
const gchar *
+dh_book_get_id (DhBook *book);
+

Gets the book ID. In the Devhelp index file format version 2, it is actually +the “name”, not the ID, but “book ID” is clearer, “book name” can be confused +with the title.

+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the book ID.

+
+
+
+
+

dh_book_get_title ()

+
const gchar *
+dh_book_get_title (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the book title.

+
+
+
+
+

dh_book_get_language ()

+
const gchar *
+dh_book_get_language (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the programming language used in book +.

+
+
+
+
+

dh_book_get_links ()

+
GList *
+dh_book_get_links (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the list of +all DhLink's part of book +, or NULL if the book is +disabled.

+

[element-type DhLink][transfer none][nullable]

+
+
+
+
+

dh_book_get_tree ()

+
GNode *
+dh_book_get_tree (DhBook *book);
+

Gets the general structure of the book, as a tree. The tree contains only +DhLink's of type DH_LINK_TYPE_BOOK or DH_LINK_TYPE_PAGE. The other +DhLink's are not contained in the tree. To have a list of +all DhLink's part of the book, you need to call +dh_book_get_links().

+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the tree of DhLink's part of the book +, +or NULL if the book is disabled.

+

[transfer none][nullable]

+
+
+
+
+

dh_book_get_completion ()

+
DhCompletion *
+dh_book_get_completion (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

the DhCompletion of book +.

+

[transfer none]

+
+

Since: 3.28

+
+
+
+

dh_book_get_enabled ()

+
gboolean
+dh_book_get_enabled (DhBook *book);
+
+

Parameters

+
+++++ + + + + + +

book

a DhBook.

 
+
+
+

Returns

+

whether the book is enabled.

+
+
+
+
+

dh_book_set_enabled ()

+
void
+dh_book_set_enabled (DhBook *book,
+                     gboolean enabled);
+

Enables or disables the book.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book

a DhBook.

 

enabled

the new value.

 
+
+
+
+
+

dh_book_cmp_by_id ()

+
gint
+dh_book_cmp_by_id (DhBook *a,
+                   DhBook *b);
+

Compares the DhBook's by their IDs, with g_ascii_strcasecmp().

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

a

a DhBook.

 

b

a DhBook.

 
+
+
+

Returns

+

an integer less than, equal to, or greater than zero, if a +is <, == +or > than b +.

+
+
+
+
+

dh_book_cmp_by_title ()

+
gint
+dh_book_cmp_by_title (DhBook *a,
+                      DhBook *b);
+

Compares the DhBook's by their title.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

a

a DhBook.

 

b

a DhBook.

 
+
+
+

Returns

+

an integer less than, equal to, or greater than zero, if a +is <, == +or > than b +.

+
+
+
+
+

Types and Values

+
+

struct DhBook

+
struct DhBook;
+
+
+
+

Signal Details

+
+

The “deleted” signal

+
void
+user_function (DhBook  *book,
+               gpointer user_data)
+

The ::deleted signal is emitted when the index file has been deleted +from the filesystem.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book

the DhBook emitting the signal.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “disabled” signal

+
void
+user_function (DhBook  *book,
+               gpointer user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book

the DhBook emitting the signal.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “enabled” signal

+
void
+user_function (DhBook  *book,
+               gpointer user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book

the DhBook emitting the signal.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “updated” signal

+
void
+user_function (DhBook  *book,
+               gpointer user_data)
+

The ::updated signal is emitted when the index file has been +modified (but the file still exists).

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book

the DhBook emitting the signal.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhBookManager.html b/docs/reference/html/DhBookManager.html new file mode 100644 index 0000000..05a9b05 --- /dev/null +++ b/docs/reference/html/DhBookManager.html @@ -0,0 +1,478 @@ + + + + +DhBookManager: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhBookManager

+

DhBookManager — Aggregation of all DhBook's

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+DhBookManager * + +dh_book_manager_new () +
+DhBookManager * + +dh_book_manager_get_singleton () +
+void + +dh_book_manager_populate () +
+GList * + +dh_book_manager_get_books () +
+gboolean + +dh_book_manager_get_group_by_language () +
+void + +dh_book_manager_set_group_by_language () +
+
+
+

Properties

+
+++++ + + + + + +
gbooleangroup-by-languageRead / Write
+
+
+

Signals

+
+++++ + + + + + + + + + + + + + + + + + + + + + + +
voidbook-createdRun Last
voidbook-deletedRun Last
voidbook-disabledRun Last
voidbook-enabledRun Last
+
+
+

Types and Values

+
++++ + + + + +
structDhBookManager
+
+
+

Object Hierarchy

+
    GObject
+    ╰── DhBookManager
+
+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

DhBookManager is a singleton class containing all the DhBook's.

+
+
+

Functions

+
+

dh_book_manager_new ()

+
DhBookManager *
+dh_book_manager_new (void);
+
+

dh_book_manager_new has been deprecated since version 3.26 and should not be used in newly-written code.

+

Call dh_book_manager_get_singleton() instead.

+
+
+

Returns

+

the DhBookManager singleton instance. You need to +unref it when no longer needed.

+

[transfer full]

+
+
+
+
+

dh_book_manager_get_singleton ()

+
DhBookManager *
+dh_book_manager_get_singleton (void);
+
+

Returns

+

the DhBookManager singleton instance.

+

[transfer none]

+
+

Since: 3.26

+
+
+
+

dh_book_manager_populate ()

+
void
+dh_book_manager_populate (DhBookManager *book_manager);
+
+

dh_book_manager_populate has been deprecated since version 3.26 and should not be used in newly-written code.

+

The DhBookManager is now automatically populated when the +object is created, there is no need to call this function anymore.

+
+

Populates the DhBookManager with all books found on the system and user +directories.

+
+

Parameters

+
+++++ + + + + + +

book_manager

a DhBookManager.

 
+
+
+
+
+

dh_book_manager_get_books ()

+
GList *
+dh_book_manager_get_books (DhBookManager *book_manager);
+
+

Parameters

+
+++++ + + + + + +

book_manager

a DhBookManager.

 
+
+
+

Returns

+

the list of all DhBook's +found.

+

[element-type DhBook][transfer none]

+
+
+
+
+

dh_book_manager_get_group_by_language ()

+
gboolean
+dh_book_manager_get_group_by_language (DhBookManager *book_manager);
+
+

Parameters

+
+++++ + + + + + +

book_manager

a DhBookManager.

 
+
+
+

Returns

+

whether the books should be grouped by programming language.

+
+
+
+
+

dh_book_manager_set_group_by_language ()

+
void
+dh_book_manager_set_group_by_language (DhBookManager *book_manager,
+                                       gboolean group_by_language);
+

Sets whether the books should be grouped by programming language.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

book_manager

a DhBookManager.

 

group_by_language

the new value.

 
+
+
+
+
+

Types and Values

+
+

struct DhBookManager

+
struct DhBookManager;
+
+
+
+

Property Details

+
+

The “group-by-language” property

+
  “group-by-language”        gboolean
+

Whether books should be grouped by programming language.

+

Flags: Read / Write

+

Default value: FALSE

+
+
+
+

Signal Details

+
+

The “book-created” signal

+
void
+user_function (DhBookManager *book_manager,
+               DhBook        *book,
+               gpointer       user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

book_manager

the DhBookManager.

 

book

the created DhBook.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “book-deleted” signal

+
void
+user_function (DhBookManager *book_manager,
+               DhBook        *book,
+               gpointer       user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

book_manager

the DhBookManager.

 

book

the deleted DhBook.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “book-disabled” signal

+
void
+user_function (DhBookManager *book_manager,
+               DhBook        *book,
+               gpointer       user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

book_manager

the DhBookManager.

 

book

the disabled DhBook.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+

The “book-enabled” signal

+
void
+user_function (DhBookManager *book_manager,
+               DhBook        *book,
+               gpointer       user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

book_manager

the DhBookManager.

 

book

the enabled DhBook.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhBookTree.html b/docs/reference/html/DhBookTree.html new file mode 100644 index 0000000..2c7678a --- /dev/null +++ b/docs/reference/html/DhBookTree.html @@ -0,0 +1,253 @@ + + + + +DhBookTree: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhBookTree

+

DhBookTree — A GtkTreeView containing the tree structure of all +enabled DhBook's

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + +
+DhBookTree * + +dh_book_tree_new () +
+void + +dh_book_tree_select_uri () +
+DhLink * + +dh_book_tree_get_selected_book () +
+
+
+

Signals

+
+++++ + + + + + +
voidlink-selectedRun Last
+
+
+

Types and Values

+
++++ + + + + +
structDhBookTree
+
+
+

Object Hierarchy

+
    GObject
+    ╰── GInitiallyUnowned
+        ╰── GtkWidget
+            ╰── GtkContainer
+                ╰── GtkTreeView
+                    ╰── DhBookTree
+
+
+
+

Implemented Interfaces

+

+DhBookTree implements + AtkImplementorIface, GtkBuildable and GtkScrollable.

+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

DhBookTree is a GtkTreeView (showing a tree, not a list) containing the +general tree structure of all enabled DhBook's.

+

The dh_book_get_tree() function is called to get the tree structure of a +DhBook. As such the tree contains only DhLink's of type DH_LINK_TYPE_BOOK +or DH_LINK_TYPE_PAGE.

+

When an element is selected, the “link-selected” signal is +emitted. Only one element can be selected at a time.

+
+
+

Functions

+
+

dh_book_tree_new ()

+
DhBookTree *
+dh_book_tree_new (void);
+
+

Returns

+

a new DhBookTree widget.

+

[transfer floating]

+
+
+
+
+

dh_book_tree_select_uri ()

+
void
+dh_book_tree_select_uri (DhBookTree *tree,
+                         const gchar *uri);
+

Selects the given uri +.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

tree

a DhBookTree.

 

uri

the URI to select.

 
+
+
+
+
+

dh_book_tree_get_selected_book ()

+
DhLink *
+dh_book_tree_get_selected_book (DhBookTree *tree);
+
+

Parameters

+
+++++ + + + + + +

tree

a DhBookTree.

 
+
+
+

Returns

+

the DhLink of the selected book, or +NULL if there is no selection. Unref with dh_link_unref() when no longer +needed.

+

[nullable][transfer full]

+
+
+
+
+

Types and Values

+
+

struct DhBookTree

+
struct DhBookTree;
+
+
+
+

Signal Details

+
+

The “link-selected” signal

+
void
+user_function (DhBookTree *tree,
+               DhLink     *link,
+               gpointer    user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

tree

the DhBookTree.

 

link

the selected DhLink.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhCompletion.html b/docs/reference/html/DhCompletion.html new file mode 100644 index 0000000..9899043 --- /dev/null +++ b/docs/reference/html/DhCompletion.html @@ -0,0 +1,291 @@ + + + + +DhCompletion: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhCompletion

+

DhCompletion — Support for automatic string completion

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + + + + + + + + + +
+DhCompletion * + +dh_completion_new () +
+void + +dh_completion_add_string () +
+void + +dh_completion_sort () +
+gchar * + +dh_completion_complete () +
+gchar * + +dh_completion_aggregate_complete () +
+
+
+

Types and Values

+
++++ + + + + +
structDhCompletion
+
+
+

Object Hierarchy

+
    GObject
+    ╰── DhCompletion
+
+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

DhCompletion is a basic replacement for GCompletion. GCompletion (part of +GLib) is deprecated, and doesn't use a great data structure (a simple +GList). DhCompletion uses a GSequence instead, so once the data is sorted +it should be faster. DhCompletion works only with UTF-8 strings, and copies +the strings.

+

DhCompletion is add-only, strings cannot be removed. But with +dh_completion_aggregate_complete(), a DhCompletion object can be removed +from the list.

+
+
+

Functions

+
+

dh_completion_new ()

+
DhCompletion *
+dh_completion_new (void);
+
+

Returns

+

a new DhCompletion object.

+
+

Since: 3.28

+
+
+
+

dh_completion_add_string ()

+
void
+dh_completion_add_string (DhCompletion *completion,
+                          const gchar *str);
+

Adds a string to the completion + object.

+

After adding all the strings you need to call dh_completion_sort().

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

completion

a DhCompletion.

 

str

a string.

 
+
+

Since: 3.28

+
+
+
+

dh_completion_sort ()

+
void
+dh_completion_sort (DhCompletion *completion);
+

Sorts all the strings. It is required to call this function after adding +strings with dh_completion_add_string().

+
+

Parameters

+
+++++ + + + + + +

completion

a DhCompletion.

 
+
+

Since: 3.28

+
+
+
+

dh_completion_complete ()

+
gchar *
+dh_completion_complete (DhCompletion *completion,
+                        const gchar *prefix);
+

This function does the equivalent of:

+
    +
  1. Searches the data structure of completion + to find all strings that have +prefix + as prefix.

  2. +
  3. From the list found at step 1, find the longest prefix that still matches +all the strings in the list.

  4. +
+

This function assumes that prefix + and the strings contained in completion + +are in UTF-8. If all the strings are valid UTF-8, then the return value will +also be valid UTF-8 (it won't return a partial multi-byte character).

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

completion

a DhCompletion.

 

prefix

the string to complete.

 
+
+
+

Returns

+

the completed prefix, or NULL if a +longer prefix has not been found. Free with g_free() when no longer needed.

+

[transfer full][nullable]

+
+

Since: 3.28

+
+
+
+

dh_completion_aggregate_complete ()

+
gchar *
+dh_completion_aggregate_complete (GList *completion_objects,
+                                  const gchar *prefix);
+

The same as dh_completion_complete(), but aggregated for several +DhCompletion objects.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

completion_objects

a GList of +DhCompletion objects.

[element-type DhCompletion][nullable]

prefix

the string to complete.

 
+
+
+

Returns

+

the completed prefix, or NULL if a +longer prefix has not been found. Free with g_free() when no longer needed.

+

[transfer full][nullable]

+
+

Since: 3.28

+
+
+
+

Types and Values

+
+

struct DhCompletion

+
struct DhCompletion;
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhKeywordModel.html b/docs/reference/html/DhKeywordModel.html new file mode 100644 index 0000000..d0fa148 --- /dev/null +++ b/docs/reference/html/DhKeywordModel.html @@ -0,0 +1,218 @@ + + + + +DhKeywordModel: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhKeywordModel

+

DhKeywordModel — A custom GtkTreeModel implementation for searching +DhLink's

+
+
+

Functions

+
++++ + + + + + + + + + + +
+DhKeywordModel * + +dh_keyword_model_new () +
+DhLink * + +dh_keyword_model_filter () +
+
+
+

Types and Values

+
++++ + + + + +
structDhKeywordModel
+
+
+

Object Hierarchy

+
    GObject
+    ╰── DhKeywordModel
+
+
+
+

Implemented Interfaces

+

+DhKeywordModel implements + GtkTreeModel.

+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

DhKeywordModel is a custom GtkTreeModel implementation (as a list, not a +tree) for searching DhLink's.

+

The dh_keyword_model_filter() function is used to set the search criteria. It +fills the GtkTreeModel with the list of DhLink's that match the search +criteria (up to a certain maximum number of matches).

+

How the search works (for end users) is explained in the user documentation +of the Devhelp application.

+
+

Filter by book and page

+

As a kind of API for integrating Devhelp with other applications, the search +string supports additional features. Those features are not intended to be +used directly by end users when typing the search string in the GUI, because +it's not really convenient. It is intended to be used with the +devhelp --search "search-string" command line, so that another application +can launch Devhelp and set a specific search string.

+

It is possible to filter by book by prefixing the search string with +“book:the-book-ID”. For example “book:gtk3”. If there are no other search +terms, it shows the top-level page of that book. If there are other search +terms, it limits the search to the specified book. See also the +dh_book_get_id() function (in the *.devhelp2 index file format it's called +the book “name”, not ID, but ID is clearer).

+

Similarly, it is possible to filter by page, by prefixing the search string +with “page:the-page-ID”. For example “page:GtkWindow”. If there are no other +search terms, the top of the page is shown and the search matches all the +symbols part of that page. If there are other search terms, it limits the +search to the specified page. To know what is the “page ID”, see the +dh_link_belongs_to_page() function.

+

“book:” and “page:” can be combined. Normal search terms must be +after “book:” and “page:”.

+

The book and page IDs – even if they contain an uppercase letter – don't +affect the case sensitivity for the other search terms.

+
+
+
+

Functions

+
+

dh_keyword_model_new ()

+
DhKeywordModel *
+dh_keyword_model_new (void);
+
+

Returns

+

a new DhKeywordModel object.

+
+
+
+
+

dh_keyword_model_filter ()

+
DhLink *
+dh_keyword_model_filter (DhKeywordModel *model,
+                         const gchar *search_string,
+                         const gchar *current_book_id,
+                         const gchar *language);
+

Searches in the DhBookManager the list of DhLink's that correspond to +search_string +, and fills the model + with that list (erasing the previous +content).

+

Attention, when calling this function the model + needs to be disconnected +from the GtkTreeView, because the GtkTreeModel signals are not emitted, to +improve the performances (sending a lot of signals is slow) and have a +simpler implementation. The previous row selection is anyway no longer +relevant.

+

Note that there is a maximum number of matches (configured internally). When +the maximum is reached the search is stopped, to avoid blocking the GUI +(since this function runs synchronously) if the search_string + contains for +example only one character. (And it is anyway not very useful to show to the +user tens of thousands search results).

+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + + + + + + +

model

a DhKeywordModel.

 

search_string

a search query.

 

current_book_id

the ID of the book currently shown, or NULL.

[nullable]

language

deprecated, must be NULL.

[nullable]
+
+
+

Returns

+

the DhLink that matches exactly +search_string +, or NULL if no such DhLink was found within the maximum +number of matches.

+

[nullable][transfer none]

+
+
+
+
+

Types and Values

+
+

struct DhKeywordModel

+
struct DhKeywordModel;
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhLink.html b/docs/reference/html/DhLink.html new file mode 100644 index 0000000..fe1f0fb --- /dev/null +++ b/docs/reference/html/DhLink.html @@ -0,0 +1,833 @@ + + + + +DhLink: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhLink

+

DhLink — A link inside a DhBook

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+DhLink * + +dh_link_new_book () +
+DhLink * + +dh_link_new () +
+DhLink * + +dh_link_ref () +
+void + +dh_link_unref () +
+DhLinkType + +dh_link_get_link_type () +
+DhLinkFlags + +dh_link_get_flags () +
+void + +dh_link_set_flags () +
const gchar * + +dh_link_get_name () +
+gboolean + +dh_link_match_relative_url () +
+gboolean + +dh_link_belongs_to_page () +
+gchar * + +dh_link_get_uri () +
const gchar * + +dh_link_get_book_title () +
const gchar * + +dh_link_get_book_id () +
+gint + +dh_link_compare () +
const gchar * + +dh_link_type_to_string () +
+
+
+

Types and Values

+
++++ + + + + + + + + + + + + + + +
 DhLink
enumDhLinkType
enumDhLinkFlags
+
+
+

Object Hierarchy

+
    GBoxed
+    ╰── DhLink
+    GEnum
+    ╰── DhLinkType
+    GFlags
+    ╰── DhLinkFlags
+
+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

A DhLink represents a link to an HTML page or somewhere inside a page (with +an anchor) that is inside a DhBook. The link can point to a specific symbol, +or a page, or the top-level page of the DhBook.

+

A DhLink has a type that can be retrieved with dh_link_get_link_type().

+

There is exactly one DhLink of type DH_LINK_TYPE_BOOK per DhBook object.

+
+
+

Functions

+
+

dh_link_new_book ()

+
DhLink *
+dh_link_new_book (const gchar *base_path,
+                  const gchar *book_id,
+                  const gchar *book_title,
+                  const gchar *relative_url);
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + + + + + + +

base_path

the base path for the book.

 

book_id

the book ID.

 

book_title

the name of the link.

 

relative_url

the URL relative to the book base_path +. Can contain an +anchor. Usually the index.html page.

 
+
+
+

Returns

+

a new DhLink of type DH_LINK_TYPE_BOOK.

+
+

Since: 3.28

+
+
+
+

dh_link_new ()

+
DhLink *
+dh_link_new (DhLinkType type,
+             DhLink *book_link,
+             const gchar *name,
+             const gchar *relative_url);
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + + + + + + +

type

the DhLinkType. Must be different than DH_LINK_TYPE_BOOK.

 

book_link

the DhLink of type DH_LINK_TYPE_BOOK for the book that the link +is contained in.

 

name

the name of the link.

 

relative_url

the URL relative to the book base path. Can contain an anchor.

 
+
+
+

Returns

+

a new DhLink.

+
+
+
+
+

dh_link_ref ()

+
DhLink *
+dh_link_ref (DhLink *link);
+

Increases the reference count of link +.

+

Not thread-safe.

+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the link +.

+

[transfer full]

+
+
+
+
+

dh_link_unref ()

+
void
+dh_link_unref (DhLink *link);
+

Decreases the reference count of link +.

+

Not thread-safe.

+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+
+
+

dh_link_get_link_type ()

+
DhLinkType
+dh_link_get_link_type (DhLink *link);
+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the DhLinkType of link +.

+
+
+
+
+

dh_link_get_flags ()

+
DhLinkFlags
+dh_link_get_flags (DhLink *link);
+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the DhLinkFlags of link +.

+
+
+
+
+

dh_link_set_flags ()

+
void
+dh_link_set_flags (DhLink *link,
+                   DhLinkFlags flags);
+

Sets the flags of the link.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

link

a DhLink.

 

flags

the new flags of the link.

 
+
+
+
+
+

dh_link_get_name ()

+
const gchar *
+dh_link_get_name (DhLink *link);
+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the name of the link +. For a link of type DH_LINK_TYPE_BOOK, +returns the book title.

+
+
+
+
+

dh_link_match_relative_url ()

+
gboolean
+dh_link_match_relative_url (DhLink *link,
+                            const gchar *relative_url);
+
+

Parameters

+
+++++ + + + + + + + + + + + + +

link

a DhLink.

 

relative_url

an URL relative to the book base path. Can contain an anchor.

 
+
+
+

Returns

+

whether the relative URL of link +matches with relative_url +. There +is a special case for the index.html page, it can also match the empty +string.

+
+

Since: 3.28

+
+
+
+

dh_link_belongs_to_page ()

+
gboolean
+dh_link_belongs_to_page (DhLink *link,
+                         const gchar *page_id);
+

This function permits to know if link + belongs to a certain page.

+

page_id + is usually the HTML filename without the .html extension. More +generally, page_id + must be a relative URL (relative to the book base path), +without the anchor nor the file extension.

+

For example if link + has the relative URL "DhLink.html#dh-link-ref", then +this function will return TRUE if the page_id + is "DhLink".

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

link

a DhLink.

 

page_id

a page ID, i.e. the filename without its extension.

 
+
+
+

Returns

+

whether link +belongs to page_id +.

+
+

Since: 3.28

+
+
+
+

dh_link_get_uri ()

+
gchar *
+dh_link_get_uri (DhLink *link);
+

Gets the link + URI, by concateneting the book base path with the link + +relative URL.

+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the link +URI, or NULL if getting the URI failed. Free +with g_free() when no longer needed.

+

[nullable]

+
+
+
+
+

dh_link_get_book_title ()

+
const gchar *
+dh_link_get_book_title (DhLink *link);
+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the title of the book that the link +is contained in.

+
+
+
+
+

dh_link_get_book_id ()

+
const gchar *
+dh_link_get_book_id (DhLink *link);
+
+

Parameters

+
+++++ + + + + + +

link

a DhLink.

 
+
+
+

Returns

+

the ID of the book that the link +is contained in.

+
+
+
+
+

dh_link_compare ()

+
gint
+dh_link_compare (gconstpointer a,
+                 gconstpointer b);
+

Compares the links a + and b +. This function is used to determine in which +order the links should be displayed.

+
+

Parameters

+
+++++ + + + + + + + + + + + + +

a

a DhLink.

[type DhLink]

b

a DhLink.

[type DhLink]
+
+
+

Returns

+

an integer less than zero if a +should appear before b +; zero if +there are no preferences; an integer greater than zero if b +should appear +before a +.

+
+
+
+
+

dh_link_type_to_string ()

+
const gchar *
+dh_link_type_to_string (DhLinkType link_type);
+
+

Parameters

+
+++++ + + + + + +

link_type

a DhLinkType.

 
+
+
+

Returns

+

a string representation of the DhLinkType, translated in the +current language.

+
+
+
+
+

Types and Values

+
+

DhLink

+
typedef struct _DhLink DhLink;
+
+
+
+

enum DhLinkType

+

The type of the content the link points to.

+
+

Members

+
+++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

DH_LINK_TYPE_BOOK

+

The top-level page of a DhBook.

+
 

DH_LINK_TYPE_PAGE

+

A page.

+
 

DH_LINK_TYPE_KEYWORD

+

Another kind of keyword.

+
 

DH_LINK_TYPE_FUNCTION

+

A function keyword.

+
 

DH_LINK_TYPE_STRUCT

+

A struct keyword.

+
 

DH_LINK_TYPE_MACRO

+

A macro keyword.

+
 

DH_LINK_TYPE_ENUM

+

An enum keyword.

+
 

DH_LINK_TYPE_TYPEDEF

+

A typedef keyword.

+
 

DH_LINK_TYPE_PROPERTY

+

A property keyword.

+
 

DH_LINK_TYPE_SIGNAL

+

A signal keyword.

+
 
+
+
+
+
+

enum DhLinkFlags

+
+

Members

+
+++++ + + + + + + + + + + + + +

DH_LINK_FLAGS_NONE

+

No flags set.

+
 

DH_LINK_FLAGS_DEPRECATED

+

The symbol that the link points to is deprecated.

+
 
+
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/DhSidebar.html b/docs/reference/html/DhSidebar.html new file mode 100644 index 0000000..07cade7 --- /dev/null +++ b/docs/reference/html/DhSidebar.html @@ -0,0 +1,307 @@ + + + + +DhSidebar: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

DhSidebar

+

DhSidebar — The sidebar

+
+
+

Functions

+
++++ + + + + + + + + + + + + + + + + + + +
+GtkWidget * + +dh_sidebar_new () +
+void + +dh_sidebar_select_uri () +
+void + +dh_sidebar_set_search_string () +
+void + +dh_sidebar_set_search_focus () +
+
+
+

Signals

+
+++++ + + + + + +
voidlink-selectedRun Last
+
+
+

Types and Values

+
++++ + + + + +
structDhSidebar
+
+
+

Object Hierarchy

+
    GObject
+    ╰── GInitiallyUnowned
+        ╰── GtkWidget
+            ╰── GtkContainer
+                ╰── GtkGrid
+                    ╰── DhSidebar
+
+
+
+

Implemented Interfaces

+

+DhSidebar implements + AtkImplementorIface, GtkBuildable and GtkOrientable.

+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+

In the Devhelp application, there is one DhSidebar per main window, +displayed in the left side panel.

+

A DhSidebar contains:

+
+

When the GtkSearchEntry is empty, the DhBookTree is shown. When the +GtkSearchEntry is not empty, it shows the search results in the other +GtkTreeView. The two GtkTreeView's cannot be both visible at the same time, +it's either one or the other.

+

The “link-selected” signal is emitted when one element in one of +the GtkTreeView's is selected. When that happens, the Devhelp application +opens the link in a WebKitWebView shown at the right side of the main +window.

+
+
+

Functions

+
+

dh_sidebar_new ()

+
GtkWidget *
+dh_sidebar_new (DhBookManager *book_manager);
+
+

Parameters

+
+++++ + + + + + +

book_manager

a DhBookManager. This parameter is deprecated, +you should just pass NULL.

[nullable]
+
+
+

Returns

+

a new DhSidebar widget.

+

[transfer floating]

+
+
+
+
+

dh_sidebar_select_uri ()

+
void
+dh_sidebar_select_uri (DhSidebar *sidebar,
+                       const gchar *uri);
+
+

Parameters

+
+++++ + + + + + + + + + + + + +

sidebar

a DhSidebar.

 

uri

the URI to select.

 
+
+
+
+
+

dh_sidebar_set_search_string ()

+
void
+dh_sidebar_set_search_string (DhSidebar *sidebar,
+                              const gchar *str);
+
+

Parameters

+
+++++ + + + + + + + + + + + + +

sidebar

a DhSidebar.

 

str

the string to search.

 
+
+
+
+
+

dh_sidebar_set_search_focus ()

+
void
+dh_sidebar_set_search_focus (DhSidebar *sidebar);
+

Gives the focus to the search entry.

+
+

Parameters

+
+++++ + + + + + +

sidebar

a DhSidebar.

 
+
+
+
+
+

Types and Values

+
+

struct DhSidebar

+
struct DhSidebar;
+
+
+
+

Signal Details

+
+

The “link-selected” signal

+
void
+user_function (DhSidebar *sidebar,
+               DhLink    *link,
+               gpointer   user_data)
+
+

Parameters

+
+++++ + + + + + + + + + + + + + + + + + +

sidebar

a DhSidebar.

 

link

the selected DhLink.

 

user_data

user data set when the signal handler was connected.

 
+
+

Flags: Run Last

+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/annexes.html b/docs/reference/html/annexes.html new file mode 100644 index 0000000..84a38e6 --- /dev/null +++ b/docs/reference/html/annexes.html @@ -0,0 +1,37 @@ + + + + +Part III. Annexes: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Part III. Annexes

+
+

Table of Contents

+
+
Object Hierarchy
+
Annotation Glossary
+
API Index
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/annotation-glossary.html b/docs/reference/html/annotation-glossary.html new file mode 100644 index 0000000..3d2d6ac --- /dev/null +++ b/docs/reference/html/annotation-glossary.html @@ -0,0 +1,48 @@ + + + + +Annotation Glossary: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Annotation Glossary

+

E

+
element-type
+

Generics and defining elements of containers and arrays.

+

N

+
nullable
+

NULL may be passed as the value in, out, in-out; or as a return value.

+

T

+
transfer floating
+

Alias for transfer none, used for objects with floating refs.

+
transfer full
+

Free data after the code is done.

+
transfer none
+

Don't free data after the code is done.

+
type
+

Override the parsed C type with given type.

+
+ + + \ No newline at end of file diff --git a/docs/reference/html/api-breaks.html b/docs/reference/html/api-breaks.html new file mode 100644 index 0000000..84aaf80 --- /dev/null +++ b/docs/reference/html/api-breaks.html @@ -0,0 +1,195 @@ + + + + +Part II. API Breaks: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Part II. API Breaks

+

+ Devhelp is a quite old piece of software (created in 2001), and as every + software, the code evolves during its lifetime. So there are sometimes API + breaks. We try to not break applications depending on the Devhelp API. But + if we see that a certain API is used nowhere else than the Devhelp + application itself (or is dead code), we don't hesitate to break the API to + improve the code. +

+

+ Currently we try to not break + Anjuta + and gnome-builder. + If your application is not listed and depends on the Devhelp API and is Free + Software, please speak up. +

+
+

3.24 -> 3.25.1

+
    +
  • + All deprecated APIs have been removed. +

  • +
  • + dh-error.h is now private. +

  • +
  • + The DhApp, DhAssistant and + DhWindow classes are now private. DhApp is a + subclass of GtkApplication, and an application can have + only one GtkApplication instance, so as-is + DhApp didn't make sense in the library (what if two + different libraries have both a subclass of + GtkApplication?). Since DhAssistant and + DhWindow depend on DhApp, they are now also + private. +

  • +
  • + The DhLanguage class is now private, it's currently used + only internally by DhBookManager. +

  • +
  • +

    + Due to DhBookManager being now a + singleton, there has been the following API changes: +

    +
      +
    • + dh_assistant_view_set_book_manager() has been + removed. +

    • +
    • + dh_keyword_model_set_words() has been removed. +

    • +
    • + The DhBookTree:book-manager property has been + removed. +

    • +
    • + API break for + dh_book_tree_new(). +

    • +
    • + The DhSidebar:book-manager property has been + removed. +

    • +
    • + The book_manager parameter of + dh_sidebar_new() is now + deprecated. +

    • +
    +

    +

    +
  • +
+
+
+

3.25.1 -> 3.25.2

+
    +
  • + The page parameter of dh_link_new() + has been removed because it was broken in dh-parser.c. + The book parameter has also been moved, to group related + parameters together. +

  • +
  • + The dh_link_get_page_name() function has been removed + because it was broken and used nowhere. +

  • +
  • + The dh_link_get_type_as_string() function (which took a + DhLink parameter) has been removed, it + has been replaced by dh_link_type_to_string() + which takes a DhLinkType parameter. +

  • +
+
+
+

3.26.0 -> 3.27.1

+
+
+
+

3.27.1 -> 3.27.2

+
    +
  • + dh_book_cmp_by_path() has been removed (dead code). +

  • +
  • + The DhBookManager::language-enabled and + DhBookManager::language-disabled signals have been + removed (dead code). +

  • +
  • + DhSidebar is now a subclass of + GtkGrid, not + GtkBox. +

  • +
  • + dh_sidebar_get_selected_book() has been removed (it was + used only inside DhSidebar). +

  • +
  • + dh_book_get_completions() has been replaced by + dh_book_get_completion(). +

  • +
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/api-index-full.html b/docs/reference/html/api-index-full.html new file mode 100644 index 0000000..bf8b6ff --- /dev/null +++ b/docs/reference/html/api-index-full.html @@ -0,0 +1,347 @@ + + + + +API Index: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+API Index

+

A

+
+DhAssistantView, struct in DhAssistantView +
+
+
+DhAssistantView::open-uri, object signal in DhAssistantView +
+
+
+dh_assistant_view_new, function in DhAssistantView +
+
+
+dh_assistant_view_search, function in DhAssistantView +
+
+
+dh_assistant_view_set_link, function in DhAssistantView +
+
+

B

+
+DhBook, struct in DhBook +
+
+
+DhBook::deleted, object signal in DhBook +
+
+
+DhBook::disabled, object signal in DhBook +
+
+
+DhBook::enabled, object signal in DhBook +
+
+
+DhBook::updated, object signal in DhBook +
+
+
+DhBookManager, struct in DhBookManager +
+
+
+DhBookManager::book-created, object signal in DhBookManager +
+
+
+DhBookManager::book-deleted, object signal in DhBookManager +
+
+
+DhBookManager::book-disabled, object signal in DhBookManager +
+
+
+DhBookManager::book-enabled, object signal in DhBookManager +
+
+
+DhBookManager:group-by-language, object property in DhBookManager +
+
+
+DhBookTree, struct in DhBookTree +
+
+
+DhBookTree::link-selected, object signal in DhBookTree +
+
+
+dh_book_cmp_by_id, function in DhBook +
+
+
+dh_book_cmp_by_title, function in DhBook +
+
+
+dh_book_get_completion, function in DhBook +
+
+
+dh_book_get_enabled, function in DhBook +
+
+
+dh_book_get_id, function in DhBook +
+
+
+dh_book_get_index_file, function in DhBook +
+
+
+dh_book_get_language, function in DhBook +
+
+
+dh_book_get_links, function in DhBook +
+
+
+dh_book_get_title, function in DhBook +
+
+
+dh_book_get_tree, function in DhBook +
+
+
+dh_book_manager_get_books, function in DhBookManager +
+
+
+dh_book_manager_get_group_by_language, function in DhBookManager +
+
+
+dh_book_manager_get_singleton, function in DhBookManager +
+
+
+dh_book_manager_new, function in DhBookManager +
+
+
+dh_book_manager_populate, function in DhBookManager +
+
+
+dh_book_manager_set_group_by_language, function in DhBookManager +
+
+
+dh_book_new, function in DhBook +
+
+
+dh_book_set_enabled, function in DhBook +
+
+
+dh_book_tree_get_selected_book, function in DhBookTree +
+
+
+dh_book_tree_new, function in DhBookTree +
+
+
+dh_book_tree_select_uri, function in DhBookTree +
+
+

C

+
+DhCompletion, struct in DhCompletion +
+
+
+dh_completion_add_string, function in DhCompletion +
+
+
+dh_completion_aggregate_complete, function in DhCompletion +
+
+
+dh_completion_complete, function in DhCompletion +
+
+
+dh_completion_new, function in DhCompletion +
+
+
+dh_completion_sort, function in DhCompletion +
+
+

F

+
+dh_finalize, function in Initialization and Finalization +
+
+

I

+
+dh_init, function in Initialization and Finalization +
+
+

K

+
+DhKeywordModel, struct in DhKeywordModel +
+
+
+dh_keyword_model_filter, function in DhKeywordModel +
+
+
+dh_keyword_model_new, function in DhKeywordModel +
+
+

L

+
+DhLink, struct in DhLink +
+
+
+DhLinkFlags, enum in DhLink +
+
+
+DhLinkType, enum in DhLink +
+
+
+dh_link_belongs_to_page, function in DhLink +
+
+
+dh_link_compare, function in DhLink +
+
+
+dh_link_get_book_id, function in DhLink +
+
+
+dh_link_get_book_title, function in DhLink +
+
+
+dh_link_get_flags, function in DhLink +
+
+
+dh_link_get_link_type, function in DhLink +
+
+
+dh_link_get_name, function in DhLink +
+
+
+dh_link_get_uri, function in DhLink +
+
+
+dh_link_match_relative_url, function in DhLink +
+
+
+dh_link_new, function in DhLink +
+
+
+dh_link_new_book, function in DhLink +
+
+
+dh_link_ref, function in DhLink +
+
+
+dh_link_set_flags, function in DhLink +
+
+
+dh_link_type_to_string, function in DhLink +
+
+
+dh_link_unref, function in DhLink +
+
+

S

+
+DhSidebar, struct in DhSidebar +
+
+
+DhSidebar::link-selected, object signal in DhSidebar +
+
+
+dh_sidebar_new, function in DhSidebar +
+
+
+dh_sidebar_select_uri, function in DhSidebar +
+
+
+dh_sidebar_set_search_focus, function in DhSidebar +
+
+
+dh_sidebar_set_search_string, function in DhSidebar +
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/api-reference.html b/docs/reference/html/api-reference.html new file mode 100644 index 0000000..9201680 --- /dev/null +++ b/docs/reference/html/api-reference.html @@ -0,0 +1,72 @@ + + + + +Part I. API Reference: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Part I. API Reference

+
+

Table of Contents

+
+
General
+
+Initialization and Finalization +
+
The Data
+
+
+DhBookManager — Aggregation of all DhBook's +
+
+DhBook — A book, usually the documentation for one library +
+
+DhLink — A link inside a DhBook +
+
+
Side Panel
+
+
+DhSidebar — The sidebar +
+
+DhBookTree — A GtkTreeView containing the tree structure of all +enabled DhBook's +
+
+DhKeywordModel — A custom GtkTreeModel implementation for searching +DhLink's +
+
+
Assistant
+
+DhAssistantView — A small “assistant” widget for displaying just one hit +
+
Misc
+
+DhCompletion — Support for automatic string completion +
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/assistant.html b/docs/reference/html/assistant.html new file mode 100644 index 0000000..b2161b0 --- /dev/null +++ b/docs/reference/html/assistant.html @@ -0,0 +1,32 @@ + + + + +Assistant: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Assistant

+
+DhAssistantView — A small “assistant” widget for displaying just one hit +
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/data.html b/docs/reference/html/data.html new file mode 100644 index 0000000..0ac989e --- /dev/null +++ b/docs/reference/html/data.html @@ -0,0 +1,40 @@ + + + + +The Data: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+The Data

+
+
+DhBookManager — Aggregation of all DhBook's +
+
+DhBook — A book, usually the documentation for one library +
+
+DhLink — A link inside a DhBook +
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/devhelp-Initialization-and-Finalization.html b/docs/reference/html/devhelp-Initialization-and-Finalization.html new file mode 100644 index 0000000..ddd9a81 --- /dev/null +++ b/docs/reference/html/devhelp-Initialization-and-Finalization.html @@ -0,0 +1,99 @@ + + + + +Initialization and Finalization: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+
+
+ + +
+

Initialization and Finalization

+

Initialization and Finalization

+
+
+

Functions

+
++++ + + + + + + + + + + +
+void + +dh_init () +
+void + +dh_finalize () +
+
+
+

Includes

+
#include <devhelp/devhelp.h>
+
+
+
+

Description

+
+
+

Functions

+
+

dh_init ()

+
void
+dh_init (void);
+

Initializes the Devhelp library (e.g. for the internationalization).

+

This function can be called several times, but is meant to be called at the +beginning of main(), before any other Devhelp function call.

+
+
+
+

dh_finalize ()

+
void
+dh_finalize (void);
+

Free the resources allocated by Devhelp. For example it unrefs the singleton +objects.

+

It is not mandatory to call this function, it's just to be friendlier to +memory debugging tools. This function is meant to be called at the end of +main(). It can be called several times.

+

Since: 3.26

+
+
+
+

Types and Values

+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/devhelp.devhelp2 b/docs/reference/html/devhelp.devhelp2 new file mode 100644 index 0000000..96067e2 --- /dev/null +++ b/docs/reference/html/devhelp.devhelp2 @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/docs/reference/html/general.html b/docs/reference/html/general.html new file mode 100644 index 0000000..ef1d70a --- /dev/null +++ b/docs/reference/html/general.html @@ -0,0 +1,32 @@ + + + + +General: Devhelp Reference Manual + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/reference/html/home.png b/docs/reference/html/home.png new file mode 100644 index 0000000..9346b33 Binary files /dev/null and b/docs/reference/html/home.png differ diff --git a/docs/reference/html/index.html b/docs/reference/html/index.html new file mode 100644 index 0000000..bcc6193 --- /dev/null +++ b/docs/reference/html/index.html @@ -0,0 +1,79 @@ + + + + +Devhelp Reference Manual: Devhelp Reference Manual + + + + + + + +
+
+
+
+

+ For Devhelp 3.28.1. + The latest version of this documentation can be found on-line at + https://developer.gnome.org/devhelp/. +

+
+
+
+
+
I. API Reference
+
+
General
+
+Initialization and Finalization +
+
The Data
+
+
+DhBookManager — Aggregation of all DhBook's +
+
+DhBook — A book, usually the documentation for one library +
+
+DhLink — A link inside a DhBook +
+
+
Side Panel
+
+
+DhSidebar — The sidebar +
+
+DhBookTree — A GtkTreeView containing the tree structure of all +enabled DhBook's +
+
+DhKeywordModel — A custom GtkTreeModel implementation for searching +DhLink's +
+
+
Assistant
+
+DhAssistantView — A small “assistant” widget for displaying just one hit +
+
Misc
+
+DhCompletion — Support for automatic string completion +
+
+
II. API Breaks
+
III. Annexes
+
+
Object Hierarchy
+
Annotation Glossary
+
API Index
+
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/left-insensitive.png b/docs/reference/html/left-insensitive.png new file mode 100644 index 0000000..3269393 Binary files /dev/null and b/docs/reference/html/left-insensitive.png differ diff --git a/docs/reference/html/left.png b/docs/reference/html/left.png new file mode 100644 index 0000000..2abde03 Binary files /dev/null and b/docs/reference/html/left.png differ diff --git a/docs/reference/html/misc.html b/docs/reference/html/misc.html new file mode 100644 index 0000000..8fea112 --- /dev/null +++ b/docs/reference/html/misc.html @@ -0,0 +1,32 @@ + + + + +Misc: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Misc

+
+DhCompletion — Support for automatic string completion +
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/object-tree.html b/docs/reference/html/object-tree.html new file mode 100644 index 0000000..8ff7371 --- /dev/null +++ b/docs/reference/html/object-tree.html @@ -0,0 +1,52 @@ + + + + +Object Hierarchy: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Object Hierarchy

+
+    GObject
+    ├── GInitiallyUnowned
+       ╰── GtkWidget
+           ╰── GtkContainer
+               ├── WebKitWebViewBase
+                  ╰── WebKitWebView
+                      ╰── DhAssistantView
+               ├── GtkTreeView
+                  ╰── DhBookTree
+               ╰── GtkGrid
+                   ╰── DhSidebar
+    ├── DhBook
+    ├── DhBookManager
+    ├── DhCompletion
+    ╰── DhKeywordModel
+    GFlags
+    ╰── DhLinkFlags
+    GBoxed
+    ╰── DhLink
+    GEnum
+    ╰── DhLinkType
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/right-insensitive.png b/docs/reference/html/right-insensitive.png new file mode 100644 index 0000000..4c95785 Binary files /dev/null and b/docs/reference/html/right-insensitive.png differ diff --git a/docs/reference/html/right.png b/docs/reference/html/right.png new file mode 100644 index 0000000..76260ec Binary files /dev/null and b/docs/reference/html/right.png differ diff --git a/docs/reference/html/side-panel.html b/docs/reference/html/side-panel.html new file mode 100644 index 0000000..56489ce --- /dev/null +++ b/docs/reference/html/side-panel.html @@ -0,0 +1,42 @@ + + + + +Side Panel: Devhelp Reference Manual + + + + + + + + + + + + + + + + +
+

+Side Panel

+
+
+DhSidebar — The sidebar +
+
+DhBookTree — A GtkTreeView containing the tree structure of all +enabled DhBook's +
+
+DhKeywordModel — A custom GtkTreeModel implementation for searching +DhLink's +
+
+
+ + + \ No newline at end of file diff --git a/docs/reference/html/style.css b/docs/reference/html/style.css new file mode 100644 index 0000000..4be4ede --- /dev/null +++ b/docs/reference/html/style.css @@ -0,0 +1,483 @@ +body +{ + font-family: cantarell, sans-serif; +} +.synopsis, .classsynopsis +{ + /* tango:aluminium 1/2 */ + background: #eeeeec; + background: rgba(238, 238, 236, 0.5); + border: solid 1px rgb(238, 238, 236); + padding: 0.5em; +} +.programlisting +{ + /* tango:sky blue 0/1 */ + /* fallback for no rgba support */ + background: #e6f3ff; + border: solid 1px #729fcf; + background: rgba(114, 159, 207, 0.1); + border: solid 1px rgba(114, 159, 207, 0.2); + padding: 0.5em; +} +.variablelist +{ + padding: 4px; + margin-left: 3em; +} +.variablelist td:first-child +{ + vertical-align: top; +} + +span.nowrap { + white-space: nowrap; +} + +div.gallery-float +{ + float: left; + padding: 10px; +} +div.gallery-float img +{ + border-style: none; +} +div.gallery-spacer +{ + clear: both; +} + +a, a:visited +{ + text-decoration: none; + /* tango:sky blue 2 */ + color: #3465a4; +} +a:hover +{ + text-decoration: underline; + /* tango:sky blue 1 */ + color: #729fcf; +} + +div.informaltable table +{ + border-collapse: separate; + border-spacing: 1em 0.3em; + border: none; +} + +div.informaltable table td, div.informaltable table th +{ + vertical-align: top; +} + +.function_type, +.variable_type, +.property_type, +.signal_type, +.parameter_name, +.struct_member_name, +.union_member_name, +.define_keyword, +.datatype_keyword, +.typedef_keyword +{ + text-align: right; +} + +/* dim non-primary columns */ +.c_punctuation, +.function_type, +.variable_type, +.property_type, +.signal_type, +.define_keyword, +.datatype_keyword, +.typedef_keyword, +.property_flags, +.signal_flags, +.parameter_annotations, +.enum_member_annotations, +.struct_member_annotations, +.union_member_annotations +{ + color: #888a85; +} + +.function_type a, +.function_type a:visited, +.function_type a:hover, +.property_type a, +.property_type a:visited, +.property_type a:hover, +.signal_type a, +.signal_type a:visited, +.signal_type a:hover, +.signal_flags a, +.signal_flags a:visited, +.signal_flags a:hover +{ + color: #729fcf; +} + +td p +{ + margin: 0.25em; +} + +div.table table +{ + border-collapse: collapse; + border-spacing: 0px; + /* tango:aluminium 3 */ + border: solid 1px #babdb6; +} + +div.table table td, div.table table th +{ + /* tango:aluminium 3 */ + border: solid 1px #babdb6; + padding: 3px; + vertical-align: top; +} + +div.table table th +{ + /* tango:aluminium 2 */ + background-color: #d3d7cf; +} + +h4 +{ + color: #555753; + margin-top: 1em; + margin-bottom: 1em; +} + +hr +{ + /* tango:aluminium 1 */ + color: #d3d7cf; + background: #d3d7cf; + border: none 0px; + height: 1px; + clear: both; + margin: 2.0em 0em 2.0em 0em; +} + +dl.toc dt +{ + padding-bottom: 0.25em; +} + +dl.toc > dt +{ + padding-top: 0.25em; + padding-bottom: 0.25em; + font-weight: bold; +} + +dl.toc > dl +{ + padding-bottom: 0.5em; +} + +.parameter +{ + font-style: normal; +} + +.footer +{ + padding-top: 3.5em; + /* tango:aluminium 3 */ + color: #babdb6; + text-align: center; + font-size: 80%; +} + +.informalfigure, +.figure +{ + margin: 1em; +} + +.informalexample, +.example +{ + margin-top: 1em; + margin-bottom: 1em; +} + +.warning +{ + /* tango:orange 0/1 */ + background: #ffeed9; + background: rgba(252, 175, 62, 0.1); + border-color: #ffb04f; + border-color: rgba(252, 175, 62, 0.2); +} +.note +{ + /* tango:chameleon 0/0.5 */ + background: #d8ffb2; + background: rgba(138, 226, 52, 0.1); + border-color: #abf562; + border-color: rgba(138, 226, 52, 0.2); +} +div.blockquote +{ + border-color: #eeeeec; +} +.note, .warning, div.blockquote +{ + padding: 0.5em; + border-width: 1px; + border-style: solid; + margin: 2em; +} +.note p, .warning p +{ + margin: 0; +} + +div.warning h3.title, +div.note h3.title +{ + display: none; +} + +p + div.section +{ + margin-top: 1em; +} + +div.refnamediv, +div.refsynopsisdiv, +div.refsect1, +div.refsect2, +div.toc, +div.section +{ + margin-bottom: 1em; +} + +/* blob links */ +h2 .extralinks, h3 .extralinks +{ + float: right; + /* tango:aluminium 3 */ + color: #babdb6; + font-size: 80%; + font-weight: normal; +} + +.lineart +{ + color: #d3d7cf; + font-weight: normal; +} + +.annotation +{ + /* tango:aluminium 5 */ + color: #555753; + font-weight: normal; +} + +.structfield +{ + font-style: normal; + font-weight: normal; +} + +acronym,abbr +{ + border-bottom: 1px dotted gray; +} + +/* code listings */ + +.listing_code .programlisting .normal, +.listing_code .programlisting .normal a, +.listing_code .programlisting .number, +.listing_code .programlisting .cbracket, +.listing_code .programlisting .symbol { color: #555753; } +.listing_code .programlisting .comment, +.listing_code .programlisting .linenum { color: #babdb6; } /* tango: aluminium 3 */ +.listing_code .programlisting .function, +.listing_code .programlisting .function a, +.listing_code .programlisting .preproc { color: #204a87; } /* tango: sky blue 3 */ +.listing_code .programlisting .string { color: #ad7fa8; } /* tango: plum */ +.listing_code .programlisting .keyword, +.listing_code .programlisting .usertype, +.listing_code .programlisting .type, +.listing_code .programlisting .type a { color: #4e9a06; } /* tango: chameleon 3 */ + +.listing_frame { + /* tango:sky blue 1 */ + border: solid 1px #729fcf; + border: solid 1px rgba(114, 159, 207, 0.2); + padding: 0px; +} + +.listing_lines, .listing_code { + margin-top: 0px; + margin-bottom: 0px; + padding: 0.5em; +} +.listing_lines { + /* tango:sky blue 0.5 */ + background: #a6c5e3; + background: rgba(114, 159, 207, 0.2); + /* tango:aluminium 6 */ + color: #2e3436; +} +.listing_code { + /* tango:sky blue 0 */ + background: #e6f3ff; + background: rgba(114, 159, 207, 0.1); +} +.listing_code .programlisting { + /* override from previous */ + border: none 0px; + padding: 0px; + background: none; +} +.listing_lines pre, .listing_code pre { + margin: 0px; +} + +@media screen { + /* these have a as a first child, but since there are no parent selectors + * we can't use that. */ + a.footnote + { + position: relative; + top: 0em ! important; + } + /* this is needed so that the local anchors are displayed below the naviagtion */ + div.footnote a[name], div.refnamediv a[name], div.refsect1 a[name], div.refsect2 a[name], div.index a[name], div.glossary a[name], div.sect1 a[name] + { + display: inline-block; + position: relative; + top:-5em; + } + /* this seems to be a bug in the xsl style sheets when generating indexes */ + div.index div.index + { + top: 0em; + } + /* make space for the fixed navigation bar and add space at the bottom so that + * link targets appear somewhat close to top + */ + body + { + padding-top: 2.5em; + padding-bottom: 500px; + max-width: 60em; + } + p + { + max-width: 60em; + } + /* style and size the navigation bar */ + table.navigation#top + { + position: fixed; + background: #e2e2e2; + border-bottom: solid 1px #babdb6; + border-spacing: 5px; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + z-index: 10; + } + table.navigation#top td + { + padding-left: 6px; + padding-right: 6px; + } + .navigation a, .navigation a:visited + { + /* tango:sky blue 3 */ + color: #204a87; + } + .navigation a:hover + { + /* tango:sky blue 2 */ + color: #3465a4; + } + td.shortcuts + { + /* tango:sky blue 2 */ + color: #3465a4; + font-size: 80%; + white-space: nowrap; + } + td.shortcuts .dim + { + color: #babdb6; + } + .navigation .title + { + font-size: 80%; + max-width: none; + margin: 0px; + font-weight: normal; + } +} +@media screen and (min-width: 60em) { + /* screen larger than 60em */ + body { margin: auto; } +} +@media screen and (max-width: 60em) { + /* screen less than 60em */ + #nav_hierarchy { display: none; } + #nav_interfaces { display: none; } + #nav_prerequisites { display: none; } + #nav_derived_interfaces { display: none; } + #nav_implementations { display: none; } + #nav_child_properties { display: none; } + #nav_style_properties { display: none; } + #nav_index { display: none; } + #nav_glossary { display: none; } + .gallery_image { display: none; } + .property_flags { display: none; } + .signal_flags { display: none; } + .parameter_annotations { display: none; } + .enum_member_annotations { display: none; } + .struct_member_annotations { display: none; } + .union_member_annotations { display: none; } + /* now that a column is hidden, optimize space */ + col.parameters_name { width: auto; } + col.parameters_description { width: auto; } + col.struct_members_name { width: auto; } + col.struct_members_description { width: auto; } + col.enum_members_name { width: auto; } + col.enum_members_description { width: auto; } + col.union_members_name { width: auto; } + col.union_members_description { width: auto; } + .listing_lines { display: none; } +} +@media print { + table.navigation { + visibility: collapse; + display: none; + } + div.titlepage table.navigation { + visibility: visible; + display: table; + background: #e2e2e2; + border: solid 1px #babdb6; + margin-top: 0; + margin-bottom: 0; + top: 0; + left: 0; + height: 3em; + } +} + diff --git a/docs/reference/html/up-insensitive.png b/docs/reference/html/up-insensitive.png new file mode 100644 index 0000000..f404986 Binary files /dev/null and b/docs/reference/html/up-insensitive.png differ diff --git a/docs/reference/html/up.png b/docs/reference/html/up.png new file mode 100644 index 0000000..80b4b37 Binary files /dev/null and b/docs/reference/html/up.png differ diff --git a/gtk-doc.make b/gtk-doc.make new file mode 100644 index 0000000..f87eaab --- /dev/null +++ b/gtk-doc.make @@ -0,0 +1,320 @@ +# -*- mode: makefile -*- +# +# gtk-doc.make - make rules for gtk-doc +# Copyright (C) 2003 James Henstridge +# 2004-2007 Damon Chaplin +# 2007-2017 Stefan Sauer +# +# 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 3 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, see . + +#################################### +# Everything below here is generic # +#################################### + +if GTK_DOC_USE_LIBTOOL +GTKDOC_CC = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(LIBTOOL) --tag=CC --mode=link $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +GTKDOC_RUN = $(LIBTOOL) --mode=execute +else +GTKDOC_CC = $(CC) $(INCLUDES) $(GTKDOC_DEPS_CFLAGS) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +GTKDOC_LD = $(CC) $(GTKDOC_DEPS_LIBS) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) +GTKDOC_RUN = +endif + +# We set GPATH here; this gives us semantics for GNU make +# which are more like other make's VPATH, when it comes to +# whether a source that is a target of one rule is then +# searched for in VPATH/GPATH. +# +GPATH = $(srcdir) + +TARGET_DIR=$(HTML_DIR)/$(DOC_MODULE) + +SETUP_FILES = \ + $(content_files) \ + $(expand_content_files) \ + $(DOC_MAIN_SGML_FILE) \ + $(DOC_MODULE)-sections.txt \ + $(DOC_MODULE)-overrides.txt + +EXTRA_DIST = \ + $(HTML_IMAGES) \ + $(SETUP_FILES) + +DOC_STAMPS=setup-build.stamp scan-build.stamp sgml-build.stamp \ + html-build.stamp pdf-build.stamp \ + sgml.stamp html.stamp pdf.stamp + +SCANOBJ_FILES = \ + $(DOC_MODULE).args \ + $(DOC_MODULE).hierarchy \ + $(DOC_MODULE).interfaces \ + $(DOC_MODULE).prerequisites \ + $(DOC_MODULE).signals + +REPORT_FILES = \ + $(DOC_MODULE)-undocumented.txt \ + $(DOC_MODULE)-undeclared.txt \ + $(DOC_MODULE)-unused.txt + +gtkdoc-check.test: Makefile + $(AM_V_GEN)echo "#!/bin/sh -e" > $@; \ + echo "$(GTKDOC_CHECK_PATH) || exit 1" >> $@; \ + chmod +x $@ + +CLEANFILES = $(SCANOBJ_FILES) $(REPORT_FILES) $(DOC_STAMPS) gtkdoc-check.test + +if GTK_DOC_BUILD_HTML +HTML_BUILD_STAMP=html-build.stamp +else +HTML_BUILD_STAMP= +endif +if GTK_DOC_BUILD_PDF +PDF_BUILD_STAMP=pdf-build.stamp +else +PDF_BUILD_STAMP= +endif + +all-gtk-doc: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) +.PHONY: all-gtk-doc + +if ENABLE_GTK_DOC +all-local: all-gtk-doc +endif + +docs: $(HTML_BUILD_STAMP) $(PDF_BUILD_STAMP) + +$(REPORT_FILES): sgml-build.stamp + +#### setup #### + +GTK_DOC_V_SETUP=$(GTK_DOC_V_SETUP_@AM_V@) +GTK_DOC_V_SETUP_=$(GTK_DOC_V_SETUP_@AM_DEFAULT_V@) +GTK_DOC_V_SETUP_0=@echo " DOC Preparing build"; + +setup-build.stamp: + -$(GTK_DOC_V_SETUP)if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + files=`echo $(SETUP_FILES) $(DOC_MODULE).types`; \ + if test "x$$files" != "x" ; then \ + for file in $$files ; do \ + destdir=`dirname $(abs_builddir)/$$file`; \ + test -d "$$destdir" || mkdir -p "$$destdir"; \ + test -f $(abs_srcdir)/$$file && \ + cp -pf $(abs_srcdir)/$$file $(abs_builddir)/$$file || true; \ + done; \ + fi; \ + fi + $(AM_V_at)touch setup-build.stamp + +#### scan #### + +GTK_DOC_V_SCAN=$(GTK_DOC_V_SCAN_@AM_V@) +GTK_DOC_V_SCAN_=$(GTK_DOC_V_SCAN_@AM_DEFAULT_V@) +GTK_DOC_V_SCAN_0=@echo " DOC Scanning header files"; + +GTK_DOC_V_INTROSPECT=$(GTK_DOC_V_INTROSPECT_@AM_V@) +GTK_DOC_V_INTROSPECT_=$(GTK_DOC_V_INTROSPECT_@AM_DEFAULT_V@) +GTK_DOC_V_INTROSPECT_0=@echo " DOC Introspecting gobjects"; + +scan-build.stamp: setup-build.stamp $(HFILE_GLOB) $(CFILE_GLOB) + $(GTK_DOC_V_SCAN)_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + gtkdoc-scan --module=$(DOC_MODULE) --ignore-headers="$(IGNORE_HFILES)" $${_source_dir} $(SCAN_OPTIONS) $(EXTRA_HFILES) + $(GTK_DOC_V_INTROSPECT)if grep -l '^..*$$' $(DOC_MODULE).types > /dev/null 2>&1 ; then \ + scanobj_options=""; \ + gtkdoc-scangobj 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + scanobj_options="--verbose"; \ + fi; \ + fi; \ + CC="$(GTKDOC_CC)" LD="$(GTKDOC_LD)" RUN="$(GTKDOC_RUN)" CFLAGS="$(GTKDOC_CFLAGS) $(CFLAGS)" LDFLAGS="$(GTKDOC_LIBS) $(LDFLAGS)" \ + gtkdoc-scangobj $(SCANGOBJ_OPTIONS) $$scanobj_options --module=$(DOC_MODULE); \ + else \ + for i in $(SCANOBJ_FILES) ; do \ + test -f $$i || touch $$i ; \ + done \ + fi + $(AM_V_at)touch scan-build.stamp + +$(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt: scan-build.stamp + @true + +#### xml #### + +GTK_DOC_V_XML=$(GTK_DOC_V_XML_@AM_V@) +GTK_DOC_V_XML_=$(GTK_DOC_V_XML_@AM_DEFAULT_V@) +GTK_DOC_V_XML_0=@echo " DOC Building XML"; + +sgml-build.stamp: setup-build.stamp $(DOC_MODULE)-decl.txt $(SCANOBJ_FILES) $(HFILE_GLOB) $(CFILE_GLOB) $(DOC_MODULE)-sections.txt $(DOC_MODULE)-overrides.txt $(expand_content_files) xml/gtkdocentities.ent + $(GTK_DOC_V_XML)_source_dir='' ; \ + for i in $(DOC_SOURCE_DIR) ; do \ + _source_dir="$${_source_dir} --source-dir=$$i" ; \ + done ; \ + gtkdoc-mkdb --module=$(DOC_MODULE) --output-format=xml --expand-content-files="$(expand_content_files)" --main-sgml-file=$(DOC_MAIN_SGML_FILE) $${_source_dir} $(MKDB_OPTIONS) + $(AM_V_at)touch sgml-build.stamp + +sgml.stamp: sgml-build.stamp + @true + +$(DOC_MAIN_SGML_FILE): sgml-build.stamp + @true + +xml/gtkdocentities.ent: Makefile + $(GTK_DOC_V_XML)$(MKDIR_P) $(@D) && ( \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + echo ""; \ + ) > $@ + +#### html #### + +GTK_DOC_V_HTML=$(GTK_DOC_V_HTML_@AM_V@) +GTK_DOC_V_HTML_=$(GTK_DOC_V_HTML_@AM_DEFAULT_V@) +GTK_DOC_V_HTML_0=@echo " DOC Building HTML"; + +GTK_DOC_V_XREF=$(GTK_DOC_V_XREF_@AM_V@) +GTK_DOC_V_XREF_=$(GTK_DOC_V_XREF_@AM_DEFAULT_V@) +GTK_DOC_V_XREF_0=@echo " DOC Fixing cross-references"; + +html-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) + $(GTK_DOC_V_HTML)rm -rf html && mkdir html && \ + mkhtml_options=""; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkhtml_options="$$mkhtml_options --verbose"; \ + fi; \ + fi; \ + gtkdoc-mkhtml 2>&1 --help | grep >/dev/null "\-\-path"; \ + if test "$$?" = "0"; then \ + mkhtml_options="$$mkhtml_options --path=\"$(abs_srcdir)\""; \ + fi; \ + cd html && gtkdoc-mkhtml $$mkhtml_options $(MKHTML_OPTIONS) $(DOC_MODULE) ../$(DOC_MAIN_SGML_FILE) + -@test "x$(HTML_IMAGES)" = "x" || \ + for file in $(HTML_IMAGES) ; do \ + test -f $(abs_srcdir)/$$file && cp $(abs_srcdir)/$$file $(abs_builddir)/html; \ + test -f $(abs_builddir)/$$file && cp $(abs_builddir)/$$file $(abs_builddir)/html; \ + done; + $(GTK_DOC_V_XREF)gtkdoc-fixxref --module=$(DOC_MODULE) --module-dir=html --html-dir=$(HTML_DIR) $(FIXXREF_OPTIONS) + $(AM_V_at)touch html-build.stamp + +#### pdf #### + +GTK_DOC_V_PDF=$(GTK_DOC_V_PDF_@AM_V@) +GTK_DOC_V_PDF_=$(GTK_DOC_V_PDF_@AM_DEFAULT_V@) +GTK_DOC_V_PDF_0=@echo " DOC Building PDF"; + +pdf-build.stamp: sgml.stamp $(DOC_MAIN_SGML_FILE) $(content_files) $(expand_content_files) + $(GTK_DOC_V_PDF)rm -f $(DOC_MODULE).pdf && \ + mkpdf_options=""; \ + gtkdoc-mkpdf 2>&1 --help | grep >/dev/null "\-\-verbose"; \ + if test "$$?" = "0"; then \ + if test "x$(V)" = "x1"; then \ + mkpdf_options="$$mkpdf_options --verbose"; \ + fi; \ + fi; \ + if test "x$(HTML_IMAGES)" != "x"; then \ + for img in $(HTML_IMAGES); do \ + part=`dirname $$img`; \ + echo $$mkpdf_options | grep >/dev/null "\-\-imgdir=$$part "; \ + if test $$? != 0; then \ + mkpdf_options="$$mkpdf_options --imgdir=$$part"; \ + fi; \ + done; \ + fi; \ + gtkdoc-mkpdf --path="$(abs_srcdir)" $$mkpdf_options $(DOC_MODULE) $(DOC_MAIN_SGML_FILE) $(MKPDF_OPTIONS) + $(AM_V_at)touch pdf-build.stamp + +############## + +clean-local: + @rm -f *~ *.bak + @rm -rf .libs + @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-types" ; then \ + rm -f $(DOC_MODULE).types; \ + fi + @if echo $(SCAN_OPTIONS) | grep -q "\-\-rebuild-sections" ; then \ + rm -f $(DOC_MODULE)-sections.txt; \ + fi + +distclean-local: + @rm -rf xml html $(REPORT_FILES) $(DOC_MODULE).pdf \ + $(DOC_MODULE)-decl-list.txt $(DOC_MODULE)-decl.txt + @if test "$(abs_srcdir)" != "$(abs_builddir)" ; then \ + rm -f $(SETUP_FILES) $(DOC_MODULE).types; \ + fi + +maintainer-clean-local: + @rm -rf xml html + +install-data-local: + @installfiles=`echo $(builddir)/html/*`; \ + if test "$$installfiles" = '$(builddir)/html/*'; \ + then echo 1>&2 'Nothing to install' ; \ + else \ + if test -n "$(DOC_MODULE_VERSION)"; then \ + installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ + else \ + installdir="$(DESTDIR)$(TARGET_DIR)"; \ + fi; \ + $(mkinstalldirs) $${installdir} ; \ + for i in $$installfiles; do \ + echo ' $(INSTALL_DATA) '$$i ; \ + $(INSTALL_DATA) $$i $${installdir}; \ + done; \ + if test -n "$(DOC_MODULE_VERSION)"; then \ + mv -f $${installdir}/$(DOC_MODULE).devhelp2 \ + $${installdir}/$(DOC_MODULE)-$(DOC_MODULE_VERSION).devhelp2; \ + fi; \ + $(GTKDOC_REBASE) --relative --dest-dir=$(DESTDIR) --html-dir=$${installdir}; \ + fi + +uninstall-local: + @if test -n "$(DOC_MODULE_VERSION)"; then \ + installdir="$(DESTDIR)$(TARGET_DIR)-$(DOC_MODULE_VERSION)"; \ + else \ + installdir="$(DESTDIR)$(TARGET_DIR)"; \ + fi; \ + rm -rf $${installdir} + +# +# Require gtk-doc when making dist +# +if HAVE_GTK_DOC +dist-check-gtkdoc: docs +else +dist-check-gtkdoc: + @echo "*** gtk-doc is needed to run 'make dist'. ***" + @echo "*** gtk-doc was not found when 'configure' ran. ***" + @echo "*** please install gtk-doc and rerun 'configure'. ***" + @false +endif + +dist-hook: dist-check-gtkdoc all-gtk-doc dist-hook-local + @mkdir $(distdir)/html + @cp ./html/* $(distdir)/html + @-cp ./$(DOC_MODULE).pdf $(distdir)/ + @-cp ./$(DOC_MODULE).types $(distdir)/ + @-cp ./$(DOC_MODULE)-sections.txt $(distdir)/ + @cd $(distdir) && rm -f $(DISTCLEANFILES) + @$(GTKDOC_REBASE) --online --relative --html-dir=$(distdir)/html + +.PHONY : dist-hook-local docs diff --git a/help/C/index.page b/help/C/index.page new file mode 100644 index 0000000..db1646b --- /dev/null +++ b/help/C/index.page @@ -0,0 +1,5 @@ + +Devhelp User Documentation + diff --git a/help/C/search.page b/help/C/search.page new file mode 100644 index 0000000..188199d --- /dev/null +++ b/help/C/search.page @@ -0,0 +1,56 @@ + + + + + + +Search in the side panel + + +

How the search in the side panel works.

+
+ +
+ Case sensitivity +

+ The search is case sensitive when there is an uppercase letter. If the + search terms are all in lowercase, the search is case insensitive. It's + like the “smartcase” feature present in some text editors. +

+
+ +
+ Glob-style pattern matching +

+ A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ + matches an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary + character. +

+
+ +
+ Several search terms +

+ You can search with several search terms (separated by spaces). A symbol + will match only if all the search terms individually match (not + necessarily in the same order of appearance). +

+

+ Note that it is different than searching with the ‘*’ wildcard: with the + ‘*’ wildcard it forces the keywords to be in the same order. +

+

+ For example when searching “gtk window application”, it + matches both “gtk_window_get_application()” and + “GtkApplicationWindow” (among other symbols). +

+

+ On the other hand, searching “gtk*window*application” will + match “gtk_window_get_application()” but not + “GtkApplicationWindow”. +

+
+
diff --git a/help/Makefile.am b/help/Makefile.am new file mode 100644 index 0000000..f3a1ca3 --- /dev/null +++ b/help/Makefile.am @@ -0,0 +1,12 @@ +@YELP_HELP_RULES@ + +HELP_ID = devhelp + +HELP_FILES = \ + index.page \ + search.page \ + $(NULL) + +HELP_LINGUAS = cs de es hr hu pl pt_BR sv + +-include $(top_srcdir)/git.mk diff --git a/help/Makefile.in b/help/Makefile.in new file mode 100644 index 0000000..4770348 --- /dev/null +++ b/help/Makefile.in @@ -0,0 +1,531 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = help +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +HELP_ID = devhelp +HELP_FILES = \ + index.page \ + search.page \ + $(NULL) + +HELP_LINGUAS = cs de es hr hu pl pt_BR sv +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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign help/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign help/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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +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 mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + +@YELP_HELP_RULES@ + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/help/cs/cs.po b/help/cs/cs.po new file mode 100644 index 0000000..68cc329 --- /dev/null +++ b/help/cs/cs.po @@ -0,0 +1,117 @@ +# Czech translation for devhelp. +# Copyright (C) 2018 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# FIRST AUTHOR , YEAR. +# Marek Černocký , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-02-27 13:07+0000\n" +"PO-Revision-Date: 2018-03-03 07:41+0100\n" +"Last-Translator: Marek Černocký \n" +"Language-Team: čeština \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: cs\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Gtranslator 2.91.7\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Uživatelská dokumentace k aplikaci Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "Marek Černocký " + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Hledání v postranním panelu" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Jak funguje hledání v postranním panelu." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Rozlišování velikosti písmen" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"Při hledání se bere ohled na velikost písmen, když se ve výrazu objeví velké " +"písmeno. Pokud jsou v hledaném výrazu jen samá malá písmena, nebere se " +"velikost písmen při hledání v úvahu. Je to podobné, jako inteligentní práce " +"s velikostí písmen v textových editorech, tzv. funkce „smartcase“." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Porovnávání podle globálního stylu vzorů" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Hledaný výraz může být vzor obsahující divoké znaky „*“ a „?“. „*“ vyhovuje " +"cokoliv, včetně prázdného řetězce a „?“ vyhovuje právě jeden libovolný znak." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Hledání několika výrazů" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Můžete hledat několik výrazů naráz (oddělených mezerami). Symbol vyhoví " +"hledání jen v případě, že se jednotlivě shodují všechny hledané " +"výrazy (ne nutně ve stejném pořadí, jak byly zadány)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Pamatujte, že se to liší od hledání pomocí divokého znaku „*“: divoký znak " +"„*“ si vynutí, aby byla klíčová slova ve stejném pořadí." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Například, když hledáte „gtk window application“, bude tomu " +"vyhovovat „gtk_window_get_application()“ a " +"„GtkApplicationWindow“ (mimo jiné)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Na druhou stranu, hledání „gtk*window*application“ bude " +"vyhovovat „gtk_window_get_application()“, ale " +"„GtkApplicationWindow“ už ne." diff --git a/help/cs/cs.stamp b/help/cs/cs.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/cs/cs.stamp diff --git a/help/cs/index.page b/help/cs/index.page new file mode 100644 index 0000000..d902603 --- /dev/null +++ b/help/cs/index.page @@ -0,0 +1,4 @@ + + +Uživatelská dokumentace k aplikaci Devhelp + diff --git a/help/cs/search.page b/help/cs/search.page new file mode 100644 index 0000000..706268d --- /dev/null +++ b/help/cs/search.page @@ -0,0 +1,31 @@ + + + + + + + +Hledání v postranním panelu + + +

Jak funguje hledání v postranním panelu.

+
+ +
+ Rozlišování velikosti písmen +

Při hledání se bere ohled na velikost písmen, když se ve výrazu objeví velké písmeno. Pokud jsou v hledaném výrazu jen samá malá písmena, nebere se velikost písmen při hledání v úvahu. Je to podobné, jako inteligentní práce s velikostí písmen v textových editorech, tzv. funkce „smartcase“.

+
+ +
+ Porovnávání podle globálního stylu vzorů +

Hledaný výraz může být vzor obsahující divoké znaky „*“ a „?“. „*“ vyhovuje cokoliv, včetně prázdného řetězce a „?“ vyhovuje právě jeden libovolný znak.

+
+ +
+ Hledání několika výrazů +

Můžete hledat několik výrazů naráz (oddělených mezerami). Symbol vyhoví hledání jen v případě, že se jednotlivě shodují všechny hledané výrazy (ne nutně ve stejném pořadí, jak byly zadány).

+

Pamatujte, že se to liší od hledání pomocí divokého znaku „*“: divoký znak „*“ si vynutí, aby byla klíčová slova ve stejném pořadí.

+

Například, když hledáte „gtk window application“, bude tomu vyhovovat „gtk_window_get_application()“ a „GtkApplicationWindow“ (mimo jiné).

+

Na druhou stranu, hledání „gtk*window*application“ bude vyhovovat „gtk_window_get_application()“, ale „GtkApplicationWindow“ už ne.

+
+
diff --git a/help/de/de.po b/help/de/de.po new file mode 100644 index 0000000..a7278d6 --- /dev/null +++ b/help/de/de.po @@ -0,0 +1,121 @@ +# German translation for devhelp. +# Copyright (C) 2018 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# Mario Blättermann , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-01-21 19:39+0000\n" +"PO-Revision-Date: 2018-01-22 18:23+0100\n" +"Language-Team: German \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"Last-Translator: Tim Sabsch \n" +"X-Generator: Poedit 2.0.5\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Benutzerhandbuch für Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "Mario Blättermann , 2018." + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Suchen in der Seitenleiste" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "So funktioniert die Suche in der Seitenleiste." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Berücksichtigung von Groß- und Kleinschreibung" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"Bei der Suche werden Groß- oder Kleinschreibung berücksichtigt, wenn ein " +"Großbuchstabe angegeben wird. Besteht der Suchbegriff nur aus " +"Kleinbuchstaben, wird die Groß- oder Kleinschreibung ignoriert. Dies " +"entspricht dem Verhalten des aus einigen Texteditoren bekannten »Smartcase«-" +"Funktionsmerkmals." + +# CHECK +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Treffersuche im Glob-Stil" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Ein Suchbegriff kann ein Muster sein, das die Platzhalter »*« und »?« " +"enthält. Das »*« entspricht einer willkürlichen, auch leeren Zeichenkette, " +"während das »?« für ein einzelnes, willkürliches Zeichen steht." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Mehrere Suchbegriffe" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Sie können nach mehreren Begriffen suchen (durch Leerzeichen getrennt). Ein " +"Symbol wird nur dann angezeigt, wenn alle Suchbegriffe gefunden " +"werden (nicht zwangsläufig in der gleichen Reihenfolge des Auftretens)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Beachten Sie den Unterschied bei der Suche mit dem Platzhalter »*«: Dadurch " +"wird erzwungen, dass die Schlüsselwörter in der gleichen Reihenfolge " +"auftreten." + +# Die Anführungszeichen für bereits formatierte Teile sind hier überflüssig. +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Wenn Sie beispielsweise nach gtk window application suchen, " +"werden sowohl gtk_window_get_application() als auch " +"GtkApplicationWindow gefunden (und weitere Symbole)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Andererseits liefert die Suche nach gtk*window*application " +"auch gtk_window_get_application() als Ergebnis, aber nicht " +"GtkApplicationWindow." diff --git a/help/de/de.stamp b/help/de/de.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/de/de.stamp diff --git a/help/de/index.page b/help/de/index.page new file mode 100644 index 0000000..d03a9e2 --- /dev/null +++ b/help/de/index.page @@ -0,0 +1,4 @@ + + +Benutzerhandbuch für Devhelp + diff --git a/help/de/search.page b/help/de/search.page new file mode 100644 index 0000000..81b41ea --- /dev/null +++ b/help/de/search.page @@ -0,0 +1,37 @@ + + + + + + + + Mario Blättermann + mario.blaettermann@gmail.com + 2018. + + + +Suchen in der Seitenleiste + + +

So funktioniert die Suche in der Seitenleiste.

+
+ +
+ Berücksichtigung von Groß- und Kleinschreibung +

Bei der Suche werden Groß- oder Kleinschreibung berücksichtigt, wenn ein Großbuchstabe angegeben wird. Besteht der Suchbegriff nur aus Kleinbuchstaben, wird die Groß- oder Kleinschreibung ignoriert. Dies entspricht dem Verhalten des aus einigen Texteditoren bekannten »Smartcase«-Funktionsmerkmals.

+
+ +
+ Treffersuche im Glob-Stil +

Ein Suchbegriff kann ein Muster sein, das die Platzhalter »*« und »?« enthält. Das »*« entspricht einer willkürlichen, auch leeren Zeichenkette, während das »?« für ein einzelnes, willkürliches Zeichen steht.

+
+ +
+ Mehrere Suchbegriffe +

Sie können nach mehreren Begriffen suchen (durch Leerzeichen getrennt). Ein Symbol wird nur dann angezeigt, wenn alle Suchbegriffe gefunden werden (nicht zwangsläufig in der gleichen Reihenfolge des Auftretens).

+

Beachten Sie den Unterschied bei der Suche mit dem Platzhalter »*«: Dadurch wird erzwungen, dass die Schlüsselwörter in der gleichen Reihenfolge auftreten.

+

Wenn Sie beispielsweise nach gtk window application suchen, werden sowohl gtk_window_get_application() als auch GtkApplicationWindow gefunden (und weitere Symbole).

+

Andererseits liefert die Suche nach gtk*window*application auch gtk_window_get_application() als Ergebnis, aber nicht GtkApplicationWindow.

+
+
diff --git a/help/es/es.po b/help/es/es.po new file mode 100644 index 0000000..8db58d6 --- /dev/null +++ b/help/es/es.po @@ -0,0 +1,105 @@ +# Spanish translation for devhelp. +# Copyright (C) 2018 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# Daniel Mustieles , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-02-22 11:16+0000\n" +"PO-Revision-Date: 2018-02-22 12:58+0100\n" +"Last-Translator: Daniel Mustieles \n" +"Language-Team: es \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Gtranslator 2.91.6\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Documentación del usuario de Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "Daniel Mustieles , 2018" + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Búsqueda en el panel lateral" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Cómo funciona la búsqueda en el panel lateral." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Distinguir mayúsculas y minúsculas" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Varios términos de búsqueda" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Por ejemplo, al buscar «gtk window application», esto " +"coincide con «gtk_window_get_application()» y " +"«GtkApplicationWindow» (entre otros símbolos)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Por otro lado, buscar «gtk*window*application» coincidirá con " +"«gtk_window_get_application()» pero no con " +"«GtkApplicationWindow»." diff --git a/help/es/es.stamp b/help/es/es.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/es/es.stamp diff --git a/help/es/index.page b/help/es/index.page new file mode 100644 index 0000000..52c9283 --- /dev/null +++ b/help/es/index.page @@ -0,0 +1,4 @@ + + +Documentación del usuario de Devhelp + diff --git a/help/es/search.page b/help/es/search.page new file mode 100644 index 0000000..4862080 --- /dev/null +++ b/help/es/search.page @@ -0,0 +1,52 @@ + + + + + + + + Daniel Mustieles + daniel.mustieles@gmail.com + 2018 + + + +Búsqueda en el panel lateral + + +

Cómo funciona la búsqueda en el panel lateral.

+
+ +
+ Distinguir mayúsculas y minúsculas +

+ The search is case sensitive when there is an uppercase letter. If the + search terms are all in lowercase, the search is case insensitive. It's + like the “smartcase” feature present in some text editors. +

+
+ +
+ Glob-style pattern matching +

+ A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ + matches an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary + character. +

+
+ +
+ Varios términos de búsqueda +

+ You can search with several search terms (separated by spaces). A symbol + will match only if all the search terms individually match (not + necessarily in the same order of appearance). +

+

+ Note that it is different than searching with the ‘*’ wildcard: with the + ‘*’ wildcard it forces the keywords to be in the same order. +

+

Por ejemplo, al buscar «gtk window application», esto coincide con «gtk_window_get_application()» y «GtkApplicationWindow» (entre otros símbolos).

+

Por otro lado, buscar «gtk*window*application» coincidirá con «gtk_window_get_application()» pero no con «GtkApplicationWindow».

+
+
diff --git a/help/hr/hr.po b/help/hr/hr.po new file mode 100644 index 0000000..b6e958d --- /dev/null +++ b/help/hr/hr.po @@ -0,0 +1,119 @@ +# Croatian translation for devhelp. +# Copyright (C) 2018 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-02-22 11:16+0000\n" +"PO-Revision-Date: 2018-02-26 16:37+0100\n" +"Last-Translator: gogo \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Poedit 2.0.6\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Devhelp korisnička dokumentacija" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "" +"Launchpad Contributions:\n" +" gogo https://launchpad.net/~trebelnik-stefina" + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Pretraži u bočnom panelu" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Kako radi pretraga u bočnom panelu." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Osjetljivost na velika i mala slova" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"Pretraga je osjetljiva na mala i velika slova kada postoje velika slova. Ako " +"izraz pretrage sadrži sva mala slova, pretraga je osjetljiva na velika i " +"mala slova. To je poput \"pametne\" značajke prisutne u pojedinim " +"uređivačima teksta." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Podudaranje uzoraka prema globalnom izgledu" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Izraz pretrage može biti uzorak koji sadrži ‘*’ i ‘?’ zamjenske znakove. ‘*’ " +"odgovara proizvoljnom, moguće praznom izrazu; a '?' odgovara proizvoljnom " +"znaku." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Nekoliko izraza pretrage" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Možete pretraživati s nekoliko izraza pretrage (odvojenim zarezom). Simbol " +"će se samo podudarati ako se svi izrazi pretrage pojedinačno " +"podudaraju (ne nužno u istom redoslijedu pojavljivanja)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Zapamtite da je drugačije od pretraživanja sa ‘*’ zamjenskim znakom: ‘*’ " +"zamjenski znak prisiljuje ključnu riječ da bude u istom redoslijedu." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Na primjer pri pretraživanju “gtk window application”, " +"podudara se oboje “gtk_window_get_application()” i " +"“GtkApplicationWindow” (među ostalim simbolima)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"U drugu ruku, pretraživanje “gtk*window*application” će se " +"podudarati sa “gtk_window_get_application()” ali ne i sa " +"“GtkApplicationWindow”." diff --git a/help/hr/hr.stamp b/help/hr/hr.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/hr/hr.stamp diff --git a/help/hr/index.page b/help/hr/index.page new file mode 100644 index 0000000..6a6bf7b --- /dev/null +++ b/help/hr/index.page @@ -0,0 +1,4 @@ + + +Devhelp korisnička dokumentacija + diff --git a/help/hr/search.page b/help/hr/search.page new file mode 100644 index 0000000..8c84a48 --- /dev/null +++ b/help/hr/search.page @@ -0,0 +1,31 @@ + + + + + + + +Pretraži u bočnom panelu + + +

Kako radi pretraga u bočnom panelu.

+
+ +
+ Osjetljivost na velika i mala slova +

Pretraga je osjetljiva na mala i velika slova kada postoje velika slova. Ako izraz pretrage sadrži sva mala slova, pretraga je osjetljiva na velika i mala slova. To je poput "pametne" značajke prisutne u pojedinim uređivačima teksta.

+
+ +
+ Podudaranje uzoraka prema globalnom izgledu +

Izraz pretrage može biti uzorak koji sadrži ‘*’ i ‘?’ zamjenske znakove. ‘*’ odgovara proizvoljnom, moguće praznom izrazu; a '?' odgovara proizvoljnom znaku.

+
+ +
+ Nekoliko izraza pretrage +

Možete pretraživati s nekoliko izraza pretrage (odvojenim zarezom). Simbol će se samo podudarati ako se svi izrazi pretrage pojedinačno podudaraju (ne nužno u istom redoslijedu pojavljivanja).

+

Zapamtite da je drugačije od pretraživanja sa ‘*’ zamjenskim znakom: ‘*’ zamjenski znak prisiljuje ključnu riječ da bude u istom redoslijedu.

+

Na primjer pri pretraživanju “gtk window application”, podudara se oboje “gtk_window_get_application()” i “GtkApplicationWindow” (među ostalim simbolima).

+

U drugu ruku, pretraživanje “gtk*window*application” će se podudarati sa “gtk_window_get_application()” ali ne i sa “GtkApplicationWindow”.

+
+
diff --git a/help/hu/hu.po b/help/hu/hu.po new file mode 100644 index 0000000..bb090f2 --- /dev/null +++ b/help/hu/hu.po @@ -0,0 +1,121 @@ +# Hungarian translation for devhelp. +# Copyright (C) 2018 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# +# Balázs Úr , 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-01-28 17:56+0000\n" +"PO-Revision-Date: 2018-01-28 20:29+0100\n" +"Last-Translator: Balázs Úr \n" +"Language-Team: Hungarian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 1.2\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Devhelp felhasználói dokumentáció" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "Úr Balázs , 2018." + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Keresés az oldalpanelen" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Hogyan működik a keresés az oldalpanelen." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Kis- és nagybetű érzékenység" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"A keresés érzékeny a kis- és nagybetűkre, amikor nagybetű található. Ha a " +"keresési kifejezés teljesen kisbetűs, akkor a keresés nem érzékeny a kis- és " +"nagybetűkre. Ez olyan mint az „okos betűegyezés” funkció, amely megtalálható " +"néhány szövegszerkesztőben." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Glob-stílusú mintaillesztés" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Egy keresési kifejezés lehet „*” és „?” helyettesítő karaktereket tartalmazó " +"minta is. A „*” egy tetszőleges, akár üres karakterláncra, a „?” egy " +"tetszőleges karakterre illeszkedik." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Több keresési kifejezés" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Kereshet több keresési kifejezéssel is (szóközökkel elválasztva). Egy " +"szimbólum csak akkor illeszkedik, ha az összes keresési kifejezés " +"egyénileg illeszkedik (nem szükséges, hogy azonos sorrendű megjelenésük " +"legyen)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Ne feledje, hogy ez eltérő a „*” helyettesítő karakterrel való kereséstől: a " +"„*” helyettesítő karakterrel arra kényszeríti a kulcsszavakat, hogy " +"ugyanolyan sorrendben legyenek." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Például amikor a „gtk window application” kifejezésre keres " +"rá, akkor az illeszkedik mind a „gtk_window_get_application()”, " +"mind a „GtkApplicationWindow” szövegre (egyéb szimbólumok " +"mellett)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Másrészről a „gtk*window*application” keresése illeszkedni fog " +"a „gtk_window_get_application()” szövegre, de nem illeszkedik a " +"„GtkApplicationWindow” szövegre." + diff --git a/help/hu/hu.stamp b/help/hu/hu.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/hu/hu.stamp diff --git a/help/hu/index.page b/help/hu/index.page new file mode 100644 index 0000000..c217067 --- /dev/null +++ b/help/hu/index.page @@ -0,0 +1,4 @@ + + +Devhelp felhasználói dokumentáció + diff --git a/help/hu/search.page b/help/hu/search.page new file mode 100644 index 0000000..c70e0ba --- /dev/null +++ b/help/hu/search.page @@ -0,0 +1,37 @@ + + + + + + + + Úr Balázs + urbalazs at gmail dot com + 2018. + + + +Keresés az oldalpanelen + + +

Hogyan működik a keresés az oldalpanelen.

+
+ +
+ Kis- és nagybetű érzékenység +

A keresés érzékeny a kis- és nagybetűkre, amikor nagybetű található. Ha a keresési kifejezés teljesen kisbetűs, akkor a keresés nem érzékeny a kis- és nagybetűkre. Ez olyan mint az „okos betűegyezés” funkció, amely megtalálható néhány szövegszerkesztőben.

+
+ +
+ Glob-stílusú mintaillesztés +

Egy keresési kifejezés lehet „*” és „?” helyettesítő karaktereket tartalmazó minta is. A „*” egy tetszőleges, akár üres karakterláncra, a „?” egy tetszőleges karakterre illeszkedik.

+
+ +
+ Több keresési kifejezés +

Kereshet több keresési kifejezéssel is (szóközökkel elválasztva). Egy szimbólum csak akkor illeszkedik, ha az összes keresési kifejezés egyénileg illeszkedik (nem szükséges, hogy azonos sorrendű megjelenésük legyen).

+

Ne feledje, hogy ez eltérő a „*” helyettesítő karakterrel való kereséstől: a „*” helyettesítő karakterrel arra kényszeríti a kulcsszavakat, hogy ugyanolyan sorrendben legyenek.

+

Például amikor a „gtk window application” kifejezésre keres rá, akkor az illeszkedik mind a „gtk_window_get_application()”, mind a „GtkApplicationWindow” szövegre (egyéb szimbólumok mellett).

+

Másrészről a „gtk*window*application” keresése illeszkedni fog a „gtk_window_get_application()” szövegre, de nem illeszkedik a „GtkApplicationWindow” szövegre.

+
+
diff --git a/help/pl/index.page b/help/pl/index.page new file mode 100644 index 0000000..a80cc09 --- /dev/null +++ b/help/pl/index.page @@ -0,0 +1,4 @@ + + +Dokumentacja programu Devhelp + diff --git a/help/pl/pl.po b/help/pl/pl.po new file mode 100644 index 0000000..ac1145d --- /dev/null +++ b/help/pl/pl.po @@ -0,0 +1,119 @@ +# Polish translation for devhelp help. +# Copyright © 2018 the devhelp authors. +# This file is distributed under the same license as the devhelp help. +# Piotr Drąg , 2018. +# Aviary.pl , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp-help\n" +"POT-Creation-Date: 2018-02-06 21:50+0000\n" +"PO-Revision-Date: 2018-02-08 01:44+0100\n" +"Last-Translator: Piotr Drąg \n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Dokumentacja programu Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "" +"Piotr Drąg , 2018\n" +"Aviary.pl , 2018" + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Wyszukiwanie w bocznym panelu" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Jak działa wyszukiwanie w panelu bocznym." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Rozróżnianie wielkości znaków" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"Wyszukiwanie rozróżnia wielkość znaków, kiedy zawarta jest wielka litera. " +"Jeśli wszystkie terminy wyszukiwania są w małych znakach, to wyszukiwanie " +"nie rozróżnia wielkości znaków. Jest to podobne do funkcji „inteligentna " +"wielkość znaków” obecnej w niektórych edytorach tekstu." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Dopasowywanie wzorów" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Termin wyszukiwania może być wzorem zawierającym wieloznaczniki „*” i „?”. " +"„*” dopasowuje dowolny, także pusty, ciąg, a  „?” dopasowuje dowolny znak." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Kilka terminów wyszukiwania" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Można wyszukiwać kilka terminów (oddzielonych spacjami). Symbol zostanie " +"dopasowany tylko, jeśli wszystkie terminy wyszukiwania pasują " +"indywidualnie (niekoniecznie w tej samej kolejności)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Zauważ, że to co innego niż wyszukiwanie za pomocą wieloznacznika „*”: " +"wieloznacznik wymusza, aby słowa kluczowe były w tej samej kolejności." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Na przykład podczas wyszukiwania „gtk window application” " +"dopasowane zostaną „gtk_window_get_application()” " +"i „GtkApplicationWindow” (oraz inne symbole)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Z drugiej strony, wyszukiwanie „gtk*window*application” " +"dopasuje „gtk_window_get_application()”, ale nie " +"„GtkApplicationWindow”." diff --git a/help/pl/pl.stamp b/help/pl/pl.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/pl/pl.stamp diff --git a/help/pl/search.page b/help/pl/search.page new file mode 100644 index 0000000..9871724 --- /dev/null +++ b/help/pl/search.page @@ -0,0 +1,43 @@ + + + + + + + + Piotr Drąg + piotrdrag@gmail.com + 2018 + + + + Aviary.pl + community-poland@mozilla.org + 2018 + + + +Wyszukiwanie w bocznym panelu + + +

Jak działa wyszukiwanie w panelu bocznym.

+
+ +
+ Rozróżnianie wielkości znaków +

Wyszukiwanie rozróżnia wielkość znaków, kiedy zawarta jest wielka litera. Jeśli wszystkie terminy wyszukiwania są w małych znakach, to wyszukiwanie nie rozróżnia wielkości znaków. Jest to podobne do funkcji „inteligentna wielkość znaków” obecnej w niektórych edytorach tekstu.

+
+ +
+ Dopasowywanie wzorów +

Termin wyszukiwania może być wzorem zawierającym wieloznaczniki „*” i „?”. „*” dopasowuje dowolny, także pusty, ciąg, a  „?” dopasowuje dowolny znak.

+
+ +
+ Kilka terminów wyszukiwania +

Można wyszukiwać kilka terminów (oddzielonych spacjami). Symbol zostanie dopasowany tylko, jeśli wszystkie terminy wyszukiwania pasują indywidualnie (niekoniecznie w tej samej kolejności).

+

Zauważ, że to co innego niż wyszukiwanie za pomocą wieloznacznika „*”: wieloznacznik wymusza, aby słowa kluczowe były w tej samej kolejności.

+

Na przykład podczas wyszukiwania „gtk window application” dopasowane zostaną „gtk_window_get_application()” i „GtkApplicationWindow” (oraz inne symbole).

+

Z drugiej strony, wyszukiwanie „gtk*window*application” dopasuje „gtk_window_get_application()”, ale nie „GtkApplicationWindow”.

+
+
diff --git a/help/pt_BR/index.page b/help/pt_BR/index.page new file mode 100644 index 0000000..df10eb3 --- /dev/null +++ b/help/pt_BR/index.page @@ -0,0 +1,4 @@ + + +Documentação do usuário do Devhelp + diff --git a/help/pt_BR/pt_BR.po b/help/pt_BR/pt_BR.po new file mode 100644 index 0000000..08f628f --- /dev/null +++ b/help/pt_BR/pt_BR.po @@ -0,0 +1,117 @@ +# Brazilian Portuguese translation for devhelp. +# Copyright (C) 2018 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# Rafael Fontenelle , 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"POT-Creation-Date: 2018-02-11 16:27+0000\n" +"PO-Revision-Date: 2018-02-11 15:53-0200\n" +"Last-Translator: Rafael Fontenelle \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Virtaal 1.0.0-beta1\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Documentação do usuário do Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "Rafael Fontenelle , 2018" + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Pesquisando no painel lateral" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Como a pesquisa no painel lateral funciona." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Diferenciando maiúsculas de minúsculas" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"A pesquisa diferencia maiúsculas de minúsculas quando há uma letra " +"maiúscula. Se os termos de pesquisa estiverem em letras minúsculas, a " +"pesquisa não é insensível a maiúsculas e minúsculas. É como o recurso " +"“smartcase” presente em alguns editores de texto." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Combinação de padrão de estilo glob" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"Um termo de pesquisa pode ser um padrão contendo curingas “*” e “?”. “*” " +"corresponde a uma string arbitrária, possivelmente vazia; e “?” corresponde " +"a um caractere arbitrário." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Vários termos de pesquisa" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Você pode pesquisar com vários termos de pesquisa (separados por espaços). " +"Um símbolo irá coincidir apenas se todos os termos de pesquisa " +"coincidirem individualmente (não necessariamente na mesma ordem de " +"aparência)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Observe que é diferente de pesquisar com o curinga “*”: com o curinga “*”, " +"ele força as palavras-chave a estarem na mesma ordem." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"Por exemplo, ao pesquisar “gtk window application”, ele " +"corresponde a “gtk_window_get_application()” e " +"“GtkApplicationWindow” (entre outros símbolos)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Por outro lado, a pesquisa “gtk*window*application” combinará " +"“gtk_window_get_application()” mas não " +"“GtkApplicationWindow”." diff --git a/help/pt_BR/pt_BR.stamp b/help/pt_BR/pt_BR.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/pt_BR/pt_BR.stamp diff --git a/help/pt_BR/search.page b/help/pt_BR/search.page new file mode 100644 index 0000000..00c340b --- /dev/null +++ b/help/pt_BR/search.page @@ -0,0 +1,37 @@ + + + + + + + + Rafael Fontenelle + rafaelff@gnome.org + 2018 + + + +Pesquisando no painel lateral + + +

Como a pesquisa no painel lateral funciona.

+
+ +
+ Diferenciando maiúsculas de minúsculas +

A pesquisa diferencia maiúsculas de minúsculas quando há uma letra maiúscula. Se os termos de pesquisa estiverem em letras minúsculas, a pesquisa não é insensível a maiúsculas e minúsculas. É como o recurso “smartcase” presente em alguns editores de texto.

+
+ +
+ Combinação de padrão de estilo glob +

Um termo de pesquisa pode ser um padrão contendo curingas “*” e “?”. “*” corresponde a uma string arbitrária, possivelmente vazia; e “?” corresponde a um caractere arbitrário.

+
+ +
+ Vários termos de pesquisa +

Você pode pesquisar com vários termos de pesquisa (separados por espaços). Um símbolo irá coincidir apenas se todos os termos de pesquisa coincidirem individualmente (não necessariamente na mesma ordem de aparência).

+

Observe que é diferente de pesquisar com o curinga “*”: com o curinga “*”, ele força as palavras-chave a estarem na mesma ordem.

+

Por exemplo, ao pesquisar “gtk window application”, ele corresponde a “gtk_window_get_application()” e “GtkApplicationWindow” (entre outros símbolos).

+

Por outro lado, a pesquisa “gtk*window*application” combinará “gtk_window_get_application()” mas não “GtkApplicationWindow”.

+
+
diff --git a/help/sv/index.page b/help/sv/index.page new file mode 100644 index 0000000..b86f2cf --- /dev/null +++ b/help/sv/index.page @@ -0,0 +1,4 @@ + + +Användardokumentation för Devhelp + diff --git a/help/sv/search.page b/help/sv/search.page new file mode 100644 index 0000000..3dfa3e5 --- /dev/null +++ b/help/sv/search.page @@ -0,0 +1,31 @@ + + + + + + + +Sök inuti sidopanelen + + +

Hur sökning i sidopanelen fungerar.

+
+ +
+ Skiftlägeskänslighet +

Sökningen är skiftlägeskänslig när det finns ett versalt tecken. Om söktermerna endast använder gemener är sökningen skiftlägesokänslig. Det fungerar som funktionen ”smartskiftläge” som finns i vissa textredigerare.

+
+ +
+ Mönstermatchning med jokertecken +

En sökterm kan vara ett mönster som innehåller jokertecknen ”*” och ”?”. ”*" matchar en godtycklig, eventuellt tom, sträng; och ”?” matchar ett godtyckligt tecken.

+
+ +
+ Flera söktermer +

Du kan söka med flera söktermer (separerade av blanksteg). En symbol kommer endast att matcha om alla söktermerna matchar individuellt (inte nödvändigtvis i samma ordning som de förekommer).

+

Notera att detta är annorlunda än att söka med jokertecknet ”*”: med jokertecknet ”*” tvingas nyckelorden att vara i samma ordning.

+

När du till exempel söker efter ”gtk window application” matchar detta både ”gtk_window_get_application()” och ”GtkApplicationWindow” (bland andra symboler).

+

Om du å andra sidan söker efter ”gtk*window*application” kommer ”gtk_window_get_application()” att matcha, men ”GtkApplicationWindow” kommer inte att göra det.

+
+
diff --git a/help/sv/sv.po b/help/sv/sv.po new file mode 100644 index 0000000..07bbf9e --- /dev/null +++ b/help/sv/sv.po @@ -0,0 +1,123 @@ +# Swedish translation for devhelp. +# Copyright © 2018 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Sebastian Rasmussen , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp gnome-3-28\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2018-03-11 20:23+0000\n" +"PO-Revision-Date: 2018-03-29 00:28+0200\n" +"Last-Translator: Sebastian Rasmussen \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 2.0.6\n" +"X-Project-Style: gnome\n" + +#. (itstool) path: page/title +#: C/index.page:4 +msgid "Devhelp User Documentation" +msgstr "Användardokumentation för Devhelp" + +#. Put one translator per line, in the form NAME , YEAR1, YEAR2 +msgctxt "_" +msgid "translator-credits" +msgstr "" +"Sebastian Rasmussen \n" +"\n" +"Skicka synpunkter på översättningen till\n" +"." + +#. (itstool) path: page/title +#: C/search.page:10 +msgid "Search in the side panel" +msgstr "Sök inuti sidopanelen" + +#. (itstool) path: synopsis/p +#: C/search.page:13 +msgid "How the search in the side panel works." +msgstr "Hur sökning i sidopanelen fungerar." + +#. (itstool) path: section/title +#: C/search.page:17 +msgid "Case sensitivity" +msgstr "Skiftlägeskänslighet" + +#. (itstool) path: section/p +#: C/search.page:18 +msgid "" +"The search is case sensitive when there is an uppercase letter. If the " +"search terms are all in lowercase, the search is case insensitive. It's like " +"the “smartcase” feature present in some text editors." +msgstr "" +"Sökningen är skiftlägeskänslig när det finns ett versalt tecken. Om " +"söktermerna endast använder gemener är sökningen skiftlägesokänslig. Det " +"fungerar som funktionen ”smartskiftläge” som finns i vissa textredigerare." + +#. (itstool) path: section/title +#: C/search.page:26 +msgid "Glob-style pattern matching" +msgstr "Mönstermatchning med jokertecken" + +#. (itstool) path: section/p +#: C/search.page:27 +msgid "" +"A search term can be a pattern containing ‘*’ and ‘?’ wildcards. ‘*’ matches " +"an arbitrary, possibly empty, string; and ‘?’ matches an arbitrary character." +msgstr "" +"En sökterm kan vara ett mönster som innehåller jokertecknen ”*” och ”?”. ”*" +"\" matchar en godtycklig, eventuellt tom, sträng; och ”?” matchar ett " +"godtyckligt tecken." + +#. (itstool) path: section/title +#: C/search.page:35 +msgid "Several search terms" +msgstr "Flera söktermer" + +#. (itstool) path: section/p +#: C/search.page:36 +msgid "" +"You can search with several search terms (separated by spaces). A symbol " +"will match only if all the search terms individually match (not " +"necessarily in the same order of appearance)." +msgstr "" +"Du kan söka med flera söktermer (separerade av blanksteg). En symbol kommer " +"endast att matcha om alla söktermerna matchar individuellt (inte " +"nödvändigtvis i samma ordning som de förekommer)." + +#. (itstool) path: section/p +#: C/search.page:41 +msgid "" +"Note that it is different than searching with the ‘*’ wildcard: with the ‘*’ " +"wildcard it forces the keywords to be in the same order." +msgstr "" +"Notera att detta är annorlunda än att söka med jokertecknet ”*”: med " +"jokertecknet ”*” tvingas nyckelorden att vara i samma ordning." + +#. (itstool) path: section/p +#: C/search.page:45 +msgid "" +"For example when searching “gtk window application”, it " +"matches both “gtk_window_get_application()” and " +"“GtkApplicationWindow” (among other symbols)." +msgstr "" +"När du till exempel söker efter ”gtk window application” " +"matchar detta både ”gtk_window_get_application()” och " +"”GtkApplicationWindow” (bland andra symboler)." + +#. (itstool) path: section/p +#: C/search.page:50 +msgid "" +"On the other hand, searching “gtk*window*application” will " +"match “gtk_window_get_application()” but not " +"“GtkApplicationWindow”." +msgstr "" +"Om du å andra sidan söker efter ”gtk*window*application” " +"kommer ”gtk_window_get_application()” att matcha, men " +"”GtkApplicationWindow” kommer inte att göra det." diff --git a/help/sv/sv.stamp b/help/sv/sv.stamp new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/help/sv/sv.stamp diff --git a/install-sh b/install-sh new file mode 100755 index 0000000..0360b79 --- /dev/null +++ b/install-sh @@ -0,0 +1,501 @@ +#!/bin/sh +# install - install a program, script, or datafile + +scriptversion=2016-01-11.22; # UTC + +# 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. + +tab=' ' +nl=' +' +IFS=" $tab$nl" + +# Set DOITPROG to "echo" to test this script. + +doit=${DOITPROG-} +doit_exec=${doit:-exec} + +# Put in absolute file names if you don't have them in your path; +# or use environment vars. + +chgrpprog=${CHGRPPROG-chgrp} +chmodprog=${CHMODPROG-chmod} +chownprog=${CHOWNPROG-chown} +cmpprog=${CMPPROG-cmp} +cpprog=${CPPROG-cp} +mkdirprog=${MKDIRPROG-mkdir} +mvprog=${MVPROG-mv} +rmprog=${RMPROG-rm} +stripprog=${STRIPPROG-strip} + +posix_mkdir= + +# Desired mode of installed file. +mode=0755 + +chgrpcmd= +chmodcmd=$chmodprog +chowncmd= +mvcmd=$mvprog +rmcmd="$rmprog -f" +stripcmd= + +src= +dst= +dir_arg= +dst_arg= + +copy_on_change=false +is_target_a_directory=possibly + +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: + --help display this help and exit. + --version display version info and exit. + + -c (ignored) + -C install only if different (preserve the last data modification time) + -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. + +Environment variables override the default commands: + CHGRPPROG CHMODPROG CHOWNPROG CMPPROG CPPROG MKDIRPROG MVPROG + RMPROG STRIPPROG +" + +while test $# -ne 0; do + case $1 in + -c) ;; + + -C) copy_on_change=true;; + + -d) dir_arg=true;; + + -g) chgrpcmd="$chgrpprog $2" + shift;; + + --help) echo "$usage"; exit $?;; + + -m) mode=$2 + case $mode in + *' '* | *"$tab"* | *"$nl"* | *'*'* | *'?'* | *'['*) + echo "$0: invalid mode: $mode" >&2 + exit 1;; + esac + shift;; + + -o) chowncmd="$chownprog $2" + shift;; + + -s) stripcmd=$stripprog;; + + -t) + is_target_a_directory=always + dst_arg=$2 + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + shift;; + + -T) is_target_a_directory=never;; + + --version) echo "$0 $scriptversion"; exit $?;; + + --) shift + break;; + + -*) echo "$0: invalid option: $1" >&2 + exit 1;; + + *) break;; + esac + shift +done + +# We allow the use of options -d and -T together, by making -d +# take the precedence; this is for compatibility with GNU install. + +if test -n "$dir_arg"; then + if test -n "$dst_arg"; then + echo "$0: target directory not allowed when installing a directory." >&2 + exit 1 + fi +fi + +if test $# -ne 0 && test -z "$dir_arg$dst_arg"; then + # When -d is used, all remaining arguments are directories to create. + # When -t is used, the destination is already specified. + # Otherwise, the last argument is the destination. Remove it from $@. + for arg + do + if test -n "$dst_arg"; then + # $@ is not empty: it contains at least $arg. + set fnord "$@" "$dst_arg" + shift # fnord + fi + shift # arg + dst_arg=$arg + # Protect names problematic for 'test' and other utilities. + case $dst_arg in + -* | [=\(\)!]) dst_arg=./$dst_arg;; + esac + done +fi + +if test $# -eq 0; 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 + +if test -z "$dir_arg"; then + if test $# -gt 1 || test "$is_target_a_directory" = always; then + if test ! -d "$dst_arg"; then + echo "$0: $dst_arg: Is not a directory." >&2 + exit 1 + fi + fi +fi + +if test -z "$dir_arg"; then + do_exit='(exit $ret); exit $ret' + trap "ret=129; $do_exit" 1 + trap "ret=130; $do_exit" 2 + trap "ret=141; $do_exit" 13 + trap "ret=143; $do_exit" 15 + + # Set umask so as not to create temps with too-generous modes. + # However, 'strip' requires both read and write access to temps. + case $mode in + # Optimize common cases. + *644) cp_umask=133;; + *755) cp_umask=22;; + + *[0-7]) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw='% 200' + fi + cp_umask=`expr '(' 777 - $mode % 1000 ')' $u_plus_rw`;; + *) + if test -z "$stripcmd"; then + u_plus_rw= + else + u_plus_rw=,u+rw + fi + cp_umask=$mode$u_plus_rw;; + esac +fi + +for src +do + # Protect names problematic for 'test' and other utilities. + case $src in + -* | [=\(\)!]) src=./$src;; + esac + + if test -n "$dir_arg"; then + dst=$src + dstdir=$dst + test -d "$dstdir" + dstdir_status=$? + 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 "$dst_arg"; then + echo "$0: no destination specified." >&2 + exit 1 + fi + dst=$dst_arg + + # 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 "$is_target_a_directory" = never; then + echo "$0: $dst_arg: Is a directory" >&2 + exit 1 + fi + dstdir=$dst + dst=$dstdir/`basename "$src"` + dstdir_status=0 + else + dstdir=`dirname "$dst"` + test -d "$dstdir" + dstdir_status=$? + fi + fi + + obsolete_mkdir_used=false + + if test $dstdir_status != 0; then + case $posix_mkdir in + '') + # Create intermediate dirs using mode 755 as modified by the umask. + # This is like FreeBSD 'install' as of 1997-10-28. + umask=`umask` + case $stripcmd.$umask in + # Optimize common cases. + *[2367][2367]) mkdir_umask=$umask;; + .*0[02][02] | .[02][02] | .[02]) mkdir_umask=22;; + + *[0-7]) + mkdir_umask=`expr $umask + 22 \ + - $umask % 100 % 40 + $umask % 20 \ + - $umask % 10 % 4 + $umask % 2 + `;; + *) mkdir_umask=$umask,go-w;; + esac + + # With -d, create the new directory with the user-specified mode. + # Otherwise, rely on $mkdir_umask. + if test -n "$dir_arg"; then + mkdir_mode=-m$mode + else + mkdir_mode= + fi + + posix_mkdir=false + case $umask in + *[123567][0-7][0-7]) + # POSIX mkdir -p sets u+wx bits regardless of umask, which + # is incompatible with FreeBSD 'install' when (umask & 300) != 0. + ;; + *) + tmpdir=${TMPDIR-/tmp}/ins$RANDOM-$$ + trap 'ret=$?; rmdir "$tmpdir/d" "$tmpdir" 2>/dev/null; exit $ret' 0 + + if (umask $mkdir_umask && + exec $mkdirprog $mkdir_mode -p -- "$tmpdir/d") >/dev/null 2>&1 + then + if test -z "$dir_arg" || { + # Check for POSIX incompatibilities with -m. + # HP-UX 11.23 and IRIX 6.5 mkdir -m -p sets group- or + # other-writable bit of parent directory when it shouldn't. + # FreeBSD 6.1 mkdir -m -p sets mode of existing directory. + ls_ld_tmpdir=`ls -ld "$tmpdir"` + case $ls_ld_tmpdir in + d????-?r-*) different_mode=700;; + d????-?--*) different_mode=755;; + *) false;; + esac && + $mkdirprog -m$different_mode -p -- "$tmpdir" && { + ls_ld_tmpdir_1=`ls -ld "$tmpdir"` + test "$ls_ld_tmpdir" = "$ls_ld_tmpdir_1" + } + } + then posix_mkdir=: + fi + rmdir "$tmpdir/d" "$tmpdir" + else + # Remove any dirs left behind by ancient mkdir implementations. + rmdir ./$mkdir_mode ./-p ./-- 2>/dev/null + fi + trap '' 0;; + esac;; + esac + + if + $posix_mkdir && ( + umask $mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir" + ) + then : + else + + # The umask is ridiculous, or mkdir does not conform to POSIX, + # or it failed possibly due to a race condition. Create the + # directory the slow way, step by step, checking for races as we go. + + case $dstdir in + /*) prefix='/';; + [-=\(\)!]*) prefix='./';; + *) prefix='';; + esac + + oIFS=$IFS + IFS=/ + set -f + set fnord $dstdir + shift + set +f + IFS=$oIFS + + prefixes= + + for d + do + test X"$d" = X && continue + + prefix=$prefix$d + if test -d "$prefix"; then + prefixes= + else + if $posix_mkdir; then + (umask=$mkdir_umask && + $doit_exec $mkdirprog $mkdir_mode -p -- "$dstdir") && break + # Don't fail if two instances are running concurrently. + test -d "$prefix" || exit 1 + else + case $prefix in + *\'*) qprefix=`echo "$prefix" | sed "s/'/'\\\\\\\\''/g"`;; + *) qprefix=$prefix;; + esac + prefixes="$prefixes '$qprefix'" + fi + fi + prefix=$prefix/ + done + + if test -n "$prefixes"; then + # Don't fail if two instances are running concurrently. + (umask $mkdir_umask && + eval "\$doit_exec \$mkdirprog $prefixes") || + test -d "$dstdir" || exit 1 + obsolete_mkdir_used=true + fi + fi + fi + + if test -n "$dir_arg"; then + { test -z "$chowncmd" || $doit $chowncmd "$dst"; } && + { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } && + { test "$obsolete_mkdir_used$chowncmd$chgrpcmd" = false || + test -z "$chmodcmd" || $doit $chmodcmd $mode "$dst"; } || exit 1 + else + + # 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 + + # Copy the file name to the temp name. + (umask $cp_umask && $doit_exec $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 $mode "$dsttmp"; } && + + # If -C, don't bother to copy if it wouldn't change the file. + if $copy_on_change && + old=`LC_ALL=C ls -dlL "$dst" 2>/dev/null` && + new=`LC_ALL=C ls -dlL "$dsttmp" 2>/dev/null` && + set -f && + set X $old && old=:$2:$4:$5:$6 && + set X $new && new=:$2:$4:$5:$6 && + set +f && + test "$old" = "$new" && + $cmpprog "$dst" "$dsttmp" >/dev/null 2>&1 + then + rm -f "$dsttmp" + else + # Rename the file to the real destination. + $doit $mvcmd -f "$dsttmp" "$dst" 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. + { + test ! -f "$dst" || + $doit $rmcmd -f "$dst" 2>/dev/null || + { $doit $mvcmd -f "$dst" "$rmtmp" 2>/dev/null && + { $doit $rmcmd -f "$rmtmp" 2>/dev/null; :; } + } || + { echo "$0: cannot unlink or rename $dst" >&2 + (exit 1); exit 1 + } + } && + + # Now rename the file to the real destination. + $doit $mvcmd "$dsttmp" "$dst" + } + fi || exit 1 + + trap '' 0 + fi +done + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/ltmain.sh b/ltmain.sh new file mode 100644 index 0000000..0f0a2da --- /dev/null +++ b/ltmain.sh @@ -0,0 +1,11147 @@ +#! /bin/sh +## DO NOT EDIT - This file generated from ./build-aux/ltmain.in +## by inline-source v2014-01-03.01 + +# libtool (GNU libtool) 2.4.6 +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit , 1996 + +# Copyright (C) 1996-2015 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. + +# GNU Libtool 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. +# +# As a special exception to the GNU General Public License, +# if you distribute this file as part of a program or library that +# is built using GNU Libtool, you may include this file under the +# same distribution terms that you use for the rest of that program. +# +# GNU Libtool 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, see . + + +PROGRAM=libtool +PACKAGE=libtool +VERSION=2.4.6 +package_revision=2.4.6 + + +## ------ ## +## Usage. ## +## ------ ## + +# Run './libtool --help' for help with using this script from the +# command line. + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# After configure completes, it has a better idea of some of the +# shell tools we need than the defaults used by the functions shared +# with bootstrap, so set those here where they can still be over- +# ridden by the user, but otherwise take precedence. + +: ${AUTOCONF="autoconf"} +: ${AUTOMAKE="automake"} + + +## -------------------------- ## +## Source external libraries. ## +## -------------------------- ## + +# Much of our low-level functionality needs to be sourced from external +# libraries, which are installed to $pkgauxdir. + +# Set a version string for this script. +scriptversion=2015-01-20.17; # UTC + +# General shell script boiler plate, and helper functions. +# Written by Gary V. Vaughan, 2004 + +# Copyright (C) 2004-2015 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. + +# 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 3 of the License, or +# (at your option) any later version. + +# As a special exception to the GNU General Public License, if you distribute +# this file as part of a program or library that is built using GNU Libtool, +# you may include this file under the same distribution terms that you use +# for the rest of that program. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNES 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, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# Evaluate this file near the top of your script to gain access to +# the functions and variables defined here: +# +# . `echo "$0" | ${SED-sed} 's|[^/]*$||'`/build-aux/funclib.sh +# +# If you need to override any of the default environment variable +# settings, do that before evaluating this file. + + +## -------------------- ## +## Shell normalisation. ## +## -------------------- ## + +# Some shells need a little help to be as Bourne compatible as possible. +# Before doing anything else, make sure all that help has been provided! + +DUALCASE=1; export DUALCASE # for MKS sh +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which + # is contrary to our usage. Disable this feature. + alias -g '${1+"$@"}'='"$@"' + setopt NO_GLOB_SUBST +else + case `(set -o) 2>/dev/null` in *posix*) set -o posix ;; esac +fi + +# NLS nuisances: We save the old values in case they are required later. +_G_user_locale= +_G_safe_locale= +for _G_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES +do + eval "if test set = \"\${$_G_var+set}\"; then + save_$_G_var=\$$_G_var + $_G_var=C + export $_G_var + _G_user_locale=\"$_G_var=\\\$save_\$_G_var; \$_G_user_locale\" + _G_safe_locale=\"$_G_var=C; \$_G_safe_locale\" + fi" +done + +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +# Make sure IFS has a sensible default +sp=' ' +nl=' +' +IFS="$sp $nl" + +# There are apparently some retarded systems that use ';' as a PATH separator! +if test "${PATH_SEPARATOR+set}" != set; then + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 && { + (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 || + PATH_SEPARATOR=';' + } +fi + + + +## ------------------------- ## +## Locate command utilities. ## +## ------------------------- ## + + +# func_executable_p FILE +# ---------------------- +# Check that FILE is an executable regular file. +func_executable_p () +{ + test -f "$1" && test -x "$1" +} + + +# func_path_progs PROGS_LIST CHECK_FUNC [PATH] +# -------------------------------------------- +# Search for either a program that responds to --version with output +# containing "GNU", or else returned by CHECK_FUNC otherwise, by +# trying all the directories in PATH with each of the elements of +# PROGS_LIST. +# +# CHECK_FUNC should accept the path to a candidate program, and +# set $func_check_prog_result if it truncates its output less than +# $_G_path_prog_max characters. +func_path_progs () +{ + _G_progs_list=$1 + _G_check_func=$2 + _G_PATH=${3-"$PATH"} + + _G_path_prog_max=0 + _G_path_prog_found=false + _G_save_IFS=$IFS; IFS=${PATH_SEPARATOR-:} + for _G_dir in $_G_PATH; do + IFS=$_G_save_IFS + test -z "$_G_dir" && _G_dir=. + for _G_prog_name in $_G_progs_list; do + for _exeext in '' .EXE; do + _G_path_prog=$_G_dir/$_G_prog_name$_exeext + func_executable_p "$_G_path_prog" || continue + case `"$_G_path_prog" --version 2>&1` in + *GNU*) func_path_progs_result=$_G_path_prog _G_path_prog_found=: ;; + *) $_G_check_func $_G_path_prog + func_path_progs_result=$func_check_prog_result + ;; + esac + $_G_path_prog_found && break 3 + done + done + done + IFS=$_G_save_IFS + test -z "$func_path_progs_result" && { + echo "no acceptable sed could be found in \$PATH" >&2 + exit 1 + } +} + + +# We want to be able to use the functions in this file before configure +# has figured out where the best binaries are kept, which means we have +# to search for them ourselves - except when the results are already set +# where we skip the searches. + +# Unless the user overrides by setting SED, search the path for either GNU +# sed, or the sed that truncates its output the least. +test -z "$SED" && { + _G_sed_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/ + for _G_i in 1 2 3 4 5 6 7; do + _G_sed_script=$_G_sed_script$nl$_G_sed_script + done + echo "$_G_sed_script" 2>/dev/null | sed 99q >conftest.sed + _G_sed_script= + + func_check_prog_sed () + { + _G_path_prog=$1 + + _G_count=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo '' >> conftest.nl + "$_G_path_prog" -f conftest.sed conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "sed gsed" func_check_prog_sed $PATH:/usr/xpg4/bin + rm -f conftest.sed + SED=$func_path_progs_result +} + + +# Unless the user overrides by setting GREP, search the path for either GNU +# grep, or the grep that truncates its output the least. +test -z "$GREP" && { + func_check_prog_grep () + { + _G_path_prog=$1 + + _G_count=0 + _G_path_prog_max=0 + printf 0123456789 >conftest.in + while : + do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo 'GREP' >> conftest.nl + "$_G_path_prog" -e 'GREP$' -e '-(cannot match)-' conftest.out 2>/dev/null || break + diff conftest.out conftest.nl >/dev/null 2>&1 || break + _G_count=`expr $_G_count + 1` + if test "$_G_count" -gt "$_G_path_prog_max"; then + # Best one so far, save it but keep looking for a better one + func_check_prog_result=$_G_path_prog + _G_path_prog_max=$_G_count + fi + # 10*(2^10) chars as input seems more than enough + test 10 -lt "$_G_count" && break + done + rm -f conftest.in conftest.tmp conftest.nl conftest.out + } + + func_path_progs "grep ggrep" func_check_prog_grep $PATH:/usr/xpg4/bin + GREP=$func_path_progs_result +} + + +## ------------------------------- ## +## User overridable command paths. ## +## ------------------------------- ## + +# All uppercase variable names are used for environment variables. These +# variables can be overridden by the user before calling a script that +# uses them if a suitable command of that name is not already available +# in the command search PATH. + +: ${CP="cp -f"} +: ${ECHO="printf %s\n"} +: ${EGREP="$GREP -E"} +: ${FGREP="$GREP -F"} +: ${LN_S="ln -s"} +: ${MAKE="make"} +: ${MKDIR="mkdir"} +: ${MV="mv -f"} +: ${RM="rm -f"} +: ${SHELL="${CONFIG_SHELL-/bin/sh}"} + + +## -------------------- ## +## Useful sed snippets. ## +## -------------------- ## + +sed_dirname='s|/[^/]*$||' +sed_basename='s|^.*/||' + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='s|\([`"$\\]\)|\\\1|g' + +# Same as above, but do not quote variable references. +sed_double_quote_subst='s/\(["`\\]\)/\\\1/g' + +# Sed substitution that turns a string into a regex matching for the +# string literally. +sed_make_literal_regex='s|[].[^$\\*\/]|\\&|g' + +# Sed substitution that converts a w32 file name or path +# that contains forward slashes, into one that contains +# (escaped) backslashes. A very naive implementation. +sed_naive_backslashify='s|\\\\*|\\|g;s|/|\\|g;s|\\|\\\\|g' + +# Re-'\' parameter expansions in output of sed_double_quote_subst that +# were '\'-ed in input to the same. If an odd number of '\' preceded a +# '$' in input to sed_double_quote_subst, that '$' was protected from +# expansion. Since each input '\' is now two '\'s, look for any number +# of runs of four '\'s followed by two '\'s and then a '$'. '\' that '$'. +_G_bs='\\' +_G_bs2='\\\\' +_G_bs4='\\\\\\\\' +_G_dollar='\$' +sed_double_backslash="\ + s/$_G_bs4/&\\ +/g + s/^$_G_bs2$_G_dollar/$_G_bs&/ + s/\\([^$_G_bs]\\)$_G_bs2$_G_dollar/\\1$_G_bs2$_G_bs$_G_dollar/g + s/\n//g" + + +## ----------------- ## +## Global variables. ## +## ----------------- ## + +# Except for the global variables explicitly listed below, the following +# functions in the '^func_' namespace, and the '^require_' namespace +# variables initialised in the 'Resource management' section, sourcing +# this file will not pollute your global namespace with anything +# else. There's no portable way to scope variables in Bourne shell +# though, so actually running these functions will sometimes place +# results into a variable named after the function, and often use +# temporary variables in the '^_G_' namespace. If you are careful to +# avoid using those namespaces casually in your sourcing script, things +# should continue to work as you expect. And, of course, you can freely +# overwrite any of the functions or variables defined here before +# calling anything to customize them. + +EXIT_SUCCESS=0 +EXIT_FAILURE=1 +EXIT_MISMATCH=63 # $? = 63 is used to indicate version mismatch to missing. +EXIT_SKIP=77 # $? = 77 is used to indicate a skipped test to automake. + +# Allow overriding, eg assuming that you follow the convention of +# putting '$debug_cmd' at the start of all your functions, you can get +# bash to show function call trace with: +# +# debug_cmd='eval echo "${FUNCNAME[0]} $*" >&2' bash your-script-name +debug_cmd=${debug_cmd-":"} +exit_cmd=: + +# By convention, finish your script with: +# +# exit $exit_status +# +# so that you can set exit_status to non-zero if you want to indicate +# something went wrong during execution without actually bailing out at +# the point of failure. +exit_status=$EXIT_SUCCESS + +# Work around backward compatibility issue on IRIX 6.5. On IRIX 6.4+, sh +# is ksh but when the shell is invoked as "sh" and the current value of +# the _XPG environment variable is not equal to 1 (one), the special +# positional parameter $0, within a function call, is the name of the +# function. +progpath=$0 + +# The name of this program. +progname=`$ECHO "$progpath" |$SED "$sed_basename"` + +# Make sure we have an absolute progpath for reexecution: +case $progpath in + [\\/]*|[A-Za-z]:\\*) ;; + *[\\/]*) + progdir=`$ECHO "$progpath" |$SED "$sed_dirname"` + progdir=`cd "$progdir" && pwd` + progpath=$progdir/$progname + ;; + *) + _G_IFS=$IFS + IFS=${PATH_SEPARATOR-:} + for progdir in $PATH; do + IFS=$_G_IFS + test -x "$progdir/$progname" && break + done + IFS=$_G_IFS + test -n "$progdir" || progdir=`pwd` + progpath=$progdir/$progname + ;; +esac + + +## ----------------- ## +## Standard options. ## +## ----------------- ## + +# The following options affect the operation of the functions defined +# below, and should be set appropriately depending on run-time para- +# meters passed on the command line. + +opt_dry_run=false +opt_quiet=false +opt_verbose=false + +# Categories 'all' and 'none' are always available. Append any others +# you will pass as the first argument to func_warning from your own +# code. +warning_categories= + +# By default, display warnings according to 'opt_warning_types'. Set +# 'warning_func' to ':' to elide all warnings, or func_fatal_error to +# treat the next displayed warning as a fatal error. +warning_func=func_warn_and_continue + +# Set to 'all' to display all warnings, 'none' to suppress all +# warnings, or a space delimited list of some subset of +# 'warning_categories' to display only the listed warnings. +opt_warning_types=all + + +## -------------------- ## +## Resource management. ## +## -------------------- ## + +# This section contains definitions for functions that each ensure a +# particular resource (a file, or a non-empty configuration variable for +# example) is available, and if appropriate to extract default values +# from pertinent package files. Call them using their associated +# 'require_*' variable to ensure that they are executed, at most, once. +# +# It's entirely deliberate that calling these functions can set +# variables that don't obey the namespace limitations obeyed by the rest +# of this file, in order that that they be as useful as possible to +# callers. + + +# require_term_colors +# ------------------- +# Allow display of bold text on terminals that support it. +require_term_colors=func_require_term_colors +func_require_term_colors () +{ + $debug_cmd + + test -t 1 && { + # COLORTERM and USE_ANSI_COLORS environment variables take + # precedence, because most terminfo databases neglect to describe + # whether color sequences are supported. + test -n "${COLORTERM+set}" && : ${USE_ANSI_COLORS="1"} + + if test 1 = "$USE_ANSI_COLORS"; then + # Standard ANSI escape sequences + tc_reset='' + tc_bold=''; tc_standout='' + tc_red=''; tc_green='' + tc_blue=''; tc_cyan='' + else + # Otherwise trust the terminfo database after all. + test -n "`tput sgr0 2>/dev/null`" && { + tc_reset=`tput sgr0` + test -n "`tput bold 2>/dev/null`" && tc_bold=`tput bold` + tc_standout=$tc_bold + test -n "`tput smso 2>/dev/null`" && tc_standout=`tput smso` + test -n "`tput setaf 1 2>/dev/null`" && tc_red=`tput setaf 1` + test -n "`tput setaf 2 2>/dev/null`" && tc_green=`tput setaf 2` + test -n "`tput setaf 4 2>/dev/null`" && tc_blue=`tput setaf 4` + test -n "`tput setaf 5 2>/dev/null`" && tc_cyan=`tput setaf 5` + } + fi + } + + require_term_colors=: +} + + +## ----------------- ## +## Function library. ## +## ----------------- ## + +# This section contains a variety of useful functions to call in your +# scripts. Take note of the portable wrappers for features provided by +# some modern shells, which will fall back to slower equivalents on +# less featureful shells. + + +# func_append VAR VALUE +# --------------------- +# Append VALUE onto the existing contents of VAR. + + # We should try to minimise forks, especially on Windows where they are + # unreasonably slow, so skip the feature probes when bash or zsh are + # being used: + if test set = "${BASH_VERSION+set}${ZSH_VERSION+set}"; then + : ${_G_HAVE_ARITH_OP="yes"} + : ${_G_HAVE_XSI_OPS="yes"} + # The += operator was introduced in bash 3.1 + case $BASH_VERSION in + [12].* | 3.0 | 3.0*) ;; + *) + : ${_G_HAVE_PLUSEQ_OP="yes"} + ;; + esac + fi + + # _G_HAVE_PLUSEQ_OP + # Can be empty, in which case the shell is probed, "yes" if += is + # useable or anything else if it does not work. + test -z "$_G_HAVE_PLUSEQ_OP" \ + && (eval 'x=a; x+=" b"; test "a b" = "$x"') 2>/dev/null \ + && _G_HAVE_PLUSEQ_OP=yes + +if test yes = "$_G_HAVE_PLUSEQ_OP" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_append () + { + $debug_cmd + + eval "$1+=\$2" + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_append () + { + $debug_cmd + + eval "$1=\$$1\$2" + } +fi + + +# func_append_quoted VAR VALUE +# ---------------------------- +# Quote VALUE and append to the end of shell variable VAR, separated +# by a space. +if test yes = "$_G_HAVE_PLUSEQ_OP"; then + eval 'func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1+=\\ \$func_quote_for_eval_result" + }' +else + func_append_quoted () + { + $debug_cmd + + func_quote_for_eval "$2" + eval "$1=\$$1\\ \$func_quote_for_eval_result" + } +fi + + +# func_append_uniq VAR VALUE +# -------------------------- +# Append unique VALUE onto the existing contents of VAR, assuming +# entries are delimited by the first character of VALUE. For example: +# +# func_append_uniq options " --another-option option-argument" +# +# will only append to $options if " --another-option option-argument " +# is not already present somewhere in $options already (note spaces at +# each end implied by leading space in second argument). +func_append_uniq () +{ + $debug_cmd + + eval _G_current_value='`$ECHO $'$1'`' + _G_delim=`expr "$2" : '\(.\)'` + + case $_G_delim$_G_current_value$_G_delim in + *"$2$_G_delim"*) ;; + *) func_append "$@" ;; + esac +} + + +# func_arith TERM... +# ------------------ +# Set func_arith_result to the result of evaluating TERMs. + test -z "$_G_HAVE_ARITH_OP" \ + && (eval 'test 2 = $(( 1 + 1 ))') 2>/dev/null \ + && _G_HAVE_ARITH_OP=yes + +if test yes = "$_G_HAVE_ARITH_OP"; then + eval 'func_arith () + { + $debug_cmd + + func_arith_result=$(( $* )) + }' +else + func_arith () + { + $debug_cmd + + func_arith_result=`expr "$@"` + } +fi + + +# func_basename FILE +# ------------------ +# Set func_basename_result to FILE with everything up to and including +# the last / stripped. +if test yes = "$_G_HAVE_XSI_OPS"; then + # If this shell supports suffix pattern removal, then use it to avoid + # forking. Hide the definitions single quotes in case the shell chokes + # on unsupported syntax... + _b='func_basename_result=${1##*/}' + _d='case $1 in + */*) func_dirname_result=${1%/*}$2 ;; + * ) func_dirname_result=$3 ;; + esac' + +else + # ...otherwise fall back to using sed. + _b='func_basename_result=`$ECHO "$1" |$SED "$sed_basename"`' + _d='func_dirname_result=`$ECHO "$1" |$SED "$sed_dirname"` + if test "X$func_dirname_result" = "X$1"; then + func_dirname_result=$3 + else + func_append func_dirname_result "$2" + fi' +fi + +eval 'func_basename () +{ + $debug_cmd + + '"$_b"' +}' + + +# func_dirname FILE APPEND NONDIR_REPLACEMENT +# ------------------------------------------- +# Compute the dirname of FILE. If nonempty, add APPEND to the result, +# otherwise set result to NONDIR_REPLACEMENT. +eval 'func_dirname () +{ + $debug_cmd + + '"$_d"' +}' + + +# func_dirname_and_basename FILE APPEND NONDIR_REPLACEMENT +# -------------------------------------------------------- +# Perform func_basename and func_dirname in a single function +# call: +# dirname: Compute the dirname of FILE. If nonempty, +# add APPEND to the result, otherwise set result +# to NONDIR_REPLACEMENT. +# value returned in "$func_dirname_result" +# basename: Compute filename of FILE. +# value retuned in "$func_basename_result" +# For efficiency, we do not delegate to the functions above but instead +# duplicate the functionality here. +eval 'func_dirname_and_basename () +{ + $debug_cmd + + '"$_b"' + '"$_d"' +}' + + +# func_echo ARG... +# ---------------- +# Echo program name prefixed message. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_echo_all ARG... +# -------------------- +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + + +# func_echo_infix_1 INFIX ARG... +# ------------------------------ +# Echo program name, followed by INFIX on the first line, with any +# additional lines not showing INFIX. +func_echo_infix_1 () +{ + $debug_cmd + + $require_term_colors + + _G_infix=$1; shift + _G_indent=$_G_infix + _G_prefix="$progname: $_G_infix: " + _G_message=$* + + # Strip color escape sequences before counting printable length + for _G_tc in "$tc_reset" "$tc_bold" "$tc_standout" "$tc_red" "$tc_green" "$tc_blue" "$tc_cyan" + do + test -n "$_G_tc" && { + _G_esc_tc=`$ECHO "$_G_tc" | $SED "$sed_make_literal_regex"` + _G_indent=`$ECHO "$_G_indent" | $SED "s|$_G_esc_tc||g"` + } + done + _G_indent="$progname: "`echo "$_G_indent" | $SED 's|.| |g'`" " ## exclude from sc_prohibit_nested_quotes + + func_echo_infix_1_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_infix_1_IFS + $ECHO "$_G_prefix$tc_bold$_G_line$tc_reset" >&2 + _G_prefix=$_G_indent + done + IFS=$func_echo_infix_1_IFS +} + + +# func_error ARG... +# ----------------- +# Echo program name prefixed message to standard error. +func_error () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 " $tc_standout${tc_red}error$tc_reset" "$*" >&2 +} + + +# func_fatal_error ARG... +# ----------------------- +# Echo program name prefixed message to standard error, and exit. +func_fatal_error () +{ + $debug_cmd + + func_error "$*" + exit $EXIT_FAILURE +} + + +# func_grep EXPRESSION FILENAME +# ----------------------------- +# Check whether EXPRESSION matches any line of FILENAME, without output. +func_grep () +{ + $debug_cmd + + $GREP "$1" "$2" >/dev/null 2>&1 +} + + +# func_len STRING +# --------------- +# Set func_len_result to the length of STRING. STRING may not +# start with a hyphen. + test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_len () + { + $debug_cmd + + func_len_result=${#1} + }' +else + func_len () + { + $debug_cmd + + func_len_result=`expr "$1" : ".*" 2>/dev/null || echo $max_cmd_len` + } +fi + + +# func_mkdir_p DIRECTORY-PATH +# --------------------------- +# Make sure the entire path to DIRECTORY-PATH is available. +func_mkdir_p () +{ + $debug_cmd + + _G_directory_path=$1 + _G_dir_list= + + if test -n "$_G_directory_path" && test : != "$opt_dry_run"; then + + # Protect directory names starting with '-' + case $_G_directory_path in + -*) _G_directory_path=./$_G_directory_path ;; + esac + + # While some portion of DIR does not yet exist... + while test ! -d "$_G_directory_path"; do + # ...make a list in topmost first order. Use a colon delimited + # list incase some portion of path contains whitespace. + _G_dir_list=$_G_directory_path:$_G_dir_list + + # If the last portion added has no slash in it, the list is done + case $_G_directory_path in */*) ;; *) break ;; esac + + # ...otherwise throw away the child directory and loop + _G_directory_path=`$ECHO "$_G_directory_path" | $SED -e "$sed_dirname"` + done + _G_dir_list=`$ECHO "$_G_dir_list" | $SED 's|:*$||'` + + func_mkdir_p_IFS=$IFS; IFS=: + for _G_dir in $_G_dir_list; do + IFS=$func_mkdir_p_IFS + # mkdir can fail with a 'File exist' error if two processes + # try to create one of the directories concurrently. Don't + # stop in that case! + $MKDIR "$_G_dir" 2>/dev/null || : + done + IFS=$func_mkdir_p_IFS + + # Bail out if we (or some other process) failed to create a directory. + test -d "$_G_directory_path" || \ + func_fatal_error "Failed to create '$1'" + fi +} + + +# func_mktempdir [BASENAME] +# ------------------------- +# Make a temporary directory that won't clash with other running +# libtool processes, and avoids race conditions if possible. If +# given, BASENAME is the basename for that directory. +func_mktempdir () +{ + $debug_cmd + + _G_template=${TMPDIR-/tmp}/${1-$progname} + + if test : = "$opt_dry_run"; then + # Return a directory name, but don't create it in dry-run mode + _G_tmpdir=$_G_template-$$ + else + + # If mktemp works, use that first and foremost + _G_tmpdir=`mktemp -d "$_G_template-XXXXXXXX" 2>/dev/null` + + if test ! -d "$_G_tmpdir"; then + # Failing that, at least try and use $RANDOM to avoid a race + _G_tmpdir=$_G_template-${RANDOM-0}$$ + + func_mktempdir_umask=`umask` + umask 0077 + $MKDIR "$_G_tmpdir" + umask $func_mktempdir_umask + fi + + # If we're not in dry-run mode, bomb out on failure + test -d "$_G_tmpdir" || \ + func_fatal_error "cannot create temporary directory '$_G_tmpdir'" + fi + + $ECHO "$_G_tmpdir" +} + + +# func_normal_abspath PATH +# ------------------------ +# Remove doubled-up and trailing slashes, "." path components, +# and cancel out any ".." path components in PATH after making +# it an absolute path. +func_normal_abspath () +{ + $debug_cmd + + # These SED scripts presuppose an absolute path with a trailing slash. + _G_pathcar='s|^/\([^/]*\).*$|\1|' + _G_pathcdr='s|^/[^/]*||' + _G_removedotparts=':dotsl + s|/\./|/|g + t dotsl + s|/\.$|/|' + _G_collapseslashes='s|/\{1,\}|/|g' + _G_finalslash='s|/*$|/|' + + # Start from root dir and reassemble the path. + func_normal_abspath_result= + func_normal_abspath_tpath=$1 + func_normal_abspath_altnamespace= + case $func_normal_abspath_tpath in + "") + # Empty path, that just means $cwd. + func_stripname '' '/' "`pwd`" + func_normal_abspath_result=$func_stripname_result + return + ;; + # The next three entries are used to spot a run of precisely + # two leading slashes without using negated character classes; + # we take advantage of case's first-match behaviour. + ///*) + # Unusual form of absolute path, do nothing. + ;; + //*) + # Not necessarily an ordinary path; POSIX reserves leading '//' + # and for example Cygwin uses it to access remote file shares + # over CIFS/SMB, so we conserve a leading double slash if found. + func_normal_abspath_altnamespace=/ + ;; + /*) + # Absolute path, do nothing. + ;; + *) + # Relative path, prepend $cwd. + func_normal_abspath_tpath=`pwd`/$func_normal_abspath_tpath + ;; + esac + + # Cancel out all the simple stuff to save iterations. We also want + # the path to end with a slash for ease of parsing, so make sure + # there is one (and only one) here. + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_removedotparts" -e "$_G_collapseslashes" -e "$_G_finalslash"` + while :; do + # Processed it all yet? + if test / = "$func_normal_abspath_tpath"; then + # If we ascended to the root using ".." the result may be empty now. + if test -z "$func_normal_abspath_result"; then + func_normal_abspath_result=/ + fi + break + fi + func_normal_abspath_tcomponent=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcar"` + func_normal_abspath_tpath=`$ECHO "$func_normal_abspath_tpath" | $SED \ + -e "$_G_pathcdr"` + # Figure out what to do with it + case $func_normal_abspath_tcomponent in + "") + # Trailing empty path component, ignore it. + ;; + ..) + # Parent dir; strip last assembled component from result. + func_dirname "$func_normal_abspath_result" + func_normal_abspath_result=$func_dirname_result + ;; + *) + # Actual path component, append it. + func_append func_normal_abspath_result "/$func_normal_abspath_tcomponent" + ;; + esac + done + # Restore leading double-slash if one was found on entry. + func_normal_abspath_result=$func_normal_abspath_altnamespace$func_normal_abspath_result +} + + +# func_notquiet ARG... +# -------------------- +# Echo program name prefixed message only when not in quiet mode. +func_notquiet () +{ + $debug_cmd + + $opt_quiet || func_echo ${1+"$@"} + + # A bug in bash halts the script if the last line of a function + # fails when set -e is in force, so we need another command to + # work around that: + : +} + + +# func_relative_path SRCDIR DSTDIR +# -------------------------------- +# Set func_relative_path_result to the relative path from SRCDIR to DSTDIR. +func_relative_path () +{ + $debug_cmd + + func_relative_path_result= + func_normal_abspath "$1" + func_relative_path_tlibdir=$func_normal_abspath_result + func_normal_abspath "$2" + func_relative_path_tbindir=$func_normal_abspath_result + + # Ascend the tree starting from libdir + while :; do + # check if we have found a prefix of bindir + case $func_relative_path_tbindir in + $func_relative_path_tlibdir) + # found an exact match + func_relative_path_tcancelled= + break + ;; + $func_relative_path_tlibdir*) + # found a matching prefix + func_stripname "$func_relative_path_tlibdir" '' "$func_relative_path_tbindir" + func_relative_path_tcancelled=$func_stripname_result + if test -z "$func_relative_path_result"; then + func_relative_path_result=. + fi + break + ;; + *) + func_dirname $func_relative_path_tlibdir + func_relative_path_tlibdir=$func_dirname_result + if test -z "$func_relative_path_tlibdir"; then + # Have to descend all the way to the root! + func_relative_path_result=../$func_relative_path_result + func_relative_path_tcancelled=$func_relative_path_tbindir + break + fi + func_relative_path_result=../$func_relative_path_result + ;; + esac + done + + # Now calculate path; take care to avoid doubling-up slashes. + func_stripname '' '/' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + func_stripname '/' '/' "$func_relative_path_tcancelled" + if test -n "$func_stripname_result"; then + func_append func_relative_path_result "/$func_stripname_result" + fi + + # Normalisation. If bindir is libdir, return '.' else relative path. + if test -n "$func_relative_path_result"; then + func_stripname './' '' "$func_relative_path_result" + func_relative_path_result=$func_stripname_result + fi + + test -n "$func_relative_path_result" || func_relative_path_result=. + + : +} + + +# func_quote_for_eval ARG... +# -------------------------- +# Aesthetically quote ARGs to be evaled later. +# This function returns two values: +# i) func_quote_for_eval_result +# double-quoted, suitable for a subsequent eval +# ii) func_quote_for_eval_unquoted_result +# has all characters that are still active within double +# quotes backslashified. +func_quote_for_eval () +{ + $debug_cmd + + func_quote_for_eval_unquoted_result= + func_quote_for_eval_result= + while test 0 -lt $#; do + case $1 in + *[\\\`\"\$]*) + _G_unquoted_arg=`printf '%s\n' "$1" |$SED "$sed_quote_subst"` ;; + *) + _G_unquoted_arg=$1 ;; + esac + if test -n "$func_quote_for_eval_unquoted_result"; then + func_append func_quote_for_eval_unquoted_result " $_G_unquoted_arg" + else + func_append func_quote_for_eval_unquoted_result "$_G_unquoted_arg" + fi + + case $_G_unquoted_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting, command substitution and variable expansion + # for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_quoted_arg=\"$_G_unquoted_arg\" + ;; + *) + _G_quoted_arg=$_G_unquoted_arg + ;; + esac + + if test -n "$func_quote_for_eval_result"; then + func_append func_quote_for_eval_result " $_G_quoted_arg" + else + func_append func_quote_for_eval_result "$_G_quoted_arg" + fi + shift + done +} + + +# func_quote_for_expand ARG +# ------------------------- +# Aesthetically quote ARG to be evaled later; same as above, +# but do not quote variable references. +func_quote_for_expand () +{ + $debug_cmd + + case $1 in + *[\\\`\"]*) + _G_arg=`$ECHO "$1" | $SED \ + -e "$sed_double_quote_subst" -e "$sed_double_backslash"` ;; + *) + _G_arg=$1 ;; + esac + + case $_G_arg in + # Double-quote args containing shell metacharacters to delay + # word splitting and command substitution for a subsequent eval. + # Many Bourne shells cannot handle close brackets correctly + # in scan sets, so we specify it separately. + *[\[\~\#\^\&\*\(\)\{\}\|\;\<\>\?\'\ \ ]*|*]*|"") + _G_arg=\"$_G_arg\" + ;; + esac + + func_quote_for_expand_result=$_G_arg +} + + +# func_stripname PREFIX SUFFIX NAME +# --------------------------------- +# strip PREFIX and SUFFIX from NAME, and store in func_stripname_result. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_stripname () + { + $debug_cmd + + # pdksh 5.2.14 does not do ${X%$Y} correctly if both X and Y are + # positional parameters, so assign one to ordinary variable first. + func_stripname_result=$3 + func_stripname_result=${func_stripname_result#"$1"} + func_stripname_result=${func_stripname_result%"$2"} + }' +else + func_stripname () + { + $debug_cmd + + case $2 in + .*) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%\\\\$2\$%%"`;; + *) func_stripname_result=`$ECHO "$3" | $SED -e "s%^$1%%" -e "s%$2\$%%"`;; + esac + } +fi + + +# func_show_eval CMD [FAIL_EXP] +# ----------------------------- +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. +func_show_eval () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + func_quote_for_expand "$_G_cmd" + eval "func_notquiet $func_quote_for_expand_result" + + $opt_dry_run || { + eval "$_G_cmd" + _G_status=$? + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_show_eval_locale CMD [FAIL_EXP] +# ------------------------------------ +# Unless opt_quiet is true, then output CMD. Then, if opt_dryrun is +# not true, evaluate CMD. If the evaluation of CMD fails, and FAIL_EXP +# is given, then evaluate it. Use the saved locale for evaluation. +func_show_eval_locale () +{ + $debug_cmd + + _G_cmd=$1 + _G_fail_exp=${2-':'} + + $opt_quiet || { + func_quote_for_expand "$_G_cmd" + eval "func_echo $func_quote_for_expand_result" + } + + $opt_dry_run || { + eval "$_G_user_locale + $_G_cmd" + _G_status=$? + eval "$_G_safe_locale" + if test 0 -ne "$_G_status"; then + eval "(exit $_G_status); $_G_fail_exp" + fi + } +} + + +# func_tr_sh +# ---------- +# Turn $1 into a string suitable for a shell variable name. +# Result is stored in $func_tr_sh_result. All characters +# not in the set a-zA-Z0-9_ are replaced with '_'. Further, +# if $1 begins with a digit, a '_' is prepended as well. +func_tr_sh () +{ + $debug_cmd + + case $1 in + [0-9]* | *[!a-zA-Z0-9_]*) + func_tr_sh_result=`$ECHO "$1" | $SED -e 's/^\([0-9]\)/_\1/' -e 's/[^a-zA-Z0-9_]/_/g'` + ;; + * ) + func_tr_sh_result=$1 + ;; + esac +} + + +# func_verbose ARG... +# ------------------- +# Echo program name prefixed message in verbose mode only. +func_verbose () +{ + $debug_cmd + + $opt_verbose && func_echo "$*" + + : +} + + +# func_warn_and_continue ARG... +# ----------------------------- +# Echo program name prefixed warning message to standard error. +func_warn_and_continue () +{ + $debug_cmd + + $require_term_colors + + func_echo_infix_1 "${tc_red}warning$tc_reset" "$*" >&2 +} + + +# func_warning CATEGORY ARG... +# ---------------------------- +# Echo program name prefixed warning message to standard error. Warning +# messages can be filtered according to CATEGORY, where this function +# elides messages where CATEGORY is not listed in the global variable +# 'opt_warning_types'. +func_warning () +{ + $debug_cmd + + # CATEGORY must be in the warning_categories list! + case " $warning_categories " in + *" $1 "*) ;; + *) func_internal_error "invalid warning category '$1'" ;; + esac + + _G_category=$1 + shift + + case " $opt_warning_types " in + *" $_G_category "*) $warning_func ${1+"$@"} ;; + esac +} + + +# func_sort_ver VER1 VER2 +# ----------------------- +# 'sort -V' is not generally available. +# Note this deviates from the version comparison in automake +# in that it treats 1.5 < 1.5.0, and treats 1.4.4a < 1.4-p3a +# but this should suffice as we won't be specifying old +# version formats or redundant trailing .0 in bootstrap.conf. +# If we did want full compatibility then we should probably +# use m4_version_compare from autoconf. +func_sort_ver () +{ + $debug_cmd + + printf '%s\n%s\n' "$1" "$2" \ + | sort -t. -k 1,1n -k 2,2n -k 3,3n -k 4,4n -k 5,5n -k 6,6n -k 7,7n -k 8,8n -k 9,9n +} + +# func_lt_ver PREV CURR +# --------------------- +# Return true if PREV and CURR are in the correct order according to +# func_sort_ver, otherwise false. Use it like this: +# +# func_lt_ver "$prev_ver" "$proposed_ver" || func_fatal_error "..." +func_lt_ver () +{ + $debug_cmd + + test "x$1" = x`func_sort_ver "$1" "$2" | $SED 1q` +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: +#! /bin/sh + +# Set a version string for this script. +scriptversion=2014-01-07.03; # UTC + +# A portable, pluggable option parser for Bourne shell. +# Written by Gary V. Vaughan, 2010 + +# Copyright (C) 2010-2015 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. + +# 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 3 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, see . + +# Please report bugs or propose patches to gary@gnu.org. + + +## ------ ## +## Usage. ## +## ------ ## + +# This file is a library for parsing options in your shell scripts along +# with assorted other useful supporting features that you can make use +# of too. +# +# For the simplest scripts you might need only: +# +# #!/bin/sh +# . relative/path/to/funclib.sh +# . relative/path/to/options-parser +# scriptversion=1.0 +# func_options ${1+"$@"} +# eval set dummy "$func_options_result"; shift +# ...rest of your script... +# +# In order for the '--version' option to work, you will need to have a +# suitably formatted comment like the one at the top of this file +# starting with '# Written by ' and ending with '# warranty; '. +# +# For '-h' and '--help' to work, you will also need a one line +# description of your script's purpose in a comment directly above the +# '# Written by ' line, like the one at the top of this file. +# +# The default options also support '--debug', which will turn on shell +# execution tracing (see the comment above debug_cmd below for another +# use), and '--verbose' and the func_verbose function to allow your script +# to display verbose messages only when your user has specified +# '--verbose'. +# +# After sourcing this file, you can plug processing for additional +# options by amending the variables from the 'Configuration' section +# below, and following the instructions in the 'Option parsing' +# section further down. + +## -------------- ## +## Configuration. ## +## -------------- ## + +# You should override these variables in your script after sourcing this +# file so that they reflect the customisations you have added to the +# option parser. + +# The usage line for option parsing errors and the start of '-h' and +# '--help' output messages. You can embed shell variables for delayed +# expansion at the time the message is displayed, but you will need to +# quote other shell meta-characters carefully to prevent them being +# expanded when the contents are evaled. +usage='$progpath [OPTION]...' + +# Short help message in response to '-h' and '--help'. Add to this or +# override it after sourcing this library to reflect the full set of +# options your script accepts. +usage_message="\ + --debug enable verbose shell tracing + -W, --warnings=CATEGORY + report the warnings falling in CATEGORY [all] + -v, --verbose verbosely report processing + --version print version information and exit + -h, --help print short or long help message and exit +" + +# Additional text appended to 'usage_message' in response to '--help'. +long_help_message=" +Warning categories include: + 'all' show all warnings + 'none' turn off all the warnings + 'error' warnings are treated as fatal errors" + +# Help message printed before fatal option parsing errors. +fatal_help="Try '\$progname --help' for more information." + + + +## ------------------------- ## +## Hook function management. ## +## ------------------------- ## + +# This section contains functions for adding, removing, and running hooks +# to the main code. A hook is just a named list of of function, that can +# be run in order later on. + +# func_hookable FUNC_NAME +# ----------------------- +# Declare that FUNC_NAME will run hooks added with +# 'func_add_hook FUNC_NAME ...'. +func_hookable () +{ + $debug_cmd + + func_append hookable_fns " $1" +} + + +# func_add_hook FUNC_NAME HOOK_FUNC +# --------------------------------- +# Request that FUNC_NAME call HOOK_FUNC before it returns. FUNC_NAME must +# first have been declared "hookable" by a call to 'func_hookable'. +func_add_hook () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not accept hook functions." ;; + esac + + eval func_append ${1}_hooks '" $2"' +} + + +# func_remove_hook FUNC_NAME HOOK_FUNC +# ------------------------------------ +# Remove HOOK_FUNC from the list of functions called by FUNC_NAME. +func_remove_hook () +{ + $debug_cmd + + eval ${1}_hooks='`$ECHO "\$'$1'_hooks" |$SED "s| '$2'||"`' +} + + +# func_run_hooks FUNC_NAME [ARG]... +# --------------------------------- +# Run all hook functions registered to FUNC_NAME. +# It is assumed that the list of hook functions contains nothing more +# than a whitespace-delimited list of legal shell function names, and +# no effort is wasted trying to catch shell meta-characters or preserve +# whitespace. +func_run_hooks () +{ + $debug_cmd + + case " $hookable_fns " in + *" $1 "*) ;; + *) func_fatal_error "'$1' does not support hook funcions.n" ;; + esac + + eval _G_hook_fns=\$$1_hooks; shift + + for _G_hook in $_G_hook_fns; do + eval $_G_hook '"$@"' + + # store returned options list back into positional + # parameters for next 'cmd' execution. + eval _G_hook_result=\$${_G_hook}_result + eval set dummy "$_G_hook_result"; shift + done + + func_quote_for_eval ${1+"$@"} + func_run_hooks_result=$func_quote_for_eval_result +} + + + +## --------------- ## +## Option parsing. ## +## --------------- ## + +# In order to add your own option parsing hooks, you must accept the +# full positional parameter list in your hook function, remove any +# options that you action, and then pass back the remaining unprocessed +# options in '_result', escaped suitably for +# 'eval'. Like this: +# +# my_options_prep () +# { +# $debug_cmd +# +# # Extend the existing usage message. +# usage_message=$usage_message' +# -s, --silent don'\''t print informational messages +# ' +# +# func_quote_for_eval ${1+"$@"} +# my_options_prep_result=$func_quote_for_eval_result +# } +# func_add_hook func_options_prep my_options_prep +# +# +# my_silent_option () +# { +# $debug_cmd +# +# # Note that for efficiency, we parse as many options as we can +# # recognise in a loop before passing the remainder back to the +# # caller on the first unrecognised argument we encounter. +# while test $# -gt 0; do +# opt=$1; shift +# case $opt in +# --silent|-s) opt_silent=: ;; +# # Separate non-argument short options: +# -s*) func_split_short_opt "$_G_opt" +# set dummy "$func_split_short_opt_name" \ +# "-$func_split_short_opt_arg" ${1+"$@"} +# shift +# ;; +# *) set dummy "$_G_opt" "$*"; shift; break ;; +# esac +# done +# +# func_quote_for_eval ${1+"$@"} +# my_silent_option_result=$func_quote_for_eval_result +# } +# func_add_hook func_parse_options my_silent_option +# +# +# my_option_validation () +# { +# $debug_cmd +# +# $opt_silent && $opt_verbose && func_fatal_help "\ +# '--silent' and '--verbose' options are mutually exclusive." +# +# func_quote_for_eval ${1+"$@"} +# my_option_validation_result=$func_quote_for_eval_result +# } +# func_add_hook func_validate_options my_option_validation +# +# You'll alse need to manually amend $usage_message to reflect the extra +# options you parse. It's preferable to append if you can, so that +# multiple option parsing hooks can be added safely. + + +# func_options [ARG]... +# --------------------- +# All the functions called inside func_options are hookable. See the +# individual implementations for details. +func_hookable func_options +func_options () +{ + $debug_cmd + + func_options_prep ${1+"$@"} + eval func_parse_options \ + ${func_options_prep_result+"$func_options_prep_result"} + eval func_validate_options \ + ${func_parse_options_result+"$func_parse_options_result"} + + eval func_run_hooks func_options \ + ${func_validate_options_result+"$func_validate_options_result"} + + # save modified positional parameters for caller + func_options_result=$func_run_hooks_result +} + + +# func_options_prep [ARG]... +# -------------------------- +# All initialisations required before starting the option parse loop. +# Note that when calling hook functions, we pass through the list of +# positional parameters. If a hook function modifies that list, and +# needs to propogate that back to rest of this script, then the complete +# modified list must be put in 'func_run_hooks_result' before +# returning. +func_hookable func_options_prep +func_options_prep () +{ + $debug_cmd + + # Option defaults: + opt_verbose=false + opt_warning_types= + + func_run_hooks func_options_prep ${1+"$@"} + + # save modified positional parameters for caller + func_options_prep_result=$func_run_hooks_result +} + + +# func_parse_options [ARG]... +# --------------------------- +# The main option parsing loop. +func_hookable func_parse_options +func_parse_options () +{ + $debug_cmd + + func_parse_options_result= + + # this just eases exit handling + while test $# -gt 0; do + # Defer to hook functions for initial option parsing, so they + # get priority in the event of reusing an option name. + func_run_hooks func_parse_options ${1+"$@"} + + # Adjust func_parse_options positional parameters to match + eval set dummy "$func_run_hooks_result"; shift + + # Break out of the loop if we already parsed every option. + test $# -gt 0 || break + + _G_opt=$1 + shift + case $_G_opt in + --debug|-x) debug_cmd='set -x' + func_echo "enabling shell trace mode" + $debug_cmd + ;; + + --no-warnings|--no-warning|--no-warn) + set dummy --warnings none ${1+"$@"} + shift + ;; + + --warnings|--warning|-W) + test $# = 0 && func_missing_arg $_G_opt && break + case " $warning_categories $1" in + *" $1 "*) + # trailing space prevents matching last $1 above + func_append_uniq opt_warning_types " $1" + ;; + *all) + opt_warning_types=$warning_categories + ;; + *none) + opt_warning_types=none + warning_func=: + ;; + *error) + opt_warning_types=$warning_categories + warning_func=func_fatal_error + ;; + *) + func_fatal_error \ + "unsupported warning category: '$1'" + ;; + esac + shift + ;; + + --verbose|-v) opt_verbose=: ;; + --version) func_version ;; + -\?|-h) func_usage ;; + --help) func_help ;; + + # Separate optargs to long options (plugins may need this): + --*=*) func_split_equals "$_G_opt" + set dummy "$func_split_equals_lhs" \ + "$func_split_equals_rhs" ${1+"$@"} + shift + ;; + + # Separate optargs to short options: + -W*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + # Separate non-argument short options: + -\?*|-h*|-v*|-x*) + func_split_short_opt "$_G_opt" + set dummy "$func_split_short_opt_name" \ + "-$func_split_short_opt_arg" ${1+"$@"} + shift + ;; + + --) break ;; + -*) func_fatal_help "unrecognised option: '$_G_opt'" ;; + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + func_parse_options_result=$func_quote_for_eval_result +} + + +# func_validate_options [ARG]... +# ------------------------------ +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +func_hookable func_validate_options +func_validate_options () +{ + $debug_cmd + + # Display all warnings if -W was not given. + test -n "$opt_warning_types" || opt_warning_types=" $warning_categories" + + func_run_hooks func_validate_options ${1+"$@"} + + # Bail if the options were screwed! + $exit_cmd $EXIT_FAILURE + + # save modified positional parameters for caller + func_validate_options_result=$func_run_hooks_result +} + + + +## ----------------- ## +## Helper functions. ## +## ----------------- ## + +# This section contains the helper functions used by the rest of the +# hookable option parser framework in ascii-betical order. + + +# func_fatal_help ARG... +# ---------------------- +# Echo program name prefixed message to standard error, followed by +# a help hint, and exit. +func_fatal_help () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + eval \$ECHO \""$fatal_help"\" + func_error ${1+"$@"} + exit $EXIT_FAILURE +} + + +# func_help +# --------- +# Echo long help message to standard output and exit. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message" + exit 0 +} + + +# func_missing_arg ARGNAME +# ------------------------ +# Echo program name prefixed message to standard error and set global +# exit_cmd. +func_missing_arg () +{ + $debug_cmd + + func_error "Missing argument for '$1'." + exit_cmd=exit +} + + +# func_split_equals STRING +# ------------------------ +# Set func_split_equals_lhs and func_split_equals_rhs shell variables after +# splitting STRING at the '=' sign. +test -z "$_G_HAVE_XSI_OPS" \ + && (eval 'x=a/b/c; + test 5aa/bb/cc = "${#x}${x%%/*}${x%/*}${x#*/}${x##*/}"') 2>/dev/null \ + && _G_HAVE_XSI_OPS=yes + +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=${1%%=*} + func_split_equals_rhs=${1#*=} + test "x$func_split_equals_lhs" = "x$1" \ + && func_split_equals_rhs= + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_equals () + { + $debug_cmd + + func_split_equals_lhs=`expr "x$1" : 'x\([^=]*\)'` + func_split_equals_rhs= + test "x$func_split_equals_lhs" = "x$1" \ + || func_split_equals_rhs=`expr "x$1" : 'x[^=]*=\(.*\)$'` + } +fi #func_split_equals + + +# func_split_short_opt SHORTOPT +# ----------------------------- +# Set func_split_short_opt_name and func_split_short_opt_arg shell +# variables after splitting SHORTOPT after the 2nd character. +if test yes = "$_G_HAVE_XSI_OPS" +then + # This is an XSI compatible shell, allowing a faster implementation... + eval 'func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_arg=${1#??} + func_split_short_opt_name=${1%"$func_split_short_opt_arg"} + }' +else + # ...otherwise fall back to using expr, which is often a shell builtin. + func_split_short_opt () + { + $debug_cmd + + func_split_short_opt_name=`expr "x$1" : 'x-\(.\)'` + func_split_short_opt_arg=`expr "x$1" : 'x-.\(.*\)$'` + } +fi #func_split_short_opt + + +# func_usage +# ---------- +# Echo short help message to standard output and exit. +func_usage () +{ + $debug_cmd + + func_usage_message + $ECHO "Run '$progname --help |${PAGER-more}' for full usage" + exit 0 +} + + +# func_usage_message +# ------------------ +# Echo short help message to standard output. +func_usage_message () +{ + $debug_cmd + + eval \$ECHO \""Usage: $usage"\" + echo + $SED -n 's|^# || + /^Written by/{ + x;p;x + } + h + /^Written by/q' < "$progpath" + echo + eval \$ECHO \""$usage_message"\" +} + + +# func_version +# ------------ +# Echo version message to standard output and exit. +func_version () +{ + $debug_cmd + + printf '%s\n' "$progname $scriptversion" + $SED -n ' + /(C)/!b go + :more + /\./!{ + N + s|\n# | | + b more + } + :go + /^# Written by /,/# warranty; / { + s|^# || + s|^# *$|| + s|\((C)\)[ 0-9,-]*[ ,-]\([1-9][0-9]* \)|\1 \2| + p + } + /^# Written by / { + s|^# || + p + } + /^warranty; /q' < "$progpath" + + exit $? +} + + +# Local variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'before-save-hook 'time-stamp) +# time-stamp-pattern: "10/scriptversion=%:y-%02m-%02d.%02H; # UTC" +# time-stamp-time-zone: "UTC" +# End: + +# Set a version string. +scriptversion='(GNU libtool) 2.4.6' + + +# func_echo ARG... +# ---------------- +# Libtool also displays the current mode in messages, so override +# funclib.sh func_echo with this custom definition. +func_echo () +{ + $debug_cmd + + _G_message=$* + + func_echo_IFS=$IFS + IFS=$nl + for _G_line in $_G_message; do + IFS=$func_echo_IFS + $ECHO "$progname${opt_mode+: $opt_mode}: $_G_line" + done + IFS=$func_echo_IFS +} + + +# func_warning ARG... +# ------------------- +# Libtool warnings are not categorized, so override funclib.sh +# func_warning with this simpler definition. +func_warning () +{ + $debug_cmd + + $warning_func ${1+"$@"} +} + + +## ---------------- ## +## Options parsing. ## +## ---------------- ## + +# Hook in the functions to make sure our own options are parsed during +# the option parsing loop. + +usage='$progpath [OPTION]... [MODE-ARG]...' + +# Short help message in response to '-h'. +usage_message="Options: + --config show all configuration variables + --debug enable verbose shell tracing + -n, --dry-run display commands without modifying any files + --features display basic configuration information and exit + --mode=MODE use operation mode MODE + --no-warnings equivalent to '-Wnone' + --preserve-dup-deps don't remove duplicate dependency libraries + --quiet, --silent don't print informational messages + --tag=TAG use configuration variables from tag TAG + -v, --verbose print more informational messages than default + --version print version information + -W, --warnings=CATEGORY report the warnings falling in CATEGORY [all] + -h, --help, --help-all print short, long, or detailed help message +" + +# Additional text appended to 'usage_message' in response to '--help'. +func_help () +{ + $debug_cmd + + func_usage_message + $ECHO "$long_help_message + +MODE must be one of the following: + + clean remove files from the build directory + compile compile a source file into a libtool object + execute automatically set library path, then run a program + finish complete the installation of libtool libraries + install install libraries or executables + link create a library or an executable + uninstall remove libraries from an installed directory + +MODE-ARGS vary depending on the MODE. When passed as first option, +'--mode=MODE' may be abbreviated as 'MODE' or a unique abbreviation of that. +Try '$progname --help --mode=MODE' for a more detailed description of MODE. + +When reporting a bug, please describe a test case to reproduce it and +include the following information: + + host-triplet: $host + shell: $SHELL + compiler: $LTCC + compiler flags: $LTCFLAGS + linker: $LD (gnu? $with_gnu_ld) + version: $progname (GNU libtool) 2.4.6 + automake: `($AUTOMAKE --version) 2>/dev/null |$SED 1q` + autoconf: `($AUTOCONF --version) 2>/dev/null |$SED 1q` + +Report bugs to . +GNU libtool home page: . +General help using GNU software: ." + exit 0 +} + + +# func_lo2o OBJECT-NAME +# --------------------- +# Transform OBJECT-NAME from a '.lo' suffix to the platform specific +# object suffix. + +lo2o=s/\\.lo\$/.$objext/ +o2lo=s/\\.$objext\$/.lo/ + +if test yes = "$_G_HAVE_XSI_OPS"; then + eval 'func_lo2o () + { + case $1 in + *.lo) func_lo2o_result=${1%.lo}.$objext ;; + * ) func_lo2o_result=$1 ;; + esac + }' + + # func_xform LIBOBJ-OR-SOURCE + # --------------------------- + # Transform LIBOBJ-OR-SOURCE from a '.o' or '.c' (or otherwise) + # suffix to a '.lo' libtool-object suffix. + eval 'func_xform () + { + func_xform_result=${1%.*}.lo + }' +else + # ...otherwise fall back to using sed. + func_lo2o () + { + func_lo2o_result=`$ECHO "$1" | $SED "$lo2o"` + } + + func_xform () + { + func_xform_result=`$ECHO "$1" | $SED 's|\.[^.]*$|.lo|'` + } +fi + + +# func_fatal_configuration ARG... +# ------------------------------- +# Echo program name prefixed message to standard error, followed by +# a configuration failure hint, and exit. +func_fatal_configuration () +{ + func__fatal_error ${1+"$@"} \ + "See the $PACKAGE documentation for more information." \ + "Fatal configuration error." +} + + +# func_config +# ----------- +# Display the configuration for all the tags in this script. +func_config () +{ + re_begincf='^# ### BEGIN LIBTOOL' + re_endcf='^# ### END LIBTOOL' + + # Default configuration. + $SED "1,/$re_begincf CONFIG/d;/$re_endcf CONFIG/,\$d" < "$progpath" + + # Now print the configurations for the tags. + for tagname in $taglist; do + $SED -n "/$re_begincf TAG CONFIG: $tagname\$/,/$re_endcf TAG CONFIG: $tagname\$/p" < "$progpath" + done + + exit $? +} + + +# func_features +# ------------- +# Display the features supported by this script. +func_features () +{ + echo "host: $host" + if test yes = "$build_libtool_libs"; then + echo "enable shared libraries" + else + echo "disable shared libraries" + fi + if test yes = "$build_old_libs"; then + echo "enable static libraries" + else + echo "disable static libraries" + fi + + exit $? +} + + +# func_enable_tag TAGNAME +# ----------------------- +# Verify that TAGNAME is valid, and either flag an error and exit, or +# enable the TAGNAME tag. We also add TAGNAME to the global $taglist +# variable here. +func_enable_tag () +{ + # Global variable: + tagname=$1 + + re_begincf="^# ### BEGIN LIBTOOL TAG CONFIG: $tagname\$" + re_endcf="^# ### END LIBTOOL TAG CONFIG: $tagname\$" + sed_extractcf=/$re_begincf/,/$re_endcf/p + + # Validate tagname. + case $tagname in + *[!-_A-Za-z0-9,/]*) + func_fatal_error "invalid tag name: $tagname" + ;; + esac + + # Don't test for the "default" C tag, as we know it's + # there but not specially marked. + case $tagname in + CC) ;; + *) + if $GREP "$re_begincf" "$progpath" >/dev/null 2>&1; then + taglist="$taglist $tagname" + + # Evaluate the configuration. Be careful to quote the path + # and the sed script, to avoid splitting on whitespace, but + # also don't use non-portable quotes within backquotes within + # quotes we have to do it in 2 steps: + extractedcf=`$SED -n -e "$sed_extractcf" < "$progpath"` + eval "$extractedcf" + else + func_error "ignoring unknown tag $tagname" + fi + ;; + esac +} + + +# func_check_version_match +# ------------------------ +# Ensure that we are using m4 macros, and libtool script from the same +# release of libtool. +func_check_version_match () +{ + if test "$package_revision" != "$macro_revision"; then + if test "$VERSION" != "$macro_version"; then + if test -z "$macro_version"; then + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from an older release. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, but the +$progname: definition of this LT_INIT comes from $PACKAGE $macro_version. +$progname: You should recreate aclocal.m4 with macros from $PACKAGE $VERSION +$progname: and run autoconf again. +_LT_EOF + fi + else + cat >&2 <<_LT_EOF +$progname: Version mismatch error. This is $PACKAGE $VERSION, revision $package_revision, +$progname: but the definition of this LT_INIT comes from revision $macro_revision. +$progname: You should recreate aclocal.m4 with macros from revision $package_revision +$progname: of $PACKAGE $VERSION and run autoconf again. +_LT_EOF + fi + + exit $EXIT_MISMATCH + fi +} + + +# libtool_options_prep [ARG]... +# ----------------------------- +# Preparation for options parsed by libtool. +libtool_options_prep () +{ + $debug_mode + + # Option defaults: + opt_config=false + opt_dlopen= + opt_dry_run=false + opt_help=false + opt_mode= + opt_preserve_dup_deps=false + opt_quiet=false + + nonopt= + preserve_args= + + # Shorthand for --mode=foo, only valid as the first argument + case $1 in + clean|clea|cle|cl) + shift; set dummy --mode clean ${1+"$@"}; shift + ;; + compile|compil|compi|comp|com|co|c) + shift; set dummy --mode compile ${1+"$@"}; shift + ;; + execute|execut|execu|exec|exe|ex|e) + shift; set dummy --mode execute ${1+"$@"}; shift + ;; + finish|finis|fini|fin|fi|f) + shift; set dummy --mode finish ${1+"$@"}; shift + ;; + install|instal|insta|inst|ins|in|i) + shift; set dummy --mode install ${1+"$@"}; shift + ;; + link|lin|li|l) + shift; set dummy --mode link ${1+"$@"}; shift + ;; + uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u) + shift; set dummy --mode uninstall ${1+"$@"}; shift + ;; + esac + + # Pass back the list of options. + func_quote_for_eval ${1+"$@"} + libtool_options_prep_result=$func_quote_for_eval_result +} +func_add_hook func_options_prep libtool_options_prep + + +# libtool_parse_options [ARG]... +# --------------------------------- +# Provide handling for libtool specific options. +libtool_parse_options () +{ + $debug_cmd + + # Perform our own loop to consume as many options as possible in + # each iteration. + while test $# -gt 0; do + _G_opt=$1 + shift + case $_G_opt in + --dry-run|--dryrun|-n) + opt_dry_run=: + ;; + + --config) func_config ;; + + --dlopen|-dlopen) + opt_dlopen="${opt_dlopen+$opt_dlopen +}$1" + shift + ;; + + --preserve-dup-deps) + opt_preserve_dup_deps=: ;; + + --features) func_features ;; + + --finish) set dummy --mode finish ${1+"$@"}; shift ;; + + --help) opt_help=: ;; + + --help-all) opt_help=': help-all' ;; + + --mode) test $# = 0 && func_missing_arg $_G_opt && break + opt_mode=$1 + case $1 in + # Valid mode arguments: + clean|compile|execute|finish|install|link|relink|uninstall) ;; + + # Catch anything else as an error + *) func_error "invalid argument for $_G_opt" + exit_cmd=exit + break + ;; + esac + shift + ;; + + --no-silent|--no-quiet) + opt_quiet=false + func_append preserve_args " $_G_opt" + ;; + + --no-warnings|--no-warning|--no-warn) + opt_warning=false + func_append preserve_args " $_G_opt" + ;; + + --no-verbose) + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --silent|--quiet) + opt_quiet=: + opt_verbose=false + func_append preserve_args " $_G_opt" + ;; + + --tag) test $# = 0 && func_missing_arg $_G_opt && break + opt_tag=$1 + func_append preserve_args " $_G_opt $1" + func_enable_tag "$1" + shift + ;; + + --verbose|-v) opt_quiet=false + opt_verbose=: + func_append preserve_args " $_G_opt" + ;; + + # An option not handled by this hook function: + *) set dummy "$_G_opt" ${1+"$@"}; shift; break ;; + esac + done + + + # save modified positional parameters for caller + func_quote_for_eval ${1+"$@"} + libtool_parse_options_result=$func_quote_for_eval_result +} +func_add_hook func_parse_options libtool_parse_options + + + +# libtool_validate_options [ARG]... +# --------------------------------- +# Perform any sanity checks on option settings and/or unconsumed +# arguments. +libtool_validate_options () +{ + # save first non-option argument + if test 0 -lt $#; then + nonopt=$1 + shift + fi + + # preserve --debug + test : = "$debug_cmd" || func_append preserve_args " --debug" + + case $host in + # Solaris2 added to fix http://debbugs.gnu.org/cgi/bugreport.cgi?bug=16452 + # see also: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59788 + *cygwin* | *mingw* | *pw32* | *cegcc* | *solaris2* | *os2*) + # don't eliminate duplications in $postdeps and $predeps + opt_duplicate_compiler_generated_deps=: + ;; + *) + opt_duplicate_compiler_generated_deps=$opt_preserve_dup_deps + ;; + esac + + $opt_help || { + # Sanity checks first: + func_check_version_match + + test yes != "$build_libtool_libs" \ + && test yes != "$build_old_libs" \ + && func_fatal_configuration "not configured to build any kind of library" + + # Darwin sucks + eval std_shrext=\"$shrext_cmds\" + + # Only execute mode is allowed to have -dlopen flags. + if test -n "$opt_dlopen" && test execute != "$opt_mode"; then + func_error "unrecognized option '-dlopen'" + $ECHO "$help" 1>&2 + exit $EXIT_FAILURE + fi + + # Change the help message to a mode-specific one. + generic_help=$help + help="Try '$progname --help --mode=$opt_mode' for more information." + } + + # Pass back the unparsed argument list + func_quote_for_eval ${1+"$@"} + libtool_validate_options_result=$func_quote_for_eval_result +} +func_add_hook func_validate_options libtool_validate_options + + +# Process options as early as possible so that --help and --version +# can return quickly. +func_options ${1+"$@"} +eval set dummy "$func_options_result"; shift + + + +## ----------- ## +## Main. ## +## ----------- ## + +magic='%%%MAGIC variable%%%' +magic_exe='%%%MAGIC EXE variable%%%' + +# Global variables. +extracted_archives= +extracted_serial=0 + +# If this variable is set in any of the actions, the command in it +# will be execed at the end. This prevents here-documents from being +# left over by shells. +exec_cmd= + + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +$1 +_LTECHO_EOF' +} + +# func_generated_by_libtool +# True iff stdin has been generated by Libtool. This function is only +# a basic sanity check; it will hardly flush out determined imposters. +func_generated_by_libtool_p () +{ + $GREP "^# Generated by .*$PACKAGE" > /dev/null 2>&1 +} + +# func_lalib_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_lalib_p () +{ + test -f "$1" && + $SED -e 4q "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_lalib_unsafe_p file +# True iff FILE is a libtool '.la' library or '.lo' object file. +# This function implements the same check as func_lalib_p without +# resorting to external programs. To this end, it redirects stdin and +# closes it afterwards, without saving the original file descriptor. +# As a safety measure, use it only where a negative result would be +# fatal anyway. Works if 'file' does not exist. +func_lalib_unsafe_p () +{ + lalib_p=no + if test -f "$1" && test -r "$1" && exec 5<&0 <"$1"; then + for lalib_p_l in 1 2 3 4 + do + read lalib_p_line + case $lalib_p_line in + \#\ Generated\ by\ *$PACKAGE* ) lalib_p=yes; break;; + esac + done + exec 0<&5 5<&- + fi + test yes = "$lalib_p" +} + +# func_ltwrapper_script_p file +# True iff FILE is a libtool wrapper script +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_script_p () +{ + test -f "$1" && + $lt_truncate_bin < "$1" 2>/dev/null | func_generated_by_libtool_p +} + +# func_ltwrapper_executable_p file +# True iff FILE is a libtool wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_executable_p () +{ + func_ltwrapper_exec_suffix= + case $1 in + *.exe) ;; + *) func_ltwrapper_exec_suffix=.exe ;; + esac + $GREP "$magic_exe" "$1$func_ltwrapper_exec_suffix" >/dev/null 2>&1 +} + +# func_ltwrapper_scriptname file +# Assumes file is an ltwrapper_executable +# uses $file to determine the appropriate filename for a +# temporary ltwrapper_script. +func_ltwrapper_scriptname () +{ + func_dirname_and_basename "$1" "" "." + func_stripname '' '.exe' "$func_basename_result" + func_ltwrapper_scriptname_result=$func_dirname_result/$objdir/${func_stripname_result}_ltshwrapper +} + +# func_ltwrapper_p file +# True iff FILE is a libtool wrapper script or wrapper executable +# This function is only a basic sanity check; it will hardly flush out +# determined imposters. +func_ltwrapper_p () +{ + func_ltwrapper_script_p "$1" || func_ltwrapper_executable_p "$1" +} + + +# func_execute_cmds commands fail_cmd +# Execute tilde-delimited COMMANDS. +# If FAIL_CMD is given, eval that upon failure. +# FAIL_CMD may read-access the current command in variable CMD! +func_execute_cmds () +{ + $debug_cmd + + save_ifs=$IFS; IFS='~' + for cmd in $1; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + func_show_eval "$cmd" "${2-:}" + done + IFS=$save_ifs +} + + +# func_source file +# Source FILE, adding directory component if necessary. +# Note that it is not necessary on cygwin/mingw to append a dot to +# FILE even if both FILE and FILE.exe exist: automatic-append-.exe +# behavior happens only for exec(3), not for open(2)! Also, sourcing +# 'FILE.' does not work on cygwin managed mounts. +func_source () +{ + $debug_cmd + + case $1 in + */* | *\\*) . "$1" ;; + *) . "./$1" ;; + esac +} + + +# func_resolve_sysroot PATH +# Replace a leading = in PATH with a sysroot. Store the result into +# func_resolve_sysroot_result +func_resolve_sysroot () +{ + func_resolve_sysroot_result=$1 + case $func_resolve_sysroot_result in + =*) + func_stripname '=' '' "$func_resolve_sysroot_result" + func_resolve_sysroot_result=$lt_sysroot$func_stripname_result + ;; + esac +} + +# func_replace_sysroot PATH +# If PATH begins with the sysroot, replace it with = and +# store the result into func_replace_sysroot_result. +func_replace_sysroot () +{ + case $lt_sysroot:$1 in + ?*:"$lt_sysroot"*) + func_stripname "$lt_sysroot" '' "$1" + func_replace_sysroot_result='='$func_stripname_result + ;; + *) + # Including no sysroot. + func_replace_sysroot_result=$1 + ;; + esac +} + +# func_infer_tag arg +# Infer tagged configuration to use if any are available and +# if one wasn't chosen via the "--tag" command line option. +# Only attempt this if the compiler in the base compile +# command doesn't match the default compiler. +# arg is usually of the form 'gcc ...' +func_infer_tag () +{ + $debug_cmd + + if test -n "$available_tags" && test -z "$tagname"; then + CC_quoted= + for arg in $CC; do + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case $@ in + # Blanks in the command may have been stripped by the calling shell, + # but not from the CC environment variable when configure was run. + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) ;; + # Blanks at the start of $base_compile will cause this to fail + # if we don't check for them as well. + *) + for z in $available_tags; do + if $GREP "^# ### BEGIN LIBTOOL TAG CONFIG: $z$" < "$progpath" > /dev/null; then + # Evaluate the configuration. + eval "`$SED -n -e '/^# ### BEGIN LIBTOOL TAG CONFIG: '$z'$/,/^# ### END LIBTOOL TAG CONFIG: '$z'$/p' < $progpath`" + CC_quoted= + for arg in $CC; do + # Double-quote args containing other shell metacharacters. + func_append_quoted CC_quoted "$arg" + done + CC_expanded=`func_echo_all $CC` + CC_quoted_expanded=`func_echo_all $CC_quoted` + case "$@ " in + " $CC "* | "$CC "* | " $CC_expanded "* | "$CC_expanded "* | \ + " $CC_quoted"* | "$CC_quoted "* | " $CC_quoted_expanded "* | "$CC_quoted_expanded "*) + # The compiler in the base compile command matches + # the one in the tagged configuration. + # Assume this is the tagged configuration we want. + tagname=$z + break + ;; + esac + fi + done + # If $tagname still isn't set, then no tagged configuration + # was found and let the user know that the "--tag" command + # line option must be used. + if test -z "$tagname"; then + func_echo "unable to infer tagged configuration" + func_fatal_error "specify a tag with '--tag'" +# else +# func_verbose "using $tagname tagged configuration" + fi + ;; + esac + fi +} + + + +# func_write_libtool_object output_name pic_name nonpic_name +# Create a libtool object file (analogous to a ".la" file), +# but don't create it if we're doing a dry run. +func_write_libtool_object () +{ + write_libobj=$1 + if test yes = "$build_libtool_libs"; then + write_lobj=\'$2\' + else + write_lobj=none + fi + + if test yes = "$build_old_libs"; then + write_oldobj=\'$3\' + else + write_oldobj=none + fi + + $opt_dry_run || { + cat >${write_libobj}T </dev/null` + if test "$?" -eq 0 && test -n "$func_convert_core_file_wine_to_w32_tmp"; then + func_convert_core_file_wine_to_w32_result=`$ECHO "$func_convert_core_file_wine_to_w32_tmp" | + $SED -e "$sed_naive_backslashify"` + else + func_convert_core_file_wine_to_w32_result= + fi + fi +} +# end: func_convert_core_file_wine_to_w32 + + +# func_convert_core_path_wine_to_w32 ARG +# Helper function used by path conversion functions when $build is *nix, and +# $host is mingw, cygwin, or some other w32 environment. Relies on a correctly +# configured wine environment available, with the winepath program in $build's +# $PATH. Assumes ARG has no leading or trailing path separator characters. +# +# ARG is path to be converted from $build format to win32. +# Result is available in $func_convert_core_path_wine_to_w32_result. +# Unconvertible file (directory) names in ARG are skipped; if no directory names +# are convertible, then the result may be empty. +func_convert_core_path_wine_to_w32 () +{ + $debug_cmd + + # unfortunately, winepath doesn't convert paths, only file names + func_convert_core_path_wine_to_w32_result= + if test -n "$1"; then + oldIFS=$IFS + IFS=: + for func_convert_core_path_wine_to_w32_f in $1; do + IFS=$oldIFS + func_convert_core_file_wine_to_w32 "$func_convert_core_path_wine_to_w32_f" + if test -n "$func_convert_core_file_wine_to_w32_result"; then + if test -z "$func_convert_core_path_wine_to_w32_result"; then + func_convert_core_path_wine_to_w32_result=$func_convert_core_file_wine_to_w32_result + else + func_append func_convert_core_path_wine_to_w32_result ";$func_convert_core_file_wine_to_w32_result" + fi + fi + done + IFS=$oldIFS + fi +} +# end: func_convert_core_path_wine_to_w32 + + +# func_cygpath ARGS... +# Wrapper around calling the cygpath program via LT_CYGPATH. This is used when +# when (1) $build is *nix and Cygwin is hosted via a wine environment; or (2) +# $build is MSYS and $host is Cygwin, or (3) $build is Cygwin. In case (1) or +# (2), returns the Cygwin file name or path in func_cygpath_result (input +# file name or path is assumed to be in w32 format, as previously converted +# from $build's *nix or MSYS format). In case (3), returns the w32 file name +# or path in func_cygpath_result (input file name or path is assumed to be in +# Cygwin format). Returns an empty string on error. +# +# ARGS are passed to cygpath, with the last one being the file name or path to +# be converted. +# +# Specify the absolute *nix (or w32) name to cygpath in the LT_CYGPATH +# environment variable; do not put it in $PATH. +func_cygpath () +{ + $debug_cmd + + if test -n "$LT_CYGPATH" && test -f "$LT_CYGPATH"; then + func_cygpath_result=`$LT_CYGPATH "$@" 2>/dev/null` + if test "$?" -ne 0; then + # on failure, ensure result is empty + func_cygpath_result= + fi + else + func_cygpath_result= + func_error "LT_CYGPATH is empty or specifies non-existent file: '$LT_CYGPATH'" + fi +} +#end: func_cygpath + + +# func_convert_core_msys_to_w32 ARG +# Convert file name or path ARG from MSYS format to w32 format. Return +# result in func_convert_core_msys_to_w32_result. +func_convert_core_msys_to_w32 () +{ + $debug_cmd + + # awkward: cmd appends spaces to result + func_convert_core_msys_to_w32_result=`( cmd //c echo "$1" ) 2>/dev/null | + $SED -e 's/[ ]*$//' -e "$sed_naive_backslashify"` +} +#end: func_convert_core_msys_to_w32 + + +# func_convert_file_check ARG1 ARG2 +# Verify that ARG1 (a file name in $build format) was converted to $host +# format in ARG2. Otherwise, emit an error message, but continue (resetting +# func_to_host_file_result to ARG1). +func_convert_file_check () +{ + $debug_cmd + + if test -z "$2" && test -n "$1"; then + func_error "Could not determine host file name corresponding to" + func_error " '$1'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback: + func_to_host_file_result=$1 + fi +} +# end func_convert_file_check + + +# func_convert_path_check FROM_PATHSEP TO_PATHSEP FROM_PATH TO_PATH +# Verify that FROM_PATH (a path in $build format) was converted to $host +# format in TO_PATH. Otherwise, emit an error message, but continue, resetting +# func_to_host_file_result to a simplistic fallback value (see below). +func_convert_path_check () +{ + $debug_cmd + + if test -z "$4" && test -n "$3"; then + func_error "Could not determine the host path corresponding to" + func_error " '$3'" + func_error "Continuing, but uninstalled executables may not work." + # Fallback. This is a deliberately simplistic "conversion" and + # should not be "improved". See libtool.info. + if test "x$1" != "x$2"; then + lt_replace_pathsep_chars="s|$1|$2|g" + func_to_host_path_result=`echo "$3" | + $SED -e "$lt_replace_pathsep_chars"` + else + func_to_host_path_result=$3 + fi + fi +} +# end func_convert_path_check + + +# func_convert_path_front_back_pathsep FRONTPAT BACKPAT REPL ORIG +# Modifies func_to_host_path_result by prepending REPL if ORIG matches FRONTPAT +# and appending REPL if ORIG matches BACKPAT. +func_convert_path_front_back_pathsep () +{ + $debug_cmd + + case $4 in + $1 ) func_to_host_path_result=$3$func_to_host_path_result + ;; + esac + case $4 in + $2 ) func_append func_to_host_path_result "$3" + ;; + esac +} +# end func_convert_path_front_back_pathsep + + +################################################## +# $build to $host FILE NAME CONVERSION FUNCTIONS # +################################################## +# invoked via '$to_host_file_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# Result will be available in $func_to_host_file_result. + + +# func_to_host_file ARG +# Converts the file name ARG from $build format to $host format. Return result +# in func_to_host_file_result. +func_to_host_file () +{ + $debug_cmd + + $to_host_file_cmd "$1" +} +# end func_to_host_file + + +# func_to_tool_file ARG LAZY +# converts the file name ARG from $build format to toolchain format. Return +# result in func_to_tool_file_result. If the conversion in use is listed +# in (the comma separated) LAZY, no conversion takes place. +func_to_tool_file () +{ + $debug_cmd + + case ,$2, in + *,"$to_tool_file_cmd",*) + func_to_tool_file_result=$1 + ;; + *) + $to_tool_file_cmd "$1" + func_to_tool_file_result=$func_to_host_file_result + ;; + esac +} +# end func_to_tool_file + + +# func_convert_file_noop ARG +# Copy ARG to func_to_host_file_result. +func_convert_file_noop () +{ + func_to_host_file_result=$1 +} +# end func_convert_file_noop + + +# func_convert_file_msys_to_w32 ARG +# Convert file name ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_file_result. +func_convert_file_msys_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_to_host_file_result=$func_convert_core_msys_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_w32 + + +# func_convert_file_cygwin_to_w32 ARG +# Convert file name ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_file_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # because $build is cygwin, we call "the" cygpath in $PATH; no need to use + # LT_CYGPATH in this case. + func_to_host_file_result=`cygpath -m "$1"` + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_cygwin_to_w32 + + +# func_convert_file_nix_to_w32 ARG +# Convert file name ARG from *nix to w32 format. Requires a wine environment +# and a working winepath. Returns result in func_to_host_file_result. +func_convert_file_nix_to_w32 () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_file_wine_to_w32 "$1" + func_to_host_file_result=$func_convert_core_file_wine_to_w32_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_w32 + + +# func_convert_file_msys_to_cygwin ARG +# Convert file name ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_file_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + func_convert_core_msys_to_w32 "$1" + func_cygpath -u "$func_convert_core_msys_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_msys_to_cygwin + + +# func_convert_file_nix_to_cygwin ARG +# Convert file name ARG from *nix to Cygwin format. Requires Cygwin installed +# in a wine environment, working winepath, and LT_CYGPATH set. Returns result +# in func_to_host_file_result. +func_convert_file_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_file_result=$1 + if test -n "$1"; then + # convert from *nix to w32, then use cygpath to convert from w32 to cygwin. + func_convert_core_file_wine_to_w32 "$1" + func_cygpath -u "$func_convert_core_file_wine_to_w32_result" + func_to_host_file_result=$func_cygpath_result + fi + func_convert_file_check "$1" "$func_to_host_file_result" +} +# end func_convert_file_nix_to_cygwin + + +############################################# +# $build to $host PATH CONVERSION FUNCTIONS # +############################################# +# invoked via '$to_host_path_cmd ARG' +# +# In each case, ARG is the path to be converted from $build to $host format. +# The result will be available in $func_to_host_path_result. +# +# Path separators are also converted from $build format to $host format. If +# ARG begins or ends with a path separator character, it is preserved (but +# converted to $host format) on output. +# +# All path conversion functions are named using the following convention: +# file name conversion function : func_convert_file_X_to_Y () +# path conversion function : func_convert_path_X_to_Y () +# where, for any given $build/$host combination the 'X_to_Y' value is the +# same. If conversion functions are added for new $build/$host combinations, +# the two new functions must follow this pattern, or func_init_to_host_path_cmd +# will break. + + +# func_init_to_host_path_cmd +# Ensures that function "pointer" variable $to_host_path_cmd is set to the +# appropriate value, based on the value of $to_host_file_cmd. +to_host_path_cmd= +func_init_to_host_path_cmd () +{ + $debug_cmd + + if test -z "$to_host_path_cmd"; then + func_stripname 'func_convert_file_' '' "$to_host_file_cmd" + to_host_path_cmd=func_convert_path_$func_stripname_result + fi +} + + +# func_to_host_path ARG +# Converts the path ARG from $build format to $host format. Return result +# in func_to_host_path_result. +func_to_host_path () +{ + $debug_cmd + + func_init_to_host_path_cmd + $to_host_path_cmd "$1" +} +# end func_to_host_path + + +# func_convert_path_noop ARG +# Copy ARG to func_to_host_path_result. +func_convert_path_noop () +{ + func_to_host_path_result=$1 +} +# end func_convert_path_noop + + +# func_convert_path_msys_to_w32 ARG +# Convert path ARG from (mingw) MSYS to (mingw) w32 format; automatic +# conversion to w32 is not available inside the cwrapper. Returns result in +# func_to_host_path_result. +func_convert_path_msys_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from ARG. MSYS + # behavior is inconsistent here; cygpath turns them into '.;' and ';.'; + # and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_msys_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_msys_to_w32 + + +# func_convert_path_cygwin_to_w32 ARG +# Convert path ARG from Cygwin to w32 format. Returns result in +# func_to_host_file_result. +func_convert_path_cygwin_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_to_host_path_result=`cygpath -m -p "$func_to_host_path_tmp1"` + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_cygwin_to_w32 + + +# func_convert_path_nix_to_w32 ARG +# Convert path ARG from *nix to w32 format. Requires a wine environment and +# a working winepath. Returns result in func_to_host_file_result. +func_convert_path_nix_to_w32 () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_to_host_path_result=$func_convert_core_path_wine_to_w32_result + func_convert_path_check : ";" \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" ";" "$1" + fi +} +# end func_convert_path_nix_to_w32 + + +# func_convert_path_msys_to_cygwin ARG +# Convert path ARG from MSYS to Cygwin format. Requires LT_CYGPATH set. +# Returns result in func_to_host_file_result. +func_convert_path_msys_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # See func_convert_path_msys_to_w32: + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_msys_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_msys_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_msys_to_cygwin + + +# func_convert_path_nix_to_cygwin ARG +# Convert path ARG from *nix to Cygwin format. Requires Cygwin installed in a +# a wine environment, working winepath, and LT_CYGPATH set. Returns result in +# func_to_host_file_result. +func_convert_path_nix_to_cygwin () +{ + $debug_cmd + + func_to_host_path_result=$1 + if test -n "$1"; then + # Remove leading and trailing path separator characters from + # ARG. msys behavior is inconsistent here, cygpath turns them + # into '.;' and ';.', and winepath ignores them completely. + func_stripname : : "$1" + func_to_host_path_tmp1=$func_stripname_result + func_convert_core_path_wine_to_w32 "$func_to_host_path_tmp1" + func_cygpath -u -p "$func_convert_core_path_wine_to_w32_result" + func_to_host_path_result=$func_cygpath_result + func_convert_path_check : : \ + "$func_to_host_path_tmp1" "$func_to_host_path_result" + func_convert_path_front_back_pathsep ":*" "*:" : "$1" + fi +} +# end func_convert_path_nix_to_cygwin + + +# func_dll_def_p FILE +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with _LT_DLL_DEF_P in libtool.m4 +func_dll_def_p () +{ + $debug_cmd + + func_dll_def_p_tmp=`$SED -n \ + -e 's/^[ ]*//' \ + -e '/^\(;.*\)*$/d' \ + -e 's/^\(EXPORTS\|LIBRARY\)\([ ].*\)*$/DEF/p' \ + -e q \ + "$1"` + test DEF = "$func_dll_def_p_tmp" +} + + +# func_mode_compile arg... +func_mode_compile () +{ + $debug_cmd + + # Get the compilation command and the source file. + base_compile= + srcfile=$nonopt # always keep a non-empty value in "srcfile" + suppress_opt=yes + suppress_output= + arg_mode=normal + libobj= + later= + pie_flag= + + for arg + do + case $arg_mode in + arg ) + # do not "continue". Instead, add this to base_compile + lastarg=$arg + arg_mode=normal + ;; + + target ) + libobj=$arg + arg_mode=normal + continue + ;; + + normal ) + # Accept any command-line options. + case $arg in + -o) + test -n "$libobj" && \ + func_fatal_error "you cannot specify '-o' more than once" + arg_mode=target + continue + ;; + + -pie | -fpie | -fPIE) + func_append pie_flag " $arg" + continue + ;; + + -shared | -static | -prefer-pic | -prefer-non-pic) + func_append later " $arg" + continue + ;; + + -no-suppress) + suppress_opt=no + continue + ;; + + -Xcompiler) + arg_mode=arg # the next one goes into the "base_compile" arg list + continue # The current "srcfile" will either be retained or + ;; # replaced later. I would guess that would be a bug. + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + lastarg= + save_ifs=$IFS; IFS=, + for arg in $args; do + IFS=$save_ifs + func_append_quoted lastarg "$arg" + done + IFS=$save_ifs + func_stripname ' ' '' "$lastarg" + lastarg=$func_stripname_result + + # Add the arguments to base_compile. + func_append base_compile " $lastarg" + continue + ;; + + *) + # Accept the current argument as the source file. + # The previous "srcfile" becomes the current argument. + # + lastarg=$srcfile + srcfile=$arg + ;; + esac # case $arg + ;; + esac # case $arg_mode + + # Aesthetically quote the previous argument. + func_append_quoted base_compile "$lastarg" + done # for arg + + case $arg_mode in + arg) + func_fatal_error "you must specify an argument for -Xcompile" + ;; + target) + func_fatal_error "you must specify a target with '-o'" + ;; + *) + # Get the name of the library object. + test -z "$libobj" && { + func_basename "$srcfile" + libobj=$func_basename_result + } + ;; + esac + + # Recognize several different file suffixes. + # If the user specifies -o file.o, it is replaced with file.lo + case $libobj in + *.[cCFSifmso] | \ + *.ada | *.adb | *.ads | *.asm | \ + *.c++ | *.cc | *.ii | *.class | *.cpp | *.cxx | \ + *.[fF][09]? | *.for | *.java | *.go | *.obj | *.sx | *.cu | *.cup) + func_xform "$libobj" + libobj=$func_xform_result + ;; + esac + + case $libobj in + *.lo) func_lo2o "$libobj"; obj=$func_lo2o_result ;; + *) + func_fatal_error "cannot determine name of library object from '$libobj'" + ;; + esac + + func_infer_tag $base_compile + + for arg in $later; do + case $arg in + -shared) + test yes = "$build_libtool_libs" \ + || func_fatal_configuration "cannot build a shared library" + build_old_libs=no + continue + ;; + + -static) + build_libtool_libs=no + build_old_libs=yes + continue + ;; + + -prefer-pic) + pic_mode=yes + continue + ;; + + -prefer-non-pic) + pic_mode=no + continue + ;; + esac + done + + func_quote_for_eval "$libobj" + test "X$libobj" != "X$func_quote_for_eval_result" \ + && $ECHO "X$libobj" | $GREP '[]~#^*{};<>?"'"'"' &()|`$[]' \ + && func_warning "libobj name '$libobj' may not contain shell special characters." + func_dirname_and_basename "$obj" "/" "" + objname=$func_basename_result + xdir=$func_dirname_result + lobj=$xdir$objdir/$objname + + test -z "$base_compile" && \ + func_fatal_help "you must specify a compilation command" + + # Delete any leftover library objects. + if test yes = "$build_old_libs"; then + removelist="$obj $lobj $libobj ${libobj}T" + else + removelist="$lobj $libobj ${libobj}T" + fi + + # On Cygwin there's no "real" PIC flag so we must build both object types + case $host_os in + cygwin* | mingw* | pw32* | os2* | cegcc*) + pic_mode=default + ;; + esac + if test no = "$pic_mode" && test pass_all != "$deplibs_check_method"; then + # non-PIC code in shared libraries is not supported + pic_mode=default + fi + + # Calculate the filename of the output object if compiler does + # not support -o with -c + if test no = "$compiler_c_o"; then + output_obj=`$ECHO "$srcfile" | $SED 's%^.*/%%; s%\.[^.]*$%%'`.$objext + lockfile=$output_obj.lock + else + output_obj= + need_locks=no + lockfile= + fi + + # Lock this critical section if it is needed + # We use this script file to make the link, it avoids creating a new file + if test yes = "$need_locks"; then + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + elif test warn = "$need_locks"; then + if test -f "$lockfile"; then + $ECHO "\ +*** ERROR, $lockfile exists and contains: +`cat $lockfile 2>/dev/null` + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + func_append removelist " $output_obj" + $ECHO "$srcfile" > "$lockfile" + fi + + $opt_dry_run || $RM $removelist + func_append removelist " $lockfile" + trap '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' 1 2 15 + + func_to_tool_file "$srcfile" func_convert_file_msys_to_w32 + srcfile=$func_to_tool_file_result + func_quote_for_eval "$srcfile" + qsrcfile=$func_quote_for_eval_result + + # Only build a PIC object if we are building libtool libraries. + if test yes = "$build_libtool_libs"; then + # Without this assignment, base_compile gets emptied. + fbsd_hideous_sh_bug=$base_compile + + if test no != "$pic_mode"; then + command="$base_compile $qsrcfile $pic_flag" + else + # Don't build PIC code + command="$base_compile $qsrcfile" + fi + + func_mkdir_p "$xdir$objdir" + + if test -z "$output_obj"; then + # Place PIC objects in $objdir + func_append command " -o $lobj" + fi + + func_show_eval_locale "$command" \ + 'test -n "$output_obj" && $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed, then go on to compile the next one + if test -n "$output_obj" && test "X$output_obj" != "X$lobj"; then + func_show_eval '$MV "$output_obj" "$lobj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + + # Allow error messages only from the first compilation. + if test yes = "$suppress_opt"; then + suppress_output=' >/dev/null 2>&1' + fi + fi + + # Only build a position-dependent object if we build old libraries. + if test yes = "$build_old_libs"; then + if test yes != "$pic_mode"; then + # Don't build PIC code + command="$base_compile $qsrcfile$pie_flag" + else + command="$base_compile $qsrcfile $pic_flag" + fi + if test yes = "$compiler_c_o"; then + func_append command " -o $obj" + fi + + # Suppress compiler output if we already did a PIC compilation. + func_append command "$suppress_output" + func_show_eval_locale "$command" \ + '$opt_dry_run || $RM $removelist; exit $EXIT_FAILURE' + + if test warn = "$need_locks" && + test "X`cat $lockfile 2>/dev/null`" != "X$srcfile"; then + $ECHO "\ +*** ERROR, $lockfile contains: +`cat $lockfile 2>/dev/null` + +but it should contain: +$srcfile + +This indicates that another process is trying to use the same +temporary object file, and libtool could not work around it because +your compiler does not support '-c' and '-o' together. If you +repeat this compilation, it may succeed, by chance, but you had better +avoid parallel builds (make -j) in this platform, or get a better +compiler." + + $opt_dry_run || $RM $removelist + exit $EXIT_FAILURE + fi + + # Just move the object if needed + if test -n "$output_obj" && test "X$output_obj" != "X$obj"; then + func_show_eval '$MV "$output_obj" "$obj"' \ + 'error=$?; $opt_dry_run || $RM $removelist; exit $error' + fi + fi + + $opt_dry_run || { + func_write_libtool_object "$libobj" "$objdir/$objname" "$objname" + + # Unlock the critical section if it was locked + if test no != "$need_locks"; then + removelist=$lockfile + $RM "$lockfile" + fi + } + + exit $EXIT_SUCCESS +} + +$opt_help || { + test compile = "$opt_mode" && func_mode_compile ${1+"$@"} +} + +func_mode_help () +{ + # We need to display help for each of the modes. + case $opt_mode in + "") + # Generic help is extracted from the usage comments + # at the start of this file. + func_help + ;; + + clean) + $ECHO \ +"Usage: $progname [OPTION]... --mode=clean RM [RM-OPTION]... FILE... + +Remove files from the build directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, object or program, all the files associated +with it are deleted. Otherwise, only FILE itself is deleted using RM." + ;; + + compile) + $ECHO \ +"Usage: $progname [OPTION]... --mode=compile COMPILE-COMMAND... SOURCEFILE + +Compile a source file into a libtool library object. + +This mode accepts the following additional options: + + -o OUTPUT-FILE set the output file name to OUTPUT-FILE + -no-suppress do not suppress compiler output for multiple passes + -prefer-pic try to build PIC objects only + -prefer-non-pic try to build non-PIC objects only + -shared do not build a '.o' file suitable for static linking + -static only build a '.o' file suitable for static linking + -Wc,FLAG pass FLAG directly to the compiler + +COMPILE-COMMAND is a command to be used in creating a 'standard' object file +from the given SOURCEFILE. + +The output file name is determined by removing the directory component from +SOURCEFILE, then substituting the C source code suffix '.c' with the +library object suffix, '.lo'." + ;; + + execute) + $ECHO \ +"Usage: $progname [OPTION]... --mode=execute COMMAND [ARGS]... + +Automatically set library path, then run a program. + +This mode accepts the following additional options: + + -dlopen FILE add the directory containing FILE to the library path + +This mode sets the library path environment variable according to '-dlopen' +flags. + +If any of the ARGS are libtool executable wrappers, then they are translated +into their corresponding uninstalled binary, and any of their required library +directories are added to the library path. + +Then, COMMAND is executed, with ARGS as arguments." + ;; + + finish) + $ECHO \ +"Usage: $progname [OPTION]... --mode=finish [LIBDIR]... + +Complete the installation of libtool libraries. + +Each LIBDIR is a directory that contains libtool libraries. + +The commands that this mode executes may require superuser privileges. Use +the '--dry-run' option if you just want to see what would be executed." + ;; + + install) + $ECHO \ +"Usage: $progname [OPTION]... --mode=install INSTALL-COMMAND... + +Install executables or libraries. + +INSTALL-COMMAND is the installation command. The first component should be +either the 'install' or 'cp' program. + +The following components of INSTALL-COMMAND are treated specially: + + -inst-prefix-dir PREFIX-DIR Use PREFIX-DIR as a staging area for installation + +The rest of the components are interpreted as arguments to that command (only +BSD-compatible install options are recognized)." + ;; + + link) + $ECHO \ +"Usage: $progname [OPTION]... --mode=link LINK-COMMAND... + +Link object files or libraries together to form another library, or to +create an executable program. + +LINK-COMMAND is a command using the C compiler that you would use to create +a program from several object files. + +The following components of LINK-COMMAND are treated specially: + + -all-static do not do any dynamic linking at all + -avoid-version do not add a version suffix if possible + -bindir BINDIR specify path to binaries directory (for systems where + libraries must be found in the PATH setting at runtime) + -dlopen FILE '-dlpreopen' FILE if it cannot be dlopened at runtime + -dlpreopen FILE link in FILE and add its symbols to lt_preloaded_symbols + -export-dynamic allow symbols from OUTPUT-FILE to be resolved with dlsym(3) + -export-symbols SYMFILE + try to export only the symbols listed in SYMFILE + -export-symbols-regex REGEX + try to export only the symbols matching REGEX + -LLIBDIR search LIBDIR for required installed libraries + -lNAME OUTPUT-FILE requires the installed library libNAME + -module build a library that can dlopened + -no-fast-install disable the fast-install mode + -no-install link a not-installable executable + -no-undefined declare that a library does not refer to external symbols + -o OUTPUT-FILE create OUTPUT-FILE from the specified objects + -objectlist FILE use a list of object files found in FILE to specify objects + -os2dllname NAME force a short DLL name on OS/2 (no effect on other OSes) + -precious-files-regex REGEX + don't remove output files matching REGEX + -release RELEASE specify package release information + -rpath LIBDIR the created library will eventually be installed in LIBDIR + -R[ ]LIBDIR add LIBDIR to the runtime path of programs and libraries + -shared only do dynamic linking of libtool libraries + -shrext SUFFIX override the standard shared library file extension + -static do not do any dynamic linking of uninstalled libtool libraries + -static-libtool-libs + do not do any dynamic linking of libtool libraries + -version-info CURRENT[:REVISION[:AGE]] + specify library version info [each variable defaults to 0] + -weak LIBNAME declare that the target provides the LIBNAME interface + -Wc,FLAG + -Xcompiler FLAG pass linker-specific FLAG directly to the compiler + -Wl,FLAG + -Xlinker FLAG pass linker-specific FLAG directly to the linker + -XCClinker FLAG pass link-specific FLAG to the compiler driver (CC) + +All other options (arguments beginning with '-') are ignored. + +Every other argument is treated as a filename. Files ending in '.la' are +treated as uninstalled libtool libraries, other files are standard or library +object files. + +If the OUTPUT-FILE ends in '.la', then a libtool library is created, +only library objects ('.lo' files) may be specified, and '-rpath' is +required, except when creating a convenience library. + +If OUTPUT-FILE ends in '.a' or '.lib', then a standard library is created +using 'ar' and 'ranlib', or on Windows using 'lib'. + +If OUTPUT-FILE ends in '.lo' or '.$objext', then a reloadable object file +is created, otherwise an executable program is created." + ;; + + uninstall) + $ECHO \ +"Usage: $progname [OPTION]... --mode=uninstall RM [RM-OPTION]... FILE... + +Remove libraries from an installation directory. + +RM is the name of the program to use to delete files associated with each FILE +(typically '/bin/rm'). RM-OPTIONS are options (such as '-f') to be passed +to RM. + +If FILE is a libtool library, all the files associated with it are deleted. +Otherwise, only FILE itself is deleted using RM." + ;; + + *) + func_fatal_help "invalid operation mode '$opt_mode'" + ;; + esac + + echo + $ECHO "Try '$progname --help' for more information about other modes." +} + +# Now that we've collected a possible --mode arg, show help if necessary +if $opt_help; then + if test : = "$opt_help"; then + func_mode_help + else + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + func_mode_help + done + } | $SED -n '1p; 2,$s/^Usage:/ or: /p' + { + func_help noexit + for opt_mode in compile link execute install finish uninstall clean; do + echo + func_mode_help + done + } | + $SED '1d + /^When reporting/,/^Report/{ + H + d + } + $x + /information about other modes/d + /more detailed .*MODE/d + s/^Usage:.*--mode=\([^ ]*\) .*/Description of \1 mode:/' + fi + exit $? +fi + + +# func_mode_execute arg... +func_mode_execute () +{ + $debug_cmd + + # The first argument is the command name. + cmd=$nonopt + test -z "$cmd" && \ + func_fatal_help "you must specify a COMMAND" + + # Handle -dlopen flags immediately. + for file in $opt_dlopen; do + test -f "$file" \ + || func_fatal_help "'$file' is not a file" + + dir= + case $file in + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$lib' is not a valid libtool archive" + + # Read the libtool library. + dlname= + library_names= + func_source "$file" + + # Skip this library if it cannot be dlopened. + if test -z "$dlname"; then + # Warn if it was a shared library. + test -n "$library_names" && \ + func_warning "'$file' was not linked with '-export-dynamic'" + continue + fi + + func_dirname "$file" "" "." + dir=$func_dirname_result + + if test -f "$dir/$objdir/$dlname"; then + func_append dir "/$objdir" + else + if test ! -f "$dir/$dlname"; then + func_fatal_error "cannot find '$dlname' in '$dir' or '$dir/$objdir'" + fi + fi + ;; + + *.lo) + # Just add the directory containing the .lo file. + func_dirname "$file" "" "." + dir=$func_dirname_result + ;; + + *) + func_warning "'-dlopen' is ignored for non-libtool libraries and objects" + continue + ;; + esac + + # Get the absolute pathname. + absdir=`cd "$dir" && pwd` + test -n "$absdir" && dir=$absdir + + # Now add the directory to shlibpath_var. + if eval "test -z \"\$$shlibpath_var\""; then + eval "$shlibpath_var=\"\$dir\"" + else + eval "$shlibpath_var=\"\$dir:\$$shlibpath_var\"" + fi + done + + # This variable tells wrapper scripts just to set shlibpath_var + # rather than running their programs. + libtool_execute_magic=$magic + + # Check if any of the arguments is a wrapper script. + args= + for file + do + case $file in + -* | *.la | *.lo ) ;; + *) + # Do a test to see if this is really a libtool program. + if func_ltwrapper_script_p "$file"; then + func_source "$file" + # Transform arg to wrapped name. + file=$progdir/$program + elif func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + func_source "$func_ltwrapper_scriptname_result" + # Transform arg to wrapped name. + file=$progdir/$program + fi + ;; + esac + # Quote arguments (to preserve shell metacharacters). + func_append_quoted args "$file" + done + + if $opt_dry_run; then + # Display what would be done. + if test -n "$shlibpath_var"; then + eval "\$ECHO \"\$shlibpath_var=\$$shlibpath_var\"" + echo "export $shlibpath_var" + fi + $ECHO "$cmd$args" + exit $EXIT_SUCCESS + else + if test -n "$shlibpath_var"; then + # Export the shlibpath_var. + eval "export $shlibpath_var" + fi + + # Restore saved environment variables + for lt_var in LANG LANGUAGE LC_ALL LC_CTYPE LC_COLLATE LC_MESSAGES + do + eval "if test \"\${save_$lt_var+set}\" = set; then + $lt_var=\$save_$lt_var; export $lt_var + else + $lt_unset $lt_var + fi" + done + + # Now prepare to actually exec the command. + exec_cmd=\$cmd$args + fi +} + +test execute = "$opt_mode" && func_mode_execute ${1+"$@"} + + +# func_mode_finish arg... +func_mode_finish () +{ + $debug_cmd + + libs= + libdirs= + admincmds= + + for opt in "$nonopt" ${1+"$@"} + do + if test -d "$opt"; then + func_append libdirs " $opt" + + elif test -f "$opt"; then + if func_lalib_unsafe_p "$opt"; then + func_append libs " $opt" + else + func_warning "'$opt' is not a valid libtool archive" + fi + + else + func_fatal_error "invalid argument '$opt'" + fi + done + + if test -n "$libs"; then + if test -n "$lt_sysroot"; then + sysroot_regex=`$ECHO "$lt_sysroot" | $SED "$sed_make_literal_regex"` + sysroot_cmd="s/\([ ']\)$sysroot_regex/\1/g;" + else + sysroot_cmd= + fi + + # Remove sysroot references + if $opt_dry_run; then + for lib in $libs; do + echo "removing references to $lt_sysroot and '=' prefixes from $lib" + done + else + tmpdir=`func_mktempdir` + for lib in $libs; do + $SED -e "$sysroot_cmd s/\([ ']-[LR]\)=/\1/g; s/\([ ']\)=/\1/g" $lib \ + > $tmpdir/tmp-la + mv -f $tmpdir/tmp-la $lib + done + ${RM}r "$tmpdir" + fi + fi + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + for libdir in $libdirs; do + if test -n "$finish_cmds"; then + # Do each command in the finish commands. + func_execute_cmds "$finish_cmds" 'admincmds="$admincmds +'"$cmd"'"' + fi + if test -n "$finish_eval"; then + # Do the single finish_eval. + eval cmds=\"$finish_eval\" + $opt_dry_run || eval "$cmds" || func_append admincmds " + $cmds" + fi + done + fi + + # Exit here if they wanted silent mode. + $opt_quiet && exit $EXIT_SUCCESS + + if test -n "$finish_cmds$finish_eval" && test -n "$libdirs"; then + echo "----------------------------------------------------------------------" + echo "Libraries have been installed in:" + for libdir in $libdirs; do + $ECHO " $libdir" + done + echo + echo "If you ever happen to want to link against installed libraries" + echo "in a given directory, LIBDIR, you must either use libtool, and" + echo "specify the full pathname of the library, or use the '-LLIBDIR'" + echo "flag during linking and do at least one of the following:" + if test -n "$shlibpath_var"; then + echo " - add LIBDIR to the '$shlibpath_var' environment variable" + echo " during execution" + fi + if test -n "$runpath_var"; then + echo " - add LIBDIR to the '$runpath_var' environment variable" + echo " during linking" + fi + if test -n "$hardcode_libdir_flag_spec"; then + libdir=LIBDIR + eval flag=\"$hardcode_libdir_flag_spec\" + + $ECHO " - use the '$flag' linker flag" + fi + if test -n "$admincmds"; then + $ECHO " - have your system administrator run these commands:$admincmds" + fi + if test -f /etc/ld.so.conf; then + echo " - have your system administrator add LIBDIR to '/etc/ld.so.conf'" + fi + echo + + echo "See any operating system documentation about shared libraries for" + case $host in + solaris2.[6789]|solaris2.1[0-9]) + echo "more information, such as the ld(1), crle(1) and ld.so(8) manual" + echo "pages." + ;; + *) + echo "more information, such as the ld(1) and ld.so(8) manual pages." + ;; + esac + echo "----------------------------------------------------------------------" + fi + exit $EXIT_SUCCESS +} + +test finish = "$opt_mode" && func_mode_finish ${1+"$@"} + + +# func_mode_install arg... +func_mode_install () +{ + $debug_cmd + + # There may be an optional sh(1) argument at the beginning of + # install_prog (especially on Windows NT). + if test "$SHELL" = "$nonopt" || test /bin/sh = "$nonopt" || + # Allow the use of GNU shtool's install command. + case $nonopt in *shtool*) :;; *) false;; esac + then + # Aesthetically quote it. + func_quote_for_eval "$nonopt" + install_prog="$func_quote_for_eval_result " + arg=$1 + shift + else + install_prog= + arg=$nonopt + fi + + # The real first argument should be the name of the installation program. + # Aesthetically quote it. + func_quote_for_eval "$arg" + func_append install_prog "$func_quote_for_eval_result" + install_shared_prog=$install_prog + case " $install_prog " in + *[\\\ /]cp\ *) install_cp=: ;; + *) install_cp=false ;; + esac + + # We need to accept at least all the BSD install flags. + dest= + files= + opts= + prev= + install_type= + isdir=false + stripme= + no_mode=: + for arg + do + arg2= + if test -n "$dest"; then + func_append files " $dest" + dest=$arg + continue + fi + + case $arg in + -d) isdir=: ;; + -f) + if $install_cp; then :; else + prev=$arg + fi + ;; + -g | -m | -o) + prev=$arg + ;; + -s) + stripme=" -s" + continue + ;; + -*) + ;; + *) + # If the previous option needed an argument, then skip it. + if test -n "$prev"; then + if test X-m = "X$prev" && test -n "$install_override_mode"; then + arg2=$install_override_mode + no_mode=false + fi + prev= + else + dest=$arg + continue + fi + ;; + esac + + # Aesthetically quote the argument. + func_quote_for_eval "$arg" + func_append install_prog " $func_quote_for_eval_result" + if test -n "$arg2"; then + func_quote_for_eval "$arg2" + fi + func_append install_shared_prog " $func_quote_for_eval_result" + done + + test -z "$install_prog" && \ + func_fatal_help "you must specify an install program" + + test -n "$prev" && \ + func_fatal_help "the '$prev' option requires an argument" + + if test -n "$install_override_mode" && $no_mode; then + if $install_cp; then :; else + func_quote_for_eval "$install_override_mode" + func_append install_shared_prog " -m $func_quote_for_eval_result" + fi + fi + + if test -z "$files"; then + if test -z "$dest"; then + func_fatal_help "no file or destination specified" + else + func_fatal_help "you must specify a destination" + fi + fi + + # Strip any trailing slash from the destination. + func_stripname '' '/' "$dest" + dest=$func_stripname_result + + # Check to see that the destination is a directory. + test -d "$dest" && isdir=: + if $isdir; then + destdir=$dest + destname= + else + func_dirname_and_basename "$dest" "" "." + destdir=$func_dirname_result + destname=$func_basename_result + + # Not a directory, so check to see that there is only one file specified. + set dummy $files; shift + test "$#" -gt 1 && \ + func_fatal_help "'$dest' is not a directory" + fi + case $destdir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + for file in $files; do + case $file in + *.lo) ;; + *) + func_fatal_help "'$destdir' must be an absolute directory name" + ;; + esac + done + ;; + esac + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + staticlibs= + future_libdirs= + current_libdirs= + for file in $files; do + + # Do each installation. + case $file in + *.$libext) + # Do the static libraries later. + func_append staticlibs " $file" + ;; + + *.la) + func_resolve_sysroot "$file" + file=$func_resolve_sysroot_result + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$file" \ + || func_fatal_help "'$file' is not a valid libtool archive" + + library_names= + old_library= + relink_command= + func_source "$file" + + # Add the libdir to current_libdirs if it is the destination. + if test "X$destdir" = "X$libdir"; then + case "$current_libdirs " in + *" $libdir "*) ;; + *) func_append current_libdirs " $libdir" ;; + esac + else + # Note the libdir as a future libdir. + case "$future_libdirs " in + *" $libdir "*) ;; + *) func_append future_libdirs " $libdir" ;; + esac + fi + + func_dirname "$file" "/" "" + dir=$func_dirname_result + func_append dir "$objdir" + + if test -n "$relink_command"; then + # Determine the prefix the user has applied to our future dir. + inst_prefix_dir=`$ECHO "$destdir" | $SED -e "s%$libdir\$%%"` + + # Don't allow the user to place us outside of our expected + # location b/c this prevents finding dependent libraries that + # are installed to the same prefix. + # At present, this check doesn't affect windows .dll's that + # are installed into $libdir/../bin (currently, that works fine) + # but it's something to keep an eye on. + test "$inst_prefix_dir" = "$destdir" && \ + func_fatal_error "error: cannot install '$file' to a directory not ending in $libdir" + + if test -n "$inst_prefix_dir"; then + # Stick the inst_prefix_dir data into the link command. + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%-inst-prefix-dir $inst_prefix_dir%"` + else + relink_command=`$ECHO "$relink_command" | $SED "s%@inst_prefix_dir@%%"` + fi + + func_warning "relinking '$file'" + func_show_eval "$relink_command" \ + 'func_fatal_error "error: relink '\''$file'\'' with the above command before installing it"' + fi + + # See the names of the shared library. + set dummy $library_names; shift + if test -n "$1"; then + realname=$1 + shift + + srcname=$realname + test -n "$relink_command" && srcname=${realname}T + + # Install the shared library and build the symlinks. + func_show_eval "$install_shared_prog $dir/$srcname $destdir/$realname" \ + 'exit $?' + tstripme=$stripme + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + case $realname in + *.dll.a) + tstripme= + ;; + esac + ;; + os2*) + case $realname in + *_dll.a) + tstripme= + ;; + esac + ;; + esac + if test -n "$tstripme" && test -n "$striplib"; then + func_show_eval "$striplib $destdir/$realname" 'exit $?' + fi + + if test "$#" -gt 0; then + # Delete the old symlinks, and create new ones. + # Try 'ln -sf' first, because the 'ln' binary might depend on + # the symlink we replace! Solaris /bin/ln does not understand -f, + # so we also need to try rm && ln -s. + for linkname + do + test "$linkname" != "$realname" \ + && func_show_eval "(cd $destdir && { $LN_S -f $realname $linkname || { $RM $linkname && $LN_S $realname $linkname; }; })" + done + fi + + # Do each command in the postinstall commands. + lib=$destdir/$realname + func_execute_cmds "$postinstall_cmds" 'exit $?' + fi + + # Install the pseudo-library for information purposes. + func_basename "$file" + name=$func_basename_result + instname=$dir/${name}i + func_show_eval "$install_prog $instname $destdir/$name" 'exit $?' + + # Maybe install the static library, too. + test -n "$old_library" && func_append staticlibs " $dir/$old_library" + ;; + + *.lo) + # Install (i.e. copy) a libtool object. + + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # Deduce the name of the destination old-style object file. + case $destfile in + *.lo) + func_lo2o "$destfile" + staticdest=$func_lo2o_result + ;; + *.$objext) + staticdest=$destfile + destfile= + ;; + *) + func_fatal_help "cannot copy a libtool object to '$destfile'" + ;; + esac + + # Install the libtool object if requested. + test -n "$destfile" && \ + func_show_eval "$install_prog $file $destfile" 'exit $?' + + # Install the old object if enabled. + if test yes = "$build_old_libs"; then + # Deduce the name of the old-style object file. + func_lo2o "$file" + staticobj=$func_lo2o_result + func_show_eval "$install_prog \$staticobj \$staticdest" 'exit $?' + fi + exit $EXIT_SUCCESS + ;; + + *) + # Figure out destination file name, if it wasn't already specified. + if test -n "$destname"; then + destfile=$destdir/$destname + else + func_basename "$file" + destfile=$func_basename_result + destfile=$destdir/$destfile + fi + + # If the file is missing, and there is a .exe on the end, strip it + # because it is most likely a libtool script we actually want to + # install + stripped_ext= + case $file in + *.exe) + if test ! -f "$file"; then + func_stripname '' '.exe' "$file" + file=$func_stripname_result + stripped_ext=.exe + fi + ;; + esac + + # Do a test to see if this is really a libtool program. + case $host in + *cygwin* | *mingw*) + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + wrapper=$func_ltwrapper_scriptname_result + else + func_stripname '' '.exe' "$file" + wrapper=$func_stripname_result + fi + ;; + *) + wrapper=$file + ;; + esac + if func_ltwrapper_script_p "$wrapper"; then + notinst_deplibs= + relink_command= + + func_source "$wrapper" + + # Check the variables that should have been set. + test -z "$generated_by_libtool_version" && \ + func_fatal_error "invalid libtool wrapper script '$wrapper'" + + finalize=: + for lib in $notinst_deplibs; do + # Check to see that each library is installed. + libdir= + if test -f "$lib"; then + func_source "$lib" + fi + libfile=$libdir/`$ECHO "$lib" | $SED 's%^.*/%%g'` + if test -n "$libdir" && test ! -f "$libfile"; then + func_warning "'$lib' has not been installed in '$libdir'" + finalize=false + fi + done + + relink_command= + func_source "$wrapper" + + outputname= + if test no = "$fast_install" && test -n "$relink_command"; then + $opt_dry_run || { + if $finalize; then + tmpdir=`func_mktempdir` + func_basename "$file$stripped_ext" + file=$func_basename_result + outputname=$tmpdir/$file + # Replace the output file specification. + relink_command=`$ECHO "$relink_command" | $SED 's%@OUTPUT@%'"$outputname"'%g'` + + $opt_quiet || { + func_quote_for_expand "$relink_command" + eval "func_echo $func_quote_for_expand_result" + } + if eval "$relink_command"; then : + else + func_error "error: relink '$file' with the above command before installing it" + $opt_dry_run || ${RM}r "$tmpdir" + continue + fi + file=$outputname + else + func_warning "cannot relink '$file'" + fi + } + else + # Install the binary that we compiled earlier. + file=`$ECHO "$file$stripped_ext" | $SED "s%\([^/]*\)$%$objdir/\1%"` + fi + fi + + # remove .exe since cygwin /usr/bin/install will append another + # one anyway + case $install_prog,$host in + */usr/bin/install*,*cygwin*) + case $file:$destfile in + *.exe:*.exe) + # this is ok + ;; + *.exe:*) + destfile=$destfile.exe + ;; + *:*.exe) + func_stripname '' '.exe' "$destfile" + destfile=$func_stripname_result + ;; + esac + ;; + esac + func_show_eval "$install_prog\$stripme \$file \$destfile" 'exit $?' + $opt_dry_run || if test -n "$outputname"; then + ${RM}r "$tmpdir" + fi + ;; + esac + done + + for file in $staticlibs; do + func_basename "$file" + name=$func_basename_result + + # Set up the ranlib parameters. + oldlib=$destdir/$name + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + + func_show_eval "$install_prog \$file \$oldlib" 'exit $?' + + if test -n "$stripme" && test -n "$old_striplib"; then + func_show_eval "$old_striplib $tool_oldlib" 'exit $?' + fi + + # Do each command in the postinstall commands. + func_execute_cmds "$old_postinstall_cmds" 'exit $?' + done + + test -n "$future_libdirs" && \ + func_warning "remember to run '$progname --finish$future_libdirs'" + + if test -n "$current_libdirs"; then + # Maybe just do a dry run. + $opt_dry_run && current_libdirs=" -n$current_libdirs" + exec_cmd='$SHELL "$progpath" $preserve_args --finish$current_libdirs' + else + exit $EXIT_SUCCESS + fi +} + +test install = "$opt_mode" && func_mode_install ${1+"$@"} + + +# func_generate_dlsyms outputname originator pic_p +# Extract symbols from dlprefiles and create ${outputname}S.o with +# a dlpreopen symbol table. +func_generate_dlsyms () +{ + $debug_cmd + + my_outputname=$1 + my_originator=$2 + my_pic_p=${3-false} + my_prefix=`$ECHO "$my_originator" | $SED 's%[^a-zA-Z0-9]%_%g'` + my_dlsyms= + + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + if test -n "$NM" && test -n "$global_symbol_pipe"; then + my_dlsyms=${my_outputname}S.c + else + func_error "not configured to extract global symbols from dlpreopened files" + fi + fi + + if test -n "$my_dlsyms"; then + case $my_dlsyms in + "") ;; + *.c) + # Discover the nlist of each of the dlfiles. + nlist=$output_objdir/$my_outputname.nm + + func_show_eval "$RM $nlist ${nlist}S ${nlist}T" + + # Parse the name list into a source file. + func_verbose "creating $output_objdir/$my_dlsyms" + + $opt_dry_run || $ECHO > "$output_objdir/$my_dlsyms" "\ +/* $my_dlsyms - symbol resolution table for '$my_outputname' dlsym emulation. */ +/* Generated by $PROGRAM (GNU $PACKAGE) $VERSION */ + +#ifdef __cplusplus +extern \"C\" { +#endif + +#if defined __GNUC__ && (((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)) +#pragma GCC diagnostic ignored \"-Wstrict-prototypes\" +#endif + +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT_DLSYM_CONST +#else +# define LT_DLSYM_CONST const +#endif + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* External symbol declarations for the compiler. */\ +" + + if test yes = "$dlself"; then + func_verbose "generating symbol list for '$output'" + + $opt_dry_run || echo ': @PROGRAM@ ' > "$nlist" + + # Add our own program objects to the symbol list. + progfiles=`$ECHO "$objs$old_deplibs" | $SP2NL | $SED "$lo2o" | $NL2SP` + for progfile in $progfiles; do + func_to_tool_file "$progfile" func_convert_file_msys_to_w32 + func_verbose "extracting global C symbols from '$func_to_tool_file_result'" + $opt_dry_run || eval "$NM $func_to_tool_file_result | $global_symbol_pipe >> '$nlist'" + done + + if test -n "$exclude_expsyms"; then + $opt_dry_run || { + eval '$EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + if test -n "$export_symbols_regex"; then + $opt_dry_run || { + eval '$EGREP -e "$export_symbols_regex" "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + } + fi + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + export_symbols=$output_objdir/$outputname.exp + $opt_dry_run || { + $RM $export_symbols + eval "$SED -n -e '/^: @PROGRAM@ $/d' -e 's/^.* \(.*\)$/\1/p' "'< "$nlist" > "$export_symbols"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$export_symbols" >> "$output_objdir/$outputname.def"' + ;; + esac + } + else + $opt_dry_run || { + eval "$SED -e 's/\([].[*^$]\)/\\\\\1/g' -e 's/^/ /' -e 's/$/$/'"' < "$export_symbols" > "$output_objdir/$outputname.exp"' + eval '$GREP -f "$output_objdir/$outputname.exp" < "$nlist" > "$nlist"T' + eval '$MV "$nlist"T "$nlist"' + case $host in + *cygwin* | *mingw* | *cegcc* ) + eval "echo EXPORTS "'> "$output_objdir/$outputname.def"' + eval 'cat "$nlist" >> "$output_objdir/$outputname.def"' + ;; + esac + } + fi + fi + + for dlprefile in $dlprefiles; do + func_verbose "extracting global C symbols from '$dlprefile'" + func_basename "$dlprefile" + name=$func_basename_result + case $host in + *cygwin* | *mingw* | *cegcc* ) + # if an import library, we need to obtain dlname + if func_win32_import_lib_p "$dlprefile"; then + func_tr_sh "$dlprefile" + eval "curr_lafile=\$libfile_$func_tr_sh_result" + dlprefile_dlbasename= + if test -n "$curr_lafile" && func_lalib_p "$curr_lafile"; then + # Use subshell, to avoid clobbering current variable values + dlprefile_dlname=`source "$curr_lafile" && echo "$dlname"` + if test -n "$dlprefile_dlname"; then + func_basename "$dlprefile_dlname" + dlprefile_dlbasename=$func_basename_result + else + # no lafile. user explicitly requested -dlpreopen . + $sharedlib_from_linklib_cmd "$dlprefile" + dlprefile_dlbasename=$sharedlib_from_linklib_result + fi + fi + $opt_dry_run || { + if test -n "$dlprefile_dlbasename"; then + eval '$ECHO ": $dlprefile_dlbasename" >> "$nlist"' + else + func_warning "Could not compute DLL name from $name" + eval '$ECHO ": $name " >> "$nlist"' + fi + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe | + $SED -e '/I __imp/d' -e 's/I __nm_/D /;s/_nm__//' >> '$nlist'" + } + else # not an import lib + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + fi + ;; + *) + $opt_dry_run || { + eval '$ECHO ": $name " >> "$nlist"' + func_to_tool_file "$dlprefile" func_convert_file_msys_to_w32 + eval "$NM \"$func_to_tool_file_result\" 2>/dev/null | $global_symbol_pipe >> '$nlist'" + } + ;; + esac + done + + $opt_dry_run || { + # Make sure we have at least an empty file. + test -f "$nlist" || : > "$nlist" + + if test -n "$exclude_expsyms"; then + $EGREP -v " ($exclude_expsyms)$" "$nlist" > "$nlist"T + $MV "$nlist"T "$nlist" + fi + + # Try sorting and uniquifying the output. + if $GREP -v "^: " < "$nlist" | + if sort -k 3 /dev/null 2>&1; then + sort -k 3 + else + sort +2 + fi | + uniq > "$nlist"S; then + : + else + $GREP -v "^: " < "$nlist" > "$nlist"S + fi + + if test -f "$nlist"S; then + eval "$global_symbol_to_cdecl"' < "$nlist"S >> "$output_objdir/$my_dlsyms"' + else + echo '/* NONE */' >> "$output_objdir/$my_dlsyms" + fi + + func_show_eval '$RM "${nlist}I"' + if test -n "$global_symbol_to_import"; then + eval "$global_symbol_to_import"' < "$nlist"S > "$nlist"I' + fi + + echo >> "$output_objdir/$my_dlsyms" "\ + +/* The mapping between symbol names and symbols. */ +typedef struct { + const char *name; + void *address; +} lt_dlsymlist; +extern LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[];\ +" + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ +static void lt_syminit(void) +{ + LT_DLSYM_CONST lt_dlsymlist *symbol = lt_${my_prefix}_LTX_preloaded_symbols; + for (; symbol->name; ++symbol) + {" + $SED 's/.*/ if (STREQ (symbol->name, \"&\")) symbol->address = (void *) \&&;/' < "$nlist"I >> "$output_objdir/$my_dlsyms" + echo >> "$output_objdir/$my_dlsyms" "\ + } +}" + fi + echo >> "$output_objdir/$my_dlsyms" "\ +LT_DLSYM_CONST lt_dlsymlist +lt_${my_prefix}_LTX_preloaded_symbols[] = +{ {\"$my_originator\", (void *) 0}," + + if test -s "$nlist"I; then + echo >> "$output_objdir/$my_dlsyms" "\ + {\"@INIT@\", (void *) <_syminit}," + fi + + case $need_lib_prefix in + no) + eval "$global_symbol_to_c_name_address" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + *) + eval "$global_symbol_to_c_name_address_lib_prefix" < "$nlist" >> "$output_objdir/$my_dlsyms" + ;; + esac + echo >> "$output_objdir/$my_dlsyms" "\ + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt_${my_prefix}_LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif\ +" + } # !$opt_dry_run + + pic_flag_for_symtable= + case "$compile_command " in + *" -static "*) ;; + *) + case $host in + # compiling the symbol table file with pic_flag works around + # a FreeBSD bug that causes programs to crash when -lm is + # linked before any other PIC object. But we must not use + # pic_flag when linking with -static. The problem exists in + # FreeBSD 2.2.6 and is fixed in FreeBSD 3.1. + *-*-freebsd2.*|*-*-freebsd3.0*|*-*-freebsdelf3.0*) + pic_flag_for_symtable=" $pic_flag -DFREEBSD_WORKAROUND" ;; + *-*-hpux*) + pic_flag_for_symtable=" $pic_flag" ;; + *) + $my_pic_p && pic_flag_for_symtable=" $pic_flag" + ;; + esac + ;; + esac + symtab_cflags= + for arg in $LTCFLAGS; do + case $arg in + -pie | -fpie | -fPIE) ;; + *) func_append symtab_cflags " $arg" ;; + esac + done + + # Now compile the dynamic symbol file. + func_show_eval '(cd $output_objdir && $LTCC$symtab_cflags -c$no_builtin_flag$pic_flag_for_symtable "$my_dlsyms")' 'exit $?' + + # Clean up the generated files. + func_show_eval '$RM "$output_objdir/$my_dlsyms" "$nlist" "${nlist}S" "${nlist}T" "${nlist}I"' + + # Transform the symbol file into the correct name. + symfileobj=$output_objdir/${my_outputname}S.$objext + case $host in + *cygwin* | *mingw* | *cegcc* ) + if test -f "$output_objdir/$my_outputname.def"; then + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$output_objdir/$my_outputname.def $symfileobj%"` + else + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + fi + ;; + *) + compile_command=`$ECHO "$compile_command" | $SED "s%@SYMFILE@%$symfileobj%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s%@SYMFILE@%$symfileobj%"` + ;; + esac + ;; + *) + func_fatal_error "unknown suffix for '$my_dlsyms'" + ;; + esac + else + # We keep going just in case the user didn't refer to + # lt_preloaded_symbols. The linker will fail if global_symbol_pipe + # really was required. + + # Nullify the symbol file. + compile_command=`$ECHO "$compile_command" | $SED "s% @SYMFILE@%%"` + finalize_command=`$ECHO "$finalize_command" | $SED "s% @SYMFILE@%%"` + fi +} + +# func_cygming_gnu_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is a GNU/binutils-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_gnu_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_gnu_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $EGREP ' (_head_[A-Za-z0-9_]+_[ad]l*|[A-Za-z0-9_]+_[ad]l*_iname)$'` + test -n "$func_cygming_gnu_implib_tmp" +} + +# func_cygming_ms_implib_p ARG +# This predicate returns with zero status (TRUE) if +# ARG is an MS-style import library. Returns +# with nonzero status (FALSE) otherwise. +func_cygming_ms_implib_p () +{ + $debug_cmd + + func_to_tool_file "$1" func_convert_file_msys_to_w32 + func_cygming_ms_implib_tmp=`$NM "$func_to_tool_file_result" | eval "$global_symbol_pipe" | $GREP '_NULL_IMPORT_DESCRIPTOR'` + test -n "$func_cygming_ms_implib_tmp" +} + +# func_win32_libid arg +# return the library type of file 'arg' +# +# Need a lot of goo to handle *both* DLLs and import libs +# Has to be a shell function in order to 'eat' the argument +# that is supplied when $file_magic_command is called. +# Despite the name, also deal with 64 bit binaries. +func_win32_libid () +{ + $debug_cmd + + win32_libid_type=unknown + win32_fileres=`file -L $1 2>/dev/null` + case $win32_fileres in + *ar\ archive\ import\ library*) # definitely import + win32_libid_type="x86 archive import" + ;; + *ar\ archive*) # could be an import, or static + # Keep the egrep pattern in sync with the one in _LT_CHECK_MAGIC_METHOD. + if eval $OBJDUMP -f $1 | $SED -e '10q' 2>/dev/null | + $EGREP 'file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' >/dev/null; then + case $nm_interface in + "MS dumpbin") + if func_cygming_ms_implib_p "$1" || + func_cygming_gnu_implib_p "$1" + then + win32_nmres=import + else + win32_nmres= + fi + ;; + *) + func_to_tool_file "$1" func_convert_file_msys_to_w32 + win32_nmres=`eval $NM -f posix -A \"$func_to_tool_file_result\" | + $SED -n -e ' + 1,100{ + / I /{ + s|.*|import| + p + q + } + }'` + ;; + esac + case $win32_nmres in + import*) win32_libid_type="x86 archive import";; + *) win32_libid_type="x86 archive static";; + esac + fi + ;; + *DLL*) + win32_libid_type="x86 DLL" + ;; + *executable*) # but shell scripts are "executable" too... + case $win32_fileres in + *MS\ Windows\ PE\ Intel*) + win32_libid_type="x86 DLL" + ;; + esac + ;; + esac + $ECHO "$win32_libid_type" +} + +# func_cygming_dll_for_implib ARG +# +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib () +{ + $debug_cmd + + sharedlib_from_linklib_result=`$DLLTOOL --identify-strict --identify "$1"` +} + +# func_cygming_dll_for_implib_fallback_core SECTION_NAME LIBNAMEs +# +# The is the core of a fallback implementation of a +# platform-specific function to extract the name of the +# DLL associated with the specified import library LIBNAME. +# +# SECTION_NAME is either .idata$6 or .idata$7, depending +# on the platform and compiler that created the implib. +# +# Echos the name of the DLL associated with the +# specified import library. +func_cygming_dll_for_implib_fallback_core () +{ + $debug_cmd + + match_literal=`$ECHO "$1" | $SED "$sed_make_literal_regex"` + $OBJDUMP -s --section "$1" "$2" 2>/dev/null | + $SED '/^Contents of section '"$match_literal"':/{ + # Place marker at beginning of archive member dllname section + s/.*/====MARK====/ + p + d + } + # These lines can sometimes be longer than 43 characters, but + # are always uninteresting + /:[ ]*file format pe[i]\{,1\}-/d + /^In archive [^:]*:/d + # Ensure marker is printed + /^====MARK====/p + # Remove all lines with less than 43 characters + /^.\{43\}/!d + # From remaining lines, remove first 43 characters + s/^.\{43\}//' | + $SED -n ' + # Join marker and all lines until next marker into a single line + /^====MARK====/ b para + H + $ b para + b + :para + x + s/\n//g + # Remove the marker + s/^====MARK====// + # Remove trailing dots and whitespace + s/[\. \t]*$// + # Print + /./p' | + # we now have a list, one entry per line, of the stringified + # contents of the appropriate section of all members of the + # archive that possess that section. Heuristic: eliminate + # all those that have a first or second character that is + # a '.' (that is, objdump's representation of an unprintable + # character.) This should work for all archives with less than + # 0x302f exports -- but will fail for DLLs whose name actually + # begins with a literal '.' or a single character followed by + # a '.'. + # + # Of those that remain, print the first one. + $SED -e '/^\./d;/^.\./d;q' +} + +# func_cygming_dll_for_implib_fallback ARG +# Platform-specific function to extract the +# name of the DLL associated with the specified +# import library ARG. +# +# This fallback implementation is for use when $DLLTOOL +# does not support the --identify-strict option. +# Invoked by eval'ing the libtool variable +# $sharedlib_from_linklib_cmd +# Result is available in the variable +# $sharedlib_from_linklib_result +func_cygming_dll_for_implib_fallback () +{ + $debug_cmd + + if func_cygming_gnu_implib_p "$1"; then + # binutils import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$7' "$1"` + elif func_cygming_ms_implib_p "$1"; then + # ms-generated import library + sharedlib_from_linklib_result=`func_cygming_dll_for_implib_fallback_core '.idata$6' "$1"` + else + # unknown + sharedlib_from_linklib_result= + fi +} + + +# func_extract_an_archive dir oldlib +func_extract_an_archive () +{ + $debug_cmd + + f_ex_an_ar_dir=$1; shift + f_ex_an_ar_oldlib=$1 + if test yes = "$lock_old_archive_extraction"; then + lockfile=$f_ex_an_ar_oldlib.lock + until $opt_dry_run || ln "$progpath" "$lockfile" 2>/dev/null; do + func_echo "Waiting for $lockfile to be removed" + sleep 2 + done + fi + func_show_eval "(cd \$f_ex_an_ar_dir && $AR x \"\$f_ex_an_ar_oldlib\")" \ + 'stat=$?; rm -f "$lockfile"; exit $stat' + if test yes = "$lock_old_archive_extraction"; then + $opt_dry_run || rm -f "$lockfile" + fi + if ($AR t "$f_ex_an_ar_oldlib" | sort | sort -uc >/dev/null 2>&1); then + : + else + func_fatal_error "object name conflicts in archive: $f_ex_an_ar_dir/$f_ex_an_ar_oldlib" + fi +} + + +# func_extract_archives gentop oldlib ... +func_extract_archives () +{ + $debug_cmd + + my_gentop=$1; shift + my_oldlibs=${1+"$@"} + my_oldobjs= + my_xlib= + my_xabs= + my_xdir= + + for my_xlib in $my_oldlibs; do + # Extract the objects. + case $my_xlib in + [\\/]* | [A-Za-z]:[\\/]*) my_xabs=$my_xlib ;; + *) my_xabs=`pwd`"/$my_xlib" ;; + esac + func_basename "$my_xlib" + my_xlib=$func_basename_result + my_xlib_u=$my_xlib + while :; do + case " $extracted_archives " in + *" $my_xlib_u "*) + func_arith $extracted_serial + 1 + extracted_serial=$func_arith_result + my_xlib_u=lt$extracted_serial-$my_xlib ;; + *) break ;; + esac + done + extracted_archives="$extracted_archives $my_xlib_u" + my_xdir=$my_gentop/$my_xlib_u + + func_mkdir_p "$my_xdir" + + case $host in + *-darwin*) + func_verbose "Extracting $my_xabs" + # Do not bother doing anything if just a dry run + $opt_dry_run || { + darwin_orig_dir=`pwd` + cd $my_xdir || exit $? + darwin_archive=$my_xabs + darwin_curdir=`pwd` + func_basename "$darwin_archive" + darwin_base_archive=$func_basename_result + darwin_arches=`$LIPO -info "$darwin_archive" 2>/dev/null | $GREP Architectures 2>/dev/null || true` + if test -n "$darwin_arches"; then + darwin_arches=`$ECHO "$darwin_arches" | $SED -e 's/.*are://'` + darwin_arch= + func_verbose "$darwin_base_archive has multiple architectures $darwin_arches" + for darwin_arch in $darwin_arches; do + func_mkdir_p "unfat-$$/$darwin_base_archive-$darwin_arch" + $LIPO -thin $darwin_arch -output "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" "$darwin_archive" + cd "unfat-$$/$darwin_base_archive-$darwin_arch" + func_extract_an_archive "`pwd`" "$darwin_base_archive" + cd "$darwin_curdir" + $RM "unfat-$$/$darwin_base_archive-$darwin_arch/$darwin_base_archive" + done # $darwin_arches + ## Okay now we've a bunch of thin objects, gotta fatten them up :) + darwin_filelist=`find unfat-$$ -type f -name \*.o -print -o -name \*.lo -print | $SED -e "$sed_basename" | sort -u` + darwin_file= + darwin_files= + for darwin_file in $darwin_filelist; do + darwin_files=`find unfat-$$ -name $darwin_file -print | sort | $NL2SP` + $LIPO -create -output "$darwin_file" $darwin_files + done # $darwin_filelist + $RM -rf unfat-$$ + cd "$darwin_orig_dir" + else + cd $darwin_orig_dir + func_extract_an_archive "$my_xdir" "$my_xabs" + fi # $darwin_arches + } # !$opt_dry_run + ;; + *) + func_extract_an_archive "$my_xdir" "$my_xabs" + ;; + esac + my_oldobjs="$my_oldobjs "`find $my_xdir -name \*.$objext -print -o -name \*.lo -print | sort | $NL2SP` + done + + func_extract_archives_result=$my_oldobjs +} + + +# func_emit_wrapper [arg=no] +# +# Emit a libtool wrapper script on stdout. +# Don't directly open a file because we may want to +# incorporate the script contents within a cygwin/mingw +# wrapper executable. Must ONLY be called from within +# func_mode_link because it depends on a number of variables +# set therein. +# +# ARG is the value that the WRAPPER_SCRIPT_BELONGS_IN_OBJDIR +# variable will take. If 'yes', then the emitted script +# will assume that the directory where it is stored is +# the $objdir directory. This is a cygwin/mingw-specific +# behavior. +func_emit_wrapper () +{ + func_emit_wrapper_arg1=${1-no} + + $ECHO "\ +#! $SHELL + +# $output - temporary wrapper script for $objdir/$outputname +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# The $output program cannot be directly executed until all the libtool +# libraries that it depends on are installed. +# +# This wrapper script should never be moved out of the build directory. +# If it is, it will not operate correctly. + +# Sed substitution that helps us do robust quoting. It backslashifies +# metacharacters that are still active within double-quoted strings. +sed_quote_subst='$sed_quote_subst' + +# 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+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST +else + case \`(set -o) 2>/dev/null\` in *posix*) set -o posix;; esac +fi +BIN_SH=xpg4; export BIN_SH # for Tru64 +DUALCASE=1; export DUALCASE # for MKS sh + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +relink_command=\"$relink_command\" + +# This environment variable determines our operation mode. +if test \"\$libtool_install_magic\" = \"$magic\"; then + # install mode needs the following variables: + generated_by_libtool_version='$macro_version' + notinst_deplibs='$notinst_deplibs' +else + # When we are sourced in execute mode, \$file and \$ECHO are already set. + if test \"\$libtool_execute_magic\" != \"$magic\"; then + file=\"\$0\"" + + qECHO=`$ECHO "$ECHO" | $SED "$sed_quote_subst"` + $ECHO "\ + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$1 +_LTECHO_EOF' +} + ECHO=\"$qECHO\" + fi + +# Very basic option parsing. These options are (a) specific to +# the libtool wrapper, (b) are identical between the wrapper +# /script/ and the wrapper /executable/ that is used only on +# windows platforms, and (c) all begin with the string "--lt-" +# (application programs are unlikely to have options that match +# this pattern). +# +# There are only two supported options: --lt-debug and +# --lt-dump-script. There is, deliberately, no --lt-help. +# +# The first argument to this parsing function should be the +# script's $0 value, followed by "$@". +lt_option_debug= +func_parse_lt_options () +{ + lt_script_arg0=\$0 + shift + for lt_opt + do + case \"\$lt_opt\" in + --lt-debug) lt_option_debug=1 ;; + --lt-dump-script) + lt_dump_D=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%/[^/]*$%%'\` + test \"X\$lt_dump_D\" = \"X\$lt_script_arg0\" && lt_dump_D=. + lt_dump_F=\`\$ECHO \"X\$lt_script_arg0\" | $SED -e 's/^X//' -e 's%^.*/%%'\` + cat \"\$lt_dump_D/\$lt_dump_F\" + exit 0 + ;; + --lt-*) + \$ECHO \"Unrecognized --lt- option: '\$lt_opt'\" 1>&2 + exit 1 + ;; + esac + done + + # Print the debug banner immediately: + if test -n \"\$lt_option_debug\"; then + echo \"$outputname:$output:\$LINENO: libtool wrapper (GNU $PACKAGE) $VERSION\" 1>&2 + fi +} + +# Used when --lt-debug. Prints its arguments to stdout +# (redirection is the responsibility of the caller) +func_lt_dump_args () +{ + lt_dump_args_N=1; + for lt_arg + do + \$ECHO \"$outputname:$output:\$LINENO: newargv[\$lt_dump_args_N]: \$lt_arg\" + lt_dump_args_N=\`expr \$lt_dump_args_N + 1\` + done +} + +# Core function for launching the target application +func_exec_program_core () +{ +" + case $host in + # Backslashes separate directories on plain windows + *-*-mingw | *-*-os2* | *-cegcc*) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir\\\\\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir\\\\\$program\" \${1+\"\$@\"} +" + ;; + + *) + $ECHO "\ + if test -n \"\$lt_option_debug\"; then + \$ECHO \"$outputname:$output:\$LINENO: newargv[0]: \$progdir/\$program\" 1>&2 + func_lt_dump_args \${1+\"\$@\"} 1>&2 + fi + exec \"\$progdir/\$program\" \${1+\"\$@\"} +" + ;; + esac + $ECHO "\ + \$ECHO \"\$0: cannot exec \$program \$*\" 1>&2 + exit 1 +} + +# A function to encapsulate launching the target application +# Strips options in the --lt-* namespace from \$@ and +# launches target application with the remaining arguments. +func_exec_program () +{ + case \" \$* \" in + *\\ --lt-*) + for lt_wr_arg + do + case \$lt_wr_arg in + --lt-*) ;; + *) set x \"\$@\" \"\$lt_wr_arg\"; shift;; + esac + shift + done ;; + esac + func_exec_program_core \${1+\"\$@\"} +} + + # Parse options + func_parse_lt_options \"\$0\" \${1+\"\$@\"} + + # Find the directory that this script lives in. + thisdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*$%%'\` + test \"x\$thisdir\" = \"x\$file\" && thisdir=. + + # Follow symbolic links until we get to the real thisdir. + file=\`ls -ld \"\$file\" | $SED -n 's/.*-> //p'\` + while test -n \"\$file\"; do + destdir=\`\$ECHO \"\$file\" | $SED 's%/[^/]*\$%%'\` + + # If there was a directory component, then change thisdir. + if test \"x\$destdir\" != \"x\$file\"; then + case \"\$destdir\" in + [\\\\/]* | [A-Za-z]:[\\\\/]*) thisdir=\"\$destdir\" ;; + *) thisdir=\"\$thisdir/\$destdir\" ;; + esac + fi + + file=\`\$ECHO \"\$file\" | $SED 's%^.*/%%'\` + file=\`ls -ld \"\$thisdir/\$file\" | $SED -n 's/.*-> //p'\` + done + + # Usually 'no', except on cygwin/mingw when embedded into + # the cwrapper. + WRAPPER_SCRIPT_BELONGS_IN_OBJDIR=$func_emit_wrapper_arg1 + if test \"\$WRAPPER_SCRIPT_BELONGS_IN_OBJDIR\" = \"yes\"; then + # special case for '.' + if test \"\$thisdir\" = \".\"; then + thisdir=\`pwd\` + fi + # remove .libs from thisdir + case \"\$thisdir\" in + *[\\\\/]$objdir ) thisdir=\`\$ECHO \"\$thisdir\" | $SED 's%[\\\\/][^\\\\/]*$%%'\` ;; + $objdir ) thisdir=. ;; + esac + fi + + # Try to get the absolute directory name. + absdir=\`cd \"\$thisdir\" && pwd\` + test -n \"\$absdir\" && thisdir=\"\$absdir\" +" + + if test yes = "$fast_install"; then + $ECHO "\ + program=lt-'$outputname'$exeext + progdir=\"\$thisdir/$objdir\" + + if test ! -f \"\$progdir/\$program\" || + { file=\`ls -1dt \"\$progdir/\$program\" \"\$progdir/../\$program\" 2>/dev/null | $SED 1q\`; \\ + test \"X\$file\" != \"X\$progdir/\$program\"; }; then + + file=\"\$\$-\$program\" + + if test ! -d \"\$progdir\"; then + $MKDIR \"\$progdir\" + else + $RM \"\$progdir/\$file\" + fi" + + $ECHO "\ + + # relink executable if necessary + if test -n \"\$relink_command\"; then + if relink_command_output=\`eval \$relink_command 2>&1\`; then : + else + \$ECHO \"\$relink_command_output\" >&2 + $RM \"\$progdir/\$file\" + exit 1 + fi + fi + + $MV \"\$progdir/\$file\" \"\$progdir/\$program\" 2>/dev/null || + { $RM \"\$progdir/\$program\"; + $MV \"\$progdir/\$file\" \"\$progdir/\$program\"; } + $RM \"\$progdir/\$file\" + fi" + else + $ECHO "\ + program='$outputname' + progdir=\"\$thisdir/$objdir\" +" + fi + + $ECHO "\ + + if test -f \"\$progdir/\$program\"; then" + + # fixup the dll searchpath if we need to. + # + # Fix the DLL searchpath if we need to. Do this before prepending + # to shlibpath, because on Windows, both are PATH and uninstalled + # libraries must come first. + if test -n "$dllsearchpath"; then + $ECHO "\ + # Add the dll search path components to the executable PATH + PATH=$dllsearchpath:\$PATH +" + fi + + # Export our shlibpath_var if we have one. + if test yes = "$shlibpath_overrides_runpath" && test -n "$shlibpath_var" && test -n "$temp_rpath"; then + $ECHO "\ + # Add our own library path to $shlibpath_var + $shlibpath_var=\"$temp_rpath\$$shlibpath_var\" + + # Some systems cannot cope with colon-terminated $shlibpath_var + # The second colon is a workaround for a bug in BeOS R4 sed + $shlibpath_var=\`\$ECHO \"\$$shlibpath_var\" | $SED 's/::*\$//'\` + + export $shlibpath_var +" + fi + + $ECHO "\ + if test \"\$libtool_execute_magic\" != \"$magic\"; then + # Run the actual program with our arguments. + func_exec_program \${1+\"\$@\"} + fi + else + # The program doesn't exist. + \$ECHO \"\$0: error: '\$progdir/\$program' does not exist\" 1>&2 + \$ECHO \"This script is just a wrapper for \$program.\" 1>&2 + \$ECHO \"See the $PACKAGE documentation for more information.\" 1>&2 + exit 1 + fi +fi\ +" +} + + +# func_emit_cwrapperexe_src +# emit the source code for a wrapper executable on stdout +# Must ONLY be called from within func_mode_link because +# it depends on a number of variable set therein. +func_emit_cwrapperexe_src () +{ + cat < +#include +#ifdef _MSC_VER +# include +# include +# include +#else +# include +# include +# ifdef __CYGWIN__ +# include +# endif +#endif +#include +#include +#include +#include +#include +#include +#include +#include + +#define STREQ(s1, s2) (strcmp ((s1), (s2)) == 0) + +/* declarations of non-ANSI functions */ +#if defined __MINGW32__ +# ifdef __STRICT_ANSI__ +int _putenv (const char *); +# endif +#elif defined __CYGWIN__ +# ifdef __STRICT_ANSI__ +char *realpath (const char *, char *); +int putenv (char *); +int setenv (const char *, const char *, int); +# endif +/* #elif defined other_platform || defined ... */ +#endif + +/* portability defines, excluding path handling macros */ +#if defined _MSC_VER +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +# define S_IXUSR _S_IEXEC +#elif defined __MINGW32__ +# define setmode _setmode +# define stat _stat +# define chmod _chmod +# define getcwd _getcwd +# define putenv _putenv +#elif defined __CYGWIN__ +# define HAVE_SETENV +# define FOPEN_WB "wb" +/* #elif defined other platforms ... */ +#endif + +#if defined PATH_MAX +# define LT_PATHMAX PATH_MAX +#elif defined MAXPATHLEN +# define LT_PATHMAX MAXPATHLEN +#else +# define LT_PATHMAX 1024 +#endif + +#ifndef S_IXOTH +# define S_IXOTH 0 +#endif +#ifndef S_IXGRP +# define S_IXGRP 0 +#endif + +/* path handling portability macros */ +#ifndef DIR_SEPARATOR +# define DIR_SEPARATOR '/' +# define PATH_SEPARATOR ':' +#endif + +#if defined _WIN32 || defined __MSDOS__ || defined __DJGPP__ || \ + defined __OS2__ +# define HAVE_DOS_BASED_FILE_SYSTEM +# define FOPEN_WB "wb" +# ifndef DIR_SEPARATOR_2 +# define DIR_SEPARATOR_2 '\\' +# endif +# ifndef PATH_SEPARATOR_2 +# define PATH_SEPARATOR_2 ';' +# endif +#endif + +#ifndef DIR_SEPARATOR_2 +# define IS_DIR_SEPARATOR(ch) ((ch) == DIR_SEPARATOR) +#else /* DIR_SEPARATOR_2 */ +# define IS_DIR_SEPARATOR(ch) \ + (((ch) == DIR_SEPARATOR) || ((ch) == DIR_SEPARATOR_2)) +#endif /* DIR_SEPARATOR_2 */ + +#ifndef PATH_SEPARATOR_2 +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR) +#else /* PATH_SEPARATOR_2 */ +# define IS_PATH_SEPARATOR(ch) ((ch) == PATH_SEPARATOR_2) +#endif /* PATH_SEPARATOR_2 */ + +#ifndef FOPEN_WB +# define FOPEN_WB "w" +#endif +#ifndef _O_BINARY +# define _O_BINARY 0 +#endif + +#define XMALLOC(type, num) ((type *) xmalloc ((num) * sizeof(type))) +#define XFREE(stale) do { \ + if (stale) { free (stale); stale = 0; } \ +} while (0) + +#if defined LT_DEBUGWRAPPER +static int lt_debug = 1; +#else +static int lt_debug = 0; +#endif + +const char *program_name = "libtool-wrapper"; /* in case xstrdup fails */ + +void *xmalloc (size_t num); +char *xstrdup (const char *string); +const char *base_name (const char *name); +char *find_executable (const char *wrapper); +char *chase_symlinks (const char *pathspec); +int make_executable (const char *path); +int check_executable (const char *path); +char *strendzap (char *str, const char *pat); +void lt_debugprintf (const char *file, int line, const char *fmt, ...); +void lt_fatal (const char *file, int line, const char *message, ...); +static const char *nonnull (const char *s); +static const char *nonempty (const char *s); +void lt_setenv (const char *name, const char *value); +char *lt_extend_str (const char *orig_value, const char *add, int to_end); +void lt_update_exe_path (const char *name, const char *value); +void lt_update_lib_path (const char *name, const char *value); +char **prepare_spawn (char **argv); +void lt_dump_script (FILE *f); +EOF + + cat <= 0) + && (st.st_mode & (S_IXUSR | S_IXGRP | S_IXOTH))) + return 1; + else + return 0; +} + +int +make_executable (const char *path) +{ + int rval = 0; + struct stat st; + + lt_debugprintf (__FILE__, __LINE__, "(make_executable): %s\n", + nonempty (path)); + if ((!path) || (!*path)) + return 0; + + if (stat (path, &st) >= 0) + { + rval = chmod (path, st.st_mode | S_IXOTH | S_IXGRP | S_IXUSR); + } + return rval; +} + +/* Searches for the full path of the wrapper. Returns + newly allocated full path name if found, NULL otherwise + Does not chase symlinks, even on platforms that support them. +*/ +char * +find_executable (const char *wrapper) +{ + int has_slash = 0; + const char *p; + const char *p_next; + /* static buffer for getcwd */ + char tmp[LT_PATHMAX + 1]; + size_t tmp_len; + char *concat_name; + + lt_debugprintf (__FILE__, __LINE__, "(find_executable): %s\n", + nonempty (wrapper)); + + if ((wrapper == NULL) || (*wrapper == '\0')) + return NULL; + + /* Absolute path? */ +#if defined HAVE_DOS_BASED_FILE_SYSTEM + if (isalpha ((unsigned char) wrapper[0]) && wrapper[1] == ':') + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + else + { +#endif + if (IS_DIR_SEPARATOR (wrapper[0])) + { + concat_name = xstrdup (wrapper); + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } +#if defined HAVE_DOS_BASED_FILE_SYSTEM + } +#endif + + for (p = wrapper; *p; p++) + if (*p == '/') + { + has_slash = 1; + break; + } + if (!has_slash) + { + /* no slashes; search PATH */ + const char *path = getenv ("PATH"); + if (path != NULL) + { + for (p = path; *p; p = p_next) + { + const char *q; + size_t p_len; + for (q = p; *q; q++) + if (IS_PATH_SEPARATOR (*q)) + break; + p_len = (size_t) (q - p); + p_next = (*q == '\0' ? q : q + 1); + if (p_len == 0) + { + /* empty path: current directory */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = + XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + } + else + { + concat_name = + XMALLOC (char, p_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, p, p_len); + concat_name[p_len] = '/'; + strcpy (concat_name + p_len + 1, wrapper); + } + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + } + } + /* not found in PATH; assume curdir */ + } + /* Relative path | not found in path: prepend cwd */ + if (getcwd (tmp, LT_PATHMAX) == NULL) + lt_fatal (__FILE__, __LINE__, "getcwd failed: %s", + nonnull (strerror (errno))); + tmp_len = strlen (tmp); + concat_name = XMALLOC (char, tmp_len + 1 + strlen (wrapper) + 1); + memcpy (concat_name, tmp, tmp_len); + concat_name[tmp_len] = '/'; + strcpy (concat_name + tmp_len + 1, wrapper); + + if (check_executable (concat_name)) + return concat_name; + XFREE (concat_name); + return NULL; +} + +char * +chase_symlinks (const char *pathspec) +{ +#ifndef S_ISLNK + return xstrdup (pathspec); +#else + char buf[LT_PATHMAX]; + struct stat s; + char *tmp_pathspec = xstrdup (pathspec); + char *p; + int has_symlinks = 0; + while (strlen (tmp_pathspec) && !has_symlinks) + { + lt_debugprintf (__FILE__, __LINE__, + "checking path component for symlinks: %s\n", + tmp_pathspec); + if (lstat (tmp_pathspec, &s) == 0) + { + if (S_ISLNK (s.st_mode) != 0) + { + has_symlinks = 1; + break; + } + + /* search backwards for last DIR_SEPARATOR */ + p = tmp_pathspec + strlen (tmp_pathspec) - 1; + while ((p > tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + p--; + if ((p == tmp_pathspec) && (!IS_DIR_SEPARATOR (*p))) + { + /* no more DIR_SEPARATORS left */ + break; + } + *p = '\0'; + } + else + { + lt_fatal (__FILE__, __LINE__, + "error accessing file \"%s\": %s", + tmp_pathspec, nonnull (strerror (errno))); + } + } + XFREE (tmp_pathspec); + + if (!has_symlinks) + { + return xstrdup (pathspec); + } + + tmp_pathspec = realpath (pathspec, buf); + if (tmp_pathspec == 0) + { + lt_fatal (__FILE__, __LINE__, + "could not follow symlinks for %s", pathspec); + } + return xstrdup (tmp_pathspec); +#endif +} + +char * +strendzap (char *str, const char *pat) +{ + size_t len, patlen; + + assert (str != NULL); + assert (pat != NULL); + + len = strlen (str); + patlen = strlen (pat); + + if (patlen <= len) + { + str += len - patlen; + if (STREQ (str, pat)) + *str = '\0'; + } + return str; +} + +void +lt_debugprintf (const char *file, int line, const char *fmt, ...) +{ + va_list args; + if (lt_debug) + { + (void) fprintf (stderr, "%s:%s:%d: ", program_name, file, line); + va_start (args, fmt); + (void) vfprintf (stderr, fmt, args); + va_end (args); + } +} + +static void +lt_error_core (int exit_status, const char *file, + int line, const char *mode, + const char *message, va_list ap) +{ + fprintf (stderr, "%s:%s:%d: %s: ", program_name, file, line, mode); + vfprintf (stderr, message, ap); + fprintf (stderr, ".\n"); + + if (exit_status >= 0) + exit (exit_status); +} + +void +lt_fatal (const char *file, int line, const char *message, ...) +{ + va_list ap; + va_start (ap, message); + lt_error_core (EXIT_FAILURE, file, line, "FATAL", message, ap); + va_end (ap); +} + +static const char * +nonnull (const char *s) +{ + return s ? s : "(null)"; +} + +static const char * +nonempty (const char *s) +{ + return (s && !*s) ? "(empty)" : nonnull (s); +} + +void +lt_setenv (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_setenv) setting '%s' to '%s'\n", + nonnull (name), nonnull (value)); + { +#ifdef HAVE_SETENV + /* always make a copy, for consistency with !HAVE_SETENV */ + char *str = xstrdup (value); + setenv (name, str, 1); +#else + size_t len = strlen (name) + 1 + strlen (value) + 1; + char *str = XMALLOC (char, len); + sprintf (str, "%s=%s", name, value); + if (putenv (str) != EXIT_SUCCESS) + { + XFREE (str); + } +#endif + } +} + +char * +lt_extend_str (const char *orig_value, const char *add, int to_end) +{ + char *new_value; + if (orig_value && *orig_value) + { + size_t orig_value_len = strlen (orig_value); + size_t add_len = strlen (add); + new_value = XMALLOC (char, add_len + orig_value_len + 1); + if (to_end) + { + strcpy (new_value, orig_value); + strcpy (new_value + orig_value_len, add); + } + else + { + strcpy (new_value, add); + strcpy (new_value + add_len, orig_value); + } + } + else + { + new_value = xstrdup (add); + } + return new_value; +} + +void +lt_update_exe_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_exe_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + /* some systems can't cope with a ':'-terminated path #' */ + size_t len = strlen (new_value); + while ((len > 0) && IS_PATH_SEPARATOR (new_value[len-1])) + { + new_value[--len] = '\0'; + } + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +void +lt_update_lib_path (const char *name, const char *value) +{ + lt_debugprintf (__FILE__, __LINE__, + "(lt_update_lib_path) modifying '%s' by prepending '%s'\n", + nonnull (name), nonnull (value)); + + if (name && *name && value && *value) + { + char *new_value = lt_extend_str (getenv (name), value, 0); + lt_setenv (name, new_value); + XFREE (new_value); + } +} + +EOF + case $host_os in + mingw*) + cat <<"EOF" + +/* Prepares an argument vector before calling spawn(). + Note that spawn() does not by itself call the command interpreter + (getenv ("COMSPEC") != NULL ? getenv ("COMSPEC") : + ({ OSVERSIONINFO v; v.dwOSVersionInfoSize = sizeof(OSVERSIONINFO); + GetVersionEx(&v); + v.dwPlatformId == VER_PLATFORM_WIN32_NT; + }) ? "cmd.exe" : "command.com"). + Instead it simply concatenates the arguments, separated by ' ', and calls + CreateProcess(). We must quote the arguments since Win32 CreateProcess() + interprets characters like ' ', '\t', '\\', '"' (but not '<' and '>') in a + special way: + - Space and tab are interpreted as delimiters. They are not treated as + delimiters if they are surrounded by double quotes: "...". + - Unescaped double quotes are removed from the input. Their only effect is + that within double quotes, space and tab are treated like normal + characters. + - Backslashes not followed by double quotes are not special. + - But 2*n+1 backslashes followed by a double quote become + n backslashes followed by a double quote (n >= 0): + \" -> " + \\\" -> \" + \\\\\" -> \\" + */ +#define SHELL_SPECIAL_CHARS "\"\\ \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +#define SHELL_SPACE_CHARS " \001\002\003\004\005\006\007\010\011\012\013\014\015\016\017\020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037" +char ** +prepare_spawn (char **argv) +{ + size_t argc; + char **new_argv; + size_t i; + + /* Count number of arguments. */ + for (argc = 0; argv[argc] != NULL; argc++) + ; + + /* Allocate new argument vector. */ + new_argv = XMALLOC (char *, argc + 1); + + /* Put quoted arguments into the new argument vector. */ + for (i = 0; i < argc; i++) + { + const char *string = argv[i]; + + if (string[0] == '\0') + new_argv[i] = xstrdup ("\"\""); + else if (strpbrk (string, SHELL_SPECIAL_CHARS) != NULL) + { + int quote_around = (strpbrk (string, SHELL_SPACE_CHARS) != NULL); + size_t length; + unsigned int backslashes; + const char *s; + char *quoted_string; + char *p; + + length = 0; + backslashes = 0; + if (quote_around) + length++; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + length += backslashes + 1; + length++; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + length += backslashes + 1; + + quoted_string = XMALLOC (char, length + 1); + + p = quoted_string; + backslashes = 0; + if (quote_around) + *p++ = '"'; + for (s = string; *s != '\0'; s++) + { + char c = *s; + if (c == '"') + { + unsigned int j; + for (j = backslashes + 1; j > 0; j--) + *p++ = '\\'; + } + *p++ = c; + if (c == '\\') + backslashes++; + else + backslashes = 0; + } + if (quote_around) + { + unsigned int j; + for (j = backslashes; j > 0; j--) + *p++ = '\\'; + *p++ = '"'; + } + *p = '\0'; + + new_argv[i] = quoted_string; + } + else + new_argv[i] = (char *) string; + } + new_argv[argc] = NULL; + + return new_argv; +} +EOF + ;; + esac + + cat <<"EOF" +void lt_dump_script (FILE* f) +{ +EOF + func_emit_wrapper yes | + $SED -n -e ' +s/^\(.\{79\}\)\(..*\)/\1\ +\2/ +h +s/\([\\"]\)/\\\1/g +s/$/\\n/ +s/\([^\n]*\).*/ fputs ("\1", f);/p +g +D' + cat <<"EOF" +} +EOF +} +# end: func_emit_cwrapperexe_src + +# func_win32_import_lib_p ARG +# True if ARG is an import lib, as indicated by $file_magic_cmd +func_win32_import_lib_p () +{ + $debug_cmd + + case `eval $file_magic_cmd \"\$1\" 2>/dev/null | $SED -e 10q` in + *import*) : ;; + *) false ;; + esac +} + +# func_suncc_cstd_abi +# !!ONLY CALL THIS FOR SUN CC AFTER $compile_command IS FULLY EXPANDED!! +# Several compiler flags select an ABI that is incompatible with the +# Cstd library. Avoid specifying it if any are in CXXFLAGS. +func_suncc_cstd_abi () +{ + $debug_cmd + + case " $compile_command " in + *" -compat=g "*|*\ -std=c++[0-9][0-9]\ *|*" -library=stdcxx4 "*|*" -library=stlport4 "*) + suncc_use_cstd_abi=no + ;; + *) + suncc_use_cstd_abi=yes + ;; + esac +} + +# func_mode_link arg... +func_mode_link () +{ + $debug_cmd + + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + # It is impossible to link a dll without this setting, and + # we shouldn't force the makefile maintainer to figure out + # what system we are compiling for in order to pass an extra + # flag for every libtool invocation. + # allow_undefined=no + + # FIXME: Unfortunately, there are problems with the above when trying + # to make a dll that has undefined symbols, in which case not + # even a static library is built. For now, we need to specify + # -no-undefined on the libtool link line when we can be certain + # that all symbols are satisfied, otherwise we get a static library. + allow_undefined=yes + ;; + *) + allow_undefined=yes + ;; + esac + libtool_args=$nonopt + base_compile="$nonopt $@" + compile_command=$nonopt + finalize_command=$nonopt + + compile_rpath= + finalize_rpath= + compile_shlibpath= + finalize_shlibpath= + convenience= + old_convenience= + deplibs= + old_deplibs= + compiler_flags= + linker_flags= + dllsearchpath= + lib_search_path=`pwd` + inst_prefix_dir= + new_inherited_linker_flags= + + avoid_version=no + bindir= + dlfiles= + dlprefiles= + dlself=no + export_dynamic=no + export_symbols= + export_symbols_regex= + generated= + libobjs= + ltlibs= + module=no + no_install=no + objs= + os2dllname= + non_pic_objects= + precious_files_regex= + prefer_static_libs=no + preload=false + prev= + prevarg= + release= + rpath= + xrpath= + perm_rpath= + temp_rpath= + thread_safe=no + vinfo= + vinfo_number=no + weak_libs= + single_module=$wl-single_module + func_infer_tag $base_compile + + # We need to know -static, to get the right output filenames. + for arg + do + case $arg in + -shared) + test yes != "$build_libtool_libs" \ + && func_fatal_configuration "cannot build a shared library" + build_old_libs=no + break + ;; + -all-static | -static | -static-libtool-libs) + case $arg in + -all-static) + if test yes = "$build_libtool_libs" && test -z "$link_static_flag"; then + func_warning "complete static linking is impossible in this configuration" + fi + if test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + -static) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=built + ;; + -static-libtool-libs) + if test -z "$pic_flag" && test -n "$link_static_flag"; then + dlopen_self=$dlopen_self_static + fi + prefer_static_libs=yes + ;; + esac + build_libtool_libs=no + build_old_libs=yes + break + ;; + esac + done + + # See if our shared archives depend on static archives. + test -n "$old_archive_from_new_cmds" && build_old_libs=yes + + # Go through the arguments, transforming them on the way. + while test "$#" -gt 0; do + arg=$1 + shift + func_quote_for_eval "$arg" + qarg=$func_quote_for_eval_unquoted_result + func_append libtool_args " $func_quote_for_eval_result" + + # If the previous option needs an argument, assign it. + if test -n "$prev"; then + case $prev in + output) + func_append compile_command " @OUTPUT@" + func_append finalize_command " @OUTPUT@" + ;; + esac + + case $prev in + bindir) + bindir=$arg + prev= + continue + ;; + dlfiles|dlprefiles) + $preload || { + # Add the symbol object into the linking commands. + func_append compile_command " @SYMFILE@" + func_append finalize_command " @SYMFILE@" + preload=: + } + case $arg in + *.la | *.lo) ;; # We handle these cases below. + force) + if test no = "$dlself"; then + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + self) + if test dlprefiles = "$prev"; then + dlself=yes + elif test dlfiles = "$prev" && test yes != "$dlopen_self"; then + dlself=yes + else + dlself=needless + export_dynamic=yes + fi + prev= + continue + ;; + *) + if test dlfiles = "$prev"; then + func_append dlfiles " $arg" + else + func_append dlprefiles " $arg" + fi + prev= + continue + ;; + esac + ;; + expsyms) + export_symbols=$arg + test -f "$arg" \ + || func_fatal_error "symbol file '$arg' does not exist" + prev= + continue + ;; + expsyms_regex) + export_symbols_regex=$arg + prev= + continue + ;; + framework) + case $host in + *-*-darwin*) + case "$deplibs " in + *" $qarg.ltframework "*) ;; + *) func_append deplibs " $qarg.ltframework" # this is fixed later + ;; + esac + ;; + esac + prev= + continue + ;; + inst_prefix) + inst_prefix_dir=$arg + prev= + continue + ;; + mllvm) + # Clang does not use LLVM to link, so we can simply discard any + # '-mllvm $arg' options when doing the link step. + prev= + continue + ;; + objectlist) + if test -f "$arg"; then + save_arg=$arg + moreargs= + for fil in `cat "$save_arg"` + do +# func_append moreargs " $fil" + arg=$fil + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + if test none != "$pic_object"; then + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + fi + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + done + else + func_fatal_error "link input file '$arg' does not exist" + fi + arg=$save_arg + prev= + continue + ;; + os2dllname) + os2dllname=$arg + prev= + continue + ;; + precious_regex) + precious_files_regex=$arg + prev= + continue + ;; + release) + release=-$arg + prev= + continue + ;; + rpath | xrpath) + # We need an absolute path. + case $arg in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + if test rpath = "$prev"; then + case "$rpath " in + *" $arg "*) ;; + *) func_append rpath " $arg" ;; + esac + else + case "$xrpath " in + *" $arg "*) ;; + *) func_append xrpath " $arg" ;; + esac + fi + prev= + continue + ;; + shrext) + shrext_cmds=$arg + prev= + continue + ;; + weak) + func_append weak_libs " $arg" + prev= + continue + ;; + xcclinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xcompiler) + func_append compiler_flags " $qarg" + prev= + func_append compile_command " $qarg" + func_append finalize_command " $qarg" + continue + ;; + xlinker) + func_append linker_flags " $qarg" + func_append compiler_flags " $wl$qarg" + prev= + func_append compile_command " $wl$qarg" + func_append finalize_command " $wl$qarg" + continue + ;; + *) + eval "$prev=\"\$arg\"" + prev= + continue + ;; + esac + fi # test -n "$prev" + + prevarg=$arg + + case $arg in + -all-static) + if test -n "$link_static_flag"; then + # See comment for -static flag below, for more details. + func_append compile_command " $link_static_flag" + func_append finalize_command " $link_static_flag" + fi + continue + ;; + + -allow-undefined) + # FIXME: remove this flag sometime in the future. + func_fatal_error "'-allow-undefined' must not be used because it is the default" + ;; + + -avoid-version) + avoid_version=yes + continue + ;; + + -bindir) + prev=bindir + continue + ;; + + -dlopen) + prev=dlfiles + continue + ;; + + -dlpreopen) + prev=dlprefiles + continue + ;; + + -export-dynamic) + export_dynamic=yes + continue + ;; + + -export-symbols | -export-symbols-regex) + if test -n "$export_symbols" || test -n "$export_symbols_regex"; then + func_fatal_error "more than one -exported-symbols argument is not allowed" + fi + if test X-export-symbols = "X$arg"; then + prev=expsyms + else + prev=expsyms_regex + fi + continue + ;; + + -framework) + prev=framework + continue + ;; + + -inst-prefix-dir) + prev=inst_prefix + continue + ;; + + # The native IRIX linker understands -LANG:*, -LIST:* and -LNO:* + # so, if we see these flags be careful not to treat them like -L + -L[A-Z][A-Z]*:*) + case $with_gcc/$host in + no/*-*-irix* | /*-*-irix*) + func_append compile_command " $arg" + func_append finalize_command " $arg" + ;; + esac + continue + ;; + + -L*) + func_stripname "-L" '' "$arg" + if test -z "$func_stripname_result"; then + if test "$#" -gt 0; then + func_fatal_error "require no space between '-L' and '$1'" + else + func_fatal_error "need path for '-L' option" + fi + fi + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + *) + absdir=`cd "$dir" && pwd` + test -z "$absdir" && \ + func_fatal_error "cannot determine absolute directory name of '$dir'" + dir=$absdir + ;; + esac + case "$deplibs " in + *" -L$dir "* | *" $arg "*) + # Will only happen for absolute or sysroot arguments + ;; + *) + # Preserve sysroot, but never include relative directories + case $dir in + [\\/]* | [A-Za-z]:[\\/]* | =*) func_append deplibs " $arg" ;; + *) func_append deplibs " -L$dir" ;; + esac + func_append lib_search_path " $dir" + ;; + esac + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$dir" | $SED 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$dir:"*) ;; + ::) dllsearchpath=$dir;; + *) func_append dllsearchpath ":$dir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + continue + ;; + + -l*) + if test X-lc = "X$arg" || test X-lm = "X$arg"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-beos* | *-cegcc* | *-*-haiku*) + # These systems don't actually have a C or math library (as such) + continue + ;; + *-*-os2*) + # These systems don't actually have a C library (as such) + test X-lc = "X$arg" && continue + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + # Do not include libc due to us having libc/libc_r. + test X-lc = "X$arg" && continue + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C and math libraries are in the System framework + func_append deplibs " System.ltframework" + continue + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + test X-lc = "X$arg" && continue + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + test X-lc = "X$arg" && continue + ;; + esac + elif test X-lc_r = "X$arg"; then + case $host in + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly* | *-*-bitrig*) + # Do not include libc_r directly, use -pthread flag. + continue + ;; + esac + fi + func_append deplibs " $arg" + continue + ;; + + -mllvm) + prev=mllvm + continue + ;; + + -module) + module=yes + continue + ;; + + # Tru64 UNIX uses -model [arg] to determine the layout of C++ + # classes, name mangling, and exception handling. + # Darwin uses the -arch flag to determine output architecture. + -model|-arch|-isysroot|--sysroot) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + prev=xcompiler + continue + ;; + + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + func_append compiler_flags " $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case "$new_inherited_linker_flags " in + *" $arg "*) ;; + * ) func_append new_inherited_linker_flags " $arg" ;; + esac + continue + ;; + + -multi_module) + single_module=$wl-multi_module + continue + ;; + + -no-fast-install) + fast_install=no + continue + ;; + + -no-install) + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-darwin* | *-cegcc*) + # The PATH hackery in wrapper scripts is required on Windows + # and Darwin in order for the loader to find any dlls it needs. + func_warning "'-no-install' is ignored for $host" + func_warning "assuming '-no-fast-install' instead" + fast_install=no + ;; + *) no_install=yes ;; + esac + continue + ;; + + -no-undefined) + allow_undefined=no + continue + ;; + + -objectlist) + prev=objectlist + continue + ;; + + -os2dllname) + prev=os2dllname + continue + ;; + + -o) prev=output ;; + + -precious-files-regex) + prev=precious_regex + continue + ;; + + -release) + prev=release + continue + ;; + + -rpath) + prev=rpath + continue + ;; + + -R) + prev=xrpath + continue + ;; + + -R*) + func_stripname '-R' '' "$arg" + dir=$func_stripname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) ;; + =*) + func_stripname '=' '' "$dir" + dir=$lt_sysroot$func_stripname_result + ;; + *) + func_fatal_error "only absolute run-paths are allowed" + ;; + esac + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + continue + ;; + + -shared) + # The effects of -shared are defined in a previous loop. + continue + ;; + + -shrext) + prev=shrext + continue + ;; + + -static | -static-libtool-libs) + # The effects of -static are defined in a previous loop. + # We used to do the same as -all-static on platforms that + # didn't have a PIC flag, but the assumption that the effects + # would be equivalent was wrong. It would break on at least + # Digital Unix and AIX. + continue + ;; + + -thread-safe) + thread_safe=yes + continue + ;; + + -version-info) + prev=vinfo + continue + ;; + + -version-number) + prev=vinfo + vinfo_number=yes + continue + ;; + + -weak) + prev=weak + continue + ;; + + -Wc,*) + func_stripname '-Wc,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_for_eval "$flag" + func_append arg " $func_quote_for_eval_result" + func_append compiler_flags " $func_quote_for_eval_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Wl,*) + func_stripname '-Wl,' '' "$arg" + args=$func_stripname_result + arg= + save_ifs=$IFS; IFS=, + for flag in $args; do + IFS=$save_ifs + func_quote_for_eval "$flag" + func_append arg " $wl$func_quote_for_eval_result" + func_append compiler_flags " $wl$func_quote_for_eval_result" + func_append linker_flags " $func_quote_for_eval_result" + done + IFS=$save_ifs + func_stripname ' ' '' "$arg" + arg=$func_stripname_result + ;; + + -Xcompiler) + prev=xcompiler + continue + ;; + + -Xlinker) + prev=xlinker + continue + ;; + + -XCClinker) + prev=xcclinker + continue + ;; + + # -msg_* for osf cc + -msg_*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + + # Flags to be passed through unchanged, with rationale: + # -64, -mips[0-9] enable 64-bit mode for the SGI compiler + # -r[0-9][0-9]* specify processor for the SGI compiler + # -xarch=*, -xtarget=* enable 64-bit mode for the Sun compiler + # +DA*, +DD* enable 64-bit mode for the HP compiler + # -q* compiler args for the IBM compiler + # -m*, -t[45]*, -txscale* architecture-specific flags for GCC + # -F/path path to uninstalled frameworks, gcc on darwin + # -p, -pg, --coverage, -fprofile-* profiling flags for GCC + # -fstack-protector* stack protector flags for GCC + # @file GCC response files + # -tp=* Portland pgcc target processor selection + # --sysroot=* for sysroot support + # -O*, -g*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization + # -stdlib=* select c++ std lib with clang + -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ + -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ + -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + func_append compile_command " $arg" + func_append finalize_command " $arg" + func_append compiler_flags " $arg" + continue + ;; + + -Z*) + if test os2 = "`expr $host : '.*\(os2\)'`"; then + # OS/2 uses -Zxxx to specify OS/2-specific options + compiler_flags="$compiler_flags $arg" + func_append compile_command " $arg" + func_append finalize_command " $arg" + case $arg in + -Zlinker | -Zstack) + prev=xcompiler + ;; + esac + continue + else + # Otherwise treat like 'Some other compiler flag' below + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + fi + ;; + + # Some other compiler flag. + -* | +*) + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + + *.$objext) + # A standard object. + func_append objs " $arg" + ;; + + *.lo) + # A libtool-controlled object. + + # Check to see that this really is a libtool object. + if func_lalib_unsafe_p "$arg"; then + pic_object= + non_pic_object= + + # Read the .lo file + func_source "$arg" + + if test -z "$pic_object" || + test -z "$non_pic_object" || + test none = "$pic_object" && + test none = "$non_pic_object"; then + func_fatal_error "cannot find name of object for '$arg'" + fi + + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + test none = "$pic_object" || { + # Prepend the subdirectory the object is found in. + pic_object=$xdir$pic_object + + if test dlfiles = "$prev"; then + if test yes = "$build_libtool_libs" && test yes = "$dlopen_support"; then + func_append dlfiles " $pic_object" + prev= + continue + else + # If libtool objects are unsupported, then we need to preload. + prev=dlprefiles + fi + fi + + # CHECK ME: I think I busted this. -Ossama + if test dlprefiles = "$prev"; then + # Preload the old-style object. + func_append dlprefiles " $pic_object" + prev= + fi + + # A PIC object. + func_append libobjs " $pic_object" + arg=$pic_object + } + + # Non-PIC object. + if test none != "$non_pic_object"; then + # Prepend the subdirectory the object is found in. + non_pic_object=$xdir$non_pic_object + + # A standard non-PIC object + func_append non_pic_objects " $non_pic_object" + if test -z "$pic_object" || test none = "$pic_object"; then + arg=$non_pic_object + fi + else + # If the PIC object exists, use it instead. + # $xdir was prepended to $pic_object above. + non_pic_object=$pic_object + func_append non_pic_objects " $non_pic_object" + fi + else + # Only an error if not doing a dry-run. + if $opt_dry_run; then + # Extract subdirectory from the argument. + func_dirname "$arg" "/" "" + xdir=$func_dirname_result + + func_lo2o "$arg" + pic_object=$xdir$objdir/$func_lo2o_result + non_pic_object=$xdir$func_lo2o_result + func_append libobjs " $pic_object" + func_append non_pic_objects " $non_pic_object" + else + func_fatal_error "'$arg' is not a valid libtool object" + fi + fi + ;; + + *.$libext) + # An archive. + func_append deplibs " $arg" + func_append old_deplibs " $arg" + continue + ;; + + *.la) + # A libtool-controlled library. + + func_resolve_sysroot "$arg" + if test dlfiles = "$prev"; then + # This library was specified with -dlopen. + func_append dlfiles " $func_resolve_sysroot_result" + prev= + elif test dlprefiles = "$prev"; then + # The library was specified with -dlpreopen. + func_append dlprefiles " $func_resolve_sysroot_result" + prev= + else + func_append deplibs " $func_resolve_sysroot_result" + fi + continue + ;; + + # Some other compiler argument. + *) + # Unknown arguments in both finalize_command and compile_command need + # to be aesthetically quoted because they are evaled later. + func_quote_for_eval "$arg" + arg=$func_quote_for_eval_result + ;; + esac # arg + + # Now actually substitute the argument into the commands. + if test -n "$arg"; then + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + done # argument parsing loop + + test -n "$prev" && \ + func_fatal_help "the '$prevarg' option requires an argument" + + if test yes = "$export_dynamic" && test -n "$export_dynamic_flag_spec"; then + eval arg=\"$export_dynamic_flag_spec\" + func_append compile_command " $arg" + func_append finalize_command " $arg" + fi + + oldlibs= + # calculate the name of the file, without its directory + func_basename "$output" + outputname=$func_basename_result + libobjs_save=$libobjs + + if test -n "$shlibpath_var"; then + # get the directories listed in $shlibpath_var + eval shlib_search_path=\`\$ECHO \"\$$shlibpath_var\" \| \$SED \'s/:/ /g\'\` + else + shlib_search_path= + fi + eval sys_lib_search_path=\"$sys_lib_search_path_spec\" + eval sys_lib_dlsearch_path=\"$sys_lib_dlsearch_path_spec\" + + # Definition is injected by LT_CONFIG during libtool generation. + func_munge_path_list sys_lib_dlsearch_path "$LT_SYS_LIBRARY_PATH" + + func_dirname "$output" "/" "" + output_objdir=$func_dirname_result$objdir + func_to_tool_file "$output_objdir/" + tool_output_objdir=$func_to_tool_file_result + # Create the object directory. + func_mkdir_p "$output_objdir" + + # Determine the type of output + case $output in + "") + func_fatal_help "you must specify an output file" + ;; + *.$libext) linkmode=oldlib ;; + *.lo | *.$objext) linkmode=obj ;; + *.la) linkmode=lib ;; + *) linkmode=prog ;; # Anything else should be a program. + esac + + specialdeplibs= + + libs= + # Find all interdependent deplibs by searching for libraries + # that are linked more than once (e.g. -la -lb -la) + for deplib in $deplibs; do + if $opt_preserve_dup_deps; then + case "$libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append libs " $deplib" + done + + if test lib = "$linkmode"; then + libs="$predeps $libs $compiler_lib_search_path $postdeps" + + # Compute libraries that are listed more than once in $predeps + # $postdeps and mark them as special (i.e., whose duplicates are + # not to be eliminated). + pre_post_deps= + if $opt_duplicate_compiler_generated_deps; then + for pre_post_dep in $predeps $postdeps; do + case "$pre_post_deps " in + *" $pre_post_dep "*) func_append specialdeplibs " $pre_post_deps" ;; + esac + func_append pre_post_deps " $pre_post_dep" + done + fi + pre_post_deps= + fi + + deplibs= + newdependency_libs= + newlib_search_path= + need_relink=no # whether we're linking any uninstalled libtool libraries + notinst_deplibs= # not-installed libtool libraries + notinst_path= # paths that contain not-installed libtool libraries + + case $linkmode in + lib) + passes="conv dlpreopen link" + for file in $dlfiles $dlprefiles; do + case $file in + *.la) ;; + *) + func_fatal_help "libraries can '-dlopen' only libtool libraries: $file" + ;; + esac + done + ;; + prog) + compile_deplibs= + finalize_deplibs= + alldeplibs=false + newdlfiles= + newdlprefiles= + passes="conv scan dlopen dlpreopen link" + ;; + *) passes="conv" + ;; + esac + + for pass in $passes; do + # The preopen pass in lib mode reverses $deplibs; put it back here + # so that -L comes before libs that need it for instance... + if test lib,link = "$linkmode,$pass"; then + ## FIXME: Find the place where the list is rebuilt in the wrong + ## order, and fix it there properly + tmp_deplibs= + for deplib in $deplibs; do + tmp_deplibs="$deplib $tmp_deplibs" + done + deplibs=$tmp_deplibs + fi + + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass"; then + libs=$deplibs + deplibs= + fi + if test prog = "$linkmode"; then + case $pass in + dlopen) libs=$dlfiles ;; + dlpreopen) libs=$dlprefiles ;; + link) libs="$deplibs %DEPLIBS% $dependency_libs" ;; + esac + fi + if test lib,dlpreopen = "$linkmode,$pass"; then + # Collect and forward deplibs of preopened libtool libs + for lib in $dlprefiles; do + # Ignore non-libtool-libs + dependency_libs= + func_resolve_sysroot "$lib" + case $lib in + *.la) func_source "$func_resolve_sysroot_result" ;; + esac + + # Collect preopened libtool deplibs, except any this library + # has declared as weak libs + for deplib in $dependency_libs; do + func_basename "$deplib" + deplib_base=$func_basename_result + case " $weak_libs " in + *" $deplib_base "*) ;; + *) func_append deplibs " $deplib" ;; + esac + done + done + libs=$dlprefiles + fi + if test dlopen = "$pass"; then + # Collect dlpreopened libraries + save_deplibs=$deplibs + deplibs= + fi + + for deplib in $libs; do + lib= + found=false + case $deplib in + -mt|-mthreads|-kthread|-Kthread|-pthread|-pthreads|--thread-safe \ + |-threads|-fopenmp|-openmp|-mp|-xopenmp|-omp|-qsmp=*) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append compiler_flags " $deplib" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -l*) + if test lib != "$linkmode" && test prog != "$linkmode"; then + func_warning "'-l' is ignored for archives/objects" + continue + fi + func_stripname '-l' '' "$deplib" + name=$func_stripname_result + if test lib = "$linkmode"; then + searchdirs="$newlib_search_path $lib_search_path $compiler_lib_search_dirs $sys_lib_search_path $shlib_search_path" + else + searchdirs="$newlib_search_path $lib_search_path $sys_lib_search_path $shlib_search_path" + fi + for searchdir in $searchdirs; do + for search_ext in .la $std_shrext .so .a; do + # Search the libtool library + lib=$searchdir/lib$name$search_ext + if test -f "$lib"; then + if test .la = "$search_ext"; then + found=: + else + found=false + fi + break 2 + fi + done + done + if $found; then + # deplib is a libtool library + # If $allow_libtool_libs_with_static_runtimes && $deplib is a stdlib, + # We need to do some special things here, and not later. + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $deplib "*) + if func_lalib_p "$lib"; then + library_names= + old_library= + func_source "$lib" + for l in $old_library $library_names; do + ll=$l + done + if test "X$ll" = "X$old_library"; then # only static version available + found=false + func_dirname "$lib" "" "." + ladir=$func_dirname_result + lib=$ladir/$old_library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + fi + ;; + *) ;; + esac + fi + else + # deplib doesn't seem to be a libtool library + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + test lib = "$linkmode" && newdependency_libs="$deplib $newdependency_libs" + fi + continue + fi + ;; # -l + *.ltframework) + if test prog,link = "$linkmode,$pass"; then + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + deplibs="$deplib $deplibs" + if test lib = "$linkmode"; then + case "$new_inherited_linker_flags " in + *" $deplib "*) ;; + * ) func_append new_inherited_linker_flags " $deplib" ;; + esac + fi + fi + continue + ;; + -L*) + case $linkmode in + lib) + deplibs="$deplib $deplibs" + test conv = "$pass" && continue + newdependency_libs="$deplib $newdependency_libs" + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + prog) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + if test scan = "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + *) + func_warning "'-L' is ignored for archives/objects" + ;; + esac # linkmode + continue + ;; # -L + -R*) + if test link = "$pass"; then + func_stripname '-R' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + dir=$func_resolve_sysroot_result + # Make sure the xrpath contains only unique directories. + case "$xrpath " in + *" $dir "*) ;; + *) func_append xrpath " $dir" ;; + esac + fi + deplibs="$deplib $deplibs" + continue + ;; + *.la) + func_resolve_sysroot "$deplib" + lib=$func_resolve_sysroot_result + ;; + *.$libext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + continue + fi + case $linkmode in + lib) + # Linking convenience modules into shared libraries is allowed, + # but linking other static libraries is non-portable. + case " $dlpreconveniencelibs " in + *" $deplib "*) ;; + *) + valid_a_lib=false + case $deplibs_check_method in + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + if eval "\$ECHO \"$deplib\"" 2>/dev/null | $SED 10q \ + | $EGREP "$match_pattern_regex" > /dev/null; then + valid_a_lib=: + fi + ;; + pass_all) + valid_a_lib=: + ;; + esac + if $valid_a_lib; then + echo + $ECHO "*** Warning: Linking the shared library $output against the" + $ECHO "*** static library $deplib is not portable!" + deplibs="$deplib $deplibs" + else + echo + $ECHO "*** Warning: Trying to link with static lib archive $deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because the file extensions .$libext of this argument makes me believe" + echo "*** that it is just a static archive that I should not use here." + fi + ;; + esac + continue + ;; + prog) + if test link != "$pass"; then + deplibs="$deplib $deplibs" + else + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + fi + continue + ;; + esac # linkmode + ;; # *.$libext + *.lo | *.$objext) + if test conv = "$pass"; then + deplibs="$deplib $deplibs" + elif test prog = "$linkmode"; then + if test dlpreopen = "$pass" || test yes != "$dlopen_support" || test no = "$build_libtool_libs"; then + # If there is no dlopen support or we're linking statically, + # we need to preload. + func_append newdlprefiles " $deplib" + compile_deplibs="$deplib $compile_deplibs" + finalize_deplibs="$deplib $finalize_deplibs" + else + func_append newdlfiles " $deplib" + fi + fi + continue + ;; + %DEPLIBS%) + alldeplibs=: + continue + ;; + esac # case $deplib + + $found || test -f "$lib" \ + || func_fatal_error "cannot find the library '$lib' or unhandled argument '$deplib'" + + # Check to see that this really is a libtool archive. + func_lalib_unsafe_p "$lib" \ + || func_fatal_error "'$lib' is not a valid libtool archive" + + func_dirname "$lib" "" "." + ladir=$func_dirname_result + + dlname= + dlopen= + dlpreopen= + libdir= + library_names= + old_library= + inherited_linker_flags= + # If the library was installed with an old release of libtool, + # it will not redefine variables installed, or shouldnotlink + installed=yes + shouldnotlink=no + avoidtemprpath= + + + # Read the .la file + func_source "$lib" + + # Convert "-framework foo" to "foo.ltframework" + if test -n "$inherited_linker_flags"; then + tmp_inherited_linker_flags=`$ECHO "$inherited_linker_flags" | $SED 's/-framework \([^ $]*\)/\1.ltframework/g'` + for tmp_inherited_linker_flag in $tmp_inherited_linker_flags; do + case " $new_inherited_linker_flags " in + *" $tmp_inherited_linker_flag "*) ;; + *) func_append new_inherited_linker_flags " $tmp_inherited_linker_flag";; + esac + done + fi + dependency_libs=`$ECHO " $dependency_libs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + if test lib,link = "$linkmode,$pass" || + test prog,scan = "$linkmode,$pass" || + { test prog != "$linkmode" && test lib != "$linkmode"; }; then + test -n "$dlopen" && func_append dlfiles " $dlopen" + test -n "$dlpreopen" && func_append dlprefiles " $dlpreopen" + fi + + if test conv = "$pass"; then + # Only check for convenience libraries + deplibs="$lib $deplibs" + if test -z "$libdir"; then + if test -z "$old_library"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + # It is a libtool convenience library, so add in its objects. + func_append convenience " $ladir/$objdir/$old_library" + func_append old_convenience " $ladir/$objdir/$old_library" + elif test prog != "$linkmode" && test lib != "$linkmode"; then + func_fatal_error "'$lib' is not a convenience library" + fi + tmp_libs= + for deplib in $dependency_libs; do + deplibs="$deplib $deplibs" + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done + continue + fi # $pass = conv + + + # Get the name of the library we link against. + linklib= + if test -n "$old_library" && + { test yes = "$prefer_static_libs" || + test built,no = "$prefer_static_libs,$installed"; }; then + linklib=$old_library + else + for l in $old_library $library_names; do + linklib=$l + done + fi + if test -z "$linklib"; then + func_fatal_error "cannot find name of link library for '$lib'" + fi + + # This library was specified with -dlopen. + if test dlopen = "$pass"; then + test -z "$libdir" \ + && func_fatal_error "cannot -dlopen a convenience library: '$lib'" + if test -z "$dlname" || + test yes != "$dlopen_support" || + test no = "$build_libtool_libs" + then + # If there is no dlname, no dlopen support or we're linking + # statically, we need to preload. We also need to preload any + # dependent libraries so libltdl's deplib preloader doesn't + # bomb out in the load deplibs phase. + func_append dlprefiles " $lib $dependency_libs" + else + func_append newdlfiles " $lib" + fi + continue + fi # $pass = dlopen + + # We need an absolute path. + case $ladir in + [\\/]* | [A-Za-z]:[\\/]*) abs_ladir=$ladir ;; + *) + abs_ladir=`cd "$ladir" && pwd` + if test -z "$abs_ladir"; then + func_warning "cannot determine absolute directory name of '$ladir'" + func_warning "passing it literally to the linker, although it might fail" + abs_ladir=$ladir + fi + ;; + esac + func_basename "$lib" + laname=$func_basename_result + + # Find the relevant object directory and library name. + if test yes = "$installed"; then + if test ! -f "$lt_sysroot$libdir/$linklib" && test -f "$abs_ladir/$linklib"; then + func_warning "library '$lib' was moved." + dir=$ladir + absdir=$abs_ladir + libdir=$abs_ladir + else + dir=$lt_sysroot$libdir + absdir=$lt_sysroot$libdir + fi + test yes = "$hardcode_automatic" && avoidtemprpath=yes + else + if test ! -f "$ladir/$objdir/$linklib" && test -f "$abs_ladir/$linklib"; then + dir=$ladir + absdir=$abs_ladir + # Remove this search path later + func_append notinst_path " $abs_ladir" + else + dir=$ladir/$objdir + absdir=$abs_ladir/$objdir + # Remove this search path later + func_append notinst_path " $abs_ladir" + fi + fi # $installed = yes + func_stripname 'lib' '.la' "$laname" + name=$func_stripname_result + + # This library was specified with -dlpreopen. + if test dlpreopen = "$pass"; then + if test -z "$libdir" && test prog = "$linkmode"; then + func_fatal_error "only libraries may -dlpreopen a convenience library: '$lib'" + fi + case $host in + # special handling for platforms with PE-DLLs. + *cygwin* | *mingw* | *cegcc* ) + # Linker will automatically link against shared library if both + # static and shared are present. Therefore, ensure we extract + # symbols from the import library if a shared library is present + # (otherwise, the dlopen module name will be incorrect). We do + # this by putting the import library name into $newdlprefiles. + # We recover the dlopen module name by 'saving' the la file + # name in a special purpose variable, and (later) extracting the + # dlname from the la file. + if test -n "$dlname"; then + func_tr_sh "$dir/$linklib" + eval "libfile_$func_tr_sh_result=\$abs_ladir/\$laname" + func_append newdlprefiles " $dir/$linklib" + else + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + fi + ;; + * ) + # Prefer using a static library (so that no silly _DYNAMIC symbols + # are required to link). + if test -n "$old_library"; then + func_append newdlprefiles " $dir/$old_library" + # Keep a list of preopened convenience libraries to check + # that they are being used correctly in the link pass. + test -z "$libdir" && \ + func_append dlpreconveniencelibs " $dir/$old_library" + # Otherwise, use the dlname, so that lt_dlopen finds it. + elif test -n "$dlname"; then + func_append newdlprefiles " $dir/$dlname" + else + func_append newdlprefiles " $dir/$linklib" + fi + ;; + esac + fi # $pass = dlpreopen + + if test -z "$libdir"; then + # Link the convenience library + if test lib = "$linkmode"; then + deplibs="$dir/$old_library $deplibs" + elif test prog,link = "$linkmode,$pass"; then + compile_deplibs="$dir/$old_library $compile_deplibs" + finalize_deplibs="$dir/$old_library $finalize_deplibs" + else + deplibs="$lib $deplibs" # used for prog,scan pass + fi + continue + fi + + + if test prog = "$linkmode" && test link != "$pass"; then + func_append newlib_search_path " $ladir" + deplibs="$lib $deplibs" + + linkalldeplibs=false + if test no != "$link_all_deplibs" || test -z "$library_names" || + test no = "$build_libtool_libs"; then + linkalldeplibs=: + fi + + tmp_libs= + for deplib in $dependency_libs; do + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result" + func_append newlib_search_path " $func_resolve_sysroot_result" + ;; + esac + # Need to link against all dependency_libs? + if $linkalldeplibs; then + deplibs="$deplib $deplibs" + else + # Need to hardcode shared library paths + # or/and link against static libraries + newdependency_libs="$deplib $newdependency_libs" + fi + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $deplib "*) func_append specialdeplibs " $deplib" ;; + esac + fi + func_append tmp_libs " $deplib" + done # for deplib + continue + fi # $linkmode = prog... + + if test prog,link = "$linkmode,$pass"; then + if test -n "$library_names" && + { { test no = "$prefer_static_libs" || + test built,yes = "$prefer_static_libs,$installed"; } || + test -z "$old_library"; }; then + # We need to hardcode the library path + if test -n "$shlibpath_var" && test -z "$avoidtemprpath"; then + # Make sure the rpath contains only unique directories. + case $temp_rpath: in + *"$absdir:"*) ;; + *) func_append temp_rpath "$absdir:" ;; + esac + fi + + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi # $linkmode,$pass = prog,link... + + if $alldeplibs && + { test pass_all = "$deplibs_check_method" || + { test yes = "$build_libtool_libs" && + test -n "$library_names"; }; }; then + # We only need to search for static libraries + continue + fi + fi + + link_static=no # Whether the deplib will be linked statically + use_static_libs=$prefer_static_libs + if test built = "$use_static_libs" && test yes = "$installed"; then + use_static_libs=no + fi + if test -n "$library_names" && + { test no = "$use_static_libs" || test -z "$old_library"; }; then + case $host in + *cygwin* | *mingw* | *cegcc* | *os2*) + # No point in relinking DLLs because paths are not encoded + func_append notinst_deplibs " $lib" + need_relink=no + ;; + *) + if test no = "$installed"; then + func_append notinst_deplibs " $lib" + need_relink=yes + fi + ;; + esac + # This is a shared library + + # Warn about portability, can't link against -module's on some + # systems (darwin). Don't bleat about dlopened modules though! + dlopenmodule= + for dlpremoduletest in $dlprefiles; do + if test "X$dlpremoduletest" = "X$lib"; then + dlopenmodule=$dlpremoduletest + break + fi + done + if test -z "$dlopenmodule" && test yes = "$shouldnotlink" && test link = "$pass"; then + echo + if test prog = "$linkmode"; then + $ECHO "*** Warning: Linking the executable $output against the loadable module" + else + $ECHO "*** Warning: Linking the shared library $output against the loadable module" + fi + $ECHO "*** $linklib is not portable!" + fi + if test lib = "$linkmode" && + test yes = "$hardcode_into_libs"; then + # Hardcode the library path. + # Skip directories that are in the system default run-time + # search path. + case " $sys_lib_dlsearch_path " in + *" $absdir "*) ;; + *) + case "$compile_rpath " in + *" $absdir "*) ;; + *) func_append compile_rpath " $absdir" ;; + esac + ;; + esac + case " $sys_lib_dlsearch_path " in + *" $libdir "*) ;; + *) + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + ;; + esac + fi + + if test -n "$old_archive_from_expsyms_cmds"; then + # figure out the soname + set dummy $library_names + shift + realname=$1 + shift + libname=`eval "\\$ECHO \"$libname_spec\""` + # use dlname if we got it. it's perfectly good, no? + if test -n "$dlname"; then + soname=$dlname + elif test -n "$soname_spec"; then + # bleh windows + case $host in + *cygwin* | mingw* | *cegcc* | *os2*) + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + esac + eval soname=\"$soname_spec\" + else + soname=$realname + fi + + # Make a new name for the extract_expsyms_cmds to use + soroot=$soname + func_basename "$soroot" + soname=$func_basename_result + func_stripname 'lib' '.dll' "$soname" + newlib=libimp-$func_stripname_result.a + + # If the library has no export list, then create one now + if test -f "$output_objdir/$soname-def"; then : + else + func_verbose "extracting exported symbol list from '$soname'" + func_execute_cmds "$extract_expsyms_cmds" 'exit $?' + fi + + # Create $newlib + if test -f "$output_objdir/$newlib"; then :; else + func_verbose "generating import library for '$soname'" + func_execute_cmds "$old_archive_from_expsyms_cmds" 'exit $?' + fi + # make sure the library variables are pointing to the new library + dir=$output_objdir + linklib=$newlib + fi # test -n "$old_archive_from_expsyms_cmds" + + if test prog = "$linkmode" || test relink != "$opt_mode"; then + add_shlibpath= + add_dir= + add= + lib_linked=yes + case $hardcode_action in + immediate | unsupported) + if test no = "$hardcode_direct"; then + add=$dir/$linklib + case $host in + *-*-sco3.2v5.0.[024]*) add_dir=-L$dir ;; + *-*-sysv4*uw2*) add_dir=-L$dir ;; + *-*-sysv5OpenUNIX* | *-*-sysv5UnixWare7.[01].[10]* | \ + *-*-unixware7*) add_dir=-L$dir ;; + *-*-darwin* ) + # if the lib is a (non-dlopened) module then we cannot + # link against it, someone is ignoring the earlier warnings + if /usr/bin/file -L $add 2> /dev/null | + $GREP ": [^:]* bundle" >/dev/null; then + if test "X$dlopenmodule" != "X$lib"; then + $ECHO "*** Warning: lib $linklib is a module, not a shared library" + if test -z "$old_library"; then + echo + echo "*** And there doesn't seem to be a static archive available" + echo "*** The link will probably fail, sorry" + else + add=$dir/$old_library + fi + elif test -n "$old_library"; then + add=$dir/$old_library + fi + fi + esac + elif test no = "$hardcode_minus_L"; then + case $host in + *-*-sunos*) add_shlibpath=$dir ;; + esac + add_dir=-L$dir + add=-l$name + elif test no = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + relink) + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$dir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$absdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + add_shlibpath=$dir + add=-l$name + else + lib_linked=no + fi + ;; + *) lib_linked=no ;; + esac + + if test yes != "$lib_linked"; then + func_fatal_configuration "unsupported hardcode properties" + fi + + if test -n "$add_shlibpath"; then + case :$compile_shlibpath: in + *":$add_shlibpath:"*) ;; + *) func_append compile_shlibpath "$add_shlibpath:" ;; + esac + fi + if test prog = "$linkmode"; then + test -n "$add_dir" && compile_deplibs="$add_dir $compile_deplibs" + test -n "$add" && compile_deplibs="$add $compile_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + if test yes != "$hardcode_direct" && + test yes != "$hardcode_minus_L" && + test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + fi + fi + fi + + if test prog = "$linkmode" || test relink = "$opt_mode"; then + add_shlibpath= + add_dir= + add= + # Finalize command for both is simple: just hardcode it. + if test yes = "$hardcode_direct" && + test no = "$hardcode_direct_absolute"; then + add=$libdir/$linklib + elif test yes = "$hardcode_minus_L"; then + add_dir=-L$libdir + add=-l$name + elif test yes = "$hardcode_shlibpath_var"; then + case :$finalize_shlibpath: in + *":$libdir:"*) ;; + *) func_append finalize_shlibpath "$libdir:" ;; + esac + add=-l$name + elif test yes = "$hardcode_automatic"; then + if test -n "$inst_prefix_dir" && + test -f "$inst_prefix_dir$libdir/$linklib"; then + add=$inst_prefix_dir$libdir/$linklib + else + add=$libdir/$linklib + fi + else + # We cannot seem to hardcode it, guess we'll fake it. + add_dir=-L$libdir + # Try looking first in the location we're being installed to. + if test -n "$inst_prefix_dir"; then + case $libdir in + [\\/]*) + func_append add_dir " -L$inst_prefix_dir$libdir" + ;; + esac + fi + add=-l$name + fi + + if test prog = "$linkmode"; then + test -n "$add_dir" && finalize_deplibs="$add_dir $finalize_deplibs" + test -n "$add" && finalize_deplibs="$add $finalize_deplibs" + else + test -n "$add_dir" && deplibs="$add_dir $deplibs" + test -n "$add" && deplibs="$add $deplibs" + fi + fi + elif test prog = "$linkmode"; then + # Here we assume that one of hardcode_direct or hardcode_minus_L + # is not unsupported. This is valid on all known static and + # shared platforms. + if test unsupported != "$hardcode_direct"; then + test -n "$old_library" && linklib=$old_library + compile_deplibs="$dir/$linklib $compile_deplibs" + finalize_deplibs="$dir/$linklib $finalize_deplibs" + else + compile_deplibs="-l$name -L$dir $compile_deplibs" + finalize_deplibs="-l$name -L$dir $finalize_deplibs" + fi + elif test yes = "$build_libtool_libs"; then + # Not a shared library + if test pass_all != "$deplibs_check_method"; then + # We're trying link a shared library against a static one + # but the system doesn't support it. + + # Just print a warning and add the library to dependency_libs so + # that the program can be linked against the static library. + echo + $ECHO "*** Warning: This system cannot link to static lib archive $lib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have." + if test yes = "$module"; then + echo "*** But as you try to build a module library, libtool will still create " + echo "*** a static module, that should work as long as the dlopening application" + echo "*** is linked with the -dlopen flag to resolve symbols at runtime." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + else + deplibs="$dir/$old_library $deplibs" + link_static=yes + fi + fi # link shared/static library? + + if test lib = "$linkmode"; then + if test -n "$dependency_libs" && + { test yes != "$hardcode_into_libs" || + test yes = "$build_old_libs" || + test yes = "$link_static"; }; then + # Extract -R from dependency_libs + temp_deplibs= + for libdir in $dependency_libs; do + case $libdir in + -R*) func_stripname '-R' '' "$libdir" + temp_xrpath=$func_stripname_result + case " $xrpath " in + *" $temp_xrpath "*) ;; + *) func_append xrpath " $temp_xrpath";; + esac;; + *) func_append temp_deplibs " $libdir";; + esac + done + dependency_libs=$temp_deplibs + fi + + func_append newlib_search_path " $absdir" + # Link against this library + test no = "$link_static" && newdependency_libs="$abs_ladir/$laname $newdependency_libs" + # ... and its dependency_libs + tmp_libs= + for deplib in $dependency_libs; do + newdependency_libs="$deplib $newdependency_libs" + case $deplib in + -L*) func_stripname '-L' '' "$deplib" + func_resolve_sysroot "$func_stripname_result";; + *) func_resolve_sysroot "$deplib" ;; + esac + if $opt_preserve_dup_deps; then + case "$tmp_libs " in + *" $func_resolve_sysroot_result "*) + func_append specialdeplibs " $func_resolve_sysroot_result" ;; + esac + fi + func_append tmp_libs " $func_resolve_sysroot_result" + done + + if test no != "$link_all_deplibs"; then + # Add the search paths of all dependency libraries + for deplib in $dependency_libs; do + path= + case $deplib in + -L*) path=$deplib ;; + *.la) + func_resolve_sysroot "$deplib" + deplib=$func_resolve_sysroot_result + func_dirname "$deplib" "" "." + dir=$func_dirname_result + # We need an absolute path. + case $dir in + [\\/]* | [A-Za-z]:[\\/]*) absdir=$dir ;; + *) + absdir=`cd "$dir" && pwd` + if test -z "$absdir"; then + func_warning "cannot determine absolute directory name of '$dir'" + absdir=$dir + fi + ;; + esac + if $GREP "^installed=no" $deplib > /dev/null; then + case $host in + *-*-darwin*) + depdepl= + eval deplibrary_names=`$SED -n -e 's/^library_names=\(.*\)$/\1/p' $deplib` + if test -n "$deplibrary_names"; then + for tmp in $deplibrary_names; do + depdepl=$tmp + done + if test -f "$absdir/$objdir/$depdepl"; then + depdepl=$absdir/$objdir/$depdepl + darwin_install_name=`$OTOOL -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + if test -z "$darwin_install_name"; then + darwin_install_name=`$OTOOL64 -L $depdepl | awk '{if (NR == 2) {print $1;exit}}'` + fi + func_append compiler_flags " $wl-dylib_file $wl$darwin_install_name:$depdepl" + func_append linker_flags " -dylib_file $darwin_install_name:$depdepl" + path= + fi + fi + ;; + *) + path=-L$absdir/$objdir + ;; + esac + else + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $deplib` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + test "$absdir" != "$libdir" && \ + func_warning "'$deplib' seems to be moved" + + path=-L$absdir + fi + ;; + esac + case " $deplibs " in + *" $path "*) ;; + *) deplibs="$path $deplibs" ;; + esac + done + fi # link_all_deplibs != no + fi # linkmode = lib + done # for deplib in $libs + if test link = "$pass"; then + if test prog = "$linkmode"; then + compile_deplibs="$new_inherited_linker_flags $compile_deplibs" + finalize_deplibs="$new_inherited_linker_flags $finalize_deplibs" + else + compiler_flags="$compiler_flags "`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + fi + fi + dependency_libs=$newdependency_libs + if test dlpreopen = "$pass"; then + # Link the dlpreopened libraries before other libraries + for deplib in $save_deplibs; do + deplibs="$deplib $deplibs" + done + fi + if test dlopen != "$pass"; then + test conv = "$pass" || { + # Make sure lib_search_path contains only unique directories. + lib_search_path= + for dir in $newlib_search_path; do + case "$lib_search_path " in + *" $dir "*) ;; + *) func_append lib_search_path " $dir" ;; + esac + done + newlib_search_path= + } + + if test prog,link = "$linkmode,$pass"; then + vars="compile_deplibs finalize_deplibs" + else + vars=deplibs + fi + for var in $vars dependency_libs; do + # Add libraries to $var in reverse order + eval tmp_libs=\"\$$var\" + new_libs= + for deplib in $tmp_libs; do + # FIXME: Pedantically, this is the right thing to do, so + # that some nasty dependency loop isn't accidentally + # broken: + #new_libs="$deplib $new_libs" + # Pragmatically, this seems to cause very few problems in + # practice: + case $deplib in + -L*) new_libs="$deplib $new_libs" ;; + -R*) ;; + *) + # And here is the reason: when a library appears more + # than once as an explicit dependence of a library, or + # is implicitly linked in more than once by the + # compiler, it is considered special, and multiple + # occurrences thereof are not removed. Compare this + # with having the same library being listed as a + # dependency of multiple other libraries: in this case, + # we know (pedantically, we assume) the library does not + # need to be listed more than once, so we keep only the + # last copy. This is not always right, but it is rare + # enough that we require users that really mean to play + # such unportable linking tricks to link the library + # using -Wl,-lname, so that libtool does not consider it + # for duplicate removal. + case " $specialdeplibs " in + *" $deplib "*) new_libs="$deplib $new_libs" ;; + *) + case " $new_libs " in + *" $deplib "*) ;; + *) new_libs="$deplib $new_libs" ;; + esac + ;; + esac + ;; + esac + done + tmp_libs= + for deplib in $new_libs; do + case $deplib in + -L*) + case " $tmp_libs " in + *" $deplib "*) ;; + *) func_append tmp_libs " $deplib" ;; + esac + ;; + *) func_append tmp_libs " $deplib" ;; + esac + done + eval $var=\"$tmp_libs\" + done # for var + fi + + # Add Sun CC postdeps if required: + test CXX = "$tagname" && { + case $host_os in + linux*) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C++ 5.9 + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + + solaris*) + func_cc_basename "$CC" + case $func_cc_basename_result in + CC* | sunCC*) + func_suncc_cstd_abi + + if test no != "$suncc_use_cstd_abi"; then + func_append postdeps ' -library=Cstd -library=Crun' + fi + ;; + esac + ;; + esac + } + + # Last step: remove runtime libs from dependency_libs + # (they stay in deplibs) + tmp_libs= + for i in $dependency_libs; do + case " $predeps $postdeps $compiler_lib_search_path " in + *" $i "*) + i= + ;; + esac + if test -n "$i"; then + func_append tmp_libs " $i" + fi + done + dependency_libs=$tmp_libs + done # for pass + if test prog = "$linkmode"; then + dlfiles=$newdlfiles + fi + if test prog = "$linkmode" || test lib = "$linkmode"; then + dlprefiles=$newdlprefiles + fi + + case $linkmode in + oldlib) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for archives" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for archives" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for archives" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for archives" + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for archives" + + test -n "$release" && \ + func_warning "'-release' is ignored for archives" + + test -n "$export_symbols$export_symbols_regex" && \ + func_warning "'-export-symbols' is ignored for archives" + + # Now set the variables for building old libraries. + build_libtool_libs=no + oldlibs=$output + func_append objs "$old_deplibs" + ;; + + lib) + # Make sure we only generate libraries of the form 'libNAME.la'. + case $outputname in + lib*) + func_stripname 'lib' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + ;; + *) + test no = "$module" \ + && func_fatal_help "libtool library '$output' must begin with 'lib'" + + if test no != "$need_lib_prefix"; then + # Add the "lib" prefix for modules if required + func_stripname '' '.la' "$outputname" + name=$func_stripname_result + eval shared_ext=\"$shrext_cmds\" + eval libname=\"$libname_spec\" + else + func_stripname '' '.la' "$outputname" + libname=$func_stripname_result + fi + ;; + esac + + if test -n "$objs"; then + if test pass_all != "$deplibs_check_method"; then + func_fatal_error "cannot build libtool library '$output' from non-libtool objects on this host:$objs" + else + echo + $ECHO "*** Warning: Linking the shared library $output against the non-libtool" + $ECHO "*** objects $objs is not portable!" + func_append libobjs " $objs" + fi + fi + + test no = "$dlself" \ + || func_warning "'-dlopen self' is ignored for libtool libraries" + + set dummy $rpath + shift + test 1 -lt "$#" \ + && func_warning "ignoring multiple '-rpath's for a libtool library" + + install_libdir=$1 + + oldlibs= + if test -z "$rpath"; then + if test yes = "$build_libtool_libs"; then + # Building a libtool convenience library. + # Some compilers have problems with a '.al' extension so + # convenience libraries should have the same extension an + # archive normally would. + oldlibs="$output_objdir/$libname.$libext $oldlibs" + build_libtool_libs=convenience + build_old_libs=yes + fi + + test -n "$vinfo" && \ + func_warning "'-version-info/-version-number' is ignored for convenience libraries" + + test -n "$release" && \ + func_warning "'-release' is ignored for convenience libraries" + else + + # Parse the version information argument. + save_ifs=$IFS; IFS=: + set dummy $vinfo 0 0 0 + shift + IFS=$save_ifs + + test -n "$7" && \ + func_fatal_help "too many parameters to '-version-info'" + + # convert absolute version numbers to libtool ages + # this retains compatibility with .la files and attempts + # to make the code below a bit more comprehensible + + case $vinfo_number in + yes) + number_major=$1 + number_minor=$2 + number_revision=$3 + # + # There are really only two kinds -- those that + # use the current revision as the major version + # and those that subtract age and use age as + # a minor version. But, then there is irix + # that has an extra 1 added just for fun + # + case $version_type in + # correct linux to gnu/linux during the next big refactor + darwin|freebsd-elf|linux|osf|windows|none) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_revision + ;; + freebsd-aout|qnx|sunos) + current=$number_major + revision=$number_minor + age=0 + ;; + irix|nonstopux) + func_arith $number_major + $number_minor + current=$func_arith_result + age=$number_minor + revision=$number_minor + lt_irix_increment=no + ;; + esac + ;; + no) + current=$1 + revision=$2 + age=$3 + ;; + esac + + # Check that each of the things are valid numbers. + case $current in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "CURRENT '$current' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $revision in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "REVISION '$revision' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + case $age in + 0|[1-9]|[1-9][0-9]|[1-9][0-9][0-9]|[1-9][0-9][0-9][0-9]|[1-9][0-9][0-9][0-9][0-9]) ;; + *) + func_error "AGE '$age' must be a nonnegative integer" + func_fatal_error "'$vinfo' is not valid version information" + ;; + esac + + if test "$age" -gt "$current"; then + func_error "AGE '$age' is greater than the current interface number '$current'" + func_fatal_error "'$vinfo' is not valid version information" + fi + + # Calculate the version variables. + major= + versuffix= + verstring= + case $version_type in + none) ;; + + darwin) + # Like Linux, but with the current version available in + # verstring for coding it into the library header + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + # Darwin ld doesn't like 0 for these options... + func_arith $current + 1 + minor_current=$func_arith_result + xlcverstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + # On Darwin other compilers + case $CC in + nagfor*) + verstring="$wl-compatibility_version $wl$minor_current $wl-current_version $wl$minor_current.$revision" + ;; + *) + verstring="-compatibility_version $minor_current -current_version $minor_current.$revision" + ;; + esac + ;; + + freebsd-aout) + major=.$current + versuffix=.$current.$revision + ;; + + freebsd-elf) + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + irix | nonstopux) + if test no = "$lt_irix_increment"; then + func_arith $current - $age + else + func_arith $current - $age + 1 + fi + major=$func_arith_result + + case $version_type in + nonstopux) verstring_prefix=nonstopux ;; + *) verstring_prefix=sgi ;; + esac + verstring=$verstring_prefix$major.$revision + + # Add in all the interfaces that we are compatible with. + loop=$revision + while test 0 -ne "$loop"; do + func_arith $revision - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring_prefix$major.$iface:$verstring + done + + # Before this point, $major must not contain '.'. + major=.$major + versuffix=$major.$revision + ;; + + linux) # correct to gnu/linux during the next big refactor + func_arith $current - $age + major=.$func_arith_result + versuffix=$major.$age.$revision + ;; + + osf) + func_arith $current - $age + major=.$func_arith_result + versuffix=.$current.$age.$revision + verstring=$current.$age.$revision + + # Add in all the interfaces that we are compatible with. + loop=$age + while test 0 -ne "$loop"; do + func_arith $current - $loop + iface=$func_arith_result + func_arith $loop - 1 + loop=$func_arith_result + verstring=$verstring:$iface.0 + done + + # Make executables depend on our current version. + func_append verstring ":$current.0" + ;; + + qnx) + major=.$current + versuffix=.$current + ;; + + sco) + major=.$current + versuffix=.$current + ;; + + sunos) + major=.$current + versuffix=.$current.$revision + ;; + + windows) + # Use '-' rather than '.', since we only want one + # extension on DOS 8.3 file systems. + func_arith $current - $age + major=$func_arith_result + versuffix=-$major + ;; + + *) + func_fatal_configuration "unknown library version type '$version_type'" + ;; + esac + + # Clear the version info if we defaulted, and they specified a release. + if test -z "$vinfo" && test -n "$release"; then + major= + case $version_type in + darwin) + # we can't check for "0.0" in archive_cmds due to quoting + # problems, so we reset it completely + verstring= + ;; + *) + verstring=0.0 + ;; + esac + if test no = "$need_version"; then + versuffix= + else + versuffix=.0.0 + fi + fi + + # Remove version info from name if versioning should be avoided + if test yes,no = "$avoid_version,$need_version"; then + major= + versuffix= + verstring= + fi + + # Check to see if the archive will have undefined symbols. + if test yes = "$allow_undefined"; then + if test unsupported = "$allow_undefined_flag"; then + if test yes = "$build_old_libs"; then + func_warning "undefined symbols not allowed in $host shared libraries; building static only" + build_libtool_libs=no + else + func_fatal_error "can't build $host shared library unless -no-undefined is specified" + fi + fi + else + # Don't allow undefined symbols. + allow_undefined_flag=$no_undefined_flag + fi + + fi + + func_generate_dlsyms "$libname" "$libname" : + func_append libobjs " $symfileobj" + test " " = "$libobjs" && libobjs= + + if test relink != "$opt_mode"; then + # Remove our outputs, but don't remove object files since they + # may have been created when compiling PIC objects. + removelist= + tempremovelist=`$ECHO "$output_objdir/*"` + for p in $tempremovelist; do + case $p in + *.$objext | *.gcno) + ;; + $output_objdir/$outputname | $output_objdir/$libname.* | $output_objdir/$libname$release.*) + if test -n "$precious_files_regex"; then + if $ECHO "$p" | $EGREP -e "$precious_files_regex" >/dev/null 2>&1 + then + continue + fi + fi + func_append removelist " $p" + ;; + *) ;; + esac + done + test -n "$removelist" && \ + func_show_eval "${RM}r \$removelist" + fi + + # Now set the variables for building old libraries. + if test yes = "$build_old_libs" && test convenience != "$build_libtool_libs"; then + func_append oldlibs " $output_objdir/$libname.$libext" + + # Transform .lo files to .o files. + oldobjs="$objs "`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; $lo2o" | $NL2SP` + fi + + # Eliminate all temporary directories. + #for path in $notinst_path; do + # lib_search_path=`$ECHO "$lib_search_path " | $SED "s% $path % %g"` + # deplibs=`$ECHO "$deplibs " | $SED "s% -L$path % %g"` + # dependency_libs=`$ECHO "$dependency_libs " | $SED "s% -L$path % %g"` + #done + + if test -n "$xrpath"; then + # If the user specified any rpath flags, then add them. + temp_xrpath= + for libdir in $xrpath; do + func_replace_sysroot "$libdir" + func_append temp_xrpath " -R$func_replace_sysroot_result" + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + if test yes != "$hardcode_into_libs" || test yes = "$build_old_libs"; then + dependency_libs="$temp_xrpath $dependency_libs" + fi + fi + + # Make sure dlfiles contains only unique files that won't be dlpreopened + old_dlfiles=$dlfiles + dlfiles= + for lib in $old_dlfiles; do + case " $dlprefiles $dlfiles " in + *" $lib "*) ;; + *) func_append dlfiles " $lib" ;; + esac + done + + # Make sure dlprefiles contains only unique files + old_dlprefiles=$dlprefiles + dlprefiles= + for lib in $old_dlprefiles; do + case "$dlprefiles " in + *" $lib "*) ;; + *) func_append dlprefiles " $lib" ;; + esac + done + + if test yes = "$build_libtool_libs"; then + if test -n "$rpath"; then + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-*-beos* | *-cegcc* | *-*-haiku*) + # these systems don't actually have a c library (as such)! + ;; + *-*-rhapsody* | *-*-darwin1.[012]) + # Rhapsody C library is in the System framework + func_append deplibs " System.ltframework" + ;; + *-*-netbsd*) + # Don't link with libc until the a.out ld.so is fixed. + ;; + *-*-openbsd* | *-*-freebsd* | *-*-dragonfly*) + # Do not include libc due to us having libc/libc_r. + ;; + *-*-sco3.2v5* | *-*-sco5v6*) + # Causes problems with __ctype + ;; + *-*-sysv4.2uw2* | *-*-sysv5* | *-*-unixware* | *-*-OpenUNIX*) + # Compiler inserts libc in the correct place for threads to work + ;; + *) + # Add libc to deplibs on all other systems if necessary. + if test yes = "$build_libtool_need_lc"; then + func_append deplibs " -lc" + fi + ;; + esac + fi + + # Transform deplibs into only deplibs that can be linked in shared. + name_save=$name + libname_save=$libname + release_save=$release + versuffix_save=$versuffix + major_save=$major + # I'm not sure if I'm treating the release correctly. I think + # release should show up in the -l (ie -lgmp5) so we don't want to + # add it in twice. Is that correct? + release= + versuffix= + major= + newdeplibs= + droppeddeps=no + case $deplibs_check_method in + pass_all) + # Don't check for shared/static. Everything works. + # This might be a little naive. We might want to check + # whether the library exists or not. But this is on + # osf3 & osf4 and I'm not really sure... Just + # implementing what was already the behavior. + newdeplibs=$deplibs + ;; + test_compile) + # This code stresses the "libraries are programs" paradigm to its + # limits. Maybe even breaks it. We compile a program, linking it + # against the deplibs as a proxy for the library. Then we can check + # whether they linked in statically or dynamically with ldd. + $opt_dry_run || $RM conftest.c + cat > conftest.c </dev/null` + $nocaseglob + else + potential_libs=`ls $i/$libnameglob[.-]* 2>/dev/null` + fi + for potent_lib in $potential_libs; do + # Follow soft links. + if ls -lLd "$potent_lib" 2>/dev/null | + $GREP " -> " >/dev/null; then + continue + fi + # The statement above tries to avoid entering an + # endless loop below, in case of cyclic links. + # We might still enter an endless loop, since a link + # loop can be closed while we follow links, + # but so what? + potlib=$potent_lib + while test -h "$potlib" 2>/dev/null; do + potliblink=`ls -ld $potlib | $SED 's/.* -> //'` + case $potliblink in + [\\/]* | [A-Za-z]:[\\/]*) potlib=$potliblink;; + *) potlib=`$ECHO "$potlib" | $SED 's|[^/]*$||'`"$potliblink";; + esac + done + if eval $file_magic_cmd \"\$potlib\" 2>/dev/null | + $SED -e 10q | + $EGREP "$file_magic_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for file magic test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a file magic. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + match_pattern*) + set dummy $deplibs_check_method; shift + match_pattern_regex=`expr "$deplibs_check_method" : "$1 \(.*\)"` + for a_deplib in $deplibs; do + case $a_deplib in + -l*) + func_stripname -l '' "$a_deplib" + name=$func_stripname_result + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + case " $predeps $postdeps " in + *" $a_deplib "*) + func_append newdeplibs " $a_deplib" + a_deplib= + ;; + esac + fi + if test -n "$a_deplib"; then + libname=`eval "\\$ECHO \"$libname_spec\""` + for i in $lib_search_path $sys_lib_search_path $shlib_search_path; do + potential_libs=`ls $i/$libname[.-]* 2>/dev/null` + for potent_lib in $potential_libs; do + potlib=$potent_lib # see symlink-check above in file_magic test + if eval "\$ECHO \"$potent_lib\"" 2>/dev/null | $SED 10q | \ + $EGREP "$match_pattern_regex" > /dev/null; then + func_append newdeplibs " $a_deplib" + a_deplib= + break 2 + fi + done + done + fi + if test -n "$a_deplib"; then + droppeddeps=yes + echo + $ECHO "*** Warning: linker path does not have real file for library $a_deplib." + echo "*** I have the capability to make that library automatically link in when" + echo "*** you link to this library. But I can only do this if you have a" + echo "*** shared version of the library, which you do not appear to have" + echo "*** because I did check the linker path looking for a file starting" + if test -z "$potlib"; then + $ECHO "*** with $libname but no candidates were found. (...for regex pattern test)" + else + $ECHO "*** with $libname and none of the candidates passed a file format test" + $ECHO "*** using a regex pattern. Last file checked: $potlib" + fi + fi + ;; + *) + # Add a -L argument. + func_append newdeplibs " $a_deplib" + ;; + esac + done # Gone through all deplibs. + ;; + none | unknown | *) + newdeplibs= + tmp_deplibs=`$ECHO " $deplibs" | $SED 's/ -lc$//; s/ -[LR][^ ]*//g'` + if test yes = "$allow_libtool_libs_with_static_runtimes"; then + for i in $predeps $postdeps; do + # can't use Xsed below, because $i might contain '/' + tmp_deplibs=`$ECHO " $tmp_deplibs" | $SED "s|$i||"` + done + fi + case $tmp_deplibs in + *[!\ \ ]*) + echo + if test none = "$deplibs_check_method"; then + echo "*** Warning: inter-library dependencies are not supported in this platform." + else + echo "*** Warning: inter-library dependencies are not known to be supported." + fi + echo "*** All declared inter-library dependencies are being dropped." + droppeddeps=yes + ;; + esac + ;; + esac + versuffix=$versuffix_save + major=$major_save + release=$release_save + libname=$libname_save + name=$name_save + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library with the System framework + newdeplibs=`$ECHO " $newdeplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + if test yes = "$droppeddeps"; then + if test yes = "$module"; then + echo + echo "*** Warning: libtool could not satisfy all declared inter-library" + $ECHO "*** dependencies of module $libname. Therefore, libtool will create" + echo "*** a static module, that should work as long as the dlopening" + echo "*** application is linked with the -dlopen flag." + if test -z "$global_symbol_pipe"; then + echo + echo "*** However, this would only work if libtool was able to extract symbol" + echo "*** lists from a program, using 'nm' or equivalent, but libtool could" + echo "*** not find such a program. So, this module is probably useless." + echo "*** 'nm' from GNU binutils and a full rebuild may help." + fi + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + else + echo "*** The inter-library dependencies that have been dropped here will be" + echo "*** automatically added whenever a program is linked with this library" + echo "*** or is declared to -dlopen it." + + if test no = "$allow_undefined"; then + echo + echo "*** Since this library must not contain undefined symbols," + echo "*** because either the platform does not support them or" + echo "*** it was explicitly requested with -no-undefined," + echo "*** libtool will only create a static version of it." + if test no = "$build_old_libs"; then + oldlibs=$output_objdir/$libname.$libext + build_libtool_libs=module + build_old_libs=yes + else + build_libtool_libs=no + fi + fi + fi + fi + # Done checking deplibs! + deplibs=$newdeplibs + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + case $host in + *-*-darwin*) + newdeplibs=`$ECHO " $newdeplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + new_inherited_linker_flags=`$ECHO " $new_inherited_linker_flags" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + deplibs=`$ECHO " $deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + deplibs=$new_libs + + # All the library-specific variables (install_libdir is set above). + library_names= + old_library= + dlname= + + # Test again, we may have decided not to build it any more + if test yes = "$build_libtool_libs"; then + # Remove $wl instances when linking with ld. + # FIXME: should test the right _cmds variable. + case $archive_cmds in + *\$LD\ *) wl= ;; + esac + if test yes = "$hardcode_into_libs"; then + # Hardcode the library paths + hardcode_libdirs= + dep_rpath= + rpath=$finalize_rpath + test relink = "$opt_mode" || rpath=$compile_rpath$rpath + for libdir in $rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + func_replace_sysroot "$libdir" + libdir=$func_replace_sysroot_result + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append dep_rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval "dep_rpath=\"$hardcode_libdir_flag_spec\"" + fi + if test -n "$runpath_var" && test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + eval "$runpath_var='$rpath\$$runpath_var'; export $runpath_var" + fi + test -n "$dep_rpath" && deplibs="$dep_rpath $deplibs" + fi + + shlibpath=$finalize_shlibpath + test relink = "$opt_mode" || shlibpath=$compile_shlibpath$shlibpath + if test -n "$shlibpath"; then + eval "$shlibpath_var='$shlibpath\$$shlibpath_var'; export $shlibpath_var" + fi + + # Get the real and link names of the library. + eval shared_ext=\"$shrext_cmds\" + eval library_names=\"$library_names_spec\" + set dummy $library_names + shift + realname=$1 + shift + + if test -n "$soname_spec"; then + eval soname=\"$soname_spec\" + else + soname=$realname + fi + if test -z "$dlname"; then + dlname=$soname + fi + + lib=$output_objdir/$realname + linknames= + for link + do + func_append linknames " $link" + done + + # Use standard objects if they are pic + test -z "$pic_flag" && libobjs=`$ECHO "$libobjs" | $SP2NL | $SED "$lo2o" | $NL2SP` + test "X$libobjs" = "X " && libobjs= + + delfiles= + if test -n "$export_symbols" && test -n "$include_expsyms"; then + $opt_dry_run || cp "$export_symbols" "$output_objdir/$libname.uexp" + export_symbols=$output_objdir/$libname.uexp + func_append delfiles " $export_symbols" + fi + + orig_export_symbols= + case $host_os in + cygwin* | mingw* | cegcc*) + if test -n "$export_symbols" && test -z "$export_symbols_regex"; then + # exporting using user supplied symfile + func_dll_def_p "$export_symbols" || { + # and it's NOT already a .def file. Must figure out + # which of the given symbols are data symbols and tag + # them as such. So, trigger use of export_symbols_cmds. + # export_symbols gets reassigned inside the "prepare + # the list of exported symbols" if statement, so the + # include_expsyms logic still works. + orig_export_symbols=$export_symbols + export_symbols= + always_export_symbols=yes + } + fi + ;; + esac + + # Prepare the list of exported symbols + if test -z "$export_symbols"; then + if test yes = "$always_export_symbols" || test -n "$export_symbols_regex"; then + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + cmds=$export_symbols_cmds + save_ifs=$IFS; IFS='~' + for cmd1 in $cmds; do + IFS=$save_ifs + # Take the normal branch if the nm_file_list_spec branch + # doesn't work or if tool conversion is not needed. + case $nm_file_list_spec~$to_tool_file_cmd in + *~func_convert_file_noop | *~func_convert_file_msys_to_w32 | ~*) + try_normal_branch=yes + eval cmd=\"$cmd1\" + func_len " $cmd" + len=$func_len_result + ;; + *) + try_normal_branch=no + ;; + esac + if test yes = "$try_normal_branch" \ + && { test "$len" -lt "$max_cmd_len" \ + || test "$max_cmd_len" -le -1; } + then + func_show_eval "$cmd" 'exit $?' + skipped_export=false + elif test -n "$nm_file_list_spec"; then + func_basename "$output" + output_la=$func_basename_result + save_libobjs=$libobjs + save_output=$output + output=$output_objdir/$output_la.nm + func_to_tool_file "$output" + libobjs=$nm_file_list_spec$func_to_tool_file_result + func_append delfiles " $output" + func_verbose "creating $NM input file list: $output" + for obj in $save_libobjs; do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > "$output" + eval cmd=\"$cmd1\" + func_show_eval "$cmd" 'exit $?' + output=$save_output + libobjs=$save_libobjs + skipped_export=false + else + # The command line is too long to execute in one step. + func_verbose "using reloadable object file for export list..." + skipped_export=: + # Break out early, otherwise skipped_export may be + # set to false by a later but shorter cmd. + break + fi + done + IFS=$save_ifs + if test -n "$export_symbols_regex" && test : != "$skipped_export"; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + fi + + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test : != "$skipped_export" && test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + + tmp_deplibs= + for test_deplib in $deplibs; do + case " $convenience " in + *" $test_deplib "*) ;; + *) + func_append tmp_deplibs " $test_deplib" + ;; + esac + done + deplibs=$tmp_deplibs + + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec" && + test yes = "$compiler_needs_object" && + test -z "$libobjs"; then + # extract the archives, so we have objects to list. + # TODO: could optimize this to just extract one archive. + whole_archive_flag_spec= + fi + if test -n "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + else + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + fi + + if test yes = "$thread_safe" && test -n "$thread_safe_flag_spec"; then + eval flag=\"$thread_safe_flag_spec\" + func_append linker_flags " $flag" + fi + + # Make a backup of the uninstalled library when relinking + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}U && $MV $realname ${realname}U)' || exit $? + fi + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + eval test_cmds=\"$module_expsym_cmds\" + cmds=$module_expsym_cmds + else + eval test_cmds=\"$module_cmds\" + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + eval test_cmds=\"$archive_expsym_cmds\" + cmds=$archive_expsym_cmds + else + eval test_cmds=\"$archive_cmds\" + cmds=$archive_cmds + fi + fi + + if test : != "$skipped_export" && + func_len " $test_cmds" && + len=$func_len_result && + test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + : + else + # The command line is too long to link in one step, link piecewise + # or, if using GNU ld and skipped_export is not :, use a linker + # script. + + # Save the value of $output and $libobjs because we want to + # use them later. If we have whole_archive_flag_spec, we + # want to use save_libobjs as it was before + # whole_archive_flag_spec was expanded, because we can't + # assume the linker understands whole_archive_flag_spec. + # This may have to be revisited, in case too many + # convenience libraries get linked in and end up exceeding + # the spec. + if test -z "$convenience" || test -z "$whole_archive_flag_spec"; then + save_libobjs=$libobjs + fi + save_output=$output + func_basename "$output" + output_la=$func_basename_result + + # Clear the reloadable object creation command queue and + # initialize k to one. + test_cmds= + concat_cmds= + objlist= + last_robj= + k=1 + + if test -n "$save_libobjs" && test : != "$skipped_export" && test yes = "$with_gnu_ld"; then + output=$output_objdir/$output_la.lnkscript + func_verbose "creating GNU ld script: $output" + echo 'INPUT (' > $output + for obj in $save_libobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + echo ')' >> $output + func_append delfiles " $output" + func_to_tool_file "$output" + output=$func_to_tool_file_result + elif test -n "$save_libobjs" && test : != "$skipped_export" && test -n "$file_list_spec"; then + output=$output_objdir/$output_la.lnk + func_verbose "creating linker input file list: $output" + : > $output + set x $save_libobjs + shift + firstobj= + if test yes = "$compiler_needs_object"; then + firstobj="$1 " + shift + fi + for obj + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" >> $output + done + func_append delfiles " $output" + func_to_tool_file "$output" + output=$firstobj\"$file_list_spec$func_to_tool_file_result\" + else + if test -n "$save_libobjs"; then + func_verbose "creating reloadable object files..." + output=$output_objdir/$output_la-$k.$objext + eval test_cmds=\"$reload_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + + # Loop over the list of objects to be linked. + for obj in $save_libobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + if test -z "$objlist" || + test "$len" -lt "$max_cmd_len"; then + func_append objlist " $obj" + else + # The command $test_cmds is almost too long, add a + # command to the queue. + if test 1 -eq "$k"; then + # The first file doesn't have a previous command to add. + reload_objs=$objlist + eval concat_cmds=\"$reload_cmds\" + else + # All subsequent reloadable object files will link in + # the last one created. + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds~$reload_cmds~\$RM $last_robj\" + fi + last_robj=$output_objdir/$output_la-$k.$objext + func_arith $k + 1 + k=$func_arith_result + output=$output_objdir/$output_la-$k.$objext + objlist=" $obj" + func_len " $last_robj" + func_arith $len0 + $func_len_result + len=$func_arith_result + fi + done + # Handle the remaining objects by creating one last + # reloadable object file. All subsequent reloadable object + # files will link in the last one created. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + reload_objs="$objlist $last_robj" + eval concat_cmds=\"\$concat_cmds$reload_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + func_append delfiles " $output" + + else + output= + fi + + ${skipped_export-false} && { + func_verbose "generating symbol list for '$libname.la'" + export_symbols=$output_objdir/$libname.exp + $opt_dry_run || $RM $export_symbols + libobjs=$output + # Append the command to create the export file. + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$export_symbols_cmds\" + if test -n "$last_robj"; then + eval concat_cmds=\"\$concat_cmds~\$RM $last_robj\" + fi + } + + test -n "$save_libobjs" && + func_verbose "creating a temporary reloadable object file: $output" + + # Loop through the commands generated above and execute them. + save_ifs=$IFS; IFS='~' + for cmd in $concat_cmds; do + IFS=$save_ifs + $opt_quiet || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + if test -n "$export_symbols_regex" && ${skipped_export-false}; then + func_show_eval '$EGREP -e "$export_symbols_regex" "$export_symbols" > "${export_symbols}T"' + func_show_eval '$MV "${export_symbols}T" "$export_symbols"' + fi + fi + + ${skipped_export-false} && { + if test -n "$export_symbols" && test -n "$include_expsyms"; then + tmp_export_symbols=$export_symbols + test -n "$orig_export_symbols" && tmp_export_symbols=$orig_export_symbols + $opt_dry_run || eval '$ECHO "$include_expsyms" | $SP2NL >> "$tmp_export_symbols"' + fi + + if test -n "$orig_export_symbols"; then + # The given exports_symbols file has to be filtered, so filter it. + func_verbose "filter symbol list for '$libname.la' to tag DATA exports" + # FIXME: $output_objdir/$libname.filter potentially contains lots of + # 's' commands, which not all seds can handle. GNU sed should be fine + # though. Also, the filter scales superlinearly with the number of + # global variables. join(1) would be nice here, but unfortunately + # isn't a blessed tool. + $opt_dry_run || $SED -e '/[ ,]DATA/!d;s,\(.*\)\([ \,].*\),s|^\1$|\1\2|,' < $export_symbols > $output_objdir/$libname.filter + func_append delfiles " $export_symbols $output_objdir/$libname.filter" + export_symbols=$output_objdir/$libname.def + $opt_dry_run || $SED -f $output_objdir/$libname.filter < $orig_export_symbols > $export_symbols + fi + } + + libobjs=$output + # Restore the value of output. + output=$save_output + + if test -n "$convenience" && test -n "$whole_archive_flag_spec"; then + eval libobjs=\"\$libobjs $whole_archive_flag_spec\" + test "X$libobjs" = "X " && libobjs= + fi + # Expand the library linking commands again to reset the + # value of $libobjs for piecewise linking. + + # Do each of the archive commands. + if test yes = "$module" && test -n "$module_cmds"; then + if test -n "$export_symbols" && test -n "$module_expsym_cmds"; then + cmds=$module_expsym_cmds + else + cmds=$module_cmds + fi + else + if test -n "$export_symbols" && test -n "$archive_expsym_cmds"; then + cmds=$archive_expsym_cmds + else + cmds=$archive_cmds + fi + fi + fi + + if test -n "$delfiles"; then + # Append the command to remove temporary files to $cmds. + eval cmds=\"\$cmds~\$RM $delfiles\" + fi + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append libobjs " $func_extract_archives_result" + test "X$libobjs" = "X " && libobjs= + fi + + save_ifs=$IFS; IFS='~' + for cmd in $cmds; do + IFS=$sp$nl + eval cmd=\"$cmd\" + IFS=$save_ifs + $opt_quiet || { + func_quote_for_expand "$cmd" + eval "func_echo $func_quote_for_expand_result" + } + $opt_dry_run || eval "$cmd" || { + lt_exit=$? + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + ( cd "$output_objdir" && \ + $RM "${realname}T" && \ + $MV "${realname}U" "$realname" ) + fi + + exit $lt_exit + } + done + IFS=$save_ifs + + # Restore the uninstalled library and exit + if test relink = "$opt_mode"; then + $opt_dry_run || eval '(cd $output_objdir && $RM ${realname}T && $MV $realname ${realname}T && $MV ${realname}U $realname)' || exit $? + + if test -n "$convenience"; then + if test -z "$whole_archive_flag_spec"; then + func_show_eval '${RM}r "$gentop"' + fi + fi + + exit $EXIT_SUCCESS + fi + + # Create links to the real library. + for linkname in $linknames; do + if test "$realname" != "$linkname"; then + func_show_eval '(cd "$output_objdir" && $RM "$linkname" && $LN_S "$realname" "$linkname")' 'exit $?' + fi + done + + # If -module or -export-dynamic was specified, set the dlname. + if test yes = "$module" || test yes = "$export_dynamic"; then + # On all known operating systems, these are identical. + dlname=$soname + fi + fi + ;; + + obj) + if test -n "$dlfiles$dlprefiles" || test no != "$dlself"; then + func_warning "'-dlopen' is ignored for objects" + fi + + case " $deplibs" in + *\ -l* | *\ -L*) + func_warning "'-l' and '-L' are ignored for objects" ;; + esac + + test -n "$rpath" && \ + func_warning "'-rpath' is ignored for objects" + + test -n "$xrpath" && \ + func_warning "'-R' is ignored for objects" + + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for objects" + + test -n "$release" && \ + func_warning "'-release' is ignored for objects" + + case $output in + *.lo) + test -n "$objs$old_deplibs" && \ + func_fatal_error "cannot build library object '$output' from non-libtool objects" + + libobj=$output + func_lo2o "$libobj" + obj=$func_lo2o_result + ;; + *) + libobj= + obj=$output + ;; + esac + + # Delete the old objects. + $opt_dry_run || $RM $obj $libobj + + # Objects from convenience libraries. This assumes + # single-version convenience libraries. Whenever we create + # different ones for PIC/non-PIC, this we'll have to duplicate + # the extraction. + reload_conv_objs= + gentop= + # if reload_cmds runs $LD directly, get rid of -Wl from + # whole_archive_flag_spec and hope we can get by with turning comma + # into space. + case $reload_cmds in + *\$LD[\ \$]*) wl= ;; + esac + if test -n "$convenience"; then + if test -n "$whole_archive_flag_spec"; then + eval tmp_whole_archive_flags=\"$whole_archive_flag_spec\" + test -n "$wl" || tmp_whole_archive_flags=`$ECHO "$tmp_whole_archive_flags" | $SED 's|,| |g'` + reload_conv_objs=$reload_objs\ $tmp_whole_archive_flags + else + gentop=$output_objdir/${obj}x + func_append generated " $gentop" + + func_extract_archives $gentop $convenience + reload_conv_objs="$reload_objs $func_extract_archives_result" + fi + fi + + # If we're not building shared, we need to use non_pic_objs + test yes = "$build_libtool_libs" || libobjs=$non_pic_objects + + # Create the old-style object. + reload_objs=$objs$old_deplibs' '`$ECHO "$libobjs" | $SP2NL | $SED "/\.$libext$/d; /\.lib$/d; $lo2o" | $NL2SP`' '$reload_conv_objs + + output=$obj + func_execute_cmds "$reload_cmds" 'exit $?' + + # Exit if we aren't doing a library object file. + if test -z "$libobj"; then + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + fi + + test yes = "$build_libtool_libs" || { + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + # Create an invalid libtool object if no PIC, so that we don't + # accidentally link it into a program. + # $show "echo timestamp > $libobj" + # $opt_dry_run || eval "echo timestamp > $libobj" || exit $? + exit $EXIT_SUCCESS + } + + if test -n "$pic_flag" || test default != "$pic_mode"; then + # Only do commands if we really have different PIC objects. + reload_objs="$libobjs $reload_conv_objs" + output=$libobj + func_execute_cmds "$reload_cmds" 'exit $?' + fi + + if test -n "$gentop"; then + func_show_eval '${RM}r "$gentop"' + fi + + exit $EXIT_SUCCESS + ;; + + prog) + case $host in + *cygwin*) func_stripname '' '.exe' "$output" + output=$func_stripname_result.exe;; + esac + test -n "$vinfo" && \ + func_warning "'-version-info' is ignored for programs" + + test -n "$release" && \ + func_warning "'-release' is ignored for programs" + + $preload \ + && test unknown,unknown,unknown = "$dlopen_support,$dlopen_self,$dlopen_self_static" \ + && func_warning "'LT_INIT([dlopen])' not used. Assuming no dlopen support." + + case $host in + *-*-rhapsody* | *-*-darwin1.[012]) + # On Rhapsody replace the C library is the System framework + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's/ -lc / System.ltframework /'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's/ -lc / System.ltframework /'` + ;; + esac + + case $host in + *-*-darwin*) + # Don't allow lazy linking, it breaks C++ global constructors + # But is supposedly fixed on 10.4 or later (yay!). + if test CXX = "$tagname"; then + case ${MACOSX_DEPLOYMENT_TARGET-10.0} in + 10.[0123]) + func_append compile_command " $wl-bind_at_load" + func_append finalize_command " $wl-bind_at_load" + ;; + esac + fi + # Time to change all our "foo.ltframework" stuff back to "-framework foo" + compile_deplibs=`$ECHO " $compile_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + finalize_deplibs=`$ECHO " $finalize_deplibs" | $SED 's% \([^ $]*\).ltframework% -framework \1%g'` + ;; + esac + + + # move library search paths that coincide with paths to not yet + # installed libraries to the beginning of the library search list + new_libs= + for path in $notinst_path; do + case " $new_libs " in + *" -L$path/$objdir "*) ;; + *) + case " $compile_deplibs " in + *" -L$path/$objdir "*) + func_append new_libs " -L$path/$objdir" ;; + esac + ;; + esac + done + for deplib in $compile_deplibs; do + case $deplib in + -L*) + case " $new_libs " in + *" $deplib "*) ;; + *) func_append new_libs " $deplib" ;; + esac + ;; + *) func_append new_libs " $deplib" ;; + esac + done + compile_deplibs=$new_libs + + + func_append compile_command " $compile_deplibs" + func_append finalize_command " $finalize_deplibs" + + if test -n "$rpath$xrpath"; then + # If the user specified any rpath flags, then add them. + for libdir in $rpath $xrpath; do + # This is the magic to use -rpath. + case "$finalize_rpath " in + *" $libdir "*) ;; + *) func_append finalize_rpath " $libdir" ;; + esac + done + fi + + # Now hardcode the library paths + rpath= + hardcode_libdirs= + for libdir in $compile_rpath $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$perm_rpath " in + *" $libdir "*) ;; + *) func_append perm_rpath " $libdir" ;; + esac + fi + case $host in + *-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-os2* | *-cegcc*) + testbindir=`$ECHO "$libdir" | $SED -e 's*/lib$*/bin*'` + case :$dllsearchpath: in + *":$libdir:"*) ;; + ::) dllsearchpath=$libdir;; + *) func_append dllsearchpath ":$libdir";; + esac + case :$dllsearchpath: in + *":$testbindir:"*) ;; + ::) dllsearchpath=$testbindir;; + *) func_append dllsearchpath ":$testbindir";; + esac + ;; + esac + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + compile_rpath=$rpath + + rpath= + hardcode_libdirs= + for libdir in $finalize_rpath; do + if test -n "$hardcode_libdir_flag_spec"; then + if test -n "$hardcode_libdir_separator"; then + if test -z "$hardcode_libdirs"; then + hardcode_libdirs=$libdir + else + # Just accumulate the unique libdirs. + case $hardcode_libdir_separator$hardcode_libdirs$hardcode_libdir_separator in + *"$hardcode_libdir_separator$libdir$hardcode_libdir_separator"*) + ;; + *) + func_append hardcode_libdirs "$hardcode_libdir_separator$libdir" + ;; + esac + fi + else + eval flag=\"$hardcode_libdir_flag_spec\" + func_append rpath " $flag" + fi + elif test -n "$runpath_var"; then + case "$finalize_perm_rpath " in + *" $libdir "*) ;; + *) func_append finalize_perm_rpath " $libdir" ;; + esac + fi + done + # Substitute the hardcoded libdirs into the rpath. + if test -n "$hardcode_libdir_separator" && + test -n "$hardcode_libdirs"; then + libdir=$hardcode_libdirs + eval rpath=\" $hardcode_libdir_flag_spec\" + fi + finalize_rpath=$rpath + + if test -n "$libobjs" && test yes = "$build_old_libs"; then + # Transform all the library objects into standard objects. + compile_command=`$ECHO "$compile_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + finalize_command=`$ECHO "$finalize_command" | $SP2NL | $SED "$lo2o" | $NL2SP` + fi + + func_generate_dlsyms "$outputname" "@PROGRAM@" false + + # template prelinking step + if test -n "$prelink_cmds"; then + func_execute_cmds "$prelink_cmds" 'exit $?' + fi + + wrappers_required=: + case $host in + *cegcc* | *mingw32ce*) + # Disable wrappers for cegcc and mingw32ce hosts, we are cross compiling anyway. + wrappers_required=false + ;; + *cygwin* | *mingw* ) + test yes = "$build_libtool_libs" || wrappers_required=false + ;; + *) + if test no = "$need_relink" || test yes != "$build_libtool_libs"; then + wrappers_required=false + fi + ;; + esac + $wrappers_required || { + # Replace the output file specification. + compile_command=`$ECHO "$compile_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + link_command=$compile_command$compile_rpath + + # We have no uninstalled library dependencies, so finalize right now. + exit_status=0 + func_show_eval "$link_command" 'exit_status=$?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Delete the generated files. + if test -f "$output_objdir/${outputname}S.$objext"; then + func_show_eval '$RM "$output_objdir/${outputname}S.$objext"' + fi + + exit $exit_status + } + + if test -n "$compile_shlibpath$finalize_shlibpath"; then + compile_command="$shlibpath_var=\"$compile_shlibpath$finalize_shlibpath\$$shlibpath_var\" $compile_command" + fi + if test -n "$finalize_shlibpath"; then + finalize_command="$shlibpath_var=\"$finalize_shlibpath\$$shlibpath_var\" $finalize_command" + fi + + compile_var= + finalize_var= + if test -n "$runpath_var"; then + if test -n "$perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $perm_rpath; do + func_append rpath "$dir:" + done + compile_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + if test -n "$finalize_perm_rpath"; then + # We should set the runpath_var. + rpath= + for dir in $finalize_perm_rpath; do + func_append rpath "$dir:" + done + finalize_var="$runpath_var=\"$rpath\$$runpath_var\" " + fi + fi + + if test yes = "$no_install"; then + # We don't need to create a wrapper script. + link_command=$compile_var$compile_command$compile_rpath + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output"'%g'` + # Delete the old output file. + $opt_dry_run || $RM $output + # Link the executable and exit + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + exit $EXIT_SUCCESS + fi + + case $hardcode_action,$fast_install in + relink,*) + # Fast installation is not supported + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + + func_warning "this platform does not like uninstalled shared libraries" + func_warning "'$output' will be relinked during installation" + ;; + *,yes) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command=`$ECHO "$compile_var$compile_command$compile_rpath" | $SED 's%@OUTPUT@%\$progdir/\$file%g'` + ;; + *,no) + link_command=$compile_var$compile_command$compile_rpath + relink_command=$finalize_var$finalize_command$finalize_rpath + ;; + *,needless) + link_command=$finalize_var$compile_command$finalize_rpath + relink_command= + ;; + esac + + # Replace the output file specification. + link_command=`$ECHO "$link_command" | $SED 's%@OUTPUT@%'"$output_objdir/$outputname"'%g'` + + # Delete the old output files. + $opt_dry_run || $RM $output $output_objdir/$outputname $output_objdir/lt-$outputname + + func_show_eval "$link_command" 'exit $?' + + if test -n "$postlink_cmds"; then + func_to_tool_file "$output_objdir/$outputname" + postlink_cmds=`func_echo_all "$postlink_cmds" | $SED -e 's%@OUTPUT@%'"$output_objdir/$outputname"'%g' -e 's%@TOOL_OUTPUT@%'"$func_to_tool_file_result"'%g'` + func_execute_cmds "$postlink_cmds" 'exit $?' + fi + + # Now create the wrapper script. + func_verbose "creating $output" + + # Quote the relink command for shipping. + if test -n "$relink_command"; then + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + relink_command="(cd `pwd`; $relink_command)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + fi + + # Only actually do things if not in dry run mode. + $opt_dry_run || { + # win32 will think the script is a binary if it has + # a .exe suffix, so we strip it off here. + case $output in + *.exe) func_stripname '' '.exe' "$output" + output=$func_stripname_result ;; + esac + # test for cygwin because mv fails w/o .exe extensions + case $host in + *cygwin*) + exeext=.exe + func_stripname '' '.exe' "$outputname" + outputname=$func_stripname_result ;; + *) exeext= ;; + esac + case $host in + *cygwin* | *mingw* ) + func_dirname_and_basename "$output" "" "." + output_name=$func_basename_result + output_path=$func_dirname_result + cwrappersource=$output_path/$objdir/lt-$output_name.c + cwrapper=$output_path/$output_name.exe + $RM $cwrappersource $cwrapper + trap "$RM $cwrappersource $cwrapper; exit $EXIT_FAILURE" 1 2 15 + + func_emit_cwrapperexe_src > $cwrappersource + + # The wrapper executable is built using the $host compiler, + # because it contains $host paths and files. If cross- + # compiling, it, like the target executable, must be + # executed on the $host or under an emulation environment. + $opt_dry_run || { + $LTCC $LTCFLAGS -o $cwrapper $cwrappersource + $STRIP $cwrapper + } + + # Now, create the wrapper script for func_source use: + func_ltwrapper_scriptname $cwrapper + $RM $func_ltwrapper_scriptname_result + trap "$RM $func_ltwrapper_scriptname_result; exit $EXIT_FAILURE" 1 2 15 + $opt_dry_run || { + # note: this script will not be executed, so do not chmod. + if test "x$build" = "x$host"; then + $cwrapper --lt-dump-script > $func_ltwrapper_scriptname_result + else + func_emit_wrapper no > $func_ltwrapper_scriptname_result + fi + } + ;; + * ) + $RM $output + trap "$RM $output; exit $EXIT_FAILURE" 1 2 15 + + func_emit_wrapper no > $output + chmod +x $output + ;; + esac + } + exit $EXIT_SUCCESS + ;; + esac + + # See if we need to build an old-fashioned archive. + for oldlib in $oldlibs; do + + case $build_libtool_libs in + convenience) + oldobjs="$libobjs_save $symfileobj" + addlibs=$convenience + build_libtool_libs=no + ;; + module) + oldobjs=$libobjs_save + addlibs=$old_convenience + build_libtool_libs=no + ;; + *) + oldobjs="$old_deplibs $non_pic_objects" + $preload && test -f "$symfileobj" \ + && func_append oldobjs " $symfileobj" + addlibs=$old_convenience + ;; + esac + + if test -n "$addlibs"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $addlibs + func_append oldobjs " $func_extract_archives_result" + fi + + # Do each command in the archive commands. + if test -n "$old_archive_from_new_cmds" && test yes = "$build_libtool_libs"; then + cmds=$old_archive_from_new_cmds + else + + # Add any objects from preloaded convenience libraries + if test -n "$dlprefiles"; then + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + + func_extract_archives $gentop $dlprefiles + func_append oldobjs " $func_extract_archives_result" + fi + + # POSIX demands no paths to be encoded in archives. We have + # to avoid creating archives with duplicate basenames if we + # might have to extract them afterwards, e.g., when creating a + # static archive out of a convenience library, or when linking + # the entirety of a libtool archive into another (currently + # not supported by libtool). + if (for obj in $oldobjs + do + func_basename "$obj" + $ECHO "$func_basename_result" + done | sort | sort -uc >/dev/null 2>&1); then + : + else + echo "copying selected object files to avoid basename conflicts..." + gentop=$output_objdir/${outputname}x + func_append generated " $gentop" + func_mkdir_p "$gentop" + save_oldobjs=$oldobjs + oldobjs= + counter=1 + for obj in $save_oldobjs + do + func_basename "$obj" + objbase=$func_basename_result + case " $oldobjs " in + " ") oldobjs=$obj ;; + *[\ /]"$objbase "*) + while :; do + # Make sure we don't pick an alternate name that also + # overlaps. + newobj=lt$counter-$objbase + func_arith $counter + 1 + counter=$func_arith_result + case " $oldobjs " in + *[\ /]"$newobj "*) ;; + *) if test ! -f "$gentop/$newobj"; then break; fi ;; + esac + done + func_show_eval "ln $obj $gentop/$newobj || cp $obj $gentop/$newobj" + func_append oldobjs " $gentop/$newobj" + ;; + *) func_append oldobjs " $obj" ;; + esac + done + fi + func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 + tool_oldlib=$func_to_tool_file_result + eval cmds=\"$old_archive_cmds\" + + func_len " $cmds" + len=$func_len_result + if test "$len" -lt "$max_cmd_len" || test "$max_cmd_len" -le -1; then + cmds=$old_archive_cmds + elif test -n "$archiver_list_spec"; then + func_verbose "using command file archive linking..." + for obj in $oldobjs + do + func_to_tool_file "$obj" + $ECHO "$func_to_tool_file_result" + done > $output_objdir/$libname.libcmd + func_to_tool_file "$output_objdir/$libname.libcmd" + oldobjs=" $archiver_list_spec$func_to_tool_file_result" + cmds=$old_archive_cmds + else + # the command line is too long to link in one step, link in parts + func_verbose "using piecewise archive linking..." + save_RANLIB=$RANLIB + RANLIB=: + objlist= + concat_cmds= + save_oldobjs=$oldobjs + oldobjs= + # Is there a better way of finding the last object in the list? + for obj in $save_oldobjs + do + last_oldobj=$obj + done + eval test_cmds=\"$old_archive_cmds\" + func_len " $test_cmds" + len0=$func_len_result + len=$len0 + for obj in $save_oldobjs + do + func_len " $obj" + func_arith $len + $func_len_result + len=$func_arith_result + func_append objlist " $obj" + if test "$len" -lt "$max_cmd_len"; then + : + else + # the above command should be used before it gets too long + oldobjs=$objlist + if test "$obj" = "$last_oldobj"; then + RANLIB=$save_RANLIB + fi + test -z "$concat_cmds" || concat_cmds=$concat_cmds~ + eval concat_cmds=\"\$concat_cmds$old_archive_cmds\" + objlist= + len=$len0 + fi + done + RANLIB=$save_RANLIB + oldobjs=$objlist + if test -z "$oldobjs"; then + eval cmds=\"\$concat_cmds\" + else + eval cmds=\"\$concat_cmds~\$old_archive_cmds\" + fi + fi + fi + func_execute_cmds "$cmds" 'exit $?' + done + + test -n "$generated" && \ + func_show_eval "${RM}r$generated" + + # Now create the libtool archive. + case $output in + *.la) + old_library= + test yes = "$build_old_libs" && old_library=$libname.$libext + func_verbose "creating $output" + + # Preserve any variables that may affect compiler behavior + for var in $variables_saved_for_relink; do + if eval test -z \"\${$var+set}\"; then + relink_command="{ test -z \"\${$var+set}\" || $lt_unset $var || { $var=; export $var; }; }; $relink_command" + elif eval var_value=\$$var; test -z "$var_value"; then + relink_command="$var=; export $var; $relink_command" + else + func_quote_for_eval "$var_value" + relink_command="$var=$func_quote_for_eval_result; export $var; $relink_command" + fi + done + # Quote the link command for shipping. + relink_command="(cd `pwd`; $SHELL \"$progpath\" $preserve_args --mode=relink $libtool_args @inst_prefix_dir@)" + relink_command=`$ECHO "$relink_command" | $SED "$sed_quote_subst"` + if test yes = "$hardcode_automatic"; then + relink_command= + fi + + # Only create the output if not a dry run. + $opt_dry_run || { + for installed in no yes; do + if test yes = "$installed"; then + if test -z "$install_libdir"; then + break + fi + output=$output_objdir/${outputname}i + # Replace all uninstalled libtool libraries with the installed ones + newdependency_libs= + for deplib in $dependency_libs; do + case $deplib in + *.la) + func_basename "$deplib" + name=$func_basename_result + func_resolve_sysroot "$deplib" + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $func_resolve_sysroot_result` + test -z "$libdir" && \ + func_fatal_error "'$deplib' is not a valid libtool archive" + func_append newdependency_libs " ${lt_sysroot:+=}$libdir/$name" + ;; + -L*) + func_stripname -L '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -L$func_replace_sysroot_result" + ;; + -R*) + func_stripname -R '' "$deplib" + func_replace_sysroot "$func_stripname_result" + func_append newdependency_libs " -R$func_replace_sysroot_result" + ;; + *) func_append newdependency_libs " $deplib" ;; + esac + done + dependency_libs=$newdependency_libs + newdlfiles= + + for lib in $dlfiles; do + case $lib in + *.la) + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlfiles " ${lt_sysroot:+=}$libdir/$name" + ;; + *) func_append newdlfiles " $lib" ;; + esac + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + *.la) + # Only pass preopened files to the pseudo-archive (for + # eventual linking with the app. that links it) if we + # didn't already link the preopened objects directly into + # the library: + func_basename "$lib" + name=$func_basename_result + eval libdir=`$SED -n -e 's/^libdir=\(.*\)$/\1/p' $lib` + test -z "$libdir" && \ + func_fatal_error "'$lib' is not a valid libtool archive" + func_append newdlprefiles " ${lt_sysroot:+=}$libdir/$name" + ;; + esac + done + dlprefiles=$newdlprefiles + else + newdlfiles= + for lib in $dlfiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlfiles " $abs" + done + dlfiles=$newdlfiles + newdlprefiles= + for lib in $dlprefiles; do + case $lib in + [\\/]* | [A-Za-z]:[\\/]*) abs=$lib ;; + *) abs=`pwd`"/$lib" ;; + esac + func_append newdlprefiles " $abs" + done + dlprefiles=$newdlprefiles + fi + $RM $output + # place dlname in correct position for cygwin + # In fact, it would be nice if we could use this code for all target + # systems that can't hard-code library paths into their executables + # and that have no shared library path variable independent of PATH, + # but it turns out we can't easily determine that from inspecting + # libtool variables, so we have to hard-code the OSs to which it + # applies here; at the moment, that means platforms that use the PE + # object format with DLL files. See the long comment at the top of + # tests/bindir.at for full details. + tdlname=$dlname + case $host,$output,$installed,$module,$dlname in + *cygwin*,*lai,yes,no,*.dll | *mingw*,*lai,yes,no,*.dll | *cegcc*,*lai,yes,no,*.dll) + # If a -bindir argument was supplied, place the dll there. + if test -n "$bindir"; then + func_relative_path "$install_libdir" "$bindir" + tdlname=$func_relative_path_result/$dlname + else + # Otherwise fall back on heuristic. + tdlname=../bin/$dlname + fi + ;; + esac + $ECHO > $output "\ +# $outputname - a libtool library file +# Generated by $PROGRAM (GNU $PACKAGE) $VERSION +# +# Please DO NOT delete this file! +# It is necessary for linking the library. + +# The name that we can dlopen(3). +dlname='$tdlname' + +# Names of this library. +library_names='$library_names' + +# The name of the static archive. +old_library='$old_library' + +# Linker flags that cannot go in dependency_libs. +inherited_linker_flags='$new_inherited_linker_flags' + +# Libraries that this one depends upon. +dependency_libs='$dependency_libs' + +# Names of additional weak libraries provided by this library +weak_library_names='$weak_libs' + +# Version information for $libname. +current=$current +age=$age +revision=$revision + +# Is this an already installed library? +installed=$installed + +# Should we warn about portability when linking against -modules? +shouldnotlink=$module + +# Files to dlopen/dlpreopen +dlopen='$dlfiles' +dlpreopen='$dlprefiles' + +# Directory that this library needs to be installed in: +libdir='$install_libdir'" + if test no,yes = "$installed,$need_relink"; then + $ECHO >> $output "\ +relink_command=\"$relink_command\"" + fi + done + } + + # Do a symbolic link so that the libtool archive can be found in + # LD_LIBRARY_PATH before the program is installed. + func_show_eval '( cd "$output_objdir" && $RM "$outputname" && $LN_S "../$outputname" "$outputname" )' 'exit $?' + ;; + esac + exit $EXIT_SUCCESS +} + +if test link = "$opt_mode" || test relink = "$opt_mode"; then + func_mode_link ${1+"$@"} +fi + + +# func_mode_uninstall arg... +func_mode_uninstall () +{ + $debug_cmd + + RM=$nonopt + files= + rmforce=false + exit_status=0 + + # This variable tells wrapper scripts just to set variables rather + # than running their programs. + libtool_install_magic=$magic + + for arg + do + case $arg in + -f) func_append RM " $arg"; rmforce=: ;; + -*) func_append RM " $arg" ;; + *) func_append files " $arg" ;; + esac + done + + test -z "$RM" && \ + func_fatal_help "you must specify an RM program" + + rmdirs= + + for file in $files; do + func_dirname "$file" "" "." + dir=$func_dirname_result + if test . = "$dir"; then + odir=$objdir + else + odir=$dir/$objdir + fi + func_basename "$file" + name=$func_basename_result + test uninstall = "$opt_mode" && odir=$dir + + # Remember odir for removal later, being careful to avoid duplicates + if test clean = "$opt_mode"; then + case " $rmdirs " in + *" $odir "*) ;; + *) func_append rmdirs " $odir" ;; + esac + fi + + # Don't error if the file doesn't exist and rm -f was used. + if { test -L "$file"; } >/dev/null 2>&1 || + { test -h "$file"; } >/dev/null 2>&1 || + test -f "$file"; then + : + elif test -d "$file"; then + exit_status=1 + continue + elif $rmforce; then + continue + fi + + rmfiles=$file + + case $name in + *.la) + # Possibly a libtool archive, so verify it. + if func_lalib_p "$file"; then + func_source $dir/$name + + # Delete the libtool libraries and symlinks. + for n in $library_names; do + func_append rmfiles " $odir/$n" + done + test -n "$old_library" && func_append rmfiles " $odir/$old_library" + + case $opt_mode in + clean) + case " $library_names " in + *" $dlname "*) ;; + *) test -n "$dlname" && func_append rmfiles " $odir/$dlname" ;; + esac + test -n "$libdir" && func_append rmfiles " $odir/$name $odir/${name}i" + ;; + uninstall) + if test -n "$library_names"; then + # Do each command in the postuninstall commands. + func_execute_cmds "$postuninstall_cmds" '$rmforce || exit_status=1' + fi + + if test -n "$old_library"; then + # Do each command in the old_postuninstall commands. + func_execute_cmds "$old_postuninstall_cmds" '$rmforce || exit_status=1' + fi + # FIXME: should reinstall the best remaining shared library. + ;; + esac + fi + ;; + + *.lo) + # Possibly a libtool object, so verify it. + if func_lalib_p "$file"; then + + # Read the .lo file + func_source $dir/$name + + # Add PIC object to the list of files to remove. + if test -n "$pic_object" && test none != "$pic_object"; then + func_append rmfiles " $dir/$pic_object" + fi + + # Add non-PIC object to the list of files to remove. + if test -n "$non_pic_object" && test none != "$non_pic_object"; then + func_append rmfiles " $dir/$non_pic_object" + fi + fi + ;; + + *) + if test clean = "$opt_mode"; then + noexename=$name + case $file in + *.exe) + func_stripname '' '.exe' "$file" + file=$func_stripname_result + func_stripname '' '.exe' "$name" + noexename=$func_stripname_result + # $file with .exe has already been added to rmfiles, + # add $file without .exe + func_append rmfiles " $file" + ;; + esac + # Do a test to see if this is a libtool program. + if func_ltwrapper_p "$file"; then + if func_ltwrapper_executable_p "$file"; then + func_ltwrapper_scriptname "$file" + relink_command= + func_source $func_ltwrapper_scriptname_result + func_append rmfiles " $func_ltwrapper_scriptname_result" + else + relink_command= + func_source $dir/$noexename + fi + + # note $name still contains .exe if it was in $file originally + # as does the version of $file that was added into $rmfiles + func_append rmfiles " $odir/$name $odir/${name}S.$objext" + if test yes = "$fast_install" && test -n "$relink_command"; then + func_append rmfiles " $odir/lt-$name" + fi + if test "X$noexename" != "X$name"; then + func_append rmfiles " $odir/lt-$noexename.c" + fi + fi + fi + ;; + esac + func_show_eval "$RM $rmfiles" 'exit_status=1' + done + + # Try to remove the $objdir's in the directories where we deleted files + for dir in $rmdirs; do + if test -d "$dir"; then + func_show_eval "rmdir $dir >/dev/null 2>&1" + fi + done + + exit $exit_status +} + +if test uninstall = "$opt_mode" || test clean = "$opt_mode"; then + func_mode_uninstall ${1+"$@"} +fi + +test -z "$opt_mode" && { + help=$generic_help + func_fatal_help "you must specify a MODE" +} + +test -z "$exec_cmd" && \ + func_fatal_help "invalid operation mode '$opt_mode'" + +if test -n "$exec_cmd"; then + eval exec "$exec_cmd" + exit $EXIT_FAILURE +fi + +exit $exit_status + + +# The TAGs below are defined such that we never get into a situation +# where we disable both kinds of libraries. Given conflicting +# choices, we go for a static library, that is the most portable, +# since we can't tell whether shared libraries were disabled because +# the user asked for that or because the platform doesn't support +# them. This is particularly important on AIX, because we don't +# support having both static and shared libraries enabled at the same +# time on that platform, so we default to a shared-only configuration. +# If a disable-shared tag is given, we'll fallback to a static-only +# configuration. But we'll never go from static-only to shared-only. + +# ### BEGIN LIBTOOL TAG CONFIG: disable-shared +build_libtool_libs=no +build_old_libs=yes +# ### END LIBTOOL TAG CONFIG: disable-shared + +# ### BEGIN LIBTOOL TAG CONFIG: disable-static +build_old_libs=`case $build_libtool_libs in yes) echo no;; *) echo yes;; esac` +# ### END LIBTOOL TAG CONFIG: disable-static + +# Local Variables: +# mode:shell-script +# sh-indentation:2 +# End: diff --git a/m4/appstream-xml.m4 b/m4/appstream-xml.m4 new file mode 100644 index 0000000..11ed91a --- /dev/null +++ b/m4/appstream-xml.m4 @@ -0,0 +1,86 @@ +# appstream-xml.m4 +# +# serial 6 + +dnl APPSTREAM_XML +dnl Installs and validates AppData XML files. +dnl +dnl Call APPSTREAM_XML in configure.ac to check for the appstream-util tool. +dnl Add @APPSTREAM_XML_RULES@ to a Makefile.am to substitute the make rules. Add +dnl .appdata.xml files to appstream_XML in Makefile.am and they will be validated +dnl at make check time, if appstream-util is installed, as well as installed +dnl to the correct location automatically. Add --enable-appstream-util to +dnl AM_DISTCHECK_CONFIGURE_FLAGS in Makefile.am to require valid AppData XML when +dnl doing a distcheck. +dnl +dnl Adding files to appstream_XML does not distribute them automatically. + +AC_DEFUN([APPSTREAM_XML], +[ + m4_pattern_allow([AM_V_GEN]) + AC_ARG_ENABLE([appstream-util], + [AS_HELP_STRING([--disable-appstream-util], + [Disable validating AppData XML files during check phase])]) + + AS_IF([test "x$enable_appstream_validate" != "xno"], + [AC_PATH_PROG([APPSTREAM_UTIL], [appstream-util]) + AS_IF([test "x$APPSTREAM_UTIL" = "x"], + [have_appstream_validate=no], + [have_appstream_validate=yes + AC_SUBST([APPSTREAM_UTIL])])], + [have_appstream_validate=no]) + + AS_IF([test "x$have_appstream_validate" != "xno"], + [appstream_validate=yes], + [appstream_validate=no + AS_IF([test "x$enable_appstream_validate" = "xyes"], + [AC_MSG_ERROR([AppData validation was requested but appstream-util was not found])])]) + + AC_SUBST([appstreamxmldir], [${datadir}/metainfo]) + + APPSTREAM_XML_RULES=' +.PHONY : uninstall-appstream-xml install-appstream-xml clean-appstream-xml + +mostlyclean-am: clean-appstream-xml + +%.appdata.valid: %.appdata.xml + $(AM_V_GEN) if test -f "$<"; then d=; else d="$(srcdir)/"; fi; \ + if test -n "$(APPSTREAM_UTIL)"; \ + then $(APPSTREAM_UTIL) --nonet validate $${d}$<; fi \ + && touch [$]@ + +check-am: $(appstream_XML:.appdata.xml=.appdata.valid) +uninstall-am: uninstall-appstream-xml +install-data-am: install-appstream-xml + +.SECONDARY: $(appstream_XML) + +install-appstream-xml: $(appstream_XML) + @$(NORMAL_INSTALL) + if test -n "$^"; then \ + test -z "$(appstreamxmldir)" || $(MKDIR_P) "$(DESTDIR)$(appstreamxmldir)"; \ + $(INSTALL_DATA) $^ "$(DESTDIR)$(appstreamxmldir)"; \ + fi + +uninstall-appstream-xml: + @$(NORMAL_UNINSTALL) + @list='\''$(appstream_XML)'\''; test -n "$(appstreamxmldir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '\''$(DESTDIR)$(appstreamxmldir)'\'' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(appstreamxmldir)" && rm -f $$files + +clean-appstream-xml: + rm -f $(appstream_XML:.appdata.xml=.appdata.valid) +' + _APPSTREAM_XML_SUBST(APPSTREAM_XML_RULES) +]) + +dnl _APPSTREAM_XML_SUBST(VARIABLE) +dnl Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST +AC_DEFUN([_APPSTREAM_XML_SUBST], +[ +AC_SUBST([$1]) +m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) +] +) diff --git a/m4/ax_append_compile_flags.m4 b/m4/ax_append_compile_flags.m4 new file mode 100644 index 0000000..5b6f1af --- /dev/null +++ b/m4/ax_append_compile_flags.m4 @@ -0,0 +1,67 @@ +# ============================================================================ +# https://www.gnu.org/software/autoconf-archive/ax_append_compile_flags.html +# ============================================================================ +# +# SYNOPSIS +# +# AX_APPEND_COMPILE_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT]) +# +# DESCRIPTION +# +# For every FLAG1, FLAG2 it is checked whether the compiler works with the +# flag. If it does, the flag is added FLAGS-VARIABLE +# +# If FLAGS-VARIABLE is not specified, the current language's flags (e.g. +# CFLAGS) is used. During the check the flag is always added to the +# current language's flags. +# +# If EXTRA-FLAGS is defined, it is added to the current language's default +# flags (e.g. CFLAGS) when the check is done. The check is thus made with +# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to +# force the compiler to issue an error when a bad flag is given. +# +# INPUT gives an alternative input source to AC_COMPILE_IFELSE. +# +# NOTE: This macro depends on the AX_APPEND_FLAG and +# AX_CHECK_COMPILE_FLAG. Please keep this macro in sync with +# AX_APPEND_LINK_FLAGS. +# +# LICENSE +# +# Copyright (c) 2011 Maarten Bosmans +# +# 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 3 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, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 6 + +AC_DEFUN([AX_APPEND_COMPILE_FLAGS], +[AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG]) +AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) +for flag in $1; do + AX_CHECK_COMPILE_FLAG([$flag], [AX_APPEND_FLAG([$flag], [$2])], [], [$3], [$4]) +done +])dnl AX_APPEND_COMPILE_FLAGS diff --git a/m4/ax_append_flag.m4 b/m4/ax_append_flag.m4 new file mode 100644 index 0000000..e8c5312 --- /dev/null +++ b/m4/ax_append_flag.m4 @@ -0,0 +1,71 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_append_flag.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_APPEND_FLAG(FLAG, [FLAGS-VARIABLE]) +# +# DESCRIPTION +# +# FLAG is appended to the FLAGS-VARIABLE shell variable, with a space +# added in between. +# +# If FLAGS-VARIABLE is not specified, the current language's flags (e.g. +# CFLAGS) is used. FLAGS-VARIABLE is not changed if it already contains +# FLAG. If FLAGS-VARIABLE is unset in the shell, it is set to exactly +# FLAG. +# +# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. +# +# LICENSE +# +# Copyright (c) 2008 Guido U. Draheim +# Copyright (c) 2011 Maarten Bosmans +# +# 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 3 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, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 7 + +AC_DEFUN([AX_APPEND_FLAG], +[dnl +AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_SET_IF +AS_VAR_PUSHDEF([FLAGS], [m4_default($2,_AC_LANG_PREFIX[FLAGS])]) +AS_VAR_SET_IF(FLAGS,[ + AS_CASE([" AS_VAR_GET(FLAGS) "], + [*" $1 "*], [AC_RUN_LOG([: FLAGS already contains $1])], + [ + AS_VAR_APPEND(FLAGS,[" $1"]) + AC_RUN_LOG([: FLAGS="$FLAGS"]) + ]) + ], + [ + AS_VAR_SET(FLAGS,[$1]) + AC_RUN_LOG([: FLAGS="$FLAGS"]) + ]) +AS_VAR_POPDEF([FLAGS])dnl +])dnl AX_APPEND_FLAG diff --git a/m4/ax_append_link_flags.m4 b/m4/ax_append_link_flags.m4 new file mode 100644 index 0000000..6f7f174 --- /dev/null +++ b/m4/ax_append_link_flags.m4 @@ -0,0 +1,65 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_append_link_flags.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_APPEND_LINK_FLAGS([FLAG1 FLAG2 ...], [FLAGS-VARIABLE], [EXTRA-FLAGS], [INPUT]) +# +# DESCRIPTION +# +# For every FLAG1, FLAG2 it is checked whether the linker works with the +# flag. If it does, the flag is added FLAGS-VARIABLE +# +# If FLAGS-VARIABLE is not specified, the linker's flags (LDFLAGS) is +# used. During the check the flag is always added to the linker's flags. +# +# If EXTRA-FLAGS is defined, it is added to the linker's default flags +# when the check is done. The check is thus made with the flags: "LDFLAGS +# EXTRA-FLAGS FLAG". This can for example be used to force the linker to +# issue an error when a bad flag is given. +# +# INPUT gives an alternative input source to AC_COMPILE_IFELSE. +# +# NOTE: This macro depends on the AX_APPEND_FLAG and AX_CHECK_LINK_FLAG. +# Please keep this macro in sync with AX_APPEND_COMPILE_FLAGS. +# +# LICENSE +# +# Copyright (c) 2011 Maarten Bosmans +# +# 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 3 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, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 6 + +AC_DEFUN([AX_APPEND_LINK_FLAGS], +[AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) +AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) +for flag in $1; do + AX_CHECK_LINK_FLAG([$flag], [AX_APPEND_FLAG([$flag], [m4_default([$2], [LDFLAGS])])], [], [$3], [$4]) +done +])dnl AX_APPEND_LINK_FLAGS diff --git a/m4/ax_check_compile_flag.m4 b/m4/ax_check_compile_flag.m4 new file mode 100644 index 0000000..dcabb92 --- /dev/null +++ b/m4/ax_check_compile_flag.m4 @@ -0,0 +1,74 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_check_compile_flag.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CHECK_COMPILE_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) +# +# DESCRIPTION +# +# Check whether the given FLAG works with the current language's compiler +# or gives an error. (Warnings, however, are ignored) +# +# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on +# success/failure. +# +# If EXTRA-FLAGS is defined, it is added to the current language's default +# flags (e.g. CFLAGS) when the check is done. The check is thus made with +# the flags: "CFLAGS EXTRA-FLAGS FLAG". This can for example be used to +# force the compiler to issue an error when a bad flag is given. +# +# INPUT gives an alternative input source to AC_COMPILE_IFELSE. +# +# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this +# macro in sync with AX_CHECK_{PREPROC,LINK}_FLAG. +# +# LICENSE +# +# Copyright (c) 2008 Guido U. Draheim +# Copyright (c) 2011 Maarten Bosmans +# +# 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 3 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, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 5 + +AC_DEFUN([AX_CHECK_COMPILE_FLAG], +[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF +AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_[]_AC_LANG_ABBREV[]flags_$4_$1])dnl +AC_CACHE_CHECK([whether _AC_LANG compiler accepts $1], CACHEVAR, [ + ax_check_save_flags=$[]_AC_LANG_PREFIX[]FLAGS + _AC_LANG_PREFIX[]FLAGS="$[]_AC_LANG_PREFIX[]FLAGS $4 $1" + AC_COMPILE_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], + [AS_VAR_SET(CACHEVAR,[yes])], + [AS_VAR_SET(CACHEVAR,[no])]) + _AC_LANG_PREFIX[]FLAGS=$ax_check_save_flags]) +AS_VAR_IF(CACHEVAR,yes, + [m4_default([$2], :)], + [m4_default([$3], :)]) +AS_VAR_POPDEF([CACHEVAR])dnl +])dnl AX_CHECK_COMPILE_FLAGS diff --git a/m4/ax_check_link_flag.m4 b/m4/ax_check_link_flag.m4 new file mode 100644 index 0000000..819409a --- /dev/null +++ b/m4/ax_check_link_flag.m4 @@ -0,0 +1,74 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_check_link_flag.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_CHECK_LINK_FLAG(FLAG, [ACTION-SUCCESS], [ACTION-FAILURE], [EXTRA-FLAGS], [INPUT]) +# +# DESCRIPTION +# +# Check whether the given FLAG works with the linker or gives an error. +# (Warnings, however, are ignored) +# +# ACTION-SUCCESS/ACTION-FAILURE are shell commands to execute on +# success/failure. +# +# If EXTRA-FLAGS is defined, it is added to the linker's default flags +# when the check is done. The check is thus made with the flags: "LDFLAGS +# EXTRA-FLAGS FLAG". This can for example be used to force the linker to +# issue an error when a bad flag is given. +# +# INPUT gives an alternative input source to AC_LINK_IFELSE. +# +# NOTE: Implementation based on AX_CFLAGS_GCC_OPTION. Please keep this +# macro in sync with AX_CHECK_{PREPROC,COMPILE}_FLAG. +# +# LICENSE +# +# Copyright (c) 2008 Guido U. Draheim +# Copyright (c) 2011 Maarten Bosmans +# +# 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 3 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, see . +# +# As a special exception, the respective Autoconf Macro's copyright owner +# gives unlimited permission to copy, distribute and modify the configure +# scripts that are the output of Autoconf when processing the Macro. You +# need not follow the terms of the GNU General Public License when using +# or distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. +# +# This special exception to the GPL applies to versions of the Autoconf +# Macro released by the Autoconf Archive. When you make and distribute a +# modified version of the Autoconf Macro, you may extend this special +# exception to the GPL to apply to your modified version as well. + +#serial 5 + +AC_DEFUN([AX_CHECK_LINK_FLAG], +[AC_PREREQ(2.64)dnl for _AC_LANG_PREFIX and AS_VAR_IF +AS_VAR_PUSHDEF([CACHEVAR],[ax_cv_check_ldflags_$4_$1])dnl +AC_CACHE_CHECK([whether the linker accepts $1], CACHEVAR, [ + ax_check_save_flags=$LDFLAGS + LDFLAGS="$LDFLAGS $4 $1" + AC_LINK_IFELSE([m4_default([$5],[AC_LANG_PROGRAM()])], + [AS_VAR_SET(CACHEVAR,[yes])], + [AS_VAR_SET(CACHEVAR,[no])]) + LDFLAGS=$ax_check_save_flags]) +AS_VAR_IF(CACHEVAR,yes, + [m4_default([$2], :)], + [m4_default([$3], :)]) +AS_VAR_POPDEF([CACHEVAR])dnl +])dnl AX_CHECK_LINK_FLAGS diff --git a/m4/ax_compiler_flags.m4 b/m4/ax_compiler_flags.m4 new file mode 100644 index 0000000..ddb0456 --- /dev/null +++ b/m4/ax_compiler_flags.m4 @@ -0,0 +1,158 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_compiler_flags.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_COMPILER_FLAGS([CFLAGS-VARIABLE], [LDFLAGS-VARIABLE], [IS-RELEASE], [EXTRA-BASE-CFLAGS], [EXTRA-YES-CFLAGS], [UNUSED], [UNUSED], [UNUSED], [EXTRA-BASE-LDFLAGS], [EXTRA-YES-LDFLAGS], [UNUSED], [UNUSED], [UNUSED]) +# +# DESCRIPTION +# +# Check for the presence of an --enable-compile-warnings option to +# configure, defaulting to "error" in normal operation, or "yes" if +# IS-RELEASE is equal to "yes". Return the value in the variable +# $ax_enable_compile_warnings. +# +# Depending on the value of --enable-compile-warnings, different compiler +# warnings are checked to see if they work with the current compiler and, +# if so, are appended to CFLAGS-VARIABLE and LDFLAGS-VARIABLE. This +# allows a consistent set of baseline compiler warnings to be used across +# a code base, irrespective of any warnings enabled locally by individual +# developers. By standardising the warnings used by all developers of a +# project, the project can commit to a zero-warnings policy, using -Werror +# to prevent compilation if new warnings are introduced. This makes +# catching bugs which are flagged by warnings a lot easier. +# +# By providing a consistent --enable-compile-warnings argument across all +# projects using this macro, continuous integration systems can easily be +# configured the same for all projects. Automated systems or build +# systems aimed at beginners may want to pass the --disable-Werror +# argument to unconditionally prevent warnings being fatal. +# +# --enable-compile-warnings can take the values: +# +# * no: Base compiler warnings only; not even -Wall. +# * yes: The above, plus a broad range of useful warnings. +# * error: The above, plus -Werror so that all warnings are fatal. +# Use --disable-Werror to override this and disable fatal +# warnings. +# +# The set of base and enabled flags can be augmented using the +# EXTRA-*-CFLAGS and EXTRA-*-LDFLAGS variables, which are tested and +# appended to the output variable if --enable-compile-warnings is not +# "no". Flags should not be disabled using these arguments, as the entire +# point of AX_COMPILER_FLAGS is to enforce a consistent set of useful +# compiler warnings on code, using warnings which have been chosen for low +# false positive rates. If a compiler emits false positives for a +# warning, a #pragma should be used in the code to disable the warning +# locally. See: +# +# https://gcc.gnu.org/onlinedocs/gcc-4.9.2/gcc/Diagnostic-Pragmas.html#Diagnostic-Pragmas +# +# The EXTRA-* variables should only be used to supply extra warning flags, +# and not general purpose compiler flags, as they are controlled by +# configure options such as --disable-Werror. +# +# IS-RELEASE can be used to disable -Werror when making a release, which +# is useful for those hairy moments when you just want to get the release +# done as quickly as possible. Set it to "yes" to disable -Werror. By +# default, it uses the value of $ax_is_release, so if you are using the +# AX_IS_RELEASE macro, there is no need to pass this parameter. For +# example: +# +# AX_IS_RELEASE([git-directory]) +# AX_COMPILER_FLAGS() +# +# CFLAGS-VARIABLE defaults to WARN_CFLAGS, and LDFLAGS-VARIABLE defaults +# to WARN_LDFLAGS. Both variables are AC_SUBST-ed by this macro, but must +# be manually added to the CFLAGS and LDFLAGS variables for each target in +# the code base. +# +# If C++ language support is enabled with AC_PROG_CXX, which must occur +# before this macro in configure.ac, warning flags for the C++ compiler +# are AC_SUBST-ed as WARN_CXXFLAGS, and must be manually added to the +# CXXFLAGS variables for each target in the code base. EXTRA-*-CFLAGS can +# be used to augment the base and enabled flags. +# +# Warning flags for g-ir-scanner (from GObject Introspection) are +# AC_SUBST-ed as WARN_SCANNERFLAGS. This variable must be manually added +# to the SCANNERFLAGS variable for each GIR target in the code base. If +# extra g-ir-scanner flags need to be enabled, the AX_COMPILER_FLAGS_GIR +# macro must be invoked manually. +# +# AX_COMPILER_FLAGS may add support for other tools in future, in addition +# to the compiler and linker. No extra EXTRA-* variables will be added +# for those tools, and all extra support will still use the single +# --enable-compile-warnings configure option. For finer grained control +# over the flags for individual tools, use AX_COMPILER_FLAGS_CFLAGS, +# AX_COMPILER_FLAGS_LDFLAGS and AX_COMPILER_FLAGS_* for new tools. +# +# The UNUSED variables date from a previous version of this macro, and are +# automatically appended to the preceding non-UNUSED variable. They should +# be left empty in new uses of the macro. +# +# LICENSE +# +# Copyright (c) 2014, 2015 Philip Withnall +# Copyright (c) 2015 David King +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 14 + +# _AX_COMPILER_FLAGS_LANG([LANGNAME]) +m4_defun([_AX_COMPILER_FLAGS_LANG], +[m4_ifdef([_AX_COMPILER_FLAGS_LANG_]$1[_enabled], [], + [m4_define([_AX_COMPILER_FLAGS_LANG_]$1[_enabled], [])dnl + AX_REQUIRE_DEFINED([AX_COMPILER_FLAGS_]$1[FLAGS])])dnl +]) + +AC_DEFUN([AX_COMPILER_FLAGS],[ + # C support is enabled by default. + _AX_COMPILER_FLAGS_LANG([C]) + # Only enable C++ support if AC_PROG_CXX is called. The redefinition of + # AC_PROG_CXX is so that a fatal error is emitted if this macro is called + # before AC_PROG_CXX, which would otherwise cause no C++ warnings to be + # checked. + AC_PROVIDE_IFELSE([AC_PROG_CXX], + [_AX_COMPILER_FLAGS_LANG([CXX])], + [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[_AX_COMPILER_FLAGS_LANG([CXX])])]) + AX_REQUIRE_DEFINED([AX_COMPILER_FLAGS_LDFLAGS]) + + # Default value for IS-RELEASE is $ax_is_release + ax_compiler_flags_is_release=m4_tolower(m4_normalize(ifelse([$3],, + [$ax_is_release], + [$3]))) + + AC_ARG_ENABLE([compile-warnings], + AS_HELP_STRING([--enable-compile-warnings=@<:@no/yes/error@:>@], + [Enable compiler warnings and errors]),, + [AS_IF([test "$ax_compiler_flags_is_release" = "yes"], + [enable_compile_warnings="yes"], + [enable_compile_warnings="error"])]) + AC_ARG_ENABLE([Werror], + AS_HELP_STRING([--disable-Werror], + [Unconditionally make all compiler warnings non-fatal]),, + [enable_Werror=maybe]) + + # Return the user's chosen warning level + AS_IF([test "$enable_Werror" = "no" -a \ + "$enable_compile_warnings" = "error"],[ + enable_compile_warnings="yes" + ]) + + ax_enable_compile_warnings=$enable_compile_warnings + + AX_COMPILER_FLAGS_CFLAGS([$1],[$ax_compiler_flags_is_release], + [$4],[$5 $6 $7 $8]) + m4_ifdef([_AX_COMPILER_FLAGS_LANG_CXX_enabled], + [AX_COMPILER_FLAGS_CXXFLAGS([WARN_CXXFLAGS], + [$ax_compiler_flags_is_release], + [$4],[$5 $6 $7 $8])]) + AX_COMPILER_FLAGS_LDFLAGS([$2],[$ax_compiler_flags_is_release], + [$9],[$10 $11 $12 $13]) + AX_COMPILER_FLAGS_GIR([WARN_SCANNERFLAGS],[$ax_compiler_flags_is_release]) +])dnl AX_COMPILER_FLAGS diff --git a/m4/ax_compiler_flags_cflags.m4 b/m4/ax_compiler_flags_cflags.m4 new file mode 100644 index 0000000..44d2882 --- /dev/null +++ b/m4/ax_compiler_flags_cflags.m4 @@ -0,0 +1,160 @@ +# ============================================================================= +# https://www.gnu.org/software/autoconf-archive/ax_compiler_flags_cflags.html +# ============================================================================= +# +# SYNOPSIS +# +# AX_COMPILER_FLAGS_CFLAGS([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS]) +# +# DESCRIPTION +# +# Add warning flags for the C compiler to VARIABLE, which defaults to +# WARN_CFLAGS. VARIABLE is AC_SUBST-ed by this macro, but must be +# manually added to the CFLAGS variable for each target in the code base. +# +# This macro depends on the environment set up by AX_COMPILER_FLAGS. +# Specifically, it uses the value of $ax_enable_compile_warnings to decide +# which flags to enable. +# +# LICENSE +# +# Copyright (c) 2014, 2015 Philip Withnall +# Copyright (c) 2017, 2018 Reini Urban +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 16 + +AC_DEFUN([AX_COMPILER_FLAGS_CFLAGS],[ + AC_REQUIRE([AC_PROG_SED]) + AX_REQUIRE_DEFINED([AX_APPEND_COMPILE_FLAGS]) + AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) + AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG]) + + # Variable names + m4_define([ax_warn_cflags_variable], + [m4_normalize(ifelse([$1],,[WARN_CFLAGS],[$1]))]) + + AC_LANG_PUSH([C]) + + AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ + [#ifndef __cplusplus + #error "no C++" + #endif]])], + [ax_compiler_cxx=yes;], + [ax_compiler_cxx=no;]) + + # Always pass -Werror=unknown-warning-option to get Clang to fail on bad + # flags, otherwise they are always appended to the warn_cflags variable, and + # Clang warns on them for every compilation unit. + # If this is passed to GCC, it will explode, so the flag must be enabled + # conditionally. + AX_CHECK_COMPILE_FLAG([-Werror=unknown-warning-option],[ + ax_compiler_flags_test="-Werror=unknown-warning-option" + ],[ + ax_compiler_flags_test="" + ]) + + # Check that -Wno-suggest-attribute=format is supported + AX_CHECK_COMPILE_FLAG([-Wno-suggest-attribute=format],[ + ax_compiler_no_suggest_attribute_flags="-Wno-suggest-attribute=format" + ],[ + ax_compiler_no_suggest_attribute_flags="" + ]) + + # Base flags + AX_APPEND_COMPILE_FLAGS([ dnl + -fno-strict-aliasing dnl + $3 dnl + ],ax_warn_cflags_variable,[$ax_compiler_flags_test]) + + AS_IF([test "$ax_enable_compile_warnings" != "no"],[ + # "yes" flags + AX_APPEND_COMPILE_FLAGS([ dnl + -Wall dnl + -Wextra dnl + -Wundef dnl + -Wwrite-strings dnl + -Wpointer-arith dnl + -Wmissing-declarations dnl + -Wredundant-decls dnl + -Wno-unused-parameter dnl + -Wno-missing-field-initializers dnl + -Wformat=2 dnl + -Wcast-align dnl + -Wformat-nonliteral dnl + -Wformat-security dnl + -Wsign-compare dnl + -Wstrict-aliasing dnl + -Wshadow dnl + -Winline dnl + -Wpacked dnl + -Wmissing-format-attribute dnl + -Wmissing-noreturn dnl + -Winit-self dnl + -Wredundant-decls dnl + -Wmissing-include-dirs dnl + -Wunused-but-set-variable dnl + -Warray-bounds dnl + -Wreturn-type dnl + -Wswitch-enum dnl + -Wswitch-default dnl + -Wduplicated-cond dnl + -Wduplicated-branches dnl + -Wlogical-op dnl + -Wrestrict dnl + -Wnull-dereference dnl + -Wdouble-promotion dnl + $4 dnl + $5 dnl + $6 dnl + $7 dnl + ],ax_warn_cflags_variable,[$ax_compiler_flags_test]) + if test "$ax_compiler_cxx" = "no" ; then + # C-only flags. Warn in C++ + AX_APPEND_COMPILE_FLAGS([ dnl + -Wnested-externs dnl + -Wmissing-prototypes dnl + -Wstrict-prototypes dnl + -Wdeclaration-after-statement dnl + -Wimplicit-function-declaration dnl + -Wold-style-definition dnl + -Wjump-misses-init dnl + ],ax_warn_cflags_variable,[$ax_compiler_flags_test]) + fi + ]) + AS_IF([test "$ax_enable_compile_warnings" = "error"],[ + # "error" flags; -Werror has to be appended unconditionally because + # it's not possible to test for + # + # suggest-attribute=format is disabled because it gives too many false + # positives + AX_APPEND_FLAG([-Werror],ax_warn_cflags_variable) + + AX_APPEND_COMPILE_FLAGS([ dnl + [$ax_compiler_no_suggest_attribute_flags] dnl + ],ax_warn_cflags_variable,[$ax_compiler_flags_test]) + ]) + + # In the flags below, when disabling specific flags, always add *both* + # -Wno-foo and -Wno-error=foo. This fixes the situation where (for example) + # we enable -Werror, disable a flag, and a build bot passes CFLAGS=-Wall, + # which effectively turns that flag back on again as an error. + for flag in $ax_warn_cflags_variable; do + AS_CASE([$flag], + [-Wno-*=*],[], + [-Wno-*],[ + AX_APPEND_COMPILE_FLAGS([-Wno-error=$(AS_ECHO([$flag]) | $SED 's/^-Wno-//')], + ax_warn_cflags_variable, + [$ax_compiler_flags_test]) + ]) + done + + AC_LANG_POP([C]) + + # Substitute the variables + AC_SUBST(ax_warn_cflags_variable) +])dnl AX_COMPILER_FLAGS diff --git a/m4/ax_compiler_flags_gir.m4 b/m4/ax_compiler_flags_gir.m4 new file mode 100644 index 0000000..5b4924a --- /dev/null +++ b/m4/ax_compiler_flags_gir.m4 @@ -0,0 +1,60 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_compiler_flags_gir.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_COMPILER_FLAGS_GIR([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS]) +# +# DESCRIPTION +# +# Add warning flags for the g-ir-scanner (from GObject Introspection) to +# VARIABLE, which defaults to WARN_SCANNERFLAGS. VARIABLE is AC_SUBST-ed +# by this macro, but must be manually added to the SCANNERFLAGS variable +# for each GIR target in the code base. +# +# This macro depends on the environment set up by AX_COMPILER_FLAGS. +# Specifically, it uses the value of $ax_enable_compile_warnings to decide +# which flags to enable. +# +# LICENSE +# +# Copyright (c) 2015 Philip Withnall +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 6 + +AC_DEFUN([AX_COMPILER_FLAGS_GIR],[ + AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) + + # Variable names + m4_define([ax_warn_scannerflags_variable], + [m4_normalize(ifelse([$1],,[WARN_SCANNERFLAGS],[$1]))]) + + # Base flags + AX_APPEND_FLAG([$3],ax_warn_scannerflags_variable) + + AS_IF([test "$ax_enable_compile_warnings" != "no"],[ + # "yes" flags + AX_APPEND_FLAG([ dnl + --warn-all dnl + $4 dnl + $5 dnl + $6 dnl + $7 dnl + ],ax_warn_scannerflags_variable) + ]) + AS_IF([test "$ax_enable_compile_warnings" = "error"],[ + # "error" flags + AX_APPEND_FLAG([ dnl + --warn-error dnl + ],ax_warn_scannerflags_variable) + ]) + + # Substitute the variables + AC_SUBST(ax_warn_scannerflags_variable) +])dnl AX_COMPILER_FLAGS diff --git a/m4/ax_compiler_flags_ldflags.m4 b/m4/ax_compiler_flags_ldflags.m4 new file mode 100644 index 0000000..976d119 --- /dev/null +++ b/m4/ax_compiler_flags_ldflags.m4 @@ -0,0 +1,111 @@ +# ============================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_compiler_flags_ldflags.html +# ============================================================================== +# +# SYNOPSIS +# +# AX_COMPILER_FLAGS_LDFLAGS([VARIABLE], [IS-RELEASE], [EXTRA-BASE-FLAGS], [EXTRA-YES-FLAGS]) +# +# DESCRIPTION +# +# Add warning flags for the linker to VARIABLE, which defaults to +# WARN_LDFLAGS. VARIABLE is AC_SUBST-ed by this macro, but must be +# manually added to the LDFLAGS variable for each target in the code base. +# +# This macro depends on the environment set up by AX_COMPILER_FLAGS. +# Specifically, it uses the value of $ax_enable_compile_warnings to decide +# which flags to enable. +# +# LICENSE +# +# Copyright (c) 2014, 2015 Philip Withnall +# Copyright (c) 2017, 2018 Reini Urban +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 9 + +AC_DEFUN([AX_COMPILER_FLAGS_LDFLAGS],[ + AX_REQUIRE_DEFINED([AX_APPEND_LINK_FLAGS]) + AX_REQUIRE_DEFINED([AX_APPEND_FLAG]) + AX_REQUIRE_DEFINED([AX_CHECK_COMPILE_FLAG]) + AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) + + # Variable names + m4_define([ax_warn_ldflags_variable], + [m4_normalize(ifelse([$1],,[WARN_LDFLAGS],[$1]))]) + + # Always pass -Werror=unknown-warning-option to get Clang to fail on bad + # flags, otherwise they are always appended to the warn_ldflags variable, + # and Clang warns on them for every compilation unit. + # If this is passed to GCC, it will explode, so the flag must be enabled + # conditionally. + AX_CHECK_COMPILE_FLAG([-Werror=unknown-warning-option],[ + ax_compiler_flags_test="-Werror=unknown-warning-option" + ],[ + ax_compiler_flags_test="" + ]) + + AX_CHECK_LINK_FLAG([-Wl,--as-needed], [ + AX_APPEND_LINK_FLAGS([-Wl,--as-needed], + [AM_LDFLAGS],[$ax_compiler_flags_test]) + ]) + AX_CHECK_LINK_FLAG([-Wl,-z,relro], [ + AX_APPEND_LINK_FLAGS([-Wl,-z,relro], + [AM_LDFLAGS],[$ax_compiler_flags_test]) + ]) + AX_CHECK_LINK_FLAG([-Wl,-z,now], [ + AX_APPEND_LINK_FLAGS([-Wl,-z,now], + [AM_LDFLAGS],[$ax_compiler_flags_test]) + ]) + AX_CHECK_LINK_FLAG([-Wl,-z,noexecstack], [ + AX_APPEND_LINK_FLAGS([-Wl,-z,noexecstack], + [AM_LDFLAGS],[$ax_compiler_flags_test]) + ]) + # textonly, retpolineplt not yet + + # macOS and cygwin linker do not have --as-needed + AX_CHECK_LINK_FLAG([-Wl,--no-as-needed], [ + ax_compiler_flags_as_needed_option="-Wl,--no-as-needed" + ], [ + ax_compiler_flags_as_needed_option="" + ]) + + # macOS linker speaks with a different accent + ax_compiler_flags_fatal_warnings_option="" + AX_CHECK_LINK_FLAG([-Wl,--fatal-warnings], [ + ax_compiler_flags_fatal_warnings_option="-Wl,--fatal-warnings" + ]) + AX_CHECK_LINK_FLAG([-Wl,-fatal_warnings], [ + ax_compiler_flags_fatal_warnings_option="-Wl,-fatal_warnings" + ]) + + # Base flags + AX_APPEND_LINK_FLAGS([ dnl + $ax_compiler_flags_as_needed_option dnl + $3 dnl + ],ax_warn_ldflags_variable,[$ax_compiler_flags_test]) + + AS_IF([test "$ax_enable_compile_warnings" != "no"],[ + # "yes" flags + AX_APPEND_LINK_FLAGS([$4 $5 $6 $7], + ax_warn_ldflags_variable, + [$ax_compiler_flags_test]) + ]) + AS_IF([test "$ax_enable_compile_warnings" = "error"],[ + # "error" flags; -Werror has to be appended unconditionally because + # it's not possible to test for + # + # suggest-attribute=format is disabled because it gives too many false + # positives + AX_APPEND_LINK_FLAGS([ dnl + $ax_compiler_flags_fatal_warnings_option dnl + ],ax_warn_ldflags_variable,[$ax_compiler_flags_test]) + ]) + + # Substitute the variables + AC_SUBST(ax_warn_ldflags_variable) +])dnl AX_COMPILER_FLAGS diff --git a/m4/ax_is_release.m4 b/m4/ax_is_release.m4 new file mode 100644 index 0000000..9097ddb --- /dev/null +++ b/m4/ax_is_release.m4 @@ -0,0 +1,80 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_is_release.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_IS_RELEASE(POLICY) +# +# DESCRIPTION +# +# Determine whether the code is being configured as a release, or from +# git. Set the ax_is_release variable to 'yes' or 'no'. +# +# If building a release version, it is recommended that the configure +# script disable compiler errors and debug features, by conditionalising +# them on the ax_is_release variable. If building from git, these +# features should be enabled. +# +# The POLICY parameter specifies how ax_is_release is determined. It can +# take the following values: +# +# * git-directory: ax_is_release will be 'no' if a '.git' directory exists +# * minor-version: ax_is_release will be 'no' if the minor version number +# in $PACKAGE_VERSION is odd; this assumes +# $PACKAGE_VERSION follows the 'major.minor.micro' scheme +# * micro-version: ax_is_release will be 'no' if the micro version number +# in $PACKAGE_VERSION is odd; this assumes +# $PACKAGE_VERSION follows the 'major.minor.micro' scheme +# * dash-version: ax_is_release will be 'no' if there is a dash '-' +# in $PACKAGE_VERSION, for example 1.2-pre3, 1.2.42-a8b9 +# or 2.0-dirty (in particular this is suitable for use +# with git-version-gen) +# * always: ax_is_release will always be 'yes' +# * never: ax_is_release will always be 'no' +# +# Other policies may be added in future. +# +# LICENSE +# +# Copyright (c) 2015 Philip Withnall +# Copyright (c) 2016 Collabora Ltd. +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. + +#serial 7 + +AC_DEFUN([AX_IS_RELEASE],[ + AC_BEFORE([AC_INIT],[$0]) + + m4_case([$1], + [git-directory],[ + # $is_release = (.git directory does not exist) + AS_IF([test -d ${srcdir}/.git],[ax_is_release=no],[ax_is_release=yes]) + ], + [minor-version],[ + # $is_release = ($minor_version is even) + minor_version=`echo "$PACKAGE_VERSION" | sed 's/[[^.]][[^.]]*.\([[^.]][[^.]]*\).*/\1/'` + AS_IF([test "$(( $minor_version % 2 ))" -ne 0], + [ax_is_release=no],[ax_is_release=yes]) + ], + [micro-version],[ + # $is_release = ($micro_version is even) + micro_version=`echo "$PACKAGE_VERSION" | sed 's/[[^.]]*\.[[^.]]*\.\([[^.]]*\).*/\1/'` + AS_IF([test "$(( $micro_version % 2 ))" -ne 0], + [ax_is_release=no],[ax_is_release=yes]) + ], + [dash-version],[ + # $is_release = ($PACKAGE_VERSION has a dash) + AS_CASE([$PACKAGE_VERSION], + [*-*], [ax_is_release=no], + [*], [ax_is_release=yes]) + ], + [always],[ax_is_release=yes], + [never],[ax_is_release=no], + [ + AC_MSG_ERROR([Invalid policy. Valid policies: git-directory, minor-version, micro-version, dash-version, always, never.]) + ]) +]) diff --git a/m4/ax_pkg_check_modules.m4 b/m4/ax_pkg_check_modules.m4 new file mode 100644 index 0000000..760ffaf --- /dev/null +++ b/m4/ax_pkg_check_modules.m4 @@ -0,0 +1,69 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_pkg_check_modules.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_PKG_CHECK_MODULES(PREFIX, PUBLIC-MODULES, PRIVATE-MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND], [PUBLIC-VARIABLE], [PRIVATE-VARIABLE]) +# +# DESCRIPTION +# +# A wrapper around PKG_CHECK_MODULES which splits the list of modules into +# public and private dependencies, and produces two variables listing the +# dependencies across all invocations of AX_PKG_CHECK_MODULES. These two +# variables are exposed via AC_SUBST, and should be used in a pkg-config +# file as the substituted values for Requires and Requires.private. +# +# The PREFIX, PUBLIC-MODULES and PRIVATE-MODULES arguments should be +# specified as for PKG_CHECK_MODULES, with the concatenation of +# PUBLIC-MODULES and PRIVATE-MODULES equaling the LIST-OF-MODULES from +# PKG_CHECK_MODULES. The ACTION-IF-FOUND and ACTION-IF-NOT-FOUND +# arguments are optional, and should also be specified as for +# PKG_CHECK_MODULES. ACTION-IF-FOUND is evaluated if the full +# LIST-OF-MODULES is found; ACTION-IF-NOT-FOUND similarly. +# +# PUBLIC-VARIABLE defaults to AX_PACKAGE_REQUIRES, and PRIVATE-VARIABLE +# defaults to AX_PACKAGE_REQUIRES_PRIVATE. Both variables are AC_SUBST-ed +# by this macro. +# +# For example: +# +# AX_PKG_CHECK_MODULES([GLIB],[glib-2.0 gio-2.0],[gthread-2.0]) +# AX_PKG_CHECK_MODULES([DBUS],[],[dbus-glib-1 >= 0.98 dbus-1]) +# +# results in the substitutions: +# +# AX_PACKAGE_REQUIRES="glib-2.0 gio-2.0" +# AX_PACKAGE_REQUIRES_PRIVATE="gthread-2.0 dbus-glib-1 >= 0.98 dbus-1" +# +# and can be used with a template pkg-config file (.pc.in) using: +# +# Requires: @AX_PACKAGE_REQUIRES@ +# Requires.private: @AX_PACKAGE_REQUIRES_PRIVATE@ +# +# LICENSE +# +# Copyright (c) 2014 Philip Withnall +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 4 + +AC_DEFUN([AX_PKG_CHECK_MODULES],[ + m4_define([ax_package_requires], + [m4_default_quoted([$6],[AX_PACKAGE_REQUIRES])]) + m4_define([ax_package_requires_private], + [m4_default_quoted([$7],[AX_PACKAGE_REQUIRES_PRIVATE])]) + + ax_package_requires="$[]ax_package_requires m4_normalize($2)" + ax_package_requires_private="$[]ax_package_requires_private m4_normalize($3)" + + PKG_CHECK_MODULES([$1],[$2 $3],[$4],[$5]) + + # Substitute output. + AC_SUBST(ax_package_requires) + AC_SUBST(ax_package_requires_private) +])dnl AX_PKG_CHECK_MODULES diff --git a/m4/ax_require_defined.m4 b/m4/ax_require_defined.m4 new file mode 100644 index 0000000..17c3eab --- /dev/null +++ b/m4/ax_require_defined.m4 @@ -0,0 +1,37 @@ +# =========================================================================== +# https://www.gnu.org/software/autoconf-archive/ax_require_defined.html +# =========================================================================== +# +# SYNOPSIS +# +# AX_REQUIRE_DEFINED(MACRO) +# +# DESCRIPTION +# +# AX_REQUIRE_DEFINED is a simple helper for making sure other macros have +# been defined and thus are available for use. This avoids random issues +# where a macro isn't expanded. Instead the configure script emits a +# non-fatal: +# +# ./configure: line 1673: AX_CFLAGS_WARN_ALL: command not found +# +# It's like AC_REQUIRE except it doesn't expand the required macro. +# +# Here's an example: +# +# AX_REQUIRE_DEFINED([AX_CHECK_LINK_FLAG]) +# +# LICENSE +# +# Copyright (c) 2014 Mike Frysinger +# +# Copying and distribution of this file, with or without modification, are +# permitted in any medium without royalty provided the copyright notice +# and this notice are preserved. This file is offered as-is, without any +# warranty. + +#serial 2 + +AC_DEFUN([AX_REQUIRE_DEFINED], [dnl + m4_ifndef([$1], [m4_fatal([macro ]$1[ is not defined; is a m4 file missing?])]) +])dnl AX_REQUIRE_DEFINED diff --git a/m4/gettext.m4 b/m4/gettext.m4 new file mode 100644 index 0000000..eef5073 --- /dev/null +++ b/m4/gettext.m4 @@ -0,0 +1,420 @@ +# gettext.m4 serial 68 (gettext-0.19.8) +dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. +dnl +dnl This file 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 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-2006, 2008-2010. + +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(ifelse([$1], [], [old])[]ifelse([$1], [no-libtool], [old]), [old], + [AC_DIAGNOSE([obsolete], [Use of AM_GNU_GETTEXT without [external] argument is deprecated.])]) + 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], + ifdef([AM_GNU_GETTEXT_][INTL_SUBDIR], [yes], [no]), + [yes])) + define([gt_libtool_suffix_prefix], ifelse([$1], [use-libtool], [l], [])) + gt_NEEDS_INIT + AM_GNU_GETTEXT_NEED([$2]) + + 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 { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "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 Sometimes, on Mac OS X, libintl requires linking with CoreFoundation. + gt_INTL_MACOSX + + dnl Set USE_NLS. + AC_REQUIRE([AM_NLS]) + + ifelse(gt_included_intl, yes, [ + BUILD_INCLUDED_LIBINTL=no + USE_INCLUDED_LIBINTL=no + ]) + LIBINTL= + LTLIBINTL= + POSUB= + + dnl Add a version number to the cache macros. + case " $gt_needs " in + *" need-formatstring-macros "*) gt_api_version=3 ;; + *" need-ngettext "*) gt_api_version=2 ;; + *) gt_api_version=1 ;; + esac + gt_func_gnugettext_libc="gt_cv_func_gnugettext${gt_api_version}_libc" + gt_func_gnugettext_libintl="gt_cv_func_gnugettext${gt_api_version}_libintl" + + 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. + + if test $gt_api_version -ge 3; then + gt_revision_test_code=' +#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 +' + else + gt_revision_test_code= + fi + if test $gt_api_version -ge 2; then + gt_expression_test_code=' + * ngettext ("", "", 0)' + else + gt_expression_test_code= + fi + + AC_CACHE_CHECK([for GNU gettext in libc], [$gt_func_gnugettext_libc], + [AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern int *_nl_domain_bindings; +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_domain_bindings) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + ]])], + [eval "$gt_func_gnugettext_libc=yes"], + [eval "$gt_func_gnugettext_libc=no"])]) + + if { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" != "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_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_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + ]])], + [eval "$gt_func_gnugettext_libintl=yes"], + [eval "$gt_func_gnugettext_libintl=no"]) + dnl Now see whether libintl exists and depends on libiconv. + if { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" != yes; } && test -n "$LIBICONV"; then + LIBS="$LIBS $LIBICONV" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#ifndef __GNU_GETTEXT_SUPPORTED_REVISION +extern int _nl_msg_cat_cntr; +extern +#ifdef __cplusplus +"C" +#endif +const char *_nl_expand_alias (const char *); +#define __GNU_GETTEXT_SYMBOL_EXPRESSION (_nl_msg_cat_cntr + *_nl_expand_alias ("")) +#else +#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 +#endif +$gt_revision_test_code + ]], + [[ +bindtextdomain ("", ""); +return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION + ]])], + [LIBINTL="$LIBINTL $LIBICONV" + LTLIBINTL="$LTLIBINTL $LTLIBICONV" + eval "$gt_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 { eval "gt_val=\$$gt_func_gnugettext_libc"; test "$gt_val" = "yes"; } \ + || { { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "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 $LIBTHREAD" + LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_libtool_suffix_prefix[]a $LTLIBICONV $LTLIBTHREAD" + LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` + fi + + CATOBJEXT= + 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 -n "$INTL_MACOSX_LIBS"; then + if test "$gt_use_preinstalled_gnugettext" = "yes" \ + || test "$nls_cv_use_gnu_gettext" = "yes"; then + dnl Some extra flags are needed during linking. + LIBINTL="$LIBINTL $INTL_MACOSX_LIBS" + LTLIBINTL="$LTLIBINTL $INTL_MACOSX_LIBS" + fi + 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 { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "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 { eval "gt_val=\$$gt_func_gnugettext_libintl"; test "$gt_val" = "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. + INTLOBJS= + 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 gt_NEEDS_INIT ensures that the gt_needs variable is initialized. +m4_define([gt_NEEDS_INIT], +[ + m4_divert_text([DEFAULTS], [gt_needs=]) + m4_define([gt_NEEDS_INIT], []) +]) + + +dnl Usage: AM_GNU_GETTEXT_NEED([NEEDSYMBOL]) +AC_DEFUN([AM_GNU_GETTEXT_NEED], +[ + m4_divert_text([INIT_PREPARE], [gt_needs="$gt_needs $1"]) +]) + + +dnl Usage: AM_GNU_GETTEXT_VERSION([gettext-version]) +AC_DEFUN([AM_GNU_GETTEXT_VERSION], []) + + +dnl Usage: AM_GNU_GETTEXT_REQUIRE_VERSION([gettext-version]) +AC_DEFUN([AM_GNU_GETTEXT_REQUIRE_VERSION], []) diff --git a/m4/gsettings.m4 b/m4/gsettings.m4 new file mode 100644 index 0000000..03c16fb --- /dev/null +++ b/m4/gsettings.m4 @@ -0,0 +1,86 @@ +# Increment this whenever this file is changed. +#serial 1 + +dnl GLIB_GSETTINGS +dnl Defines GSETTINGS_SCHEMAS_INSTALL which controls whether +dnl the schema should be compiled +dnl + +AC_DEFUN([GLIB_GSETTINGS], +[ + m4_pattern_allow([AM_V_GEN]) + AC_ARG_ENABLE(schemas-compile, + AS_HELP_STRING([--disable-schemas-compile], + [Disable regeneration of gschemas.compiled on install]), + [case ${enableval} in + yes) GSETTINGS_DISABLE_SCHEMAS_COMPILE="" ;; + no) GSETTINGS_DISABLE_SCHEMAS_COMPILE="1" ;; + *) AC_MSG_ERROR([bad value ${enableval} for --enable-schemas-compile]) ;; + esac]) + AC_SUBST([GSETTINGS_DISABLE_SCHEMAS_COMPILE]) + PKG_PROG_PKG_CONFIG([0.16]) + AC_SUBST(gsettingsschemadir, [${datadir}/glib-2.0/schemas]) + if test x$cross_compiling != xyes; then + GLIB_COMPILE_SCHEMAS=`$PKG_CONFIG --variable glib_compile_schemas gio-2.0` + else + AC_PATH_PROG(GLIB_COMPILE_SCHEMAS, glib-compile-schemas) + fi + AC_SUBST(GLIB_COMPILE_SCHEMAS) + if test "x$GLIB_COMPILE_SCHEMAS" = "x"; then + ifelse([$2],,[AC_MSG_ERROR([glib-compile-schemas not found.])],[$2]) + else + ifelse([$1],,[:],[$1]) + fi + + GSETTINGS_RULES=' +.PHONY : uninstall-gsettings-schemas install-gsettings-schemas clean-gsettings-schemas + +mostlyclean-am: clean-gsettings-schemas + +gsettings__enum_file = $(addsuffix .enums.xml,$(gsettings_ENUM_NAMESPACE)) + +%.gschema.valid: %.gschema.xml $(gsettings__enum_file) + $(AM_V_GEN) $(GLIB_COMPILE_SCHEMAS) --strict --dry-run $(addprefix --schema-file=,$(gsettings__enum_file)) --schema-file=$< && mkdir -p [$](@D) && touch [$]@ + +all-am: $(gsettings_SCHEMAS:.xml=.valid) +uninstall-am: uninstall-gsettings-schemas +install-data-am: install-gsettings-schemas + +.SECONDARY: $(gsettings_SCHEMAS) + +install-gsettings-schemas: $(gsettings_SCHEMAS) $(gsettings__enum_file) + @$(NORMAL_INSTALL) + if test -n "$^"; then \ + test -z "$(gsettingsschemadir)" || $(MKDIR_P) "$(DESTDIR)$(gsettingsschemadir)"; \ + $(INSTALL_DATA) $^ "$(DESTDIR)$(gsettingsschemadir)"; \ + test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir); \ + fi + +uninstall-gsettings-schemas: + @$(NORMAL_UNINSTALL) + @list='\''$(gsettings_SCHEMAS) $(gsettings__enum_file)'\''; test -n "$(gsettingsschemadir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e '\''s|^.*/||'\''`; \ + test -n "$$files" || exit 0; \ + echo " ( cd '\''$(DESTDIR)$(gsettingsschemadir)'\'' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(gsettingsschemadir)" && rm -f $$files + test -n "$(GSETTINGS_DISABLE_SCHEMAS_COMPILE)$(DESTDIR)" || $(GLIB_COMPILE_SCHEMAS) $(gsettingsschemadir) + +clean-gsettings-schemas: + rm -f $(gsettings_SCHEMAS:.xml=.valid) $(gsettings__enum_file) + +ifdef gsettings_ENUM_NAMESPACE +$(gsettings__enum_file): $(gsettings_ENUM_FILES) + $(AM_V_GEN) glib-mkenums --comments '\'''\'' --fhead "" --vhead " <@type@ id='\''$(gsettings_ENUM_NAMESPACE).@EnumName@'\''>" --vprod " " --vtail " " --ftail "" [$]^ > [$]@.tmp && mv [$]@.tmp [$]@ +endif +' + _GSETTINGS_SUBST(GSETTINGS_RULES) +]) + +dnl _GSETTINGS_SUBST(VARIABLE) +dnl Abstract macro to do either _AM_SUBST_NOTMAKE or AC_SUBST +AC_DEFUN([_GSETTINGS_SUBST], +[ +AC_SUBST([$1]) +m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([$1])]) +] +) diff --git a/m4/gtk-doc.m4 b/m4/gtk-doc.m4 new file mode 100644 index 0000000..2d12f01 --- /dev/null +++ b/m4/gtk-doc.m4 @@ -0,0 +1,113 @@ +# -*- mode: autoconf -*- +# +# gtk-doc.m4 - configure macro to check for gtk-doc +# Copyright (C) 2003 James Henstridge +# 2007-2017 Stefan Sauer +# +# 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 3 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, see . +# +# As a special exception, the above copyright owner gives unlimited +# permission to copy, distribute and modify the configure scripts that +# are the output of Autoconf when processing the Macro. You need not +# follow the terms of the GNU General Public License when using or +# distributing such scripts, even though portions of the text of the +# Macro appear in them. The GNU General Public License (GPL) does govern +# all other use of the material that constitutes the Autoconf Macro. + +# serial 2 + +dnl Usage: +dnl GTK_DOC_CHECK([minimum-gtk-doc-version]) +AC_DEFUN([GTK_DOC_CHECK], +[ + AC_REQUIRE([PKG_PROG_PKG_CONFIG]) + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + + ifelse([$1],[],[gtk_doc_requires="gtk-doc"],[gtk_doc_requires="gtk-doc >= $1"]) + AC_MSG_CHECKING([for gtk-doc]) + PKG_CHECK_EXISTS([$gtk_doc_requires],[have_gtk_doc=yes],[have_gtk_doc=no]) + AC_MSG_RESULT($have_gtk_doc) + + if test "$have_gtk_doc" = "no"; then + AC_MSG_WARN([ + You will not be able to create source packages with 'make dist' + because $gtk_doc_requires is not found.]) + fi + + dnl check for tools we added during development + dnl Use AC_CHECK_PROG to avoid the check target using an absolute path that + dnl may not be writable by the user. Currently, automake requires that the + dnl test name must end in '.test'. + dnl https://bugzilla.gnome.org/show_bug.cgi?id=701638 + AC_CHECK_PROG([GTKDOC_CHECK],[gtkdoc-check],[gtkdoc-check.test]) + AC_PATH_PROG([GTKDOC_CHECK_PATH],[gtkdoc-check]) + AC_PATH_PROGS([GTKDOC_REBASE],[gtkdoc-rebase],[true]) + AC_PATH_PROG([GTKDOC_MKPDF],[gtkdoc-mkpdf]) + + dnl for overriding the documentation installation directory + AC_ARG_WITH([html-dir], + AS_HELP_STRING([--with-html-dir=PATH], [path to installed docs]),, + [with_html_dir='${datadir}/gtk-doc/html']) + HTML_DIR="$with_html_dir" + AC_SUBST([HTML_DIR]) + + dnl enable/disable documentation building + AC_ARG_ENABLE([gtk-doc], + AS_HELP_STRING([--enable-gtk-doc], + [use gtk-doc to build documentation [[default=no]]]),, + [enable_gtk_doc=no]) + + AC_MSG_CHECKING([whether to build gtk-doc documentation]) + AC_MSG_RESULT($enable_gtk_doc) + + if test "x$enable_gtk_doc" = "xyes" && test "$have_gtk_doc" = "no"; then + AC_MSG_ERROR([ + You must have $gtk_doc_requires installed to build documentation for + $PACKAGE_NAME. Please install gtk-doc or disable building the + documentation by adding '--disable-gtk-doc' to '[$]0'.]) + fi + + dnl don't check for glib if we build glib + if test "x$PACKAGE_NAME" != "xglib"; then + dnl don't fail if someone does not have glib + PKG_CHECK_MODULES(GTKDOC_DEPS, glib-2.0 >= 2.10.0 gobject-2.0 >= 2.10.0,,[:]) + fi + + dnl enable/disable output formats + AC_ARG_ENABLE([gtk-doc-html], + AS_HELP_STRING([--enable-gtk-doc-html], + [build documentation in html format [[default=yes]]]),, + [enable_gtk_doc_html=yes]) + AC_ARG_ENABLE([gtk-doc-pdf], + AS_HELP_STRING([--enable-gtk-doc-pdf], + [build documentation in pdf format [[default=no]]]),, + [enable_gtk_doc_pdf=no]) + + if test -z "$GTKDOC_MKPDF"; then + enable_gtk_doc_pdf=no + fi + + if test -z "$AM_DEFAULT_VERBOSITY"; then + AM_DEFAULT_VERBOSITY=1 + fi + AC_SUBST([AM_DEFAULT_VERBOSITY]) + + AM_CONDITIONAL([HAVE_GTK_DOC], [test x$have_gtk_doc = xyes]) + AM_CONDITIONAL([ENABLE_GTK_DOC], [test x$enable_gtk_doc = xyes]) + AM_CONDITIONAL([GTK_DOC_BUILD_HTML], [test x$enable_gtk_doc_html = xyes]) + AM_CONDITIONAL([GTK_DOC_BUILD_PDF], [test x$enable_gtk_doc_pdf = xyes]) + AM_CONDITIONAL([GTK_DOC_USE_LIBTOOL], [test -n "$LIBTOOL"]) + AM_CONDITIONAL([GTK_DOC_USE_REBASE], [test -n "$GTKDOC_REBASE"]) +]) diff --git a/m4/iconv.m4 b/m4/iconv.m4 new file mode 100644 index 0000000..aa159c5 --- /dev/null +++ b/m4/iconv.m4 @@ -0,0 +1,271 @@ +# iconv.m4 serial 19 (gettext-0.18.2) +dnl Copyright (C) 2000-2002, 2007-2014, 2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +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). + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles + + 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_LINK_IFELSE will then fail, the second AC_LINK_IFELSE 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_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#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_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[ +#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_CACHE_CHECK([for working iconv], [am_cv_func_iconv_works], [ + dnl This tests against bugs in AIX 5.1, AIX 6.1..7.1, HP-UX 11.11, + dnl Solaris 10. + am_save_LIBS="$LIBS" + if test $am_cv_lib_iconv = yes; then + LIBS="$LIBS $LIBICONV" + fi + am_cv_func_iconv_works=no + for ac_iconv_const in '' 'const'; do + AC_RUN_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#include + +#ifndef ICONV_CONST +# define ICONV_CONST $ac_iconv_const +#endif + ]], + [[int result = 0; + /* Test against AIX 5.1 bug: Failures are not distinguishable from successful + returns. */ + { + iconv_t cd_utf8_to_88591 = iconv_open ("ISO8859-1", "UTF-8"); + if (cd_utf8_to_88591 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ + char buf[10]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_utf8_to_88591, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res == 0) + result |= 1; + iconv_close (cd_utf8_to_88591); + } + } + /* Test against Solaris 10 bug: Failures are not distinguishable from + successful returns. */ + { + iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); + if (cd_ascii_to_88591 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\263"; + char buf[10]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_ascii_to_88591, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res == 0) + result |= 2; + iconv_close (cd_ascii_to_88591); + } + } + /* Test against AIX 6.1..7.1 bug: Buffer overrun. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\304"; + static char buf[2] = { (char)0xDE, (char)0xAD }; + ICONV_CONST char *inptr = input; + size_t inbytesleft = 1; + char *outptr = buf; + size_t outbytesleft = 1; + size_t res = iconv (cd_88591_to_utf8, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) + result |= 4; + iconv_close (cd_88591_to_utf8); + } + } +#if 0 /* This bug could be worked around by the caller. */ + /* Test against HP-UX 11.11 bug: Positive return value instead of 0. */ + { + iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); + if (cd_88591_to_utf8 != (iconv_t)(-1)) + { + static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen ohne Augenma\337"; + char buf[50]; + ICONV_CONST char *inptr = input; + size_t inbytesleft = strlen (input); + char *outptr = buf; + size_t outbytesleft = sizeof (buf); + size_t res = iconv (cd_88591_to_utf8, + &inptr, &inbytesleft, + &outptr, &outbytesleft); + if ((int)res > 0) + result |= 8; + iconv_close (cd_88591_to_utf8); + } + } +#endif + /* Test against HP-UX 11.11 bug: No converter from EUC-JP to UTF-8 is + provided. */ + if (/* Try standardized names. */ + iconv_open ("UTF-8", "EUC-JP") == (iconv_t)(-1) + /* Try IRIX, OSF/1 names. */ + && iconv_open ("UTF-8", "eucJP") == (iconv_t)(-1) + /* Try AIX names. */ + && iconv_open ("UTF-8", "IBM-eucJP") == (iconv_t)(-1) + /* Try HP-UX names. */ + && iconv_open ("utf8", "eucJP") == (iconv_t)(-1)) + result |= 16; + return result; +]])], + [am_cv_func_iconv_works=yes], , + [case "$host_os" in + aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; + *) am_cv_func_iconv_works="guessing yes" ;; + esac]) + test "$am_cv_func_iconv_works" = no || break + done + LIBS="$am_save_LIBS" + ]) + case "$am_cv_func_iconv_works" in + *no) am_func_iconv=no am_cv_lib_iconv=no ;; + *) am_func_iconv=yes ;; + esac + else + am_func_iconv=no am_cv_lib_iconv=no + fi + if test "$am_func_iconv" = yes; then + AC_DEFINE([HAVE_ICONV], [1], + [Define if you have the iconv() function and it works.]) + 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]) +]) + +dnl Define AM_ICONV using AC_DEFUN_ONCE for Autoconf >= 2.64, in order to +dnl avoid warnings like +dnl "warning: AC_REQUIRE: `AM_ICONV' was expanded before it was required". +dnl This is tricky because of the way 'aclocal' is implemented: +dnl - It requires defining an auxiliary macro whose name ends in AC_DEFUN. +dnl Otherwise aclocal's initial scan pass would miss the macro definition. +dnl - It requires a line break inside the AC_DEFUN_ONCE and AC_DEFUN expansions. +dnl Otherwise aclocal would emit many "Use of uninitialized value $1" +dnl warnings. +m4_define([gl_iconv_AC_DEFUN], + m4_version_prereq([2.64], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [m4_ifdef([gl_00GNULIB], + [[AC_DEFUN_ONCE( + [$1], [$2])]], + [[AC_DEFUN( + [$1], [$2])]])])) +gl_iconv_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_COMPILE_IFELSE( + [AC_LANG_PROGRAM( + [[ +#include +#include +extern +#ifdef __cplusplus +"C" +#endif +#if defined(__STDC__) || defined(_MSC_VER) || 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([ + $am_cv_proto_iconv]) + AC_DEFINE_UNQUOTED([ICONV_CONST], [$am_cv_proto_iconv_arg1], + [Define as const if the declaration of iconv() needs const.]) + dnl Also substitute ICONV_CONST in the gnulib generated . + m4_ifdef([gl_ICONV_H_DEFAULTS], + [AC_REQUIRE([gl_ICONV_H_DEFAULTS]) + if test -n "$am_cv_proto_iconv_arg1"; then + ICONV_CONST="const" + fi + ]) + fi +]) diff --git a/m4/intlmacosx.m4 b/m4/intlmacosx.m4 new file mode 100644 index 0000000..aca924c --- /dev/null +++ b/m4/intlmacosx.m4 @@ -0,0 +1,56 @@ +# intlmacosx.m4 serial 5 (gettext-0.18.2) +dnl Copyright (C) 2004-2014, 2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. +dnl +dnl This file 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 is covered by the GNU General Public License. +dnl They are *not* in the public domain. + +dnl Checks for special options needed on Mac OS X. +dnl Defines INTL_MACOSX_LIBS. +AC_DEFUN([gt_INTL_MACOSX], +[ + dnl Check for API introduced in Mac OS X 10.2. + AC_CACHE_CHECK([for CFPreferencesCopyAppValue], + [gt_cv_func_CFPreferencesCopyAppValue], + [gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[CFPreferencesCopyAppValue(NULL, NULL)]])], + [gt_cv_func_CFPreferencesCopyAppValue=yes], + [gt_cv_func_CFPreferencesCopyAppValue=no]) + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFPreferencesCopyAppValue = yes; then + AC_DEFINE([HAVE_CFPREFERENCESCOPYAPPVALUE], [1], + [Define to 1 if you have the Mac OS X function CFPreferencesCopyAppValue in the CoreFoundation framework.]) + fi + dnl Check for API introduced in Mac OS X 10.3. + AC_CACHE_CHECK([for CFLocaleCopyCurrent], [gt_cv_func_CFLocaleCopyCurrent], + [gt_save_LIBS="$LIBS" + LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" + AC_LINK_IFELSE( + [AC_LANG_PROGRAM( + [[#include ]], + [[CFLocaleCopyCurrent();]])], + [gt_cv_func_CFLocaleCopyCurrent=yes], + [gt_cv_func_CFLocaleCopyCurrent=no]) + LIBS="$gt_save_LIBS"]) + if test $gt_cv_func_CFLocaleCopyCurrent = yes; then + AC_DEFINE([HAVE_CFLOCALECOPYCURRENT], [1], + [Define to 1 if you have the Mac OS X function CFLocaleCopyCurrent in the CoreFoundation framework.]) + fi + INTL_MACOSX_LIBS= + if test $gt_cv_func_CFPreferencesCopyAppValue = yes || test $gt_cv_func_CFLocaleCopyCurrent = yes; then + INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" + fi + AC_SUBST([INTL_MACOSX_LIBS]) +]) diff --git a/m4/introspection.m4 b/m4/introspection.m4 new file mode 100644 index 0000000..d89c3d9 --- /dev/null +++ b/m4/introspection.m4 @@ -0,0 +1,96 @@ +dnl -*- mode: autoconf -*- +dnl Copyright 2009 Johan Dahlin +dnl +dnl This file is free software; the author(s) gives unlimited +dnl permission to copy and/or distribute it, with or without +dnl modifications, as long as this notice is preserved. +dnl + +# serial 1 + +m4_define([_GOBJECT_INTROSPECTION_CHECK_INTERNAL], +[ + AC_BEFORE([AC_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([AM_PROG_LIBTOOL],[$0])dnl setup libtool first + AC_BEFORE([LT_INIT],[$0])dnl setup libtool first + + dnl enable/disable introspection + m4_if([$2], [require], + [dnl + enable_introspection=yes + ],[dnl + AC_ARG_ENABLE(introspection, + AS_HELP_STRING([--enable-introspection[=@<:@no/auto/yes@:>@]], + [Enable introspection for this build]),, + [enable_introspection=auto]) + ])dnl + + AC_MSG_CHECKING([for gobject-introspection]) + + dnl presence/version checking + AS_CASE([$enable_introspection], + [no], [dnl + found_introspection="no (disabled, use --enable-introspection to enable)" + ],dnl + [yes],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0],, + AC_MSG_ERROR([gobject-introspection-1.0 is not installed])) + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], + found_introspection=yes, + AC_MSG_ERROR([You need to have gobject-introspection >= $1 installed to build AC_PACKAGE_NAME])) + ],dnl + [auto],[dnl + PKG_CHECK_EXISTS([gobject-introspection-1.0 >= $1], found_introspection=yes, found_introspection=no) + dnl Canonicalize enable_introspection + enable_introspection=$found_introspection + ],dnl + [dnl + AC_MSG_ERROR([invalid argument passed to --enable-introspection, should be one of @<:@no/auto/yes@:>@]) + ])dnl + + AC_MSG_RESULT([$found_introspection]) + + INTROSPECTION_SCANNER= + INTROSPECTION_COMPILER= + INTROSPECTION_GENERATE= + INTROSPECTION_GIRDIR= + INTROSPECTION_TYPELIBDIR= + if test "x$found_introspection" = "xyes"; then + INTROSPECTION_SCANNER=`$PKG_CONFIG --variable=g_ir_scanner gobject-introspection-1.0` + INTROSPECTION_COMPILER=`$PKG_CONFIG --variable=g_ir_compiler gobject-introspection-1.0` + INTROSPECTION_GENERATE=`$PKG_CONFIG --variable=g_ir_generate gobject-introspection-1.0` + INTROSPECTION_GIRDIR=`$PKG_CONFIG --variable=girdir gobject-introspection-1.0` + INTROSPECTION_TYPELIBDIR="$($PKG_CONFIG --variable=typelibdir gobject-introspection-1.0)" + INTROSPECTION_CFLAGS=`$PKG_CONFIG --cflags gobject-introspection-1.0` + INTROSPECTION_LIBS=`$PKG_CONFIG --libs gobject-introspection-1.0` + INTROSPECTION_MAKEFILE=`$PKG_CONFIG --variable=datadir gobject-introspection-1.0`/gobject-introspection-1.0/Makefile.introspection + fi + AC_SUBST(INTROSPECTION_SCANNER) + AC_SUBST(INTROSPECTION_COMPILER) + AC_SUBST(INTROSPECTION_GENERATE) + AC_SUBST(INTROSPECTION_GIRDIR) + AC_SUBST(INTROSPECTION_TYPELIBDIR) + AC_SUBST(INTROSPECTION_CFLAGS) + AC_SUBST(INTROSPECTION_LIBS) + AC_SUBST(INTROSPECTION_MAKEFILE) + + AM_CONDITIONAL(HAVE_INTROSPECTION, test "x$found_introspection" = "xyes") +]) + + +dnl Usage: +dnl GOBJECT_INTROSPECTION_CHECK([minimum-g-i-version]) + +AC_DEFUN([GOBJECT_INTROSPECTION_CHECK], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1]) +]) + +dnl Usage: +dnl GOBJECT_INTROSPECTION_REQUIRE([minimum-g-i-version]) + + +AC_DEFUN([GOBJECT_INTROSPECTION_REQUIRE], +[ + _GOBJECT_INTROSPECTION_CHECK_INTERNAL([$1], [require]) +]) diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4 new file mode 100644 index 0000000..6209de6 --- /dev/null +++ b/m4/lib-ld.m4 @@ -0,0 +1,119 @@ +# lib-ld.m4 serial 6 +dnl Copyright (C) 1996-2003, 2009-2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +dnl Subroutines of libtool.m4, +dnl with replacements s/_*LT_PATH/AC_LIB_PROG/ and s/lt_/acl_/ to avoid +dnl collision with libtool.m4. + +dnl From libtool-2.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 lds only accept -v. +case `$LD -v 2>&1 /dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +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 $CC]) + 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. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname 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 + acl_save_ifs="$IFS"; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS="$acl_save_ifs" + 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 variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$acl_cv_path_LD" -v 2>&1 = 1.10 to complain if config.rpath is missing. + m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.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" + acl_libext="$acl_cv_libext" + acl_shlibext="$acl_cv_shlibext" + acl_libname_spec="$acl_cv_libname_spec" + acl_library_names_spec="$acl_cv_library_names_spec" + acl_hardcode_libdir_flag_spec="$acl_cv_hardcode_libdir_flag_spec" + acl_hardcode_libdir_separator="$acl_cv_hardcode_libdir_separator" + acl_hardcode_direct="$acl_cv_hardcode_direct" + acl_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_FROMPACKAGE(name, package) +dnl declares that libname comes from the given package. The configure file +dnl will then not have a --with-libname-prefix option but a +dnl --with-package-prefix option. Several libraries can come from the same +dnl package. This declaration must occur before an AC_LIB_LINKFLAGS or similar +dnl macro call that searches for libname. +AC_DEFUN([AC_LIB_FROMPACKAGE], +[ + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) + define([acl_frompackage_]NAME, [$2]) + popdef([NAME]) + pushdef([PACK],[$2]) + pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) + define([acl_libsinpackage_]PACKUP, + m4_ifdef([acl_libsinpackage_]PACKUP, [m4_defn([acl_libsinpackage_]PACKUP)[, ]],)[lib$1]) + popdef([PACKUP]) + popdef([PACK]) +]) + +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. +dnl Also, sets the LIB${NAME}_PREFIX variable to nonempty if libname was found +dnl in ${LIB${NAME}_PREFIX}/$acl_libdirstem. +AC_DEFUN([AC_LIB_LINKFLAGS_BODY], +[ + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) + pushdef([NAME],[m4_translit([$1],[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) + pushdef([PACK],[m4_ifdef([acl_frompackage_]NAME, [acl_frompackage_]NAME, lib[$1])]) + pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], + [ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) + pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PACKUP, lib[$1])]) + dnl Autoconf >= 2.61 supports dots in --with options. + pushdef([P_A_C_K],[m4_if(m4_version_compare(m4_defn([m4_PACKAGE_VERSION]),[2.61]),[-1],[m4_translit(PACK,[.],[_])],PACK)]) + 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_ARG_WITH(P_A_C_K[-prefix], +[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR/lib + --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ 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/$acl_libdirstem" + if test "$acl_libdirstem2" != "$acl_libdirstem" \ + && ! test -d "$withval/$acl_libdirstem"; then + additional_libdir="$withval/$acl_libdirstem2" + fi + 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= + LIB[]NAME[]_PREFIX= + dnl HAVE_LIB${NAME} is an indicator that LIB${NAME}, LTLIB${NAME} have been + dnl computed. So it has to be reset here. + HAVE_LIB[]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= + eval libname=\"$acl_libname_spec\" # typically: libname=lib$name + if test -n "$acl_shlibext"; then + shrext=".$acl_shlibext" # typically: shrext=.so + else + shrext= + fi + if test $use_additional = yes; then + dir="$additional_libdir" + dnl The same code as in the loop below: + dnl First look for a shared library. + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + dnl Then look for a static library. + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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//'` + dnl First look for a shared library. + if test -n "$acl_shlibext"; then + if test -f "$dir/$libname$shrext"; then + found_dir="$dir" + found_so="$dir/$libname$shrext" + else + if test "$acl_library_names_spec" = '$libname$shrext$versuffix'; then + ver=`(cd "$dir" && \ + for f in "$libname$shrext".*; do echo "$f"; done \ + | sed -e "s,^$libname$shrext\\\\.,," \ + | sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,5 \ + | sed 1q ) 2>/dev/null` + if test -n "$ver" && test -f "$dir/$libname$shrext.$ver"; then + found_dir="$dir" + found_so="$dir/$libname$shrext.$ver" + fi + else + eval library_names=\"$acl_library_names_spec\" + for f in $library_names; do + if test -f "$dir/$f"; then + found_dir="$dir" + found_so="$dir/$f" + break + fi + done + fi + fi + fi + dnl Then look for a static library. + if test "X$found_dir" = "X"; then + if test -f "$dir/$libname.$acl_libext"; then + found_dir="$dir" + found_a="$dir/$libname.$acl_libext" + fi + fi + if test "X$found_dir" != "X"; then + if test -f "$dir/$libname.la"; then + found_la="$dir/$libname.la" + 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/$acl_libdirstem" \ + || test "X$found_dir" = "X/usr/$acl_libdirstem2"; 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 "$acl_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 "$acl_hardcode_libdir_flag_spec" && test "$acl_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 "$acl_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 $acl_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 + */$acl_libdirstem | */$acl_libdirstem/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem/"'*$,,'` + if test "$name" = '$1'; then + LIB[]NAME[]_PREFIX="$basedir" + fi + additional_includedir="$basedir/include" + ;; + */$acl_libdirstem2 | */$acl_libdirstem2/) + basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libdirstem2/"'*$,,'` + if test "$name" = '$1'; then + LIB[]NAME[]_PREFIX="$basedir" + fi + 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* | gnu* | k*bsd*-gnu) 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/$acl_libdirstem" \ + && test "X$additional_libdir" != "X/usr/$acl_libdirstem2"; then + haveit= + if test "X$additional_libdir" = "X/usr/local/$acl_libdirstem" \ + || test "X$additional_libdir" = "X/usr/local/$acl_libdirstem2"; then + if test -n "$GCC"; then + case $host_os in + linux* | gnu* | k*bsd*-gnu) 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 "$acl_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:+$acl_hardcode_libdir_separator}$found_dir" + done + dnl Note: acl_hardcode_libdir_flag_spec uses $libdir and $wl. + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_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=\"$acl_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 + popdef([P_A_C_K]) + popdef([PACKLIBS]) + popdef([PACKUP]) + popdef([PACK]) + popdef([NAME]) +]) + +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 +]) + +dnl For those cases where a variable contains several -L and -l options +dnl referring to unknown libraries and directories, this macro determines the +dnl necessary additional linker options for the runtime path. +dnl AC_LIB_LINKFLAGS_FROM_LIBS([LDADDVAR], [LIBSVALUE], [USE-LIBTOOL]) +dnl sets LDADDVAR to linker options needed together with LIBSVALUE. +dnl If USE-LIBTOOL evaluates to non-empty, linking with libtool is assumed, +dnl otherwise linking without libtool is assumed. +AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], +[ + AC_REQUIRE([AC_LIB_RPATH]) + AC_REQUIRE([AC_LIB_PREPARE_MULTILIB]) + $1= + if test "$enable_rpath" != no; then + if test -n "$acl_hardcode_libdir_flag_spec" && test "$acl_hardcode_minus_L" = no; then + dnl Use an explicit option to hardcode directories into the resulting + dnl binary. + rpathdirs= + next= + for opt in $2; do + if test -n "$next"; then + dir="$next" + dnl No need to hardcode the standard /usr/lib. + if test "X$dir" != "X/usr/$acl_libdirstem" \ + && test "X$dir" != "X/usr/$acl_libdirstem2"; then + rpathdirs="$rpathdirs $dir" + fi + next= + else + case $opt in + -L) next=yes ;; + -L*) dir=`echo "X$opt" | sed -e 's,^X-L,,'` + dnl No need to hardcode the standard /usr/lib. + if test "X$dir" != "X/usr/$acl_libdirstem" \ + && test "X$dir" != "X/usr/$acl_libdirstem2"; then + rpathdirs="$rpathdirs $dir" + fi + next= ;; + *) next= ;; + esac + fi + done + if test "X$rpathdirs" != "X"; then + if test -n ""$3""; then + dnl libtool is used for linking. Use -R options. + for dir in $rpathdirs; do + $1="${$1}${$1:+ }-R$dir" + done + else + dnl The linker is used for linking directly. + if test -n "$acl_hardcode_libdir_separator"; then + dnl Weird platform: only the last -rpath option counts, the user + dnl must pass all path elements in one option. + alldirs= + for dir in $rpathdirs; do + alldirs="${alldirs}${alldirs:+$acl_hardcode_libdir_separator}$dir" + done + acl_save_libdir="$libdir" + libdir="$alldirs" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + $1="$flag" + else + dnl The -rpath options are cumulative. + for dir in $rpathdirs; do + acl_save_libdir="$libdir" + libdir="$dir" + eval flag=\"$acl_hardcode_libdir_flag_spec\" + libdir="$acl_save_libdir" + $1="${$1}${$1:+ }$flag" + done + fi + fi + fi + fi + fi + AC_SUBST([$1]) +]) diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4 new file mode 100644 index 0000000..6851031 --- /dev/null +++ b/m4/lib-prefix.m4 @@ -0,0 +1,224 @@ +# lib-prefix.m4 serial 7 (gettext-0.18) +dnl Copyright (C) 2001-2005, 2008-2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. + +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_MULTILIB]) + 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/$acl_libdirstem" + 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* | gnu* | k*bsd*-gnu) 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/$acl_libdirstem"; 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/$acl_libdirstem"; 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" +]) + +dnl AC_LIB_PREPARE_MULTILIB creates +dnl - a variable acl_libdirstem, containing the basename of the libdir, either +dnl "lib" or "lib64" or "lib/64", +dnl - a variable acl_libdirstem2, as a secondary possible value for +dnl acl_libdirstem, either the same as acl_libdirstem or "lib/sparcv9" or +dnl "lib/amd64". +AC_DEFUN([AC_LIB_PREPARE_MULTILIB], +[ + dnl There is no formal standard regarding lib and lib64. + dnl On glibc systems, the current practice is that on a system supporting + dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under + dnl $prefix/lib64 and 32-bit libraries go under $prefix/lib. We determine + dnl the compiler's default mode by looking at the compiler's library search + dnl path. If at least one of its elements ends in /lib64 or points to a + dnl directory whose absolute pathname ends in /lib64, we assume a 64-bit ABI. + dnl Otherwise we use the default, namely "lib". + dnl On Solaris systems, the current practice is that on a system supporting + dnl 32-bit and 64-bit instruction sets or ABIs, 64-bit libraries go under + dnl $prefix/lib/64 (which is a symlink to either $prefix/lib/sparcv9 or + dnl $prefix/lib/amd64) and 32-bit libraries go under $prefix/lib. + AC_REQUIRE([AC_CANONICAL_HOST]) + acl_libdirstem=lib + acl_libdirstem2= + case "$host_os" in + solaris*) + dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Developer's Guide > The Development Environment + dnl . + dnl "Portable Makefiles should refer to any library directories using the 64 symbolic link." + dnl But we want to recognize the sparcv9 or amd64 subdirectory also if the + dnl symlink is missing, so we set acl_libdirstem2 too. + AC_CACHE_CHECK([for 64-bit host], [gl_cv_solaris_64bit], + [AC_EGREP_CPP([sixtyfour bits], [ +#ifdef _LP64 +sixtyfour bits +#endif + ], [gl_cv_solaris_64bit=yes], [gl_cv_solaris_64bit=no]) + ]) + if test $gl_cv_solaris_64bit = yes; then + acl_libdirstem=lib/64 + case "$host_cpu" in + sparc*) acl_libdirstem2=lib/sparcv9 ;; + i*86 | x86_64) acl_libdirstem2=lib/amd64 ;; + esac + fi + ;; + *) + searchpath=`(LC_ALL=C $CC -print-search-dirs) 2>/dev/null | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` + if test -n "$searchpath"; then + acl_save_IFS="${IFS= }"; IFS=":" + for searchdir in $searchpath; do + if test -d "$searchdir"; then + case "$searchdir" in + */lib64/ | */lib64 ) acl_libdirstem=lib64 ;; + */../ | */.. ) + # Better ignore directories of this form. They are misleading. + ;; + *) searchdir=`cd "$searchdir" && pwd` + case "$searchdir" in + */lib64 ) acl_libdirstem=lib64 ;; + esac ;; + esac + fi + done + IFS="$acl_save_IFS" + fi + ;; + esac + test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" +]) diff --git a/m4/libtool.m4 b/m4/libtool.m4 new file mode 100644 index 0000000..a644432 --- /dev/null +++ b/m4/libtool.m4 @@ -0,0 +1,8372 @@ +# libtool.m4 - Configure libtool for the host system. -*-Autoconf-*- +# +# Copyright (C) 1996-2001, 2003-2015 Free Software Foundation, Inc. +# Written by Gordon Matzigkeit, 1996 +# +# 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. + +m4_define([_LT_COPYING], [dnl +# Copyright (C) 2014 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. + +# GNU Libtool 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 of the License, or +# (at your option) any later version. +# +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program or library that is built +# using GNU Libtool, you may include this file under the same +# distribution terms that you use for the rest of that program. +# +# GNU Libtool 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, see . +]) + +# serial 58 LT_INIT + + +# LT_PREREQ(VERSION) +# ------------------ +# Complain and exit if this libtool version is less that VERSION. +m4_defun([LT_PREREQ], +[m4_if(m4_version_compare(m4_defn([LT_PACKAGE_VERSION]), [$1]), -1, + [m4_default([$3], + [m4_fatal([Libtool version $1 or higher is required], + 63)])], + [$2])]) + + +# _LT_CHECK_BUILDDIR +# ------------------ +# Complain if the absolute build directory name contains unusual characters +m4_defun([_LT_CHECK_BUILDDIR], +[case `pwd` in + *\ * | *\ *) + AC_MSG_WARN([Libtool does not cope well with whitespace in `pwd`]) ;; +esac +]) + + +# LT_INIT([OPTIONS]) +# ------------------ +AC_DEFUN([LT_INIT], +[AC_PREREQ([2.62])dnl We use AC_PATH_PROGS_FEATURE_CHECK +AC_REQUIRE([AC_CONFIG_AUX_DIR_DEFAULT])dnl +AC_BEFORE([$0], [LT_LANG])dnl +AC_BEFORE([$0], [LT_OUTPUT])dnl +AC_BEFORE([$0], [LTDL_INIT])dnl +m4_require([_LT_CHECK_BUILDDIR])dnl + +dnl Autoconf doesn't catch unexpanded LT_ macros by default: +m4_pattern_forbid([^_?LT_[A-Z_]+$])dnl +m4_pattern_allow([^(_LT_EOF|LT_DLGLOBAL|LT_DLLAZY_OR_NOW|LT_MULTI_MODULE)$])dnl +dnl aclocal doesn't pull ltoptions.m4, ltsugar.m4, or ltversion.m4 +dnl unless we require an AC_DEFUNed macro: +AC_REQUIRE([LTOPTIONS_VERSION])dnl +AC_REQUIRE([LTSUGAR_VERSION])dnl +AC_REQUIRE([LTVERSION_VERSION])dnl +AC_REQUIRE([LTOBSOLETE_VERSION])dnl +m4_require([_LT_PROG_LTMAIN])dnl + +_LT_SHELL_INIT([SHELL=${CONFIG_SHELL-/bin/sh}]) + +dnl Parse OPTIONS +_LT_SET_OPTIONS([$0], [$1]) + +# This can be used to rebuild libtool when needed +LIBTOOL_DEPS=$ltmain + +# Always use our own libtool. +LIBTOOL='$(SHELL) $(top_builddir)/libtool' +AC_SUBST(LIBTOOL)dnl + +_LT_SETUP + +# Only expand once: +m4_define([LT_INIT]) +])# LT_INIT + +# Old names: +AU_ALIAS([AC_PROG_LIBTOOL], [LT_INIT]) +AU_ALIAS([AM_PROG_LIBTOOL], [LT_INIT]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PROG_LIBTOOL], []) +dnl AC_DEFUN([AM_PROG_LIBTOOL], []) + + +# _LT_PREPARE_CC_BASENAME +# ----------------------- +m4_defun([_LT_PREPARE_CC_BASENAME], [ +# Calculate cc_basename. Skip known compiler wrappers and cross-prefix. +func_cc_basename () +{ + for cc_temp in @S|@*""; do + case $cc_temp in + compile | *[[\\/]]compile | ccache | *[[\\/]]ccache ) ;; + distcc | *[[\\/]]distcc | purify | *[[\\/]]purify ) ;; + \-*) ;; + *) break;; + esac + done + func_cc_basename_result=`$ECHO "$cc_temp" | $SED "s%.*/%%; s%^$host_alias-%%"` +} +])# _LT_PREPARE_CC_BASENAME + + +# _LT_CC_BASENAME(CC) +# ------------------- +# It would be clearer to call AC_REQUIREs from _LT_PREPARE_CC_BASENAME, +# but that macro is also expanded into generated libtool script, which +# arranges for $SED and $ECHO to be set by different means. +m4_defun([_LT_CC_BASENAME], +[m4_require([_LT_PREPARE_CC_BASENAME])dnl +AC_REQUIRE([_LT_DECL_SED])dnl +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl +func_cc_basename $1 +cc_basename=$func_cc_basename_result +]) + + +# _LT_FILEUTILS_DEFAULTS +# ---------------------- +# It is okay to use these file commands and assume they have been set +# sensibly after 'm4_require([_LT_FILEUTILS_DEFAULTS])'. +m4_defun([_LT_FILEUTILS_DEFAULTS], +[: ${CP="cp -f"} +: ${MV="mv -f"} +: ${RM="rm -f"} +])# _LT_FILEUTILS_DEFAULTS + + +# _LT_SETUP +# --------- +m4_defun([_LT_SETUP], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_REQUIRE([_LT_PREPARE_SED_QUOTE_VARS])dnl +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH])dnl + +_LT_DECL([], [PATH_SEPARATOR], [1], [The PATH separator for the build system])dnl +dnl +_LT_DECL([], [host_alias], [0], [The host system])dnl +_LT_DECL([], [host], [0])dnl +_LT_DECL([], [host_os], [0])dnl +dnl +_LT_DECL([], [build_alias], [0], [The build system])dnl +_LT_DECL([], [build], [0])dnl +_LT_DECL([], [build_os], [0])dnl +dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +dnl +AC_REQUIRE([AC_PROG_LN_S])dnl +test -z "$LN_S" && LN_S="ln -s" +_LT_DECL([], [LN_S], [1], [Whether we need soft or hard links])dnl +dnl +AC_REQUIRE([LT_CMD_MAX_LEN])dnl +_LT_DECL([objext], [ac_objext], [0], [Object file suffix (normally "o")])dnl +_LT_DECL([], [exeext], [0], [Executable file suffix (normally "")])dnl +dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_PATH_CONVERSION_FUNCTIONS])dnl +m4_require([_LT_CMD_RELOAD])dnl +m4_require([_LT_CHECK_MAGIC_METHOD])dnl +m4_require([_LT_CHECK_SHAREDLIB_FROM_LINKLIB])dnl +m4_require([_LT_CMD_OLD_ARCHIVE])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_WITH_SYSROOT])dnl +m4_require([_LT_CMD_TRUNCATE])dnl + +_LT_CONFIG_LIBTOOL_INIT([ +# See if we are running on zsh, and set the options that allow our +# commands through without removal of \ escapes INIT. +if test -n "\${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi +]) +if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST +fi + +_LT_CHECK_OBJDIR + +m4_require([_LT_TAG_COMPILER])dnl + +case $host_os in +aix3*) + # AIX sometimes has problems with the GCC collect2 program. For some + # reason, if we set the COLLECT_NAMES environment variable, the problems + # vanish in a puff of smoke. + if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES + fi + ;; +esac + +# Global variables: +ofile=libtool +can_build_shared=yes + +# All known linkers require a '.a' archive for static linking (except MSVC, +# which needs '.lib'). +libext=a + +with_gnu_ld=$lt_cv_prog_gnu_ld + +old_CC=$CC +old_CFLAGS=$CFLAGS + +# Set sane defaults for various variables +test -z "$CC" && CC=cc +test -z "$LTCC" && LTCC=$CC +test -z "$LTCFLAGS" && LTCFLAGS=$CFLAGS +test -z "$LD" && LD=ld +test -z "$ac_objext" && ac_objext=o + +_LT_CC_BASENAME([$compiler]) + +# Only perform the check for file, if the check method requires it +test -z "$MAGIC_CMD" && MAGIC_CMD=file +case $deplibs_check_method in +file_magic*) + if test "$file_magic_cmd" = '$MAGIC_CMD'; then + _LT_PATH_MAGIC + fi + ;; +esac + +# Use C for the default configuration in the libtool script +LT_SUPPORTED_TAG([CC]) +_LT_LANG_C_CONFIG +_LT_LANG_DEFAULT_CONFIG +_LT_CONFIG_COMMANDS +])# _LT_SETUP + + +# _LT_PREPARE_SED_QUOTE_VARS +# -------------------------- +# Define a few sed substitution that help us do robust quoting. +m4_defun([_LT_PREPARE_SED_QUOTE_VARS], +[# Backslashify metacharacters that are still active within +# double-quoted strings. +sed_quote_subst='s/\([["`$\\]]\)/\\\1/g' + +# Same as above, but do not quote variable references. +double_quote_subst='s/\([["`\\]]\)/\\\1/g' + +# Sed substitution to delay expansion of an escaped shell variable in a +# double_quote_subst'ed string. +delay_variable_subst='s/\\\\\\\\\\\$/\\\\\\$/g' + +# Sed substitution to delay expansion of an escaped single quote. +delay_single_quote_subst='s/'\''/'\'\\\\\\\'\''/g' + +# Sed substitution to avoid accidental globbing in evaled expressions +no_glob_subst='s/\*/\\\*/g' +]) + +# _LT_PROG_LTMAIN +# --------------- +# Note that this code is called both from 'configure', and 'config.status' +# now that we use AC_CONFIG_COMMANDS to generate libtool. Notably, +# 'config.status' has no value for ac_aux_dir unless we are using Automake, +# so we pass a copy along to make sure it has a sensible value anyway. +m4_defun([_LT_PROG_LTMAIN], +[m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([ltmain.sh])])dnl +_LT_CONFIG_LIBTOOL_INIT([ac_aux_dir='$ac_aux_dir']) +ltmain=$ac_aux_dir/ltmain.sh +])# _LT_PROG_LTMAIN + + +## ------------------------------------- ## +## Accumulate code for creating libtool. ## +## ------------------------------------- ## + +# So that we can recreate a full libtool script including additional +# tags, we accumulate the chunks of code to send to AC_CONFIG_COMMANDS +# in macros and then make a single call at the end using the 'libtool' +# label. + + +# _LT_CONFIG_LIBTOOL_INIT([INIT-COMMANDS]) +# ---------------------------------------- +# Register INIT-COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL_INIT], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_INIT], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_INIT]) + + +# _LT_CONFIG_LIBTOOL([COMMANDS]) +# ------------------------------ +# Register COMMANDS to be passed to AC_CONFIG_COMMANDS later. +m4_define([_LT_CONFIG_LIBTOOL], +[m4_ifval([$1], + [m4_append([_LT_OUTPUT_LIBTOOL_COMMANDS], + [$1 +])])]) + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS]) + + +# _LT_CONFIG_SAVE_COMMANDS([COMMANDS], [INIT_COMMANDS]) +# ----------------------------------------------------- +m4_defun([_LT_CONFIG_SAVE_COMMANDS], +[_LT_CONFIG_LIBTOOL([$1]) +_LT_CONFIG_LIBTOOL_INIT([$2]) +]) + + +# _LT_FORMAT_COMMENT([COMMENT]) +# ----------------------------- +# Add leading comment marks to the start of each line, and a trailing +# full-stop to the whole comment if one is not present already. +m4_define([_LT_FORMAT_COMMENT], +[m4_ifval([$1], [ +m4_bpatsubst([m4_bpatsubst([$1], [^ *], [# ])], + [['`$\]], [\\\&])]m4_bmatch([$1], [[!?.]$], [], [.]) +)]) + + + +## ------------------------ ## +## FIXME: Eliminate VARNAME ## +## ------------------------ ## + + +# _LT_DECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION], [IS-TAGGED?]) +# ------------------------------------------------------------------- +# CONFIGNAME is the name given to the value in the libtool script. +# VARNAME is the (base) name used in the configure script. +# VALUE may be 0, 1 or 2 for a computed quote escaped value based on +# VARNAME. Any other value will be used directly. +m4_define([_LT_DECL], +[lt_if_append_uniq([lt_decl_varnames], [$2], [, ], + [lt_dict_add_subkey([lt_decl_dict], [$2], [libtool_name], + [m4_ifval([$1], [$1], [$2])]) + lt_dict_add_subkey([lt_decl_dict], [$2], [value], [$3]) + m4_ifval([$4], + [lt_dict_add_subkey([lt_decl_dict], [$2], [description], [$4])]) + lt_dict_add_subkey([lt_decl_dict], [$2], + [tagged?], [m4_ifval([$5], [yes], [no])])]) +]) + + +# _LT_TAGDECL([CONFIGNAME], VARNAME, VALUE, [DESCRIPTION]) +# -------------------------------------------------------- +m4_define([_LT_TAGDECL], [_LT_DECL([$1], [$2], [$3], [$4], [yes])]) + + +# lt_decl_tag_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_tag_varnames], +[_lt_decl_filter([tagged?], [yes], $@)]) + + +# _lt_decl_filter(SUBKEY, VALUE, [SEPARATOR], [VARNAME1..]) +# --------------------------------------------------------- +m4_define([_lt_decl_filter], +[m4_case([$#], + [0], [m4_fatal([$0: too few arguments: $#])], + [1], [m4_fatal([$0: too few arguments: $#: $1])], + [2], [lt_dict_filter([lt_decl_dict], [$1], [$2], [], lt_decl_varnames)], + [3], [lt_dict_filter([lt_decl_dict], [$1], [$2], [$3], lt_decl_varnames)], + [lt_dict_filter([lt_decl_dict], $@)])[]dnl +]) + + +# lt_decl_quote_varnames([SEPARATOR], [VARNAME1...]) +# -------------------------------------------------- +m4_define([lt_decl_quote_varnames], +[_lt_decl_filter([value], [1], $@)]) + + +# lt_decl_dquote_varnames([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_dquote_varnames], +[_lt_decl_filter([value], [2], $@)]) + + +# lt_decl_varnames_tagged([SEPARATOR], [VARNAME1...]) +# --------------------------------------------------- +m4_define([lt_decl_varnames_tagged], +[m4_assert([$# <= 2])dnl +_$0(m4_quote(m4_default([$1], [[, ]])), + m4_ifval([$2], [[$2]], [m4_dquote(lt_decl_tag_varnames)]), + m4_split(m4_normalize(m4_quote(_LT_TAGS)), [ ]))]) +m4_define([_lt_decl_varnames_tagged], +[m4_ifval([$3], [lt_combine([$1], [$2], [_], $3)])]) + + +# lt_decl_all_varnames([SEPARATOR], [VARNAME1...]) +# ------------------------------------------------ +m4_define([lt_decl_all_varnames], +[_$0(m4_quote(m4_default([$1], [[, ]])), + m4_if([$2], [], + m4_quote(lt_decl_varnames), + m4_quote(m4_shift($@))))[]dnl +]) +m4_define([_lt_decl_all_varnames], +[lt_join($@, lt_decl_varnames_tagged([$1], + lt_decl_tag_varnames([[, ]], m4_shift($@))))dnl +]) + + +# _LT_CONFIG_STATUS_DECLARE([VARNAME]) +# ------------------------------------ +# Quote a variable value, and forward it to 'config.status' so that its +# declaration there will have the same value as in 'configure'. VARNAME +# must have a single quote delimited value for this to work. +m4_define([_LT_CONFIG_STATUS_DECLARE], +[$1='`$ECHO "$][$1" | $SED "$delay_single_quote_subst"`']) + + +# _LT_CONFIG_STATUS_DECLARATIONS +# ------------------------------ +# We delimit libtool config variables with single quotes, so when +# we write them to config.status, we have to be sure to quote all +# embedded single quotes properly. In configure, this macro expands +# each variable declared with _LT_DECL (and _LT_TAGDECL) into: +# +# ='`$ECHO "$" | $SED "$delay_single_quote_subst"`' +m4_defun([_LT_CONFIG_STATUS_DECLARATIONS], +[m4_foreach([_lt_var], m4_quote(lt_decl_all_varnames), + [m4_n([_LT_CONFIG_STATUS_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAGS +# ---------------- +# Output comment and list of tags supported by the script +m4_defun([_LT_LIBTOOL_TAGS], +[_LT_FORMAT_COMMENT([The names of the tagged configurations supported by this script])dnl +available_tags='_LT_TAGS'dnl +]) + + +# _LT_LIBTOOL_DECLARE(VARNAME, [TAG]) +# ----------------------------------- +# Extract the dictionary values for VARNAME (optionally with TAG) and +# expand to a commented shell variable setting: +# +# # Some comment about what VAR is for. +# visible_name=$lt_internal_name +m4_define([_LT_LIBTOOL_DECLARE], +[_LT_FORMAT_COMMENT(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], + [description])))[]dnl +m4_pushdef([_libtool_name], + m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [libtool_name])))[]dnl +m4_case(m4_quote(lt_dict_fetch([lt_decl_dict], [$1], [value])), + [0], [_libtool_name=[$]$1], + [1], [_libtool_name=$lt_[]$1], + [2], [_libtool_name=$lt_[]$1], + [_libtool_name=lt_dict_fetch([lt_decl_dict], [$1], [value])])[]dnl +m4_ifval([$2], [_$2])[]m4_popdef([_libtool_name])[]dnl +]) + + +# _LT_LIBTOOL_CONFIG_VARS +# ----------------------- +# Produce commented declarations of non-tagged libtool config variables +# suitable for insertion in the LIBTOOL CONFIG section of the 'libtool' +# script. Tagged libtool config variables (even for the LIBTOOL CONFIG +# section) are produced by _LT_LIBTOOL_TAG_VARS. +m4_defun([_LT_LIBTOOL_CONFIG_VARS], +[m4_foreach([_lt_var], + m4_quote(_lt_decl_filter([tagged?], [no], [], lt_decl_varnames)), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var)])])]) + + +# _LT_LIBTOOL_TAG_VARS(TAG) +# ------------------------- +m4_define([_LT_LIBTOOL_TAG_VARS], +[m4_foreach([_lt_var], m4_quote(lt_decl_tag_varnames), + [m4_n([_LT_LIBTOOL_DECLARE(_lt_var, [$1])])])]) + + +# _LT_TAGVAR(VARNAME, [TAGNAME]) +# ------------------------------ +m4_define([_LT_TAGVAR], [m4_ifval([$2], [$1_$2], [$1])]) + + +# _LT_CONFIG_COMMANDS +# ------------------- +# Send accumulated output to $CONFIG_STATUS. Thanks to the lists of +# variables for single and double quote escaping we saved from calls +# to _LT_DECL, we can put quote escaped variables declarations +# into 'config.status', and then the shell code to quote escape them in +# for loops in 'config.status'. Finally, any additional code accumulated +# from calls to _LT_CONFIG_LIBTOOL_INIT is expanded. +m4_defun([_LT_CONFIG_COMMANDS], +[AC_PROVIDE_IFELSE([LT_OUTPUT], + dnl If the libtool generation code has been placed in $CONFIG_LT, + dnl instead of duplicating it all over again into config.status, + dnl then we will have config.status run $CONFIG_LT later, so it + dnl needs to know what name is stored there: + [AC_CONFIG_COMMANDS([libtool], + [$SHELL $CONFIG_LT || AS_EXIT(1)], [CONFIG_LT='$CONFIG_LT'])], + dnl If the libtool generation code is destined for config.status, + dnl expand the accumulated commands and init code now: + [AC_CONFIG_COMMANDS([libtool], + [_LT_OUTPUT_LIBTOOL_COMMANDS], [_LT_OUTPUT_LIBTOOL_COMMANDS_INIT])]) +])#_LT_CONFIG_COMMANDS + + +# Initialize. +m4_define([_LT_OUTPUT_LIBTOOL_COMMANDS_INIT], +[ + +# The HP-UX ksh and POSIX shell print the target directory to stdout +# if CDPATH is set. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + +sed_quote_subst='$sed_quote_subst' +double_quote_subst='$double_quote_subst' +delay_variable_subst='$delay_variable_subst' +_LT_CONFIG_STATUS_DECLARATIONS +LTCC='$LTCC' +LTCFLAGS='$LTCFLAGS' +compiler='$compiler_DEFAULT' + +# A function that is used when there is no print builtin or printf. +func_fallback_echo () +{ + eval 'cat <<_LTECHO_EOF +\$[]1 +_LTECHO_EOF' +} + +# Quote evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_quote_varnames); do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED \\"\\\$sed_quote_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +# Double-quote double-evaled strings. +for var in lt_decl_all_varnames([[ \ +]], lt_decl_dquote_varnames); do + case \`eval \\\\\$ECHO \\\\""\\\\\$\$var"\\\\"\` in + *[[\\\\\\\`\\"\\\$]]*) + eval "lt_\$var=\\\\\\"\\\`\\\$ECHO \\"\\\$\$var\\" | \\\$SED -e \\"\\\$double_quote_subst\\" -e \\"\\\$sed_quote_subst\\" -e \\"\\\$delay_variable_subst\\"\\\`\\\\\\"" ## exclude from sc_prohibit_nested_quotes + ;; + *) + eval "lt_\$var=\\\\\\"\\\$\$var\\\\\\"" + ;; + esac +done + +_LT_OUTPUT_LIBTOOL_INIT +]) + +# _LT_GENERATED_FILE_INIT(FILE, [COMMENT]) +# ------------------------------------ +# Generate a child script FILE with all initialization necessary to +# reuse the environment learned by the parent script, and make the +# file executable. If COMMENT is supplied, it is inserted after the +# '#!' sequence but before initialization text begins. After this +# macro, additional text can be appended to FILE to form the body of +# the child script. The macro ends with non-zero status if the +# file could not be fully written (such as if the disk is full). +m4_ifdef([AS_INIT_GENERATED], +[m4_defun([_LT_GENERATED_FILE_INIT],[AS_INIT_GENERATED($@)])], +[m4_defun([_LT_GENERATED_FILE_INIT], +[m4_require([AS_PREPARE])]dnl +[m4_pushdef([AS_MESSAGE_LOG_FD])]dnl +[lt_write_fail=0 +cat >$1 <<_ASEOF || lt_write_fail=1 +#! $SHELL +# Generated by $as_me. +$2 +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$1 <<\_ASEOF || lt_write_fail=1 +AS_SHELL_SANITIZE +_AS_PREPARE +exec AS_MESSAGE_FD>&1 +_ASEOF +test 0 = "$lt_write_fail" && chmod +x $1[]dnl +m4_popdef([AS_MESSAGE_LOG_FD])])])# _LT_GENERATED_FILE_INIT + +# LT_OUTPUT +# --------- +# This macro allows early generation of the libtool script (before +# AC_OUTPUT is called), incase it is used in configure for compilation +# tests. +AC_DEFUN([LT_OUTPUT], +[: ${CONFIG_LT=./config.lt} +AC_MSG_NOTICE([creating $CONFIG_LT]) +_LT_GENERATED_FILE_INIT(["$CONFIG_LT"], +[# Run this file to recreate a libtool stub with the current configuration.]) + +cat >>"$CONFIG_LT" <<\_LTEOF +lt_cl_silent=false +exec AS_MESSAGE_LOG_FD>>config.log +{ + echo + AS_BOX([Running $as_me.]) +} >&AS_MESSAGE_LOG_FD + +lt_cl_help="\ +'$as_me' creates a local libtool stub from the current configuration, +for use in further configure time tests before the real libtool is +generated. + +Usage: $[0] [[OPTIONS]] + + -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 + +Report bugs to ." + +lt_cl_version="\ +m4_ifset([AC_PACKAGE_NAME], [AC_PACKAGE_NAME ])config.lt[]dnl +m4_ifset([AC_PACKAGE_VERSION], [ AC_PACKAGE_VERSION]) +configured by $[0], generated by m4_PACKAGE_STRING. + +Copyright (C) 2011 Free Software Foundation, Inc. +This config.lt script is free software; the Free Software Foundation +gives unlimited permision to copy, distribute and modify it." + +while test 0 != $[#] +do + case $[1] in + --version | --v* | -V ) + echo "$lt_cl_version"; exit 0 ;; + --help | --h* | -h ) + echo "$lt_cl_help"; exit 0 ;; + --debug | --d* | -d ) + debug=: ;; + --quiet | --q* | --silent | --s* | -q ) + lt_cl_silent=: ;; + + -*) AC_MSG_ERROR([unrecognized option: $[1] +Try '$[0] --help' for more information.]) ;; + + *) AC_MSG_ERROR([unrecognized argument: $[1] +Try '$[0] --help' for more information.]) ;; + esac + shift +done + +if $lt_cl_silent; then + exec AS_MESSAGE_FD>/dev/null +fi +_LTEOF + +cat >>"$CONFIG_LT" <<_LTEOF +_LT_OUTPUT_LIBTOOL_COMMANDS_INIT +_LTEOF + +cat >>"$CONFIG_LT" <<\_LTEOF +AC_MSG_NOTICE([creating $ofile]) +_LT_OUTPUT_LIBTOOL_COMMANDS +AS_EXIT(0) +_LTEOF +chmod +x "$CONFIG_LT" + +# configure is writing to config.log, but config.lt does its own redirection, +# appending to config.log, which fails on DOS, as config.log is still kept +# open by configure. Here we exec the FD to /dev/null, effectively closing +# config.log, so it can be properly (re)opened and appended to by config.lt. +lt_cl_success=: +test yes = "$silent" && + lt_config_lt_args="$lt_config_lt_args --quiet" +exec AS_MESSAGE_LOG_FD>/dev/null +$SHELL "$CONFIG_LT" $lt_config_lt_args || lt_cl_success=false +exec AS_MESSAGE_LOG_FD>>config.log +$lt_cl_success || AS_EXIT(1) +])# LT_OUTPUT + + +# _LT_CONFIG(TAG) +# --------------- +# If TAG is the built-in tag, create an initial libtool script with a +# default configuration from the untagged config vars. Otherwise add code +# to config.status for appending the configuration named by TAG from the +# matching tagged config vars. +m4_defun([_LT_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_CONFIG_SAVE_COMMANDS([ + m4_define([_LT_TAG], m4_if([$1], [], [C], [$1]))dnl + m4_if(_LT_TAG, [C], [ + # See if we are running on zsh, and set the options that allow our + # commands through without removal of \ escapes. + if test -n "${ZSH_VERSION+set}"; then + setopt NO_GLOB_SUBST + fi + + cfgfile=${ofile}T + trap "$RM \"$cfgfile\"; exit 1" 1 2 15 + $RM "$cfgfile" + + cat <<_LT_EOF >> "$cfgfile" +#! $SHELL +# Generated automatically by $as_me ($PACKAGE) $VERSION +# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: +# NOTE: Changes made to this file will be lost: look at ltmain.sh. + +# Provide generalized library-building support services. +# Written by Gordon Matzigkeit, 1996 + +_LT_COPYING +_LT_LIBTOOL_TAGS + +# Configured defaults for sys_lib_dlsearch_path munging. +: \${LT_SYS_LIBRARY_PATH="$configure_time_lt_sys_library_path"} + +# ### BEGIN LIBTOOL CONFIG +_LT_LIBTOOL_CONFIG_VARS +_LT_LIBTOOL_TAG_VARS +# ### END LIBTOOL CONFIG + +_LT_EOF + + cat <<'_LT_EOF' >> "$cfgfile" + +# ### BEGIN FUNCTIONS SHARED WITH CONFIGURE + +_LT_PREPARE_MUNGE_PATH_LIST +_LT_PREPARE_CC_BASENAME + +# ### END FUNCTIONS SHARED WITH CONFIGURE + +_LT_EOF + + case $host_os in + aix3*) + cat <<\_LT_EOF >> "$cfgfile" +# AIX sometimes has problems with the GCC collect2 program. For some +# reason, if we set the COLLECT_NAMES environment variable, the problems +# vanish in a puff of smoke. +if test set != "${COLLECT_NAMES+set}"; then + COLLECT_NAMES= + export COLLECT_NAMES +fi +_LT_EOF + ;; + esac + + _LT_PROG_LTMAIN + + # We use sed instead of cat because bash on DJGPP gets confused if + # if finds mixed CR/LF and LF-only lines. Since sed operates in + # text mode, it properly converts lines to CR/LF. This bash problem + # is reportedly fixed, but why not run on old versions too? + sed '$q' "$ltmain" >> "$cfgfile" \ + || (rm -f "$cfgfile"; exit 1) + + mv -f "$cfgfile" "$ofile" || + (rm -f "$ofile" && cp "$cfgfile" "$ofile" && rm -f "$cfgfile") + chmod +x "$ofile" +], +[cat <<_LT_EOF >> "$ofile" + +dnl Unfortunately we have to use $1 here, since _LT_TAG is not expanded +dnl in a comment (ie after a #). +# ### BEGIN LIBTOOL TAG CONFIG: $1 +_LT_LIBTOOL_TAG_VARS(_LT_TAG) +# ### END LIBTOOL TAG CONFIG: $1 +_LT_EOF +])dnl /m4_if +], +[m4_if([$1], [], [ + PACKAGE='$PACKAGE' + VERSION='$VERSION' + RM='$RM' + ofile='$ofile'], []) +])dnl /_LT_CONFIG_SAVE_COMMANDS +])# _LT_CONFIG + + +# LT_SUPPORTED_TAG(TAG) +# --------------------- +# Trace this macro to discover what tags are supported by the libtool +# --tag option, using: +# autoconf --trace 'LT_SUPPORTED_TAG:$1' +AC_DEFUN([LT_SUPPORTED_TAG], []) + + +# C support is built-in for now +m4_define([_LT_LANG_C_enabled], []) +m4_define([_LT_TAGS], []) + + +# LT_LANG(LANG) +# ------------- +# Enable libtool support for the given language if not already enabled. +AC_DEFUN([LT_LANG], +[AC_BEFORE([$0], [LT_OUTPUT])dnl +m4_case([$1], + [C], [_LT_LANG(C)], + [C++], [_LT_LANG(CXX)], + [Go], [_LT_LANG(GO)], + [Java], [_LT_LANG(GCJ)], + [Fortran 77], [_LT_LANG(F77)], + [Fortran], [_LT_LANG(FC)], + [Windows Resource], [_LT_LANG(RC)], + [m4_ifdef([_LT_LANG_]$1[_CONFIG], + [_LT_LANG($1)], + [m4_fatal([$0: unsupported language: "$1"])])])dnl +])# LT_LANG + + +# _LT_LANG(LANGNAME) +# ------------------ +m4_defun([_LT_LANG], +[m4_ifdef([_LT_LANG_]$1[_enabled], [], + [LT_SUPPORTED_TAG([$1])dnl + m4_append([_LT_TAGS], [$1 ])dnl + m4_define([_LT_LANG_]$1[_enabled], [])dnl + _LT_LANG_$1_CONFIG($1)])dnl +])# _LT_LANG + + +m4_ifndef([AC_PROG_GO], [ +############################################################ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_GO. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +############################################################ +m4_defun([AC_PROG_GO], +[AC_LANG_PUSH(Go)dnl +AC_ARG_VAR([GOC], [Go compiler command])dnl +AC_ARG_VAR([GOFLAGS], [Go compiler flags])dnl +_AC_ARG_VAR_LDFLAGS()dnl +AC_CHECK_TOOL(GOC, gccgo) +if test -z "$GOC"; then + if test -n "$ac_tool_prefix"; then + AC_CHECK_PROG(GOC, [${ac_tool_prefix}gccgo], [${ac_tool_prefix}gccgo]) + fi +fi +if test -z "$GOC"; then + AC_CHECK_PROG(GOC, gccgo, gccgo, false) +fi +])#m4_defun +])#m4_ifndef + + +# _LT_LANG_DEFAULT_CONFIG +# ----------------------- +m4_defun([_LT_LANG_DEFAULT_CONFIG], +[AC_PROVIDE_IFELSE([AC_PROG_CXX], + [LT_LANG(CXX)], + [m4_define([AC_PROG_CXX], defn([AC_PROG_CXX])[LT_LANG(CXX)])]) + +AC_PROVIDE_IFELSE([AC_PROG_F77], + [LT_LANG(F77)], + [m4_define([AC_PROG_F77], defn([AC_PROG_F77])[LT_LANG(F77)])]) + +AC_PROVIDE_IFELSE([AC_PROG_FC], + [LT_LANG(FC)], + [m4_define([AC_PROG_FC], defn([AC_PROG_FC])[LT_LANG(FC)])]) + +dnl The call to [A][M_PROG_GCJ] is quoted like that to stop aclocal +dnl pulling things in needlessly. +AC_PROVIDE_IFELSE([AC_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([A][M_PROG_GCJ], + [LT_LANG(GCJ)], + [AC_PROVIDE_IFELSE([LT_PROG_GCJ], + [LT_LANG(GCJ)], + [m4_ifdef([AC_PROG_GCJ], + [m4_define([AC_PROG_GCJ], defn([AC_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([A][M_PROG_GCJ], + [m4_define([A][M_PROG_GCJ], defn([A][M_PROG_GCJ])[LT_LANG(GCJ)])]) + m4_ifdef([LT_PROG_GCJ], + [m4_define([LT_PROG_GCJ], defn([LT_PROG_GCJ])[LT_LANG(GCJ)])])])])]) + +AC_PROVIDE_IFELSE([AC_PROG_GO], + [LT_LANG(GO)], + [m4_define([AC_PROG_GO], defn([AC_PROG_GO])[LT_LANG(GO)])]) + +AC_PROVIDE_IFELSE([LT_PROG_RC], + [LT_LANG(RC)], + [m4_define([LT_PROG_RC], defn([LT_PROG_RC])[LT_LANG(RC)])]) +])# _LT_LANG_DEFAULT_CONFIG + +# Obsolete macros: +AU_DEFUN([AC_LIBTOOL_CXX], [LT_LANG(C++)]) +AU_DEFUN([AC_LIBTOOL_F77], [LT_LANG(Fortran 77)]) +AU_DEFUN([AC_LIBTOOL_FC], [LT_LANG(Fortran)]) +AU_DEFUN([AC_LIBTOOL_GCJ], [LT_LANG(Java)]) +AU_DEFUN([AC_LIBTOOL_RC], [LT_LANG(Windows Resource)]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_CXX], []) +dnl AC_DEFUN([AC_LIBTOOL_F77], []) +dnl AC_DEFUN([AC_LIBTOOL_FC], []) +dnl AC_DEFUN([AC_LIBTOOL_GCJ], []) +dnl AC_DEFUN([AC_LIBTOOL_RC], []) + + +# _LT_TAG_COMPILER +# ---------------- +m4_defun([_LT_TAG_COMPILER], +[AC_REQUIRE([AC_PROG_CC])dnl + +_LT_DECL([LTCC], [CC], [1], [A C compiler])dnl +_LT_DECL([LTCFLAGS], [CFLAGS], [1], [LTCC compiler flags])dnl +_LT_TAGDECL([CC], [compiler], [1], [A language specific compiler])dnl +_LT_TAGDECL([with_gcc], [GCC], [0], [Is the compiler the GNU compiler?])dnl + +# If no C compiler was specified, use CC. +LTCC=${LTCC-"$CC"} + +# If no C compiler flags were specified, use CFLAGS. +LTCFLAGS=${LTCFLAGS-"$CFLAGS"} + +# Allow CC to be a program name with arguments. +compiler=$CC +])# _LT_TAG_COMPILER + + +# _LT_COMPILER_BOILERPLATE +# ------------------------ +# Check for compiler boilerplate output or warnings with +# the simple compiler test code. +m4_defun([_LT_COMPILER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_compile_test_code" >conftest.$ac_ext +eval "$ac_compile" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_compiler_boilerplate=`cat conftest.err` +$RM conftest* +])# _LT_COMPILER_BOILERPLATE + + +# _LT_LINKER_BOILERPLATE +# ---------------------- +# Check for linker boilerplate output or warnings with +# the simple link test code. +m4_defun([_LT_LINKER_BOILERPLATE], +[m4_require([_LT_DECL_SED])dnl +ac_outfile=conftest.$ac_objext +echo "$lt_simple_link_test_code" >conftest.$ac_ext +eval "$ac_link" 2>&1 >/dev/null | $SED '/^$/d; /^ *+/d' >conftest.err +_lt_linker_boilerplate=`cat conftest.err` +$RM -r conftest* +])# _LT_LINKER_BOILERPLATE + +# _LT_REQUIRED_DARWIN_CHECKS +# ------------------------- +m4_defun_once([_LT_REQUIRED_DARWIN_CHECKS],[ + case $host_os in + rhapsody* | darwin*) + AC_CHECK_TOOL([DSYMUTIL], [dsymutil], [:]) + AC_CHECK_TOOL([NMEDIT], [nmedit], [:]) + AC_CHECK_TOOL([LIPO], [lipo], [:]) + AC_CHECK_TOOL([OTOOL], [otool], [:]) + AC_CHECK_TOOL([OTOOL64], [otool64], [:]) + _LT_DECL([], [DSYMUTIL], [1], + [Tool to manipulate archived DWARF debug symbol files on Mac OS X]) + _LT_DECL([], [NMEDIT], [1], + [Tool to change global to local symbols on Mac OS X]) + _LT_DECL([], [LIPO], [1], + [Tool to manipulate fat objects and archives on Mac OS X]) + _LT_DECL([], [OTOOL], [1], + [ldd/readelf like tool for Mach-O binaries on Mac OS X]) + _LT_DECL([], [OTOOL64], [1], + [ldd/readelf like tool for 64 bit Mach-O binaries on Mac OS X 10.4]) + + AC_CACHE_CHECK([for -single_module linker flag],[lt_cv_apple_cc_single_mod], + [lt_cv_apple_cc_single_mod=no + if test -z "$LT_MULTI_MODULE"; then + # By default we will add the -single_module flag. You can override + # by either setting the environment variable LT_MULTI_MODULE + # non-empty at configure time, or by adding -multi_module to the + # link flags. + rm -rf libconftest.dylib* + echo "int foo(void){return 1;}" > conftest.c + echo "$LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ +-dynamiclib -Wl,-single_module conftest.c" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS $LDFLAGS -o libconftest.dylib \ + -dynamiclib -Wl,-single_module conftest.c 2>conftest.err + _lt_result=$? + # If there is a non-empty error log, and "single_module" + # appears in it, assume the flag caused a linker warning + if test -s conftest.err && $GREP single_module conftest.err; then + cat conftest.err >&AS_MESSAGE_LOG_FD + # Otherwise, if the output was created with a 0 exit code from + # the compiler, it worked. + elif test -f libconftest.dylib && test 0 = "$_lt_result"; then + lt_cv_apple_cc_single_mod=yes + else + cat conftest.err >&AS_MESSAGE_LOG_FD + fi + rm -rf libconftest.dylib* + rm -f conftest.* + fi]) + + AC_CACHE_CHECK([for -exported_symbols_list linker flag], + [lt_cv_ld_exported_symbols_list], + [lt_cv_ld_exported_symbols_list=no + save_LDFLAGS=$LDFLAGS + echo "_main" > conftest.sym + LDFLAGS="$LDFLAGS -Wl,-exported_symbols_list,conftest.sym" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [lt_cv_ld_exported_symbols_list=yes], + [lt_cv_ld_exported_symbols_list=no]) + LDFLAGS=$save_LDFLAGS + ]) + + AC_CACHE_CHECK([for -force_load linker flag],[lt_cv_ld_force_load], + [lt_cv_ld_force_load=no + cat > conftest.c << _LT_EOF +int forced_loaded() { return 2;} +_LT_EOF + echo "$LTCC $LTCFLAGS -c -o conftest.o conftest.c" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS -c -o conftest.o conftest.c 2>&AS_MESSAGE_LOG_FD + echo "$AR cru libconftest.a conftest.o" >&AS_MESSAGE_LOG_FD + $AR cru libconftest.a conftest.o 2>&AS_MESSAGE_LOG_FD + echo "$RANLIB libconftest.a" >&AS_MESSAGE_LOG_FD + $RANLIB libconftest.a 2>&AS_MESSAGE_LOG_FD + cat > conftest.c << _LT_EOF +int main() { return 0;} +_LT_EOF + echo "$LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a" >&AS_MESSAGE_LOG_FD + $LTCC $LTCFLAGS $LDFLAGS -o conftest conftest.c -Wl,-force_load,./libconftest.a 2>conftest.err + _lt_result=$? + if test -s conftest.err && $GREP force_load conftest.err; then + cat conftest.err >&AS_MESSAGE_LOG_FD + elif test -f conftest && test 0 = "$_lt_result" && $GREP forced_load conftest >/dev/null 2>&1; then + lt_cv_ld_force_load=yes + else + cat conftest.err >&AS_MESSAGE_LOG_FD + fi + rm -f conftest.err libconftest.a conftest conftest.c + rm -rf conftest.dSYM + ]) + case $host_os in + rhapsody* | darwin1.[[012]]) + _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;; + darwin1.*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + darwin*) # darwin 5.x on + # if running on 10.5 or later, the deployment target defaults + # to the OS version, if on x86, and 10.4, the deployment + # target defaults to 10.4. Don't you love it? + case ${MACOSX_DEPLOYMENT_TARGET-10.0},$host in + 10.0,*86*-darwin8*|10.0,*-darwin[[91]]*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + 10.[[012]][[,.]]*) + _lt_dar_allow_undefined='$wl-flat_namespace $wl-undefined ${wl}suppress' ;; + 10.*) + _lt_dar_allow_undefined='$wl-undefined ${wl}dynamic_lookup' ;; + esac + ;; + esac + if test yes = "$lt_cv_apple_cc_single_mod"; then + _lt_dar_single_mod='$single_module' + fi + if test yes = "$lt_cv_ld_exported_symbols_list"; then + _lt_dar_export_syms=' $wl-exported_symbols_list,$output_objdir/$libname-symbols.expsym' + else + _lt_dar_export_syms='~$NMEDIT -s $output_objdir/$libname-symbols.expsym $lib' + fi + if test : != "$DSYMUTIL" && test no = "$lt_cv_ld_force_load"; then + _lt_dsymutil='~$DSYMUTIL $lib || :' + else + _lt_dsymutil= + fi + ;; + esac +]) + + +# _LT_DARWIN_LINKER_FEATURES([TAG]) +# --------------------------------- +# Checks for linker and compiler features on darwin +m4_defun([_LT_DARWIN_LINKER_FEATURES], +[ + m4_require([_LT_REQUIRED_DARWIN_CHECKS]) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_automatic, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + if test yes = "$lt_cv_ld_force_load"; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience $wl-force_load,$conv\"; done; func_echo_all \"$new_convenience\"`' + m4_case([$1], [F77], [_LT_TAGVAR(compiler_needs_object, $1)=yes], + [FC], [_LT_TAGVAR(compiler_needs_object, $1)=yes]) + else + _LT_TAGVAR(whole_archive_flag_spec, $1)='' + fi + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=$_lt_dar_allow_undefined + case $cc_basename in + ifort*|nagfor*) _lt_dar_can_shared=yes ;; + *) _lt_dar_can_shared=$GCC ;; + esac + if test yes = "$_lt_dar_can_shared"; then + output_verbose_link_cmd=func_echo_all + _LT_TAGVAR(archive_cmds, $1)="\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dsymutil" + _LT_TAGVAR(module_cmds, $1)="\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$libobjs \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring $_lt_dar_single_mod$_lt_dar_export_syms$_lt_dsymutil" + _LT_TAGVAR(module_expsym_cmds, $1)="sed -e 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC \$allow_undefined_flag -o \$lib -bundle \$libobjs \$deplibs \$compiler_flags$_lt_dar_export_syms$_lt_dsymutil" + m4_if([$1], [CXX], +[ if test yes != "$lt_cv_apple_cc_single_mod"; then + _LT_TAGVAR(archive_cmds, $1)="\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dsymutil" + _LT_TAGVAR(archive_expsym_cmds, $1)="sed 's|^|_|' < \$export_symbols > \$output_objdir/\$libname-symbols.expsym~\$CC -r -keep_private_externs -nostdlib -o \$lib-master.o \$libobjs~\$CC -dynamiclib \$allow_undefined_flag -o \$lib \$lib-master.o \$deplibs \$compiler_flags -install_name \$rpath/\$soname \$verstring$_lt_dar_export_syms$_lt_dsymutil" + fi +],[]) + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi +]) + +# _LT_SYS_MODULE_PATH_AIX([TAGNAME]) +# ---------------------------------- +# Links a minimal program and checks the executable +# for the system default hardcoded library path. In most cases, +# this is /usr/lib:/lib, but when the MPI compilers are used +# the location of the communication and MPI libs are included too. +# If we don't find anything, use the default library path according +# to the aix ld manual. +# Store the results from the different compilers for each TAGNAME. +# Allow to override them for all tags through lt_cv_aix_libpath. +m4_defun([_LT_SYS_MODULE_PATH_AIX], +[m4_require([_LT_DECL_SED])dnl +if test set = "${lt_cv_aix_libpath+set}"; then + aix_libpath=$lt_cv_aix_libpath +else + AC_CACHE_VAL([_LT_TAGVAR([lt_cv_aix_libpath_], [$1])], + [AC_LINK_IFELSE([AC_LANG_PROGRAM],[ + lt_aix_libpath_sed='[ + /Import File Strings/,/^$/ { + /^0/ { + s/^0 *\([^ ]*\) *$/\1/ + p + } + }]' + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -H conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + # Check for a 64-bit object if we didn't find anything. + if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"` + fi],[]) + if test -z "$_LT_TAGVAR([lt_cv_aix_libpath_], [$1])"; then + _LT_TAGVAR([lt_cv_aix_libpath_], [$1])=/usr/lib:/lib + fi + ]) + aix_libpath=$_LT_TAGVAR([lt_cv_aix_libpath_], [$1]) +fi +])# _LT_SYS_MODULE_PATH_AIX + + +# _LT_SHELL_INIT(ARG) +# ------------------- +m4_define([_LT_SHELL_INIT], +[m4_divert_text([M4SH-INIT], [$1 +])])# _LT_SHELL_INIT + + + +# _LT_PROG_ECHO_BACKSLASH +# ----------------------- +# Find how we can fake an echo command that does not interpret backslash. +# In particular, with Autoconf 2.60 or later we add some code to the start +# of the generated configure script that will find a shell with a builtin +# printf (that we can use as an echo command). +m4_defun([_LT_PROG_ECHO_BACKSLASH], +[ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO +ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + +AC_MSG_CHECKING([how to print strings]) +# Test print first, because it will be a builtin if present. +if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \ + test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='print -r --' +elif test "X`printf %s $ECHO 2>/dev/null`" = "X$ECHO"; then + ECHO='printf %s\n' +else + # Use this function as a fallback that always works. + func_fallback_echo () + { + eval 'cat <<_LTECHO_EOF +$[]1 +_LTECHO_EOF' + } + ECHO='func_fallback_echo' +fi + +# func_echo_all arg... +# Invoke $ECHO with all args, space-separated. +func_echo_all () +{ + $ECHO "$*" +} + +case $ECHO in + printf*) AC_MSG_RESULT([printf]) ;; + print*) AC_MSG_RESULT([print -r]) ;; + *) AC_MSG_RESULT([cat]) ;; +esac + +m4_ifdef([_AS_DETECT_SUGGESTED], +[_AS_DETECT_SUGGESTED([ + test -n "${ZSH_VERSION+set}${BASH_VERSION+set}" || ( + ECHO='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' + ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO + ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO + PATH=/empty FPATH=/empty; export PATH FPATH + test "X`printf %s $ECHO`" = "X$ECHO" \ + || test "X`print -r -- $ECHO`" = "X$ECHO" )])]) + +_LT_DECL([], [SHELL], [1], [Shell to use when invoking shell scripts]) +_LT_DECL([], [ECHO], [1], [An echo program that protects backslashes]) +])# _LT_PROG_ECHO_BACKSLASH + + +# _LT_WITH_SYSROOT +# ---------------- +AC_DEFUN([_LT_WITH_SYSROOT], +[AC_MSG_CHECKING([for sysroot]) +AC_ARG_WITH([sysroot], +[AS_HELP_STRING([--with-sysroot@<:@=DIR@:>@], + [Search for dependent libraries within DIR (or the compiler's sysroot + if not specified).])], +[], [with_sysroot=no]) + +dnl lt_sysroot will always be passed unquoted. We quote it here +dnl in case the user passed a directory name. +lt_sysroot= +case $with_sysroot in #( + yes) + if test yes = "$GCC"; then + lt_sysroot=`$CC --print-sysroot 2>/dev/null` + fi + ;; #( + /*) + lt_sysroot=`echo "$with_sysroot" | sed -e "$sed_quote_subst"` + ;; #( + no|'') + ;; #( + *) + AC_MSG_RESULT([$with_sysroot]) + AC_MSG_ERROR([The sysroot must be an absolute path.]) + ;; +esac + + AC_MSG_RESULT([${lt_sysroot:-no}]) +_LT_DECL([], [lt_sysroot], [0], [The root where to search for ]dnl +[dependent libraries, and where our libraries should be installed.])]) + +# _LT_ENABLE_LOCK +# --------------- +m4_defun([_LT_ENABLE_LOCK], +[AC_ARG_ENABLE([libtool-lock], + [AS_HELP_STRING([--disable-libtool-lock], + [avoid locking (might break parallel builds)])]) +test no = "$enable_libtool_lock" || enable_libtool_lock=yes + +# Some flags need to be propagated to the compiler or linker for good +# libtool support. +case $host in +ia64-*-hpux*) + # Find out what ABI is being produced by ac_compile, and set mode + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.$ac_objext` in + *ELF-32*) + HPUX_IA64_MODE=32 + ;; + *ELF-64*) + HPUX_IA64_MODE=64 + ;; + esac + fi + rm -rf conftest* + ;; +*-*-irix6*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + if test yes = "$lt_cv_prog_gnu_ld"; then + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -melf32bsmip" + ;; + *N32*) + LD="${LD-ld} -melf32bmipn32" + ;; + *64-bit*) + LD="${LD-ld} -melf64bmip" + ;; + esac + else + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + LD="${LD-ld} -32" + ;; + *N32*) + LD="${LD-ld} -n32" + ;; + *64-bit*) + LD="${LD-ld} -64" + ;; + esac + fi + fi + rm -rf conftest* + ;; + +mips64*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo '[#]line '$LINENO' "configure"' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + emul=elf + case `/usr/bin/file conftest.$ac_objext` in + *32-bit*) + emul="${emul}32" + ;; + *64-bit*) + emul="${emul}64" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *MSB*) + emul="${emul}btsmip" + ;; + *LSB*) + emul="${emul}ltsmip" + ;; + esac + case `/usr/bin/file conftest.$ac_objext` in + *N32*) + emul="${emul}n32" + ;; + esac + LD="${LD-ld} -m $emul" + fi + rm -rf conftest* + ;; + +x86_64-*kfreebsd*-gnu|x86_64-*linux*|powerpc*-*linux*| \ +s390*-*linux*|s390*-*tpf*|sparc*-*linux*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. Note that the listed cases only cover the + # situations where additional linker options are needed (such as when + # doing 32-bit compilation for a host where ld defaults to 64-bit, or + # vice versa); the common cases where no linker options are needed do + # not appear in the list. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *32-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_i386_fbsd" + ;; + x86_64-*linux*) + case `/usr/bin/file conftest.o` in + *x86-64*) + LD="${LD-ld} -m elf32_x86_64" + ;; + *) + LD="${LD-ld} -m elf_i386" + ;; + esac + ;; + powerpc64le-*linux*) + LD="${LD-ld} -m elf32lppclinux" + ;; + powerpc64-*linux*) + LD="${LD-ld} -m elf32ppclinux" + ;; + s390x-*linux*) + LD="${LD-ld} -m elf_s390" + ;; + sparc64-*linux*) + LD="${LD-ld} -m elf32_sparc" + ;; + esac + ;; + *64-bit*) + case $host in + x86_64-*kfreebsd*-gnu) + LD="${LD-ld} -m elf_x86_64_fbsd" + ;; + x86_64-*linux*) + LD="${LD-ld} -m elf_x86_64" + ;; + powerpcle-*linux*) + LD="${LD-ld} -m elf64lppc" + ;; + powerpc-*linux*) + LD="${LD-ld} -m elf64ppc" + ;; + s390*-*linux*|s390*-*tpf*) + LD="${LD-ld} -m elf64_s390" + ;; + sparc*-*linux*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; + +*-*-sco3.2v5*) + # On SCO OpenServer 5, we need -belf to get full-featured binaries. + SAVE_CFLAGS=$CFLAGS + CFLAGS="$CFLAGS -belf" + AC_CACHE_CHECK([whether the C compiler needs -belf], lt_cv_cc_needs_belf, + [AC_LANG_PUSH(C) + AC_LINK_IFELSE([AC_LANG_PROGRAM([[]],[[]])],[lt_cv_cc_needs_belf=yes],[lt_cv_cc_needs_belf=no]) + AC_LANG_POP]) + if test yes != "$lt_cv_cc_needs_belf"; then + # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf + CFLAGS=$SAVE_CFLAGS + fi + ;; +*-*solaris*) + # Find out what ABI is being produced by ac_compile, and set linker + # options accordingly. + echo 'int i;' > conftest.$ac_ext + if AC_TRY_EVAL(ac_compile); then + case `/usr/bin/file conftest.o` in + *64-bit*) + case $lt_cv_prog_gnu_ld in + yes*) + case $host in + i?86-*-solaris*|x86_64-*-solaris*) + LD="${LD-ld} -m elf_x86_64" + ;; + sparc*-*-solaris*) + LD="${LD-ld} -m elf64_sparc" + ;; + esac + # GNU ld 2.21 introduced _sol2 emulations. Use them if available. + if ${LD-ld} -V | grep _sol2 >/dev/null 2>&1; then + LD=${LD-ld}_sol2 + fi + ;; + *) + if ${LD-ld} -64 -r -o conftest2.o conftest.o >/dev/null 2>&1; then + LD="${LD-ld} -64" + fi + ;; + esac + ;; + esac + fi + rm -rf conftest* + ;; +esac + +need_locks=$enable_libtool_lock +])# _LT_ENABLE_LOCK + + +# _LT_PROG_AR +# ----------- +m4_defun([_LT_PROG_AR], +[AC_CHECK_TOOLS(AR, [ar], false) +: ${AR=ar} +: ${AR_FLAGS=cru} +_LT_DECL([], [AR], [1], [The archiver]) +_LT_DECL([], [AR_FLAGS], [1], [Flags to create an archive]) + +AC_CACHE_CHECK([for archiver @FILE support], [lt_cv_ar_at_file], + [lt_cv_ar_at_file=no + AC_COMPILE_IFELSE([AC_LANG_PROGRAM], + [echo conftest.$ac_objext > conftest.lst + lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&AS_MESSAGE_LOG_FD' + AC_TRY_EVAL([lt_ar_try]) + if test 0 -eq "$ac_status"; then + # Ensure the archiver fails upon bogus file names. + rm -f conftest.$ac_objext libconftest.a + AC_TRY_EVAL([lt_ar_try]) + if test 0 -ne "$ac_status"; then + lt_cv_ar_at_file=@ + fi + fi + rm -f conftest.* libconftest.a + ]) + ]) + +if test no = "$lt_cv_ar_at_file"; then + archiver_list_spec= +else + archiver_list_spec=$lt_cv_ar_at_file +fi +_LT_DECL([], [archiver_list_spec], [1], + [How to feed a file listing to the archiver]) +])# _LT_PROG_AR + + +# _LT_CMD_OLD_ARCHIVE +# ------------------- +m4_defun([_LT_CMD_OLD_ARCHIVE], +[_LT_PROG_AR + +AC_CHECK_TOOL(STRIP, strip, :) +test -z "$STRIP" && STRIP=: +_LT_DECL([], [STRIP], [1], [A symbol stripping program]) + +AC_CHECK_TOOL(RANLIB, ranlib, :) +test -z "$RANLIB" && RANLIB=: +_LT_DECL([], [RANLIB], [1], + [Commands used to install an old-style archive]) + +# Determine commands to create old-style static archives. +old_archive_cmds='$AR $AR_FLAGS $oldlib$oldobjs' +old_postinstall_cmds='chmod 644 $oldlib' +old_postuninstall_cmds= + +if test -n "$RANLIB"; then + case $host_os in + bitrig* | openbsd*) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB -t \$tool_oldlib" + ;; + *) + old_postinstall_cmds="$old_postinstall_cmds~\$RANLIB \$tool_oldlib" + ;; + esac + old_archive_cmds="$old_archive_cmds~\$RANLIB \$tool_oldlib" +fi + +case $host_os in + darwin*) + lock_old_archive_extraction=yes ;; + *) + lock_old_archive_extraction=no ;; +esac +_LT_DECL([], [old_postinstall_cmds], [2]) +_LT_DECL([], [old_postuninstall_cmds], [2]) +_LT_TAGDECL([], [old_archive_cmds], [2], + [Commands used to build an old-style archive]) +_LT_DECL([], [lock_old_archive_extraction], [0], + [Whether to use a lock for old archive extraction]) +])# _LT_CMD_OLD_ARCHIVE + + +# _LT_COMPILER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [OUTPUT-FILE], [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------------------- +# Check whether the given compiler option works +AC_DEFUN([_LT_COMPILER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + m4_if([$4], , [ac_outfile=conftest.$ac_objext], [ac_outfile=$4]) + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + lt_compiler_flag="$3" ## exclude from sc_useless_quotes_in_assignment + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + # The option is referenced via a variable to avoid confusing sed. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>conftest.err) + ac_status=$? + cat conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s "$ac_outfile"; then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings other than the usual output. + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' >conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if test ! -s conftest.er2 || diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + fi + $RM conftest* +]) + +if test yes = "[$]$2"; then + m4_if([$5], , :, [$5]) +else + m4_if([$6], , :, [$6]) +fi +])# _LT_COMPILER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_COMPILER_OPTION], [_LT_COMPILER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_COMPILER_OPTION], []) + + +# _LT_LINKER_OPTION(MESSAGE, VARIABLE-NAME, FLAGS, +# [ACTION-SUCCESS], [ACTION-FAILURE]) +# ---------------------------------------------------- +# Check whether the given linker option works +AC_DEFUN([_LT_LINKER_OPTION], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_SED])dnl +AC_CACHE_CHECK([$1], [$2], + [$2=no + save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS $3" + echo "$lt_simple_link_test_code" > conftest.$ac_ext + if (eval $ac_link 2>conftest.err) && test -s conftest$ac_exeext; then + # The linker can only warn and ignore the option if not recognized + # So say no if there are warnings + if test -s conftest.err; then + # Append any errors to the config.log. + cat conftest.err 1>&AS_MESSAGE_LOG_FD + $ECHO "$_lt_linker_boilerplate" | $SED '/^$/d' > conftest.exp + $SED '/^$/d; /^ *+/d' conftest.err >conftest.er2 + if diff conftest.exp conftest.er2 >/dev/null; then + $2=yes + fi + else + $2=yes + fi + fi + $RM -r conftest* + LDFLAGS=$save_LDFLAGS +]) + +if test yes = "[$]$2"; then + m4_if([$4], , :, [$4]) +else + m4_if([$5], , :, [$5]) +fi +])# _LT_LINKER_OPTION + +# Old name: +AU_ALIAS([AC_LIBTOOL_LINKER_OPTION], [_LT_LINKER_OPTION]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_LINKER_OPTION], []) + + +# LT_CMD_MAX_LEN +#--------------- +AC_DEFUN([LT_CMD_MAX_LEN], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +# find the maximum length of command line arguments +AC_MSG_CHECKING([the maximum length of command line arguments]) +AC_CACHE_VAL([lt_cv_sys_max_cmd_len], [dnl + i=0 + teststring=ABCD + + case $build_os in + msdosdjgpp*) + # On DJGPP, this test can blow up pretty badly due to problems in libc + # (any single argument exceeding 2000 bytes causes a buffer overrun + # during glob expansion). Even if it were fixed, the result of this + # check would be larger than it should be. + lt_cv_sys_max_cmd_len=12288; # 12K is about right + ;; + + gnu*) + # Under GNU Hurd, this test is not required because there is + # no limit to the length of command line arguments. + # Libtool will interpret -1 as no limit whatsoever + lt_cv_sys_max_cmd_len=-1; + ;; + + cygwin* | mingw* | cegcc*) + # On Win9x/ME, this test blows up -- it succeeds, but takes + # about 5 minutes as the teststring grows exponentially. + # Worse, since 9x/ME are not pre-emptively multitasking, + # you end up with a "frozen" computer, even though with patience + # the test eventually succeeds (with a max line length of 256k). + # Instead, let's just punt: use the minimum linelength reported by + # all of the supported platforms: 8192 (on NT/2K/XP). + lt_cv_sys_max_cmd_len=8192; + ;; + + mint*) + # On MiNT this can take a long time and run out of memory. + lt_cv_sys_max_cmd_len=8192; + ;; + + amigaos*) + # On AmigaOS with pdksh, this test takes hours, literally. + # So we just punt and use a minimum line length of 8192. + lt_cv_sys_max_cmd_len=8192; + ;; + + bitrig* | darwin* | dragonfly* | freebsd* | netbsd* | openbsd*) + # This has been around since 386BSD, at least. Likely further. + if test -x /sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/sbin/sysctl -n kern.argmax` + elif test -x /usr/sbin/sysctl; then + lt_cv_sys_max_cmd_len=`/usr/sbin/sysctl -n kern.argmax` + else + lt_cv_sys_max_cmd_len=65536 # usable default for all BSDs + fi + # And add a safety zone + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + ;; + + interix*) + # We know the value 262144 and hardcode it with a safety zone (like BSD) + lt_cv_sys_max_cmd_len=196608 + ;; + + os2*) + # The test takes a long time on OS/2. + lt_cv_sys_max_cmd_len=8192 + ;; + + osf*) + # Dr. Hans Ekkehard Plesser reports seeing a kernel panic running configure + # due to this test when exec_disable_arg_limit is 1 on Tru64. It is not + # nice to cause kernel panics so lets avoid the loop below. + # First set a reasonable default. + lt_cv_sys_max_cmd_len=16384 + # + if test -x /sbin/sysconfig; then + case `/sbin/sysconfig -q proc exec_disable_arg_limit` in + *1*) lt_cv_sys_max_cmd_len=-1 ;; + esac + fi + ;; + sco3.2v5*) + lt_cv_sys_max_cmd_len=102400 + ;; + sysv5* | sco5v6* | sysv4.2uw2*) + kargmax=`grep ARG_MAX /etc/conf/cf.d/stune 2>/dev/null` + if test -n "$kargmax"; then + lt_cv_sys_max_cmd_len=`echo $kargmax | sed 's/.*[[ ]]//'` + else + lt_cv_sys_max_cmd_len=32768 + fi + ;; + *) + lt_cv_sys_max_cmd_len=`(getconf ARG_MAX) 2> /dev/null` + if test -n "$lt_cv_sys_max_cmd_len" && \ + test undefined != "$lt_cv_sys_max_cmd_len"; then + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 4` + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \* 3` + else + # Make teststring a little bigger before we do anything with it. + # a 1K string should be a reasonable start. + for i in 1 2 3 4 5 6 7 8; do + teststring=$teststring$teststring + done + SHELL=${SHELL-${CONFIG_SHELL-/bin/sh}} + # If test is not a shell built-in, we'll probably end up computing a + # maximum length that is only half of the actual maximum length, but + # we can't tell. + while { test X`env echo "$teststring$teststring" 2>/dev/null` \ + = "X$teststring$teststring"; } >/dev/null 2>&1 && + test 17 != "$i" # 1/2 MB should be enough + do + i=`expr $i + 1` + teststring=$teststring$teststring + done + # Only check the string length outside the loop. + lt_cv_sys_max_cmd_len=`expr "X$teststring" : ".*" 2>&1` + teststring= + # Add a significant safety factor because C++ compilers can tack on + # massive amounts of additional arguments before passing them to the + # linker. It appears as though 1/2 is a usable value. + lt_cv_sys_max_cmd_len=`expr $lt_cv_sys_max_cmd_len \/ 2` + fi + ;; + esac +]) +if test -n "$lt_cv_sys_max_cmd_len"; then + AC_MSG_RESULT($lt_cv_sys_max_cmd_len) +else + AC_MSG_RESULT(none) +fi +max_cmd_len=$lt_cv_sys_max_cmd_len +_LT_DECL([], [max_cmd_len], [0], + [What is the maximum length of a command?]) +])# LT_CMD_MAX_LEN + +# Old name: +AU_ALIAS([AC_LIBTOOL_SYS_MAX_CMD_LEN], [LT_CMD_MAX_LEN]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_SYS_MAX_CMD_LEN], []) + + +# _LT_HEADER_DLFCN +# ---------------- +m4_defun([_LT_HEADER_DLFCN], +[AC_CHECK_HEADERS([dlfcn.h], [], [], [AC_INCLUDES_DEFAULT])dnl +])# _LT_HEADER_DLFCN + + +# _LT_TRY_DLOPEN_SELF (ACTION-IF-TRUE, ACTION-IF-TRUE-W-USCORE, +# ACTION-IF-FALSE, ACTION-IF-CROSS-COMPILING) +# ---------------------------------------------------------------- +m4_defun([_LT_TRY_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test yes = "$cross_compiling"; then : + [$4] +else + lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 + lt_status=$lt_dlunknown + cat > conftest.$ac_ext <<_LT_EOF +[#line $LINENO "configure" +#include "confdefs.h" + +#if HAVE_DLFCN_H +#include +#endif + +#include + +#ifdef RTLD_GLOBAL +# define LT_DLGLOBAL RTLD_GLOBAL +#else +# ifdef DL_GLOBAL +# define LT_DLGLOBAL DL_GLOBAL +# else +# define LT_DLGLOBAL 0 +# endif +#endif + +/* We may have to define LT_DLLAZY_OR_NOW in the command line if we + find out it does not work in some platform. */ +#ifndef LT_DLLAZY_OR_NOW +# ifdef RTLD_LAZY +# define LT_DLLAZY_OR_NOW RTLD_LAZY +# else +# ifdef DL_LAZY +# define LT_DLLAZY_OR_NOW DL_LAZY +# else +# ifdef RTLD_NOW +# define LT_DLLAZY_OR_NOW RTLD_NOW +# else +# ifdef DL_NOW +# define LT_DLLAZY_OR_NOW DL_NOW +# else +# define LT_DLLAZY_OR_NOW 0 +# endif +# endif +# endif +# endif +#endif + +/* When -fvisibility=hidden is used, assume the code has been annotated + correspondingly for the symbols needed. */ +#if defined __GNUC__ && (((__GNUC__ == 3) && (__GNUC_MINOR__ >= 3)) || (__GNUC__ > 3)) +int fnord () __attribute__((visibility("default"))); +#endif + +int fnord () { return 42; } +int main () +{ + void *self = dlopen (0, LT_DLGLOBAL|LT_DLLAZY_OR_NOW); + int status = $lt_dlunknown; + + if (self) + { + if (dlsym (self,"fnord")) status = $lt_dlno_uscore; + else + { + if (dlsym( self,"_fnord")) status = $lt_dlneed_uscore; + else puts (dlerror ()); + } + /* dlclose (self); */ + } + else + puts (dlerror ()); + + return status; +}] +_LT_EOF + if AC_TRY_EVAL(ac_link) && test -s "conftest$ac_exeext" 2>/dev/null; then + (./conftest; exit; ) >&AS_MESSAGE_LOG_FD 2>/dev/null + lt_status=$? + case x$lt_status in + x$lt_dlno_uscore) $1 ;; + x$lt_dlneed_uscore) $2 ;; + x$lt_dlunknown|x*) $3 ;; + esac + else : + # compilation failed + $3 + fi +fi +rm -fr conftest* +])# _LT_TRY_DLOPEN_SELF + + +# LT_SYS_DLOPEN_SELF +# ------------------ +AC_DEFUN([LT_SYS_DLOPEN_SELF], +[m4_require([_LT_HEADER_DLFCN])dnl +if test yes != "$enable_dlopen"; then + enable_dlopen=unknown + enable_dlopen_self=unknown + enable_dlopen_self_static=unknown +else + lt_cv_dlopen=no + lt_cv_dlopen_libs= + + case $host_os in + beos*) + lt_cv_dlopen=load_add_on + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ;; + + mingw* | pw32* | cegcc*) + lt_cv_dlopen=LoadLibrary + lt_cv_dlopen_libs= + ;; + + cygwin*) + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + ;; + + darwin*) + # if libdl is installed we need to link against it + AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl],[ + lt_cv_dlopen=dyld + lt_cv_dlopen_libs= + lt_cv_dlopen_self=yes + ]) + ;; + + tpf*) + # Don't try to run any link tests for TPF. We know it's impossible + # because TPF is a cross-compiler, and we know how we open DSOs. + lt_cv_dlopen=dlopen + lt_cv_dlopen_libs= + lt_cv_dlopen_self=no + ;; + + *) + AC_CHECK_FUNC([shl_load], + [lt_cv_dlopen=shl_load], + [AC_CHECK_LIB([dld], [shl_load], + [lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld], + [AC_CHECK_FUNC([dlopen], + [lt_cv_dlopen=dlopen], + [AC_CHECK_LIB([dl], [dlopen], + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl], + [AC_CHECK_LIB([svld], [dlopen], + [lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld], + [AC_CHECK_LIB([dld], [dld_link], + [lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld]) + ]) + ]) + ]) + ]) + ]) + ;; + esac + + if test no = "$lt_cv_dlopen"; then + enable_dlopen=no + else + enable_dlopen=yes + fi + + case $lt_cv_dlopen in + dlopen) + save_CPPFLAGS=$CPPFLAGS + test yes = "$ac_cv_header_dlfcn_h" && CPPFLAGS="$CPPFLAGS -DHAVE_DLFCN_H" + + save_LDFLAGS=$LDFLAGS + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $export_dynamic_flag_spec\" + + save_LIBS=$LIBS + LIBS="$lt_cv_dlopen_libs $LIBS" + + AC_CACHE_CHECK([whether a program can dlopen itself], + lt_cv_dlopen_self, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self=yes, lt_cv_dlopen_self=yes, + lt_cv_dlopen_self=no, lt_cv_dlopen_self=cross) + ]) + + if test yes = "$lt_cv_dlopen_self"; then + wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\" + AC_CACHE_CHECK([whether a statically linked program can dlopen itself], + lt_cv_dlopen_self_static, [dnl + _LT_TRY_DLOPEN_SELF( + lt_cv_dlopen_self_static=yes, lt_cv_dlopen_self_static=yes, + lt_cv_dlopen_self_static=no, lt_cv_dlopen_self_static=cross) + ]) + fi + + CPPFLAGS=$save_CPPFLAGS + LDFLAGS=$save_LDFLAGS + LIBS=$save_LIBS + ;; + esac + + case $lt_cv_dlopen_self in + yes|no) enable_dlopen_self=$lt_cv_dlopen_self ;; + *) enable_dlopen_self=unknown ;; + esac + + case $lt_cv_dlopen_self_static in + yes|no) enable_dlopen_self_static=$lt_cv_dlopen_self_static ;; + *) enable_dlopen_self_static=unknown ;; + esac +fi +_LT_DECL([dlopen_support], [enable_dlopen], [0], + [Whether dlopen is supported]) +_LT_DECL([dlopen_self], [enable_dlopen_self], [0], + [Whether dlopen of programs is supported]) +_LT_DECL([dlopen_self_static], [enable_dlopen_self_static], [0], + [Whether dlopen of statically linked programs is supported]) +])# LT_SYS_DLOPEN_SELF + +# Old name: +AU_ALIAS([AC_LIBTOOL_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], []) + + +# _LT_COMPILER_C_O([TAGNAME]) +# --------------------------- +# Check to see if options -c and -o are simultaneously supported by compiler. +# This macro does not hard code the compiler like AC_PROG_CC_C_O. +m4_defun([_LT_COMPILER_C_O], +[m4_require([_LT_DECL_SED])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_CACHE_CHECK([if $compiler supports -c -o file.$ac_objext], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)], + [_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=no + $RM -r conftest 2>/dev/null + mkdir conftest + cd conftest + mkdir out + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + lt_compiler_flag="-o out/conftest2.$ac_objext" + # Insert the option either (1) after the last *FLAGS variable, or + # (2) before a word containing "conftest.", or (3) at the end. + # Note that $ac_compile itself does not contain backslashes and begins + # with a dollar sign (not a hyphen), so the echo should work correctly. + lt_compile=`echo "$ac_compile" | $SED \ + -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ + -e 's: [[^ ]]*conftest\.: $lt_compiler_flag&:; t' \ + -e 's:$: $lt_compiler_flag:'` + (eval echo "\"\$as_me:$LINENO: $lt_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$lt_compile" 2>out/conftest.err) + ac_status=$? + cat out/conftest.err >&AS_MESSAGE_LOG_FD + echo "$as_me:$LINENO: \$? = $ac_status" >&AS_MESSAGE_LOG_FD + if (exit $ac_status) && test -s out/conftest2.$ac_objext + then + # The compiler can only warn and ignore the option if not recognized + # So say no if there are warnings + $ECHO "$_lt_compiler_boilerplate" | $SED '/^$/d' > out/conftest.exp + $SED '/^$/d; /^ *+/d' out/conftest.err >out/conftest.er2 + if test ! -s out/conftest.er2 || diff out/conftest.exp out/conftest.er2 >/dev/null; then + _LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + fi + fi + chmod u+w . 2>&AS_MESSAGE_LOG_FD + $RM conftest* + # SGI C++ compiler will create directory out/ii_files/ for + # template instantiation + test -d out/ii_files && $RM out/ii_files/* && rmdir out/ii_files + $RM out/* && rmdir out + cd .. + $RM -r conftest + $RM conftest* +]) +_LT_TAGDECL([compiler_c_o], [lt_cv_prog_compiler_c_o], [1], + [Does compiler simultaneously support -c and -o options?]) +])# _LT_COMPILER_C_O + + +# _LT_COMPILER_FILE_LOCKS([TAGNAME]) +# ---------------------------------- +# Check to see if we can do hard links to lock some files if needed +m4_defun([_LT_COMPILER_FILE_LOCKS], +[m4_require([_LT_ENABLE_LOCK])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +_LT_COMPILER_C_O([$1]) + +hard_links=nottested +if test no = "$_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)" && test no != "$need_locks"; then + # do not overwrite the value of need_locks provided by the user + AC_MSG_CHECKING([if we can lock with hard links]) + hard_links=yes + $RM conftest* + ln conftest.a conftest.b 2>/dev/null && hard_links=no + touch conftest.a + ln conftest.a conftest.b 2>&5 || hard_links=no + ln conftest.a conftest.b 2>/dev/null && hard_links=no + AC_MSG_RESULT([$hard_links]) + if test no = "$hard_links"; then + AC_MSG_WARN(['$CC' does not support '-c -o', so 'make -j' may be unsafe]) + need_locks=warn + fi +else + need_locks=no +fi +_LT_DECL([], [need_locks], [1], [Must we lock files when doing compilation?]) +])# _LT_COMPILER_FILE_LOCKS + + +# _LT_CHECK_OBJDIR +# ---------------- +m4_defun([_LT_CHECK_OBJDIR], +[AC_CACHE_CHECK([for objdir], [lt_cv_objdir], +[rm -f .libs 2>/dev/null +mkdir .libs 2>/dev/null +if test -d .libs; then + lt_cv_objdir=.libs +else + # MS-DOS does not allow filenames that begin with a dot. + lt_cv_objdir=_libs +fi +rmdir .libs 2>/dev/null]) +objdir=$lt_cv_objdir +_LT_DECL([], [objdir], [0], + [The name of the directory that contains temporary libtool files])dnl +m4_pattern_allow([LT_OBJDIR])dnl +AC_DEFINE_UNQUOTED([LT_OBJDIR], "$lt_cv_objdir/", + [Define to the sub-directory where libtool stores uninstalled libraries.]) +])# _LT_CHECK_OBJDIR + + +# _LT_LINKER_HARDCODE_LIBPATH([TAGNAME]) +# -------------------------------------- +# Check hardcoding attributes. +m4_defun([_LT_LINKER_HARDCODE_LIBPATH], +[AC_MSG_CHECKING([how to hardcode library paths into programs]) +_LT_TAGVAR(hardcode_action, $1)= +if test -n "$_LT_TAGVAR(hardcode_libdir_flag_spec, $1)" || + test -n "$_LT_TAGVAR(runpath_var, $1)" || + test yes = "$_LT_TAGVAR(hardcode_automatic, $1)"; then + + # We can hardcode non-existent directories. + if test no != "$_LT_TAGVAR(hardcode_direct, $1)" && + # If the only mechanism to avoid hardcoding is shlibpath_var, we + # have to relink, otherwise we might link with an installed library + # when we should be linking with a yet-to-be-installed one + ## test no != "$_LT_TAGVAR(hardcode_shlibpath_var, $1)" && + test no != "$_LT_TAGVAR(hardcode_minus_L, $1)"; then + # Linking always hardcodes the temporary library directory. + _LT_TAGVAR(hardcode_action, $1)=relink + else + # We can link without hardcoding, and we can hardcode nonexisting dirs. + _LT_TAGVAR(hardcode_action, $1)=immediate + fi +else + # We cannot hardcode anything, or else we can only hardcode existing + # directories. + _LT_TAGVAR(hardcode_action, $1)=unsupported +fi +AC_MSG_RESULT([$_LT_TAGVAR(hardcode_action, $1)]) + +if test relink = "$_LT_TAGVAR(hardcode_action, $1)" || + test yes = "$_LT_TAGVAR(inherit_rpath, $1)"; then + # Fast installation is not supported + enable_fast_install=no +elif test yes = "$shlibpath_overrides_runpath" || + test no = "$enable_shared"; then + # Fast installation is not necessary + enable_fast_install=needless +fi +_LT_TAGDECL([], [hardcode_action], [0], + [How to hardcode a shared library path into an executable]) +])# _LT_LINKER_HARDCODE_LIBPATH + + +# _LT_CMD_STRIPLIB +# ---------------- +m4_defun([_LT_CMD_STRIPLIB], +[m4_require([_LT_DECL_EGREP]) +striplib= +old_striplib= +AC_MSG_CHECKING([whether stripping libraries is possible]) +if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then + test -z "$old_striplib" && old_striplib="$STRIP --strip-debug" + test -z "$striplib" && striplib="$STRIP --strip-unneeded" + AC_MSG_RESULT([yes]) +else +# FIXME - insert some real tests, host_os isn't really good enough + case $host_os in + darwin*) + if test -n "$STRIP"; then + striplib="$STRIP -x" + old_striplib="$STRIP -S" + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + fi + ;; + *) + AC_MSG_RESULT([no]) + ;; + esac +fi +_LT_DECL([], [old_striplib], [1], [Commands to strip libraries]) +_LT_DECL([], [striplib], [1]) +])# _LT_CMD_STRIPLIB + + +# _LT_PREPARE_MUNGE_PATH_LIST +# --------------------------- +# Make sure func_munge_path_list() is defined correctly. +m4_defun([_LT_PREPARE_MUNGE_PATH_LIST], +[[# func_munge_path_list VARIABLE PATH +# ----------------------------------- +# VARIABLE is name of variable containing _space_ separated list of +# directories to be munged by the contents of PATH, which is string +# having a format: +# "DIR[:DIR]:" +# string "DIR[ DIR]" will be prepended to VARIABLE +# ":DIR[:DIR]" +# string "DIR[ DIR]" will be appended to VARIABLE +# "DIRP[:DIRP]::[DIRA:]DIRA" +# string "DIRP[ DIRP]" will be prepended to VARIABLE and string +# "DIRA[ DIRA]" will be appended to VARIABLE +# "DIR[:DIR]" +# VARIABLE will be replaced by "DIR[ DIR]" +func_munge_path_list () +{ + case x@S|@2 in + x) + ;; + *:) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'` \@S|@@S|@1\" + ;; + x:*) + eval @S|@1=\"\@S|@@S|@1 `$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + *::*) + eval @S|@1=\"\@S|@@S|@1\ `$ECHO @S|@2 | $SED -e 's/.*:://' -e 's/:/ /g'`\" + eval @S|@1=\"`$ECHO @S|@2 | $SED -e 's/::.*//' -e 's/:/ /g'`\ \@S|@@S|@1\" + ;; + *) + eval @S|@1=\"`$ECHO @S|@2 | $SED 's/:/ /g'`\" + ;; + esac +} +]])# _LT_PREPARE_PATH_LIST + + +# _LT_SYS_DYNAMIC_LINKER([TAG]) +# ----------------------------- +# PORTME Fill in your ld.so characteristics +m4_defun([_LT_SYS_DYNAMIC_LINKER], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_OBJDUMP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CHECK_SHELL_FEATURES])dnl +m4_require([_LT_PREPARE_MUNGE_PATH_LIST])dnl +AC_MSG_CHECKING([dynamic linker characteristics]) +m4_if([$1], + [], [ +if test yes = "$GCC"; then + case $host_os in + darwin*) lt_awk_arg='/^libraries:/,/LR/' ;; + *) lt_awk_arg='/^libraries:/' ;; + esac + case $host_os in + mingw* | cegcc*) lt_sed_strip_eq='s|=\([[A-Za-z]]:\)|\1|g' ;; + *) lt_sed_strip_eq='s|=/|/|g' ;; + esac + lt_search_path_spec=`$CC -print-search-dirs | awk $lt_awk_arg | $SED -e "s/^libraries://" -e $lt_sed_strip_eq` + case $lt_search_path_spec in + *\;*) + # if the path contains ";" then we assume it to be the separator + # otherwise default to the standard path separator (i.e. ":") - it is + # assumed that no part of a normal pathname contains ";" but that should + # okay in the real world where ";" in dirpaths is itself problematic. + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED 's/;/ /g'` + ;; + *) + lt_search_path_spec=`$ECHO "$lt_search_path_spec" | $SED "s/$PATH_SEPARATOR/ /g"` + ;; + esac + # Ok, now we have the path, separated by spaces, we can step through it + # and add multilib dir if necessary... + lt_tmp_lt_search_path_spec= + lt_multi_os_dir=/`$CC $CPPFLAGS $CFLAGS $LDFLAGS -print-multi-os-directory 2>/dev/null` + # ...but if some path component already ends with the multilib dir we assume + # that all is fine and trust -print-search-dirs as is (GCC 4.2? or newer). + case "$lt_multi_os_dir; $lt_search_path_spec " in + "/; "* | "/.; "* | "/./; "* | *"$lt_multi_os_dir "* | *"$lt_multi_os_dir/ "*) + lt_multi_os_dir= + ;; + esac + for lt_sys_path in $lt_search_path_spec; do + if test -d "$lt_sys_path$lt_multi_os_dir"; then + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path$lt_multi_os_dir" + elif test -n "$lt_multi_os_dir"; then + test -d "$lt_sys_path" && \ + lt_tmp_lt_search_path_spec="$lt_tmp_lt_search_path_spec $lt_sys_path" + fi + done + lt_search_path_spec=`$ECHO "$lt_tmp_lt_search_path_spec" | awk ' +BEGIN {RS = " "; FS = "/|\n";} { + lt_foo = ""; + lt_count = 0; + for (lt_i = NF; lt_i > 0; lt_i--) { + if ($lt_i != "" && $lt_i != ".") { + if ($lt_i == "..") { + lt_count++; + } else { + if (lt_count == 0) { + lt_foo = "/" $lt_i lt_foo; + } else { + lt_count--; + } + } + } + } + if (lt_foo != "") { lt_freq[[lt_foo]]++; } + if (lt_freq[[lt_foo]] == 1) { print lt_foo; } +}'` + # AWK program above erroneously prepends '/' to C:/dos/paths + # for these hosts. + case $host_os in + mingw* | cegcc*) lt_search_path_spec=`$ECHO "$lt_search_path_spec" |\ + $SED 's|/\([[A-Za-z]]:\)|\1|g'` ;; + esac + sys_lib_search_path_spec=`$ECHO "$lt_search_path_spec" | $lt_NL2SP` +else + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" +fi]) +library_names_spec= +libname_spec='lib$name' +soname_spec= +shrext_cmds=.so +postinstall_cmds= +postuninstall_cmds= +finish_cmds= +finish_eval= +shlibpath_var= +shlibpath_overrides_runpath=unknown +version_type=none +dynamic_linker="$host_os ld.so" +sys_lib_dlsearch_path_spec="/lib /usr/lib" +need_lib_prefix=unknown +hardcode_into_libs=no + +# when you set need_version to no, make sure it does not cause -set_version +# flags to be left without arguments +need_version=unknown + +AC_ARG_VAR([LT_SYS_LIBRARY_PATH], +[User-defined run-time library search path.]) + +case $host_os in +aix3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname.a' + shlibpath_var=LIBPATH + + # AIX 3 has no versioning support, so we append a major version to the name. + soname_spec='$libname$release$shared_ext$major' + ;; + +aix[[4-9]]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + hardcode_into_libs=yes + if test ia64 = "$host_cpu"; then + # AIX 5 supports IA64 + library_names_spec='$libname$release$shared_ext$major $libname$release$shared_ext$versuffix $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + else + # With GCC up to 2.95.x, collect2 would create an import file + # for dependence libraries. The import file would start with + # the line '#! .'. This would cause the generated library to + # depend on '.', always an invalid library. This was fixed in + # development snapshots of GCC prior to 3.0. + case $host_os in + aix4 | aix4.[[01]] | aix4.[[01]].*) + if { echo '#if __GNUC__ > 2 || (__GNUC__ == 2 && __GNUC_MINOR__ >= 97)' + echo ' yes ' + echo '#endif'; } | $CC -E - | $GREP yes > /dev/null; then + : + else + can_build_shared=no + fi + ;; + esac + # Using Import Files as archive members, it is possible to support + # filename-based versioning of shared library archives on AIX. While + # this would work for both with and without runtime linking, it will + # prevent static linking of such archives. So we do filename-based + # shared library versioning with .so extension only, which is used + # when both runtime linking and shared linking is enabled. + # Unfortunately, runtime linking may impact performance, so we do + # not want this to be the default eventually. Also, we use the + # versioned .so libs for executables only if there is the -brtl + # linker flag in LDFLAGS as well, or --with-aix-soname=svr4 only. + # To allow for filename-based versioning support, we need to create + # libNAME.so.V as an archive file, containing: + # *) an Import File, referring to the versioned filename of the + # archive as well as the shared archive member, telling the + # bitwidth (32 or 64) of that shared object, and providing the + # list of exported symbols of that shared object, eventually + # decorated with the 'weak' keyword + # *) the shared object with the F_LOADONLY flag set, to really avoid + # it being seen by the linker. + # At run time we better use the real file rather than another symlink, + # but for link time we create the symlink libNAME.so -> libNAME.so.V + + case $with_aix_soname,$aix_use_runtimelinking in + # AIX (on Power*) has no versioning support, so currently we cannot hardcode correct + # soname into executable. Probably we can add versioning support to + # collect2, so additional links can be useful in future. + aix,yes) # traditional libtool + dynamic_linker='AIX unversionable lib.so' + # If using run time linking (on AIX 4.2 or later) use lib.so + # instead of lib.a to let people know that these are not + # typical AIX shared libraries. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + aix,no) # traditional AIX only + dynamic_linker='AIX lib.a[(]lib.so.V[)]' + # We preserve .a as extension for shared libraries through AIX4.2 + # and later when we are not doing run time linking. + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + ;; + svr4,*) # full svr4 only + dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)]" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,yes) # both, prefer svr4 + dynamic_linker="AIX lib.so.V[(]$shared_archive_member_spec.o[)], lib.a[(]lib.so.V[)]" + library_names_spec='$libname$release$shared_ext$major $libname$shared_ext' + # unpreferred sharedlib libNAME.a needs extra handling + postinstall_cmds='test -n "$linkname" || linkname="$realname"~func_stripname "" ".so" "$linkname"~$install_shared_prog "$dir/$func_stripname_result.$libext" "$destdir/$func_stripname_result.$libext"~test -z "$tstripme" || test -z "$striplib" || $striplib "$destdir/$func_stripname_result.$libext"' + postuninstall_cmds='for n in $library_names $old_library; do :; done~func_stripname "" ".so" "$n"~test "$func_stripname_result" = "$n" || func_append rmfiles " $odir/$func_stripname_result.$libext"' + # We do not specify a path in Import Files, so LIBPATH fires. + shlibpath_overrides_runpath=yes + ;; + *,no) # both, prefer aix + dynamic_linker="AIX lib.a[(]lib.so.V[)], lib.so.V[(]$shared_archive_member_spec.o[)]" + library_names_spec='$libname$release.a $libname.a' + soname_spec='$libname$release$shared_ext$major' + # unpreferred sharedlib libNAME.so.V and symlink libNAME.so need extra handling + postinstall_cmds='test -z "$dlname" || $install_shared_prog $dir/$dlname $destdir/$dlname~test -z "$tstripme" || test -z "$striplib" || $striplib $destdir/$dlname~test -n "$linkname" || linkname=$realname~func_stripname "" ".a" "$linkname"~(cd "$destdir" && $LN_S -f $dlname $func_stripname_result.so)' + postuninstall_cmds='test -z "$dlname" || func_append rmfiles " $odir/$dlname"~for n in $old_library $library_names; do :; done~func_stripname "" ".a" "$n"~func_append rmfiles " $odir/$func_stripname_result.so"' + ;; + esac + shlibpath_var=LIBPATH + fi + ;; + +amigaos*) + case $host_cpu in + powerpc) + # Since July 2007 AmigaOS4 officially supports .so libraries. + # When compiling the executable, add -use-dynld -Lsobjs: to the compileline. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + ;; + m68k) + library_names_spec='$libname.ixlibrary $libname.a' + # Create ${libname}_ixlibrary.a entries in /sys/libs. + finish_eval='for lib in `ls $libdir/*.ixlibrary 2>/dev/null`; do libname=`func_echo_all "$lib" | $SED '\''s%^.*/\([[^/]]*\)\.ixlibrary$%\1%'\''`; $RM /sys/libs/${libname}_ixlibrary.a; $show "cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a"; cd /sys/libs && $LN_S $lib ${libname}_ixlibrary.a || exit 1; done' + ;; + esac + ;; + +beos*) + library_names_spec='$libname$shared_ext' + dynamic_linker="$host_os ld.so" + shlibpath_var=LIBRARY_PATH + ;; + +bsdi[[45]]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/shlib /usr/lib /usr/X11/lib /usr/contrib/lib /lib /usr/local/lib" + sys_lib_dlsearch_path_spec="/shlib /usr/lib /usr/local/lib" + # the default ld.so.conf also contains /usr/contrib/lib and + # /usr/X11R6/lib (/usr/X11 is a link to /usr/X11R6), but let us allow + # libtool to hard-code these into programs + ;; + +cygwin* | mingw* | pw32* | cegcc*) + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + + case $GCC,$cc_basename in + yes,*) + # gcc + library_names_spec='$libname.dll.a' + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + + case $host_os in + cygwin*) + # Cygwin DLLs use 'cyg' prefix rather than 'lib' + soname_spec='`echo $libname | sed -e 's/^lib/cyg/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' +m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/lib/w32api"]) + ;; + mingw* | cegcc*) + # MinGW DLLs use traditional 'lib' prefix + soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + ;; + pw32*) + # pw32 DLLs use 'pw' prefix rather than 'lib' + library_names_spec='`echo $libname | sed -e 's/^lib/pw/'``echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + ;; + esac + dynamic_linker='Win32 ld.exe' + ;; + + *,cl*) + # Native MSVC + libname_spec='$name' + soname_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext' + library_names_spec='$libname.dll.lib' + + case $build_os in + mingw*) + sys_lib_search_path_spec= + lt_save_ifs=$IFS + IFS=';' + for lt_path in $LIB + do + IFS=$lt_save_ifs + # Let DOS variable expansion print the short 8.3 style file name. + lt_path=`cd "$lt_path" 2>/dev/null && cmd //C "for %i in (".") do @echo %~si"` + sys_lib_search_path_spec="$sys_lib_search_path_spec $lt_path" + done + IFS=$lt_save_ifs + # Convert to MSYS style. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | sed -e 's|\\\\|/|g' -e 's| \\([[a-zA-Z]]\\):| /\\1|g' -e 's|^ ||'` + ;; + cygwin*) + # Convert to unix form, then to dos form, then back to unix form + # but this time dos style (no spaces!) so that the unix form looks + # like /cygdrive/c/PROGRA~1:/cygdr... + sys_lib_search_path_spec=`cygpath --path --unix "$LIB"` + sys_lib_search_path_spec=`cygpath --path --dos "$sys_lib_search_path_spec" 2>/dev/null` + sys_lib_search_path_spec=`cygpath --path --unix "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + ;; + *) + sys_lib_search_path_spec=$LIB + if $ECHO "$sys_lib_search_path_spec" | [$GREP ';[c-zC-Z]:/' >/dev/null]; then + # It is most probably a Windows format PATH. + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e 's/;/ /g'` + else + sys_lib_search_path_spec=`$ECHO "$sys_lib_search_path_spec" | $SED -e "s/$PATH_SEPARATOR/ /g"` + fi + # FIXME: find the short name or the path components, as spaces are + # common. (e.g. "Program Files" -> "PROGRA~1") + ;; + esac + + # DLL is installed to $(libdir)/../bin by postinstall_cmds + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; echo \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; echo \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + shlibpath_overrides_runpath=yes + dynamic_linker='Win32 link.exe' + ;; + + *) + # Assume MSVC wrapper + library_names_spec='$libname`echo $release | $SED -e 's/[[.]]/-/g'`$versuffix$shared_ext $libname.lib' + dynamic_linker='Win32 ld.exe' + ;; + esac + # FIXME: first we should search . and the directory the executable is in + shlibpath_var=PATH + ;; + +darwin* | rhapsody*) + dynamic_linker="$host_os dyld" + version_type=darwin + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$major$shared_ext $libname$shared_ext' + soname_spec='$libname$release$major$shared_ext' + shlibpath_overrides_runpath=yes + shlibpath_var=DYLD_LIBRARY_PATH + shrext_cmds='`test .$module = .yes && echo .so || echo .dylib`' +m4_if([$1], [],[ + sys_lib_search_path_spec="$sys_lib_search_path_spec /usr/local/lib"]) + sys_lib_dlsearch_path_spec='/usr/local/lib /lib /usr/lib' + ;; + +dgux*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +freebsd* | dragonfly*) + # DragonFly does not have aout. When/if they implement a new + # versioning mechanism, adjust this. + if test -x /usr/bin/objformat; then + objformat=`/usr/bin/objformat` + else + case $host_os in + freebsd[[23]].*) objformat=aout ;; + *) objformat=elf ;; + esac + fi + version_type=freebsd-$objformat + case $version_type in + freebsd-elf*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + need_version=no + need_lib_prefix=no + ;; + freebsd-*) + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + need_version=yes + ;; + esac + shlibpath_var=LD_LIBRARY_PATH + case $host_os in + freebsd2.*) + shlibpath_overrides_runpath=yes + ;; + freebsd3.[[01]]* | freebsdelf3.[[01]]*) + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + freebsd3.[[2-9]]* | freebsdelf3.[[2-9]]* | \ + freebsd4.[[0-5]] | freebsdelf4.[[0-5]] | freebsd4.1.1 | freebsdelf4.1.1) + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + *) # from 4.6 on, and DragonFly + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + esac + ;; + +haiku*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + dynamic_linker="$host_os runtime_loader" + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LIBRARY_PATH + shlibpath_overrides_runpath=no + sys_lib_dlsearch_path_spec='/boot/home/config/lib /boot/common/lib /boot/system/lib' + hardcode_into_libs=yes + ;; + +hpux9* | hpux10* | hpux11*) + # Give a soname corresponding to the major version so that dld.sl refuses to + # link against other versions. + version_type=sunos + need_lib_prefix=no + need_version=no + case $host_cpu in + ia64*) + shrext_cmds='.so' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.so" + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + if test 32 = "$HPUX_IA64_MODE"; then + sys_lib_search_path_spec="/usr/lib/hpux32 /usr/local/lib/hpux32 /usr/local/lib" + sys_lib_dlsearch_path_spec=/usr/lib/hpux32 + else + sys_lib_search_path_spec="/usr/lib/hpux64 /usr/local/lib/hpux64" + sys_lib_dlsearch_path_spec=/usr/lib/hpux64 + fi + ;; + hppa*64*) + shrext_cmds='.sl' + hardcode_into_libs=yes + dynamic_linker="$host_os dld.sl" + shlibpath_var=LD_LIBRARY_PATH # How should we handle SHLIB_PATH + shlibpath_overrides_runpath=yes # Unless +noenvvar is specified. + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + sys_lib_search_path_spec="/usr/lib/pa20_64 /usr/ccs/lib/pa20_64" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + *) + shrext_cmds='.sl' + dynamic_linker="$host_os dld.sl" + shlibpath_var=SHLIB_PATH + shlibpath_overrides_runpath=no # +s is required to enable SHLIB_PATH + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + ;; + esac + # HP-UX runs *really* slowly unless shared libraries are mode 555, ... + postinstall_cmds='chmod 555 $lib' + # or fails outright, so override atomically: + install_override_mode=555 + ;; + +interix[[3-9]]*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='Interix 3.x ld.so.1 (PE, like ELF)' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +irix5* | irix6* | nonstopux*) + case $host_os in + nonstopux*) version_type=nonstopux ;; + *) + if test yes = "$lt_cv_prog_gnu_ld"; then + version_type=linux # correct to gnu/linux during the next big refactor + else + version_type=irix + fi ;; + esac + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$release$shared_ext $libname$shared_ext' + case $host_os in + irix5* | nonstopux*) + libsuff= shlibsuff= + ;; + *) + case $LD in # libtool.m4 will add one of these switches to LD + *-32|*"-32 "|*-melf32bsmip|*"-melf32bsmip ") + libsuff= shlibsuff= libmagic=32-bit;; + *-n32|*"-n32 "|*-melf32bmipn32|*"-melf32bmipn32 ") + libsuff=32 shlibsuff=N32 libmagic=N32;; + *-64|*"-64 "|*-melf64bmip|*"-melf64bmip ") + libsuff=64 shlibsuff=64 libmagic=64-bit;; + *) libsuff= shlibsuff= libmagic=never-match;; + esac + ;; + esac + shlibpath_var=LD_LIBRARY${shlibsuff}_PATH + shlibpath_overrides_runpath=no + sys_lib_search_path_spec="/usr/lib$libsuff /lib$libsuff /usr/local/lib$libsuff" + sys_lib_dlsearch_path_spec="/usr/lib$libsuff /lib$libsuff" + hardcode_into_libs=yes + ;; + +# No shared lib support for Linux oldld, aout, or coff. +linux*oldld* | linux*aout* | linux*coff*) + dynamic_linker=no + ;; + +linux*android*) + version_type=none # Android doesn't support versioned libraries. + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext' + soname_spec='$libname$release$shared_ext' + finish_cmds= + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + dynamic_linker='Android linker' + # Don't embed -rpath directories since the linker doesn't support them. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -n $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + + # Some binutils ld are patched to set DT_RUNPATH + AC_CACHE_VAL([lt_cv_shlibpath_overrides_runpath], + [lt_cv_shlibpath_overrides_runpath=no + save_LDFLAGS=$LDFLAGS + save_libdir=$libdir + eval "libdir=/foo; wl=\"$_LT_TAGVAR(lt_prog_compiler_wl, $1)\"; \ + LDFLAGS=\"\$LDFLAGS $_LT_TAGVAR(hardcode_libdir_flag_spec, $1)\"" + AC_LINK_IFELSE([AC_LANG_PROGRAM([],[])], + [AS_IF([ ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null], + [lt_cv_shlibpath_overrides_runpath=yes])]) + LDFLAGS=$save_LDFLAGS + libdir=$save_libdir + ]) + shlibpath_overrides_runpath=$lt_cv_shlibpath_overrides_runpath + + # This implies no fast_install, which is unacceptable. + # Some rework will be needed to allow for fast_install + # before this can be enabled. + hardcode_into_libs=yes + + # Add ABI-specific directories to the system library path. + sys_lib_dlsearch_path_spec="/lib64 /usr/lib64 /lib /usr/lib" + + # Ideally, we could use ldconfig to report *all* directores which are + # searched for libraries, however this is still not possible. Aside from not + # being certain /sbin/ldconfig is available, command + # 'ldconfig -N -X -v | grep ^/' on 64bit Fedora does not report /usr/lib64, + # even though it is searched at run-time. Try to do the best guess by + # appending ld.so.conf contents (and includes) to the search path. + if test -f /etc/ld.so.conf; then + lt_ld_extra=`awk '/^include / { system(sprintf("cd /etc; cat %s 2>/dev/null", \[$]2)); skip = 1; } { if (!skip) print \[$]0; skip = 0; }' < /etc/ld.so.conf | $SED -e 's/#.*//;/^[ ]*hwcap[ ]/d;s/[:, ]/ /g;s/=[^=]*$//;s/=[^= ]* / /g;s/"//g;/^$/d' | tr '\n' ' '` + sys_lib_dlsearch_path_spec="$sys_lib_dlsearch_path_spec $lt_ld_extra" + fi + + # We used to test for /lib/ld.so.1 and disable shared libraries on + # powerpc, because MkLinux only supported shared libraries with the + # GNU dynamic linker. Since this was broken with cross compilers, + # most powerpc-linux boxes support dynamic linking these days and + # people can always --disable-shared, the test was removed, and we + # assume the GNU/Linux dynamic linker is in use. + dynamic_linker='GNU/Linux ld.so' + ;; + +netbsd*) + version_type=sunos + need_lib_prefix=no + need_version=no + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + dynamic_linker='NetBSD (a.out) ld.so' + else + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + dynamic_linker='NetBSD ld.elf_so' + fi + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + ;; + +newsos6) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +*nto* | *qnx*) + version_type=qnx + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + dynamic_linker='ldqnx.so' + ;; + +openbsd* | bitrig*) + version_type=sunos + sys_lib_dlsearch_path_spec=/usr/lib + need_lib_prefix=no + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + need_version=no + else + need_version=yes + fi + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/sbin" ldconfig -m $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + ;; + +os2*) + libname_spec='$name' + version_type=windows + shrext_cmds=.dll + need_version=no + need_lib_prefix=no + # OS/2 can only load a DLL with a base name of 8 characters or less. + soname_spec='`test -n "$os2dllname" && libname="$os2dllname"; + v=$($ECHO $release$versuffix | tr -d .-); + n=$($ECHO $libname | cut -b -$((8 - ${#v})) | tr . _); + $ECHO $n$v`$shared_ext' + library_names_spec='${libname}_dll.$libext' + dynamic_linker='OS/2 ld.exe' + shlibpath_var=BEGINLIBPATH + sys_lib_search_path_spec="/lib /usr/lib /usr/local/lib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + postinstall_cmds='base_file=`basename \$file`~ + dlpath=`$SHELL 2>&1 -c '\''. $dir/'\''\$base_file'\''i; $ECHO \$dlname'\''`~ + dldir=$destdir/`dirname \$dlpath`~ + test -d \$dldir || mkdir -p \$dldir~ + $install_prog $dir/$dlname \$dldir/$dlname~ + chmod a+x \$dldir/$dlname~ + if test -n '\''$stripme'\'' && test -n '\''$striplib'\''; then + eval '\''$striplib \$dldir/$dlname'\'' || exit \$?; + fi' + postuninstall_cmds='dldll=`$SHELL 2>&1 -c '\''. $file; $ECHO \$dlname'\''`~ + dlpath=$dir/\$dldll~ + $RM \$dlpath' + ;; + +osf3* | osf4* | osf5*) + version_type=osf + need_lib_prefix=no + need_version=no + soname_spec='$libname$release$shared_ext$major' + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + sys_lib_search_path_spec="/usr/shlib /usr/ccs/lib /usr/lib/cmplrs/cc /usr/lib /usr/local/lib /var/shlib" + sys_lib_dlsearch_path_spec=$sys_lib_search_path_spec + ;; + +rdos*) + dynamic_linker=no + ;; + +solaris*) + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + # ldd complains unless libraries are executable + postinstall_cmds='chmod +x $lib' + ;; + +sunos4*) + version_type=sunos + library_names_spec='$libname$release$shared_ext$versuffix $libname$shared_ext$versuffix' + finish_cmds='PATH="\$PATH:/usr/etc" ldconfig $libdir' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + if test yes = "$with_gnu_ld"; then + need_lib_prefix=no + fi + need_version=yes + ;; + +sysv4 | sysv4.3*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + case $host_vendor in + sni) + shlibpath_overrides_runpath=no + need_lib_prefix=no + runpath_var=LD_RUN_PATH + ;; + siemens) + need_lib_prefix=no + ;; + motorola) + need_lib_prefix=no + need_version=no + shlibpath_overrides_runpath=no + sys_lib_search_path_spec='/lib /usr/lib /usr/ccs/lib' + ;; + esac + ;; + +sysv4*MP*) + if test -d /usr/nec; then + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$shared_ext.$versuffix $libname$shared_ext.$major $libname$shared_ext' + soname_spec='$libname$shared_ext.$major' + shlibpath_var=LD_LIBRARY_PATH + fi + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + version_type=sco + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=yes + hardcode_into_libs=yes + if test yes = "$with_gnu_ld"; then + sys_lib_search_path_spec='/usr/local/lib /usr/gnu/lib /usr/ccs/lib /usr/lib /lib' + else + sys_lib_search_path_spec='/usr/ccs/lib /usr/lib' + case $host_os in + sco3.2v5*) + sys_lib_search_path_spec="$sys_lib_search_path_spec /lib" + ;; + esac + fi + sys_lib_dlsearch_path_spec='/usr/lib' + ;; + +tpf*) + # TPF is a cross-target only. Preferred cross-host = GNU/Linux. + version_type=linux # correct to gnu/linux during the next big refactor + need_lib_prefix=no + need_version=no + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + shlibpath_var=LD_LIBRARY_PATH + shlibpath_overrides_runpath=no + hardcode_into_libs=yes + ;; + +uts4*) + version_type=linux # correct to gnu/linux during the next big refactor + library_names_spec='$libname$release$shared_ext$versuffix $libname$release$shared_ext$major $libname$shared_ext' + soname_spec='$libname$release$shared_ext$major' + shlibpath_var=LD_LIBRARY_PATH + ;; + +*) + dynamic_linker=no + ;; +esac +AC_MSG_RESULT([$dynamic_linker]) +test no = "$dynamic_linker" && can_build_shared=no + +variables_saved_for_relink="PATH $shlibpath_var $runpath_var" +if test yes = "$GCC"; then + variables_saved_for_relink="$variables_saved_for_relink GCC_EXEC_PREFIX COMPILER_PATH LIBRARY_PATH" +fi + +if test set = "${lt_cv_sys_lib_search_path_spec+set}"; then + sys_lib_search_path_spec=$lt_cv_sys_lib_search_path_spec +fi + +if test set = "${lt_cv_sys_lib_dlsearch_path_spec+set}"; then + sys_lib_dlsearch_path_spec=$lt_cv_sys_lib_dlsearch_path_spec +fi + +# remember unaugmented sys_lib_dlsearch_path content for libtool script decls... +configure_time_dlsearch_path=$sys_lib_dlsearch_path_spec + +# ... but it needs LT_SYS_LIBRARY_PATH munging for other configure-time code +func_munge_path_list sys_lib_dlsearch_path_spec "$LT_SYS_LIBRARY_PATH" + +# to be used as default LT_SYS_LIBRARY_PATH value in generated libtool +configure_time_lt_sys_library_path=$LT_SYS_LIBRARY_PATH + +_LT_DECL([], [variables_saved_for_relink], [1], + [Variables whose values should be saved in libtool wrapper scripts and + restored at link time]) +_LT_DECL([], [need_lib_prefix], [0], + [Do we need the "lib" prefix for modules?]) +_LT_DECL([], [need_version], [0], [Do we need a version for libraries?]) +_LT_DECL([], [version_type], [0], [Library versioning type]) +_LT_DECL([], [runpath_var], [0], [Shared library runtime path variable]) +_LT_DECL([], [shlibpath_var], [0],[Shared library path variable]) +_LT_DECL([], [shlibpath_overrides_runpath], [0], + [Is shlibpath searched before the hard-coded library search path?]) +_LT_DECL([], [libname_spec], [1], [Format of library name prefix]) +_LT_DECL([], [library_names_spec], [1], + [[List of archive names. First name is the real one, the rest are links. + The last name is the one that the linker finds with -lNAME]]) +_LT_DECL([], [soname_spec], [1], + [[The coded name of the library, if different from the real name]]) +_LT_DECL([], [install_override_mode], [1], + [Permission mode override for installation of shared libraries]) +_LT_DECL([], [postinstall_cmds], [2], + [Command to use after installation of a shared archive]) +_LT_DECL([], [postuninstall_cmds], [2], + [Command to use after uninstallation of a shared archive]) +_LT_DECL([], [finish_cmds], [2], + [Commands used to finish a libtool library installation in a directory]) +_LT_DECL([], [finish_eval], [1], + [[As "finish_cmds", except a single script fragment to be evaled but + not shown]]) +_LT_DECL([], [hardcode_into_libs], [0], + [Whether we should hardcode library paths into libraries]) +_LT_DECL([], [sys_lib_search_path_spec], [2], + [Compile-time system search path for libraries]) +_LT_DECL([sys_lib_dlsearch_path_spec], [configure_time_dlsearch_path], [2], + [Detected run-time system search path for libraries]) +_LT_DECL([], [configure_time_lt_sys_library_path], [2], + [Explicit LT_SYS_LIBRARY_PATH set during ./configure time]) +])# _LT_SYS_DYNAMIC_LINKER + + +# _LT_PATH_TOOL_PREFIX(TOOL) +# -------------------------- +# find a file program that can recognize shared library +AC_DEFUN([_LT_PATH_TOOL_PREFIX], +[m4_require([_LT_DECL_EGREP])dnl +AC_MSG_CHECKING([for $1]) +AC_CACHE_VAL(lt_cv_path_MAGIC_CMD, +[case $MAGIC_CMD in +[[\\/*] | ?:[\\/]*]) + lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path. + ;; +*) + lt_save_MAGIC_CMD=$MAGIC_CMD + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR +dnl $ac_dummy forces splitting on constant user-supplied paths. +dnl POSIX.2 word splitting is done only on the output of word expansions, +dnl not every word. This closes a longstanding sh security hole. + ac_dummy="m4_if([$2], , $PATH, [$2])" + for ac_dir in $ac_dummy; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$1"; then + lt_cv_path_MAGIC_CMD=$ac_dir/"$1" + if test -n "$file_magic_test_file"; then + case $deplibs_check_method in + "file_magic "*) + file_magic_regex=`expr "$deplibs_check_method" : "file_magic \(.*\)"` + MAGIC_CMD=$lt_cv_path_MAGIC_CMD + if eval $file_magic_cmd \$file_magic_test_file 2> /dev/null | + $EGREP "$file_magic_regex" > /dev/null; then + : + else + cat <<_LT_EOF 1>&2 + +*** Warning: the command libtool uses to detect shared libraries, +*** $file_magic_cmd, produces output that libtool cannot recognize. +*** The result is that libtool may fail to recognize shared libraries +*** as such. This will affect the creation of libtool libraries that +*** depend on shared libraries, but programs linked with such libtool +*** libraries will work regardless of this problem. Nevertheless, you +*** may want to report the problem to your system manager and/or to +*** bug-libtool@gnu.org + +_LT_EOF + fi ;; + esac + fi + break + fi + done + IFS=$lt_save_ifs + MAGIC_CMD=$lt_save_MAGIC_CMD + ;; +esac]) +MAGIC_CMD=$lt_cv_path_MAGIC_CMD +if test -n "$MAGIC_CMD"; then + AC_MSG_RESULT($MAGIC_CMD) +else + AC_MSG_RESULT(no) +fi +_LT_DECL([], [MAGIC_CMD], [0], + [Used to examine libraries when file_magic_cmd begins with "file"])dnl +])# _LT_PATH_TOOL_PREFIX + +# Old name: +AU_ALIAS([AC_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_PATH_TOOL_PREFIX], []) + + +# _LT_PATH_MAGIC +# -------------- +# find a file program that can recognize a shared library +m4_defun([_LT_PATH_MAGIC], +[_LT_PATH_TOOL_PREFIX(${ac_tool_prefix}file, /usr/bin$PATH_SEPARATOR$PATH) +if test -z "$lt_cv_path_MAGIC_CMD"; then + if test -n "$ac_tool_prefix"; then + _LT_PATH_TOOL_PREFIX(file, /usr/bin$PATH_SEPARATOR$PATH) + else + MAGIC_CMD=: + fi +fi +])# _LT_PATH_MAGIC + + +# LT_PATH_LD +# ---------- +# find the pathname to the GNU or non-GNU linker +AC_DEFUN([LT_PATH_LD], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_PROG_ECHO_BACKSLASH])dnl + +AC_ARG_WITH([gnu-ld], + [AS_HELP_STRING([--with-gnu-ld], + [assume the C compiler uses GNU ld @<:@default=no@:>@])], + [test no = "$withval" || with_gnu_ld=yes], + [with_gnu_ld=no])dnl + +ac_prog=ld +if test yes = "$GCC"; then + # Check if gcc -print-prog-name=ld gives a path. + AC_MSG_CHECKING([for ld used by $CC]) + 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. + [[\\/]]* | ?:[[\\/]]*) + re_direlt='/[[^/]][[^/]]*/\.\./' + # Canonicalize the pathname 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 yes = "$with_gnu_ld"; then + AC_MSG_CHECKING([for GNU ld]) +else + AC_MSG_CHECKING([for non-GNU ld]) +fi +AC_CACHE_VAL(lt_cv_path_LD, +[if test -z "$LD"; then + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + if test -f "$ac_dir/$ac_prog" || test -f "$ac_dir/$ac_prog$ac_exeext"; then + lt_cv_path_LD=$ac_dir/$ac_prog + # Check to see if the program is GNU ld. I'd rather use --version, + # but apparently some variants of GNU ld only accept -v. + # Break only if it was the GNU/non-GNU ld that we prefer. + case `"$lt_cv_path_LD" -v 2>&1 &1 conftest.i +cat conftest.i conftest.i >conftest2.i +: ${lt_DD:=$DD} +AC_PATH_PROGS_FEATURE_CHECK([lt_DD], [dd], +[if "$ac_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && ac_cv_path_lt_DD="$ac_path_lt_DD" ac_path_lt_DD_found=: +fi]) +rm -f conftest.i conftest2.i conftest.out]) +])# _LT_PATH_DD + + +# _LT_CMD_TRUNCATE +# ---------------- +# find command to truncate a binary pipe +m4_defun([_LT_CMD_TRUNCATE], +[m4_require([_LT_PATH_DD]) +AC_CACHE_CHECK([how to truncate binary pipes], [lt_cv_truncate_bin], +[printf 0123456789abcdef0123456789abcdef >conftest.i +cat conftest.i conftest.i >conftest2.i +lt_cv_truncate_bin= +if "$ac_cv_path_lt_DD" bs=32 count=1 conftest.out 2>/dev/null; then + cmp -s conftest.i conftest.out \ + && lt_cv_truncate_bin="$ac_cv_path_lt_DD bs=4096 count=1" +fi +rm -f conftest.i conftest2.i conftest.out +test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"]) +_LT_DECL([lt_truncate_bin], [lt_cv_truncate_bin], [1], + [Command to truncate a binary pipe]) +])# _LT_CMD_TRUNCATE + + +# _LT_CHECK_MAGIC_METHOD +# ---------------------- +# how to check for library dependencies +# -- PORTME fill in with the dynamic library characteristics +m4_defun([_LT_CHECK_MAGIC_METHOD], +[m4_require([_LT_DECL_EGREP]) +m4_require([_LT_DECL_OBJDUMP]) +AC_CACHE_CHECK([how to recognize dependent libraries], +lt_cv_deplibs_check_method, +[lt_cv_file_magic_cmd='$MAGIC_CMD' +lt_cv_file_magic_test_file= +lt_cv_deplibs_check_method='unknown' +# Need to set the preceding variable on all platforms that support +# interlibrary dependencies. +# 'none' -- dependencies not supported. +# 'unknown' -- same as none, but documents that we really don't know. +# 'pass_all' -- all dependencies passed with no checks. +# 'test_compile' -- check by making test program. +# 'file_magic [[regex]]' -- check by looking for files in library path +# that responds to the $file_magic_cmd with a given extended regex. +# If you have 'file' or equivalent on your system and you're not sure +# whether 'pass_all' will *always* work, you probably want this one. + +case $host_os in +aix[[4-9]]*) + lt_cv_deplibs_check_method=pass_all + ;; + +beos*) + lt_cv_deplibs_check_method=pass_all + ;; + +bsdi[[45]]*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib)' + lt_cv_file_magic_cmd='/usr/bin/file -L' + lt_cv_file_magic_test_file=/shlib/libc.so + ;; + +cygwin*) + # func_win32_libid is a shell function defined in ltmain.sh + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + ;; + +mingw* | pw32*) + # Base MSYS/MinGW do not provide the 'file' command needed by + # func_win32_libid shell function, so use a weaker test based on 'objdump', + # unless we find 'file', for example because we are cross-compiling. + if ( file / ) >/dev/null 2>&1; then + lt_cv_deplibs_check_method='file_magic ^x86 archive import|^x86 DLL' + lt_cv_file_magic_cmd='func_win32_libid' + else + # Keep this pattern in sync with the one in func_win32_libid. + lt_cv_deplibs_check_method='file_magic file format (pei*-i386(.*architecture: i386)?|pe-arm-wince|pe-x86-64)' + lt_cv_file_magic_cmd='$OBJDUMP -f' + fi + ;; + +cegcc*) + # use the weaker test based on 'objdump'. See mingw*. + lt_cv_deplibs_check_method='file_magic file format pe-arm-.*little(.*architecture: arm)?' + lt_cv_file_magic_cmd='$OBJDUMP -f' + ;; + +darwin* | rhapsody*) + lt_cv_deplibs_check_method=pass_all + ;; + +freebsd* | dragonfly*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + case $host_cpu in + i*86 ) + # Not sure whether the presence of OpenBSD here was a mistake. + # Let's accept both of them until this is cleared up. + lt_cv_deplibs_check_method='file_magic (FreeBSD|OpenBSD|DragonFly)/i[[3-9]]86 (compact )?demand paged shared library' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so.*` + ;; + esac + else + lt_cv_deplibs_check_method=pass_all + fi + ;; + +haiku*) + lt_cv_deplibs_check_method=pass_all + ;; + +hpux10.20* | hpux11*) + lt_cv_file_magic_cmd=/usr/bin/file + case $host_cpu in + ia64*) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|ELF-[[0-9]][[0-9]]) shared object file - IA64' + lt_cv_file_magic_test_file=/usr/lib/hpux32/libc.so + ;; + hppa*64*) + [lt_cv_deplibs_check_method='file_magic (s[0-9][0-9][0-9]|ELF[ -][0-9][0-9])(-bit)?( [LM]SB)? shared object( file)?[, -]* PA-RISC [0-9]\.[0-9]'] + lt_cv_file_magic_test_file=/usr/lib/pa20_64/libc.sl + ;; + *) + lt_cv_deplibs_check_method='file_magic (s[[0-9]][[0-9]][[0-9]]|PA-RISC[[0-9]]\.[[0-9]]) shared library' + lt_cv_file_magic_test_file=/usr/lib/libc.sl + ;; + esac + ;; + +interix[[3-9]]*) + # PIC code is broken on Interix 3.x, that's why |\.a not |_pic\.a here + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|\.a)$' + ;; + +irix5* | irix6* | nonstopux*) + case $LD in + *-32|*"-32 ") libmagic=32-bit;; + *-n32|*"-n32 ") libmagic=N32;; + *-64|*"-64 ") libmagic=64-bit;; + *) libmagic=never-match;; + esac + lt_cv_deplibs_check_method=pass_all + ;; + +# This must be glibc/ELF. +linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + lt_cv_deplibs_check_method=pass_all + ;; + +netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ > /dev/null; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so|_pic\.a)$' + fi + ;; + +newos6*) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (executable|dynamic lib)' + lt_cv_file_magic_cmd=/usr/bin/file + lt_cv_file_magic_test_file=/usr/lib/libnls.so + ;; + +*nto* | *qnx*) + lt_cv_deplibs_check_method=pass_all + ;; + +openbsd* | bitrig*) + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|\.so|_pic\.a)$' + else + lt_cv_deplibs_check_method='match_pattern /lib[[^/]]+(\.so\.[[0-9]]+\.[[0-9]]+|_pic\.a)$' + fi + ;; + +osf3* | osf4* | osf5*) + lt_cv_deplibs_check_method=pass_all + ;; + +rdos*) + lt_cv_deplibs_check_method=pass_all + ;; + +solaris*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX* | sysv4*uw2*) + lt_cv_deplibs_check_method=pass_all + ;; + +sysv4 | sysv4.3*) + case $host_vendor in + motorola) + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[ML]]SB (shared object|dynamic lib) M[[0-9]][[0-9]]* Version [[0-9]]' + lt_cv_file_magic_test_file=`echo /usr/lib/libc.so*` + ;; + ncr) + lt_cv_deplibs_check_method=pass_all + ;; + sequent) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method='file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB (shared object|dynamic lib )' + ;; + sni) + lt_cv_file_magic_cmd='/bin/file' + lt_cv_deplibs_check_method="file_magic ELF [[0-9]][[0-9]]*-bit [[LM]]SB dynamic lib" + lt_cv_file_magic_test_file=/lib/libc.so + ;; + siemens) + lt_cv_deplibs_check_method=pass_all + ;; + pc) + lt_cv_deplibs_check_method=pass_all + ;; + esac + ;; + +tpf*) + lt_cv_deplibs_check_method=pass_all + ;; +os2*) + lt_cv_deplibs_check_method=pass_all + ;; +esac +]) + +file_magic_glob= +want_nocaseglob=no +if test "$build" = "$host"; then + case $host_os in + mingw* | pw32*) + if ( shopt | grep nocaseglob ) >/dev/null 2>&1; then + want_nocaseglob=yes + else + file_magic_glob=`echo aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ | $SED -e "s/\(..\)/s\/[[\1]]\/[[\1]]\/g;/g"` + fi + ;; + esac +fi + +file_magic_cmd=$lt_cv_file_magic_cmd +deplibs_check_method=$lt_cv_deplibs_check_method +test -z "$deplibs_check_method" && deplibs_check_method=unknown + +_LT_DECL([], [deplibs_check_method], [1], + [Method to check whether dependent libraries are shared objects]) +_LT_DECL([], [file_magic_cmd], [1], + [Command to use when deplibs_check_method = "file_magic"]) +_LT_DECL([], [file_magic_glob], [1], + [How to find potential files when deplibs_check_method = "file_magic"]) +_LT_DECL([], [want_nocaseglob], [1], + [Find potential files using nocaseglob when deplibs_check_method = "file_magic"]) +])# _LT_CHECK_MAGIC_METHOD + + +# LT_PATH_NM +# ---------- +# find the pathname to a BSD- or MS-compatible name lister +AC_DEFUN([LT_PATH_NM], +[AC_REQUIRE([AC_PROG_CC])dnl +AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM, +[if test -n "$NM"; then + # Let the user override the test. + lt_cv_path_NM=$NM +else + lt_nm_to_check=${ac_tool_prefix}nm + if test -n "$ac_tool_prefix" && test "$build" = "$host"; then + lt_nm_to_check="$lt_nm_to_check nm" + fi + for lt_tmp_nm in $lt_nm_to_check; do + lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR + for ac_dir in $PATH /usr/ccs/bin/elf /usr/ccs/bin /usr/ucb /bin; do + IFS=$lt_save_ifs + test -z "$ac_dir" && ac_dir=. + tmp_nm=$ac_dir/$lt_tmp_nm + if test -f "$tmp_nm" || test -f "$tmp_nm$ac_exeext"; then + # Check to see if the nm accepts a BSD-compat flag. + # Adding the 'sed 1q' prevents false positives on HP-UX, which says: + # nm: unknown option "B" ignored + # Tru64's nm complains that /dev/null is an invalid object file + # MSYS converts /dev/null to NUL, MinGW nm treats NUL as empty + case $build_os in + mingw*) lt_bad_file=conftest.nm/nofile ;; + *) lt_bad_file=/dev/null ;; + esac + case `"$tmp_nm" -B $lt_bad_file 2>&1 | sed '1q'` in + *$lt_bad_file* | *'Invalid file or object type'*) + lt_cv_path_NM="$tmp_nm -B" + break 2 + ;; + *) + case `"$tmp_nm" -p /dev/null 2>&1 | sed '1q'` in + */dev/null*) + lt_cv_path_NM="$tmp_nm -p" + break 2 + ;; + *) + lt_cv_path_NM=${lt_cv_path_NM="$tmp_nm"} # keep the first match, but + continue # so that we can try to find one that supports BSD flags + ;; + esac + ;; + esac + fi + done + IFS=$lt_save_ifs + done + : ${lt_cv_path_NM=no} +fi]) +if test no != "$lt_cv_path_NM"; then + NM=$lt_cv_path_NM +else + # Didn't find any BSD compatible name lister, look for dumpbin. + if test -n "$DUMPBIN"; then : + # Let the user override the test. + else + AC_CHECK_TOOLS(DUMPBIN, [dumpbin "link -dump"], :) + case `$DUMPBIN -symbols -headers /dev/null 2>&1 | sed '1q'` in + *COFF*) + DUMPBIN="$DUMPBIN -symbols -headers" + ;; + *) + DUMPBIN=: + ;; + esac + fi + AC_SUBST([DUMPBIN]) + if test : != "$DUMPBIN"; then + NM=$DUMPBIN + fi +fi +test -z "$NM" && NM=nm +AC_SUBST([NM]) +_LT_DECL([], [NM], [1], [A BSD- or MS-compatible name lister])dnl + +AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface], + [lt_cv_nm_interface="BSD nm" + echo "int some_variable = 0;" > conftest.$ac_ext + (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&AS_MESSAGE_LOG_FD) + (eval "$ac_compile" 2>conftest.err) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:$LINENO: $NM \\\"conftest.$ac_objext\\\"\"" >&AS_MESSAGE_LOG_FD) + (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) + cat conftest.err >&AS_MESSAGE_LOG_FD + (eval echo "\"\$as_me:$LINENO: output\"" >&AS_MESSAGE_LOG_FD) + cat conftest.out >&AS_MESSAGE_LOG_FD + if $GREP 'External.*some_variable' conftest.out > /dev/null; then + lt_cv_nm_interface="MS dumpbin" + fi + rm -f conftest*]) +])# LT_PATH_NM + +# Old names: +AU_ALIAS([AM_PROG_NM], [LT_PATH_NM]) +AU_ALIAS([AC_PROG_NM], [LT_PATH_NM]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_PROG_NM], []) +dnl AC_DEFUN([AC_PROG_NM], []) + +# _LT_CHECK_SHAREDLIB_FROM_LINKLIB +# -------------------------------- +# how to determine the name of the shared library +# associated with a specific link library. +# -- PORTME fill in with the dynamic library characteristics +m4_defun([_LT_CHECK_SHAREDLIB_FROM_LINKLIB], +[m4_require([_LT_DECL_EGREP]) +m4_require([_LT_DECL_OBJDUMP]) +m4_require([_LT_DECL_DLLTOOL]) +AC_CACHE_CHECK([how to associate runtime and link libraries], +lt_cv_sharedlib_from_linklib_cmd, +[lt_cv_sharedlib_from_linklib_cmd='unknown' + +case $host_os in +cygwin* | mingw* | pw32* | cegcc*) + # two different shell functions defined in ltmain.sh; + # decide which one to use based on capabilities of $DLLTOOL + case `$DLLTOOL --help 2>&1` in + *--identify-strict*) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib + ;; + *) + lt_cv_sharedlib_from_linklib_cmd=func_cygming_dll_for_implib_fallback + ;; + esac + ;; +*) + # fallback: assume linklib IS sharedlib + lt_cv_sharedlib_from_linklib_cmd=$ECHO + ;; +esac +]) +sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd +test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO + +_LT_DECL([], [sharedlib_from_linklib_cmd], [1], + [Command to associate shared and link libraries]) +])# _LT_CHECK_SHAREDLIB_FROM_LINKLIB + + +# _LT_PATH_MANIFEST_TOOL +# ---------------------- +# locate the manifest tool +m4_defun([_LT_PATH_MANIFEST_TOOL], +[AC_CHECK_TOOL(MANIFEST_TOOL, mt, :) +test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt +AC_CACHE_CHECK([if $MANIFEST_TOOL is a manifest tool], [lt_cv_path_mainfest_tool], + [lt_cv_path_mainfest_tool=no + echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&AS_MESSAGE_LOG_FD + $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out + cat conftest.err >&AS_MESSAGE_LOG_FD + if $GREP 'Manifest Tool' conftest.out > /dev/null; then + lt_cv_path_mainfest_tool=yes + fi + rm -f conftest*]) +if test yes != "$lt_cv_path_mainfest_tool"; then + MANIFEST_TOOL=: +fi +_LT_DECL([], [MANIFEST_TOOL], [1], [Manifest tool])dnl +])# _LT_PATH_MANIFEST_TOOL + + +# _LT_DLL_DEF_P([FILE]) +# --------------------- +# True iff FILE is a Windows DLL '.def' file. +# Keep in sync with func_dll_def_p in the libtool script +AC_DEFUN([_LT_DLL_DEF_P], +[dnl + test DEF = "`$SED -n dnl + -e '\''s/^[[ ]]*//'\'' dnl Strip leading whitespace + -e '\''/^\(;.*\)*$/d'\'' dnl Delete empty lines and comments + -e '\''s/^\(EXPORTS\|LIBRARY\)\([[ ]].*\)*$/DEF/p'\'' dnl + -e q dnl Only consider the first "real" line + $1`" dnl +])# _LT_DLL_DEF_P + + +# LT_LIB_M +# -------- +# check for math library +AC_DEFUN([LT_LIB_M], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +LIBM= +case $host in +*-*-beos* | *-*-cegcc* | *-*-cygwin* | *-*-haiku* | *-*-pw32* | *-*-darwin*) + # These system don't have libm, or don't need it + ;; +*-ncr-sysv4.3*) + AC_CHECK_LIB(mw, _mwvalidcheckl, LIBM=-lmw) + AC_CHECK_LIB(m, cos, LIBM="$LIBM -lm") + ;; +*) + AC_CHECK_LIB(m, cos, LIBM=-lm) + ;; +esac +AC_SUBST([LIBM]) +])# LT_LIB_M + +# Old name: +AU_ALIAS([AC_CHECK_LIBM], [LT_LIB_M]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_CHECK_LIBM], []) + + +# _LT_COMPILER_NO_RTTI([TAGNAME]) +# ------------------------------- +m4_defun([_LT_COMPILER_NO_RTTI], +[m4_require([_LT_TAG_COMPILER])dnl + +_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + +if test yes = "$GCC"; then + case $cc_basename in + nvcc*) + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -Xcompiler -fno-builtin' ;; + *) + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' ;; + esac + + _LT_COMPILER_OPTION([if $compiler supports -fno-rtti -fno-exceptions], + lt_cv_prog_compiler_rtti_exceptions, + [-fno-rtti -fno-exceptions], [], + [_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)="$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1) -fno-rtti -fno-exceptions"]) +fi +_LT_TAGDECL([no_builtin_flag], [lt_prog_compiler_no_builtin_flag], [1], + [Compiler flag to turn off builtin functions]) +])# _LT_COMPILER_NO_RTTI + + +# _LT_CMD_GLOBAL_SYMBOLS +# ---------------------- +m4_defun([_LT_CMD_GLOBAL_SYMBOLS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_PROG_CC])dnl +AC_REQUIRE([AC_PROG_AWK])dnl +AC_REQUIRE([LT_PATH_NM])dnl +AC_REQUIRE([LT_PATH_LD])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_TAG_COMPILER])dnl + +# Check for command to grab the raw symbol name followed by C symbol from nm. +AC_MSG_CHECKING([command to parse $NM output from $compiler object]) +AC_CACHE_VAL([lt_cv_sys_global_symbol_pipe], +[ +# These are sane defaults that work on at least a few old systems. +# [They come from Ultrix. What could be older than Ultrix?!! ;)] + +# Character class describing NM global symbol codes. +symcode='[[BCDEGRST]]' + +# Regexp to match symbols that can be accessed directly from C. +sympat='\([[_A-Za-z]][[_A-Za-z0-9]]*\)' + +# Define system-specific variables. +case $host_os in +aix*) + symcode='[[BCDT]]' + ;; +cygwin* | mingw* | pw32* | cegcc*) + symcode='[[ABCDGISTW]]' + ;; +hpux*) + if test ia64 = "$host_cpu"; then + symcode='[[ABCDEGRST]]' + fi + ;; +irix* | nonstopux*) + symcode='[[BCDEGRST]]' + ;; +osf*) + symcode='[[BCDEGQRST]]' + ;; +solaris*) + symcode='[[BDRT]]' + ;; +sco3.2v5*) + symcode='[[DT]]' + ;; +sysv4.2uw2*) + symcode='[[DT]]' + ;; +sysv5* | sco5v6* | unixware* | OpenUNIX*) + symcode='[[ABDT]]' + ;; +sysv4) + symcode='[[DFNSTU]]' + ;; +esac + +# If we're using GNU nm, then use its standard symbol codes. +case `$NM -V 2>&1` in +*GNU* | *'with BFD'*) + symcode='[[ABCDGIRSTW]]' ;; +esac + +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Gets list of data symbols to import. + lt_cv_sys_global_symbol_to_import="sed -n -e 's/^I .* \(.*\)$/\1/p'" + # Adjust the below global symbol transforms to fixup imported variables. + lt_cdecl_hook=" -e 's/^I .* \(.*\)$/extern __declspec(dllimport) char \1;/p'" + lt_c_name_hook=" -e 's/^I .* \(.*\)$/ {\"\1\", (void *) 0},/p'" + lt_c_name_lib_hook="\ + -e 's/^I .* \(lib.*\)$/ {\"\1\", (void *) 0},/p'\ + -e 's/^I .* \(.*\)$/ {\"lib\1\", (void *) 0},/p'" +else + # Disable hooks by default. + lt_cv_sys_global_symbol_to_import= + lt_cdecl_hook= + lt_c_name_hook= + lt_c_name_lib_hook= +fi + +# Transform an extracted symbol line into a proper C declaration. +# Some systems (esp. on ia64) link data and code symbols differently, +# so use this general approach. +lt_cv_sys_global_symbol_to_cdecl="sed -n"\ +$lt_cdecl_hook\ +" -e 's/^T .* \(.*\)$/extern int \1();/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/extern char \1;/p'" + +# Transform an extracted symbol line into symbol name and symbol address +lt_cv_sys_global_symbol_to_c_name_address="sed -n"\ +$lt_c_name_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/p'" + +# Transform an extracted symbol line into symbol name with lib prefix and +# symbol address. +lt_cv_sys_global_symbol_to_c_name_address_lib_prefix="sed -n"\ +$lt_c_name_lib_hook\ +" -e 's/^: \(.*\) .*$/ {\"\1\", (void *) 0},/p'"\ +" -e 's/^$symcode$symcode* .* \(lib.*\)$/ {\"\1\", (void *) \&\1},/p'"\ +" -e 's/^$symcode$symcode* .* \(.*\)$/ {\"lib\1\", (void *) \&\1},/p'" + +# Handle CRLF in mingw tool chain +opt_cr= +case $build_os in +mingw*) + opt_cr=`$ECHO 'x\{0,1\}' | tr x '\015'` # option cr in regexp + ;; +esac + +# Try without a prefix underscore, then with it. +for ac_symprfx in "" "_"; do + + # Transform symcode, sympat, and symprfx into a raw symbol and a C symbol. + symxfrm="\\1 $ac_symprfx\\2 \\2" + + # Write the raw and C identifiers. + if test "$lt_cv_nm_interface" = "MS dumpbin"; then + # Fake it for dumpbin and say T for any non-static function, + # D for any global variable and I for any imported variable. + # Also find C++ and __fastcall symbols from MSVC++, + # which start with @ or ?. + lt_cv_sys_global_symbol_pipe="$AWK ['"\ +" {last_section=section; section=\$ 3};"\ +" /^COFF SYMBOL TABLE/{for(i in hide) delete hide[i]};"\ +" /Section length .*#relocs.*(pick any)/{hide[last_section]=1};"\ +" /^ *Symbol name *: /{split(\$ 0,sn,\":\"); si=substr(sn[2],2)};"\ +" /^ *Type *: code/{print \"T\",si,substr(si,length(prfx))};"\ +" /^ *Type *: data/{print \"I\",si,substr(si,length(prfx))};"\ +" \$ 0!~/External *\|/{next};"\ +" / 0+ UNDEF /{next}; / UNDEF \([^|]\)*()/{next};"\ +" {if(hide[section]) next};"\ +" {f=\"D\"}; \$ 0~/\(\).*\|/{f=\"T\"};"\ +" {split(\$ 0,a,/\||\r/); split(a[2],s)};"\ +" s[1]~/^[@?]/{print f,s[1],s[1]; next};"\ +" s[1]~prfx {split(s[1],t,\"@\"); print f,t[1],substr(t[1],length(prfx))}"\ +" ' prfx=^$ac_symprfx]" + else + lt_cv_sys_global_symbol_pipe="sed -n -e 's/^.*[[ ]]\($symcode$symcode*\)[[ ]][[ ]]*$ac_symprfx$sympat$opt_cr$/$symxfrm/p'" + fi + lt_cv_sys_global_symbol_pipe="$lt_cv_sys_global_symbol_pipe | sed '/ __gnu_lto/d'" + + # Check to see that the pipe works correctly. + pipe_works=no + + rm -f conftest* + cat > conftest.$ac_ext <<_LT_EOF +#ifdef __cplusplus +extern "C" { +#endif +char nm_test_var; +void nm_test_func(void); +void nm_test_func(void){} +#ifdef __cplusplus +} +#endif +int main(){nm_test_var='a';nm_test_func();return(0);} +_LT_EOF + + if AC_TRY_EVAL(ac_compile); then + # Now try to grab the symbols. + nlist=conftest.nm + if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then + # Try sorting and uniquifying the output. + if sort "$nlist" | uniq > "$nlist"T; then + mv -f "$nlist"T "$nlist" + else + rm -f "$nlist"T + fi + + # Make sure that we snagged all the symbols we need. + if $GREP ' nm_test_var$' "$nlist" >/dev/null; then + if $GREP ' nm_test_func$' "$nlist" >/dev/null; then + cat <<_LT_EOF > conftest.$ac_ext +/* Keep this code in sync between libtool.m4, ltmain, lt_system.h, and tests. */ +#if defined _WIN32 || defined __CYGWIN__ || defined _WIN32_WCE +/* DATA imports from DLLs on WIN32 can't be const, because runtime + relocations are performed -- see ld's documentation on pseudo-relocs. */ +# define LT@&t@_DLSYM_CONST +#elif defined __osf__ +/* This system does not cope well with relocations in const data. */ +# define LT@&t@_DLSYM_CONST +#else +# define LT@&t@_DLSYM_CONST const +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +_LT_EOF + # Now generate the symbol file. + eval "$lt_cv_sys_global_symbol_to_cdecl"' < "$nlist" | $GREP -v main >> conftest.$ac_ext' + + cat <<_LT_EOF >> conftest.$ac_ext + +/* The mapping between symbol names and symbols. */ +LT@&t@_DLSYM_CONST struct { + const char *name; + void *address; +} +lt__PROGRAM__LTX_preloaded_symbols[[]] = +{ + { "@PROGRAM@", (void *) 0 }, +_LT_EOF + $SED "s/^$symcode$symcode* .* \(.*\)$/ {\"\1\", (void *) \&\1},/" < "$nlist" | $GREP -v main >> conftest.$ac_ext + cat <<\_LT_EOF >> conftest.$ac_ext + {0, (void *) 0} +}; + +/* This works around a problem in FreeBSD linker */ +#ifdef FREEBSD_WORKAROUND +static const void *lt_preloaded_setup() { + return lt__PROGRAM__LTX_preloaded_symbols; +} +#endif + +#ifdef __cplusplus +} +#endif +_LT_EOF + # Now try linking the two files. + mv conftest.$ac_objext conftstm.$ac_objext + lt_globsym_save_LIBS=$LIBS + lt_globsym_save_CFLAGS=$CFLAGS + LIBS=conftstm.$ac_objext + CFLAGS="$CFLAGS$_LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)" + if AC_TRY_EVAL(ac_link) && test -s conftest$ac_exeext; then + pipe_works=yes + fi + LIBS=$lt_globsym_save_LIBS + CFLAGS=$lt_globsym_save_CFLAGS + else + echo "cannot find nm_test_func in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot find nm_test_var in $nlist" >&AS_MESSAGE_LOG_FD + fi + else + echo "cannot run $lt_cv_sys_global_symbol_pipe" >&AS_MESSAGE_LOG_FD + fi + else + echo "$progname: failed program was:" >&AS_MESSAGE_LOG_FD + cat conftest.$ac_ext >&5 + fi + rm -rf conftest* conftst* + + # Do not use the global_symbol_pipe unless it works. + if test yes = "$pipe_works"; then + break + else + lt_cv_sys_global_symbol_pipe= + fi +done +]) +if test -z "$lt_cv_sys_global_symbol_pipe"; then + lt_cv_sys_global_symbol_to_cdecl= +fi +if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then + AC_MSG_RESULT(failed) +else + AC_MSG_RESULT(ok) +fi + +# Response file support. +if test "$lt_cv_nm_interface" = "MS dumpbin"; then + nm_file_list_spec='@' +elif $NM --help 2>/dev/null | grep '[[@]]FILE' >/dev/null; then + nm_file_list_spec='@' +fi + +_LT_DECL([global_symbol_pipe], [lt_cv_sys_global_symbol_pipe], [1], + [Take the output of nm and produce a listing of raw symbols and C names]) +_LT_DECL([global_symbol_to_cdecl], [lt_cv_sys_global_symbol_to_cdecl], [1], + [Transform the output of nm in a proper C declaration]) +_LT_DECL([global_symbol_to_import], [lt_cv_sys_global_symbol_to_import], [1], + [Transform the output of nm into a list of symbols to manually relocate]) +_LT_DECL([global_symbol_to_c_name_address], + [lt_cv_sys_global_symbol_to_c_name_address], [1], + [Transform the output of nm in a C name address pair]) +_LT_DECL([global_symbol_to_c_name_address_lib_prefix], + [lt_cv_sys_global_symbol_to_c_name_address_lib_prefix], [1], + [Transform the output of nm in a C name address pair when lib prefix is needed]) +_LT_DECL([nm_interface], [lt_cv_nm_interface], [1], + [The name lister interface]) +_LT_DECL([], [nm_file_list_spec], [1], + [Specify filename containing input files for $NM]) +]) # _LT_CMD_GLOBAL_SYMBOLS + + +# _LT_COMPILER_PIC([TAGNAME]) +# --------------------------- +m4_defun([_LT_COMPILER_PIC], +[m4_require([_LT_TAG_COMPILER])dnl +_LT_TAGVAR(lt_prog_compiler_wl, $1)= +_LT_TAGVAR(lt_prog_compiler_pic, $1)= +_LT_TAGVAR(lt_prog_compiler_static, $1)= + +m4_if([$1], [CXX], [ + # C++ specific cases for pic, static, wl, etc. + if test yes = "$GXX"; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac + ;; + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + *djgpp*) + # DJGPP does not support shared libraries at all + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + _LT_TAGVAR(lt_prog_compiler_static, $1)= + ;; + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + else + case $host_os in + aix[[4-9]]*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + chorus*) + case $cc_basename in + cxch68*) + # Green Hills C++ Compiler + # _LT_TAGVAR(lt_prog_compiler_static, $1)="--no_auto_instantiation -u __main -u __premain -u _abort -r $COOL_DIR/lib/libOrb.a $MVME_DIR/lib/CC/libC.a $MVME_DIR/lib/classix/libcx.s.a" + ;; + esac + ;; + mingw* | cygwin* | os2* | pw32* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + ;; + dgux*) + case $cc_basename in + ec++*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + ghcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + freebsd* | dragonfly*) + # FreeBSD uses GNU C++ + ;; + hpux9* | hpux10* | hpux11*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' + if test ia64 != "$host_cpu"; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + fi + ;; + aCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + ;; + *) + ;; + esac + ;; + interix*) + # This is c89, which is MS Visual C++ (no shared libs) + # Anyone wants to do a port? + ;; + irix5* | irix6* | nonstopux*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + # CC pic flag -KPIC is the default. + ;; + *) + ;; + esac + ;; + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + KCC*) + # KAI C++ Compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + ecpc* ) + # old Intel C++ for x86_64, which still supported -KPIC. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + icpc* ) + # Intel C++, used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + cxx*) + # Compaq C++ + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xlc* | xlC* | bgxl[[cC]]* | mpixl[[cC]]*) + # IBM XL 8.0, 9.0 on PPC and BlueGene + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + esac + ;; + esac + ;; + lynxos*) + ;; + m88k*) + ;; + mvs*) + case $cc_basename in + cxx*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-W c,exportall' + ;; + *) + ;; + esac + ;; + netbsd*) + ;; + *qnx* | *nto*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='--backend -Wl,' + ;; + RCC*) + # Rational C++ 2.4.1 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + cxx*) + # Digital/Compaq C++ + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # Make sure the PIC flag is empty. It appears that all Alpha + # Linux and Compaq Tru64 Unix objects are PIC. + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + *) + ;; + esac + ;; + psos*) + ;; + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + ;; + *) + ;; + esac + ;; + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + lcc*) + # Lucid + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + ;; + *) + ;; + esac + ;; + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + case $cc_basename in + CC*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + ;; + *) + ;; + esac + ;; + vxworks*) + ;; + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +], +[ + if test yes = "$GCC"; then + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + + case $host_os in + aix*) + # All AIX code is PIC. + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + m68k) + # FIXME: we need at least 68020 code to build shared libraries, but + # adding the '-m68020' flag to GCC prevents building anything better, + # like '-m68040'. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-m68020 -resident32 -malways-restore-a4' + ;; + esac + ;; + + beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*) + # PIC is the default for these OSes. + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + # Although the cygwin gcc ignores -fPIC, still need this for old-style + # (--disable-auto-import) libraries + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + ;; + + haiku*) + # PIC is the default for Haiku. + # The "-static" flag exists, but is broken. + _LT_TAGVAR(lt_prog_compiler_static, $1)= + ;; + + hpux*) + # PIC is the default for 64-bit PA HP-UX, but not for 32-bit + # PA HP-UX. On IA64 HP-UX, PIC is the default but the pic flag + # sets the default TLS model and affects inlining. + case $host_cpu in + hppa*64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + ;; + + interix[[3-9]]*) + # Interix 3.x gcc -fpic/-fPIC options generate broken code. + # Instead, we relocate shared libraries at runtime. + ;; + + msdosdjgpp*) + # Just because we use GCC doesn't mean we suddenly get shared libraries + # on systems that don't support them. + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + enable_shared=no + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)=-Kconform_pic + fi + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + ;; + esac + + case $cc_basename in + nvcc*) # Cuda Compiler Driver 2.2 + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Xlinker ' + if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)="-Xcompiler $_LT_TAGVAR(lt_prog_compiler_pic, $1)" + fi + ;; + esac + else + # PORTME Check for flag to pass linker flags through the system compiler. + case $host_os in + aix*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + if test ia64 = "$host_cpu"; then + # AIX 5 now supports IA64 processor + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + else + _LT_TAGVAR(lt_prog_compiler_static, $1)='-bnso -bI:/lib/syscalls.exp' + fi + ;; + + darwin* | rhapsody*) + # PIC is the default on this platform + # Common symbols not allowed in MH_DYLIB files + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fno-common' + case $cc_basename in + nagfor*) + # NAG Fortran compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + + mingw* | cygwin* | pw32* | os2* | cegcc*) + # This hack is so that the source file can tell whether it is being + # built for inclusion in a dll (and should export symbols for example). + m4_if([$1], [GCJ], [], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)='-DDLL_EXPORT']) + case $host_os in + os2*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-static' + ;; + esac + ;; + + hpux9* | hpux10* | hpux11*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC is the default for IA64 HP-UX and 64-bit HP-UX, but + # not for PA HP-UX. + case $host_cpu in + hppa*64*|ia64*) + # +Z the default + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='+Z' + ;; + esac + # Is there a better lt_prog_compiler_static that works with the bundled CC? + _LT_TAGVAR(lt_prog_compiler_static, $1)='$wl-a ${wl}archive' + ;; + + irix5* | irix6* | nonstopux*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # PIC (with -KPIC) is the default. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + # old Intel for x86_64, which still supported -KPIC. + ecc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # icc used to be incompatible with GCC. + # ICC 10 doesn't accept -KPIC any more. + icc* | ifort*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + # Lahey Fortran 8.1. + lf95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='--shared' + _LT_TAGVAR(lt_prog_compiler_static, $1)='--static' + ;; + nagfor*) + # NAG Fortran compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,-Wl,,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + pgcc* | pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group compilers (*not* the Pentium gcc compiler, + # which looks to be a dead project) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + ccc*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All Alpha code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + xl* | bgxl* | bgf* | mpixl*) + # IBM XL C 8.0/Fortran 10.1, 11.1 on PPC and BlueGene + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-qpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-qstaticlink' + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ Ceres\ Fortran* | *Sun*Fortran*\ [[1-7]].* | *Sun*Fortran*\ 8.[[0-3]]*) + # Sun Fortran 8.3 passes all unrecognized flags to the linker + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='' + ;; + *Sun\ F* | *Sun*Fortran*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + ;; + *Sun\ C*) + # Sun C 5.9 + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + ;; + *Intel*\ [[CF]]*Compiler*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-static' + ;; + *Portland\ Group*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fpic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + esac + ;; + esac + ;; + + newsos6) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *nto* | *qnx*) + # QNX uses GNU C++, but need to define -shared option too, otherwise + # it will coredump. + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC -shared' + ;; + + osf3* | osf4* | osf5*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + # All OSF/1 code is PIC. + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + rdos*) + _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared' + ;; + + solaris*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + case $cc_basename in + f77* | f90* | f95* | sunf77* | sunf90* | sunf95*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ';; + *) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,';; + esac + ;; + + sunos4*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Qoption ld ' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-PIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4 | sysv4.2uw2* | sysv4.3*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-Kconform_pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + fi + ;; + + sysv5* | unixware* | sco3.2v5* | sco5v6* | OpenUNIX*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + unicos*) + _LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,' + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + + uts4*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)='-pic' + _LT_TAGVAR(lt_prog_compiler_static, $1)='-Bstatic' + ;; + + *) + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no + ;; + esac + fi +]) +case $host_os in + # For platforms that do not support PIC, -DPIC is meaningless: + *djgpp*) + _LT_TAGVAR(lt_prog_compiler_pic, $1)= + ;; + *) + _LT_TAGVAR(lt_prog_compiler_pic, $1)="$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])" + ;; +esac + +AC_CACHE_CHECK([for $compiler option to produce PIC], + [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)], + [_LT_TAGVAR(lt_cv_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_prog_compiler_pic, $1)]) +_LT_TAGVAR(lt_prog_compiler_pic, $1)=$_LT_TAGVAR(lt_cv_prog_compiler_pic, $1) + +# +# Check to make sure the PIC flag actually works. +# +if test -n "$_LT_TAGVAR(lt_prog_compiler_pic, $1)"; then + _LT_COMPILER_OPTION([if $compiler PIC flag $_LT_TAGVAR(lt_prog_compiler_pic, $1) works], + [_LT_TAGVAR(lt_cv_prog_compiler_pic_works, $1)], + [$_LT_TAGVAR(lt_prog_compiler_pic, $1)@&t@m4_if([$1],[],[ -DPIC],[m4_if([$1],[CXX],[ -DPIC],[])])], [], + [case $_LT_TAGVAR(lt_prog_compiler_pic, $1) in + "" | " "*) ;; + *) _LT_TAGVAR(lt_prog_compiler_pic, $1)=" $_LT_TAGVAR(lt_prog_compiler_pic, $1)" ;; + esac], + [_LT_TAGVAR(lt_prog_compiler_pic, $1)= + _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no]) +fi +_LT_TAGDECL([pic_flag], [lt_prog_compiler_pic], [1], + [Additional compiler flags for building library objects]) + +_LT_TAGDECL([wl], [lt_prog_compiler_wl], [1], + [How to pass a linker flag through the compiler]) +# +# Check to make sure the static flag actually works. +# +wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) eval lt_tmp_static_flag=\"$_LT_TAGVAR(lt_prog_compiler_static, $1)\" +_LT_LINKER_OPTION([if $compiler static flag $lt_tmp_static_flag works], + _LT_TAGVAR(lt_cv_prog_compiler_static_works, $1), + $lt_tmp_static_flag, + [], + [_LT_TAGVAR(lt_prog_compiler_static, $1)=]) +_LT_TAGDECL([link_static_flag], [lt_prog_compiler_static], [1], + [Compiler flag to prevent dynamic linking]) +])# _LT_COMPILER_PIC + + +# _LT_LINKER_SHLIBS([TAGNAME]) +# ---------------------------- +# See if the linker supports building shared libraries. +m4_defun([_LT_LINKER_SHLIBS], +[AC_REQUIRE([LT_PATH_LD])dnl +AC_REQUIRE([LT_PATH_NM])dnl +m4_require([_LT_PATH_MANIFEST_TOOL])dnl +m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_DECL_SED])dnl +m4_require([_LT_CMD_GLOBAL_SYMBOLS])dnl +m4_require([_LT_TAG_COMPILER])dnl +AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) +m4_if([$1], [CXX], [ + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] + case $host_os in + aix[[4-9]]*) + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + fi + ;; + pw32*) + _LT_TAGVAR(export_symbols_cmds, $1)=$ltdll_cmds + ;; + cygwin* | mingw* | cegcc*) + case $cc_basename in + cl*) + _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + ;; + *) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] + ;; + esac + ;; + *) + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + ;; + esac +], [ + runpath_var= + _LT_TAGVAR(allow_undefined_flag, $1)= + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(archive_cmds, $1)= + _LT_TAGVAR(archive_expsym_cmds, $1)= + _LT_TAGVAR(compiler_needs_object, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED '\''s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(hardcode_automatic, $1)=no + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(hardcode_libdir_separator, $1)= + _LT_TAGVAR(hardcode_minus_L, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported + _LT_TAGVAR(inherit_rpath, $1)=no + _LT_TAGVAR(link_all_deplibs, $1)=unknown + _LT_TAGVAR(module_cmds, $1)= + _LT_TAGVAR(module_expsym_cmds, $1)= + _LT_TAGVAR(old_archive_from_new_cmds, $1)= + _LT_TAGVAR(old_archive_from_expsyms_cmds, $1)= + _LT_TAGVAR(thread_safe_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + # include_expsyms should be a list of space-separated symbols to be *always* + # included in the symbol list + _LT_TAGVAR(include_expsyms, $1)= + # exclude_expsyms can be an extended regexp of symbols to exclude + # it will be wrapped by ' (' and ')$', so one must not match beginning or + # end of line. Example: 'a|bc|.*d.*' will exclude the symbols 'a' and 'bc', + # as well as any symbol that contains 'd'. + _LT_TAGVAR(exclude_expsyms, $1)=['_GLOBAL_OFFSET_TABLE_|_GLOBAL__F[ID]_.*'] + # Although _GLOBAL_OFFSET_TABLE_ is a valid symbol C name, most a.out + # platforms (ab)use it in PIC code, but their linkers get confused if + # the symbol is explicitly referenced. Since portable code cannot + # rely on this symbol name, it's probably fine to never include it in + # preloaded symbol tables. + # Exclude shared library initialization/finalization symbols. +dnl Note also adjust exclude_expsyms for C++ above. + extract_expsyms_cmds= + + case $host_os in + cygwin* | mingw* | pw32* | cegcc*) + # 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 yes != "$GCC"; then + with_gnu_ld=no + fi + ;; + interix*) + # we just hope/assume this is gcc and not c89 (= MSVC++) + with_gnu_ld=yes + ;; + openbsd* | bitrig*) + with_gnu_ld=no + ;; + esac + + _LT_TAGVAR(ld_shlibs, $1)=yes + + # On some targets, GNU ld is compatible enough with the native linker + # that we're better off using the native interface for both. + lt_use_gnu_ld_interface=no + if test yes = "$with_gnu_ld"; then + case $host_os in + aix*) + # The AIX port of GNU ld has always aspired to compatibility + # with the native linker. However, as the warning in the GNU ld + # block says, versions before 2.19.5* couldn't really create working + # shared libraries, regardless of the interface used. + case `$LD -v 2>&1` in + *\ \(GNU\ Binutils\)\ 2.19.5*) ;; + *\ \(GNU\ Binutils\)\ 2.[[2-9]]*) ;; + *\ \(GNU\ Binutils\)\ [[3-9]]*) ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + ;; + *) + lt_use_gnu_ld_interface=yes + ;; + esac + fi + + if test yes = "$lt_use_gnu_ld_interface"; then + # If archive_cmds runs LD, not CC, wlarc should be empty + wlarc='$wl' + + # Set some defaults for GNU ld with shared library support. These + # are reset later if shared libraries are not supported. Putting them + # here allows them to be overridden if necessary. + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + # ancient GNU ld didn't support --whole-archive et. al. + if $LD --help 2>&1 | $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + supports_anon_versioning=no + case `$LD -v | $SED -e 's/([^)]\+)\s\+//' 2>&1` in + *GNU\ gold*) supports_anon_versioning=yes ;; + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.10.*) ;; # catch versions < 2.11 + *\ 2.11.93.0.2\ *) supports_anon_versioning=yes ;; # RH7.3 ... + *\ 2.11.92.0.12\ *) supports_anon_versioning=yes ;; # Mandrake 8.2 ... + *\ 2.11.*) ;; # other 2.11 versions + *) supports_anon_versioning=yes ;; + esac + + # See if GNU ld supports shared libraries. + case $host_os in + aix[[3-9]]*) + # On AIX/PPC, the GNU linker is very broken + if test ia64 != "$host_cpu"; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: the GNU linker, at least up to release 2.19, is reported +*** to be unable to reliably create shared libraries on AIX. +*** Therefore, libtool is disabling shared libraries support. If you +*** really care for shared libraries, you may want to install binutils +*** 2.20 or above, or modify your PATH so that a non-GNU linker is found. +*** You will then need to restart the configuration process. + +_LT_EOF + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1 DATA/;s/^.*[[ ]]__nm__\([[^ ]]*\)[[ ]][[^ ]]*/\1 DATA/;/^I[[ ]]/d;/^[[AITW]][[ ]]/s/.* //'\'' | sort | uniq > $export_symbols' + _LT_TAGVAR(exclude_expsyms, $1)=['[_]+GLOBAL_OFFSET_TABLE_|[_]+GLOBAL__[FID]_.*|[_]+head_[A-Za-z0-9_]+_dll|[A-Za-z0-9_]+_dll_iname'] + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared $output_objdir/$soname.def $libobjs $deplibs $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + haiku*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + + gnu* | linux* | tpf* | k*bsd*-gnu | kopensolaris*-gnu) + tmp_diet=no + if test linux-dietlibc = "$host_os"; then + case $cc_basename in + diet\ *) tmp_diet=yes;; # linux-dietlibc with static linking (!diet-dyn) + esac + fi + if $LD --help 2>&1 | $EGREP ': supported targets:.* elf' > /dev/null \ + && test no = "$tmp_diet" + then + tmp_addflag=' $pic_flag' + tmp_sharedflag='-shared' + case $cc_basename,$host_cpu in + pgcc*) # Portland Group C compiler + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag' + ;; + pgf77* | pgf90* | pgf95* | pgfortran*) + # Portland Group f77 and f90 compilers + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + tmp_addflag=' $pic_flag -Mnomain' ;; + ecc*,ia64* | icc*,ia64*) # Intel C compiler on ia64 + tmp_addflag=' -i_dynamic' ;; + efc*,ia64* | ifort*,ia64*) # Intel Fortran compiler on ia64 + tmp_addflag=' -i_dynamic -nofor_main' ;; + ifc* | ifort*) # Intel Fortran compiler + tmp_addflag=' -nofor_main' ;; + lf95*) # Lahey Fortran 8.1 + _LT_TAGVAR(whole_archive_flag_spec, $1)= + tmp_sharedflag='--shared' ;; + nagfor*) # NAGFOR 5.3 + tmp_sharedflag='-Wl,-shared' ;; + xl[[cC]]* | bgxl[[cC]]* | mpixl[[cC]]*) # IBM XL C 8.0 on PPC (deal with xlf below) + tmp_sharedflag='-qmkshrobj' + tmp_addflag= ;; + nvcc*) # Cuda Compiler Driver 2.2 + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + ;; + esac + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) # Sun C 5.9 + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + tmp_sharedflag='-G' ;; + *Sun\ F*) # Sun Fortran 8.3 + tmp_sharedflag='-G' ;; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + + if test yes = "$supports_anon_versioning"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC '"$tmp_sharedflag""$tmp_addflag"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' + fi + + case $cc_basename in + tcc*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='-rdynamic' + ;; + xlf* | bgf* | bgxlf* | mpixlf*) + # IBM XL Fortran 10.1 on PPC cannot create shared libs itself + _LT_TAGVAR(whole_archive_flag_spec, $1)='--whole-archive$convenience --no-whole-archive' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(archive_cmds, $1)='$LD -shared $libobjs $deplibs $linker_flags -soname $soname -o $lib' + if test yes = "$supports_anon_versioning"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $LD -shared $libobjs $deplibs $linker_flags -soname $soname -version-script $output_objdir/$libname.ver -o $lib' + fi + ;; + esac + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable $libobjs $deplibs $linker_flags -o $lib' + wlarc= + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + fi + ;; + + solaris*) + if $LD -v 2>&1 | $GREP 'BFD 2\.8' > /dev/null; then + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: The releases 2.8.* of the GNU linker cannot reliably +*** create shared libraries on Solaris systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.9.1 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + elif $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + sysv5* | sco3.2v5* | sco5v6* | unixware* | OpenUNIX*) + case `$LD -v 2>&1` in + *\ [[01]].* | *\ 2.[[0-9]].* | *\ 2.1[[0-5]].*) + _LT_TAGVAR(ld_shlibs, $1)=no + cat <<_LT_EOF 1>&2 + +*** Warning: Releases of the GNU linker prior to 2.16.91.0.3 cannot +*** reliably create shared libraries on SCO systems. Therefore, libtool +*** is disabling shared libraries support. We urge you to upgrade GNU +*** binutils to release 2.16.91.0.3 or newer. Another option is to modify +*** your PATH or compiler configuration so that the native linker is +*** used, and then restart. + +_LT_EOF + ;; + *) + # For security reasons, it is highly recommended that you always + # use absolute paths for naming shared libraries, and exclude the + # DT_RUNPATH tag from executables and libraries. But doing so + # requires that you compile everything twice, which is a pain. + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + sunos4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bshareable -o $lib $libobjs $deplibs $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + + if test no = "$_LT_TAGVAR(ld_shlibs, $1)"; then + runpath_var= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)= + _LT_TAGVAR(export_dynamic_flag_spec, $1)= + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + # PORTME fill in a description of your system's linker (not GNU ld) + case $host_os in + aix3*) + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(archive_expsym_cmds, $1)='$LD -o $output_objdir/$soname $libobjs $deplibs $linker_flags -bE:$export_symbols -T512 -H512 -bM:SRE~$AR $AR_FLAGS $lib $output_objdir/$soname' + # Note: this linker hardcodes the directories in LIBPATH if there + # are no directories specified by -L. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + if test yes = "$GCC" && test -z "$lt_prog_compiler_static"; then + # Neither direct hardcoding nor static linking is supported with a + # broken collect2. + _LT_TAGVAR(hardcode_direct, $1)=unsupported + fi + ;; + + aix[[4-9]]*) + if test ia64 = "$host_cpu"; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag= + else + # If we're using GNU nm, then we don't want the "-C" option. + # -C means demangle to GNU nm, but means don't demangle to AIX nm. + # Without the "-l" option, or with the "-B" option, AIX nm treats + # weak defined symbols like other global defined symbols, whereas + # GNU nm marks them as "W". + # While the 'weak' keyword is ignored in the Export File, we need + # it in the Import File for the 'aix-soname' feature, so we have + # to replace the "-B" option with "-P" for AIX nm. + if $NM -V 2>&1 | $GREP 'GNU' > /dev/null; then + _LT_TAGVAR(export_symbols_cmds, $1)='$NM -Bpg $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W")) && ([substr](\$ 3,1,1) != ".")) { if (\$ 2 == "W") { print \$ 3 " weak" } else { print \$ 3 } } }'\'' | sort -u > $export_symbols' + else + _LT_TAGVAR(export_symbols_cmds, $1)='`func_echo_all $NM | $SED -e '\''s/B\([[^B]]*\)$/P\1/'\''` -PCpgl $libobjs $convenience | awk '\''{ if (((\$ 2 == "T") || (\$ 2 == "D") || (\$ 2 == "B") || (\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) && ([substr](\$ 1,1,1) != ".")) { if ((\$ 2 == "W") || (\$ 2 == "V") || (\$ 2 == "Z")) { print \$ 1 " weak" } else { print \$ 1 } } }'\'' | sort -u > $export_symbols' + fi + 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 + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + if (test x-brtl = "x$ld_flag" || test x-Wl,-brtl = "x$ld_flag"); then + aix_use_runtimelinking=yes + break + fi + done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # traditional, no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + ;; + esac + + if test yes = "$GCC"; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`$CC -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + ;; + esac + shared_flag='-shared' + if test yes = "$aix_use_runtimelinking"; then + shared_flag="$shared_flag "'$wl-G' + fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' + else + # not using gcc + if test ia64 = "$host_cpu"; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' + else + shared_flag='$wl-bM:SRE' + fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(allow_undefined_flag, $1)='-berok' + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag + else + if test ia64 = "$host_cpu"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' + if test yes = "$with_gnu_ld"; then + # We only use this code for GNU lds that support --whole-archive. + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared libraries. + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' + fi + fi + ;; + + amigaos*) + case $host_cpu in + powerpc) + # see comment about AmigaOS4 .so support + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='' + ;; + m68k) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/a2ixlibrary.data~$ECHO "#define NAME $libname" > $output_objdir/a2ixlibrary.data~$ECHO "#define LIBRARY_ID 1" >> $output_objdir/a2ixlibrary.data~$ECHO "#define VERSION $major" >> $output_objdir/a2ixlibrary.data~$ECHO "#define REVISION $revision" >> $output_objdir/a2ixlibrary.data~$AR $AR_FLAGS $lib $libobjs~$RANLIB $lib~(cd $output_objdir && a2ixlibrary -32)' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + ;; + + bsdi[[45]]*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)=-rdynamic + ;; + + cygwin* | mingw* | pw32* | cegcc*) + # 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. + case $cc_basename in + cl*) + # Native MSVC + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + _LT_TAGVAR(exclude_expsyms, $1)='_NULL_IMPORT_DESCRIPTOR|_IMPORT_DESCRIPTOR_.*' + _LT_TAGVAR(export_symbols_cmds, $1)='$NM $libobjs $convenience | $global_symbol_pipe | $SED -e '\''/^[[BCDGRS]][[ ]]/s/.*[[ ]]\([[^ ]]*\)/\1,DATA/'\'' | $SED -e '\''/^[[AITW]][[ ]]/s/.*[[ ]]//'\'' | sort | uniq > $export_symbols' + # Don't use ranlib + _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' + _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # Assume MSVC wrapper + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $lib $libobjs $compiler_flags `func_echo_all "$deplibs" | $SED '\''s/ -lc$//'\''` -link -dll~linknames=' + # The linker will automatically build a .lib file if we build a DLL. + _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + # FIXME: Should let the user specify the lib program. + _LT_TAGVAR(old_archive_cmds, $1)='lib -OUT:$oldlib$oldobjs$old_deplibs' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + esac + ;; + + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + dgux*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 2.2.[012] allows us to include c++rt0.o to get C++ constructor + # support. Future versions do this automatically, but an explicit c++rt0.o + # does not break anything, and helps significantly (at the cost of a little + # extra space). + freebsd2.2*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags /usr/lib/c++rt0.o' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # Unfortunately, older versions of FreeBSD 2 do not have this feature. + freebsd2.*) + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + # FreeBSD 3 and greater uses gcc -shared to do shared libraries. + freebsd* | dragonfly*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + hpux9*) + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $libobjs $deplibs $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$LD -b +b $install_libdir -o $output_objdir/$soname $libobjs $deplibs $linker_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + ;; + + hpux10*) + if test yes,no = "$GCC,$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags' + fi + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + fi + ;; + + hpux11*) + if test yes,no = "$GCC,$with_gnu_ld"; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + else + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + m4_if($1, [], [ + # Older versions of the 11.00 compiler do not understand -b yet + # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does) + _LT_LINKER_OPTION([if $CC understands -b], + _LT_TAGVAR(lt_cv_prog_compiler__b, $1), [-b], + [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'], + [_LT_TAGVAR(archive_cmds, $1)='$LD -b +h $soname +b $install_libdir -o $lib $libobjs $deplibs $linker_flags'])], + [_LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags']) + ;; + esac + fi + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + + # hardcode_minus_L: Not really in the search PATH, + # but as the default location of the library. + _LT_TAGVAR(hardcode_minus_L, $1)=yes + ;; + esac + fi + ;; + + irix5* | irix6* | nonstopux*) + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + # Try to use the -exported_symbol ld option, if it does not + # work, assume that -exports_file does not work either and + # implicitly export all symbols. + # This should be the same for all languages, so no per-tag cache variable. + AC_CACHE_CHECK([whether the $host_os linker accepts -exported_symbol], + [lt_cv_irix_exported_symbol], + [save_LDFLAGS=$LDFLAGS + LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null" + AC_LINK_IFELSE( + [AC_LANG_SOURCE( + [AC_LANG_CASE([C], [[int foo (void) { return 0; }]], + [C++], [[int foo (void) { return 0; }]], + [Fortran 77], [[ + subroutine foo + end]], + [Fortran], [[ + subroutine foo + end]])])], + [lt_cv_irix_exported_symbol=yes], + [lt_cv_irix_exported_symbol=no]) + LDFLAGS=$save_LDFLAGS]) + if test yes = "$lt_cv_irix_exported_symbol"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib' + fi + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -exports_file $export_symbols -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + linux*) + case $cc_basename in + tcc*) + # Fabrice Bellard et al's Tiny C Compiler + _LT_TAGVAR(ld_shlibs, $1)=yes + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $libobjs $deplibs $linker_flags' # a.out + else + _LT_TAGVAR(archive_cmds, $1)='$LD -shared -o $lib $libobjs $deplibs $linker_flags' # ELF + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + newsos6) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *nto* | *qnx*) + ;; + + openbsd* | bitrig*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + if test -z "`echo __ELF__ | $CC -E - | $GREP __ELF__`"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags $wl-retain-symbols-file,$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + fi + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + osf3*) + if test yes = "$GCC"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + osf4* | osf5*) # as osf3* with the addition of -msym flag + if test yes = "$GCC"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $pic_flag $libobjs $deplibs $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + else + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $libobjs $deplibs $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done; printf "%s\\n" "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $wl-input $wl$lib.exp $compiler_flags $libobjs $deplibs -soname $soname `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~$RM $lib.exp' + + # Both c and cxx compiler support -rpath directly + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)='no' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + ;; + + solaris*) + _LT_TAGVAR(no_undefined_flag, $1)=' -z defs' + if test yes = "$GCC"; then + wlarc='$wl' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $wl-z ${wl}text $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag $wl-z ${wl}text $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + else + case `$CC -V 2>&1` in + *"Compilers 5.0"*) + wlarc='' + _LT_TAGVAR(archive_cmds, $1)='$LD -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $LD -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $linker_flags~$RM $lib.exp' + ;; + *) + wlarc='$wl' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h $soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G$allow_undefined_flag -M $lib.exp -h $soname -o $lib $libobjs $deplibs $compiler_flags~$RM $lib.exp' + ;; + esac + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands '-z linker_flag'. GCC discards it without '$wl', + # but is careful enough not to reorder. + # Supported since Solaris 2.6 (maybe 2.5.1?) + if test yes = "$GCC"; then + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + fi + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + sunos4*) + if test sequent = "$host_vendor"; then + # Use $CC to link under sequent, because it throws in some extra .o + # files that make .init and .fini sections work. + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h $soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$LD -assert pure-text -Bstatic -o $lib $libobjs $deplibs $linker_flags' + fi + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4) + case $host_vendor in + sni) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=yes # is this really true??? + ;; + siemens) + ## LD is ld it makes a PLAMLIB + ## CC just makes a GrossModule. + _LT_TAGVAR(archive_cmds, $1)='$LD -G -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(reload_cmds, $1)='$CC -r -o $output$reload_objs' + _LT_TAGVAR(hardcode_direct, $1)=no + ;; + motorola) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_direct, $1)=no #Motorola manual says yes, but my tests say they lie + ;; + esac + runpath_var='LD_RUN_PATH' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + sysv4.3*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(export_dynamic_flag_spec, $1)='-Bexport' + ;; + + sysv4*MP*) + if test -d /usr/nec; then + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var=LD_RUN_PATH + hardcode_runpath_var=yes + _LT_TAGVAR(ld_shlibs, $1)=yes + fi + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We CANNOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' + runpath_var='LD_RUN_PATH' + + if test yes = "$GCC"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + fi + ;; + + uts4*) + _LT_TAGVAR(archive_cmds, $1)='$LD -G -h $soname -o $lib $libobjs $deplibs $linker_flags' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + + *) + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + if test sni = "$host_vendor"; then + case $host in + sysv4 | sysv4.2uw2* | sysv4.3* | sysv5*) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Blargedynsym' + ;; + esac + fi + fi +]) +AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) +test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no + +_LT_TAGVAR(with_gnu_ld, $1)=$with_gnu_ld + +_LT_DECL([], [libext], [0], [Old archive suffix (normally "a")])dnl +_LT_DECL([], [shrext_cmds], [1], [Shared library suffix (normally ".so")])dnl +_LT_DECL([], [extract_expsyms_cmds], [2], + [The commands to extract the exported symbol list from a shared archive]) + +# +# Do we need to explicitly link libc? +# +case "x$_LT_TAGVAR(archive_cmds_need_lc, $1)" in +x|xyes) + # Assume -lc should be added + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + + if test yes,yes = "$GCC,$enable_shared"; then + case $_LT_TAGVAR(archive_cmds, $1) in + *'~'*) + # FIXME: we may have to deal with multi-command sequences. + ;; + '$CC '*) + # Test whether the compiler implicitly links with -lc since on some + # systems, -lgcc has to come before -lc. If gcc already passes -lc + # to ld, don't add -lc before -lgcc. + AC_CACHE_CHECK([whether -lc should be explicitly linked in], + [lt_cv_]_LT_TAGVAR(archive_cmds_need_lc, $1), + [$RM conftest* + echo "$lt_simple_compile_test_code" > conftest.$ac_ext + + if AC_TRY_EVAL(ac_compile) 2>conftest.err; then + soname=conftest + lib=conftest + libobjs=conftest.$ac_objext + deplibs= + wl=$_LT_TAGVAR(lt_prog_compiler_wl, $1) + pic_flag=$_LT_TAGVAR(lt_prog_compiler_pic, $1) + compiler_flags=-v + linker_flags=-v + verstring= + output_objdir=. + libname=conftest + lt_save_allow_undefined_flag=$_LT_TAGVAR(allow_undefined_flag, $1) + _LT_TAGVAR(allow_undefined_flag, $1)= + if AC_TRY_EVAL(_LT_TAGVAR(archive_cmds, $1) 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) + then + lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=no + else + lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1)=yes + fi + _LT_TAGVAR(allow_undefined_flag, $1)=$lt_save_allow_undefined_flag + else + cat conftest.err 1>&5 + fi + $RM conftest* + ]) + _LT_TAGVAR(archive_cmds_need_lc, $1)=$lt_cv_[]_LT_TAGVAR(archive_cmds_need_lc, $1) + ;; + esac + fi + ;; +esac + +_LT_TAGDECL([build_libtool_need_lc], [archive_cmds_need_lc], [0], + [Whether or not to add -lc for building shared libraries]) +_LT_TAGDECL([allow_libtool_libs_with_static_runtimes], + [enable_shared_with_static_runtimes], [0], + [Whether or not to disallow shared libs when runtime libs are static]) +_LT_TAGDECL([], [export_dynamic_flag_spec], [1], + [Compiler flag to allow reflexive dlopens]) +_LT_TAGDECL([], [whole_archive_flag_spec], [1], + [Compiler flag to generate shared objects directly from archives]) +_LT_TAGDECL([], [compiler_needs_object], [1], + [Whether the compiler copes with passing no objects directly]) +_LT_TAGDECL([], [old_archive_from_new_cmds], [2], + [Create an old-style archive from a shared archive]) +_LT_TAGDECL([], [old_archive_from_expsyms_cmds], [2], + [Create a temporary old-style archive to link instead of a shared archive]) +_LT_TAGDECL([], [archive_cmds], [2], [Commands used to build a shared archive]) +_LT_TAGDECL([], [archive_expsym_cmds], [2]) +_LT_TAGDECL([], [module_cmds], [2], + [Commands used to build a loadable module if different from building + a shared archive.]) +_LT_TAGDECL([], [module_expsym_cmds], [2]) +_LT_TAGDECL([], [with_gnu_ld], [1], + [Whether we are building with GNU ld or not]) +_LT_TAGDECL([], [allow_undefined_flag], [1], + [Flag that allows shared libraries with undefined symbols to be built]) +_LT_TAGDECL([], [no_undefined_flag], [1], + [Flag that enforces no undefined symbols]) +_LT_TAGDECL([], [hardcode_libdir_flag_spec], [1], + [Flag to hardcode $libdir into a binary during linking. + This must work even if $libdir does not exist]) +_LT_TAGDECL([], [hardcode_libdir_separator], [1], + [Whether we need a single "-rpath" flag with a separated argument]) +_LT_TAGDECL([], [hardcode_direct], [0], + [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes + DIR into the resulting binary]) +_LT_TAGDECL([], [hardcode_direct_absolute], [0], + [Set to "yes" if using DIR/libNAME$shared_ext during linking hardcodes + DIR into the resulting binary and the resulting library dependency is + "absolute", i.e impossible to change by setting $shlibpath_var if the + library is relocated]) +_LT_TAGDECL([], [hardcode_minus_L], [0], + [Set to "yes" if using the -LDIR flag during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_shlibpath_var], [0], + [Set to "yes" if using SHLIBPATH_VAR=DIR during linking hardcodes DIR + into the resulting binary]) +_LT_TAGDECL([], [hardcode_automatic], [0], + [Set to "yes" if building a shared library automatically hardcodes DIR + into the library and all subsequent libraries and executables linked + against it]) +_LT_TAGDECL([], [inherit_rpath], [0], + [Set to yes if linker adds runtime paths of dependent libraries + to runtime path list]) +_LT_TAGDECL([], [link_all_deplibs], [0], + [Whether libtool must link a program against all its dependency libraries]) +_LT_TAGDECL([], [always_export_symbols], [0], + [Set to "yes" if exported symbols are required]) +_LT_TAGDECL([], [export_symbols_cmds], [2], + [The commands to list exported symbols]) +_LT_TAGDECL([], [exclude_expsyms], [1], + [Symbols that should not be listed in the preloaded symbols]) +_LT_TAGDECL([], [include_expsyms], [1], + [Symbols that must always be exported]) +_LT_TAGDECL([], [prelink_cmds], [2], + [Commands necessary for linking programs (against libraries) with templates]) +_LT_TAGDECL([], [postlink_cmds], [2], + [Commands necessary for finishing linking programs]) +_LT_TAGDECL([], [file_list_spec], [1], + [Specify filename containing input files]) +dnl FIXME: Not yet implemented +dnl _LT_TAGDECL([], [thread_safe_flag_spec], [1], +dnl [Compiler flag to generate thread safe objects]) +])# _LT_LINKER_SHLIBS + + +# _LT_LANG_C_CONFIG([TAG]) +# ------------------------ +# Ensure that the configuration variables for a C compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_C_CONFIG], +[m4_require([_LT_DECL_EGREP])dnl +lt_save_CC=$CC +AC_LANG_PUSH(C) + +# Source file extension for C test sources. +ac_ext=c + +# Object file extension for compiled C test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="int some_variable = 0;" + +# Code to be used in simple link tests +lt_simple_link_test_code='int main(){return(0);}' + +_LT_TAG_COMPILER +# Save the default compiler, since it gets overwritten when the other +# tags are being tested, and _LT_TAGVAR(compiler, []) is a NOP. +compiler_DEFAULT=$CC + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + LT_SYS_DLOPEN_SELF + _LT_CMD_STRIPLIB + + # Report what library types will actually be built + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test no = "$can_build_shared" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test yes = "$enable_shared" && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + + aix[[4-9]]*) + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test yes = "$enable_shared" || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_CONFIG($1) +fi +AC_LANG_POP +CC=$lt_save_CC +])# _LT_LANG_C_CONFIG + + +# _LT_LANG_CXX_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a C++ compiler are suitably +# defined. These variables are subsequently used by _LT_CONFIG to write +# the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_CXX_CONFIG], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +m4_require([_LT_DECL_EGREP])dnl +m4_require([_LT_PATH_MANIFEST_TOOL])dnl +if test -n "$CXX" && ( test no != "$CXX" && + ( (test g++ = "$CXX" && `g++ -v >/dev/null 2>&1` ) || + (test g++ != "$CXX"))); then + AC_PROG_CXXCPP +else + _lt_caught_CXX_error=yes +fi + +AC_LANG_PUSH(C++) +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(compiler_needs_object, $1)=no +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_shlibpath_var, $1)=unsupported +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for C++ test sources. +ac_ext=cpp + +# Object file extension for compiled C++ test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the CXX compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test yes != "$_lt_caught_CXX_error"; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="int some_variable = 0;" + + # Code to be used in simple link tests + lt_simple_link_test_code='int main(int, char *[[]]) { return(0); }' + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_CFLAGS=$CFLAGS + lt_save_LD=$LD + lt_save_GCC=$GCC + GCC=$GXX + lt_save_with_gnu_ld=$with_gnu_ld + lt_save_path_LD=$lt_cv_path_LD + if test -n "${lt_cv_prog_gnu_ldcxx+set}"; then + lt_cv_prog_gnu_ld=$lt_cv_prog_gnu_ldcxx + else + $as_unset lt_cv_prog_gnu_ld + fi + if test -n "${lt_cv_path_LDCXX+set}"; then + lt_cv_path_LD=$lt_cv_path_LDCXX + else + $as_unset lt_cv_path_LD + fi + test -z "${LDCXX+set}" || LD=$LDCXX + CC=${CXX-"c++"} + CFLAGS=$CXXFLAGS + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + # We don't want -fno-exception when compiling C++ code, so set the + # no_builtin_flag separately + if test yes = "$GXX"; then + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)=' -fno-builtin' + else + _LT_TAGVAR(lt_prog_compiler_no_builtin_flag, $1)= + fi + + if test yes = "$GXX"; then + # Set up default GNU C++ configuration + + LT_PATH_LD + + # Check if GNU C++ uses GNU ld as the underlying linker, since the + # archiving commands below assume that GNU ld is being used. + if test yes = "$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC $pic_flag -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + + # If archive_cmds runs LD, not CC, wlarc should be empty + # XXX I think wlarc can be eliminated in ltcf-cxx, but I need to + # investigate it a little bit more. (MM) + wlarc='$wl' + + # ancient GNU ld didn't support --whole-archive et. al. + if eval "`$CC -print-prog-name=ld` --help 2>&1" | + $GREP 'no-whole-archive' > /dev/null; then + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + else + _LT_TAGVAR(whole_archive_flag_spec, $1)= + fi + else + with_gnu_ld=no + wlarc= + + # A generic and very simple default shared library creation + # command for GNU C++ for the case where it uses the native + # linker, instead of GNU ld. If possible, this setting should + # overridden to take advantage of the native linker features on + # the platform it is being used on. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + fi + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + GXX=no + with_gnu_ld=no + wlarc= + fi + + # PORTME: fill in a description of your system's C++ link characteristics + AC_MSG_CHECKING([whether the $compiler linker ($LD) supports shared libraries]) + _LT_TAGVAR(ld_shlibs, $1)=yes + case $host_os in + aix3*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aix[[4-9]]*) + if test ia64 = "$host_cpu"; then + # On IA64, the linker does run time linking by default, so we don't + # have to do anything special. + aix_use_runtimelinking=no + exp_sym_flag='-Bexport' + no_entry_flag= + 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 + # have runtime linking enabled, and use it for executables. + # For shared libraries, we enable/disable runtime linking + # depending on the kind of the shared library created - + # when "with_aix_soname,aix_use_runtimelinking" is: + # "aix,no" lib.a(lib.so.V) shared, rtl:no, for executables + # "aix,yes" lib.so shared, rtl:yes, for executables + # lib.a static archive + # "both,no" lib.so.V(shr.o) shared, rtl:yes + # lib.a(lib.so.V) shared, rtl:no, for executables + # "both,yes" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a(lib.so.V) shared, rtl:no + # "svr4,*" lib.so.V(shr.o) shared, rtl:yes, for executables + # lib.a static archive + case $host_os in aix4.[[23]]|aix4.[[23]].*|aix[[5-9]]*) + for ld_flag in $LDFLAGS; do + case $ld_flag in + *-brtl*) + aix_use_runtimelinking=yes + break + ;; + esac + done + if test svr4,no = "$with_aix_soname,$aix_use_runtimelinking"; then + # With aix-soname=svr4, we create the lib.so.V shared archives only, + # so we don't have lib.a shared libs to link our executables. + # We have to force runtime linking in this case. + aix_use_runtimelinking=yes + LDFLAGS="$LDFLAGS -Wl,-brtl" + fi + ;; + esac + + exp_sym_flag='-bexport' + no_entry_flag='-bnoentry' + fi + + # When large executables or shared objects are built, AIX ld can + # have problems creating the table of contents. If linking a library + # or program results in "error TOC overflow" add -mminimal-toc to + # CXXFLAGS/CFLAGS for g++/gcc. In the cases where that is not + # enough to fix the problem, add -Wl,-bbigtoc to LDFLAGS. + + _LT_TAGVAR(archive_cmds, $1)='' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='$wl-f,' + case $with_aix_soname,$aix_use_runtimelinking in + aix,*) ;; # no import file + svr4,* | *,yes) # use import file + # The Import File defines what to hardcode. + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=no + ;; + esac + + if test yes = "$GXX"; then + case $host_os in aix4.[[012]]|aix4.[[012]].*) + # We only want to do this on AIX 4.2 and lower, the check + # below for broken collect2 doesn't work under 4.3+ + collect2name=`$CC -print-prog-name=collect2` + if test -f "$collect2name" && + strings "$collect2name" | $GREP resolve_lib_name >/dev/null + then + # We have reworked collect2 + : + else + # We have old collect2 + _LT_TAGVAR(hardcode_direct, $1)=unsupported + # It fails to find uninstalled libraries when the uninstalled + # path is not listed in the libpath. Setting hardcode_minus_L + # to unsupported forces relinking + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)= + fi + esac + shared_flag='-shared' + if test yes = "$aix_use_runtimelinking"; then + shared_flag=$shared_flag' $wl-G' + fi + # Need to ensure runtime linking is disabled for the traditional + # shared library, or the linker may eventually find shared libraries + # /with/ Import File - we do not want to mix them. + shared_flag_aix='-shared' + shared_flag_svr4='-shared $wl-G' + else + # not using gcc + if test ia64 = "$host_cpu"; then + # VisualAge C++, Version 5.5 for AIX 5L for IA-64, Beta 3 Release + # chokes on -Wl,-G. The following line is correct: + shared_flag='-G' + else + if test yes = "$aix_use_runtimelinking"; then + shared_flag='$wl-G' + else + shared_flag='$wl-bM:SRE' + fi + shared_flag_aix='$wl-bM:SRE' + shared_flag_svr4='$wl-G' + fi + fi + + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-bexpall' + # It seems that -bexpall does not export symbols beginning with + # underscore (_), so it is better to generate a list of symbols to + # export. + _LT_TAGVAR(always_export_symbols, $1)=yes + if test aix,yes = "$with_aix_soname,$aix_use_runtimelinking"; then + # Warning - without using the other runtime loading flags (-brtl), + # -berok will link without error, but may produce a broken library. + # The "-G" linker flag allows undefined symbols. + _LT_TAGVAR(no_undefined_flag, $1)='-bernotok' + # Determine the default libpath from the value encoded in an empty + # executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" + + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $deplibs $wl'$no_entry_flag' $compiler_flags `if test -n "$allow_undefined_flag"; then func_echo_all "$wl$allow_undefined_flag"; else :; fi` $wl'$exp_sym_flag:\$export_symbols' '$shared_flag + else + if test ia64 = "$host_cpu"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $libdir:/usr/lib:/lib' + _LT_TAGVAR(allow_undefined_flag, $1)="-z nodefs" + _LT_TAGVAR(archive_expsym_cmds, $1)="\$CC $shared_flag"' -o $output_objdir/$soname $libobjs $deplibs '"\$wl$no_entry_flag"' $compiler_flags $wl$allow_undefined_flag '"\$wl$exp_sym_flag:\$export_symbols" + else + # Determine the default libpath from the value encoded in an + # empty executable. + _LT_SYS_MODULE_PATH_AIX([$1]) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-blibpath:$libdir:'"$aix_libpath" + # Warning - without using the other run time loading flags, + # -berok will link without error, but may produce a broken library. + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-bernotok' + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-berok' + if test yes = "$with_gnu_ld"; then + # We only use this code for GNU lds that support --whole-archive. + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' + else + # Exported symbols can be pulled into shared objects from archives + _LT_TAGVAR(whole_archive_flag_spec, $1)='$convenience' + fi + _LT_TAGVAR(archive_cmds_need_lc, $1)=yes + _LT_TAGVAR(archive_expsym_cmds, $1)='$RM -r $output_objdir/$realname.d~$MKDIR $output_objdir/$realname.d' + # -brtl affects multiple linker settings, -berok does not and is overridden later + compiler_flags_filtered='`func_echo_all "$compiler_flags " | $SED -e "s%-brtl\\([[, ]]\\)%-berok\\1%g"`' + if test svr4 != "$with_aix_soname"; then + # This is similar to how AIX traditionally builds its shared + # libraries. Need -bnortl late, we may have -brtl in LDFLAGS. + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_aix' -o $output_objdir/$realname.d/$soname $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$AR $AR_FLAGS $output_objdir/$libname$release.a $output_objdir/$realname.d/$soname' + fi + if test aix != "$with_aix_soname"; then + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$CC '$shared_flag_svr4' -o $output_objdir/$realname.d/$shared_archive_member_spec.o $libobjs $deplibs $wl-bnoentry '$compiler_flags_filtered'$wl-bE:$export_symbols$allow_undefined_flag~$STRIP -e $output_objdir/$realname.d/$shared_archive_member_spec.o~( func_echo_all "#! $soname($shared_archive_member_spec.o)"; if test shr_64 = "$shared_archive_member_spec"; then func_echo_all "# 64"; else func_echo_all "# 32"; fi; cat $export_symbols ) > $output_objdir/$realname.d/$shared_archive_member_spec.imp~$AR $AR_FLAGS $output_objdir/$soname $output_objdir/$realname.d/$shared_archive_member_spec.o $output_objdir/$realname.d/$shared_archive_member_spec.imp' + else + # used by -dlpreopen to get the symbols + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$MV $output_objdir/$realname.d/$soname $output_objdir' + fi + _LT_TAGVAR(archive_expsym_cmds, $1)="$_LT_TAGVAR(archive_expsym_cmds, $1)"'~$RM -r $output_objdir/$realname.d' + fi + fi + ;; + + beos*) + if $LD --help 2>&1 | $GREP ': supported targets:.* elf' > /dev/null; then + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + # Joseph Beckenbach says some releases of gcc + # support --undefined. This deserves some investigation. FIXME + _LT_TAGVAR(archive_cmds, $1)='$CC -nostart $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + chorus*) + case $cc_basename in + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + cygwin* | mingw* | pw32* | cegcc*) + case $GXX,$cc_basename in + ,cl* | no,cl*) + # Native MSVC + # hardcode_libdir_flag_spec is actually meaningless, as there is + # no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)=' ' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=yes + _LT_TAGVAR(file_list_spec, $1)='@' + # Tell ltmain to make .lib files, not .a files. + libext=lib + # Tell ltmain to make .dll files, not .so files. + shrext_cmds=.dll + # FIXME: Setting linknames here is a bad hack. + _LT_TAGVAR(archive_cmds, $1)='$CC -o $output_objdir/$soname $libobjs $compiler_flags $deplibs -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~linknames=' + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp "$export_symbols" "$output_objdir/$soname.def"; + echo "$tool_output_objdir$soname.def" > "$output_objdir/$soname.exp"; + else + $SED -e '\''s/^/-link -EXPORT:/'\'' < $export_symbols > $output_objdir/$soname.exp; + fi~ + $CC -o $tool_output_objdir$soname $libobjs $compiler_flags $deplibs "@$tool_output_objdir$soname.exp" -Wl,-DLL,-IMPLIB:"$tool_output_objdir$libname.dll.lib"~ + linknames=' + # The linker will not automatically build a static lib if we build a DLL. + # _LT_TAGVAR(old_archive_from_new_cmds, $1)='true' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + # Don't use ranlib + _LT_TAGVAR(old_postinstall_cmds, $1)='chmod 644 $oldlib' + _LT_TAGVAR(postlink_cmds, $1)='lt_outputfile="@OUTPUT@"~ + lt_tool_outputfile="@TOOL_OUTPUT@"~ + case $lt_outputfile in + *.exe|*.EXE) ;; + *) + lt_outputfile=$lt_outputfile.exe + lt_tool_outputfile=$lt_tool_outputfile.exe + ;; + esac~ + func_to_tool_file "$lt_outputfile"~ + if test : != "$MANIFEST_TOOL" && test -f "$lt_outputfile.manifest"; then + $MANIFEST_TOOL -manifest "$lt_tool_outputfile.manifest" -outputresource:"$lt_tool_outputfile" || exit 1; + $RM "$lt_outputfile.manifest"; + fi' + ;; + *) + # g++ + # _LT_TAGVAR(hardcode_libdir_flag_spec, $1) is actually meaningless, + # as there is no search path for DLLs. + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-all-symbols' + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + _LT_TAGVAR(always_export_symbols, $1)=no + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + + if $LD --help 2>&1 | $GREP 'auto-import' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + # If the export-symbols file already is a .def file, use it as + # is; otherwise, prepend EXPORTS... + _LT_TAGVAR(archive_expsym_cmds, $1)='if _LT_DLL_DEF_P([$export_symbols]); then + cp $export_symbols $output_objdir/$soname.def; + else + echo EXPORTS > $output_objdir/$soname.def; + cat $export_symbols >> $output_objdir/$soname.def; + fi~ + $CC -shared -nostdlib $output_objdir/$soname.def $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $output_objdir/$soname $wl--enable-auto-image-base -Xlinker --out-implib -Xlinker $lib' + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + darwin* | rhapsody*) + _LT_DARWIN_LINKER_FEATURES($1) + ;; + + os2*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-L$libdir' + _LT_TAGVAR(hardcode_minus_L, $1)=yes + _LT_TAGVAR(allow_undefined_flag, $1)=unsupported + shrext_cmds=.dll + _LT_TAGVAR(archive_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + emxexp $libobjs | $SED /"_DLL_InitTerm"/d >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(archive_expsym_cmds, $1)='$ECHO "LIBRARY ${soname%$shared_ext} INITINSTANCE TERMINSTANCE" > $output_objdir/$libname.def~ + $ECHO "DESCRIPTION \"$libname\"" >> $output_objdir/$libname.def~ + $ECHO "DATA MULTIPLE NONSHARED" >> $output_objdir/$libname.def~ + $ECHO EXPORTS >> $output_objdir/$libname.def~ + prefix_cmds="$SED"~ + if test EXPORTS = "`$SED 1q $export_symbols`"; then + prefix_cmds="$prefix_cmds -e 1d"; + fi~ + prefix_cmds="$prefix_cmds -e \"s/^\(.*\)$/_\1/g\""~ + cat $export_symbols | $prefix_cmds >> $output_objdir/$libname.def~ + $CC -Zdll -Zcrtdll -o $output_objdir/$soname $libobjs $deplibs $compiler_flags $output_objdir/$libname.def~ + emximp -o $lib $output_objdir/$libname.def' + _LT_TAGVAR(old_archive_From_new_cmds, $1)='emximp -o $output_objdir/${libname}_dll.a $output_objdir/$libname.def' + _LT_TAGVAR(enable_shared_with_static_runtimes, $1)=yes + ;; + + dgux*) + case $cc_basename in + ec++*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + ghcx*) + # Green Hills C++ Compiler + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + freebsd2.*) + # C++ shared libraries reported to be fairly broken before + # switch to ELF + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + freebsd-elf*) + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + ;; + + freebsd* | dragonfly*) + # FreeBSD 3 and later use GNU C++ and GNU ld with standard ELF + # conventions + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + haiku*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + + hpux9*) + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -b $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes = "$GXX"; then + _LT_TAGVAR(archive_cmds, $1)='$RM $output_objdir/$soname~$CC -shared -nostdlib $pic_flag $wl+b $wl$install_libdir -o $output_objdir/$soname $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~test "x$output_objdir/$soname" = "x$lib" || mv $output_objdir/$soname $lib' + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + hpux10*|hpux11*) + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl+b $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + case $host_cpu in + hppa*64*|ia64*) + ;; + *) + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + ;; + esac + fi + case $host_cpu in + hppa*64*|ia64*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + ;; + *) + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(hardcode_minus_L, $1)=yes # Not in the search PATH, + # but as the default + # location of the library. + ;; + esac + + case $cc_basename in + CC*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + aCC*) + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + case $host_cpu in + hppa*64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib -fPIC $wl+h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + ia64*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+nodefaultrpath -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $pic_flag $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + ;; + esac + fi + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + interix[[3-9]]*) + _LT_TAGVAR(hardcode_direct, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + # Hack: On Interix 3.x, we cannot compile PIC because of a broken gcc. + # Instead, shared libraries are loaded at an image base (0x10000000 by + # default) and relocated if they conflict, which is a slow very memory + # consuming and fragmenting process. To avoid this, we pick a random, + # 256 KiB-aligned image base between 0x50000000 and 0x6FFC0000 at link + # time. Moving up from 0x10000000 also allows more sbrk(2) space. + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='sed "s|^|_|" $export_symbols >$output_objdir/$soname.expsym~$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-h,$soname $wl--retain-symbols-file,$output_objdir/$soname.expsym $wl--image-base,`expr ${RANDOM-$$} % 4096 / 2 \* 262144 + 1342177280` -o $lib' + ;; + irix5* | irix6*) + case $cc_basename in + CC*) + # SGI C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -all -multigot $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + + # Archives containing C++ object files must be created using + # "CC -ar", where "CC" is the IRIX C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -ar -WR,-u -o $oldlib $oldobjs' + ;; + *) + if test yes = "$GXX"; then + if test no = "$with_gnu_ld"; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + else + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` -o $lib' + fi + fi + _LT_TAGVAR(link_all_deplibs, $1)=yes + ;; + esac + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + _LT_TAGVAR(inherit_rpath, $1)=yes + ;; + + linux* | k*bsd*-gnu | kopensolaris*-gnu | gnu*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo $lib | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib $wl-retain-symbols-file,$export_symbols; mv \$templib $lib' + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 | $GREP "ld"`; rm -f libconftest$shared_ext; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + + # Archives containing C++ object files must be created using + # "CC -Bstatic", where "CC" is the KAI C++ compiler. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' + ;; + icpc* | ecpc* ) + # Intel C++ + with_gnu_ld=yes + # version 8.0 and above of icpc choke on multiply defined symbols + # if we add $predep_objects and $postdep_objects, however 7.1 and + # earlier do not add the objects themselves. + case `$CC -V 2>&1` in + *"Version 7."*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 8.0 or newer + tmp_idyn= + case $host_cpu in + ia64*) tmp_idyn=' -i_dynamic';; + esac + _LT_TAGVAR(archive_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared'"$tmp_idyn"' $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive$convenience $wl--no-whole-archive' + ;; + pgCC* | pgcpp*) + # Portland Group C++ compiler + case `$CC -V` in + *pgCC\ [[1-5]].* | *pgcpp\ [[1-5]].*) + _LT_TAGVAR(prelink_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $objs $libobjs $compile_deplibs~ + compile_command="$compile_command `find $tpldir -name \*.o | sort | $NL2SP`"' + _LT_TAGVAR(old_archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $oldobjs$old_deplibs~ + $AR $AR_FLAGS $oldlib$oldobjs$old_deplibs `find $tpldir -name \*.o | sort | $NL2SP`~ + $RANLIB $oldlib' + _LT_TAGVAR(archive_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='tpldir=Template.dir~ + rm -rf $tpldir~ + $CC --prelink_objects --instantiation_dir $tpldir $predep_objects $libobjs $deplibs $convenience $postdep_objects~ + $CC -shared $pic_flag $predep_objects $libobjs $deplibs `find $tpldir -name \*.o | sort | $NL2SP` $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + *) # Version 6 and above use weak symbols + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname $wl-retain-symbols-file $wl$export_symbols -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl--rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`for conv in $convenience\"\"; do test -n \"$conv\" && new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + ;; + cxx*) + # Compaq C++ + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname -o $lib $wl-retain-symbols-file $wl$export_symbols' + + runpath_var=LD_RUN_PATH + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld .*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "X$list" | $Xsed' + ;; + xl* | mpixl* | bgxl*) + # IBM XL 8.0 on PPC, with GNU ld + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl--export-dynamic' + _LT_TAGVAR(archive_cmds, $1)='$CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname -o $lib' + if test yes = "$supports_anon_versioning"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $output_objdir/$libname.ver~ + cat $export_symbols | sed -e "s/\(.*\)/\1;/" >> $output_objdir/$libname.ver~ + echo "local: *; };" >> $output_objdir/$libname.ver~ + $CC -qmkshrobj $libobjs $deplibs $compiler_flags $wl-soname $wl$soname $wl-version-script $wl$output_objdir/$libname.ver -o $lib' + fi + ;; + *) + case `$CC -V 2>&1 | sed 5q` in + *Sun\ C*) + # Sun C++ 5.9 + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file $wl$export_symbols' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl--whole-archive`new_convenience=; for conv in $convenience\"\"; do test -z \"$conv\" || new_convenience=\"$new_convenience,$conv\"; done; func_echo_all \"$new_convenience\"` $wl--no-whole-archive' + _LT_TAGVAR(compiler_needs_object, $1)=yes + + # Not sure whether something based on + # $CC $CFLAGS -v conftest.$objext -o libconftest$shared_ext 2>&1 + # would be better. + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + esac + ;; + esac + ;; + + lynxos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + m88k*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + mvs*) + case $cc_basename in + cxx*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + netbsd*) + if echo __ELF__ | $CC -E - | $GREP __ELF__ >/dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$LD -Bshareable -o $lib $predep_objects $libobjs $deplibs $postdep_objects $linker_flags' + wlarc= + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + fi + # Workaround some broken pre-1.5 toolchains + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP conftest.$objext | $SED -e "s:-lgcc -lc -lgcc::"' + ;; + + *nto* | *qnx*) + _LT_TAGVAR(ld_shlibs, $1)=yes + ;; + + openbsd* | bitrig*) + if test -f /usr/libexec/ld.so; then + _LT_TAGVAR(hardcode_direct, $1)=yes + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_direct_absolute, $1)=yes + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + if test -z "`echo __ELF__ | $CC -E - | grep __ELF__`"; then + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $pic_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-retain-symbols-file,$export_symbols -o $lib' + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-E' + _LT_TAGVAR(whole_archive_flag_spec, $1)=$wlarc'--whole-archive$convenience '$wlarc'--no-whole-archive' + fi + output_verbose_link_cmd=func_echo_all + else + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + + osf3* | osf4* | osf5*) + case $cc_basename in + KCC*) + # Kuck and Associates, Inc. (KAI) C++ Compiler + + # KCC will only create a shared library if the output file + # ends with ".so" (or ".sl" for HP-UX), so rename the library + # to its proper name (with version) after linking. + _LT_TAGVAR(archive_cmds, $1)='tempext=`echo $shared_ext | $SED -e '\''s/\([[^()0-9A-Za-z{}]]\)/\\\\\1/g'\''`; templib=`echo "$lib" | $SED -e "s/\$tempext\..*/.so/"`; $CC $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags --soname $soname -o \$templib; mv \$templib $lib' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Archives containing C++ object files must be created using + # the KAI C++ compiler. + case $host in + osf3*) _LT_TAGVAR(old_archive_cmds, $1)='$CC -Bstatic -o $oldlib $oldobjs' ;; + *) _LT_TAGVAR(old_archive_cmds, $1)='$CC -o $oldlib $oldobjs' ;; + esac + ;; + RCC*) + # Rational C++ 2.4.1 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + cxx*) + case $host in + osf3*) + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $soname `test -n "$verstring" && func_echo_all "$wl-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + ;; + *) + _LT_TAGVAR(allow_undefined_flag, $1)=' -expect_unresolved \*' + _LT_TAGVAR(archive_cmds, $1)='$CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname `test -n "$verstring" && func_echo_all "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='for i in `cat $export_symbols`; do printf "%s %s\\n" -exported_symbol "\$i" >> $lib.exp; done~ + echo "-hidden">> $lib.exp~ + $CC -shared$allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags -msym -soname $soname $wl-input $wl$lib.exp `test -n "$verstring" && $ECHO "-set_version $verstring"` -update_registry $output_objdir/so_locations -o $lib~ + $RM $lib.exp' + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-rpath $libdir' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + # + # There doesn't appear to be a way to prevent this compiler from + # explicitly linking system object files so we need to strip them + # from the output so that they don't get included in the library + # dependencies. + output_verbose_link_cmd='templist=`$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP "ld" | $GREP -v "ld:"`; templist=`func_echo_all "$templist" | $SED "s/\(^.*ld.*\)\( .*ld.*$\)/\1/"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"' + ;; + *) + if test yes,no = "$GXX,$with_gnu_ld"; then + _LT_TAGVAR(allow_undefined_flag, $1)=' $wl-expect_unresolved $wl\*' + case $host in + osf3*) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $allow_undefined_flag $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-msym $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations -o $lib' + ;; + esac + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-rpath $wl$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=: + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + + else + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + fi + ;; + esac + ;; + + psos*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + sunos4*) + case $cc_basename in + CC*) + # Sun C++ 4.x + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + lcc*) + # Lucid + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + solaris*) + case $cc_basename in + CC* | sunCC*) + # Sun C++ 4.2, 5.x and Centerline C++ + _LT_TAGVAR(archive_cmds_need_lc,$1)=yes + _LT_TAGVAR(no_undefined_flag, $1)=' -zdefs' + _LT_TAGVAR(archive_cmds, $1)='$CC -G$allow_undefined_flag -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G$allow_undefined_flag $wl-M $wl$lib.exp -h$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='-R$libdir' + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + # The compiler driver will combine and reorder linker options, + # but understands '-z linker_flag'. + # Supported since Solaris 2.6 (maybe 2.5.1?) + _LT_TAGVAR(whole_archive_flag_spec, $1)='-z allextract$convenience -z defaultextract' + ;; + esac + _LT_TAGVAR(link_all_deplibs, $1)=yes + + output_verbose_link_cmd='func_echo_all' + + # Archives containing C++ object files must be created using + # "CC -xar", where "CC" is the Sun C++ compiler. This is + # necessary to make sure instantiated templates are included + # in the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC -xar -o $oldlib $oldobjs' + ;; + gcx*) + # Green Hills C++ Compiler + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + + # The C++ compiler must be used to create the archive. + _LT_TAGVAR(old_archive_cmds, $1)='$CC $LDFLAGS -archive -o $oldlib $oldobjs' + ;; + *) + # GNU C++ compiler with Solaris linker + if test yes,no = "$GXX,$with_gnu_ld"; then + _LT_TAGVAR(no_undefined_flag, $1)=' $wl-z ${wl}defs' + if $CC --version | $GREP -v '^2\.7' > /dev/null; then + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $pic_flag -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -shared $pic_flag -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + else + # g++ 2.7 appears to require '-G' NOT '-shared' on this + # platform. + _LT_TAGVAR(archive_cmds, $1)='$CC -G -nostdlib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags $wl-h $wl$soname -o $lib' + _LT_TAGVAR(archive_expsym_cmds, $1)='echo "{ global:" > $lib.exp~cat $export_symbols | $SED -e "s/\(.*\)/\1;/" >> $lib.exp~echo "local: *; };" >> $lib.exp~ + $CC -G -nostdlib $wl-M $wl$lib.exp $wl-h $wl$soname -o $lib $predep_objects $libobjs $deplibs $postdep_objects $compiler_flags~$RM $lib.exp' + + # Commands to make compiler produce verbose output that lists + # what "hidden" libraries, object files and flags are used when + # linking a shared library. + output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"' + fi + + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir' + case $host_os in + solaris2.[[0-5]] | solaris2.[[0-5]].*) ;; + *) + _LT_TAGVAR(whole_archive_flag_spec, $1)='$wl-z ${wl}allextract$convenience $wl-z ${wl}defaultextract' + ;; + esac + fi + ;; + esac + ;; + + sysv4*uw2* | sysv5OpenUNIX* | sysv5UnixWare7.[[01]].[[10]]* | unixware7* | sco3.2v5.0.[[024]]*) + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + sysv5* | sco3.2v5* | sco5v6*) + # Note: We CANNOT use -z defs as we might desire, because we do not + # link with -lc, and that would cause any symbols used from libc to + # always be unresolved, which means just about no library would + # ever link correctly. If we're not using GNU ld we use -z text + # though, which does catch some bad symbols but isn't as heavy-handed + # as -z defs. + _LT_TAGVAR(no_undefined_flag, $1)='$wl-z,text' + _LT_TAGVAR(allow_undefined_flag, $1)='$wl-z,nodefs' + _LT_TAGVAR(archive_cmds_need_lc, $1)=no + _LT_TAGVAR(hardcode_shlibpath_var, $1)=no + _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R,$libdir' + _LT_TAGVAR(hardcode_libdir_separator, $1)=':' + _LT_TAGVAR(link_all_deplibs, $1)=yes + _LT_TAGVAR(export_dynamic_flag_spec, $1)='$wl-Bexport' + runpath_var='LD_RUN_PATH' + + case $cc_basename in + CC*) + _LT_TAGVAR(archive_cmds, $1)='$CC -G $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -G $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(old_archive_cmds, $1)='$CC -Tprelink_objects $oldobjs~ + '"$_LT_TAGVAR(old_archive_cmds, $1)" + _LT_TAGVAR(reload_cmds, $1)='$CC -Tprelink_objects $reload_objs~ + '"$_LT_TAGVAR(reload_cmds, $1)" + ;; + *) + _LT_TAGVAR(archive_cmds, $1)='$CC -shared $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + _LT_TAGVAR(archive_expsym_cmds, $1)='$CC -shared $wl-Bexport:$export_symbols $wl-h,$soname -o $lib $libobjs $deplibs $compiler_flags' + ;; + esac + ;; + + tandem*) + case $cc_basename in + NCC*) + # NonStop-UX NCC 3.20 + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + ;; + + vxworks*) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + + *) + # FIXME: insert proper C++ library support + _LT_TAGVAR(ld_shlibs, $1)=no + ;; + esac + + AC_MSG_RESULT([$_LT_TAGVAR(ld_shlibs, $1)]) + test no = "$_LT_TAGVAR(ld_shlibs, $1)" && can_build_shared=no + + _LT_TAGVAR(GCC, $1)=$GXX + _LT_TAGVAR(LD, $1)=$LD + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS + LDCXX=$LD + LD=$lt_save_LD + GCC=$lt_save_GCC + with_gnu_ld=$lt_save_with_gnu_ld + lt_cv_path_LDCXX=$lt_cv_path_LD + lt_cv_path_LD=$lt_save_path_LD + lt_cv_prog_gnu_ldcxx=$lt_cv_prog_gnu_ld + lt_cv_prog_gnu_ld=$lt_save_with_gnu_ld +fi # test yes != "$_lt_caught_CXX_error" + +AC_LANG_POP +])# _LT_LANG_CXX_CONFIG + + +# _LT_FUNC_STRIPNAME_CNF +# ---------------------- +# func_stripname_cnf prefix suffix name +# strip PREFIX and SUFFIX off of NAME. +# PREFIX and SUFFIX must not contain globbing or regex special +# characters, hashes, percent signs, but SUFFIX may contain a leading +# dot (in which case that matches only a dot). +# +# This function is identical to the (non-XSI) version of func_stripname, +# except this one can be used by m4 code that may be executed by configure, +# rather than the libtool script. +m4_defun([_LT_FUNC_STRIPNAME_CNF],[dnl +AC_REQUIRE([_LT_DECL_SED]) +AC_REQUIRE([_LT_PROG_ECHO_BACKSLASH]) +func_stripname_cnf () +{ + case @S|@2 in + .*) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%\\\\@S|@2\$%%"`;; + *) func_stripname_result=`$ECHO "@S|@3" | $SED "s%^@S|@1%%; s%@S|@2\$%%"`;; + esac +} # func_stripname_cnf +])# _LT_FUNC_STRIPNAME_CNF + + +# _LT_SYS_HIDDEN_LIBDEPS([TAGNAME]) +# --------------------------------- +# Figure out "hidden" library dependencies from verbose +# compiler output when linking a shared library. +# Parse the compiler output and extract the necessary +# objects, libraries and library flags. +m4_defun([_LT_SYS_HIDDEN_LIBDEPS], +[m4_require([_LT_FILEUTILS_DEFAULTS])dnl +AC_REQUIRE([_LT_FUNC_STRIPNAME_CNF])dnl +# Dependencies to place before and after the object being linked: +_LT_TAGVAR(predep_objects, $1)= +_LT_TAGVAR(postdep_objects, $1)= +_LT_TAGVAR(predeps, $1)= +_LT_TAGVAR(postdeps, $1)= +_LT_TAGVAR(compiler_lib_search_path, $1)= + +dnl we can't use the lt_simple_compile_test_code here, +dnl because it contains code intended for an executable, +dnl not a library. It's possible we should let each +dnl tag define a new lt_????_link_test_code variable, +dnl but it's only used here... +m4_if([$1], [], [cat > conftest.$ac_ext <<_LT_EOF +int a; +void foo (void) { a = 0; } +_LT_EOF +], [$1], [CXX], [cat > conftest.$ac_ext <<_LT_EOF +class Foo +{ +public: + Foo (void) { a = 0; } +private: + int a; +}; +_LT_EOF +], [$1], [F77], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer*4 a + a=0 + return + end +_LT_EOF +], [$1], [FC], [cat > conftest.$ac_ext <<_LT_EOF + subroutine foo + implicit none + integer a + a=0 + return + end +_LT_EOF +], [$1], [GCJ], [cat > conftest.$ac_ext <<_LT_EOF +public class foo { + private int a; + public void bar (void) { + a = 0; + } +}; +_LT_EOF +], [$1], [GO], [cat > conftest.$ac_ext <<_LT_EOF +package foo +func foo() { +} +_LT_EOF +]) + +_lt_libdeps_save_CFLAGS=$CFLAGS +case "$CC $CFLAGS " in #( +*\ -flto*\ *) CFLAGS="$CFLAGS -fno-lto" ;; +*\ -fwhopr*\ *) CFLAGS="$CFLAGS -fno-whopr" ;; +*\ -fuse-linker-plugin*\ *) CFLAGS="$CFLAGS -fno-use-linker-plugin" ;; +esac + +dnl Parse the compiler output and extract the necessary +dnl objects, libraries and library flags. +if AC_TRY_EVAL(ac_compile); then + # Parse the compiler output and extract the necessary + # objects, libraries and library flags. + + # Sentinel used to keep track of whether or not we are before + # the conftest object file. + pre_test_object_deps_done=no + + for p in `eval "$output_verbose_link_cmd"`; do + case $prev$p in + + -L* | -R* | -l*) + # Some compilers place space between "-{L,R}" and the path. + # Remove the space. + if test x-L = "$p" || + test x-R = "$p"; then + prev=$p + continue + fi + + # Expand the sysroot to ease extracting the directories later. + if test -z "$prev"; then + case $p in + -L*) func_stripname_cnf '-L' '' "$p"; prev=-L; p=$func_stripname_result ;; + -R*) func_stripname_cnf '-R' '' "$p"; prev=-R; p=$func_stripname_result ;; + -l*) func_stripname_cnf '-l' '' "$p"; prev=-l; p=$func_stripname_result ;; + esac + fi + case $p in + =*) func_stripname_cnf '=' '' "$p"; p=$lt_sysroot$func_stripname_result ;; + esac + if test no = "$pre_test_object_deps_done"; then + case $prev in + -L | -R) + # Internal compiler library paths should come after those + # provided the user. The postdeps already come after the + # user supplied libs so there is no need to process them. + if test -z "$_LT_TAGVAR(compiler_lib_search_path, $1)"; then + _LT_TAGVAR(compiler_lib_search_path, $1)=$prev$p + else + _LT_TAGVAR(compiler_lib_search_path, $1)="${_LT_TAGVAR(compiler_lib_search_path, $1)} $prev$p" + fi + ;; + # The "-l" case would never come before the object being + # linked, so don't bother handling this case. + esac + else + if test -z "$_LT_TAGVAR(postdeps, $1)"; then + _LT_TAGVAR(postdeps, $1)=$prev$p + else + _LT_TAGVAR(postdeps, $1)="${_LT_TAGVAR(postdeps, $1)} $prev$p" + fi + fi + prev= + ;; + + *.lto.$objext) ;; # Ignore GCC LTO objects + *.$objext) + # This assumes that the test object file only shows up + # once in the compiler output. + if test "$p" = "conftest.$objext"; then + pre_test_object_deps_done=yes + continue + fi + + if test no = "$pre_test_object_deps_done"; then + if test -z "$_LT_TAGVAR(predep_objects, $1)"; then + _LT_TAGVAR(predep_objects, $1)=$p + else + _LT_TAGVAR(predep_objects, $1)="$_LT_TAGVAR(predep_objects, $1) $p" + fi + else + if test -z "$_LT_TAGVAR(postdep_objects, $1)"; then + _LT_TAGVAR(postdep_objects, $1)=$p + else + _LT_TAGVAR(postdep_objects, $1)="$_LT_TAGVAR(postdep_objects, $1) $p" + fi + fi + ;; + + *) ;; # Ignore the rest. + + esac + done + + # Clean up. + rm -f a.out a.exe +else + echo "libtool.m4: error: problem compiling $1 test program" +fi + +$RM -f confest.$objext +CFLAGS=$_lt_libdeps_save_CFLAGS + +# PORTME: override above test on systems where it is broken +m4_if([$1], [CXX], +[case $host_os in +interix[[3-9]]*) + # Interix 3.5 installs completely hosed .la files for C++, so rather than + # hack all around it, let's just trust "g++" to DTRT. + _LT_TAGVAR(predep_objects,$1)= + _LT_TAGVAR(postdep_objects,$1)= + _LT_TAGVAR(postdeps,$1)= + ;; +esac +]) + +case " $_LT_TAGVAR(postdeps, $1) " in +*" -lc "*) _LT_TAGVAR(archive_cmds_need_lc, $1)=no ;; +esac + _LT_TAGVAR(compiler_lib_search_dirs, $1)= +if test -n "${_LT_TAGVAR(compiler_lib_search_path, $1)}"; then + _LT_TAGVAR(compiler_lib_search_dirs, $1)=`echo " ${_LT_TAGVAR(compiler_lib_search_path, $1)}" | $SED -e 's! -L! !g' -e 's!^ !!'` +fi +_LT_TAGDECL([], [compiler_lib_search_dirs], [1], + [The directories searched by this compiler when creating a shared library]) +_LT_TAGDECL([], [predep_objects], [1], + [Dependencies to place before and after the objects being linked to + create a shared library]) +_LT_TAGDECL([], [postdep_objects], [1]) +_LT_TAGDECL([], [predeps], [1]) +_LT_TAGDECL([], [postdeps], [1]) +_LT_TAGDECL([], [compiler_lib_search_path], [1], + [The library search path used internally by the compiler when linking + a shared library]) +])# _LT_SYS_HIDDEN_LIBDEPS + + +# _LT_LANG_F77_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for a Fortran 77 compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_F77_CONFIG], +[AC_LANG_PUSH(Fortran 77) +if test -z "$F77" || test no = "$F77"; then + _lt_disable_F77=yes +fi + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for f77 test sources. +ac_ext=f + +# Object file extension for compiled f77 test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the F77 compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test yes != "$_lt_disable_F77"; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_GCC=$GCC + lt_save_CFLAGS=$CFLAGS + CC=${F77-"f77"} + CFLAGS=$FFLAGS + compiler=$CC + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + GCC=$G77 + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test no = "$can_build_shared" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test yes = "$enable_shared" && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test yes = "$enable_shared" || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)=$G77 + _LT_TAGVAR(LD, $1)=$LD + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS +fi # test yes != "$_lt_disable_F77" + +AC_LANG_POP +])# _LT_LANG_F77_CONFIG + + +# _LT_LANG_FC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for a Fortran compiler are +# suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_FC_CONFIG], +[AC_LANG_PUSH(Fortran) + +if test -z "$FC" || test no = "$FC"; then + _lt_disable_FC=yes +fi + +_LT_TAGVAR(archive_cmds_need_lc, $1)=no +_LT_TAGVAR(allow_undefined_flag, $1)= +_LT_TAGVAR(always_export_symbols, $1)=no +_LT_TAGVAR(archive_expsym_cmds, $1)= +_LT_TAGVAR(export_dynamic_flag_spec, $1)= +_LT_TAGVAR(hardcode_direct, $1)=no +_LT_TAGVAR(hardcode_direct_absolute, $1)=no +_LT_TAGVAR(hardcode_libdir_flag_spec, $1)= +_LT_TAGVAR(hardcode_libdir_separator, $1)= +_LT_TAGVAR(hardcode_minus_L, $1)=no +_LT_TAGVAR(hardcode_automatic, $1)=no +_LT_TAGVAR(inherit_rpath, $1)=no +_LT_TAGVAR(module_cmds, $1)= +_LT_TAGVAR(module_expsym_cmds, $1)= +_LT_TAGVAR(link_all_deplibs, $1)=unknown +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds +_LT_TAGVAR(no_undefined_flag, $1)= +_LT_TAGVAR(whole_archive_flag_spec, $1)= +_LT_TAGVAR(enable_shared_with_static_runtimes, $1)=no + +# Source file extension for fc test sources. +ac_ext=${ac_fc_srcext-f} + +# Object file extension for compiled fc test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# No sense in running all these tests if we already determined that +# the FC compiler isn't working. Some variables (like enable_shared) +# are currently assumed to apply to all compilers on this platform, +# and will be corrupted by setting them based on a non-working compiler. +if test yes != "$_lt_disable_FC"; then + # Code to be used in simple compile tests + lt_simple_compile_test_code="\ + subroutine t + return + end +" + + # Code to be used in simple link tests + lt_simple_link_test_code="\ + program t + end +" + + # ltmain only uses $CC for tagged configurations so make sure $CC is set. + _LT_TAG_COMPILER + + # save warnings/boilerplate of simple test code + _LT_COMPILER_BOILERPLATE + _LT_LINKER_BOILERPLATE + + # Allow CC to be a program name with arguments. + lt_save_CC=$CC + lt_save_GCC=$GCC + lt_save_CFLAGS=$CFLAGS + CC=${FC-"f95"} + CFLAGS=$FCFLAGS + compiler=$CC + GCC=$ac_cv_fc_compiler_gnu + + _LT_TAGVAR(compiler, $1)=$CC + _LT_CC_BASENAME([$compiler]) + + if test -n "$compiler"; then + AC_MSG_CHECKING([if libtool supports shared libraries]) + AC_MSG_RESULT([$can_build_shared]) + + AC_MSG_CHECKING([whether to build shared libraries]) + test no = "$can_build_shared" && enable_shared=no + + # On AIX, shared libraries and static libraries use the same namespace, and + # are all built from PIC. + case $host_os in + aix3*) + test yes = "$enable_shared" && enable_static=no + if test -n "$RANLIB"; then + archive_cmds="$archive_cmds~\$RANLIB \$lib" + postinstall_cmds='$RANLIB $lib' + fi + ;; + aix[[4-9]]*) + if test ia64 != "$host_cpu"; then + case $enable_shared,$with_aix_soname,$aix_use_runtimelinking in + yes,aix,yes) ;; # shared object as lib.so file only + yes,svr4,*) ;; # shared object as lib.so archive member only + yes,*) enable_static=no ;; # shared object in lib.a archive as well + esac + fi + ;; + esac + AC_MSG_RESULT([$enable_shared]) + + AC_MSG_CHECKING([whether to build static libraries]) + # Make sure either enable_shared or enable_static is yes. + test yes = "$enable_shared" || enable_static=yes + AC_MSG_RESULT([$enable_static]) + + _LT_TAGVAR(GCC, $1)=$ac_cv_fc_compiler_gnu + _LT_TAGVAR(LD, $1)=$LD + + ## CAVEAT EMPTOR: + ## There is no encapsulation within the following macros, do not change + ## the running order or otherwise move them around unless you know exactly + ## what you are doing... + _LT_SYS_HIDDEN_LIBDEPS($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_SYS_DYNAMIC_LINKER($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) + fi # test -n "$compiler" + + GCC=$lt_save_GCC + CC=$lt_save_CC + CFLAGS=$lt_save_CFLAGS +fi # test yes != "$_lt_disable_FC" + +AC_LANG_POP +])# _LT_LANG_FC_CONFIG + + +# _LT_LANG_GCJ_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Java Compiler compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_GCJ_CONFIG], +[AC_REQUIRE([LT_PROG_GCJ])dnl +AC_LANG_SAVE + +# Source file extension for Java test sources. +ac_ext=java + +# Object file extension for compiled Java test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="class foo {}" + +# Code to be used in simple link tests +lt_simple_link_test_code='public class conftest { public static void main(String[[]] argv) {}; }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC=yes +CC=${GCJ-"gcj"} +CFLAGS=$GCJFLAGS +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)=$LD +_LT_CC_BASENAME([$compiler]) + +# GCJ did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_GCJ_CONFIG + + +# _LT_LANG_GO_CONFIG([TAG]) +# -------------------------- +# Ensure that the configuration variables for the GNU Go compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_GO_CONFIG], +[AC_REQUIRE([LT_PROG_GO])dnl +AC_LANG_SAVE + +# Source file extension for Go test sources. +ac_ext=go + +# Object file extension for compiled Go test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code="package main; func main() { }" + +# Code to be used in simple link tests +lt_simple_link_test_code='package main; func main() { }' + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC=yes +CC=${GOC-"gccgo"} +CFLAGS=$GOFLAGS +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_TAGVAR(LD, $1)=$LD +_LT_CC_BASENAME([$compiler]) + +# Go did not exist at the time GCC didn't implicitly link libc in. +_LT_TAGVAR(archive_cmds_need_lc, $1)=no + +_LT_TAGVAR(old_archive_cmds, $1)=$old_archive_cmds +_LT_TAGVAR(reload_flag, $1)=$reload_flag +_LT_TAGVAR(reload_cmds, $1)=$reload_cmds + +## CAVEAT EMPTOR: +## There is no encapsulation within the following macros, do not change +## the running order or otherwise move them around unless you know exactly +## what you are doing... +if test -n "$compiler"; then + _LT_COMPILER_NO_RTTI($1) + _LT_COMPILER_PIC($1) + _LT_COMPILER_C_O($1) + _LT_COMPILER_FILE_LOCKS($1) + _LT_LINKER_SHLIBS($1) + _LT_LINKER_HARDCODE_LIBPATH($1) + + _LT_CONFIG($1) +fi + +AC_LANG_RESTORE + +GCC=$lt_save_GCC +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_GO_CONFIG + + +# _LT_LANG_RC_CONFIG([TAG]) +# ------------------------- +# Ensure that the configuration variables for the Windows resource compiler +# are suitably defined. These variables are subsequently used by _LT_CONFIG +# to write the compiler configuration to 'libtool'. +m4_defun([_LT_LANG_RC_CONFIG], +[AC_REQUIRE([LT_PROG_RC])dnl +AC_LANG_SAVE + +# Source file extension for RC test sources. +ac_ext=rc + +# Object file extension for compiled RC test sources. +objext=o +_LT_TAGVAR(objext, $1)=$objext + +# Code to be used in simple compile tests +lt_simple_compile_test_code='sample MENU { MENUITEM "&Soup", 100, CHECKED }' + +# Code to be used in simple link tests +lt_simple_link_test_code=$lt_simple_compile_test_code + +# ltmain only uses $CC for tagged configurations so make sure $CC is set. +_LT_TAG_COMPILER + +# save warnings/boilerplate of simple test code +_LT_COMPILER_BOILERPLATE +_LT_LINKER_BOILERPLATE + +# Allow CC to be a program name with arguments. +lt_save_CC=$CC +lt_save_CFLAGS=$CFLAGS +lt_save_GCC=$GCC +GCC= +CC=${RC-"windres"} +CFLAGS= +compiler=$CC +_LT_TAGVAR(compiler, $1)=$CC +_LT_CC_BASENAME([$compiler]) +_LT_TAGVAR(lt_cv_prog_compiler_c_o, $1)=yes + +if test -n "$compiler"; then + : + _LT_CONFIG($1) +fi + +GCC=$lt_save_GCC +AC_LANG_RESTORE +CC=$lt_save_CC +CFLAGS=$lt_save_CFLAGS +])# _LT_LANG_RC_CONFIG + + +# LT_PROG_GCJ +# ----------- +AC_DEFUN([LT_PROG_GCJ], +[m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ], + [m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ], + [AC_CHECK_TOOL(GCJ, gcj,) + test set = "${GCJFLAGS+set}" || GCJFLAGS="-g -O2" + AC_SUBST(GCJFLAGS)])])[]dnl +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_GCJ], [LT_PROG_GCJ]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_GCJ], []) + + +# LT_PROG_GO +# ---------- +AC_DEFUN([LT_PROG_GO], +[AC_CHECK_TOOL(GOC, gccgo,) +]) + + +# LT_PROG_RC +# ---------- +AC_DEFUN([LT_PROG_RC], +[AC_CHECK_TOOL(RC, windres,) +]) + +# Old name: +AU_ALIAS([LT_AC_PROG_RC], [LT_PROG_RC]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_RC], []) + + +# _LT_DECL_EGREP +# -------------- +# If we don't have a new enough Autoconf to choose the best grep +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_EGREP], +[AC_REQUIRE([AC_PROG_EGREP])dnl +AC_REQUIRE([AC_PROG_FGREP])dnl +test -z "$GREP" && GREP=grep +_LT_DECL([], [GREP], [1], [A grep program that handles long lines]) +_LT_DECL([], [EGREP], [1], [An ERE matcher]) +_LT_DECL([], [FGREP], [1], [A literal string matcher]) +dnl Non-bleeding-edge autoconf doesn't subst GREP, so do it here too +AC_SUBST([GREP]) +]) + + +# _LT_DECL_OBJDUMP +# -------------- +# If we don't have a new enough Autoconf to choose the best objdump +# available, choose the one first in the user's PATH. +m4_defun([_LT_DECL_OBJDUMP], +[AC_CHECK_TOOL(OBJDUMP, objdump, false) +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [An object symbol dumper]) +AC_SUBST([OBJDUMP]) +]) + +# _LT_DECL_DLLTOOL +# ---------------- +# Ensure DLLTOOL variable is set. +m4_defun([_LT_DECL_DLLTOOL], +[AC_CHECK_TOOL(DLLTOOL, dlltool, false) +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [1], [DLL creation program]) +AC_SUBST([DLLTOOL]) +]) + +# _LT_DECL_SED +# ------------ +# Check for a fully-functional sed program, that truncates +# as few characters as possible. Prefer GNU sed if found. +m4_defun([_LT_DECL_SED], +[AC_PROG_SED +test -z "$SED" && SED=sed +Xsed="$SED -e 1s/^X//" +_LT_DECL([], [SED], [1], [A sed program that does not truncate output]) +_LT_DECL([], [Xsed], ["\$SED -e 1s/^X//"], + [Sed that helps us avoid accidentally triggering echo(1) options like -n]) +])# _LT_DECL_SED + +m4_ifndef([AC_PROG_SED], [ +############################################################ +# NOTE: This macro has been submitted for inclusion into # +# GNU Autoconf as AC_PROG_SED. When it is available in # +# a released version of Autoconf we should remove this # +# macro and use it instead. # +############################################################ + +m4_defun([AC_PROG_SED], +[AC_MSG_CHECKING([for a sed that does not truncate output]) +AC_CACHE_VAL(lt_cv_path_SED, +[# Loop through the user's path and test for sed and gsed. +# Then use that list of sed's as ones to test for truncation. +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for lt_ac_prog in sed gsed; do + for ac_exec_ext in '' $ac_executable_extensions; do + if $as_executable_p "$as_dir/$lt_ac_prog$ac_exec_ext"; then + lt_ac_sed_list="$lt_ac_sed_list $as_dir/$lt_ac_prog$ac_exec_ext" + fi + done + done +done +IFS=$as_save_IFS +lt_ac_max=0 +lt_ac_count=0 +# Add /usr/xpg4/bin/sed as it is typically found on Solaris +# along with /bin/sed that truncates output. +for lt_ac_sed in $lt_ac_sed_list /usr/xpg4/bin/sed; do + test ! -f "$lt_ac_sed" && continue + cat /dev/null > conftest.in + lt_ac_count=0 + echo $ECHO_N "0123456789$ECHO_C" >conftest.in + # Check for GNU sed and select it if it is found. + if "$lt_ac_sed" --version 2>&1 < /dev/null | grep 'GNU' > /dev/null; then + lt_cv_path_SED=$lt_ac_sed + break + fi + while true; do + cat conftest.in conftest.in >conftest.tmp + mv conftest.tmp conftest.in + cp conftest.in conftest.nl + echo >>conftest.nl + $lt_ac_sed -e 's/a$//' < conftest.nl >conftest.out || break + cmp -s conftest.out conftest.nl || break + # 10000 chars as input seems more than enough + test 10 -lt "$lt_ac_count" && break + lt_ac_count=`expr $lt_ac_count + 1` + if test "$lt_ac_count" -gt "$lt_ac_max"; then + lt_ac_max=$lt_ac_count + lt_cv_path_SED=$lt_ac_sed + fi + done +done +]) +SED=$lt_cv_path_SED +AC_SUBST([SED]) +AC_MSG_RESULT([$SED]) +])#AC_PROG_SED +])#m4_ifndef + +# Old name: +AU_ALIAS([LT_AC_PROG_SED], [AC_PROG_SED]) +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([LT_AC_PROG_SED], []) + + +# _LT_CHECK_SHELL_FEATURES +# ------------------------ +# Find out whether the shell is Bourne or XSI compatible, +# or has some other useful features. +m4_defun([_LT_CHECK_SHELL_FEATURES], +[if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then + lt_unset=unset +else + lt_unset=false +fi +_LT_DECL([], [lt_unset], [0], [whether the shell understands "unset"])dnl + +# test EBCDIC or ASCII +case `echo X|tr X '\101'` in + A) # ASCII based system + # \n is not interpreted correctly by Solaris 8 /usr/ucb/tr + lt_SP2NL='tr \040 \012' + lt_NL2SP='tr \015\012 \040\040' + ;; + *) # EBCDIC based system + lt_SP2NL='tr \100 \n' + lt_NL2SP='tr \r\n \100\100' + ;; +esac +_LT_DECL([SP2NL], [lt_SP2NL], [1], [turn spaces into newlines])dnl +_LT_DECL([NL2SP], [lt_NL2SP], [1], [turn newlines into spaces])dnl +])# _LT_CHECK_SHELL_FEATURES + + +# _LT_PATH_CONVERSION_FUNCTIONS +# ----------------------------- +# Determine what file name conversion functions should be used by +# func_to_host_file (and, implicitly, by func_to_host_path). These are needed +# for certain cross-compile configurations and native mingw. +m4_defun([_LT_PATH_CONVERSION_FUNCTIONS], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +AC_REQUIRE([AC_CANONICAL_BUILD])dnl +AC_MSG_CHECKING([how to convert $build file names to $host format]) +AC_CACHE_VAL(lt_cv_to_host_file_cmd, +[case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_w32 + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_cygwin_to_w32 + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_w32 + ;; + esac + ;; + *-*-cygwin* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_host_file_cmd=func_convert_file_msys_to_cygwin + ;; + *-*-cygwin* ) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; + * ) # otherwise, assume *nix + lt_cv_to_host_file_cmd=func_convert_file_nix_to_cygwin + ;; + esac + ;; + * ) # unhandled hosts (and "normal" native builds) + lt_cv_to_host_file_cmd=func_convert_file_noop + ;; +esac +]) +to_host_file_cmd=$lt_cv_to_host_file_cmd +AC_MSG_RESULT([$lt_cv_to_host_file_cmd]) +_LT_DECL([to_host_file_cmd], [lt_cv_to_host_file_cmd], + [0], [convert $build file names to $host format])dnl + +AC_MSG_CHECKING([how to convert $build file names to toolchain format]) +AC_CACHE_VAL(lt_cv_to_tool_file_cmd, +[#assume ordinary cross tools, or native build. +lt_cv_to_tool_file_cmd=func_convert_file_noop +case $host in + *-*-mingw* ) + case $build in + *-*-mingw* ) # actually msys + lt_cv_to_tool_file_cmd=func_convert_file_msys_to_w32 + ;; + esac + ;; +esac +]) +to_tool_file_cmd=$lt_cv_to_tool_file_cmd +AC_MSG_RESULT([$lt_cv_to_tool_file_cmd]) +_LT_DECL([to_tool_file_cmd], [lt_cv_to_tool_file_cmd], + [0], [convert $build files to toolchain format])dnl +])# _LT_PATH_CONVERSION_FUNCTIONS diff --git a/m4/ltoptions.m4 b/m4/ltoptions.m4 new file mode 100644 index 0000000..94b0829 --- /dev/null +++ b/m4/ltoptions.m4 @@ -0,0 +1,437 @@ +# Helper functions for option handling. -*- Autoconf -*- +# +# Copyright (C) 2004-2005, 2007-2009, 2011-2015 Free Software +# Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# 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 ltoptions.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOPTIONS_VERSION], [m4_if([1])]) + + +# _LT_MANGLE_OPTION(MACRO-NAME, OPTION-NAME) +# ------------------------------------------ +m4_define([_LT_MANGLE_OPTION], +[[_LT_OPTION_]m4_bpatsubst($1__$2, [[^a-zA-Z0-9_]], [_])]) + + +# _LT_SET_OPTION(MACRO-NAME, OPTION-NAME) +# --------------------------------------- +# Set option OPTION-NAME for macro MACRO-NAME, and if there is a +# matching handler defined, dispatch to it. Other OPTION-NAMEs are +# saved as a flag. +m4_define([_LT_SET_OPTION], +[m4_define(_LT_MANGLE_OPTION([$1], [$2]))dnl +m4_ifdef(_LT_MANGLE_DEFUN([$1], [$2]), + _LT_MANGLE_DEFUN([$1], [$2]), + [m4_warning([Unknown $1 option '$2'])])[]dnl +]) + + +# _LT_IF_OPTION(MACRO-NAME, OPTION-NAME, IF-SET, [IF-NOT-SET]) +# ------------------------------------------------------------ +# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise. +m4_define([_LT_IF_OPTION], +[m4_ifdef(_LT_MANGLE_OPTION([$1], [$2]), [$3], [$4])]) + + +# _LT_UNLESS_OPTIONS(MACRO-NAME, OPTION-LIST, IF-NOT-SET) +# ------------------------------------------------------- +# Execute IF-NOT-SET unless all options in OPTION-LIST for MACRO-NAME +# are set. +m4_define([_LT_UNLESS_OPTIONS], +[m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [m4_ifdef(_LT_MANGLE_OPTION([$1], _LT_Option), + [m4_define([$0_found])])])[]dnl +m4_ifdef([$0_found], [m4_undefine([$0_found])], [$3 +])[]dnl +]) + + +# _LT_SET_OPTIONS(MACRO-NAME, OPTION-LIST) +# ---------------------------------------- +# OPTION-LIST is a space-separated list of Libtool options associated +# with MACRO-NAME. If any OPTION has a matching handler declared with +# LT_OPTION_DEFINE, dispatch to that macro; otherwise complain about +# the unknown option and exit. +m4_defun([_LT_SET_OPTIONS], +[# Set options +m4_foreach([_LT_Option], m4_split(m4_normalize([$2])), + [_LT_SET_OPTION([$1], _LT_Option)]) + +m4_if([$1],[LT_INIT],[ + dnl + dnl Simply set some default values (i.e off) if boolean options were not + dnl specified: + _LT_UNLESS_OPTIONS([LT_INIT], [dlopen], [enable_dlopen=no + ]) + _LT_UNLESS_OPTIONS([LT_INIT], [win32-dll], [enable_win32_dll=no + ]) + dnl + dnl If no reference was made to various pairs of opposing options, then + dnl we run the default mode handler for the pair. For example, if neither + dnl 'shared' nor 'disable-shared' was passed, we enable building of shared + dnl archives by default: + _LT_UNLESS_OPTIONS([LT_INIT], [shared disable-shared], [_LT_ENABLE_SHARED]) + _LT_UNLESS_OPTIONS([LT_INIT], [static disable-static], [_LT_ENABLE_STATIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [pic-only no-pic], [_LT_WITH_PIC]) + _LT_UNLESS_OPTIONS([LT_INIT], [fast-install disable-fast-install], + [_LT_ENABLE_FAST_INSTALL]) + _LT_UNLESS_OPTIONS([LT_INIT], [aix-soname=aix aix-soname=both aix-soname=svr4], + [_LT_WITH_AIX_SONAME([aix])]) + ]) +])# _LT_SET_OPTIONS + + +## --------------------------------- ## +## Macros to handle LT_INIT options. ## +## --------------------------------- ## + +# _LT_MANGLE_DEFUN(MACRO-NAME, OPTION-NAME) +# ----------------------------------------- +m4_define([_LT_MANGLE_DEFUN], +[[_LT_OPTION_DEFUN_]m4_bpatsubst(m4_toupper([$1__$2]), [[^A-Z0-9_]], [_])]) + + +# LT_OPTION_DEFINE(MACRO-NAME, OPTION-NAME, CODE) +# ----------------------------------------------- +m4_define([LT_OPTION_DEFINE], +[m4_define(_LT_MANGLE_DEFUN([$1], [$2]), [$3])[]dnl +])# LT_OPTION_DEFINE + + +# dlopen +# ------ +LT_OPTION_DEFINE([LT_INIT], [dlopen], [enable_dlopen=yes +]) + +AU_DEFUN([AC_LIBTOOL_DLOPEN], +[_LT_SET_OPTION([LT_INIT], [dlopen]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the 'dlopen' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_DLOPEN], []) + + +# win32-dll +# --------- +# Declare package support for building win32 dll's. +LT_OPTION_DEFINE([LT_INIT], [win32-dll], +[enable_win32_dll=yes + +case $host in +*-*-cygwin* | *-*-mingw* | *-*-pw32* | *-*-cegcc*) + AC_CHECK_TOOL(AS, as, false) + AC_CHECK_TOOL(DLLTOOL, dlltool, false) + AC_CHECK_TOOL(OBJDUMP, objdump, false) + ;; +esac + +test -z "$AS" && AS=as +_LT_DECL([], [AS], [1], [Assembler program])dnl + +test -z "$DLLTOOL" && DLLTOOL=dlltool +_LT_DECL([], [DLLTOOL], [1], [DLL creation program])dnl + +test -z "$OBJDUMP" && OBJDUMP=objdump +_LT_DECL([], [OBJDUMP], [1], [Object dumper program])dnl +])# win32-dll + +AU_DEFUN([AC_LIBTOOL_WIN32_DLL], +[AC_REQUIRE([AC_CANONICAL_HOST])dnl +_LT_SET_OPTION([LT_INIT], [win32-dll]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the 'win32-dll' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_WIN32_DLL], []) + + +# _LT_ENABLE_SHARED([DEFAULT]) +# ---------------------------- +# implement the --enable-shared flag, and supports the 'shared' and +# 'disable-shared' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. +m4_define([_LT_ENABLE_SHARED], +[m4_define([_LT_ENABLE_SHARED_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([shared], + [AS_HELP_STRING([--enable-shared@<:@=PKGS@:>@], + [build shared libraries @<:@default=]_LT_ENABLE_SHARED_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_shared=yes ;; + no) enable_shared=no ;; + *) + enable_shared=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_shared=yes + fi + done + IFS=$lt_save_ifs + ;; + esac], + [enable_shared=]_LT_ENABLE_SHARED_DEFAULT) + + _LT_DECL([build_libtool_libs], [enable_shared], [0], + [Whether or not to build shared libraries]) +])# _LT_ENABLE_SHARED + +LT_OPTION_DEFINE([LT_INIT], [shared], [_LT_ENABLE_SHARED([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-shared], [_LT_ENABLE_SHARED([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[shared]) +]) + +AC_DEFUN([AC_DISABLE_SHARED], +[_LT_SET_OPTION([LT_INIT], [disable-shared]) +]) + +AU_DEFUN([AM_ENABLE_SHARED], [AC_ENABLE_SHARED($@)]) +AU_DEFUN([AM_DISABLE_SHARED], [AC_DISABLE_SHARED($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_SHARED], []) +dnl AC_DEFUN([AM_DISABLE_SHARED], []) + + + +# _LT_ENABLE_STATIC([DEFAULT]) +# ---------------------------- +# implement the --enable-static flag, and support the 'static' and +# 'disable-static' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. +m4_define([_LT_ENABLE_STATIC], +[m4_define([_LT_ENABLE_STATIC_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([static], + [AS_HELP_STRING([--enable-static@<:@=PKGS@:>@], + [build static libraries @<:@default=]_LT_ENABLE_STATIC_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_static=yes ;; + no) enable_static=no ;; + *) + enable_static=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_static=yes + fi + done + IFS=$lt_save_ifs + ;; + esac], + [enable_static=]_LT_ENABLE_STATIC_DEFAULT) + + _LT_DECL([build_old_libs], [enable_static], [0], + [Whether or not to build static libraries]) +])# _LT_ENABLE_STATIC + +LT_OPTION_DEFINE([LT_INIT], [static], [_LT_ENABLE_STATIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-static], [_LT_ENABLE_STATIC([no])]) + +# Old names: +AC_DEFUN([AC_ENABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[static]) +]) + +AC_DEFUN([AC_DISABLE_STATIC], +[_LT_SET_OPTION([LT_INIT], [disable-static]) +]) + +AU_DEFUN([AM_ENABLE_STATIC], [AC_ENABLE_STATIC($@)]) +AU_DEFUN([AM_DISABLE_STATIC], [AC_DISABLE_STATIC($@)]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AM_ENABLE_STATIC], []) +dnl AC_DEFUN([AM_DISABLE_STATIC], []) + + + +# _LT_ENABLE_FAST_INSTALL([DEFAULT]) +# ---------------------------------- +# implement the --enable-fast-install flag, and support the 'fast-install' +# and 'disable-fast-install' LT_INIT options. +# DEFAULT is either 'yes' or 'no'. If omitted, it defaults to 'yes'. +m4_define([_LT_ENABLE_FAST_INSTALL], +[m4_define([_LT_ENABLE_FAST_INSTALL_DEFAULT], [m4_if($1, no, no, yes)])dnl +AC_ARG_ENABLE([fast-install], + [AS_HELP_STRING([--enable-fast-install@<:@=PKGS@:>@], + [optimize for fast installation @<:@default=]_LT_ENABLE_FAST_INSTALL_DEFAULT[@:>@])], + [p=${PACKAGE-default} + case $enableval in + yes) enable_fast_install=yes ;; + no) enable_fast_install=no ;; + *) + enable_fast_install=no + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for pkg in $enableval; do + IFS=$lt_save_ifs + if test "X$pkg" = "X$p"; then + enable_fast_install=yes + fi + done + IFS=$lt_save_ifs + ;; + esac], + [enable_fast_install=]_LT_ENABLE_FAST_INSTALL_DEFAULT) + +_LT_DECL([fast_install], [enable_fast_install], [0], + [Whether or not to optimize for fast installation])dnl +])# _LT_ENABLE_FAST_INSTALL + +LT_OPTION_DEFINE([LT_INIT], [fast-install], [_LT_ENABLE_FAST_INSTALL([yes])]) +LT_OPTION_DEFINE([LT_INIT], [disable-fast-install], [_LT_ENABLE_FAST_INSTALL([no])]) + +# Old names: +AU_DEFUN([AC_ENABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], m4_if([$1], [no], [disable-])[fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the 'fast-install' option into LT_INIT's first parameter.]) +]) + +AU_DEFUN([AC_DISABLE_FAST_INSTALL], +[_LT_SET_OPTION([LT_INIT], [disable-fast-install]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you put +the 'disable-fast-install' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_ENABLE_FAST_INSTALL], []) +dnl AC_DEFUN([AM_DISABLE_FAST_INSTALL], []) + + +# _LT_WITH_AIX_SONAME([DEFAULT]) +# ---------------------------------- +# implement the --with-aix-soname flag, and support the `aix-soname=aix' +# and `aix-soname=both' and `aix-soname=svr4' LT_INIT options. DEFAULT +# is either `aix', `both' or `svr4'. If omitted, it defaults to `aix'. +m4_define([_LT_WITH_AIX_SONAME], +[m4_define([_LT_WITH_AIX_SONAME_DEFAULT], [m4_if($1, svr4, svr4, m4_if($1, both, both, aix))])dnl +shared_archive_member_spec= +case $host,$enable_shared in +power*-*-aix[[5-9]]*,yes) + AC_MSG_CHECKING([which variant of shared library versioning to provide]) + AC_ARG_WITH([aix-soname], + [AS_HELP_STRING([--with-aix-soname=aix|svr4|both], + [shared library versioning (aka "SONAME") variant to provide on AIX, @<:@default=]_LT_WITH_AIX_SONAME_DEFAULT[@:>@.])], + [case $withval in + aix|svr4|both) + ;; + *) + AC_MSG_ERROR([Unknown argument to --with-aix-soname]) + ;; + esac + lt_cv_with_aix_soname=$with_aix_soname], + [AC_CACHE_VAL([lt_cv_with_aix_soname], + [lt_cv_with_aix_soname=]_LT_WITH_AIX_SONAME_DEFAULT) + with_aix_soname=$lt_cv_with_aix_soname]) + AC_MSG_RESULT([$with_aix_soname]) + if test aix != "$with_aix_soname"; then + # For the AIX way of multilib, we name the shared archive member + # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o', + # and 'shr.imp' or 'shr_64.imp', respectively, for the Import File. + # Even when GNU compilers ignore OBJECT_MODE but need '-maix64' flag, + # the AIX toolchain works better with OBJECT_MODE set (default 32). + if test 64 = "${OBJECT_MODE-32}"; then + shared_archive_member_spec=shr_64 + else + shared_archive_member_spec=shr + fi + fi + ;; +*) + with_aix_soname=aix + ;; +esac + +_LT_DECL([], [shared_archive_member_spec], [0], + [Shared archive member basename, for filename based shared library versioning on AIX])dnl +])# _LT_WITH_AIX_SONAME + +LT_OPTION_DEFINE([LT_INIT], [aix-soname=aix], [_LT_WITH_AIX_SONAME([aix])]) +LT_OPTION_DEFINE([LT_INIT], [aix-soname=both], [_LT_WITH_AIX_SONAME([both])]) +LT_OPTION_DEFINE([LT_INIT], [aix-soname=svr4], [_LT_WITH_AIX_SONAME([svr4])]) + + +# _LT_WITH_PIC([MODE]) +# -------------------- +# implement the --with-pic flag, and support the 'pic-only' and 'no-pic' +# LT_INIT options. +# MODE is either 'yes' or 'no'. If omitted, it defaults to 'both'. +m4_define([_LT_WITH_PIC], +[AC_ARG_WITH([pic], + [AS_HELP_STRING([--with-pic@<:@=PKGS@:>@], + [try to use only PIC/non-PIC objects @<:@default=use both@:>@])], + [lt_p=${PACKAGE-default} + case $withval in + yes|no) pic_mode=$withval ;; + *) + pic_mode=default + # Look at the argument we got. We use all the common list separators. + lt_save_ifs=$IFS; IFS=$IFS$PATH_SEPARATOR, + for lt_pkg in $withval; do + IFS=$lt_save_ifs + if test "X$lt_pkg" = "X$lt_p"; then + pic_mode=yes + fi + done + IFS=$lt_save_ifs + ;; + esac], + [pic_mode=m4_default([$1], [default])]) + +_LT_DECL([], [pic_mode], [0], [What type of objects to build])dnl +])# _LT_WITH_PIC + +LT_OPTION_DEFINE([LT_INIT], [pic-only], [_LT_WITH_PIC([yes])]) +LT_OPTION_DEFINE([LT_INIT], [no-pic], [_LT_WITH_PIC([no])]) + +# Old name: +AU_DEFUN([AC_LIBTOOL_PICMODE], +[_LT_SET_OPTION([LT_INIT], [pic-only]) +AC_DIAGNOSE([obsolete], +[$0: Remove this warning and the call to _LT_SET_OPTION when you +put the 'pic-only' option into LT_INIT's first parameter.]) +]) + +dnl aclocal-1.4 backwards compatibility: +dnl AC_DEFUN([AC_LIBTOOL_PICMODE], []) + +## ----------------- ## +## LTDL_INIT Options ## +## ----------------- ## + +m4_define([_LTDL_MODE], []) +LT_OPTION_DEFINE([LTDL_INIT], [nonrecursive], + [m4_define([_LTDL_MODE], [nonrecursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [recursive], + [m4_define([_LTDL_MODE], [recursive])]) +LT_OPTION_DEFINE([LTDL_INIT], [subproject], + [m4_define([_LTDL_MODE], [subproject])]) + +m4_define([_LTDL_TYPE], []) +LT_OPTION_DEFINE([LTDL_INIT], [installable], + [m4_define([_LTDL_TYPE], [installable])]) +LT_OPTION_DEFINE([LTDL_INIT], [convenience], + [m4_define([_LTDL_TYPE], [convenience])]) diff --git a/m4/ltsugar.m4 b/m4/ltsugar.m4 new file mode 100644 index 0000000..48bc934 --- /dev/null +++ b/m4/ltsugar.m4 @@ -0,0 +1,124 @@ +# ltsugar.m4 -- libtool m4 base layer. -*-Autoconf-*- +# +# Copyright (C) 2004-2005, 2007-2008, 2011-2015 Free Software +# Foundation, Inc. +# Written by Gary V. Vaughan, 2004 +# +# 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 6 ltsugar.m4 + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTSUGAR_VERSION], [m4_if([0.1])]) + + +# lt_join(SEP, ARG1, [ARG2...]) +# ----------------------------- +# Produce ARG1SEPARG2...SEPARGn, omitting [] arguments and their +# associated separator. +# Needed until we can rely on m4_join from Autoconf 2.62, since all earlier +# versions in m4sugar had bugs. +m4_define([lt_join], +[m4_if([$#], [1], [], + [$#], [2], [[$2]], + [m4_if([$2], [], [], [[$2]_])$0([$1], m4_shift(m4_shift($@)))])]) +m4_define([_lt_join], +[m4_if([$#$2], [2], [], + [m4_if([$2], [], [], [[$1$2]])$0([$1], m4_shift(m4_shift($@)))])]) + + +# lt_car(LIST) +# lt_cdr(LIST) +# ------------ +# Manipulate m4 lists. +# These macros are necessary as long as will still need to support +# Autoconf-2.59, which quotes differently. +m4_define([lt_car], [[$1]]) +m4_define([lt_cdr], +[m4_if([$#], 0, [m4_fatal([$0: cannot be called without arguments])], + [$#], 1, [], + [m4_dquote(m4_shift($@))])]) +m4_define([lt_unquote], $1) + + +# lt_append(MACRO-NAME, STRING, [SEPARATOR]) +# ------------------------------------------ +# Redefine MACRO-NAME to hold its former content plus 'SEPARATOR''STRING'. +# Note that neither SEPARATOR nor STRING are expanded; they are appended +# to MACRO-NAME as is (leaving the expansion for when MACRO-NAME is invoked). +# No SEPARATOR is output if MACRO-NAME was previously undefined (different +# than defined and empty). +# +# This macro is needed until we can rely on Autoconf 2.62, since earlier +# versions of m4sugar mistakenly expanded SEPARATOR but not STRING. +m4_define([lt_append], +[m4_define([$1], + m4_ifdef([$1], [m4_defn([$1])[$3]])[$2])]) + + + +# lt_combine(SEP, PREFIX-LIST, INFIX, SUFFIX1, [SUFFIX2...]) +# ---------------------------------------------------------- +# Produce a SEP delimited list of all paired combinations of elements of +# PREFIX-LIST with SUFFIX1 through SUFFIXn. Each element of the list +# has the form PREFIXmINFIXSUFFIXn. +# Needed until we can rely on m4_combine added in Autoconf 2.62. +m4_define([lt_combine], +[m4_if(m4_eval([$# > 3]), [1], + [m4_pushdef([_Lt_sep], [m4_define([_Lt_sep], m4_defn([lt_car]))])]]dnl +[[m4_foreach([_Lt_prefix], [$2], + [m4_foreach([_Lt_suffix], + ]m4_dquote(m4_dquote(m4_shift(m4_shift(m4_shift($@)))))[, + [_Lt_sep([$1])[]m4_defn([_Lt_prefix])[$3]m4_defn([_Lt_suffix])])])])]) + + +# lt_if_append_uniq(MACRO-NAME, VARNAME, [SEPARATOR], [UNIQ], [NOT-UNIQ]) +# ----------------------------------------------------------------------- +# Iff MACRO-NAME does not yet contain VARNAME, then append it (delimited +# by SEPARATOR if supplied) and expand UNIQ, else NOT-UNIQ. +m4_define([lt_if_append_uniq], +[m4_ifdef([$1], + [m4_if(m4_index([$3]m4_defn([$1])[$3], [$3$2$3]), [-1], + [lt_append([$1], [$2], [$3])$4], + [$5])], + [lt_append([$1], [$2], [$3])$4])]) + + +# lt_dict_add(DICT, KEY, VALUE) +# ----------------------------- +m4_define([lt_dict_add], +[m4_define([$1($2)], [$3])]) + + +# lt_dict_add_subkey(DICT, KEY, SUBKEY, VALUE) +# -------------------------------------------- +m4_define([lt_dict_add_subkey], +[m4_define([$1($2:$3)], [$4])]) + + +# lt_dict_fetch(DICT, KEY, [SUBKEY]) +# ---------------------------------- +m4_define([lt_dict_fetch], +[m4_ifval([$3], + m4_ifdef([$1($2:$3)], [m4_defn([$1($2:$3)])]), + m4_ifdef([$1($2)], [m4_defn([$1($2)])]))]) + + +# lt_if_dict_fetch(DICT, KEY, [SUBKEY], VALUE, IF-TRUE, [IF-FALSE]) +# ----------------------------------------------------------------- +m4_define([lt_if_dict_fetch], +[m4_if(lt_dict_fetch([$1], [$2], [$3]), [$4], + [$5], + [$6])]) + + +# lt_dict_filter(DICT, [SUBKEY], VALUE, [SEPARATOR], KEY, [...]) +# -------------------------------------------------------------- +m4_define([lt_dict_filter], +[m4_if([$5], [], [], + [lt_join(m4_quote(m4_default([$4], [[, ]])), + lt_unquote(m4_split(m4_normalize(m4_foreach(_Lt_key, lt_car([m4_shiftn(4, $@)]), + [lt_if_dict_fetch([$1], _Lt_key, [$2], [$3], [_Lt_key ])])))))])[]dnl +]) diff --git a/m4/ltversion.m4 b/m4/ltversion.m4 new file mode 100644 index 0000000..fa04b52 --- /dev/null +++ b/m4/ltversion.m4 @@ -0,0 +1,23 @@ +# ltversion.m4 -- version numbers -*- Autoconf -*- +# +# Copyright (C) 2004, 2011-2015 Free Software Foundation, Inc. +# Written by Scott James Remnant, 2004 +# +# 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. + +# @configure_input@ + +# serial 4179 ltversion.m4 +# This file is part of GNU Libtool + +m4_define([LT_PACKAGE_VERSION], [2.4.6]) +m4_define([LT_PACKAGE_REVISION], [2.4.6]) + +AC_DEFUN([LTVERSION_VERSION], +[macro_version='2.4.6' +macro_revision='2.4.6' +_LT_DECL(, macro_version, 0, [Which release of libtool.m4 was used?]) +_LT_DECL(, macro_revision, 0) +]) diff --git a/m4/lt~obsolete.m4 b/m4/lt~obsolete.m4 new file mode 100644 index 0000000..c6b26f8 --- /dev/null +++ b/m4/lt~obsolete.m4 @@ -0,0 +1,99 @@ +# lt~obsolete.m4 -- aclocal satisfying obsolete definitions. -*-Autoconf-*- +# +# Copyright (C) 2004-2005, 2007, 2009, 2011-2015 Free Software +# Foundation, Inc. +# Written by Scott James Remnant, 2004. +# +# 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 5 lt~obsolete.m4 + +# These exist entirely to fool aclocal when bootstrapping libtool. +# +# In the past libtool.m4 has provided macros via AC_DEFUN (or AU_DEFUN), +# which have later been changed to m4_define as they aren't part of the +# exported API, or moved to Autoconf or Automake where they belong. +# +# The trouble is, aclocal is a bit thick. It'll see the old AC_DEFUN +# in /usr/share/aclocal/libtool.m4 and remember it, then when it sees us +# using a macro with the same name in our local m4/libtool.m4 it'll +# pull the old libtool.m4 in (it doesn't see our shiny new m4_define +# and doesn't know about Autoconf macros at all.) +# +# So we provide this file, which has a silly filename so it's always +# included after everything else. This provides aclocal with the +# AC_DEFUNs it wants, but when m4 processes it, it doesn't do anything +# because those macros already exist, or will be overwritten later. +# We use AC_DEFUN over AU_DEFUN for compatibility with aclocal-1.6. +# +# Anytime we withdraw an AC_DEFUN or AU_DEFUN, remember to add it here. +# Yes, that means every name once taken will need to remain here until +# we give up compatibility with versions before 1.7, at which point +# we need to keep only those names which we still refer to. + +# This is to help aclocal find these macros, as it can't see m4_define. +AC_DEFUN([LTOBSOLETE_VERSION], [m4_if([1])]) + +m4_ifndef([AC_LIBTOOL_LINKER_OPTION], [AC_DEFUN([AC_LIBTOOL_LINKER_OPTION])]) +m4_ifndef([AC_PROG_EGREP], [AC_DEFUN([AC_PROG_EGREP])]) +m4_ifndef([_LT_AC_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_AC_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_AC_SHELL_INIT], [AC_DEFUN([_LT_AC_SHELL_INIT])]) +m4_ifndef([_LT_AC_SYS_LIBPATH_AIX], [AC_DEFUN([_LT_AC_SYS_LIBPATH_AIX])]) +m4_ifndef([_LT_PROG_LTMAIN], [AC_DEFUN([_LT_PROG_LTMAIN])]) +m4_ifndef([_LT_AC_TAGVAR], [AC_DEFUN([_LT_AC_TAGVAR])]) +m4_ifndef([AC_LTDL_ENABLE_INSTALL], [AC_DEFUN([AC_LTDL_ENABLE_INSTALL])]) +m4_ifndef([AC_LTDL_PREOPEN], [AC_DEFUN([AC_LTDL_PREOPEN])]) +m4_ifndef([_LT_AC_SYS_COMPILER], [AC_DEFUN([_LT_AC_SYS_COMPILER])]) +m4_ifndef([_LT_AC_LOCK], [AC_DEFUN([_LT_AC_LOCK])]) +m4_ifndef([AC_LIBTOOL_SYS_OLD_ARCHIVE], [AC_DEFUN([AC_LIBTOOL_SYS_OLD_ARCHIVE])]) +m4_ifndef([_LT_AC_TRY_DLOPEN_SELF], [AC_DEFUN([_LT_AC_TRY_DLOPEN_SELF])]) +m4_ifndef([AC_LIBTOOL_PROG_CC_C_O], [AC_DEFUN([AC_LIBTOOL_PROG_CC_C_O])]) +m4_ifndef([AC_LIBTOOL_SYS_HARD_LINK_LOCKS], [AC_DEFUN([AC_LIBTOOL_SYS_HARD_LINK_LOCKS])]) +m4_ifndef([AC_LIBTOOL_OBJDIR], [AC_DEFUN([AC_LIBTOOL_OBJDIR])]) +m4_ifndef([AC_LTDL_OBJDIR], [AC_DEFUN([AC_LTDL_OBJDIR])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH], [AC_DEFUN([AC_LIBTOOL_PROG_LD_HARDCODE_LIBPATH])]) +m4_ifndef([AC_LIBTOOL_SYS_LIB_STRIP], [AC_DEFUN([AC_LIBTOOL_SYS_LIB_STRIP])]) +m4_ifndef([AC_PATH_MAGIC], [AC_DEFUN([AC_PATH_MAGIC])]) +m4_ifndef([AC_PROG_LD_GNU], [AC_DEFUN([AC_PROG_LD_GNU])]) +m4_ifndef([AC_PROG_LD_RELOAD_FLAG], [AC_DEFUN([AC_PROG_LD_RELOAD_FLAG])]) +m4_ifndef([AC_DEPLIBS_CHECK_METHOD], [AC_DEFUN([AC_DEPLIBS_CHECK_METHOD])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_NO_RTTI], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_NO_RTTI])]) +m4_ifndef([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE], [AC_DEFUN([AC_LIBTOOL_SYS_GLOBAL_SYMBOL_PIPE])]) +m4_ifndef([AC_LIBTOOL_PROG_COMPILER_PIC], [AC_DEFUN([AC_LIBTOOL_PROG_COMPILER_PIC])]) +m4_ifndef([AC_LIBTOOL_PROG_LD_SHLIBS], [AC_DEFUN([AC_LIBTOOL_PROG_LD_SHLIBS])]) +m4_ifndef([AC_LIBTOOL_POSTDEP_PREDEP], [AC_DEFUN([AC_LIBTOOL_POSTDEP_PREDEP])]) +m4_ifndef([LT_AC_PROG_EGREP], [AC_DEFUN([LT_AC_PROG_EGREP])]) +m4_ifndef([LT_AC_PROG_SED], [AC_DEFUN([LT_AC_PROG_SED])]) +m4_ifndef([_LT_CC_BASENAME], [AC_DEFUN([_LT_CC_BASENAME])]) +m4_ifndef([_LT_COMPILER_BOILERPLATE], [AC_DEFUN([_LT_COMPILER_BOILERPLATE])]) +m4_ifndef([_LT_LINKER_BOILERPLATE], [AC_DEFUN([_LT_LINKER_BOILERPLATE])]) +m4_ifndef([_AC_PROG_LIBTOOL], [AC_DEFUN([_AC_PROG_LIBTOOL])]) +m4_ifndef([AC_LIBTOOL_SETUP], [AC_DEFUN([AC_LIBTOOL_SETUP])]) +m4_ifndef([_LT_AC_CHECK_DLFCN], [AC_DEFUN([_LT_AC_CHECK_DLFCN])]) +m4_ifndef([AC_LIBTOOL_SYS_DYNAMIC_LINKER], [AC_DEFUN([AC_LIBTOOL_SYS_DYNAMIC_LINKER])]) +m4_ifndef([_LT_AC_TAGCONFIG], [AC_DEFUN([_LT_AC_TAGCONFIG])]) +m4_ifndef([AC_DISABLE_FAST_INSTALL], [AC_DEFUN([AC_DISABLE_FAST_INSTALL])]) +m4_ifndef([_LT_AC_LANG_CXX], [AC_DEFUN([_LT_AC_LANG_CXX])]) +m4_ifndef([_LT_AC_LANG_F77], [AC_DEFUN([_LT_AC_LANG_F77])]) +m4_ifndef([_LT_AC_LANG_GCJ], [AC_DEFUN([_LT_AC_LANG_GCJ])]) +m4_ifndef([AC_LIBTOOL_LANG_C_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_C_CONFIG])]) +m4_ifndef([_LT_AC_LANG_C_CONFIG], [AC_DEFUN([_LT_AC_LANG_C_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_CXX_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_CXX_CONFIG])]) +m4_ifndef([_LT_AC_LANG_CXX_CONFIG], [AC_DEFUN([_LT_AC_LANG_CXX_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_F77_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_F77_CONFIG])]) +m4_ifndef([_LT_AC_LANG_F77_CONFIG], [AC_DEFUN([_LT_AC_LANG_F77_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_GCJ_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_GCJ_CONFIG])]) +m4_ifndef([_LT_AC_LANG_GCJ_CONFIG], [AC_DEFUN([_LT_AC_LANG_GCJ_CONFIG])]) +m4_ifndef([AC_LIBTOOL_LANG_RC_CONFIG], [AC_DEFUN([AC_LIBTOOL_LANG_RC_CONFIG])]) +m4_ifndef([_LT_AC_LANG_RC_CONFIG], [AC_DEFUN([_LT_AC_LANG_RC_CONFIG])]) +m4_ifndef([AC_LIBTOOL_CONFIG], [AC_DEFUN([AC_LIBTOOL_CONFIG])]) +m4_ifndef([_LT_AC_FILE_LTDLL_C], [AC_DEFUN([_LT_AC_FILE_LTDLL_C])]) +m4_ifndef([_LT_REQUIRED_DARWIN_CHECKS], [AC_DEFUN([_LT_REQUIRED_DARWIN_CHECKS])]) +m4_ifndef([_LT_AC_PROG_CXXCPP], [AC_DEFUN([_LT_AC_PROG_CXXCPP])]) +m4_ifndef([_LT_PREPARE_SED_QUOTE_VARS], [AC_DEFUN([_LT_PREPARE_SED_QUOTE_VARS])]) +m4_ifndef([_LT_PROG_ECHO_BACKSLASH], [AC_DEFUN([_LT_PROG_ECHO_BACKSLASH])]) +m4_ifndef([_LT_PROG_F77], [AC_DEFUN([_LT_PROG_F77])]) +m4_ifndef([_LT_PROG_FC], [AC_DEFUN([_LT_PROG_FC])]) +m4_ifndef([_LT_PROG_CXX], [AC_DEFUN([_LT_PROG_CXX])]) diff --git a/m4/nls.m4 b/m4/nls.m4 new file mode 100644 index 0000000..afdb9ca --- /dev/null +++ b/m4/nls.m4 @@ -0,0 +1,32 @@ +# nls.m4 serial 5 (gettext-0.18) +dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016 Free Software +dnl Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. +dnl +dnl This file 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 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_PREREQ([2.50]) + +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]) +]) diff --git a/m4/pkg.m4 b/m4/pkg.m4 new file mode 100644 index 0000000..d8549a4 --- /dev/null +++ b/m4/pkg.m4 @@ -0,0 +1,343 @@ +# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*- +# serial 11 (pkg-config-0.29.1) + +dnl Copyright © 2004 Scott James Remnant . +dnl Copyright © 2012-2015 Dan Nicholson +dnl +dnl This program is free software; you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation; either version 2 of the License, or +dnl (at your option) any later version. +dnl +dnl This program 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 this program; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA +dnl 02111-1307, USA. +dnl +dnl As a special exception to the GNU General Public License, if you +dnl distribute this file as part of a program that contains a +dnl configuration script generated by Autoconf, you may include it under +dnl the same distribution terms that you use for the rest of that +dnl program. + +dnl PKG_PREREQ(MIN-VERSION) +dnl ----------------------- +dnl Since: 0.29 +dnl +dnl Verify that the version of the pkg-config macros are at least +dnl MIN-VERSION. Unlike PKG_PROG_PKG_CONFIG, which checks the user's +dnl installed version of pkg-config, this checks the developer's version +dnl of pkg.m4 when generating configure. +dnl +dnl To ensure that this macro is defined, also add: +dnl m4_ifndef([PKG_PREREQ], +dnl [m4_fatal([must install pkg-config 0.29 or later before running autoconf/autogen])]) +dnl +dnl See the "Since" comment for each macro you use to see what version +dnl of the macros you require. +m4_defun([PKG_PREREQ], +[m4_define([PKG_MACROS_VERSION], [0.29.1]) +m4_if(m4_version_compare(PKG_MACROS_VERSION, [$1]), -1, + [m4_fatal([pkg.m4 version $1 or higher is required but ]PKG_MACROS_VERSION[ found])]) +])dnl PKG_PREREQ + +dnl PKG_PROG_PKG_CONFIG([MIN-VERSION]) +dnl ---------------------------------- +dnl Since: 0.16 +dnl +dnl Search for the pkg-config tool and set the PKG_CONFIG variable to +dnl first found in the path. Checks that the version of pkg-config found +dnl is at least MIN-VERSION. If MIN-VERSION is not specified, 0.9.0 is +dnl used since that's the first version where most current features of +dnl pkg-config existed. +AC_DEFUN([PKG_PROG_PKG_CONFIG], +[m4_pattern_forbid([^_?PKG_[A-Z_]+$]) +m4_pattern_allow([^PKG_CONFIG(_(PATH|LIBDIR|SYSROOT_DIR|ALLOW_SYSTEM_(CFLAGS|LIBS)))?$]) +m4_pattern_allow([^PKG_CONFIG_(DISABLE_UNINSTALLED|TOP_BUILD_DIR|DEBUG_SPEW)$]) +AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility]) +AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path]) +AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path]) + +if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then + AC_PATH_TOOL([PKG_CONFIG], [pkg-config]) +fi +if test -n "$PKG_CONFIG"; then + _pkg_min_version=m4_default([$1], [0.9.0]) + AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version]) + if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then + AC_MSG_RESULT([yes]) + else + AC_MSG_RESULT([no]) + PKG_CONFIG="" + fi +fi[]dnl +])dnl PKG_PROG_PKG_CONFIG + +dnl PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------------------------------- +dnl Since: 0.18 +dnl +dnl Check to see whether a particular set of modules exists. Similar to +dnl PKG_CHECK_MODULES(), but does not set variables or print errors. +dnl +dnl Please remember that m4 expands AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +dnl only at the first occurence in configure.ac, so if the first place +dnl it's called might be skipped (such as if it is within an "if", you +dnl have to call PKG_CHECK_EXISTS manually +AC_DEFUN([PKG_CHECK_EXISTS], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +if test -n "$PKG_CONFIG" && \ + AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then + m4_default([$2], [:]) +m4_ifvaln([$3], [else + $3])dnl +fi]) + +dnl _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES]) +dnl --------------------------------------------- +dnl Internal wrapper calling pkg-config via PKG_CONFIG and setting +dnl pkg_failed based on the result. +m4_define([_PKG_CONFIG], +[if test -n "$$1"; then + pkg_cv_[]$1="$$1" + elif test -n "$PKG_CONFIG"; then + PKG_CHECK_EXISTS([$3], + [pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null` + test "x$?" != "x0" && pkg_failed=yes ], + [pkg_failed=yes]) + else + pkg_failed=untried +fi[]dnl +])dnl _PKG_CONFIG + +dnl _PKG_SHORT_ERRORS_SUPPORTED +dnl --------------------------- +dnl Internal check to see if pkg-config supports short errors. +AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG]) +if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then + _pkg_short_errors_supported=yes +else + _pkg_short_errors_supported=no +fi[]dnl +])dnl _PKG_SHORT_ERRORS_SUPPORTED + + +dnl PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl -------------------------------------------------------------- +dnl Since: 0.4.0 +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES might not happen, you should be sure to include an +dnl explicit call to PKG_PROG_PKG_CONFIG in your configure.ac +AC_DEFUN([PKG_CHECK_MODULES], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl +AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl + +pkg_failed=no +AC_MSG_CHECKING([for $1]) + +_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2]) +_PKG_CONFIG([$1][_LIBS], [libs], [$2]) + +m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS +and $1[]_LIBS to avoid the need to call pkg-config. +See the pkg-config man page for more details.]) + +if test $pkg_failed = yes; then + AC_MSG_RESULT([no]) + _PKG_SHORT_ERRORS_SUPPORTED + if test $_pkg_short_errors_supported = yes; then + $1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors --cflags --libs "$2" 2>&1` + else + $1[]_PKG_ERRORS=`$PKG_CONFIG --print-errors --cflags --libs "$2" 2>&1` + fi + # Put the nasty error message in config.log where it belongs + echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD + + m4_default([$4], [AC_MSG_ERROR( +[Package requirements ($2) were not met: + +$$1_PKG_ERRORS + +Consider adjusting the PKG_CONFIG_PATH environment variable if you +installed software in a non-standard prefix. + +_PKG_TEXT])[]dnl + ]) +elif test $pkg_failed = untried; then + AC_MSG_RESULT([no]) + m4_default([$4], [AC_MSG_FAILURE( +[The pkg-config script could not be found or is too old. Make sure it +is in your PATH or set the PKG_CONFIG environment variable to the full +path to pkg-config. + +_PKG_TEXT + +To get pkg-config, see .])[]dnl + ]) +else + $1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS + $1[]_LIBS=$pkg_cv_[]$1[]_LIBS + AC_MSG_RESULT([yes]) + $3 +fi[]dnl +])dnl PKG_CHECK_MODULES + + +dnl PKG_CHECK_MODULES_STATIC(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl --------------------------------------------------------------------- +dnl Since: 0.29 +dnl +dnl Checks for existence of MODULES and gathers its build flags with +dnl static libraries enabled. Sets VARIABLE-PREFIX_CFLAGS from --cflags +dnl and VARIABLE-PREFIX_LIBS from --libs. +dnl +dnl Note that if there is a possibility the first call to +dnl PKG_CHECK_MODULES_STATIC might not happen, you should be sure to +dnl include an explicit call to PKG_PROG_PKG_CONFIG in your +dnl configure.ac. +AC_DEFUN([PKG_CHECK_MODULES_STATIC], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +_save_PKG_CONFIG=$PKG_CONFIG +PKG_CONFIG="$PKG_CONFIG --static" +PKG_CHECK_MODULES($@) +PKG_CONFIG=$_save_PKG_CONFIG[]dnl +])dnl PKG_CHECK_MODULES_STATIC + + +dnl PKG_INSTALLDIR([DIRECTORY]) +dnl ------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable pkgconfigdir as the location where a module +dnl should install pkg-config .pc files. By default the directory is +dnl $libdir/pkgconfig, but the default can be changed by passing +dnl DIRECTORY. The user can override through the --with-pkgconfigdir +dnl parameter. +AC_DEFUN([PKG_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${libdir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([pkgconfigdir], + [AS_HELP_STRING([--with-pkgconfigdir], pkg_description)],, + [with_pkgconfigdir=]pkg_default) +AC_SUBST([pkgconfigdir], [$with_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +])dnl PKG_INSTALLDIR + + +dnl PKG_NOARCH_INSTALLDIR([DIRECTORY]) +dnl -------------------------------- +dnl Since: 0.27 +dnl +dnl Substitutes the variable noarch_pkgconfigdir as the location where a +dnl module should install arch-independent pkg-config .pc files. By +dnl default the directory is $datadir/pkgconfig, but the default can be +dnl changed by passing DIRECTORY. The user can override through the +dnl --with-noarch-pkgconfigdir parameter. +AC_DEFUN([PKG_NOARCH_INSTALLDIR], +[m4_pushdef([pkg_default], [m4_default([$1], ['${datadir}/pkgconfig'])]) +m4_pushdef([pkg_description], + [pkg-config arch-independent installation directory @<:@]pkg_default[@:>@]) +AC_ARG_WITH([noarch-pkgconfigdir], + [AS_HELP_STRING([--with-noarch-pkgconfigdir], pkg_description)],, + [with_noarch_pkgconfigdir=]pkg_default) +AC_SUBST([noarch_pkgconfigdir], [$with_noarch_pkgconfigdir]) +m4_popdef([pkg_default]) +m4_popdef([pkg_description]) +])dnl PKG_NOARCH_INSTALLDIR + + +dnl PKG_CHECK_VAR(VARIABLE, MODULE, CONFIG-VARIABLE, +dnl [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND]) +dnl ------------------------------------------- +dnl Since: 0.28 +dnl +dnl Retrieves the value of the pkg-config variable for the given module. +AC_DEFUN([PKG_CHECK_VAR], +[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl +AC_ARG_VAR([$1], [value of $3 for $2, overriding pkg-config])dnl + +_PKG_CONFIG([$1], [variable="][$3]["], [$2]) +AS_VAR_COPY([$1], [pkg_cv_][$1]) + +AS_VAR_IF([$1], [""], [$5], [$4])dnl +])dnl PKG_CHECK_VAR + +dnl PKG_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [ACTION-IF-FOUND],[ACTION-IF-NOT-FOUND], +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------ +dnl +dnl Prepare a "--with-" configure option using the lowercase +dnl [VARIABLE-PREFIX] name, merging the behaviour of AC_ARG_WITH and +dnl PKG_CHECK_MODULES in a single macro. +AC_DEFUN([PKG_WITH_MODULES], +[ +m4_pushdef([with_arg], m4_tolower([$1])) + +m4_pushdef([description], + [m4_default([$5], [build with ]with_arg[ support])]) + +m4_pushdef([def_arg], [m4_default([$6], [auto])]) +m4_pushdef([def_action_if_found], [AS_TR_SH([with_]with_arg)=yes]) +m4_pushdef([def_action_if_not_found], [AS_TR_SH([with_]with_arg)=no]) + +m4_case(def_arg, + [yes],[m4_pushdef([with_without], [--without-]with_arg)], + [m4_pushdef([with_without],[--with-]with_arg)]) + +AC_ARG_WITH(with_arg, + AS_HELP_STRING(with_without, description[ @<:@default=]def_arg[@:>@]),, + [AS_TR_SH([with_]with_arg)=def_arg]) + +AS_CASE([$AS_TR_SH([with_]with_arg)], + [yes],[PKG_CHECK_MODULES([$1],[$2],$3,$4)], + [auto],[PKG_CHECK_MODULES([$1],[$2], + [m4_n([def_action_if_found]) $3], + [m4_n([def_action_if_not_found]) $4])]) + +m4_popdef([with_arg]) +m4_popdef([description]) +m4_popdef([def_arg]) + +])dnl PKG_WITH_MODULES + +dnl PKG_HAVE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ----------------------------------------------- +dnl +dnl Convenience macro to trigger AM_CONDITIONAL after PKG_WITH_MODULES +dnl check._[VARIABLE-PREFIX] is exported as make variable. +AC_DEFUN([PKG_HAVE_WITH_MODULES], +[ +PKG_WITH_MODULES([$1],[$2],,,[$3],[$4]) + +AM_CONDITIONAL([HAVE_][$1], + [test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"]) +])dnl PKG_HAVE_WITH_MODULES + +dnl PKG_HAVE_DEFINE_WITH_MODULES(VARIABLE-PREFIX, MODULES, +dnl [DESCRIPTION], [DEFAULT]) +dnl ------------------------------------------------------ +dnl +dnl Convenience macro to run AM_CONDITIONAL and AC_DEFINE after +dnl PKG_WITH_MODULES check. HAVE_[VARIABLE-PREFIX] is exported as make +dnl and preprocessor variable. +AC_DEFUN([PKG_HAVE_DEFINE_WITH_MODULES], +[ +PKG_HAVE_WITH_MODULES([$1],[$2],[$3],[$4]) + +AS_IF([test "$AS_TR_SH([with_]m4_tolower([$1]))" = "yes"], + [AC_DEFINE([HAVE_][$1], 1, [Enable ]m4_tolower([$1])[ support])]) +])dnl PKG_HAVE_DEFINE_WITH_MODULES diff --git a/m4/po.m4 b/m4/po.m4 new file mode 100644 index 0000000..c5a2f6b --- /dev/null +++ b/m4/po.m4 @@ -0,0 +1,453 @@ +# po.m4 serial 24 (gettext-0.19) +dnl Copyright (C) 1995-2014, 2016 Free Software Foundation, Inc. +dnl This file is free software; the Free Software Foundation +dnl gives unlimited permission to copy and/or distribute it, +dnl with or without modifications, as long as this notice is preserved. +dnl +dnl This file 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 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_PREREQ([2.60]) + +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([AC_PROG_MKDIR_P])dnl + AC_REQUIRE([AC_PROG_SED])dnl + AC_REQUIRE([AM_NLS])dnl + + dnl Release version of the gettext macros. This is used to ensure that + dnl the gettext macros and po/Makefile.in.in are in sync. + AC_SUBST([GETTEXT_MACRO_VERSION], [0.19]) + + 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 >&]AS_MESSAGE_LOG_FD[ 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 Test whether it is GNU msgfmt >= 0.15. +changequote(,)dnl + case `$MSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) MSGFMT_015=: ;; + *) MSGFMT_015=$MSGFMT ;; + esac +changequote([,])dnl + AC_SUBST([MSGFMT_015]) +changequote(,)dnl + case `$GMSGFMT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) GMSGFMT_015=: ;; + *) GMSGFMT_015=$GMSGFMT ;; + esac +changequote([,])dnl + AC_SUBST([GMSGFMT_015]) + + 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 >&]AS_MESSAGE_LOG_FD[ 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 Test whether it is GNU xgettext >= 0.15. +changequote(,)dnl + case `$XGETTEXT --version | sed 1q | sed -e 's,^[^0-9]*,,'` in + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-4] | 0.1[0-4].*) XGETTEXT_015=: ;; + *) XGETTEXT_015=$XGETTEXT ;; + esac +changequote([,])dnl + AC_SUBST([XGETTEXT_015]) + + 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 >&]AS_MESSAGE_LOG_FD[ 2>&1], :) + + dnl Installation directories. + dnl Autoconf >= 2.60 defines localedir. For older versions of autoconf, we + dnl have to define it here, so that it can be used in po/Makefile. + test -n "$localedir" || localedir='${datadir}/locale' + AC_SUBST([localedir]) + + dnl Support for AM_XGETTEXT_OPTION. + test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= + AC_SUBST([XGETTEXT_EXTRA_OPTIONS]) + + AC_CONFIG_COMMANDS([po-directories], [[ + 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 + # Treat a directory as a PO directory if and only if it has a + # POTFILES.in file. This allows packages to have multiple PO + # directories under different names or in different locations. + 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" + gt_tab=`printf '\t'` + cat "$ac_given_srcdir/$ac_dir/POTFILES.in" | sed -e "/^#/d" -e "/^[ ${gt_tab}]*\$/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" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS"` + # Hide the ALL_LINGUAS assignment from automake < 1.5. + eval 'ALL_LINGUAS''=$ALL_LINGUAS_' + POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" + else + # The set of available languages was given in configure.in. + # Hide the ALL_LINGUAS assignment from automake < 1.5. + 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 < 1.5. + 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" + tab=`printf '\t'` + 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' -e 's/^sr-CS/sr-SP/' -e 's/@latin$/-Latn/' -e 's/@cyrillic$/-Cyrl/' -e 's/^sr-SP$/sr-SP-Latn/' -e 's/^uz-UZ$/uz-UZ-Latn/'` + cat >> "$ac_file.tmp" <> "$ac_file.tmp" <, 1996. + +AC_PREREQ([2.50]) + +# 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 + # Determine PATH_SEPARATOR by trying to find /bin/sh in a PATH which + # contains only /bin. Note that ksh looks also at the FPATH variable, + # so we have to set that as well for the test. + PATH_SEPARATOR=: + (PATH='/bin;/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + && { (PATH='/bin:/bin'; FPATH=$PATH; sh -c :) >/dev/null 2>&1 \ + || PATH_SEPARATOR=';' + } +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 + echo "$as_me: trying $ac_dir/$ac_word..." >&AS_MESSAGE_LOG_FD + 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 +]) diff --git a/m4/yelp.m4 b/m4/yelp.m4 new file mode 100644 index 0000000..5db847f --- /dev/null +++ b/m4/yelp.m4 @@ -0,0 +1,213 @@ +AC_DEFUN([YELP_HELP_INIT], +[ +AC_REQUIRE([AC_PROG_LN_S]) +m4_pattern_allow([AM_V_at]) +m4_pattern_allow([AM_V_GEN]) +m4_pattern_allow([AM_DEFAULT_VERBOSITY]) + +YELP_LC_MEDIA_LINKS=true +YELP_LC_DIST=true + +for yelpopt in [$1]; do + case $yelpopt in + lc-media-links) YELP_LC_MEDIA_LINKS=true ;; + no-lc-media-links) YELP_LC_MEDIA_LINKS= ;; + lc-dist) YELP_LC_DIST=true ;; + no-lc-dist) YELP_LC_DIST= ;; + *) AC_MSG_ERROR([Unrecognized [YELP_HELP_INIT] option $yelpopt"]) ;; + esac +done; +AC_SUBST([YELP_LC_MEDIA_LINKS]) +AC_SUBST([YELP_LC_DIST]) + +AC_ARG_WITH([help-dir], + AS_HELP_STRING([--with-help-dir=DIR], + [path where help files are installed]),, + [with_help_dir='${datadir}/help']) +HELP_DIR="$with_help_dir" +AC_SUBST(HELP_DIR) + +AC_ARG_VAR([ITSTOOL], [Path to the `itstool` command]) +AC_CHECK_PROG([ITSTOOL], [itstool], [itstool]) +if test x"$ITSTOOL" = x; then + AC_MSG_ERROR([itstool not found]) +fi + +AC_ARG_VAR([XMLLINT], [Path to the `xmllint` command]) +AC_CHECK_PROG([XMLLINT], [xmllint], [xmllint]) +if test x"$XMLLINT" = x; then + AC_MSG_ERROR([xmllint not found]) +fi + +YELP_HELP_RULES=' +HELP_ID ?= +HELP_POT ?= +HELP_FILES ?= +HELP_EXTRA ?= +HELP_MEDIA ?= +HELP_LINGUAS ?= + +_HELP_LINGUAS = $(if $(filter environment,$(origin LINGUAS)),$(filter $(LINGUAS),$(HELP_LINGUAS)),$(HELP_LINGUAS)) +_HELP_POTFILE = $(if $(HELP_POT),$(HELP_POT),$(if $(HELP_ID),$(HELP_ID).pot)) +_HELP_POFILES = $(if $(HELP_ID),$(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).po)) +_HELP_MOFILES = $(patsubst %.po,%.mo,$(_HELP_POFILES)) +_HELP_C_FILES = $(foreach f,$(HELP_FILES),C/$(f)) +_HELP_C_EXTRA = $(foreach f,$(HELP_EXTRA),C/$(f)) +_HELP_C_MEDIA = $(foreach f,$(HELP_MEDIA),C/$(f)) +_HELP_LC_FILES = $(foreach lc,$(_HELP_LINGUAS),$(foreach f,$(HELP_FILES),$(lc)/$(f))) +_HELP_LC_STAMPS = $(foreach lc,$(_HELP_LINGUAS),$(lc)/$(lc).stamp) + +_HELP_DEFAULT_V = $(if $(AM_DEFAULT_VERBOSITY),$(AM_DEFAULT_VERBOSITY),1) +_HELP_V = $(if $(V),$(V),$(_HELP_DEFAULT_V)) +_HELP_LC_VERBOSE = $(_HELP_LC_VERBOSE_$(_HELP_V)) +_HELP_LC_VERBOSE_ = $(_HELP_LC_VERBOSE_$(_HELP_DEFAULT_V)) +_HELP_LC_VERBOSE_0 = @echo " GEN "$(dir [$]@); + +all: $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) $(_HELP_LC_FILES) $(_HELP_POFILES) + +.PHONY: pot +pot: $(_HELP_POTFILE) +$(_HELP_POTFILE): $(_HELP_C_FILES) $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) + $(AM_V_GEN)if test -d "C"; then d=; else d="$(srcdir)/"; fi; \ + $(ITSTOOL) -o "[$]@" $(foreach f,$(_HELP_C_FILES),"$${d}$(f)") + +.PHONY: repo +repo: $(_HELP_POTFILE) + $(AM_V_at)for po in $(_HELP_POFILES); do \ + if test "x[$](_HELP_V)" = "x0"; then echo " GEN $${po}"; fi; \ + msgmerge -q -o "$${po}" "$${po}" "$(_HELP_POTFILE)"; \ + done + +$(_HELP_POFILES): + $(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi + $(AM_V_at)if test ! -f "[$]@" -a -f "$(srcdir)/[$]@"; then cp "$(srcdir)/[$]@" "[$]@"; fi + $(AM_V_GEN)if ! test -f "[$]@"; then \ + (cd "$(dir [$]@)" && \ + $(ITSTOOL) -o "$(notdir [$]@).tmp" $(_HELP_C_FILES) && \ + mv "$(notdir [$]@).tmp" "$(notdir [$]@)"); \ + else \ + (cd "$(dir [$]@)" && \ + $(ITSTOOL) -o "$(notdir [$]@).tmp" $(_HELP_C_FILES) && \ + msgmerge -o "$(notdir [$]@)" "$(notdir [$]@)" "$(notdir [$]@).tmp" && \ + rm "$(notdir [$]@).tmp"); \ + fi + +$(_HELP_MOFILES): %.mo: %.po + $(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi + $(AM_V_GEN)msgfmt -o "[$]@" "$<" + +$(_HELP_LC_FILES): $(_HELP_LINGUAS) +$(_HELP_LINGUAS): $(_HELP_LC_STAMPS) +$(_HELP_LC_STAMPS): %.stamp: %.mo +$(_HELP_LC_STAMPS): $(_HELP_C_FILES) $(_HELP_C_EXTRA) + $(AM_V_at)if ! test -d "$(dir [$]@)"; then mkdir "$(dir [$]@)"; fi + $(_HELP_LC_VERBOSE)if test -d "C"; then d="../"; else d="$(abs_srcdir)/"; fi; \ + mo="$(dir [$]@)$(patsubst %/$(notdir [$]@),%,[$]@).mo"; \ + if test -f "$${mo}"; then mo="../$${mo}"; else mo="$(abs_srcdir)/$${mo}"; fi; \ + (cd "$(dir [$]@)" && $(ITSTOOL) -m "$${mo}" $(foreach f,$(_HELP_C_FILES),$${d}/$(f))) && \ + touch "[$]@" + +.PHONY: clean-help +mostlyclean-am: $(if $(HELP_ID),clean-help) +clean-help: + rm -f $(_HELP_LC_FILES) $(_HELP_LC_STAMPS) $(_HELP_MOFILES) + +EXTRA_DIST ?= +EXTRA_DIST += $(_HELP_C_EXTRA) $(_HELP_C_MEDIA) +EXTRA_DIST += $(if $(YELP_LC_DIST),$(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).stamp)) +EXTRA_DIST += $(foreach lc,$(HELP_LINGUAS),$(lc)/$(lc).po) +EXTRA_DIST += $(foreach f,$(HELP_MEDIA),$(foreach lc,$(HELP_LINGUAS),$(wildcard $(lc)/$(f)))) + +distdir: distdir-help-files +distdir-help-files: $(_HELP_LC_FILES) + @for lc in C $(if $(YELP_LC_DIST),$(HELP_LINGUAS)) ; do \ + $(MKDIR_P) "$(distdir)/$$lc"; \ + for file in $(HELP_FILES); do \ + if test -f "$$lc/$$file"; then d=./; else d=$(srcdir)/; fi; \ + cp -p "$$d$$lc/$$file" "$(distdir)/$$lc/" || exit 1; \ + done; \ + done; \ + +.PHONY: check-help +check: check-help +check-help: + for lc in C $(_HELP_LINGUAS); do \ + if test -d "$$lc"; \ + then d=; \ + xmlpath="$$lc"; \ + else \ + d="$(srcdir)/"; \ + xmlpath="$$lc:$(srcdir)/$$lc"; \ + fi; \ + for page in $(HELP_FILES); do \ + echo "$(XMLLINT) --noout --noent --path $$xmlpath --xinclude $$d$$lc/$$page"; \ + $(XMLLINT) --noout --noent --path "$$xmlpath" --xinclude "$$d$$lc/$$page"; \ + done; \ + done + + +.PHONY: install-help +install-data-am: $(if $(HELP_ID),install-help) +install-help: $(_HELP_LC_FILES) + @for lc in C $(_HELP_LINGUAS); do \ + $(mkinstalldirs) "$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)" || exit 1; \ + done + @for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \ + if test -f "$$lc/$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \ + echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir`basename $$f`"; \ + $(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir`basename $$f`" || exit 1; \ + done; done + @for f in $(_HELP_C_EXTRA); do \ + lc=`dirname "$$f"`; lc=`basename "$$lc"`; \ + if test -f "$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + if ! test -d "$$helpdir"; then $(mkinstalldirs) "$$helpdir"; fi; \ + echo "$(INSTALL_DATA) $$d$$f $$helpdir`basename $$f`"; \ + $(INSTALL_DATA) "$$d$$f" "$$helpdir`basename $$f`" || exit 1; \ + done + @for f in $(HELP_MEDIA); do \ + for lc in C $(_HELP_LINGUAS); do \ + if test -f "$$lc$$f"; then d=; else d="$(srcdir)/"; fi; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + mdir=`dirname "$$f"`; \ + if test "x$mdir" = "x."; then mdir=""; fi; \ + if ! test -d "$$helpdir$$mdir"; then $(mkinstalldirs) "$$helpdir$$mdir"; fi; \ + if test -f "$$d$$lc/$$f"; then \ + echo "$(INSTALL_DATA) $$d$$lc/$$f $$helpdir$$f"; \ + $(INSTALL_DATA) "$$d$$lc/$$f" "$$helpdir$$f" || exit 1; \ + elif test "x$$lc" != "xC"; then \ + if test "x$(YELP_LC_MEDIA_LINKS)" != "x"; then \ + echo "$(LN_S) -f $(HELP_DIR)/C/$(HELP_ID)/$$f $$helpdir$$f"; \ + $(LN_S) -f "$(HELP_DIR)/C/$(HELP_ID)/$$f" "$$helpdir$$f" || exit 1; \ + fi; \ + fi; \ + done; \ + done + +.PHONY: uninstall-help +uninstall-am: $(if $(HELP_ID),uninstall-help) +uninstall-help: + for lc in C $(_HELP_LINGUAS); do for f in $(HELP_FILES); do \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir`basename $$f`"; \ + rm -f "$$helpdir`basename $$f`"; \ + done; done + @for f in $(_HELP_C_EXTRA); do \ + lc=`dirname "$$f"`; lc=`basename "$$lc"`; \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir`basename $$f`"; \ + rm -f "$$helpdir`basename $$f`"; \ + done + @for f in $(HELP_MEDIA); do \ + for lc in C $(_HELP_LINGUAS); do \ + helpdir="$(DESTDIR)$(HELP_DIR)/$$lc/$(HELP_ID)/"; \ + echo "rm -f $$helpdir$$f"; \ + rm -f "$$helpdir$$f"; \ + done; \ + done; +' +AC_SUBST([YELP_HELP_RULES]) +m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([YELP_HELP_RULES])]) +]) diff --git a/missing b/missing new file mode 100755 index 0000000..c6e3795 --- /dev/null +++ b/missing @@ -0,0 +1,215 @@ +#! /bin/sh +# Common wrapper for a few potentially missing GNU programs. + +scriptversion=2016-01-11.22; # UTC + +# Copyright (C) 1996-2017 Free Software Foundation, Inc. +# Originally written 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, see . + +# 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 + +case $1 in + + --is-lightweight) + # Used by our autoconf macros to check whether the available missing + # script is modern enough. + exit 0 + ;; + + --run) + # Back-compat with the calling convention used by older automake. + shift + ;; + + -h|--h|--he|--hel|--help) + echo "\ +$0 [OPTION]... PROGRAM [ARGUMENT]... + +Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due +to PROGRAM being missing or too old. + +Options: + -h, --help display this help and exit + -v, --version output version information and exit + +Supported PROGRAM values: + aclocal autoconf autoheader autom4te automake makeinfo + bison yacc flex lex help2man + +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name. + +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 + +# Run the given program, remember its exit status. +"$@"; st=$? + +# If it succeeded, we are done. +test $st -eq 0 && exit 0 + +# Also exit now if we it failed (or wasn't found), and '--version' was +# passed; such an option is passed most likely to detect whether the +# program is present and works. +case $2 in --version|--help) exit $st;; esac + +# Exit code 63 means version mismatch. This often happens when the user +# tries to use an ancient version of a tool on a file that requires a +# minimum version. +if test $st -eq 63; then + msg="probably too old" +elif test $st -eq 127; then + # Program was missing. + msg="missing on your system" +else + # Program was found and executed, but failed. Give up. + exit $st +fi + +perl_URL=http://www.perl.org/ +flex_URL=http://flex.sourceforge.net/ +gnu_software_URL=http://www.gnu.org/software + +program_details () +{ + case $1 in + aclocal|automake) + echo "The '$1' program is part of the GNU Automake package:" + echo "<$gnu_software_URL/automake>" + echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/autoconf>" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + autoconf|autom4te|autoheader) + echo "The '$1' program is part of the GNU Autoconf package:" + echo "<$gnu_software_URL/autoconf/>" + echo "It also requires GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + esac +} + +give_advice () +{ + # Normalize program name to check for. + normalized_program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + + printf '%s\n' "'$1' is $msg." + + configure_deps="'configure.ac' or m4 files included by 'configure.ac'" + case $normalized_program in + autoconf*) + echo "You should only need it if you modified 'configure.ac'," + echo "or m4 files included by it." + program_details 'autoconf' + ;; + autoheader*) + echo "You should only need it if you modified 'acconfig.h' or" + echo "$configure_deps." + program_details 'autoheader' + ;; + automake*) + echo "You should only need it if you modified 'Makefile.am' or" + echo "$configure_deps." + program_details 'automake' + ;; + aclocal*) + echo "You should only need it if you modified 'acinclude.m4' or" + echo "$configure_deps." + program_details 'aclocal' + ;; + autom4te*) + echo "You might have modified some maintainer files that require" + echo "the 'autom4te' program to be rebuilt." + program_details 'autom4te' + ;; + bison*|yacc*) + echo "You should only need it if you modified a '.y' file." + echo "You may want to install the GNU Bison package:" + echo "<$gnu_software_URL/bison/>" + ;; + lex*|flex*) + echo "You should only need it if you modified a '.l' file." + echo "You may want to install the Fast Lexical Analyzer package:" + echo "<$flex_URL>" + ;; + help2man*) + echo "You should only need it if you modified a dependency" \ + "of a man page." + echo "You may want to install the GNU Help2man package:" + echo "<$gnu_software_URL/help2man/>" + ;; + makeinfo*) + echo "You should only need it if you modified a '.texi' file, or" + echo "any other file indirectly affecting the aspect of the manual." + echo "You might want to install the Texinfo package:" + echo "<$gnu_software_URL/texinfo/>" + echo "The spurious makeinfo call might also be the consequence of" + echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" + echo "want to install GNU make:" + echo "<$gnu_software_URL/make/>" + ;; + *) + echo "You might have modified some files without having the proper" + echo "tools for further handling them. Check the 'README' file, it" + echo "often tells you about the needed prerequisites for installing" + echo "this package. You may also peek at any GNU archive site, in" + echo "case some other package contains this missing '$1' program." + ;; + esac +} + +give_advice "$1" | sed -e '1s/^/WARNING: /' \ + -e '2,$s/^/ /' >&2 + +# Propagate the correct exit status (expected to be 127 for a program +# not found, 63 for a program that failed due to version mismatch). +exit $st + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/plugins/Makefile.am b/plugins/Makefile.am new file mode 100644 index 0000000..ce2646a --- /dev/null +++ b/plugins/Makefile.am @@ -0,0 +1,9 @@ +SUBDIRS = gedit-plugin + +# Distribute the Emacs and Vim plugins in tarballs, some Linux distributions +# package those files. +EXTRA_DIST = \ + devhelp.el \ + devhelp.vim + +-include $(top_srcdir)/git.mk diff --git a/plugins/Makefile.in b/plugins/Makefile.in new file mode 100644 index 0000000..156ecbd --- /dev/null +++ b/plugins/Makefile.in @@ -0,0 +1,711 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = plugins +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +RECURSIVE_TARGETS = all-recursive check-recursive cscopelist-recursive \ + ctags-recursive dvi-recursive html-recursive info-recursive \ + install-data-recursive install-dvi-recursive \ + install-exec-recursive install-html-recursive \ + install-info-recursive install-pdf-recursive \ + install-ps-recursive install-recursive installcheck-recursive \ + installdirs-recursive pdf-recursive ps-recursive \ + tags-recursive uninstall-recursive +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +RECURSIVE_CLEAN_TARGETS = mostlyclean-recursive clean-recursive \ + distclean-recursive maintainer-clean-recursive +am__recursive_targets = \ + $(RECURSIVE_TARGETS) \ + $(RECURSIVE_CLEAN_TARGETS) \ + $(am__extra_recursive_targets) +AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \ + distdir +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +DIST_SUBDIRS = $(SUBDIRS) +am__DIST_COMMON = $(srcdir)/Makefile.in +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +am__relativize = \ + dir0=`pwd`; \ + sed_first='s,^\([^/]*\)/.*$$,\1,'; \ + sed_rest='s,^[^/]*/*,,'; \ + sed_last='s,^.*/\([^/]*\)$$,\1,'; \ + sed_butlast='s,/*[^/]*$$,,'; \ + while test -n "$$dir1"; do \ + first=`echo "$$dir1" | sed -e "$$sed_first"`; \ + if test "$$first" != "."; then \ + if test "$$first" = ".."; then \ + dir2=`echo "$$dir0" | sed -e "$$sed_last"`/"$$dir2"; \ + dir0=`echo "$$dir0" | sed -e "$$sed_butlast"`; \ + else \ + first2=`echo "$$dir2" | sed -e "$$sed_first"`; \ + if test "$$first2" = "$$first"; then \ + dir2=`echo "$$dir2" | sed -e "$$sed_rest"`; \ + else \ + dir2="../$$dir2"; \ + fi; \ + dir0="$$dir0"/"$$first"; \ + fi; \ + fi; \ + dir1=`echo "$$dir1" | sed -e "$$sed_rest"`; \ + done; \ + reldir="$$dir2" +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +SUBDIRS = gedit-plugin + +# Distribute the Emacs and Vim plugins in tarballs, some Linux distributions +# package those files. +EXTRA_DIST = \ + devhelp.el \ + devhelp.vim + +all: all-recursive + +.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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign plugins/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign plugins/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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +# 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. +$(am__recursive_targets): + @fail=; \ + if $(am__make_keepgoing); then \ + failcom='fail=yes'; \ + else \ + failcom='exit 1'; \ + fi; \ + dot_seen=no; \ + target=`echo $@ | sed s/-recursive//`; \ + case "$@" in \ + distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \ + *) list='$(SUBDIRS)' ;; \ + esac; \ + 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; \ + ($(am__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" + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-recursive +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + 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 || \ + set "$$@" "$$include_option=$$here/$$subdir/TAGS"; \ + fi; \ + done; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-recursive + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-recursive + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +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)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 \ + $(am__make_dryrun) \ + || test -d "$(distdir)/$$subdir" \ + || $(MKDIR_P) "$(distdir)/$$subdir" \ + || exit 1; \ + dir1=$$subdir; dir2="$(distdir)/$$subdir"; \ + $(am__relativize); \ + new_distdir=$$reldir; \ + dir1=$$subdir; dir2="$(top_distdir)"; \ + $(am__relativize); \ + new_top_distdir=$$reldir; \ + echo " (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) top_distdir="$$new_top_distdir" distdir="$$new_distdir" \\"; \ + echo " am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=: distdir)"; \ + ($(am__cd) $$subdir && \ + $(MAKE) $(AM_MAKEFLAGS) \ + top_distdir="$$new_top_distdir" \ + distdir="$$new_distdir" \ + am__remove_distdir=: \ + am__skip_length_check=: \ + am__skip_mode_fix=: \ + distdir) \ + || exit 1; \ + fi; \ + done +check-am: all-am +check: check-recursive +all-am: Makefile +installdirs: installdirs-recursive +installdirs-am: +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-recursive + +clean-am: clean-generic clean-libtool mostlyclean-am + +distclean: distclean-recursive + -rm -f Makefile +distclean-am: clean-am distclean-generic distclean-tags + +dvi: dvi-recursive + +dvi-am: + +html: html-recursive + +html-am: + +info: info-recursive + +info-am: + +install-data-am: + +install-dvi: install-dvi-recursive + +install-dvi-am: + +install-exec-am: + +install-html: install-html-recursive + +install-html-am: + +install-info: install-info-recursive + +install-info-am: + +install-man: + +install-pdf: install-pdf-recursive + +install-pdf-am: + +install-ps: install-ps-recursive + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-recursive + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-recursive + +mostlyclean-am: mostlyclean-generic mostlyclean-libtool + +pdf: pdf-recursive + +pdf-am: + +ps: ps-recursive + +ps-am: + +uninstall-am: + +.MAKE: $(am__recursive_targets) install-am install-strip + +.PHONY: $(am__recursive_targets) CTAGS GTAGS TAGS all all-am check \ + check-am clean clean-generic clean-libtool cscopelist-am ctags \ + ctags-am distclean distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-ps install-ps-am \ + install-strip installcheck installcheck-am installdirs \ + installdirs-am maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/plugins/devhelp.el b/plugins/devhelp.el new file mode 100644 index 0000000..705f4c7 --- /dev/null +++ b/plugins/devhelp.el @@ -0,0 +1,45 @@ +;; Emacs integration by Richard Hult +;; + +(defun devhelp-word-at-point () + "Searches for the current word in Devhelp" + (interactive) + (start-process-shell-command "devhelp" nil "devhelp" "-s" (current-word)) + (set-process-query-on-exit-flag (get-process "devhelp") nil) + ) +(defun devhelp-assistant-word-at-point () + "Searches for the current work in the Devhelp assistant" + (interactive) + (setq w (current-word)) + (start-process-shell-command "devhelp" nil "devhelp" "-a" w) + (set-process-query-on-exit-flag (get-process "devhelp") nil) + ) + +(defvar devhelp-timer nil) +(defun devhelp-disable-assistant () + (message "Devhelp assistant disabled") + (cancel-timer devhelp-timer) + (setq devhelp-timer nil) +) +(defun devhelp-enable-assistant () + (message "Devhelp assistant enabled") + (setq devhelp-timer (run-with-idle-timer 0.6 t 'devhelp-assistant-word-at-point)) +) +(defun devhelp-toggle-automatic-assistant () + "Toggles automatic Devhelp assistant on and off" + (interactive) + (if devhelp-timer (devhelp-disable-assistant) (devhelp-enable-assistant)) +) + +;; Examples: +;; +;; Bind F7 to start devhelp and search for the word at the point. +;; (global-set-key [f7] 'devhelp-word-at-point) +;; +;; Bind F6 to enable the automatic assistant. +;; (global-set-key [f6] 'devhelp-toggle-automatic-assistant) +;; +;; Bind F6 to search with the assistant window. +;; (global-set-key [f6] 'devhelp-assistant-word-at-point) + +(provide 'devhelp) diff --git a/plugins/devhelp.vim b/plugins/devhelp.vim new file mode 100644 index 0000000..2fb74f5 --- /dev/null +++ b/plugins/devhelp.vim @@ -0,0 +1,113 @@ +" devhelp.vim: A Devhelp assistant and search plugin for VIM. +" +" Copyright (c) 2008 Jannis Pohlmann +" +" To enable devhelp search: +" let g:devhelpSearch=1 +" +" To enable devhelp assistant: +" let g:devhelpAssistant=1 +" +" To change the update delay (e.g. to 150ms): +" set updatetime=150 +" +" To change the search key (e.g. to F5): +" let g:devhelpSearchKey = '' +" +" To change the length (e.g. to 5 characters) before a word becomes +" relevant: +" let g:devhelpWordLength = 5 +" +" 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, see . + +" Devhelp plugin configuration. These variables may be set in .vimrc +" to override the defaults +if !exists ('g:devhelpSearchKey') + let g:devhelpSearchKey = '' +endif +if !exists ('g:devhelpWordLength') + let g:devhelpWordLength = 5 +endif + +" Variable for remembering the last assistant word +let s:lastWord = '' + +function! GetCursorWord () + " Try to get the word below the cursor + let s:word = expand ('') + + " If that's empty, try to use the word before the cursor + if empty (s:word) + let s:before = getline ('.')[0 : getpos ('.')[2]-1] + let s:start = match (s:before, '\(\w*\)$') + let s:end = matchend (s:before, '\(\w*\)$') + let s:word = s:before[s:start : s:end] + end + + return s:word +endfunction + +function! DevhelpUpdate (flag) + try + " Get word below or before cursor + let s:word = GetCursorWord () + + if a:flag == 'a' + " Update Devhelp assistant window + if s:lastWord != s:word && strlen (s:word) > g:devhelpWordLength + " Update Devhelp + call system ('devhelp -a '.s:word.' &') + + " Remember the word for next time + let s:lastWord = s:word + end + else + " Update devhelp search window. Since the user intentionally + " pressed the search key, the word is not checked for its + " length or whether it's new + call system ('devhelp -s '.s:word.' &') + end + catch + endtry +endfunction + +function! DevhelpUpdateI (flag) + " Use normal update function + call DevhelpUpdate (a:flag) + + if col ('.') == len (getline ('.')) + " Start appening if the cursor at the end of the line + startinsert! + else + " Otherwise move the cursor to the right and start inserting. + " This is required because moves the cursor to the left + let s:pos = getpos ('.') + let s:pos[2] += 1 + call setpos ('.', s:pos) + startinsert + endif +endfunction + +if exists ('g:devhelpSearch') && g:devhelpSearch + " Update the main Devhelp window when the search key is pressed + exec 'nmap '.g:devhelpSearchKey.' :call DevhelpUpdate("s")' + exec 'imap '.g:devhelpSearchKey.' :call DevhelpUpdateI("s")' +endif + +if exists ('g:devhelpAssistant') && g:devhelpAssistant + " Update the assistant window if the user hasn't pressed a key for a + " while. See :help updatetime for how to change this delay + au! CursorHold * nested call DevhelpUpdate('a') + au! CursorHoldI * nested call DevhelpUpdate('a') +endif diff --git a/plugins/gedit-plugin/Makefile.am b/plugins/gedit-plugin/Makefile.am new file mode 100644 index 0000000..ca97af3 --- /dev/null +++ b/plugins/gedit-plugin/Makefile.am @@ -0,0 +1,14 @@ +DESKTOP_IN_FILES = devhelp.plugin.desktop.in +PLUGIN_FILE = devhelp.plugin + +$(PLUGIN_FILE): $(DESKTOP_IN_FILES) + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ + +plugindir = $(libdir)/gedit/plugins +plugin_PYTHON = devhelp.py +plugin_DATA = $(PLUGIN_FILE) + +CLEANFILES = $(PLUGIN_FILE) +EXTRA_DIST = $(DESKTOP_IN_FILES) + +-include $(top_srcdir)/git.mk diff --git a/plugins/gedit-plugin/Makefile.in b/plugins/gedit-plugin/Makefile.in new file mode 100644 index 0000000..02e2b12 --- /dev/null +++ b/plugins/gedit-plugin/Makefile.in @@ -0,0 +1,642 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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 = plugins/gedit-plugin +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(plugin_PYTHON) \ + $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +SOURCES = +DIST_SOURCES = +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__py_compile = PYTHON=$(PYTHON) $(SHELL) $(py_compile) +am__installdirs = "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(plugindir)" +am__pep3147_tweak = \ + sed -e 's|\.py$$||' -e 's|[^/]*$$|__pycache__/&.*.py|' +py_compile = $(top_srcdir)/py-compile +DATA = $(plugin_DATA) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/py-compile +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +DESKTOP_IN_FILES = devhelp.plugin.desktop.in +PLUGIN_FILE = devhelp.plugin +plugindir = $(libdir)/gedit/plugins +plugin_PYTHON = devhelp.py +plugin_DATA = $(PLUGIN_FILE) +CLEANFILES = $(PLUGIN_FILE) +EXTRA_DIST = $(DESKTOP_IN_FILES) +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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign plugins/gedit-plugin/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign plugins/gedit-plugin/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 +$(am__aclocal_m4_deps): + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-pluginPYTHON: $(plugin_PYTHON) + @$(NORMAL_INSTALL) + @list='$(plugin_PYTHON)'; dlist=; list2=; test -n "$(plugindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(plugindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(plugindir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then b=; else b="$(srcdir)/"; fi; \ + if test -f $$b$$p; then \ + $(am__strip_dir) \ + dlist="$$dlist $$f"; \ + list2="$$list2 $$b$$p"; \ + else :; fi; \ + done; \ + for file in $$list2; do echo $$file; done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(plugindir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(plugindir)" || exit $$?; \ + done || exit $$?; \ + if test -n "$$dlist"; then \ + $(am__py_compile) --destdir "$(DESTDIR)" \ + --basedir "$(plugindir)" $$dlist; \ + else :; fi + +uninstall-pluginPYTHON: + @$(NORMAL_UNINSTALL) + @list='$(plugin_PYTHON)'; test -n "$(plugindir)" || list=; \ + py_files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + test -n "$$py_files" || exit 0; \ + dir='$(DESTDIR)$(plugindir)'; \ + pyc_files=`echo "$$py_files" | sed 's|$$|c|'`; \ + pyo_files=`echo "$$py_files" | sed 's|$$|o|'`; \ + py_files_pep3147=`echo "$$py_files" | $(am__pep3147_tweak)`; \ + echo "$$py_files_pep3147";\ + pyc_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|c|'`; \ + pyo_files_pep3147=`echo "$$py_files_pep3147" | sed 's|$$|o|'`; \ + st=0; \ + for files in \ + "$$py_files" \ + "$$pyc_files" \ + "$$pyo_files" \ + "$$pyc_files_pep3147" \ + "$$pyo_files_pep3147" \ + ; do \ + $(am__uninstall_files_from_dir) || st=$$?; \ + done; \ + exit $$st +install-pluginDATA: $(plugin_DATA) + @$(NORMAL_INSTALL) + @list='$(plugin_DATA)'; test -n "$(plugindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(plugindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(plugindir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(plugindir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(plugindir)" || exit $$?; \ + done + +uninstall-pluginDATA: + @$(NORMAL_UNINSTALL) + @list='$(plugin_DATA)'; test -n "$(plugindir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(plugindir)'; $(am__uninstall_files_from_dir) +tags TAGS: + +ctags CTAGS: + +cscope cscopelist: + + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 $(DATA) +installdirs: + for dir in "$(DESTDIR)$(plugindir)" "$(DESTDIR)$(plugindir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-libtool mostlyclean-am + +distclean: distclean-am + -rm -f Makefile +distclean-am: clean-am distclean-generic + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-pluginDATA install-pluginPYTHON + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +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 mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-pluginDATA uninstall-pluginPYTHON + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + cscopelist-am ctags-am distclean distclean-generic \ + distclean-libtool distdir dvi dvi-am html html-am info info-am \ + install install-am install-data install-data-am install-dvi \ + install-dvi-am install-exec install-exec-am install-html \ + install-html-am install-info install-info-am install-man \ + install-pdf install-pdf-am install-pluginDATA \ + install-pluginPYTHON install-ps install-ps-am install-strip \ + installcheck installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-generic \ + mostlyclean-libtool pdf pdf-am ps ps-am tags-am uninstall \ + uninstall-am uninstall-pluginDATA uninstall-pluginPYTHON + +.PRECIOUS: Makefile + + +$(PLUGIN_FILE): $(DESKTOP_IN_FILES) + $(AM_V_GEN) $(MSGFMT) --desktop --template $< -d $(top_srcdir)/po -o $@ + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/plugins/gedit-plugin/devhelp.plugin.desktop.in b/plugins/gedit-plugin/devhelp.plugin.desktop.in new file mode 100644 index 0000000..3a4d585 --- /dev/null +++ b/plugins/gedit-plugin/devhelp.plugin.desktop.in @@ -0,0 +1,11 @@ +[Plugin] +Loader=python3 +Module=devhelp +IAge=3 +Name=Devhelp support +Description=Makes F2 bring up Devhelp for the word at the cursor +Authors=Richard Hult +# Translators: Do NOT translate or transliterate this text (this is an icon file name)! +Icon=devhelp +Copyright=Copyright © 2006 Richard Hult +Website=https://wiki.gnome.org/Apps/Devhelp diff --git a/plugins/gedit-plugin/devhelp.py b/plugins/gedit-plugin/devhelp.py new file mode 100644 index 0000000..0dfbfe2 --- /dev/null +++ b/plugins/gedit-plugin/devhelp.py @@ -0,0 +1,105 @@ +# -*- coding: utf-8 py-indent-offset: 4 -*- +# +# Gedit devhelp plugin +# Copyright (C) 2006 Imendio AB +# Copyright (C) 2011 Red Hat, Inc. +# +# Author: Richard Hult +# Author: Dan Williams +# +# 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + +from gi.repository import GObject, Gio, Gtk, Gedit +import os +import gettext + +class DevhelpAppActivatable(GObject.Object, Gedit.AppActivatable): + + app = GObject.Property(type=Gedit.App) + + def __init__(self): + GObject.Object.__init__(self) + + def do_activate(self): + self.app.add_accelerator("F2", "win.devhelp", None) + + # Translate actions below, hardcoding domain here to avoid complications now + _ = lambda s: gettext.dgettext('devhelp', s) + + self.menu_ext = self.extend_menu("tools-section") + item = Gio.MenuItem.new(_("Show API Documentation"), "win.devhelp") + self.menu_ext.prepend_menu_item(item) + + def do_deactivate(self): + self.app.remove_accelerator("win.devhelp", None) + self.menu_ext = None + +class DevhelpWindowActivatable(GObject.Object, Gedit.WindowActivatable): + + window = GObject.Property(type=Gedit.Window) + + def __init__(self): + GObject.Object.__init__(self) + + def do_activate(self): + action = Gio.SimpleAction(name="devhelp") + action.connect('activate', lambda a, p: self.do_devhelp(self.window.get_active_document())) + self.window.add_action(action) + + def do_deactivate(self): + self.window.remove_action("devhelp") + + def do_update_state(self): + self.window.lookup_action("devhelp").set_enabled(self.window.get_active_document() is not None) + + def _is_word_separator(self, c): + return not (c.isalnum() or c == '_') + + def do_devhelp(self, document): + # Get the word at the cursor + start = document.get_iter_at_mark(document.get_insert()) + end = start.copy() + + # If just after a word, move back into it + c = start.get_char() + if self._is_word_separator(c): + start.backward_char() + + # Go backward + while True: + c = start.get_char() + if not self._is_word_separator(c): + if not start.backward_char(): + break + else: + start.forward_char() + break + + # Go forward + while True: + c = end.get_char() + if not self._is_word_separator(c): + if not end.forward_char(): + break + else: + break + + if end.compare(start) > 0: + text = document.get_text(start,end,False).strip() + if text: + # FIXME: We need a dbus interface for devhelp soon... + os.spawnlp(os.P_NOWAIT, 'devhelp', 'devhelp', '-s', text) + +# ex:ts=4:et: diff --git a/po/LINGUAS b/po/LINGUAS new file mode 100644 index 0000000..73da3b1 --- /dev/null +++ b/po/LINGUAS @@ -0,0 +1,84 @@ +# please keep this list sorted alphabetically +# +am +ar +as +ast +az +be +be@latin +bg +bn +bn_IN +bs +ca +ca@valencia +cs +da +de +dz +el +en_CA +en_GB +en@shaw +eo +es +et +eu +fa +fi +fr +fur +gl +gu +he +hi +hr +hu +hy +id +is +it +ja +kk +km +kn +ko +lt +lv +mai +mk +ml +ms +nb +ne +nl +nn +oc +or +pa +pl +ps +pt +pt_BR +ro +ru +rw +si +sk +sl +sq +sr +sr@latin +sv +ta +te +tg +th +tr +ug +uk +vi +zh_CN +zh_HK +zh_TW diff --git a/po/Makefile.in.in b/po/Makefile.in.in new file mode 100644 index 0000000..8f34f00 --- /dev/null +++ b/po/Makefile.in.in @@ -0,0 +1,483 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper +# +# Copying and distribution of this file, with or without modification, +# are permitted in any medium without royalty provided the copyright +# notice and this notice are preserved. This file is offered as-is, +# without any warranty. +# +# Origin: gettext-0.19.7 +GETTEXT_MACRO_VERSION = 0.19 + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + +SED = @SED@ +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ +datadir = @datadir@ +localedir = @localedir@ +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +# We use $(mkdir_p). +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, +# @install_sh@ does not start with $(SHELL), so we add it. +# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake +# versions, $(mkinstalldirs) and $(install_sh) are unused. +mkinstalldirs = $(SHELL) @install_sh@ -d +install_sh = $(SHELL) @install_sh@ +MKDIR_P = @MKDIR_P@ +mkdir_p = @mkdir_p@ + +# When building gettext-tools, we prefer to use the built programs +# rather than installed programs. However, we can't do that when we +# are cross compiling. +CROSS_COMPILING = @CROSS_COMPILING@ + +GMSGFMT_ = @GMSGFMT@ +GMSGFMT_no = @GMSGFMT@ +GMSGFMT_yes = @GMSGFMT_015@ +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) +MSGFMT_ = @MSGFMT@ +MSGFMT_no = @MSGFMT@ +MSGFMT_yes = @MSGFMT_015@ +MSGFMT = $(MSGFMT_$(USE_MSGCTXT)) +XGETTEXT_ = @XGETTEXT@ +XGETTEXT_no = @XGETTEXT@ +XGETTEXT_yes = @XGETTEXT_015@ +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) +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 \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + +CATALOGS = @CATALOGS@ + +POFILESDEPS_ = $(srcdir)/$(DOMAIN).pot +POFILESDEPS_yes = $(POFILESDEPS_) +POFILESDEPS_no = +POFILESDEPS = $(POFILESDEPS_$(PO_DEPENDS_ON_POT)) + +DISTFILESDEPS_ = update-po +DISTFILESDEPS_yes = $(DISTFILESDEPS_) +DISTFILESDEPS_no = +DISTFILESDEPS = $(DISTFILESDEPS_$(DIST_DEPENDS_ON_UPDATE_PO)) + +# 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 --verbose -o $${lang}.gmo $${lang}.po"; \ + cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics --verbose -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: + +# Ensure that the gettext macros and this Makefile.in.in are in sync. +CHECK_MACRO_VERSION = \ + test "$(GETTEXT_MACRO_VERSION)" = "@GETTEXT_MACRO_VERSION@" \ + || { echo "*** error: gettext infrastructure mismatch: using a Makefile.in.in from gettext version $(GETTEXT_MACRO_VERSION) but the autoconf macros are from gettext version @GETTEXT_MACRO_VERSION@" 1>&2; \ + exit 1; \ + } + +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, stamp-po is a nop (i.e. a phony target). + +# 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 + @$(CHECK_MACRO_VERSION) + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + 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. +# The determination of whether the package xyz is a GNU one is based on the +# heuristic whether some file in the top level directory mentions "GNU xyz". +# If GNU 'find' is available, we avoid grepping through monster files. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + package_gnu="$(PACKAGE_GNU)"; \ + test -n "$$package_gnu" || { \ + if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; then \ + LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f \ + -size -10000000c -exec grep 'GNU @PACKAGE@' \ + /dev/null '{}' ';' 2>/dev/null; \ + else \ + LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \ + fi; \ + } | grep -v 'libtool:' >/dev/null; then \ + package_gnu=yes; \ + else \ + package_gnu=no; \ + fi; \ + }; \ + if test "$$package_gnu" = "yes"; then \ + package_prefix='GNU '; \ + else \ + package_prefix=''; \ + fi; \ + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ + case `$(XGETTEXT) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].* | 0.16 | 0.16.[0-1]*) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + ;; \ + *) \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --package-name="$${package_prefix}@PACKAGE@" \ + --package-version='@VERSION@' \ + --msgid-bugs-address="$$msgid_bugs_address" \ + ;; \ + esac + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot-header; then \ + sed -e '1,/^#$$/d' < $(DOMAIN).po > $(DOMAIN).1po && \ + cat $(srcdir)/$(DOMAIN).pot-header $(DOMAIN).1po > $(DOMAIN).po; \ + rm -f $(DOMAIN).1po; \ + fi; \ + 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): $(POFILESDEPS) + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) \ + && { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $${lang}.po $(DOMAIN).pot;; \ + esac; \ + }; \ + 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 \ + $(mkdir_p) $(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 + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(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 \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(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: + test -z "$(DISTFILESDEPS)" || $(MAKE) $(DISTFILESDEPS) + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: stamp-po $(DISTFILES) + dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + 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) || exit 1; \ + else \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ + 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" && test "$(CROSS_COMPILING)" != "yes"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if { case `$(MSGMERGE) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + *) \ + $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$lang.new.po $$lang.po $(DOMAIN).pot;; \ + esac; \ + }; 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) + @: + +# Recreate Makefile by invoking config.status. Explicitly invoke the shell, +# because execution permission bits may not work on the current file system. +# Use @SHELL@, which is the shell determined by autoconf for the use by its +# scripts, not $(SHELL) which is hardwired to /bin/sh and may be deficient. +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ + cd $(top_builddir) \ + && @SHELL@ ./config.status $(subdir)/$@.in po-directories + +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: diff --git a/po/Makevars b/po/Makevars new file mode 100644 index 0000000..312f6db --- /dev/null +++ b/po/Makevars @@ -0,0 +1,78 @@ +# 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 = --from-code=UTF-8 --keyword=_ --keyword=N_ --keyword=C_:1c,2 --keyword=NC_:1c,2 --keyword=g_dngettext:2,3 --add-comments + +# 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 = Devhelp contributors + +# This tells whether or not to prepend "GNU " prefix to the package +# name that gets inserted into the header of the $(DOMAIN).pot file. +# Possible values are "yes", "no", or empty. If it is empty, try to +# detect it automatically by scanning the files in $(top_srcdir) for +# "GNU packagename" string. +PACKAGE_GNU = no + +# 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 = https://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&keywords=I18N+L10N&component=General + +# 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 = + +# This tells whether the $(DOMAIN).pot file contains messages with an 'msgctxt' +# context. Possible values are "yes" and "no". Set this to yes if the +# package uses functions taking also a message context, like pgettext(), or +# if in $(XGETTEXT_OPTIONS) you define keywords with a context argument. +USE_MSGCTXT = yes + +# These options get passed to msgmerge. +# Useful options are in particular: +# --previous to keep previous msgids of translated messages, +# --quiet to reduce the verbosity. +MSGMERGE_OPTIONS = + +# These options get passed to msginit. +# If you want to disable line wrapping when writing PO files, add +# --no-wrap to MSGMERGE_OPTIONS, XGETTEXT_OPTIONS, and +# MSGINIT_OPTIONS. +MSGINIT_OPTIONS = + +# This tells whether or not to regenerate a PO file when $(DOMAIN).pot +# has changed. Possible values are "yes" and "no". Set this to no if +# the POT file is checked in the repository and the version control +# program ignores timestamps. +PO_DEPENDS_ON_POT = no + +# This tells whether or not to forcibly update $(DOMAIN).pot and +# regenerate PO files on "make dist". Possible values are "yes" and +# "no". Set this to no if the POT file and PO files are maintained +# externally. +DIST_DEPENDS_ON_UPDATE_PO = no diff --git a/po/POTFILES.in b/po/POTFILES.in new file mode 100644 index 0000000..32e406e --- /dev/null +++ b/po/POTFILES.in @@ -0,0 +1,30 @@ +# List of source files containing translatable strings. +# Please keep this file sorted alphabetically. +data/org.gnome.Devhelp.appdata.xml.in +data/org.gnome.Devhelp.desktop.in.in +data/org.gnome.devhelp.gschema.xml +plugins/gedit-plugin/devhelp.plugin.desktop.in +plugins/gedit-plugin/devhelp.py +src/dh-app.c +src/dh-assistant.c +src/dh-assistant.ui +src/dh-assistant-view.c +src/dh-book.c +src/dh-book-tree.c +src/dh-completion.c +src/dh-keyword-model.c +src/dh-link.c +src/dh-main.c +src/dh-parser.c +src/dh-preferences.ui +src/dh-search-context.c +src/dh-sidebar.c +src/dh-tab.c +src/dh-tab-label.c +src/dh-util.c +src/dh-web-view.c +src/dh-window.c +src/dh-window.ui +src/help-overlay.ui +src/menus.ui +src/tepl-info-bar.c diff --git a/po/Rules-quot b/po/Rules-quot new file mode 100644 index 0000000..baf6528 --- /dev/null +++ b/po/Rules-quot @@ -0,0 +1,58 @@ +# This file, Rules-quot, can be copied and used freely without restrictions. +# 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-tools" && test "$(CROSS_COMPILING)" != "yes"; 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) $(MSGINIT_OPTIONS) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/null \ + | $(SED) -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | \ + { case `$(MSGFILTER) --version | sed 1q | sed -e 's,^[^0-9]*,,'` in \ + '' | 0.[0-9] | 0.[0-9].* | 0.1[0-8] | 0.1[0-8].*) \ + $(MSGFILTER) $(SED) -f `echo $$lang | sed -e 's/.*@//'`.sed \ + ;; \ + *) \ + $(MSGFILTER) `echo $$lang | sed -e 's/.*@//'` \ + ;; \ + esac } 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 diff --git a/po/am.gmo b/po/am.gmo new file mode 100644 index 0000000..f820be0 Binary files /dev/null and b/po/am.gmo differ diff --git a/po/am.po b/po/am.po new file mode 100644 index 0000000..f6a0f14 --- /dev/null +++ b/po/am.po @@ -0,0 +1,243 @@ +# Translations into the Amharic Language. +# Copyright (C) 2002 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Ge'ez Frontier Foundation , 2002. +# +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp sodipodi \n" +"POT-Creation-Date: 2004-03-16 23:25+0100\n" +"PO-Revision-Date: 2003-02-02 09:06+EDT\n" +"Last-Translator: Ge'ez Frontier Foundation \n" +"Language-Team: Amharic \n" +"Language: am\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: devhelp.desktop.in.h:1 +#, fuzzy +msgid "Developer's Help program" +msgstr "የአደራጆች ረዳት ፕሮግራም" + +#: devhelp.desktop.in.h:2 ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "" + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "" + +#: devhelp.schemas.in.h:7 +msgid "The X position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:8 +msgid "The Y position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:9 +msgid "The height of the main window." +msgstr "" + +#: devhelp.schemas.in.h:10 +msgid "The location of the paned separator." +msgstr "" + +#: devhelp.schemas.in.h:11 +msgid "The width of the main window." +msgstr "" + +#: devhelp.schemas.in.h:12 +msgid "Use system fonts" +msgstr "" + +#: devhelp.schemas.in.h:13 +msgid "Use the system default fonts." +msgstr "" + +#: devhelp.schemas.in.h:14 +msgid "Width of the main window" +msgstr "" + +#: devhelp.schemas.in.h:15 +msgid "X position of main window" +msgstr "" + +#: devhelp.schemas.in.h:16 +msgid "Y position of main window" +msgstr "" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "" + +#: src/dh-parser.c:104 src/dh-parser.c:181 src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "" + +#: src/dh-parser.c:250 +#, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "" + +#: src/dh-parser.c:337 src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "" + +#: src/dh-parser.c:347 src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "" + +#: src/dh-search.c:417 +#, fuzzy +msgid "_Search:" +msgstr "ፈልግ" + +#: src/dh-search.c:461 +msgid "Section" +msgstr "ክፍል፦" + +#: src/dh-window.c:111 +msgid "_File" +msgstr "ፋይል (_F)" + +#: src/dh-window.c:112 +msgid "_Edit" +msgstr "" + +#: src/dh-window.c:113 ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "ሂድ ወደ (_G)" + +#: src/dh-window.c:114 +msgid "_Help" +msgstr "_መረጃ (_H)" + +#: src/dh-window.c:292 +#, c-format +msgid "Cannot set UI: %s" +msgstr "" + +#: src/dh-window.c:352 ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "ይዞታዎች" + +#: src/dh-window.c:363 +msgid "Search" +msgstr "ፈልግ" + +#: src/dh-window.c:446 +msgid "A developer's help browser for GNOME 2" +msgstr "" + +#: src/dh-window.c:462 +msgid "Devhelp project page" +msgstr "" + +#: src/dh-window.c:466 +msgid "Bug report Devhelp" +msgstr "" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr "" + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "" + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "" + +#~ msgid "_Search for:" +#~ msgstr "ፈልግ፦ (_S)" + +#~ msgid "_About" +#~ msgstr "ስለ (_A)" + +#~ msgid "Couldn't find file '%s'" +#~ msgstr "ፋይል '%s'ን ሊገኝ አልተቻለም" + +#~ msgid "Open %s" +#~ msgstr "%sን ክፈት" diff --git a/po/ar.gmo b/po/ar.gmo new file mode 100644 index 0000000..fa37ed3 Binary files /dev/null and b/po/ar.gmo differ diff --git a/po/ar.po b/po/ar.po new file mode 100644 index 0000000..9c4ebcf --- /dev/null +++ b/po/ar.po @@ -0,0 +1,585 @@ +# translation of devhelp.HEAD.po to Arabic +# Arabic translations for PACKAGE package. +# Copyright (C) 2006 THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Khaled Hosny , 2007, 2008, 2009, 2010, 2011. +# Abderrahim Kitouni , 2012. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2012-03-17 22:10+0100\n" +"PO-Revision-Date: 2012-03-17 22:15+0100\n" +"Last-Translator: Abderrahim Kitouni \n" +"Language-Team: Arabic \n" +"Language: ar\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 " +"&& n%100<=10 ? 3 : n%100>=11 ? 4 : 5;\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Poedit-Language: Arabic\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1868 +msgid "Devhelp" +msgstr "مساعدة المطورين" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "برنامج وثائق المطوِّرين" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "متصفّح التوثيق" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Main window maximized state" +msgstr "حالة تكبير النافذة الرئيسيّة" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Whether the main window should start maximized." +msgstr "ما إذا ستبدأ النافذة الرئيسية مكبّرة أم لا." + +#: ../data/devhelp.schemas.in.h:3 +msgid "Width of the main window" +msgstr "عرض النّافذة الرّئيسيّة" + +#: ../data/devhelp.schemas.in.h:4 +msgid "The width of the main window." +msgstr "عرض النّافذة الرّئيسيّة." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "ارتفاع النّافذة الرّئيسيّة" + +#: ../data/devhelp.schemas.in.h:6 +msgid "The height of the main window." +msgstr "ارتفاع النّافذة الرّئيسيّة." + +#: ../data/devhelp.schemas.in.h:7 +msgid "X position of main window" +msgstr "الموضع السيني للنافذة الرئيسية" + +#: ../data/devhelp.schemas.in.h:8 +msgid "The X position of the main window." +msgstr "الموضع السيني للنافذة الرئيسية." + +#: ../data/devhelp.schemas.in.h:9 +msgid "Y position of main window" +msgstr "الموضع الصادي للنافذة الرئيسية" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "الموضع الصادي للنافذة الرئيسية." + +#: ../data/devhelp.schemas.in.h:11 +msgid "Width of the assistant window" +msgstr "عرض النّافذة الفرعية" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the assistant window." +msgstr "عرض النّافذة الفرعية." + +#: ../data/devhelp.schemas.in.h:13 +msgid "Height of assistant window" +msgstr "ارتفاع النّافذة الفرعية" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the assistant window." +msgstr "ارتفاع النّافذة الفرعية." + +#: ../data/devhelp.schemas.in.h:15 +msgid "X position of assistant window" +msgstr "الموضع السيني للنافذة الفرعية" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The X position of the assistant window." +msgstr "الموضع السيني للنافذة الفرعية." + +#: ../data/devhelp.schemas.in.h:17 +msgid "Y position of assistant window" +msgstr "الموضع الصادي للنافذة الفرعية" + +#: ../data/devhelp.schemas.in.h:18 +msgid "The Y position of the assistant window." +msgstr "الموضع الصادي للنافذة الفرعية." + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "عرض لوح الفهرس والبحث" + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the index and search pane." +msgstr "عرض لوح الفهرس والبحث." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "اللسان المحدد: \"content\" أو \"search\"" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "ما المختار من الألسنة: \"content\" أو \"search\"." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Books disabled" +msgstr "الكتب المُعطّلة" + +#: ../data/devhelp.schemas.in.h:24 +msgid "List of books disabled by the user." +msgstr "قائمة بالكتب التي عطّلها المستخدم." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Group by language" +msgstr "جمّع حسب اللغة" + +#: ../data/devhelp.schemas.in.h:26 +msgid "Whether books should be grouped by language in the UI" +msgstr "ما إذا كان من المتعين تجميع الكتب حسب اللغة في الواجهة" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Use system fonts" +msgstr "استخدم خطوط النّظام" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Use the system default fonts." +msgstr "استخدم خطوط النظام المبدئية." + +#: ../data/devhelp.schemas.in.h:29 +msgid "Font for text" +msgstr "خطّ النّصّ" + +#: ../data/devhelp.schemas.in.h:30 +msgid "Font for text with variable width." +msgstr "خطّ نصّ متغيّر العرض." + +#: ../data/devhelp.schemas.in.h:31 +msgid "Font for fixed width text" +msgstr "خطّ النّص ثابت العرض" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "خطّ النص ثابت العرض، كأمثلة الكود." + +#: ../data/ui/devhelp.builder.h:1 +msgid "Preferences" +msgstr "التفضيلات" + +#: ../data/ui/devhelp.builder.h:2 +msgid "_Group by language" +msgstr "_جمّع حسب اللغة" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Enabled" +msgstr "مُفعّل" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Title" +msgstr "العنوان" + +#: ../data/ui/devhelp.builder.h:5 +msgid "Book Shelf" +msgstr "رف الكتب" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "ا_ستخدم خطوط النّظام" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "_متغيِّر العرض: " + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Fixed width:" +msgstr "_ثابت العرض:" + +#: ../data/ui/devhelp.builder.h:9 +msgid "Fonts" +msgstr "الخطوط" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "دعم دِڤ‌هِلب" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "يجعل F2 يجلب وثائق المطوِّر حوْل الكلمة عند المؤشِّر" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "اعرض وثائق واجهة برمجة التطبيقات (API)" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "اعرض مساعدة المطوِّر حوْل الكلمة عند المؤشِّر" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "‏مساعدة المطورين - المساعد" + +#: ../src/dh-assistant-view.c:337 +msgid "Book:" +msgstr "كتاب:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "اللغة: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "اللغة: غير محددة" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "كتاب" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "صفحة" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "كلمة مفتاحية" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "دالّة" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "بنية" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "ماكرو" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "نوع" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "ابحث عن كلمة مفتاحية" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "أغلق أي دِڤ‌هِلب يعمل" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "اعرض الإصدارة و اخرج" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "ركز على نافذة دِڤ‌هِلب التي تحتوي خانة البحث النشطة" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "ابحث واعرض أي نتيجة في نافذة المساعِد" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "توقعت '%s'، لكن حصلت على '%s' في السطر %Id، و العمود %Id" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "نطاق أسماء غير سليم '%s' في السطر %Id، و العمود %Id" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "العناصر \"title\" و \"name\" و \"link\" مطلوبة عند السطر %Id، والعمود %Id" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "العنصران \"name\" و \"link\" مطلوبان بداخل في السطر %Id، والعمود %Id" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "العنصران \"name\" و \"link\" مطلوبان بداخل '%s' في السطر %Id، والعمود %Id" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "العنصر \"type\" مطلوب بداخل في السطر %Id، والعمود %Id" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "تعذّر فك ضغط الكتاب '%s': %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "كل الكتب" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "ابحث في:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "" +"فريق عربآيز للترجمة http://www.arabeyes.org :\n" +"خالد حسني\t" + +#: ../src/dh-window.c:733 +msgid "A developers' help browser for GNOME" +msgstr "متصفح وثائق مطوري جنوم" + +#: ../src/dh-window.c:740 +msgid "DevHelp Website" +msgstr "موقع دِڤ‌هِلب" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "_ملف" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "ت_حرير" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "_عرض" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "ا_ذهب" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "_مساعدة" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "نافذة _جديدة" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "_لسان جديد" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "ا_طبع…" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "ابحث عن التالي" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "ابحث عن السابق" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "اذهب للصفحة السابقة" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "اذهب للصفحة التالية" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "_لسان المحتويات" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "لسان الب_حث" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "_نص أكبر" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "زوّد حجم النص" + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "نص أ_صغر" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "قلل حجم النص" + +#: ../src/dh-window.c:815 +msgid "_Normal Size" +msgstr "الحجم ال_عادي" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "استخدم حجم النص العادي" + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "غادر وضع ملء الشاشة" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "املأ الشاشة" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +msgid "Larger" +msgstr "أكبر" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +msgid "Smaller" +msgstr "أصغر" + +#: ../src/dh-window.c:1159 +msgid "Contents" +msgstr "المحتويات" + +#: ../src/dh-window.c:1169 +msgid "Search" +msgstr "ابحث" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "خطأ أثناء فتح الرابط المطلوب." + +#: ../src/dh-window.c:1657 ../src/dh-window.c:1896 +msgid "Empty Page" +msgstr "صفحة فارغة" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "ابحث:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "ابحث عن التواجد السابق لسلسة البحث" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "ابحث عن التواجد التالي لسلسلة البحث" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "ح_سّاس لحالة الأحرف" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "بدّل البحث الحسّاس لحالة الأحرف" + +#~ msgid "About Devhelp" +#~ msgstr "عن البرنامج" + +#~ msgid "Preferences…" +#~ msgstr "التفضيلات…" + +#~ msgid "Preferences..." +#~ msgstr "التفضيلات..." + +#~ msgid "Show advanced search options" +#~ msgstr "أظهر خيارات البحث المتقدمة" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "ما إذا ستُعرض خيارات البحث المتقدّمة." + +#~ msgid "Fonts" +#~ msgstr "الخطوط" + +#~ msgid "Searching" +#~ msgstr "البحث" + +#~ msgid "_Back" +#~ msgstr "لل_خلف" + +#~ msgid "_Forward" +#~ msgstr "للأ_مام" + +#~ msgid "_Show advanced search options" +#~ msgstr "أ_ظهر خيارات البحث المتقدمة" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "عنصري الاسم والوصلة مطلوبين بداخل في السطر %Id، والعمود %Id" + +#~ msgid "Could not create book parser" +#~ msgstr "تعذّر إنشاء محلل كتاب" + +#~ msgid "Could not create markup parser" +#~ msgstr "تعذّر إنشاء محلل رقْم" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "لم يُبنى Devhelp بدعم zlib " diff --git a/po/as.gmo b/po/as.gmo new file mode 100644 index 0000000..c3cc7bd Binary files /dev/null and b/po/as.gmo differ diff --git a/po/as.po b/po/as.po new file mode 100644 index 0000000..a9caa8e --- /dev/null +++ b/po/as.po @@ -0,0 +1,608 @@ +# Assamese translation for devhelp. +# Copyright (C) 2012 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# +# ngoswami , 2012. +# Nilamdyuti Goswami , 2012, 2013, 2014. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2014-08-19 15:11+0000\n" +"PO-Revision-Date: 2014-08-19 21:58+0530\n" +"Last-Translator: Nilamdyuti Goswami \n" +"Language-Team: Assamese \n" +"Language: as\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.5\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#: ../data/devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp এটা API তথ্যচিত্ৰ ব্ৰাউছাৰ। ই লাইব্ৰেৰীসমূহৰে ভ্ৰমণ কৰাৰ, function, " +"struct, অথবা macro ৰ সহায়ত সন্ধান কৰাৰ এটা সহজ পদ্ধতি প্ৰদান কৰে। ই এটা টেব " +"কৰা " +"আন্তঃপৃষ্ঠ প্ৰদান কৰে আৰু ফলাফলসমূহ প্ৰিন্ট কৰাৰ অনুমতি দিয়ে।" + +#: ../data/devhelp.appdata.xml.in.h:2 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp এ অন্য এপ্লিকেচন যেনে Glade, Anjuta, অথবা Geany ৰ সৈতে অনুকূলন কৰে।" + +#: ../data/devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:212 ../src/dh-app.c:399 +#: ../src/dh-window.c:659 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "উন্নয়নকাৰীৰ সহায় প্ৰগ্ৰাম" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "তথ্যচিত্ৰ ব্ৰাউছাৰ" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "তথ্যচিত্ৰ;তথ্য;হাতপুথি;উন্নয়নকাৰী;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "মূখ্য উইন্ডো বৃদ্ধিত অৱস্থা" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "মূখ্য উইন্ডো বৃদ্ধিত হিচাপে আৰম্ভ হব নে।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "মূখ্য উইন্ডোৰ প্ৰস্থ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "মূখ্য উইন্ডোৰ প্ৰস্থ।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "মূখ্য উইন্ডোৰ উচ্চতা" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "মূখ্য উইন্ডোৰ উচ্চতা।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "মূখ্য উইন্ডোৰ X অৱস্থান" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "মূখ্য উইন্ডোৰ X অৱস্থান।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "মূখ্য উইন্ডোৰ Y অৱস্থান" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "মূখ্য উইন্ডোৰ Y অৱস্থান।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "সূচী আৰু সন্ধান পেইনৰ প্ৰস্থ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "সূচী আৰু সন্ধান পেইনৰ প্ৰস্থ।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "নিৰ্বাচিড টেব: \"সমল\" অথবা \"সন্ধান\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "কোনটো টেব নিৰ্বাচন কৰা হৈছে: \"সমল\" অথবা \"সন্ধান\"।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "কিতাপসমূহ অসামৰ্থবান" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "ব্যৱহাৰকাৰী দ্বাৰা অসামৰ্থবান কৰা কিতাপসমূহৰ তালিকা।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "ভাষা দ্বাৰা দলবদ্ধ কৰক" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "কিতাপসমূহ UI ত ভাষা দ্বাৰা দলবদ্ধ কৰা হব নে" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "সহায়ক উইন্ডোক ডাঙৰ কৰা হব নে" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "সহায়ক উইন্ডোক ডাঙৰ কৰা হব নে।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "সহায়ক উইন্ডোৰ প্ৰস্থ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "সহায়ক উইন্ডোৰ প্ৰস্থ।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "সহায়ক উইন্ডোৰ উচ্চতা" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "সহায়ক উইন্ডোৰ উচ্চতা।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "সহায়ক উইন্ডোৰ X অৱস্থান" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "সহায়ক উইন্ডোৰ X অৱস্থান।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "সহায়ক উইন্ডোৰ Y অৱস্থান" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "সহায়ক উইন্ডোৰ Y অৱস্থান।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "চিস্টেম ফন্টসমূহ ব্যৱহাৰ কৰক" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "চিস্টেম অবিকল্পিত ফন্টসমূহ ব্যৱহাৰ কৰক।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "লিখনীৰ বাবে ফন্ট" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "ভিন্ন প্ৰস্থৰ সৈতে লিখনীৰ বাবে ফন্ট।" + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "নিৰ্দিষ্ট প্ৰস্থ লিখনীৰ বাবে ফন্ট" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "নিৰ্দিষ্ট প্ৰস্থৰ সৈতে লিখনীৰ বাবে ফন্ট, যেনে ক'ড উদাহৰণসমূহ।" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp সমৰ্থন" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "কাৰ্চাৰত শব্দৰ বাবে Devhelp ক আনিবলে F2 ক বলৱৎ কৰে" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API তথ্যচিত্ৰ দেখুৱাওক" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "নতুন উইন্ডো (_W)" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "পছন্দসমূহ (_P)" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "বিষয়ে (_A)" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "প্ৰস্থান কৰক (_Q)" + +#: ../src/dh-app.c:204 +msgid "translator-credits" +msgstr "নীলমদ্যুতি গোস্বামী (ngoswami@redhat.com)" + +#: ../src/dh-app.c:214 +msgid "A developers' help browser for GNOME" +msgstr "GNOME ৰ বাবে এজন উন্নয়নকাৰীৰ সহায় ব্ৰাউছাৰ" + +#: ../src/dh-app.c:222 +msgid "DevHelp Website" +msgstr "DevHelp ৱেবছাইট" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — সহায়ক" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "কিতাপ:" + +#: ../src/dh-book.c:240 +#, c-format +msgid "Language: %s" +msgstr "ভাষা:%s" + +#: ../src/dh-book.c:241 +msgid "Language: Undefined" +msgstr "ভাষা: অবিৱৰিত" + +#. i18n: a documentation book +#: ../src/dh-link.c:270 +msgid "Book" +msgstr "কিতাপ" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:273 +msgid "Page" +msgstr "পৃষ্ঠা" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:277 +msgid "Keyword" +msgstr "কিৱাৰ্ড" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Function" +msgstr "ফলন" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:292 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:297 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:302 +msgid "Type" +msgstr "ধৰণ" + +#: ../src/dh-main.c:41 +msgid "Opens a new Devhelp window" +msgstr "এটা নতুন Devhelp উইন্ডো খোলে" + +#: ../src/dh-main.c:46 +msgid "Search for a keyword" +msgstr "এটা কিৱাৰ্ড সন্ধান কৰক" + +#: ../src/dh-main.c:47 ../src/dh-main.c:52 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-main.c:51 +msgid "Search and display any hit in the assistant window" +msgstr "সহায়ক উইন্ডোত যিকোনো হিট সন্ধান কৰি প্ৰদৰ্শন কৰক" + +#: ../src/dh-main.c:56 +msgid "Display the version and exit" +msgstr "সংস্কৰণ প্ৰদৰ্শন কৰি প্ৰস্থান কৰক" + +#: ../src/dh-main.c:61 +msgid "Quit any running Devhelp" +msgstr "কোনো চলি থকা Devhelp প্ৰস্থান কৰক" + +#: ../src/dh-parser.c:95 ../src/dh-parser.c:196 ../src/dh-parser.c:260 +#: ../src/dh-parser.c:270 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "প্ৰত্যাশিত '%s', পোৱা গল '%s' শাৰী %d ত, স্তম্ভ %d" + +#: ../src/dh-parser.c:112 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "অভৈধ নেইমস্পেইচ '%s' শাৰী %d ত, স্তম্ভ %d" + +#: ../src/dh-parser.c:141 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"শীৰ্ষক\", \"নাম\" আৰু \"সংযোগ\" উপাদানসমূহ প্ৰয়োজনীয় শাৰী %d, স্তম্ভ %d" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "\"নাম\" আৰু \"সংযোগ\" উপাদানসমূহ প্ৰয়োজনীয় শাৰী %d ত, স্তম্ভ %d" + +#: ../src/dh-parser.c:295 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "\"নাম\" আৰু \"সংযোগ\" উপাদানসমূহ প্ৰয়োজনীয় '%s' শাৰী %d ত, স্তম্ভ %d" + +#: ../src/dh-parser.c:308 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"ধৰণ\" উপাদান প্ৰয়োজনীয় শাৰী %d, স্তম্ভ %d" + +#: ../src/dh-parser.c:511 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "কিতাপ অসংকোচিত কৰিব নোৱাৰি '%s': %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "পছন্দসমূহ" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "ভাষা দ্বাৰা দলবদ্ধ কৰক (_G)" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "সামৰ্থবান" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "শীৰ্ষক" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "কিতাপ নিচাঙ" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "চিস্টেম ফন্টসমূহ ব্যৱহাৰ কৰক (_U)" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "ভিন্ন প্ৰস্থ (_V):" + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "নিৰ্দিষ্ট প্ৰস্থ (_F):" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "ফন্টসমূহ" + +#: ../src/dh-window.c:81 +msgid "50%" +msgstr "৫০%" + +#: ../src/dh-window.c:82 +msgid "75%" +msgstr "৭৫%" + +#: ../src/dh-window.c:83 +msgid "100%" +msgstr "১০০%" + +#: ../src/dh-window.c:84 +msgid "125%" +msgstr "১২৫%" + +#: ../src/dh-window.c:85 +msgid "150%" +msgstr "১৫০%" + +#: ../src/dh-window.c:86 +msgid "175%" +msgstr "১৭৫%" + +#: ../src/dh-window.c:87 +msgid "200%" +msgstr "২০০%" + +#: ../src/dh-window.c:88 +msgid "300%" +msgstr "৩০০%" + +#: ../src/dh-window.c:89 +msgid "400%" +msgstr "৪০০%" + +#: ../src/dh-window.c:868 +msgid "Error opening the requested link." +msgstr "অনুৰোধ কৰা সংযোগ খোলোতে ত্ৰুটি।" + +#: ../src/dh-window.c:1126 +msgid "_Close" +msgstr "বন্ধ কৰক (_C)" + +#: ../src/dh-window.c:1154 ../src/dh-window.c:1327 +msgid "Empty Page" +msgstr "ৰিক্ত পৃষ্ঠা" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "নতুন টেব (_T)" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "প্ৰিন্ট কৰক (_P)" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "সন্ধান কৰক (_F)" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "ডাঙৰ লিখনী (_L)" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "সৰু লিখনী (_m)" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "স্বাভাৱিক আকাৰ (_N)" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "কাষ পেইন (_S)" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "Devhelp ৰ বিষয়ে (_A)" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "পিছলৈ" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "আগলৈ" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "কাৰ্চাৰত শব্দৰ বাবে API তথ্যচিত্ৰ দেখুৱাওক" + +#~ msgid "Current" +#~ msgstr "বৰ্তমান" + +#~ msgid "All Books" +#~ msgstr "সকলো কিতাপ" + +#~ msgid "Find:" +#~ msgstr "সন্ধান কৰক:" + +#~ msgid "Find Previous" +#~ msgstr "পূৰ্বৱৰ্তী বিচাৰক" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "সন্ধান স্ট্ৰিংৰ পূৰ্বৱৰ্তী উপস্থিতি সন্ধান কৰক" + +#~ msgid "Find Next" +#~ msgstr "পৰৱৰ্তী বিচাৰক" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "সন্ধান স্ট্ৰিংৰ পৰৱৰ্তী উপস্থিতি সন্ধান কৰক" + +#~ msgid "C_ase Sensitive" +#~ msgstr "ফলা সংবেদ্য (_a)" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "ফলা সংবেদ্য সন্ধান অদল বদল কৰক" + +#~| msgid "_New Window" +#~ msgid "_Window" +#~ msgstr "উইন্ডো (_W)" + +#~ msgid "_Edit" +#~ msgstr "সম্পাদনা কৰক (_E)" + +#~ msgid "_Copy" +#~ msgstr "কপি কৰক (_C)" + +#~| msgid "Find Next" +#~ msgid "Find _Next" +#~ msgstr "পৰৱৰ্তী সন্ধান কৰক (_N)" + +#~| msgid "Find Previous" +#~ msgid "Find _Previous" +#~ msgstr "পূৰ্বৱৰ্তী সন্ধান কৰক (_P)" + +#~ msgid "_View" +#~ msgstr "দৰ্শন কৰক (_V)" + +#~ msgid "Fullscreen" +#~ msgstr "পূৰ্ণপৰ্দা" + +#~ msgid "_Go" +#~ msgstr "যাওক (_G)" + +#~ msgid "_Search Tab" +#~ msgstr "সন্ধান টেব (_S)" + +#~ msgid "_Contents Tab" +#~ msgstr "সমলসমূহ টেব (_C)" + +#~ msgid "Go to the previous page" +#~ msgstr "পূৰ্বৱৰ্তী পৃষ্ঠালে যাওক" + +#~ msgid "Go to the next page" +#~ msgstr "পৰৱৰ্তী পৃষ্ঠালে যাওক" + +#~ msgid "Decrease the text size" +#~ msgstr "লিখনী আকাৰ সৰু কৰক" + +#~ msgid "Increase the text size" +#~ msgstr "লিখনী আকাৰ বৃদ্ধি কৰক" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "সন্ধান ক্ষেত্ৰ থকাকৈ Devhelp উইন্ডোত মনোনিবেষ কৰক" + +#~ msgid "Search in:" +#~ msgstr "সন্ধান কৰক:" + +#~ msgid "Contents" +#~ msgstr "সমলসমূহ" + +#~ msgid "Search" +#~ msgstr "সন্ধান কৰক" + +#~ msgid "_File" +#~ msgstr "ফাইল (_F)" + +#~ msgid "_Help" +#~ msgstr "সহায় (_H)" + +#~ msgid "Use the normal text size" +#~ msgstr "স্বাভাৱিক লিখনী আকাৰ ব্যৱহাৰ কৰক" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "পূৰ্ণপৰ্দা অৱস্থা এৰক" + +#~ msgid "Display in full screen" +#~ msgstr "সম্পূৰ্ণ পৰ্দাত প্ৰদৰ্শন কৰক" + +#~ msgid "Larger" +#~ msgstr "ডাঙৰ" + +#~ msgid "Smaller" +#~ msgstr "সৰু" diff --git a/po/ast.gmo b/po/ast.gmo new file mode 100644 index 0000000..2c0d4f7 Binary files /dev/null and b/po/ast.gmo differ diff --git a/po/ast.po b/po/ast.po new file mode 100644 index 0000000..bbdd9ca --- /dev/null +++ b/po/ast.po @@ -0,0 +1,548 @@ +# Xandru Armesto , 2011. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2011-04-04 12:57+0000\n" +"PO-Revision-Date: 2011-04-25 08:31+0200\n" +"Last-Translator: Xandru Armesto \n" +"Language-Team: Softastur alministradores@softastur.org\n" +"Language: ast\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Virtaal 0.5.2\n" +"X-Launchpad-Export-Date: 2010-01-11 12:48+0000\n" +"X-Poedit-Language: asturian\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Programa d'ayuda del desendolcador" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:741 ../src/dh-window.c:1049 ../src/dh-window.c:1884 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Visor de documentación" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "Llibros desactivaos" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "Fonte pal testu d'anchor fixu" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "Fonte pal testu" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "Fonte pal testu con anchor fixu, tal como los exemplos de códigu." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "Fonte pal testu con anchor variable." + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "Agrupar por llingua" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "Altor de la ventana del asistente" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "Altor de la ventana principal" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "Llista de llibros desactivaos pol usuariu." + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "Estáu maximizáu de la ventana principal" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Llingüeta seleicionada: «conteníu» o «gueta»" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr "La posición X de la ventana del asistente." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "La posición X de la ventana principal." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "La posición Y de la ventana del asistente." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "La posición Y de la ventana principal." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "L'altor de la ventana del asistente." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "L'altor de la ventana principal." + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "L'anchor de la ventana del asistente." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "L'anchor del índiz y el panel llateral de gueta." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "L'anchor de la ventana principal." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "Emplegar fontes del sistema" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "Usar les fontes predeterminaes del sistema." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "Indica si hai d'agrupar los llibros por llingua na UI" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "Indica si la ventana principal tendría d'aniciase maximizada." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Cuál de les llingüetes ta seleicionada, «conteníu» o «gueta»." + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "Anchor de la ventana del asistente" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "Anchor del índiz de panel de gueta" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "Anchor de la ventana principal" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "Posición X de la ventana del asistente" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "Posición X de la ventana principal" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "Posición Y de la ventana del asistente" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Posición Y de la ventana principal" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "Biblioteca" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Fonts" +msgstr "Fontes" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Preferences" +msgstr "Preferencies" + +#: ../data/ui/devhelp.builder.h:4 +msgid "_Fixed width:" +msgstr "_Anchor fixu:" + +#: ../data/ui/devhelp.builder.h:5 +msgid "_Group by language" +msgstr "_Agrupar por llingua" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "_Usar fontes del sistema" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "A_nchor variable:" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Sofitu pa DevHelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Fai que F2 anicie DevHelp pa la pallabra nel cursor" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "Amosar la documentación de l'API" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "Amuesa la documentación de l'API pa la pallabra embaxo'l cursor" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Asistente — Devhelp" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "Llibru:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "Llingua: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "Llingua: Ensin definir" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Llibru" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Páxina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Pallabra clave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Función" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Estructura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enumberar" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Triba" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "Guetar una pallabra clave" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "Fina cualesquier DevHelp n'execución" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "Amuesa la versión y sal" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "Da'l focu al ventanu de Devhelp col campu de gueta activu" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "Guetar y amosar cualesquier coincidencia na ventana del asistente" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Esperábase «%s» pero obtúvose «%s» na llinia %d, columna %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Espaciu de nomes non válidu «%s» na llinia %d, columna %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"los elementos «títulu», «nome» y «enllaz» requiérense na llinia %d, columna " +"%d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"requiérense los elementos «nome» y «enllaz» dientro de na llinia %d, " +"columna %d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"requiérense elementos «nome» y «enllaz» dientro de «%s» na llinia %d, " +"columna %d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"requierse la «triba» d'elementu dientro de na llinia %d, columna %" +"d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Nun pudo descomprimise'l llibru «%s»: %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "Tolos llibros" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "Guetar en:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:736 +msgid "translator_credits" +msgstr "Astur , Xandru 2011" + +#: ../src/dh-window.c:743 +msgid "A developers' help browser for GNOME" +msgstr "Un visor d'ayuda pa desendolcadores de GNOME" + +#: ../src/dh-window.c:750 +msgid "DevHelp Website" +msgstr "Sitiu web DevHelp" + +#: ../src/dh-window.c:774 +msgid "_File" +msgstr "_Ficheru" + +#: ../src/dh-window.c:775 +msgid "_Edit" +msgstr "_Editar" + +#: ../src/dh-window.c:776 +msgid "_View" +msgstr "_Ver" + +#: ../src/dh-window.c:777 +msgid "_Go" +msgstr "_Dir" + +#: ../src/dh-window.c:778 +msgid "_Help" +msgstr "Ayu_da" + +#. File menu +#: ../src/dh-window.c:781 +msgid "_New Window" +msgstr "_Ventana nueva" + +#: ../src/dh-window.c:783 +msgid "New _Tab" +msgstr "_Llingüeta nueva" + +#: ../src/dh-window.c:785 +msgid "_Print…" +msgstr "_Imprentar…" + +#: ../src/dh-window.c:797 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Guetar siguiente" + +#: ../src/dh-window.c:799 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Guetar anterior" + +#: ../src/dh-window.c:806 +msgid "Go to the previous page" +msgstr "Dir a la páxina anterior" + +#: ../src/dh-window.c:809 +msgid "Go to the next page" +msgstr "Dir a la páxina siguiente" + +#: ../src/dh-window.c:812 +msgid "_Contents Tab" +msgstr "Llingüeta de _conteníu" + +#: ../src/dh-window.c:815 +msgid "_Search Tab" +msgstr "Llingüeta de _gueta" + +#. View menu +#: ../src/dh-window.c:819 +msgid "_Larger Text" +msgstr "Testu más _grande" + +#: ../src/dh-window.c:820 +msgid "Increase the text size" +msgstr "Aumentar el tamañu del testu" + +#: ../src/dh-window.c:822 +msgid "S_maller Text" +msgstr "Testu más _pequeñu" + +#: ../src/dh-window.c:823 +msgid "Decrease the text size" +msgstr "Amenorgar el tamañu del testu" + +#: ../src/dh-window.c:825 +msgid "_Normal Size" +msgstr "Tamañu _normal" + +#: ../src/dh-window.c:826 +msgid "Use the normal text size" +msgstr "Usar el tamañu de testu normal" + +#: ../src/dh-window.c:835 +msgid "Leave fullscreen mode" +msgstr "Colar de mou pantalla completa" + +#: ../src/dh-window.c:842 +msgid "Display in full screen" +msgstr "Amosar en pantalla completa" + +#. Translators: This refers to text size +#: ../src/dh-window.c:962 +msgid "Larger" +msgstr "Más _grande" + +#. Translators: This refers to text size +#: ../src/dh-window.c:965 +msgid "Smaller" +msgstr "Más _pequeñu" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1114 +msgid "About Devhelp" +msgstr "Tocante a DevHelp" + +#: ../src/dh-window.c:1119 +msgid "Preferences…" +msgstr "Preferencies…" + +#: ../src/dh-window.c:1161 +msgid "Contents" +msgstr "Índiz" + +#: ../src/dh-window.c:1171 +msgid "Search" +msgstr "Guetar" + +#: ../src/dh-window.c:1349 +msgid "Error opening the requested link." +msgstr "Fallu abriendo l'enllaz solicitáu." + +#: ../src/dh-window.c:1671 ../src/dh-window.c:1912 +msgid "Empty Page" +msgstr "Páxina erma" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Guetar:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Atopar la coincidencia anterior de la cadena guetada" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Atopar la siguiente coincidencia de la cadena guetada" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "Concasar mayúscules" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Conmutar gueta discriminando mayúscules" + +#~ msgid "Enabled" +#~ msgstr "Activada" diff --git a/po/az.gmo b/po/az.gmo new file mode 100644 index 0000000..fb606e4 Binary files /dev/null and b/po/az.gmo differ diff --git a/po/az.po b/po/az.po new file mode 100644 index 0000000..55576b4 --- /dev/null +++ b/po/az.po @@ -0,0 +1,238 @@ +# devhelp.HEAD.az.po faylının Azərbaycan dilinə tərcüməsi +# devhelp tərcüməsi. +# Copyright (C) 2003 Free Software Foundation, Inc. +# Mətin Əmirov , 2003. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD.az\n" +"POT-Creation-Date: 2004-03-16 23:25+0100\n" +"PO-Revision-Date: 2003-08-25 17:20+0300\n" +"Last-Translator: Mətin Əmirov \n" +"Language-Team: Azerbaijani \n" +"Language: az\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Report-Msgid-Bugs-To: \n" +"X-Generator: KBabel 1.0.1\n" + +#: devhelp.desktop.in.h:1 +msgid "Developer's Help program" +msgstr "İnkişafçının Yardım proqramı" + +#: devhelp.desktop.in.h:2 ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "DevHelp" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "DevHelp Kitabı" + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "" + +#: devhelp.schemas.in.h:7 +msgid "The X position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:8 +msgid "The Y position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:9 +msgid "The height of the main window." +msgstr "" + +#: devhelp.schemas.in.h:10 +msgid "The location of the paned separator." +msgstr "" + +#: devhelp.schemas.in.h:11 +msgid "The width of the main window." +msgstr "" + +#: devhelp.schemas.in.h:12 +msgid "Use system fonts" +msgstr "" + +#: devhelp.schemas.in.h:13 +msgid "Use the system default fonts." +msgstr "" + +#: devhelp.schemas.in.h:14 +msgid "Width of the main window" +msgstr "" + +#: devhelp.schemas.in.h:15 +msgid "X position of main window" +msgstr "" + +#: devhelp.schemas.in.h:16 +msgid "Y position of main window" +msgstr "" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "Pəncərənin böyüklüyü və mövqeyini müəyyən edin" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "ENxHÜNDÜRLÜK+XOFF+YOFF" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "Funksiya axtar" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "İşləyən hər hansı Devhelp-dən çıx" + +#: src/dh-parser.c:104 src/dh-parser.c:181 src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "'%s' gözlənirdi '%s' alındı, sətir: %d, sütun: %d" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Hökmsüz ad boşluğu '%s' sətir: %d, sütun: %d" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "başlıq, ad və körpü elementləri məcburidir. sətir: %d, sütun: %d" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr " içində ad və körpü elementləri məcburidir. sətir: %d, sütun: %d" + +#: src/dh-parser.c:250 +#, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "" +" içində ad və körpü elementləri məcburidir. sətir: %d, sütun: %d" + +#: src/dh-parser.c:337 src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "Kitab oxuyucusu yaradıla bilmir" + +#: src/dh-parser.c:347 src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "İşarələmə oxuyucusu yaradıla bilmir" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' kitabı açıla bilmir: %s" + +#: src/dh-search.c:417 +msgid "_Search:" +msgstr "_Axtar:" + +#: src/dh-search.c:461 +msgid "Section" +msgstr "Qisim" + +#: src/dh-window.c:111 +msgid "_File" +msgstr "_Fayl" + +#: src/dh-window.c:112 +msgid "_Edit" +msgstr "" + +#: src/dh-window.c:113 ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "_Get" + +#: src/dh-window.c:114 +msgid "_Help" +msgstr "_Yardım" + +#: src/dh-window.c:292 +#, c-format +msgid "Cannot set UI: %s" +msgstr "" + +#: src/dh-window.c:352 ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "Məzmun" + +#: src/dh-window.c:363 +msgid "Search" +msgstr "Axtar" + +#: src/dh-window.c:446 +msgid "A developer's help browser for GNOME 2" +msgstr "GNOME 2 üçün inkişafçının yardım səyyahı" + +#: src/dh-window.c:462 +msgid "Devhelp project page" +msgstr "Devhelp layihə səhifəsi" + +#: src/dh-window.c:466 +msgid "Bug report Devhelp" +msgstr "Devhelp xəta raportu" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr "" + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "" + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "" + +#~ msgid "" +#~ "Select a subject in the contents to the left or switch to the search tab " +#~ "to find what you are looking for." +#~ msgstr "" +#~ "Soldakı məzmunun içində bir mövzu seçin ya da axtardığınız mövzunu tapmaq " +#~ "üçün axtarış çubuğuna keçin." diff --git a/po/be.gmo b/po/be.gmo new file mode 100644 index 0000000..c1d6d10 Binary files /dev/null and b/po/be.gmo differ diff --git a/po/be.po b/po/be.po new file mode 100644 index 0000000..7c0ba11 --- /dev/null +++ b/po/be.po @@ -0,0 +1,608 @@ +# This file is distributed under the same license as the devhelp package. +# Copyright (C) 2004 Devhelp authors +# Vital Khilko , 2003. +# Wladzimir Manulenka , 2010. +# Ihar Hrachyshka , 2012, 2013. +# Yuras Shumovich , 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-07-27 13:58+0000\n" +"PO-Revision-Date: 2017-09-01 18:49+0300\n" +"Last-Translator: Yuras Shumovich \n" +"Language-Team: Belarusian \n" +"Language: be\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:807 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Памочнік праграміста" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp гэта аглядальнік дакументацыі да праграмных інтэрфейсаў. З яго " +"дапамогай можна лёгка аглядаць бібліятэкі, шукаць функцыі, структуры і " +"макраазначэнні ў інтэрфейсе з карткамі, а таксама друкаваць вынікі." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp інтэгруецца з Glade, Anjuta і Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Аглядальнік дакументацыі" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"дакументацыя;інфармацыя;звесткі;даведнік;падручнік;распрацоўшчык;праграміст;" +"api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Стан максімалізацыі галоўнага акна" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Ці трэба адкрываць галоўнае акно максімалізаваным." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Шырыня галоўнага акна" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Шырыня галоўнага акна." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Вышыня галоўнага акна" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Вышыня галоўнага акна." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Размяшчэнне галоўнага акна па X-восі" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "Размяшчэнне галоўнага акна па X-восі." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Размяшчэнне галоўнага акна па Y-восі" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "Размяшчэнне галоўнага акна па Y-восі." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Шырыня паліцы зместу і пошуку" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "Шырыня паліцы зместу і пошуку." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Выключаныя кнігі" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Спіс кніг, выключаных карыстальнікам." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Групаваць па мове" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "Ці трэба групаваць кнігі па мове ў інтэрфейсе праграмы" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Ці трэба максімалізаваць дапаможнае акно" + +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Ці трэба максімалізаваць дапаможнае акно." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Шырыня дапаможнага акна" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "Шырыня дапаможнага акна." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Вышыня дапаможнага акна" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Вышыня дапаможнага акна." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "Размяшчэнне дапаможнага акна па X-восі" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "Размяшчэнне дапаможнага акна па X-восі." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Размяшчэнне дапаможнага акна па Y-восі" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "Размяшчэнне дапаможнага акна па Y-восі." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Ужыць сістэмныя шрыфты" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Ужыць прадвызначаныя сістэмныя шрыфты." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Шрыфт тэксту" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Шрыфт зменнай шырыні." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Роўнашырокі шрыфт" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Роўнашырокі шрыфт з літарамі аднаго памеру, напрыклад, для ўзораў коду." + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Падтрымка Devhelp" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Паказаць дакументацыю API" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Новае _акно" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "_Настройкі" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Клавіятурныя скароты" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_Аб праграме" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "_Выйсці" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Агульнае" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Перанесці фокус на глабальны пошук" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Шукаць на бягучай старонцы" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Адкрыць новае акно" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Адкрыць новую картку" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Пераключыць бачнасць бакавой паліцы" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Назад" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Наперад" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Друкаваць" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Закрыць бягучае акно" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Схаваць усе вокны" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Маштабаванне" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Наблізіць" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Аддаліць" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Натуральны маштаб" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "Памочнік праграміста GNOME" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Ігар Грачышка \n" +"Уладзімір Мануленка \n" +"Юрась Шумовіч " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Сеціўная пляцоўка Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Адкрыць новае акно Devhelp" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Адшукаць ключавое слова" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "КЛЮЧАВОЕ_СЛОВА" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Адшукаць і паказаць знойдзенае ў дапаможным акне" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Паказаць нумар версіі праграмы і выйсці" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Выйсці з Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp: Памочнік" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Кніга:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Мова: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Мова: невядома" + +#: src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "_Згарнуць усе" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Кніга" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Старонка" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Ключавое слова" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Функцыя" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Макраазначэнне" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Пералік" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Тып" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Уласьцівасць" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Сігнал" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Настройкі" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Групаваць па мове" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Уключана" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Назва" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Кніжная паліца" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Ужыць сістэмныя шрыфты" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Шрыфт _зменнай шырыні: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Роўнашырокі шрыфт:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Шрыфты" + +#: src/dh-window.c:75 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:76 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:77 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:78 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:79 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:80 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:81 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:82 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:83 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1029 +msgid "Error opening the requested link." +msgstr "Памылка адкрыцця запатрабаванай спасылкі." + +#: src/dh-window.c:1346 +msgid "_Close" +msgstr "_Закрыць" + +#: src/dh-window.c:1364 src/dh-window.c:1545 +msgid "Empty Page" +msgstr "Пустая старонка" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Бакавая _панэль" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "_Надрукаваць" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Шукаць" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "_Большы тэкст" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "_Меншы тэкст" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "_Звычайны памер" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Бакавая панэль" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "_Аб Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Назад" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Наперад" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Новая картка" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Выбраная картка: \"content\" (зместу) ці \"search\" (пошуку)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Якая картка выбрана: \"content\" (зместу) ці \"search\" (пошуку)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Чакалася \"%s\", атрымана \"%s\" у радку %d (слупок %d)" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Памылковая прастора назваў \"%s\" у радку %d (слупок %d)" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "У радку %d (слупок %d) патрабуюцца наступныя элементы: \"title\", \"name" +#~ "\" і \"link\"" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Унутры у радку %d (слупок %d) патрабуюцца наступныя элементы: \"name" +#~ "\" і \"link\"" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Унутры \"%s\" у радку %d (слупок %d) патрабуюцца наступныя элементы: " +#~ "\"name\" і \"link\"" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "Унутры у радку %d (слупок %d) патрабуецца наступны элемент: " +#~ "\"type\"" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Не ўдалося распакаваць кнігу \"%s\": %s" + +#~ msgid "_Side pane" +#~ msgstr "_Бакавая панэль" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Запуск Devhelp для слова пад курсорам пры націску клавішы F2" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Паказаць дакументацыю API для слова пад курсорам" + +#~ msgid "Current" +#~ msgstr "Бягучы" + +#~ msgid "All Books" +#~ msgstr "Усе кнігі" diff --git a/po/be@latin.gmo b/po/be@latin.gmo new file mode 100644 index 0000000..b40d66d Binary files /dev/null and b/po/be@latin.gmo differ diff --git a/po/be@latin.po b/po/be@latin.po new file mode 100644 index 0000000..aefd708 --- /dev/null +++ b/po/be@latin.po @@ -0,0 +1,467 @@ +# Biełaruski pierakład devhelp +# Ihar Hračyška +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2009-04-25 13:52+0300\n" +"PO-Revision-Date: 2008-02-16 23:51+0200\n" +"Last-Translator: Ihar Hrachyshka \n" +"Language-Team: Belarusian Latin \n" +"Language: be@latin\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Belarusian\n" +"X-Poedit-Country: BELARUS\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Prahrama ŭ dapamohu raspracoŭniku" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Documentation Browser" +msgstr "Hartač dakumentacyi" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed width text" +msgstr "Šryft dla tekstu stałaj šyryni" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "Šryft dla tekstu" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width, such as code examples." +msgstr "Šryft dla tekstu stałaj šyryni, naprykład, uzoraŭ kodu." + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "Šryft dla tekstu źmiennaj šyryni." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of assistant window" +msgstr "Vyšynia dapamožnaha akna" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Height of main window" +msgstr "Vyšynia hałoŭnaha akna" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "Maksymalizavany stan hałoŭnaha akna" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "Dziejnaja kartka, \"źmieściva\" albo \"šukaj\"" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the assistant window." +msgstr "Pałažeńnie dapamožnaha akna pa vosi X." + +#: ../data/devhelp.schemas.in.h:10 +msgid "The X position of the main window." +msgstr "Pałažeńnie hałoŭnaha akna pa vosi X." + +#: ../data/devhelp.schemas.in.h:11 +msgid "The Y position of the assistant window." +msgstr "Pałažeńnie dapamožnaha akna pa vosi Y." + +#: ../data/devhelp.schemas.in.h:12 +msgid "The Y position of the main window." +msgstr "Pałažeńnie hałoŭnaha akna pa vosi Y." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The height of the assistant window." +msgstr "Vyšynia dapamožnaha akna." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the main window." +msgstr "Vyšynia hałoŭnaha akna." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The width of the assistant window." +msgstr "Šyrynia dapamožnaha akna." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The width of the index and search pane." +msgstr "Šyrynia paneli źmiestu i pošuku." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The width of the main window." +msgstr "Šyrynia hałoŭnaha akna." + +#: ../data/devhelp.schemas.in.h:18 +msgid "Use system fonts" +msgstr "Užyj systemnyja šryfty" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Use the system default fonts." +msgstr "Užyj systemnyja zmoŭčanyja šryfty." + +#: ../data/devhelp.schemas.in.h:20 +msgid "Whether the main window should start maximized or not." +msgstr "Akreślivaje, ci maksymalizavać hałoŭnaje akno pry ŭruchomleńni." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "Akreślivaje dziejnuju kartku, \"źmieściva\" albo \"šukaj\"." + +#: ../data/devhelp.schemas.in.h:22 +msgid "Width of the assistant window" +msgstr "Šyrynia dapamožnaha akna" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Width of the index and search pane" +msgstr "Šyrynia paneli źmieściva i pošuku" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Width of the main window" +msgstr "Šyrynia hałoŭnaha akna" + +#: ../data/devhelp.schemas.in.h:25 +msgid "X position of assistant window" +msgstr "Pałažeńnie dapamožnaha akna pa vosi X" + +#: ../data/devhelp.schemas.in.h:26 +msgid "X position of main window" +msgstr "Pałažeńnie hałoŭnaha akna pa vosi X" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Y position of assistant window" +msgstr "Pałažeńnie dapamožnaha akna pa vosi Y" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Y position of main window" +msgstr "Pałažeńnie hałoŭnaha akna pa vosi Y" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Padtrymka Devhelpa" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Pry nacisku klavišy F2 pakazvaj infarmacyju ab słovie pad kursoram" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:36 +msgid "Show API Documentation" +msgstr "Pakažy dakumentacyju API" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation for the word at the cursor" +msgstr "Pakažy dakumentacyju API dla słova pad kursoram" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp - Assistant" +msgstr "Devhelp - Pamočnik" + +#: ../src/dh-assistant-view.c:316 +msgid "Book:" +msgstr "Kniha:" + +#. i18n: a documentation book +#: ../src/dh-link.c:245 +msgid "Book" +msgstr "Kniha" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:248 +msgid "Page" +msgstr "Staronka" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:252 +msgid "Keyword" +msgstr "Klučavoje słova" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:257 +msgid "Function" +msgstr "Funkcyja" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:262 +msgid "Struct" +msgstr "Struktura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:267 +msgid "Macro" +msgstr "Makras" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:272 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:277 +msgid "Type" +msgstr "Typ" + +#: ../src/dh-main.c:167 +msgid "Search for a keyword" +msgstr "Šukaj słova" + +#: ../src/dh-main.c:172 +msgid "Quit any running Devhelp" +msgstr "Vychad z uruchomlenaha Devhelpa" + +#: ../src/dh-main.c:177 +msgid "Display the version and exit" +msgstr "Pakažy versiju i zakonč pracu" + +#: ../src/dh-main.c:182 +msgid "Focus the Devhelp window with the search field active" +msgstr "Sfakusuj akno Devhelpa i aktyvizuj pole pošuku" + +#: ../src/dh-main.c:187 +msgid "Search and display any hit in the assistant window" +msgstr "Šukaj i pakazvaj padkazki ŭ dapamožnym aknie" + +#: ../src/dh-parser.c:80 ../src/dh-parser.c:169 ../src/dh-parser.c:233 +#: ../src/dh-parser.c:243 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "Čakałasia '%s', atrymana '%s' u radku %d, kalonie %d" + +#: ../src/dh-parser.c:97 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Niapravilny abšar nazvaŭ '%s' u radku %d, kalonie %d" + +#: ../src/dh-parser.c:122 +#, c-format +msgid "" +"\"title\", \"name\", and \"link\" elements are required at line %d, column %d" +msgstr "" +"Elementy zahałoŭka (\"title\"), nazvy (\"name\") i spasyłki (\"link\") " +"patrabujucca ŭ radku %d, kalonie %d" + +#: ../src/dh-parser.c:188 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"Elementy nazvy (\"name\") i spasyłki (\"link\") patrabujucca ŭnutry u " +"radku %d, kalonie %d" + +#: ../src/dh-parser.c:268 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"Elementy nazvy (\"name\") i spasyłki (\"link\") patrabujucca ŭnutry \"%s\" u " +"radku %d, kalonie %d" + +#: ../src/dh-parser.c:281 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"Element typu (\"type\") patrabujecca ŭnutry u radku %d, kalonie %d" + +#: ../src/dh-parser.c:486 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Niemahčyma zdekampresavać knihu '%s': %s" + +#: ../src/dh-search.c:481 +msgid "All books" +msgstr "Usie knihi" + +#: ../src/dh-search.c:537 +msgid "Search in:" +msgstr "Šukaj u:" + +#: ../src/dh-window.c:73 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:74 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:75 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:76 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:77 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:78 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:79 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:80 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:81 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:364 +msgid "translator_credits" +msgstr "Ihar Hračyška " + +#: ../src/dh-window.c:369 +msgid "A developer's help browser for GNOME" +msgstr "Hartač dakumentacyi raspracoŭnika dla GNOME" + +#: ../src/dh-window.c:381 +msgid "_File" +msgstr "_Fajł" + +#: ../src/dh-window.c:382 +msgid "_Edit" +msgstr "_Redahuj" + +#: ../src/dh-window.c:383 +msgid "_View" +msgstr "_Vyhlad" + +#: ../src/dh-window.c:384 +msgid "_Go" +msgstr "_Pierajdzi" + +#: ../src/dh-window.c:385 +msgid "_Help" +msgstr "_Dapamoha" + +#. File menu +#: ../src/dh-window.c:388 +msgid "_New Window" +msgstr "_Novaje akno" + +#: ../src/dh-window.c:390 +msgid "New _Tab" +msgstr "Novaja _kartka" + +#: ../src/dh-window.c:392 +msgid "_Print..." +msgstr "_Vydrukuj..." + +#: ../src/dh-window.c:404 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Šukaj dalej" + +#: ../src/dh-window.c:406 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Šukaj raniej" + +#: ../src/dh-window.c:413 +msgid "Go to the previous page" +msgstr "Pierajdzi da papiaredniaj staronki" + +#: ../src/dh-window.c:416 +msgid "Go to the next page" +msgstr "Pierajdzi da nastupnaj staronki" + +#: ../src/dh-window.c:419 +msgid "_Contents Tab" +msgstr "Kartka _źmieściva" + +#: ../src/dh-window.c:422 +msgid "_Search Tab" +msgstr "Kartka _pošuku" + +#. View menu +#: ../src/dh-window.c:426 +msgid "_Larger Text" +msgstr "_Bolšy tekst" + +#: ../src/dh-window.c:427 +msgid "Increase the text size" +msgstr "Pavialič pamier tekstu" + +#: ../src/dh-window.c:429 +msgid "S_maller Text" +msgstr "_Mienšy tekst" + +#: ../src/dh-window.c:430 +msgid "Decrease the text size" +msgstr "Pamienš pamier tekstu" + +#: ../src/dh-window.c:432 +msgid "_Normal Size" +msgstr "_Zvyčajny pamier" + +#: ../src/dh-window.c:433 +msgid "Use the normal text size" +msgstr "Užyj zvyčajny pamier tekstu" + +#. Translators: This refers to text size +#: ../src/dh-window.c:530 +msgid "Larger" +msgstr "_Bolšy" + +#. Translators: This refers to text size +#: ../src/dh-window.c:533 +msgid "Smaller" +msgstr "_Mienšy" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:661 +msgid "About Devhelp" +msgstr "Pra Devhelp" + +#: ../src/dh-window.c:666 +msgid "Preferences..." +msgstr "Nałady..." + +#: ../src/dh-window.c:709 +msgid "Contents" +msgstr "Źmieściva" + +#: ../src/dh-window.c:719 +msgid "Search" +msgstr "Šukaj" + +#: ../src/dh-window.c:1070 ../src/dh-window.c:1279 +msgid "Empty Page" +msgstr "Pustaja staronka" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Šukaj:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Šukaj papiaredniaje supadzieńnie z šukanym radkom" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Šukaj nastupnaje supadzieńnie z šukanym radkom" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "_Uličvaj rehistar" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Pieraklučy pošuk z ulikam rehistru" diff --git a/po/bg.gmo b/po/bg.gmo new file mode 100644 index 0000000..2127c87 Binary files /dev/null and b/po/bg.gmo differ diff --git a/po/bg.po b/po/bg.po new file mode 100644 index 0000000..d8f2abf --- /dev/null +++ b/po/bg.po @@ -0,0 +1,585 @@ +# Bulgarian translation of devhelp po-file. +# Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# Copyright (C) 2010, 2011, 2012, 2013 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Yavor Doganov , 2005, 2006, 2007, 2008, 2009, 2010. +# Alexander Shopov , 2009, 2010, 2011, 2012, 2013. +# Damyan Ivanov , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2013-01-09 07:34+0200\n" +"PO-Revision-Date: 2013-01-09 07:33+0200\n" +"Last-Translator: Alexander Shopov \n" +"Language-Team: Bulgarian \n" +"Language: bg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:168 ../src/dh-app.c:351 +#: ../src/dh-window.c:1020 ../src/dh-window.c:1945 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Програма за помощ на разработчика" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Браузър за документация" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"документация;информация;ръководство;апи;разработка;documentation;information;" +"manual;developer;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Степен на уголемяване на главния прозорец" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Дали главният прозорец да се стартира максимизиран." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Широчина на главния прозорец" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "Широчината на главния прозорец." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Височина на главния прозорец" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "Височината на главния прозорец." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Позиция на главния прозорец по хоризонтала" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "Позиция на главния прозорец по хоризонтала." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Позиция на главния прозорец по вертикала" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "Позиция на главния прозорец по вертикала." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Широчина на панела за съдържание и търсене" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "Широчината на панела със съдържание и търсене" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Избран подпрозорец, „content“ (Съдържание) или „search“ (Търсене)" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" +"Кой от подпрозорците да бъде избран, „content“ (Съдържание) или " +"„search“ (Търсене)." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Изключени ръководства" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "" +"Списък с ръководства, които да не се показват по желание на потребителя." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Групиране по език" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Дали в потребителския интерфейс книгите да се групират по език" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Width of the assistant window" +msgstr "Широчина на спомагателния прозорец" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "The width of the assistant window." +msgstr "Широчината на спомагателния прозорец." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Height of assistant window" +msgstr "Височина на спомагателния прозорец" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The height of the assistant window." +msgstr "Височината на спомагателния прозорец." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "X position of assistant window" +msgstr "Позиция на спомагателния прозорец по хоризонтала" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The X position of the assistant window." +msgstr "Позиция на спомагателния прозорец по хоризонтала." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "Y position of assistant window" +msgstr "Позиция на спомагателния прозорец по вертикала" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The Y position of the assistant window." +msgstr "Позиция на спомагателния прозорец по вертикала." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Use system fonts" +msgstr "Използване на системни шрифтове" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "Use the system default fonts." +msgstr "Използване на стандартните системни шрифтове." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Font for text" +msgstr "Шрифт за текст" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Font for text with variable width." +msgstr "Шрифт за текст с променлива широчина." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for fixed width text" +msgstr "Шрифт за текст с фиксирана широчина" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "Шрифт за текст с фиксирана широчина, като примери с програмен код." + +#: ../data/ui/devhelp.builder.h:1 +msgid "New window" +msgstr "Нов прозорец" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Preferences" +msgstr "Настройки" + +#: ../data/ui/devhelp.builder.h:3 +msgid "About Devhelp" +msgstr "Относно Devhelp" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Quit" +msgstr "Спиране на програмата" + +#: ../data/ui/devhelp.builder.h:5 +msgid "_Window" +msgstr "_Прозорец" + +#: ../data/ui/devhelp.builder.h:6 +msgid "New _Tab" +msgstr "Нов _подпрозорец" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Print" +msgstr "_Печат" + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Close" +msgstr "_Затваряне" + +#: ../data/ui/devhelp.builder.h:9 +msgid "_Edit" +msgstr "_Редактиране" + +#: ../data/ui/devhelp.builder.h:10 +msgid "_Copy" +msgstr "_Копиране" + +#: ../data/ui/devhelp.builder.h:11 +msgid "_Find" +msgstr "_Търсене" + +#: ../data/ui/devhelp.builder.h:12 +msgid "Find _Next" +msgstr "_Следващо съвпадение" + +#: ../data/ui/devhelp.builder.h:13 +msgid "Find _Previous" +msgstr "_Предходно съвпадение" + +#: ../data/ui/devhelp.builder.h:14 +msgid "_View" +msgstr "_Изглед" + +#: ../data/ui/devhelp.builder.h:15 +msgid "_Larger text" +msgstr "По-_голям текст" + +#: ../data/ui/devhelp.builder.h:16 +msgid "S_maller text" +msgstr "По-_малък текст" + +#: ../data/ui/devhelp.builder.h:17 +msgid "_Normal size" +msgstr "_Нормален размер" + +#: ../data/ui/devhelp.builder.h:18 +msgid "Fullscreen" +msgstr "На цял екран" + +#: ../data/ui/devhelp.builder.h:19 +msgid "_Go" +msgstr "_Отиване" + +#: ../data/ui/devhelp.builder.h:20 +msgid "_Back" +msgstr "На_зад" + +#: ../data/ui/devhelp.builder.h:21 +msgid "_Forward" +msgstr "На_пред" + +#: ../data/ui/devhelp.builder.h:22 +msgid "_Search Tab" +msgstr "_Търсене" + +#: ../data/ui/devhelp.builder.h:23 +msgid "_Contents Tab" +msgstr "_Съдържание" + +#: ../data/ui/devhelp.builder.h:24 +msgid "Go to the previous page" +msgstr "Отиване на предходната страница" + +#: ../data/ui/devhelp.builder.h:25 +msgid "Go to the next page" +msgstr "Отиване на следващата страница" + +#: ../data/ui/devhelp.builder.h:26 +msgid "Decrease the text size" +msgstr "Намаляване на размера на текста" + +#: ../data/ui/devhelp.builder.h:27 +msgid "Increase the text size" +msgstr "Увеличаване на размера на текста" + +#: ../data/ui/devhelp.builder.h:28 +msgid "_Group by language" +msgstr "_Групиране по език" + +#: ../data/ui/devhelp.builder.h:29 +msgid "Enabled" +msgstr "Включено" + +#: ../data/ui/devhelp.builder.h:30 +msgid "Title" +msgstr "Заглавие" + +#: ../data/ui/devhelp.builder.h:31 +msgid "Book Shelf" +msgstr "Набор от ръководства" + +#: ../data/ui/devhelp.builder.h:32 +msgid "_Use system fonts" +msgstr "Използване на _системните шрифтове" + +#: ../data/ui/devhelp.builder.h:33 +msgid "_Variable width: " +msgstr "_Променлива широчина:" + +#: ../data/ui/devhelp.builder.h:34 +msgid "_Fixed width:" +msgstr "_Фиксирана широчина:" + +#: ../data/ui/devhelp.builder.h:35 +msgid "Fonts" +msgstr "Шрифтове" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Поддръжка за Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" +"F2 да стартира Devhelp и да се покаже помощ за думата на позицията на курсора" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "Документация за API" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "Показване на документацията за API за думата при курсора" + +#: ../src/dh-app.c:163 +msgid "translator_credits" +msgstr "" +"Явор Доганов \n" +"Александър Шопов \n" +"\n" +"Проектът за превод на GNOME има нужда от подкрепа.\n" +"Научете повече за нас на http://gnome.cult." +"bg\n" +"Докладвайте за грешки на http://gnome." +"cult.bg/bugs" + +#: ../src/dh-app.c:170 +msgid "A developers' help browser for GNOME" +msgstr "Браузър на ръководства за разработчици на GNOME" + +#: ../src/dh-app.c:178 +msgid "DevHelp Website" +msgstr "Сайт на Devhelp" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:106 +msgid "Devhelp — Assistant" +msgstr "Devhelp — спомагателен прозорец" + +#: ../src/dh-assistant-view.c:395 +msgid "Book:" +msgstr "Ръководство:" + +#: ../src/dh-book.c:256 +#, c-format +msgid "Language: %s" +msgstr "Език: %s" + +#: ../src/dh-book.c:257 +msgid "Language: Undefined" +msgstr "Език: незададен" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Ръководство" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Страница" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Ключова дума" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Функция" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Макрос" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Изброен тип" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Тип" + +#: ../src/dh-main.c:48 +msgid "Opens a new Devhelp window" +msgstr "Отваряне на нов прозорец на Devhelp" + +#: ../src/dh-main.c:53 +msgid "Focus the Devhelp window with the search field active" +msgstr "" +"Фокусиране на прозореца на Devhelp с активирано\n" +" поле за търсене" + +#: ../src/dh-main.c:58 +msgid "Search for a keyword" +msgstr "Търсене за ключова дума" + +#: ../src/dh-main.c:59 ../src/dh-main.c:64 +msgid "KEYWORD" +msgstr "КЛЮЧОВА_ДУМА_" + +#: ../src/dh-main.c:63 +msgid "Search and display any hit in the assistant window" +msgstr "" +"Търсене и изобразяване на съвпадения в\n" +" спомагателния прозорец" + +#: ../src/dh-main.c:68 +msgid "Display the version and exit" +msgstr "Показване на версията и изход" + +#: ../src/dh-main.c:73 +msgid "Quit any running Devhelp" +msgstr "Изход от всички стартирани програми Devhelp" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Очакваше се „%s“, но беше получено „%s“ на ред %d, колона %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Невалидно пространство от имена „%s“ на ред %d, колона %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"необходими са елементи „title“ (заглавие), „name“ (име) и „link“ (връзка) на " +"ред %d, колона %d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"необходими са елементи „name“ (име) и „link“ (връзка) в на ред %d, " +"колона %d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"необходими са елементи „name“ (име) и „link“ (връзка) в „%s“ на ред %d, " +"колона %d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "необходим е елемент „type“ (тип) в на ред %d, колона %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Ръководството „%s“ не може да се разкомпресира: %s" + +#: ../src/dh-search.c:492 +msgid "All books" +msgstr "Всички ръководства" + +#: ../src/dh-search.c:1110 +msgid "Search in:" +msgstr "Търсене в:" + +#: ../src/dh-window.c:103 +msgid "50%" +msgstr "50 %" + +#: ../src/dh-window.c:104 +msgid "75%" +msgstr "75 %" + +#: ../src/dh-window.c:105 +msgid "100%" +msgstr "100 %" + +#: ../src/dh-window.c:106 +msgid "125%" +msgstr "125 %" + +#: ../src/dh-window.c:107 +msgid "150%" +msgstr "150 %" + +#: ../src/dh-window.c:108 +msgid "175%" +msgstr "175 %" + +#: ../src/dh-window.c:109 +msgid "200%" +msgstr "200 %" + +#: ../src/dh-window.c:110 +msgid "300%" +msgstr "300 %" + +#: ../src/dh-window.c:111 +msgid "400%" +msgstr "400 %" + +#: ../src/dh-window.c:1099 +msgid "Contents" +msgstr "Съдържание" + +#: ../src/dh-window.c:1108 +msgid "Search" +msgstr "Търсене" + +#: ../src/dh-window.c:1348 +msgid "Error opening the requested link." +msgstr "Грешка при отваряне на връзката." + +#: ../src/dh-window.c:1726 ../src/dh-window.c:1973 +msgid "Empty Page" +msgstr "Празна страница" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Търсене:" + +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Предходно съвпадение" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Намиране на предходното съвпадение на търсения низ" + +#: ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Следващо съвпадение" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Намиране на следващото съвпадение на търсения низ" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "_Зачитане на малки/големи" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Търсене със зачитане на малки/големи букви" diff --git a/po/bn.gmo b/po/bn.gmo new file mode 100644 index 0000000..8740318 Binary files /dev/null and b/po/bn.gmo differ diff --git a/po/bn.po b/po/bn.po new file mode 100644 index 0000000..9c4508e --- /dev/null +++ b/po/bn.po @@ -0,0 +1,533 @@ +# Translation of devhelp to Bengali +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# +# Runa Bhattacharjee , 2007. +# Khandakar Mujahidul Islam , 2007. +# Loba Yeasmeen , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: bn\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&component=general\n" +"POT-Creation-Date: 2010-01-25 19:50+0000\n" +"PO-Revision-Date: 2010-01-25 11:31+0600\n" +"Last-Translator: Loba Yeasmeen \n" +"Language-Team: Bengali \n" +"Language: bn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "ডেভেলপারদের সহায়ক প্রোগ্রাম" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:235 +#: ../src/dh-window.c:736 ../src/dh-window.c:1043 ../src/dh-window.c:1849 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ডকুমেন্টেশন ব্রাউজার" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed width text" +msgstr "অপরিবর্তনযোগ্য পাঠ্যে ব্যবহৃত ফন্ট" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "টেক্সটে ব্যবহৃত ফন্ট" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width, such as code examples." +msgstr "অপরিবর্তনযোগ্য প্রস্থের টেক্সটে ব্যবহৃত ফন্ট, কোড উদাহরণের ন্যায়।" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "পরিবর্তনযোগ্য প্রস্থের টেক্সটে ব্যবহৃত ফন্ট।" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of assistant window" +msgstr "সহায়ক উইন্ডোর উচ্চতা" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Height of main window" +msgstr "প্রধান উইন্ডোর উচ্চতা" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "সর্বোচ্চ মাপে প্রধান উইন্ডো" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "নির্বাচিত ট্যাব: \"content\" অথবা \"search\"" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the assistant window." +msgstr "সহায়ক উইন্ডোর X অবস্থান।" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The X position of the main window." +msgstr "প্রধান উইন্ডোর X অবস্থান।" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The Y position of the assistant window." +msgstr "সহায়ক উইন্ডোর Y অবস্থান।" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The Y position of the main window." +msgstr "প্রধান উইন্ডোর Y অবস্থান।" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The height of the assistant window." +msgstr "সহায়ক উইন্ডোর উচ্চতা।" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the main window." +msgstr "প্রধান উইন্ডোর উচ্চতা।" + +#: ../data/devhelp.schemas.in.h:15 +msgid "The width of the assistant window." +msgstr "সহায়ক উইন্ডোর প্রস্থ।" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The width of the index and search pane." +msgstr "সূচি ও অনুসন্ধানের পেইনের প্রস্থ।" + +#: ../data/devhelp.schemas.in.h:17 +msgid "The width of the main window." +msgstr "প্রধান উইন্ডোর প্রস্থ।" + +#: ../data/devhelp.schemas.in.h:18 +msgid "Use system fonts" +msgstr "সিস্টেমের ফন্ট ব্যবহৃত হবে" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Use the system default fonts." +msgstr "সিস্টেমের ডিফল্ট ফন্ট ব্যবহৃত হবে।" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Whether the main window should start maximized." +msgstr "প্রধান উইন্ডোটি সর্বোচ্চ আকারে প্রদর্শন শুরু করা হবে কি না।" + +#: ../data/devhelp.schemas.in.h:21 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "কোন ট্যাবটি নির্বাচন করা হবে: \"content\" অথবা \"search\"।" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Width of the assistant window" +msgstr "সহায়ক উইন্ডোর প্রস্থ" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Width of the index and search pane" +msgstr "সূচি ও অনুসন্ধানের পেইনের প্রস্থ" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Width of the main window" +msgstr "প্রধান উইন্ডোর প্রস্থ" + +#: ../data/devhelp.schemas.in.h:25 +msgid "X position of assistant window" +msgstr "সহায়ক উইন্ডোর X অবস্থান" + +#: ../data/devhelp.schemas.in.h:26 +msgid "X position of main window" +msgstr "প্রধান উইন্ডোর X অবস্থান" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Y position of assistant window" +msgstr "সহায়ক উইন্ডোর Y অবস্থান" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Y position of main window" +msgstr "প্রধান উইন্ডোর Y অবস্থান" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp সমর্থন" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F2-র সাহায্যে কার্সার দ্বারা চিহ্নিত শব্দের জন্য Devhelp আরম্ভ করা হয়" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation" +msgstr "API ডকুমেন্টেশন প্রদর্শন করা হবে" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:40 +msgid "Show API Documentation for the word at the cursor" +msgstr "কার্সারের অবস্থানে বিদ্যমান শব্দের জন্য API ডকুমেন্টেশন প্রদর্শন করা হবে" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp — সহকারী" + +#: ../src/dh-assistant-view.c:328 +msgid "Book:" +msgstr "বই:" + +#. i18n: a documentation book +#: ../src/dh-link.c:255 +msgid "Book" +msgstr "বই:" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:258 +msgid "Page" +msgstr "পৃষ্ঠা:" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:262 +msgid "Keyword" +msgstr "কীওয়ার্ড" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:267 +msgid "Function" +msgstr "ফাংশন" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:272 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:277 +msgid "Macro" +msgstr "ম্যাক্রো" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Type" +msgstr "Type" + +#: ../src/dh-main.c:175 +msgid "Search for a keyword" +msgstr "কীওয়ার্ড অনুসন্ধান করুন" + +#: ../src/dh-main.c:180 +msgid "Quit any running Devhelp" +msgstr "চলমান Devhelp বন্ধ করুন" + +#: ../src/dh-main.c:185 +msgid "Display the version and exit" +msgstr "সংস্করণ সংখ্যা প্রদর্শন করে প্রস্থান করা হবে" + +#: ../src/dh-main.c:190 +msgid "Focus the Devhelp window with the search field active" +msgstr "অনুসন্ধানের ক্ষেত্র সক্রিয় করে devhelp উইন্ডো ফোকাস করা হবে" + +#: ../src/dh-main.c:195 +msgid "Search and display any hit in the assistant window" +msgstr "সহকারী উইন্ডোতে যেকোন হিট অনুসন্ধান করে প্রদর্শন করুন" + +#: ../src/dh-parser.c:92 ../src/dh-parser.c:189 ../src/dh-parser.c:253 +#: ../src/dh-parser.c:263 +#| msgid "Expected '%s', got '%s' at line %d, column %d" +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "প্রত্যাশিত মান '%1$s', %3$d লাইনের কলাম %4$d এ প্রাপ্ত মান '%2$s'" + +#: ../src/dh-parser.c:109 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "অবৈধ namespace '%s', পংক্তি %d, কলাম %d-এ" + +#: ../src/dh-parser.c:140 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "\"title\", \"name\" এবং \"link\" বিষয়বস্তু, %d লাইনের কলাম %d-এ আবশ্যক" + +#: ../src/dh-parser.c:208 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +" এর মধ্যে \"name\" এবং \"link\" এর বিষয়বস্তু লাইন %d, কলাম %d-এ আবশ্যক" + +#: ../src/dh-parser.c:288 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "'%s এর মধ্যে \"name\" এবং \"link\" বিষয়বস্তু লাইন %d, কলাম %d এ আবশ্যক" + +#: ../src/dh-parser.c:301 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr " এর মধ্যে \"type\" এর বিষয়বস্তু লাইন %d, কলাম %d এ আবশ্যক" + +#: ../src/dh-parser.c:506 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' বইটি আন-কম্প্রেস করতে ব্যর্থ: %s" + +#: ../src/dh-search.c:509 +msgid "All books" +msgstr "সকল বই" + +#: ../src/dh-search.c:587 +msgid "Search in:" +msgstr "অনুসন্ধান করুন:" + +#: ../src/dh-window.c:95 +msgid "50%" +msgstr "৫০%" + +#: ../src/dh-window.c:96 +msgid "75%" +msgstr "৭৫%" + +#: ../src/dh-window.c:97 +msgid "100%" +msgstr "১০০%" + +#: ../src/dh-window.c:98 +msgid "125%" +msgstr "১২৫%" + +#: ../src/dh-window.c:99 +msgid "150%" +msgstr "১৫০%" + +#: ../src/dh-window.c:100 +msgid "175%" +msgstr "১৭৫%" + +#: ../src/dh-window.c:101 +msgid "200%" +msgstr "২০০%" + +#: ../src/dh-window.c:102 +msgid "300%" +msgstr "৩০০%" + +#: ../src/dh-window.c:103 +msgid "400%" +msgstr "৪০০%" + +#: ../src/dh-window.c:731 +msgid "translator_credits" +msgstr "" +"অঙ্কুর প্রকল্পের পক্ষে, রুণা ভট্টাচার্য্য \n" +"খন্দকার মুজাহিদুল ইসলাম সুজন \n" +"লোবা ইয়াসমীন " + +#: ../src/dh-window.c:738 +msgid "A developers' help browser for GNOME" +msgstr "GNOME এর ক্ষেত্রে প্রযোজ্য ডেভেলপারদের জন্য সহায়িকা ব্রাউজার" + +#: ../src/dh-window.c:768 +msgid "_File" +msgstr "ফাইল (_F)" + +#: ../src/dh-window.c:769 +msgid "_Edit" +msgstr "সম্পাদনা (_E)" + +#: ../src/dh-window.c:770 +msgid "_View" +msgstr "প্রদর্শন (_V)" + +#: ../src/dh-window.c:771 +msgid "_Go" +msgstr "গন্তব্য (_G)" + +#: ../src/dh-window.c:772 +msgid "_Help" +msgstr "সহায়িকা (_H)" + +#. File menu +#: ../src/dh-window.c:775 +msgid "_New Window" +msgstr "নতুন উইন্ডো (_N)" + +#: ../src/dh-window.c:777 +msgid "New _Tab" +msgstr "নতুন ট্যাব (_T)" + +#: ../src/dh-window.c:779 +msgid "_Print…" +msgstr "মুদ্রণ… (_P)" + +#: ../src/dh-window.c:791 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "পরবর্তী উপস্থিত অনুসন্ধান" + +#: ../src/dh-window.c:793 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "পূর্ববর্তী উপস্থিতি অনুসন্ধান" + +#: ../src/dh-window.c:800 +msgid "Go to the previous page" +msgstr "পূর্ববর্তী পৃষ্ঠায় যান" + +#: ../src/dh-window.c:803 +msgid "Go to the next page" +msgstr "পরবর্তী পৃষ্ঠায় যান" + +#: ../src/dh-window.c:806 +msgid "_Contents Tab" +msgstr "বিষয়বস্তু ট্যাব (_C)" + +#: ../src/dh-window.c:809 +msgid "_Search Tab" +msgstr "অনুসন্ধান ট্যাব (_S)" + +#. View menu +#: ../src/dh-window.c:813 +msgid "_Larger Text" +msgstr "অপেক্ষাকৃত দীর্ঘ পাঠ্য (_L)" + +#: ../src/dh-window.c:814 +msgid "Increase the text size" +msgstr "পাঠ্যের আকার বৃদ্ধি করুন" + +#: ../src/dh-window.c:816 +msgid "S_maller Text" +msgstr "অপেক্ষাকৃত ছোট পাঠ্য (_m)" + +#: ../src/dh-window.c:817 +msgid "Decrease the text size" +msgstr "পাঠ্যের আকার হ্রাস করুন" + +#: ../src/dh-window.c:819 +msgid "_Normal Size" +msgstr "স্বাভাবিক আকৃতি (_N)" + +#: ../src/dh-window.c:820 +msgid "Use the normal text size" +msgstr "স্বাভাবিক পাঠ্যের আকার ব্যবহার করুন" + +#: ../src/dh-window.c:829 +msgid "Leave fullscreen mode" +msgstr "পূর্ণপর্দা মোড থেকে বের হয়ে যান" + +#: ../src/dh-window.c:836 +msgid "Display in full screen" +msgstr "পূর্ণপর্দায় প্রদর্শন করুন" + +#. Translators: This refers to text size +#: ../src/dh-window.c:956 +msgid "Larger" +msgstr "অপেক্ষাকৃত বড়" + +#. Translators: This refers to text size +#: ../src/dh-window.c:959 +msgid "Smaller" +msgstr "অপেক্ষাকৃত বড়" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1105 +msgid "About Devhelp" +msgstr "Devhelp সম্পর্কিত" + +#: ../src/dh-window.c:1110 +msgid "Preferences…" +msgstr "পছন্দসমূহ…" + +#: ../src/dh-window.c:1153 +msgid "Contents" +msgstr "বিষয়বস্তু" + +#: ../src/dh-window.c:1163 +msgid "Search" +msgstr "অনুসন্ধান" + +#: ../src/dh-window.c:1329 +msgid "Error opening the requested link." +msgstr "অনুরোধকৃত লিঙ্ক খোলার ক্ষেত্রে ত্রুটি।" + +#: ../src/dh-window.c:1635 ../src/dh-window.c:1877 +msgid "Empty Page" +msgstr "ফাঁকা পৃষ্ঠা" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "খোঁজো:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "অনুসন্ধান করা পংক্তির পূর্ববর্তী উপস্থিতি সনাক্ত করুন" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "অনুসন্ধান করা পংক্তির পরবর্তী উপস্থিতি সনাক্ত করুন" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "অক্ষরের ছাঁদ সংবেদনশীল" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "হরফের ছাঁদ অনুযায়ী অনুসন্ধান সক্রিয় অথবা নিষ্ক্রিয় করুন" + +#~ msgid "Show advanced search options" +#~ msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্প প্রদর্শন করা হবে" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্পগুলি প্রদর্শন করা হবে কি না।" + +#~ msgid "Fonts" +#~ msgstr "ফন্ট" + +#~ msgid "Searching" +#~ msgstr "অনুসন্ধান" + +#~ msgid "_Back" +#~ msgstr "পূর্ববর্তী (_B)" + +#~ msgid "_Fixed width:" +#~ msgstr "অপরিবর্তনযোগ্য মাপ: (_F)" + +#~ msgid "_Forward" +#~ msgstr "পরবর্তী (_F)" + +#~ msgid "_Show advanced search options" +#~ msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্প প্রদর্শন করা হবে (_S)" + +#~ msgid "_Use system fonts" +#~ msgstr "সিস্টেম ফন্ট ব্যবহার করা হবে (_U)" + +#~ msgid "_Variable width: " +#~ msgstr "পরিবর্তনযোগ্য মাপ :(_V)" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %" +#~ "d" +#~ msgstr "-র মধ্যে নাম ও লিঙ্কের বিষয়বস্তু পংক্তি %d, কলাম %d-এ আবশ্যক" + +#~ msgid "Could not create book parser" +#~ msgstr "বই পার্সার নির্মাণ করতে ব্যর্থ" + +#~ msgid "Could not create markup parser" +#~ msgstr "মার্ক-আপ পার্সার নির্মাণ করতে ব্যর্থ" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "zlib সমর্থনসহ Devhelp বিল্ড করা হয়নি" diff --git a/po/bn_IN.gmo b/po/bn_IN.gmo new file mode 100644 index 0000000..90f8d77 Binary files /dev/null and b/po/bn_IN.gmo differ diff --git a/po/bn_IN.po b/po/bn_IN.po new file mode 100644 index 0000000..44093e7 --- /dev/null +++ b/po/bn_IN.po @@ -0,0 +1,397 @@ +# translation of devhelp.HEAD.po to Bengali (India) +# translation of devhelp to Bengali (India) +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# +# Runa Bhattacharjee , 2007. +# Sankarshan Mukhopadhyay , 2008. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-02-16 15:13+0000\n" +"PO-Revision-Date: 2008-03-10 14:05+0530\n" +"Last-Translator: Sankarshan Mukhopadhyay \n" +"Language-Team: Bengali (India) \n" +"Language: bn_IN\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "ডিভেলপারদের সহায়ক প্রোগ্রাম" + +#: ../data/devhelp.desktop.in.in.h:2 ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:151 ../src/dh-window.c:790 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "নথিপত্র ব্রাউজার" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "অপরিবর্তনযোগ্য টেক্সটে ব্যবহৃত ফন্ট" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "টেক্সটে ব্যবহৃত ফন্ট" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "অপরিবর্তনযোগ্য প্রস্থের টেক্সটে ব্যবহৃত ফন্ট।" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "পরিবর্তনযোগ্য প্রস্থের টেক্সটে ব্যবহৃত ফন্ট।" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "প্রধান উইন্ডোর উচ্চতা" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "সর্বোচ্চ মাপে প্রধান উইন্ডো" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "নির্বাচিত ট্যাব, \"বিষয়বস্তু\" অথবা \"অনুসন্ধান\"" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্প প্রদর্শন করা হবে" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "প্রধান উইন্ডোর X অবস্থান।" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "প্রধান উইন্ডোর Y অবস্থান।" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "প্রধান উইন্ডোর উচ্চতা।" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "সূচি ও অনুসন্ধানের পেইনের প্রস্থ।" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "প্রধান উইন্ডোর প্রস্থ।" + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "সিস্টেমের ফন্ট ব্যবহৃত হবে" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "সিস্টেমের ডিফল্ট ফন্ট ব্যবহৃত হবে।" + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্পগুলি প্রদর্শন করা হবে কি না।" + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "প্রধান উইন্ডোটি সর্বোচ্চ মাপে আরম্ভ করা হবে কি না।" + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "কোন ট্যাবটি নির্বাচন করা হবে, \"বিষয়বস্তু\" অথবা \"অনুসন্ধান\"।" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "সূচি ও অনুসন্ধানের পেইনের প্রস্থ" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "প্রধান উইন্ডোর প্রস্থ" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "প্রধান উইন্ডোর X অবস্থান" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "প্রধান উইন্ডোর Y অবস্থান" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "ফন্ট" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "অনুসন্ধান" + +#: ../data/ui/devhelp.glade.h:3 ../src/dh-window.c:519 +msgid "Contents" +msgstr "বিষয়বস্তু" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "পছন্দ" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "পূর্ববর্তী (_B)" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "অপরিবর্তনযোগ্য মাপ: (_F)" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "পরবর্তী (_F)" + +#: ../data/ui/devhelp.glade.h:9 ../src/dh-window.c:190 +msgid "_Go" +msgstr "গন্তব্য (_G)" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "অনুসন্ধান সংক্রান্ত উন্নত বিকল্প প্রদর্শন করা হবে (_S)" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "সিস্টেম ফন্ট ব্যবহার করা হবে (_U)" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "পরিবর্তনযোগ্য মাপ :(_V)" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp সহায়তা" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F7-র সাহায্যে কার্সার দ্বারা চিহ্নিত শব্দের জন্য Devhelp আরম্ভ করা হয় " + +#: ../misc/gedit-plugin/devhelp/devhelp.py:36 +msgid "Show API Documentation" +msgstr "API সহায়িকা প্রদর্শন করুন" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation for the word at the cursor" +msgstr "কার্সার দ্বারা চিহ্নিত শব্দের জন্য API সহায়িকা প্রদর্শন করুন " + +#: ../src/dh-main.c:100 +msgid "Search for a function" +msgstr "ফাংশান অনুসন্ধান করুন" + +#: ../src/dh-main.c:109 +msgid "Quit any running Devhelp" +msgstr "চলমান Devhelp বন্ধ করুন" + +#: ../src/dh-main.c:118 +msgid "Display the version and exit" +msgstr "সংস্করণ সংখ্যা প্রদর্শন করে প্রস্থান করা হবে" + +#: ../src/dh-main.c:127 +msgid "Focus the devhelp window with the search field active" +msgstr "অনুসন্ধানের ক্ষেত্র সক্রিয় করে devhelp উইন্ডো ফোকাস করা হবে" + +#: ../src/dh-parser.c:110 ../src/dh-parser.c:194 ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "প্রত্যাশিত মান '%s' প্রাপ্ত মান '%s', পংক্তির %d, কলাম %d-এ" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "অবৈধ namespace '%s', পংক্তি %d, কলাম %d-এ" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "শিরোনাম, নাম এবং লিঙ্কের বিষয়বস্তু, পংক্তি %d, কলাম %d-এ আবশ্যক" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "-র মধ্যে নাম ও লিঙ্কের বিষয়বস্তু পংক্তি %d, কলাম %d-এ আবশ্যক" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "-র মধ্যে নাম ও লিঙ্কের বিষয়বস্তু পংক্তি %d, কলাম %d-এ আবশ্যক" + +#: ../src/dh-parser.c:420 ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "বই পার্সার নির্মাণ করতে ব্যর্থ" + +#: ../src/dh-parser.c:436 ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "মার্ক-আপ পার্সার নির্মাণ করতে ব্যর্থ" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' বইটি আন-কম্প্রেস করতে ব্যর্থ: %s" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "zlib সমর্থনসহ Devhelp বিল্ড করা হয়নি" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "বই: (_B)" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "পৃষ্ঠা: (_P)" + +#: ../src/dh-window.c:70 +msgid "50%" +msgstr "৫০%" + +#: ../src/dh-window.c:71 +msgid "75%" +msgstr "৭৫%" + +#: ../src/dh-window.c:72 +msgid "100%" +msgstr "১০০%" + +#: ../src/dh-window.c:73 +msgid "125%" +msgstr "১২৫%" + +#: ../src/dh-window.c:74 +msgid "150%" +msgstr "১৫০%" + +#: ../src/dh-window.c:75 +msgid "175%" +msgstr "১৭৫%" + +#: ../src/dh-window.c:76 +msgid "200%" +msgstr "২০০%" + +#: ../src/dh-window.c:77 +msgid "300%" +msgstr "৩০০%" + +#: ../src/dh-window.c:78 +msgid "400%" +msgstr "৪০০%" + +#: ../src/dh-window.c:187 +msgid "_File" +msgstr "ফাইল (_F)" + +#: ../src/dh-window.c:188 +msgid "_Edit" +msgstr "সম্পাদনা (_E)" + +#: ../src/dh-window.c:189 +msgid "_View" +msgstr "প্রদ্রশন (_V)" + +#: ../src/dh-window.c:191 +msgid "_Help" +msgstr "সাহায্য (_H)" + +#. File menu +#: ../src/dh-window.c:194 +msgid "_New Window" +msgstr "নতুন উইন্ডো (_N)" + +#: ../src/dh-window.c:196 +msgid "New _Tab" +msgstr "নতুন ট্যাব (_T)" + +#: ../src/dh-window.c:208 ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "পরবর্তী উপস্থিত অনুসন্ধান" + +#: ../src/dh-window.c:210 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "পূর্ববর্তী উপস্থিতি অনুসন্ধান" + +#: ../src/dh-window.c:217 +msgid "Go to the previous page" +msgstr "পূর্ববর্তী পৃষ্ঠায় চলুন" + +#: ../src/dh-window.c:220 +msgid "Go to the next page" +msgstr "পরবর্তী পৃষ্ঠায় চলুন" + +#: ../src/dh-window.c:223 +msgid "_Contents Tab" +msgstr "বিষয়বস্তু ট্যাব (_C)" + +#: ../src/dh-window.c:226 +msgid "_Search Tab" +msgstr "অনুসন্ধান ট্যাব (_S)" + +#. View menu +#: ../src/dh-window.c:230 +msgid "_Larger Text" +msgstr "বড় মাপের টেক্সট (_L)" + +#: ../src/dh-window.c:231 +msgid "Increase the text size" +msgstr "টেক্সট-এর মাপ বড় করুন" + +#: ../src/dh-window.c:233 +msgid "S_maller Text" +msgstr "টেক্সট-এর মাপ ছোট করুন (_m)" + +#: ../src/dh-window.c:234 +msgid "Decrease the text size" +msgstr "টেক্সট-এর মাপ ছোট করুন" + +#: ../src/dh-window.c:236 +msgid "_Normal size" +msgstr "স্বাভাবিক মাপ (_N)" + +#: ../src/dh-window.c:237 +msgid "Use the normal text size" +msgstr "স্বাভাবিক মাপের টেক্সট ব্যবহার করুন " + +#: ../src/dh-window.c:529 +msgid "Search" +msgstr "অনুসন্ধান" + +#: ../src/dh-window.c:787 +msgid "translator_credits" +msgstr "রুণা ভট্টাচার্য্য " + +#: ../src/dh-window.c:792 +msgid "A developer's help browser for GNOME 2" +msgstr "GNOME 2-র ক্ষেত্রে প্রযোজ্য ডিভেলপারদের জন্য সহায়ক তথ্যের ব্রাউজার" + +#: ../src/dh-window.c:1186 ../src/dh-window.c:1381 +msgid "Empty Page" +msgstr "ফাঁকা পৃষ্ঠা" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "অনুসন্ধান:" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "অনুসন্ধান করা পংক্তির পূর্ববর্তী উপস্থিতি সনাক্ত করুন" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "অনুসন্ধান করা পংক্তির পরবর্তী উপস্থিতি সনাক্ত করুন" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "হরফের ছাঁদ সম্পর্কে সচেতন" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "হরফের ছাঁদ অনুযায়ী অনুসন্ধান সক্রিয় অথবা নিষ্ক্রিয় করুন" diff --git a/po/boldquot.sed b/po/boldquot.sed new file mode 100644 index 0000000..4b937aa --- /dev/null +++ b/po/boldquot.sed @@ -0,0 +1,10 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g +s/“/“/g +s/”/”/g +s/‘/‘/g +s/’/’/g diff --git a/po/bs.gmo b/po/bs.gmo new file mode 100644 index 0000000..0941bc7 Binary files /dev/null and b/po/bs.gmo differ diff --git a/po/bs.po b/po/bs.po new file mode 100644 index 0000000..e3418f4 --- /dev/null +++ b/po/bs.po @@ -0,0 +1,503 @@ +# Bosnian translation for bosnianuniversetranslation +# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013 +# This file is distributed under the same license as the bosnianuniversetranslation package. +# FIRST AUTHOR , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: bosnianuniversetranslation\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2015-02-27 04:14+0000\n" +"PO-Revision-Date: 2014-10-22 14:21+0000\n" +"Last-Translator: Launchpad Translations Administrators \n" +"Language-Team: Bosnian \n" +"Language: bs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Launchpad (build 17341)\n" +"X-Launchpad-Export-Date: 2015-02-15 06:17+0000\n" + +#: ../data/devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp je preglednik API dokumentacije. Obezbeđuje lak način za kretanje " +"kroz biblioteke, pretragu prema funkciji, strukturi, ili makrou. Obezbeđuje " +"sučelje sa jezičcima i omogućava štampanje rezultata." + +#: ../data/devhelp.appdata.xml.in.h:2 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp se sjedinjuje sa drugim programima kao što je Glejd, Anjuta, ili " +"Džini." + +#: ../data/devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:212 ../src/dh-app.c:401 +#: ../src/dh-window.c:659 +msgid "Devhelp" +msgstr "DevHelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Program za pomoć programerima" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Preglednik dokumentacije" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentacija;informacija;priručnik;razvoj;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Stanje uvećanja glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Da li se glavni prozor pokreće uvećan." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Širina glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "Širina glavnog prozora." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Visina glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "Visina glavnog prozora." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Vodoravni položaj glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "X (vodoravan) položaj glavnog prozora." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Uspravni položaj glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "Y (uspravan) položaj glavnog prozora." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Širina glavnog prozora" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "Širina panela za sadržaj i pretragu." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Izabrani list: „content“ (sadržaj) ili „search“ (pretraga)" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" +"Određuje koji list je izabran: „content“ (sadržaj) ili „search“ (pretraga)." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Onemogućene knjige" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "Popis knjiga koje je onemogućio korisnik." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Grupiši po jeziku" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Da li knjige treba grupisati po jeziku u korisničkom interfejsu" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "Da li prozor pomoćnika treba uvećati." + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "Da li prozor pomoćnika treba uvećati." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Širina prozora asistenta" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "Širina prozora asistenta." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Visina prozora asistenta" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "Visina prozora asistenta." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Vodoravni položaj prozora asistenta" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "X (vodoravan) položaj prozora asistenta." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Uspravni položaj prozora asistenta" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "Y (uspravan) položaj prozora asistenta." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Koristi sistemski font" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Koristi podrazumijevane fontove iz okruženja." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Font za tekst" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Font za tekst promjenljive širine." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Font za tekst utvrđene širine" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Font za tekst utvrđene širine, kao što su primjeri programskog koda." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "DevHelp ispomoć" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F2 će pozvati DevHelp i tražiti riječ pod kursorom" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Prikaži API dokumentaciju" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "Novi _prozor" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_Postavke" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "_O Devhelpu" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_Izlaz" + +#: ../src/dh-app.c:204 +msgid "translator-credits" +msgstr " Samir Ribić https://launchpad.net/~megaribi" + +#: ../src/dh-app.c:214 +msgid "A developers' help browser for GNOME" +msgstr "Preglednik pomoći za programere u Gnom okruženju" + +#: ../src/dh-app.c:222 +msgid "DevHelp Website" +msgstr "DevHelpweb stranica" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — asistent" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Knjiga:" + +#: ../src/dh-book.c:240 +#, c-format +msgid "Language: %s" +msgstr "Jezik: %s" + +#: ../src/dh-book.c:241 +msgid "Language: Undefined" +msgstr "Jezik: Nedefinisan" + +#. i18n: a documentation book +#: ../src/dh-link.c:270 +msgid "Book" +msgstr "Knjiga" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:273 +msgid "Page" +msgstr "Strana" + +#. i18n: a search hit in the documentation, could bje a +#. * function, macro, struct, etc +#: ../src/dh-link.c:277 +msgid "Keyword" +msgstr "Ključna riječ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Struct" +msgstr "Struktura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:292 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:297 +msgid "Enum" +msgstr "Nabrajanje" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:302 +msgid "Type" +msgstr "Tip" + +#: ../src/dh-main.c:41 +msgid "Opens a new Devhelp window" +msgstr "Otvara novi Devhelp prpzor" + +#: ../src/dh-main.c:46 +msgid "Search for a keyword" +msgstr "Traži ključnu riječ" + +#: ../src/dh-main.c:47 ../src/dh-main.c:52 +msgid "KEYWORD" +msgstr "KLJUČNARIJEČ" + +#: ../src/dh-main.c:51 +msgid "Search and display any hit in the assistant window" +msgstr "Pretražuj i prikaži sve pogotke u prozoru asistenta" + +#: ../src/dh-main.c:56 +msgid "Display the version and exit" +msgstr "Prikaži oznaku verzije i izađi" + +#: ../src/dh-main.c:61 +msgid "Quit any running Devhelp" +msgstr "Zatvori sve DevHelp prozore" + +#: ../src/dh-parser.c:95 ../src/dh-parser.c:196 ../src/dh-parser.c:260 +#: ../src/dh-parser.c:270 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Očekivano je „%s“, a dobio sam „%s“ u %d. liniji %d. kolone" + +#: ../src/dh-parser.c:112 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Neispravan prostor imena „%s“ u liniji %d, koloni %d" + +#: ../src/dh-parser.c:141 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "Elementi „title“, „name“ i „link“ su obavezni u %d. liniji %d. kolone" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"Elementi „title“, „name“ i „link“ su obavezni unutar u %d. liniji %d. " +"kolone" + +#: ../src/dh-parser.c:295 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"Elementi „title“, „name“ i „link“ su obavezni unutar „%s“ u %d. liniji %d. " +"kolone" + +#: ../src/dh-parser.c:308 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "Element „type“ je obavezan unutar u %d. liniji %d. kolone" + +#: ../src/dh-parser.c:500 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Ne može da dekompresuje knjigu „%s“: %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Postavke" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Grupiši po jeziku" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Omogućeno" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Naslov" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Polica" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Koristi sistemske fontove" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_Proporcionalno širok: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_Konstantna širina:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Fontovi" + +#: ../src/dh-window.c:81 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:82 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:83 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:84 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:85 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:86 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:87 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:88 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:89 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:868 +msgid "Error opening the requested link." +msgstr "Greška prilikom otvaranja zahtjevane veze." + +#: ../src/dh-window.c:1126 +msgid "_Close" +msgstr "_Zatvori" + +#: ../src/dh-window.c:1154 ../src/dh-window.c:1327 +msgid "Empty Page" +msgstr "Prazna strana" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "Nova _kartica" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "Š_tampaj" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_Nađi" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "_Uvećaj tekst" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "U_manji tekst" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "_Normalna veličina" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_Bočna površ" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "_O programu Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Nazad" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Naprijed" diff --git a/po/ca.gmo b/po/ca.gmo new file mode 100644 index 0000000..6933167 Binary files /dev/null and b/po/ca.gmo differ diff --git a/po/ca.po b/po/ca.po new file mode 100644 index 0000000..48aa68d --- /dev/null +++ b/po/ca.po @@ -0,0 +1,614 @@ +# Devhelp translation to Catalan. +# Copyright © 2003, 2005, 2008 Free Software Foundation, Inc. +# Raül Cambeiro , 2003. +# Jordi Mallach , 2003. +# Aleix Badia i Bosch , 2005. +# Xavier Conde Rueda , 2006 +# Gil Forcada , 2007, 2008, 2009, 2010, 2012, 2013, 2014. +# Jordi Serratosa , 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-08-22 06:59+0000\n" +"PO-Revision-Date: 2017-08-22 00:27+0200\n" +"Last-Translator: Gil Forcada \n" +"Language-Team: Catalan \n" +"Language: ca\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Poedit 1.8.11\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:878 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Programa d'ajuda per als desenvolupadors" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"El Devhelp és un navegador de documentació API. Facilita la navegació per " +"biblioteques, cercar funcions, estructures o macros. Té una interfície amb " +"pestanyes i permet imprimir els resultats." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"El Devhelp s'integra amb altres aplicacions com el Glade, l'Anjuta o el " +"Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Navegador de documentació" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentació;informació;manual;desenvolupador;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Estat maximitzat de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Si la finestra principal s'ha d'iniciar maximitzada." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Amplada de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "L'amplada de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Alçada de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Alçada de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Posició X de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "La posició X de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Posició Y de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "La posició Y de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Amplada de la subfinestra d'índex i cerca" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "L'amplada de la subfinestra d'índex i cerca." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Llibres inhabilitats" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Llibres que l'usuari ha inhabilitat." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Agrupa per llenguatge" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Si a la interfície d'usuari els llibres s'haurien d'agrupar per llenguatge" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Si la finestra auxiliar s'ha de maximitzar" + +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Si la finestra auxiliar s'ha de maximitzar." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Amplada de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "L'amplada de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Alçada de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Alçada de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "Posició X de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "La posició X de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Posició Y de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "La posició Y de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Utilitza els tipus de lletra del sistema" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Utilitza els tipus de lletra predeterminats del sistema." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Tipus de lletra per al text" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Tipus de lletra per al text d'amplada variable." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Tipus de lletra per al text de mida fixa" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Tipus de lletra per al text d'amplada fixa, com ara en els exemples de codi." + +# gil: al ser un connector per el gedit i que fa el que diu la següent +# cadena, trobo que així tot i no ser correcte s'entendrà més +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Consulta el Devhelp" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostra la documentació de l'API" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Finestra _nova" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "_Preferències" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Drecera de teclat" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_Quant a" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "_Surt" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "General" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Focalitza la cerca global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Cerca a la pàgina actual" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Obre una finestra nova" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Obre una pestanya nova" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Commuta la visibilitat de la subfinestra lateral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Vés enrere" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Vés endavant" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimeix" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Tanca la finestra actual" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Tanca totes les finestres" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Amplia" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Redueix" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Reinicia el zoom" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "Un navegador d'ajuda per a desenvolupadors del GNOME" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Aleix Badia i Bosch \n" +"Xavier Conde Rueda \n" +"Gil Forcada \n" +"Pau Iranzo " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Pàgina web del Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Obre una finestra del Devhelp nova" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Cerca una paraula clau" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "PARAULA CLAU" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Cerca i visualitza qualsevol coincidència a la finestra auxiliar" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Mostra la versió i surt" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Surt de tots els Devhelp en execució" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Auxiliar" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Llibre:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Llenguatge: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Llenguatge: no definit" + +#: src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "_Col·lapsa-ho tot" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Llibre" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Pàgina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Paraula clau" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Funció" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Estructura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Enumeració" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Tipus" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Propietat" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Senyal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferències" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "A_grupa per llenguatge" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Habilitat" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Títol" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Prestatgeria" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Utilitza els tipus de lletra del sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Amplada _variable: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Amplada _fixa:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Tipus de lletra" + +#: src/dh-window.c:78 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:79 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:80 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:81 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:82 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:83 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:84 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:85 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:86 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1100 +msgid "Error opening the requested link." +msgstr "S'ha produït un error en obrir l'enllaç sol·licitat." + +#: src/dh-window.c:1417 +msgid "_Close" +msgstr "_Tanca" + +#: src/dh-window.c:1435 src/dh-window.c:1616 +msgid "Empty Page" +msgstr "Pàgina buida" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Subfinestra _lateral" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "Im_primeix" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Cerca" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "Text més _gran" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "Text més _petit" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "Mida _normal" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Subfinestra lateral" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "_Quant al Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Enrere" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Endavant" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Pestanya nova" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Pestanya seleccionada: «content» (contingut) o «search» (cerca)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Quina pestanya està seleccionada: «content» (contingut) o " +#~ "«search» (cerca)." + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "" +#~ "En prémer F2 apareixerà l'ajuda del Devhelp per a la paraula sota el " +#~ "cursor" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "S'esperava «%s» però s'ha obtingut «%s» a la línia %d, columna %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "L'espai de noms «%s» no és vàlid a la línia %d, columna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Els elements «title» (títol), «name» (nom) i «link» (enllaç) són " +#~ "necessaris a la línia %d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Els elements «name» (nom) i «link» (enllaç) són necessaris dins de " +#~ "a la línia %d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Els elements «name» (nom) i «link» (enllaç) són necessaris dins de «%s» a " +#~ "la línia %d, columna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "L'element «type» (tipus) és necessari dins de a la línia %d, " +#~ "columna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "No s'ha pogut descomprimir el llibre «%s»: %s" diff --git a/po/ca@valencia.gmo b/po/ca@valencia.gmo new file mode 100644 index 0000000..d4a7e95 Binary files /dev/null and b/po/ca@valencia.gmo differ diff --git a/po/ca@valencia.po b/po/ca@valencia.po new file mode 100644 index 0000000..6223727 --- /dev/null +++ b/po/ca@valencia.po @@ -0,0 +1,614 @@ +# Devhelp translation to Catalan. +# Copyright © 2003, 2005, 2008 Free Software Foundation, Inc. +# Raül Cambeiro , 2003. +# Jordi Mallach , 2003. +# Aleix Badia i Bosch , 2005. +# Xavier Conde Rueda , 2006 +# Gil Forcada , 2007, 2008, 2009, 2010, 2012, 2013, 2014. +# Jordi Serratosa , 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-09-10 07:20+0000\n" +"PO-Revision-Date: 2017-08-22 00:27+0200\n" +"Last-Translator: Xavi Ivars \n" +"Language-Team: Catalan \n" +"Language: ca-valencia\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Poedit 1.8.11\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:878 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Programa d'ajuda per als desenvolupadors" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"El Devhelp és un navegador de documentació API. Facilita la navegació per " +"biblioteques, buscar funcions, estructures o macros. Té una interfície amb " +"pestanyes i permet imprimir els resultats." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"El Devhelp s'integra amb altres aplicacions com el Glade, l'Anjuta o el " +"Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Navegador de documentació" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentació;informació;manual;desenvolupador;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Estat maximitzat de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Si la finestra principal s'ha d'iniciar maximitzada." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Amplària de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "L'amplària de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Alçària de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Alçària de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Posició X de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "La posició X de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Posició Y de la finestra principal" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "La posició Y de la finestra principal." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Amplària de la subfinestra d'índex i busca" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "L'amplària de la subfinestra d'índex i busca." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Llibres inhabilitats" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Llibres que l'usuari ha inhabilitat." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Agrupa per llenguatge" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Si a la interfície d'usuari els llibres s'haurien d'agrupar per llenguatge" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Si la finestra auxiliar s'ha de maximitzar" + +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Si la finestra auxiliar s'ha de maximitzar." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Amplària de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "L'amplària de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Alçària de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Alçària de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "Posició X de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "La posició X de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Posició Y de la finestra auxiliar" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "La posició Y de la finestra auxiliar." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Utilitza els tipus de lletra del sistema" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Utilitza els tipus de lletra predeterminats del sistema." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Tipus de lletra per al text" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Tipus de lletra per al text d'amplària variable." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Tipus de lletra per al text de mida fixa" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Tipus de lletra per al text d'amplària fixa, com ara en els exemples de codi." + +# gil: al ser un connector per el gedit i que fa el que diu la següent +# cadena, trobo que així tot i no ser correcte s'entendrà més +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Consulta el Devhelp" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostra la documentació de l'API" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Finestra _nova" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "_Preferències" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Drecera de teclat" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_Quant a" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "I_x" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "General" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Focalitza la busca global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Busca a la pàgina actual" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Obri una finestra nova" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Obri una pestanya nova" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Commuta la visibilitat de la subfinestra lateral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Vés arrere" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Vés avant" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimeix" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Tanca la finestra actual" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Tanca totes les finestres" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Amplia" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Redueix" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Reinicia el zoom" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "Un navegador d'ajuda per a desenvolupadors del GNOME" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Aleix Badia i Bosch \n" +"Xavier Conde Rueda \n" +"Gil Forcada \n" +"Pau Iranzo " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Pàgina web del Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Obri una finestra del Devhelp nova" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Busca una paraula clau" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "PARAULA CLAU" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Busca i visualitza qualsevol coincidència a la finestra auxiliar" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Mostra la versió i ix" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Ix de tots els Devhelp en execució" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Auxiliar" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Llibre:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Llenguatge: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Llenguatge: no definit" + +#: src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "_Col·lapsa-ho tot" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Llibre" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Pàgina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Paraula clau" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Funció" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Estructura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Enumeració" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Tipus" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Propietat" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Senyal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferències" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "A_grupa per llenguatge" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Habilitat" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Títol" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Prestatgeria" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Utilitza els tipus de lletra del sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Amplària _variable: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Amplària _fixa:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Tipus de lletra" + +#: src/dh-window.c:78 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:79 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:80 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:81 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:82 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:83 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:84 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:85 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:86 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1100 +msgid "Error opening the requested link." +msgstr "S'ha produït un error en obrir l'enllaç sol·licitat." + +#: src/dh-window.c:1417 +msgid "_Close" +msgstr "_Tanca" + +#: src/dh-window.c:1435 src/dh-window.c:1616 +msgid "Empty Page" +msgstr "Pàgina buida" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Subfinestra _lateral" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "Im_primeix" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Cerca" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "Text més _gran" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "Text més _petit" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "Mida _normal" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Subfinestra lateral" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "_Quant al Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Arrere" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Avant" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Pestanya nova" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Pestanya seleccionada: «content» (contingut) o «search» (cerca)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Quina pestanya està seleccionada: «content» (contingut) o " +#~ "«search» (cerca)." + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "" +#~ "En prémer F2 apareixerà l'ajuda del Devhelp per a la paraula sota el " +#~ "cursor" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "S'esperava «%s» però s'ha obtingut «%s» a la línia %d, columna %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "L'espai de noms «%s» no és vàlid a la línia %d, columna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Els elements «title» (títol), «name» (nom) i «link» (enllaç) són " +#~ "necessaris a la línia %d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Els elements «name» (nom) i «link» (enllaç) són necessaris dins de " +#~ "a la línia %d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Els elements «name» (nom) i «link» (enllaç) són necessaris dins de «%s» a " +#~ "la línia %d, columna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "L'element «type» (tipus) és necessari dins de a la línia %d, " +#~ "columna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "No s'ha pogut descomprimir el llibre «%s»: %s" diff --git a/po/cs.gmo b/po/cs.gmo new file mode 100644 index 0000000..a82d3c6 Binary files /dev/null and b/po/cs.gmo differ diff --git a/po/cs.po b/po/cs.po new file mode 100644 index 0000000..eaf4aa2 --- /dev/null +++ b/po/cs.po @@ -0,0 +1,527 @@ +# Czech translation of devhelp. +# Copyright (C) 2002, 2003, 2004, 2009, 2010 the author(s) of devhelp. +# Copyright (C) 2004, 2006 Miloslav Trmac . +# This file is distributed under the same license as the devhelp package. +# +# Miloslav Trmac , 2002, 2003, 2004, 2006. +# Petr Kovar , 2009. +# Lucas Lommer , 2008, 2009, 2010. +# Marek Černocký , 2010, 2012, 2013, 2014, 2015, 2016, 2017, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-22 10:13+0100\n" +"Last-Translator: Marek Černocký \n" +"Language-Team: čeština \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" +"X-Generator: Gtranslator 2.91.7\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "DevHelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Vývojářský nástroj pro procházení a vyhledávání v dokumentaci API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp je vývojářský nástroj sloužící k procházení a vyhledávání v " +"dokumentaci API. Poskytuje jednoduchý způsob procházení knihoven a " +"vyhledávání funkcí, struktur či maker." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentace musí být uložená lokálně, takže k používání aplikace Devhelp " +"není zapotřebí připojení k Internetu." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhlep pracuje přirozeně s GTK-Doc, takže knihovny GTK+ a GNOME jsou velmi " +"dobře podporované. Stejně dobrou podporu mohou mít ale i ostatní platformy, " +"protože dokumentace API je dostupná v HTML a je vygenerován indexový soubor " +"*.devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp je integrován s dalšími vývojářskými aplikacemi, jako jsou Glade, " +"Builder nebo Anjuta a jsou k dispozici zásuvné moduly pro různé textové " +"editory (gedit, Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Prohlížeč dokumentace API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentace;informace;příručka;návod;vývojář;vývoj;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stav maximalizace hlavního okna" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Jestli má hlavní okno být po spuštění maximalizované." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Šířka hlavního okna" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Šířka hlavního okna." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Výška hlavního okna" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Výška hlavního okna." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Šířka panelu rejstříku a hledání" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Šířka panelu rejstříku a hledání." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Zakázané knihy" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Seznam knih zakázaných uživatelem." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Seskupit podle jazyka" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Zda by knihy měly být v uživatelském rozhraní seskupeny podle jazyka" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Šířka asistenčního okna" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Šířka asistenčního okna." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Výška asistenčního okna" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Výška asistenčního okna." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Používat systémová písma" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Používat výchozí písma systému." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Písmo pro text" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Písmo pro text s proměnnou šířkou." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Písmo pro text s pevnou šířkou" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Písmo pro text s pevnou šířkou, například ukázky kódu." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Podpora DevHelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Zobrazit dokumentaci API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Miloslav Trmač \n" +"Lucas Lommer \n" +"Marek Černocký " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Webové stránky Devhelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Otevřít nové okno Devhelp" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Hledat klíčové slovo" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "KLÍČOVÉ_SLOVO" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Vyhledat a zobrazit každý výskyt v asistenčním okně" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Zobrazit verzi a skončit" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Ukončit všechny běžící instance DevHelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "DevHelp — Asistent" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Kniha:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Jazyk: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Jazyk: neurčen" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "S_balit vše" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Kniha" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Strana" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Klíčové slovo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkce" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Vlastnost" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signál" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Předvolby" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Seskupit podle jazyka" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Zapnuto" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Název" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Knihovnička" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "Po_užívat systémová písma" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Pr_oměnná šířka:" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "P_evná šířka:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Písma" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Prázdná strana" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Chyba při otevírání požadovaného odkazu." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Po_stranní panel" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Tisk" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Hledat" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Větší t_ext" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Menší text" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Normální velikost" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nové _okno" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Předvolby" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Klávesové zkratky" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Nápo_věda" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "O _aplikaci DevHelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "U_končit" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Zpět" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Vpřed" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nová karta" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Obecné" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Zadat globální hledání" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Najít na aktuální stránce" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Otevřít nové okno" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Otevřít novou kartu" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Přepnout viditelnost postranního panelu" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Přejít zpět" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Přejít vpřed" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Vytisknout" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zavřít aktuální okno" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zavřít všechna okna" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Přiblížení" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Přiblížit" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Oddálit" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Základní přiblížení" + +#: src/menus.ui:50 +msgid "_About" +msgstr "O _aplikaci" + +#~ msgid "50%" +#~ msgstr "50 %" + +#~ msgid "75%" +#~ msgstr "75 %" + +#~ msgid "100%" +#~ msgstr "100 %" + +#~ msgid "125%" +#~ msgstr "125 %" + +#~ msgid "150%" +#~ msgstr "150 %" + +#~ msgid "175%" +#~ msgstr "175 %" + +#~ msgid "200%" +#~ msgstr "200 %" + +#~ msgid "300%" +#~ msgstr "300 %" + +#~ msgid "400%" +#~ msgstr "400 %" + +#~ msgid "_Close" +#~ msgstr "_Zavřít" + +#~ msgid "Side _Panel" +#~ msgstr "Po_stranní panel" diff --git a/po/da.gmo b/po/da.gmo new file mode 100644 index 0000000..f6fb051 Binary files /dev/null and b/po/da.gmo differ diff --git a/po/da.po b/po/da.po new file mode 100644 index 0000000..0108030 --- /dev/null +++ b/po/da.po @@ -0,0 +1,611 @@ +# Danish translation for DevHelp. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# +# Ole Laursen , 2001, 02, 03, 04. +# Martin Willemoes Hansen , 2004. +# Ask Hjorth Larsen , 2007, 08, 09, 10, 12, 13, 14, 16, 17, 18. +# scootergrisen, 2016. +# +# Konventioner +# ------------ +# +# Devhelp -> Devhelp +# assistant window -> hjælpervindue +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-03-02 18:48+0100\n" +"Last-Translator: Ask Hjorth Larsen \n" +"Language-Team: Danish \n" +"Language: da\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Et udviklerværktøj til at gennemse og søge i API-dokumentation" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "Devhelp er et udviklerværktøj til at gennemse og søge i API-dokumentation. Programmet gør det nemt at navigere mellem biblioteker og at søge efter funktioner, structer eller makroer." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "Dokumentationen skal være installeret lokalt, så internetforbindelse er ikke nødvendigt til at bruge DevHelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "Devhelp er skrevet til GTK-Doc, så bibliotekerne til GTK+ og GNOME har god understøttelse. Andre udviklingsplatforme kan også understøttes, så længe API-dokumentationen er tilgængelig i HTML og der genereres en *.devhelp2-indeksfil." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "Devhelp integrerer med andre programmer såsom Glade, Builder og Anjuta, og der findes udvidelsesmoduler til forskellige tekstredigeringsprogrammer (gedit, Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API-dokumentationsfremviser" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentation;information;oplysninger;manual;håndbog;udvikler;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Hovedvindue i maksimeret tilstand" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Om hovedvinduet skal åbne maksimeret eller ej." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Hovedvinduets bredde" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Hovedvinduets bredde." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Højde af hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Hovedvinduets højde." + +# scootergrisen: måske "søgerude" +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Bredden af indeks- og søgepanelerne" + +# scootergrisen: måske "søgerude" +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Bredden af indeks- og søgepanelerne." + +# jf. "List of books disabled by the user" +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Bøger som er slået fra" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Liste af bøger som er slået fra af brugeren." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Gruppér efter sprog" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Om bøger skal grupperes efter sprog i brugerfladen" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Hjælpervinduets bredde" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Hjælpervinduets bredde." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Højde af hjælpervinduet" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Hjælpervinduets højde." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Brug systemets skrifttyper" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Brug systemets standard-skrifttyper." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Skrifttype for tekst" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Skrifttype for tekst med variabel bredde." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Skrifttype for tekst med fast bredde" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Skrifttype for tekst med fast bredde, såsom kodeeksempler." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Hjælp til Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Vis API-dokumentation" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Ole Laursen\n" +"Martin Willemoes Hansen\n" +"Ask Hjorth Larsen\n" +"scootergrisen\n" +"\n" +"Dansk-gruppen \n" +"Mere info: http://www.dansk-gruppen.dk" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Hjemmeside for Devhelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Åbner et nyt Devhelp-vindue" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Søg efter et nøgleord" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "NØGLEORD" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Søg og vis resultater i hjælpervinduet" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Vis versionsnummeret og afslut" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Afslut enhver kørende Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Udviklerhjælp" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Bog:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Sprog: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Sprog: udefineret" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Sammenfold alle" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Bog" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Side" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Nøgleord" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funktion" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Egenskab" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Indstillinger" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Gruppér efter sprog" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Aktiveret" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titel" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Boghylde" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Brug systemets skrifttyper" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Variabel bredde: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Fast bredde:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Skifttyper" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Tom side" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Fejl ved åbning af den forespurgte henvisning." + +# scootergrisen: måske "_Siderude" +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Side_panel" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Udskriv" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Find" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Større tekst" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Mindre tekst" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Normal størrelse" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nyt _vindue" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Indstillinger" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Tastaturgenveje" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Hjælp" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Om Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Afslut" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Tilbage" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Fremad" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nyt faneblad" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Generelt" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Giv fokus til global søgning" + +# scootergrisen: måske aktuelle +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Find på nuværende side" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Åbn et nyt vindue" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Åbn et nyt faneblad" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Gør sidebjælken synlig/usynlig" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Gå tilbage" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Gå fremad" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Udskriv" + +# scootergrisen: måske aktuelle +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Luk det nuværende vindue" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Luk alle vinduer" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zoom ind" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zoom ud" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Nulstil zoom" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Om" + +#~ msgid "Developer’s Help program" +#~ msgstr "Hjælpeprogram til udviklere" + +#~ msgid "X position of main window" +#~ msgstr "Hovedvinduets x-position" + +#~ msgid "The X position of the main window." +#~ msgstr "Hovedvinduets x-position." + +#~ msgid "Y position of main window" +#~ msgstr "Hovedvinduets y-position" + +#~ msgid "The Y position of the main window." +#~ msgstr "Hovedvinduets y-position." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Om hjælpervinduet skal maksimeres" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Om hjælpervinduet skal maksimeres." + +#~ msgid "X position of assistant window" +#~ msgstr "Hjælpervinduets x-position" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Hjælpervinduets x-position." + +#~ msgid "Y position of assistant window" +#~ msgstr "Hjælpervinduets y-position" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Hjælpervinduets y-position." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "En hjælpefremviser for udviklere til GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Luk" + +# scootergrisen: måske "_Siderude" +#~ msgid "Side _Panel" +#~ msgstr "Side_panel" + +# Kan også betyde "faneblad valgt", men at dømme efter en senere msgid (which of the tabs that is selected), er dette ikke tilfældet +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Valgt faneblad: “indhold” eller “søg”" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Hvilket af fanebladene der er valgt: “indhold” eller “søg”." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Forventede “%s”, modtog “%s” på linje %d, kolonne %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Ugyldigt navnerum “%s” på linje %d, kolonne %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Elementerne “title”, “name” og “link” kræves på linje %d, kolonne %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementerne \"name\" og \"link\" kræves inden i på linje %d, " +#~ "kolonne %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementerne “name” og “link” kræves inden i “%s” på linje %d, kolonne %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Elementet \"type\" kræves inden i på linje %d, kolonne %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Kan ikke udpakke bogen “%s”: %s" + +# scootergrisen: måske "_Siderude" +#~ msgid "_Side pane" +#~ msgstr "_Sidepanel" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Får F2 til at starte Devhelp for ordet ved markøren" diff --git a/po/de.gmo b/po/de.gmo new file mode 100644 index 0000000..68cd216 Binary files /dev/null and b/po/de.gmo differ diff --git a/po/de.po b/po/de.po new file mode 100644 index 0000000..962e5a0 --- /dev/null +++ b/po/de.po @@ -0,0 +1,549 @@ +# German translation for devhelper. +# Copyright (C) 2001 Free Software Foundation, Inc. +# Christian Meyer , 2001. +# Christian Neumair , 2002, 2003, 2004. +# Frank Arnold , 2005. +# Hendrik Richter , 2007. +# Johannes Schmid , 2007. +# Andre Klapper , 2008. +# Philipp Kerling , 2008. +# Mario Blättermann , 2009-2013, 2016-2018. +# Christian Kirbach , 2009, 2010. +# Wolfgang Stöggl , 2014. +# Paul Seyfert , 2015. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-21 10:03+0000\n" +"PO-Revision-Date: 2018-01-22 11:13+0100\n" +"Last-Translator: Mario Blättermann \n" +"Language-Team: Deutsch \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 2.0.5\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:100 src/dh-app.c:438 +#: src/dh-window.c:736 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:102 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Ein Entwicklerwerkzeug zum Durchsuchen der API-Dokumentation" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp ist ein Entwicklerwerkzeug zum Durchsuchen der API-Dokumentation. " +"Auf einfache Art und Weise können Bibliotheken angezeigt und nach Funktion, " +"Struct (Datenstruktur) oder Makro durchsucht werden." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Die Dokumentation muss lokal installiert sein, daher ist zur Nutzung von " +"Devhelp keine Internetverbindung erforderlich." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp funktioniert nativ mit GTK-Doc, daher werden die GTK- und GNOME-" +"Bibliotheken gut unterstützt. Auch andere Entwicklungsplattformen können " +"unterstützt werden, sofern die API-Dokumentation im HTML-Format vorliegt und " +"eine Indexdatei mit der Endung *.devhelp2 erstellt wurde." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp ist automatisch in anderen Anwendungen wie Glade, Builder oder " +"Anjuta integriert. Erweiterungen sind für verschiedene Texteditoren " +"verfügbar (gedit, Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "API-Dokumentationsbrowser" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "Dokumentation;Information;Handbuch;Entwickler;API;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Hauptfenstermaximierungsstatus" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Legt fest, ob das Hauptfenster beim Start maximiert ist." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Breite des Hauptfensters" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Die Breite des Hauptfensters." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Höhe des Hauptfensters" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Die Höhe des Hauptfensters." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Breite des Index- und Suchabschnitts" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Die Breite des Index- und Suchabschnitts." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Bücher deaktiviert" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Bücherliste wurde vom Benutzer deaktiviert." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Nach Sprache gruppieren" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Legt fest, ob Bücher in der Benutzeroberfläche nach Sprache gruppiert werden " +"sollen" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Breite des Zusatzfensters" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Die Breite des Zusatzfensters." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Höhe des Zusatzfensters" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Die Höhe des Zusatzfensters." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Systemschrift verwenden" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Die vom System vorgegebenen Schriften verwenden." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Textschrift" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Schrift für Text variabler Schriftzeichenbreite." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Schrift für dicktengleichen Text" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Schrift für Text gleicher Schriftzeichenbreite wie z.B. Programmcode." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp-Unterstützung" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API-Dokumentation anzeigen" + +#: src/dh-app.c:104 +msgid "translator-credits" +msgstr "" +"Christian Meyer\n" +"Christian Neumair\n" +"Christian Kirbach\n" +"Mario Blättermann" + +#: src/dh-app.c:106 +msgid "Devhelp Website" +msgstr "Devhelp-Webseite" + +#: src/dh-app.c:342 +msgid "Opens a new Devhelp window" +msgstr "Öffnet ein neues Devhelp-Fenster" + +#: src/dh-app.c:347 +msgid "Search for a keyword" +msgstr "Nach einem Schlüsselwort suchen" + +#: src/dh-app.c:348 src/dh-app.c:353 +msgid "KEYWORD" +msgstr "SCHLÜSSELWORT" + +#: src/dh-app.c:352 +msgid "Search and display any hit in the assistant window" +msgstr "Suchen und jeden Treffer im Zusatzfenster anzeigen" + +#: src/dh-app.c:357 +msgid "Display the version and exit" +msgstr "Programmversion anzeigen und beenden" + +#: src/dh-app.c:362 +msgid "Quit any running Devhelp" +msgstr "Alle laufenden Devhelp-Instanzen beenden" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Buch:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Sprache: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Sprache: Nicht definiert" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Alle _einklappen" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Buch" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Seite" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Schlüsselwort" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funktion" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct (Datenstruktur)" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum (Aufzählung)" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type (Datentyp)" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Eigenschaft" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Einstellungen" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "Nach Sprache _gruppieren" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Aktiviert" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titel" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Büchersammlung" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "S_ystemschrift verwenden" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Variable Breite: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Dicktengleichheit:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Schriften" + +#: src/dh-window.c:63 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:64 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:65 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:66 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:67 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:68 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:69 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:70 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:71 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:960 +msgid "Error opening the requested link." +msgstr "Fehler beim Öffnen des angeforderten Verweises." + +#: src/dh-window.c:1275 +msgid "_Close" +msgstr "S_chließen" + +#: src/dh-window.c:1293 src/dh-window.c:1474 +msgid "Empty Page" +msgstr "Leere Seite" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "_Seitenleiste" + +#: src/dh-window.ui:14 src/dh-window.ui:53 +msgid "_Print" +msgstr "_Drucken" + +#: src/dh-window.ui:18 src/dh-window.ui:57 +msgid "_Find" +msgstr "_Suchen" + +#: src/dh-window.ui:24 src/dh-window.ui:63 +msgid "_Larger Text" +msgstr "_Größerer Text" + +#: src/dh-window.ui:28 src/dh-window.ui:67 +msgid "S_maller Text" +msgstr "_Kleinerer Text" + +#: src/dh-window.ui:32 src/dh-window.ui:71 +msgid "_Normal Size" +msgstr "_Normale Größe" + +#: src/dh-window.ui:40 src/menus.ui:30 +msgid "New _Window" +msgstr "Neues _Fenster" + +#: src/dh-window.ui:46 +msgid "_Side Panel" +msgstr "Seiten_leiste" + +#: src/dh-window.ui:77 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Einstellungen" + +#: src/dh-window.ui:83 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Tastenkombinationen" + +#: src/dh-window.ui:87 src/menus.ui:46 +msgid "_Help" +msgstr "_Hilfe" + +#: src/dh-window.ui:91 +msgid "_About Devhelp" +msgstr "_Info zu Devhelp" + +#: src/dh-window.ui:95 src/menus.ui:54 +msgid "_Quit" +msgstr "_Beenden" + +#: src/dh-window.ui:124 +msgid "Back" +msgstr "Zurück" + +#: src/dh-window.ui:143 +msgid "Forward" +msgstr "Vor" + +#: src/dh-window.ui:190 +msgid "New Tab" +msgstr "Neuer Reiter" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Allgemein" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Globale Suche" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Auf aktueller Seite suchen" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Ein neues Fenster öffnen" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Einen neuen Reiter öffnen" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Anzeigen oder Verbergen der Seitenleiste" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Zurück" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Vor" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Drucken" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Aktuelles Fenster schließen" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Alle Fenster schließen" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Größenänderung" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Vergrößern" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Verkleinern" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Vergrößerung zurücksetzen" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Info" diff --git a/po/devhelp.pot b/po/devhelp.pot new file mode 100644 index 0000000..5ba9825 --- /dev/null +++ b/po/devhelp.pot @@ -0,0 +1,473 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Devhelp contributors +# This file is distributed under the same license as the devhelp package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: devhelp 3.28.1\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-04-08 11:59+0200\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "" + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "" + +#: src/menus.ui:50 +msgid "_About" +msgstr "" diff --git a/po/dz.gmo b/po/dz.gmo new file mode 100644 index 0000000..d493bc5 Binary files /dev/null and b/po/dz.gmo differ diff --git a/po/dz.po b/po/dz.po new file mode 100644 index 0000000..18af834 --- /dev/null +++ b/po/dz.po @@ -0,0 +1,288 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-01-17 03:18+0000\n" +"PO-Revision-Date: 2007-02-05 13:38-0500\n" +"Last-Translator: Tshewang Norbu \n" +"Language-Team: dzongkha \n" +"Language: dz\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2;plural=(n!=1);\n" +"X-Poedit-Language: Dzongkha\n" +"X-Poedit-Country: BHUTAN\n" +"X-Poedit-SourceCharset: utf-8\n" + +#: ../devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "བཟོ་མིའི་གྲོགས་རམལས་རིམ།" + +#: ../devhelp.desktop.in.in.h:2 +#: ../src/dh-main.c:125 +#: ../src/dh-window.c:619 +#: ../ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "ཌེབ་ཧལཔ།" + +#: ../devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ཡིག་ཐོག་བཀོད་པ་བརའུ་ཟར།" + +#: ../src/dh-main.c:85 +msgid "Search for a function" +msgstr "ལས་འགན་ཅིག་་གི་དོན་ལུ་འཚོལ་ཞིབ།" + +#: ../src/dh-main.c:94 +msgid "Quit any running Devhelp" +msgstr "གཡོག་བཀོལ་བའི་བསྒང་གི་ཌེ་ཧལཔ་གང་རུང་་སྤང་།" + +#: ../src/dh-main.c:103 +msgid "Display the version and exit" +msgstr "ཐོན་རིམ་དེ་དང་ཕྱིར་ཐོན་བཀྲམ་སྟོན་འབད།" + +#: ../src/dh-parser.c:110 +#: ../src/dh-parser.c:194 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "རེ་བ་ཡོད་མི་ '%s' གྱལ་ལུ་ '%s' ཀེར་ཐིག་ %d, ཐོབ་ཡོདཔ %d" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "ནུས་མེད་མིང་གི་བར་སྟོང་ '%s' གྱལ་ལུ་ %d, ཀེར་ཐིག་ %d" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "མགོ་མིང་་ མིངདང་འབྲེལ་ལམ་རྒྱུ་རྫས་དེ་ཚུ གྱལ་རིམ་%d ཀེར་ཐིག%dལུ་དགོས་མཁོ་ཡོདཔ།" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "མིང་དང་འབྲེལ་ལམ་རྣམ་གྲངས་ཚུ་ གློག་ལམ་ཐོག་ལུ་ %d, ཀེར་ཐིག་ནང་ན་དགོས་མཁོ་ཡོདཔ། %d" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "མིང་དང་འབྲེལ་ལམ་རྣམ་གྲངས་ཚུ་ གློག་ལམ་ཐོག་ལུ་ %d, ཀེར་ཐིག་ནང་ན་དགོས་མཁོ་ཡོདཔ། %d" + +#: ../src/dh-parser.c:420 +#: ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "ཀི་དེབ་མིང་དཔྱད་འབད་མི་གསར་བསྐྲུན་འབད་མ་ཚུགས། " + +#: ../src/dh-parser.c:436 +#: ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "རྟགས་བཀོད་ མིང་དཔྱད་འབད་མི་གསར་བསྐྲུན་འབད་མ་ཚུགས།" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "ཀི་དེབ'%s': %s་ ཨེབ་བཙུགས་བཤོལ་འབད་མི་ཆོག།" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "ཌེབ་ཧལཔ་འདི་ ཛིལཔ་རྒྱབ་སྐྱོར་དང་བཅསཔ་འབད་བཟོ་བརྩིགས་འབད།" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "ཀི་དེབ།(_B:" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "ཤོག་ལེབ(_P):" + +#: ../src/dh-window.c:141 +msgid "_File" +msgstr "ཡིག་སྣོད(_F)" + +#: ../src/dh-window.c:142 +msgid "_Edit" +msgstr " ཞུན་དག(_E)" + +#: ../src/dh-window.c:143 +#: ../ui/devhelp.glade.h:9 +msgid "_Go" +msgstr "འགྱོ།(_G)" + +#: ../src/dh-window.c:144 +msgid "_Help" +msgstr "གྲོགས་རམ།(_H)" + +#. File menu +#: ../src/dh-window.c:147 +msgid "_New Window" +msgstr "ཝིན་ཌོ་གསརཔ།(_N)" + +#: ../src/dh-window.c:149 +msgid "New _Tab" +msgstr "མཆོང་ལྡེ་གསརཔ།(_T)" + +#: ../src/dh-window.c:168 +msgid "Browse Contents" +msgstr "ནང་དོན་ཚུ་བརྡ་འཚོལ་འབད།" + +#: ../src/dh-window.c:171 +#: ../src/dh-window.c:455 +msgid "Search" +msgstr "འཚོལ་ཞིབ།" + +#: ../src/dh-window.c:445 +#: ../ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "ནང་དོན་ཚུ།" + +#: ../src/dh-window.c:616 +msgid "translator_credits" +msgstr "སྐད་བསྒྱུར་པའི་ངོ་བསྟོད།(_c)" + +#: ../src/dh-window.c:621 +msgid "A developer's help browser for GNOME 2" +msgstr "ཇི་ནོམ་༢ གི་དོན་ལུ་བཟོ་མི་གི་གྲོགས་རམ་བརའུ་ཟར་ཅིག" + +#: ../src/dh-window.c:950 +#: ../src/dh-window.c:1080 +msgid "Empty Page" +msgstr "ཤོག་ལེབ་སྟོངམ།" + +#: ../devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "གཏན་བཟོས་ཚིག་ཡིག་གི་དོན་ལུ་ཡིག་གཟུགས།" + +#: ../devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "ཡིག་ཚིག་གི་དོན་ལུ་ཡིག་གཟུགས།" + +#: ../devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "ཚིག་ཡིག་དང་གཅིག་ཁར་གཏན་བཟོ་ཡོད་མི་རྒྱ་ཚད་ཀྱི་དོན་ལུ་ཡིག་གཟུགས།" + +#: ../devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "ཚིག་ཡིག་དང་གཅིག་ཁར་འགྱུར་ཅན་རྒྱ་ཚད་ཀྱི་དོན་ལུ་ཡིག་གཟུགས།" + +#: ../devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "ཝིན་ཌོ་གཙོ་བོ་གི་མཐོ་ཚད།" + +#: ../devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "ཝིན་ཌོ་གཙོ་བོ་གི་སྦོོམ་བཟོ་ཡོད་མི་གནས་ལུགས།" + +#: ../devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "སེལ་འཐུ་འབད་ཡོད་མི་མཆོང་ལྡེ་\"content\" ཡང \"search\"" + +#: ../devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "ཡར་འཕེལ་འབད་ཡོད་མི་ཞིབ་འཚོལ་གདམ་ཁ་ཚུ་སྟོན།" + +#: ../devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "ཝིན་ཌོ་་གཙོ་བོ་འདི་གིགནས་ས་་ཨེགསི་འདི།" + +#: ../devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "ཝིན་ཌོ་གཙོ་བོ་འདི་གི་གནས་་སཝའི་འདི། " + +#: ../devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "ཝིན་ཌོ་གཙོ་བོ་གི་ཐོ་ཚད།" + +#: ../devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "ཟུར་ཐོ་དང་ཚུལ་ཞིབ་པེན་གྱི་རྒྱ་ཚད་འདི།" + +#: ../devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "ཝིན་ཌོ་གཙོ་བོ་གི་རྒྱ་ཚད་འདི།" + +#: ../devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "རིམ་ལུགས་ཡིག་བཟོ་ཚུ་ལག་ལེན་འཐབ།" + +#: ../devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "རིམ་ལུགས་སྔོན་སྒྲིག་གི་ཡིག་གཟུགས་ཚུ་ལག་ལེན་འཐབ།" + +#: ../devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "ཡར་འཕར་འབད་ཡོད་མི་འཚོལ་ཞིབ་གདམ་ཁ་ཚུ་སྟོན་ཡོདཔ་ཨིན་རུང་མེད་རུང་།" + +#: ../devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "ཝིནཌོ་གཙོ་བོ་འདི་མང་མཐའ་འགོ་བཙུགས་དགོཔ་ཨིན་ན་མེན་ན།" + +#: ../devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "སེལ་འཐུ་འབད་ཡོད་མི་མཆོང་ལྡེ་ཚུ་་\"content\" ཡང་ན་ \"search\"ག་ཨིན་སྨོ།" + +#: ../devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "ཟུར་ཐོ་འདི་དང་འཚོལ་ཞིབ་པེན་གྱི་འདི་གི་རྒྱ་ཚད།" + +#: ../devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "ཝིནཌོ་གཙོ་བོ་གི་རྒྱ་ཚད།" + +#: ../devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "ཝིནཌོ་གཙོ་བོ་གི་གནས་ས་ཨེགསི།" + +#: ../devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "ཝིནཌོ་གཙོ་བོ་གི་གནས་ས་ཝའི། " + +#: ../ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "ཡིག་གཟུགས་ཚུ།" + +#: ../ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "འཚོལ་ཞིབ་འབད་དོ།" + +#: ../ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "དགའ་གདམ་ཚུ།" + +#: ../ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "རྒྱབ(_B)" + +#: ../ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "གཏན་བཟོའི་རྒྱ་ཚད།(_F)" + +#: ../ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "གདོང་བསྐྱོད།(_F)" + +#: ../ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "ཡར་འཕེལ་ཅན་གྱི་འཚོལ་ཞིབ་གདམ་དབང་སྟོན།(_S)" + +#: ../ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "རིམ་ལུགས་ཡིག་གཟུགས་ལག་ལེན་འཐབ།(_U)" + +#: ../ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "འགྱུར་ཅན་རྒྱ་ཚད།(_V)" + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "ཌེབ་ཧལཔ་རྒྱབ་སྐྱོར།" + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:2 +msgid "Makes F7 bring up Devhelp for the word at the cursor" +msgstr "ཌེཔ་ཧལཔ་ མིང་ཚིག་འོད་རྟགས་ཀྱི་དོན་ལུ་ སེ་ཝན་ཨེཕ་ཡར་འབག་འོང་་བཟོ་དོ།" + diff --git a/po/el.gmo b/po/el.gmo new file mode 100644 index 0000000..70698c7 Binary files /dev/null and b/po/el.gmo differ diff --git a/po/el.po b/po/el.po new file mode 100644 index 0000000..f685ba5 --- /dev/null +++ b/po/el.po @@ -0,0 +1,788 @@ +# devhelp Greek translation. +# Copyright (C) Free Software Foundation, 2003, 2004, 2005, 2006, 2007 +# This file is distributed under the same license as the devhelp package. +# Kostas Papadimas , 2003. +# Stylianos Papanastasiou , 2005. +# kostas:22 messages, 28Jan2003, initial translation. +# George Fragos , 2007. +# Athanasios Lefteris , 2007, 2009. +# Michael Kotsarinis , 2011. +# Dimitris Spingos (Δημήτρης Σπίγγος) , 2012, 2013, 2014. +# Efstathios Iosifidis , 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-16 22:55+0200\n" +"Last-Translator: Efstathios Iosifidis \n" +"Language-Team: Ελληνικά <>\n" +"Language: el\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Gtranslator 2.91.7\n" +"X-Project-Style: gnome\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Ένα εργαλείο προγραμματιστών για την περιήγηση και την αναζήτηση τεκμηρίωσης " +"API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Το Devhelp είναι ένα εργαλείο προγραμματιστών για την περιήγηση και την " +"αναζήτηση τεκμηρίωσης API. Παρέχει έναν εύκολο τρόπο να περιηγηθείτε στις " +"βιβλιοθήκες και να αναζητήσετε ανά λειτουργία, δομή ή μακροεντολή." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Η τεκμηρίωση πρέπει να εγκατασταθεί τοπικά, οπότε δεν απαιτείται σύνδεση στο " +"διαδίκτυο για τη χρήση του Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Το Devhelp λειτουργεί εγγενώς με το GTK-Doc, έτσι ώστε οι βιβλιοθήκες GTK + " +"και GNOME υποστηρίζονται καλά. Ωστόσο, μπορούν να υποστηριχθούν και άλλες " +"πλατφόρμες ανάπτυξης, εφόσον η τεκμηρίωση API είναι διαθέσιμη σε HTML και " +"δημιουργείται ένα αρχείο ευρετηρίου * .devhelp2." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Το Devhelp ενσωματώνεται με άλλες εφαρμογές όπως το Glade, Builder ή Anjuta " +"και προσφέρονται πρόσθετα για διαφορετικούς επεξεργαστές κειμένου (gedit, " +"Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "Περιηγητής τεκμηρίωσης API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"τεκμηρίωση;πληροφορίες;εγχειρίδιο;ανάπτυξη;api;documentation;information;" +"manual;developer;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Κατάσταση μεγιστοποίησης κύριου παραθύρου" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Εάν το κύριο παράθυρο θα πρέπει να εμφανίζεται μεγιστοποιημένο." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Το πλάτος του κύριου παραθύρου" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Πλάτος κύριου παραθύρου." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Ύψος κύριου παραθύρου" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Ύψος κύριου παραθύρου." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Το πλάτος των παραθύρων του ευρετηρίου και της αναζήτησης" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Το πλάτος των παραθύρων του ευρετηρίου και της αναζήτησης." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Τα βιβλία απενεργοποιήθηκαν" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Κατάλογος των βιβλίων που απενεργοποιήθηκαν από το χρήστη." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Ομαδοποίηση κατά γλώσσα" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Αν τα βιβλία θα πρέπει να ομαδοποιούνται κατά γλώσσα στη διεπαφή χρήστη" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Πλάτος του βοηθητικού παραθύρου" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Το πλάτος κύριου βοηθητικού παραθύρου." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Ύψος βοηθητικού παραθύρου" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Το ύψος του βοηθητικού παραθύρου." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Χρήση γραμματοσειρών συστήματος" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Χρήση προεπιλεγμένων γραμματοσειρών συστήματος." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Γραμματοσειρά κειμένου" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Γραμματοσειρά κειμένου μεταβλητού πλάτους." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Γραμματοσειρά για κείμενο σταθερού πλάτους" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Γραμματοσειρά κειμένου με σταθερό πλάτος, όπως τα παραδείγματα κώδικα." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Υποστήριξη Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Εμφάνιση τεκμηρίωσης API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Ελληνική μεταφραστική ομάδα GNOME\n" +" Δημήτρης Σπίγγος \n" +" Κώστας Παπαδήμας \n" +" Στυλιανός Παπαναστασίου \n" +" Γιώργος Φράγκος \n" +" Τζένη Πετούμενου \n" +" Μιχάλης Κοτσαρίνης \n" +" Μαρία Μαυρίδου \n" +"\n" +"Για περισσότερες πληροφορίες, επισκεφθείτε την σελίδα\n" +"http://gnome.gr/" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Ιστότοπος Devhelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Ανοίγει ένα νέο παράθυρου του Devhelp" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Αναζήτηση λέξης κλειδί" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "ΛΕΞΗ ΚΛΕΙΔΙ" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Αναζητήστε και δείξτε κάθε επιλογή στο βοηθητικό παράθυρο" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Εμφάνιση της έκδοσης και έξοδος" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Έξοδος από όλα τα εκτελούμενα Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Βοηθός — Devhelp" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Βιβλίο:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Γλώσσα: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Γλώσσα: δεν ορίσθηκε" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Σύμπτυξη όλων" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Βιβλίο" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Σελίδα" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Λέξη κλειδί" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Συνάρτηση:" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Δομή" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Μακροεντολή" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Απαρίθμηση" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Τύπος" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Ιδιότητα" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Σήμα" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Προτιμήσεις" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "Ο_μαδοποίηση κατά γλώσσα" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Ενεργοποιημένο" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Τίτλος" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Ράφι βιβλίων" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Χρήση γραμματοσειρών συστήματος" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Μεταβλητό πλάτος: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Σταθερό πλάτος:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Γραμματοσειρές" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Κενή σελίδα" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Σφάλμα στο άνοιγμα της επιλεγμένης σύνδεσης." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Πλευρικός πίνακας" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Ε_κτύπωση" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Εύρεση" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Μεγαλύτερο κείμενο" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Μικ_ρότερο κείμενο" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Κανονικό μέγεθος" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Νέο _παράθυρο" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "Π_ροτιμήσεις" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Συντομεύσεις _πληκτρολογίου" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Βοήθεια" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Περί Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "Έ_ξοδος" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Πίσω" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Μπροστά" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Νέα καρτέλα" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Γενικά" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Εστίαση καθολικής αναζήτησης" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Εύρεση στην τρέχουσα σελίδα" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Άνοιγμα νέου παραθύρου" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Άνοιγμα νέας καρτέλας" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Αλλαγή της ορατότητας της πλευρικής στήλης" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Μετάβαση πίσω" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Μετάβαση εμπρός" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Εκτύπωση" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Κλείσιμο του τρέχοντος παραθύρου." + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Κλείσιμο όλων των παραθύρων" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Εστίαση" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Μεγέθυνση" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Σμίκρυνση" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Επαναφορά εστίασης" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Περί" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Πρόγραμμα βοήθειας για προγραμματιστές" + +#~ msgid "X position of main window" +#~ msgstr "Θέση Χ του κύριου παραθύρου" + +#~ msgid "The X position of the main window." +#~ msgstr "Θέση Χ κύριου παραθύρου." + +#~ msgid "Y position of main window" +#~ msgstr "Θέση Y του κύριου παραθύρου" + +#~ msgid "The Y position of the main window." +#~ msgstr "Θέση Y κύριου παραθύρου." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Εάν το βοηθητικό παράθυρο θα πρέπει να εμφανίζεται μεγιστοποιημένο." + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Εάν το βοηθητικό παράθυρο θα πρέπει να εμφανίζεται μεγιστοποιημένο." + +#~ msgid "X position of assistant window" +#~ msgstr "Θέση Χ του βοηθητικού παραθύρου" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Η θέση Χ του βοηθητικού παραθύρου." + +#~ msgid "Y position of assistant window" +#~ msgstr "Θέση Y του βοηθητικού παραθύρου" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Η θέση Y του βοηθητικού παραθύρου." + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Περιηγητής βοήθειας για τους προγραμματιστές του GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "Κλεί_σιμο" + +#~ msgid "Side _Panel" +#~ msgstr "Πλευρικός _πίνακας" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Επιλεγμένη καρτέλα: «περιεχόμενα» ή «αναζήτηση»" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Ποιες καρτέλες είναι επιλεγμένες: «περιεχόμενα» ή «αναζήτηση»." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Αναμενόταν «%s», αλλά ελήφθη «%s» στη γραμμή %d, και την στήλη %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Μη έγκυρη ονοματοθεσία «%s» στη γραμμή %d, στήλη %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Τα στοιχεία «title», «name», και «link» απαιτούνται στη γραμμή %d, και " +#~ "στήλη %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Τα στοιχεία «name» και «link» απαιτούνται εντός του στη γραμμή %d, " +#~ "στήλη %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Τα στοιχεία «name» και «link» απαιτούνται εντός του «%s» στη γραμμή %d, " +#~ "στήλη %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "Το στοιχείο «type» απαιτείται εντός του στη γραμμή %d, στήλη %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Αδυναμία αποσυμπίεσης βιβλίου «%s»: %s" + +#~ msgid "_Side pane" +#~ msgstr "Π_λευρικό παράθυρο" + +#~| msgid "" +#~| "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~| "target=devhelp.png" +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "" +#~ "Το F2 εμφανίζει το Devhelp για τη λέξη στην οποία βρίσκεται ο δρομέας" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "" +#~ "Εμφάνιση τεκμηρίωσης API -Διεπαφής προγραμματισμού εφαρμογών- για τη λέξη " +#~ "στην οποία βρίσκεται ο δρομέας" + +#~ msgid "Current" +#~ msgstr "Τρέχον" + +#~| msgid "All books" +#~ msgid "All Books" +#~ msgstr "Όλα τα βιβλία" + +#~ msgid "Find:" +#~ msgstr "Εύρεση:" + +#~ msgid "Find Previous" +#~ msgstr "Εύρεση προηγούμενου" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Εύρεση προηγούμενης εμφάνισης του ζητούμενου αλφαριθμητικού" + +#~ msgid "Find Next" +#~ msgstr "Εύρεση επόμενου" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Εύρεση επόμενης εμφάνισης του ζητούμενου αλφαριθμητικού" + +#~ msgid "C_ase Sensitive" +#~ msgstr "Δ_ιάκριση πεζών/κεφαλαίων" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Εναλλαγή διάκρισης πεζών/κεφαλαίων κατά την αναζήτηση" + +#~ msgid "_Window" +#~ msgstr "Πα_ράθυρο" + +#~ msgid "_Edit" +#~ msgstr "_Επεξεργασία" + +#~ msgid "_Copy" +#~ msgstr "Αντι_γραφή" + +#~ msgid "Find _Next" +#~ msgstr "Εύρεση επό_μενου" + +#~ msgid "Find _Previous" +#~ msgstr "Εύρεση _προηγούμενου" + +#~ msgid "_View" +#~ msgstr "_Προβολή" + +#~ msgid "Fullscreen" +#~ msgstr "Πλήρης οθόνη" + +#~ msgid "_Go" +#~ msgstr "_Μετάβαση" + +#~ msgid "_Search Tab" +#~ msgstr "Καρτέλα _αναζήτησης" + +#~ msgid "_Contents Tab" +#~ msgstr "Καρτέλα _περιεχομένων" + +#~ msgid "Go to the previous page" +#~ msgstr "Μετάβαση στην προηγούμενη σελίδα" + +#~ msgid "Go to the next page" +#~ msgstr "Μετάβαση στην επόμενη σελίδα" + +#~ msgid "Decrease the text size" +#~ msgstr "Σμίκρυνση του κειμένου" + +#~ msgid "Increase the text size" +#~ msgstr "Μεγέθυνση του κειμένου" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Εστίαση στο παράθυρο του devhelp με το πεδίο αναζήτησης ενεργό" + +#~ msgid "Search in:" +#~ msgstr "Αναζήτηση σε:" + +#~ msgid "Contents" +#~ msgstr "Περιεχόμενα" + +#~ msgid "Search" +#~ msgstr "Αναζήτηση" + +#~ msgid "_File" +#~ msgstr "_Αρχείο" + +#~ msgid "Use the normal text size" +#~ msgstr "Χρήση κανονικού μεγέθους κειμένου" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Έξοδος από την προβολή πλήρους οθόνης" + +#~ msgid "Display in full screen" +#~ msgstr "Προβολή πλήρους οθόνης" + +#~ msgid "Larger" +#~ msgstr "Μεγαλύτερο" + +#~ msgid "Smaller" +#~ msgstr "Μικρότερο" + +#~ msgid "Preferences…" +#~ msgstr "Προτιμήσεις..." + +#~ msgid "Fonts" +#~ msgstr "Γραμματοσειρές" + +#~ msgid "Show advanced search options" +#~ msgstr "Εμφάνιση προχωρημένων επιλογών αναζήτησης" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Εμφάνιση ή απόκρυψη των προχωρημένων επιλογών αναζήτησης." + +#~ msgid "Searching" +#~ msgstr "Αναζήτηση" + +#~ msgid "_Show advanced search options" +#~ msgstr "Εμφάνι_ση προχωρημένων επιλογών αναζήτησης" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "στοιχεία ονόματος και συνδέσμου απαιτούνται εντός του στη " +#~ "γραμμή %d, στήλη %d" + +#~ msgid "Could not create book parser" +#~ msgstr "Αδυναμία δημιουργίας συντακτικού βιβλιοαναλυτή" + +#~ msgid "Could not create markup parser" +#~ msgstr "Αδυναμία δημιουργίας συντακτικού αναλυτή σήμανσης" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Το Devhelp δεν δημιουργήθηκε με υποστήριξη zlib" + +#~ msgid "Browse Contents" +#~ msgstr "Περιήγηση περιεχομένων" diff --git a/po/en@boldquot.header b/po/en@boldquot.header new file mode 100644 index 0000000..fedb6a0 --- /dev/null +++ b/po/en@boldquot.header @@ -0,0 +1,25 @@ +# 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. +# diff --git a/po/en@quot.header b/po/en@quot.header new file mode 100644 index 0000000..a9647fc --- /dev/null +++ b/po/en@quot.header @@ -0,0 +1,22 @@ +# 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. +# diff --git a/po/en@shaw.gmo b/po/en@shaw.gmo new file mode 100644 index 0000000..565871a Binary files /dev/null and b/po/en@shaw.gmo differ diff --git a/po/en@shaw.po b/po/en@shaw.po new file mode 100644 index 0000000..52c0e4e --- /dev/null +++ b/po/en@shaw.po @@ -0,0 +1,481 @@ +# Shavian translation for devhelp. +# Copyright (C) 2009 The Gnome Foundation. +# Thomas Thurman , 2009. +# Transliterate Devhelp as ·𐑛𐑧𐑝𐑣𐑧𐑤𐑐 +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&component=general\n" +"POT-Creation-Date: 2010-05-12 19:02+0000\n" +"PO-Revision-Date: 2010-05-12 18:35 -0400\n" +"Last-Translator: Thomas Thurman \n" +"Language-Team: Shavian \n" +"Language: en@shaw\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n!=1;\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "𐑛𐑦𐑝𐑧𐑤𐑩𐑐𐑼'𐑟 𐑣𐑧𐑤𐑐 𐑐𐑮𐑴𐑜𐑮𐑨𐑥" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +# (Shavian: So transliteration is okay) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:235 +#: ../src/dh-window.c:736 ../src/dh-window.c:1043 ../src/dh-window.c:1849 +msgid "Devhelp" +msgstr "·𐑛𐑧𐑝𐑣𐑧𐑤𐑐" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "𐑛𐑪𐑒𐑿𐑥𐑩𐑯𐑑𐑱𐑖𐑩𐑯 𐑚𐑮𐑬𐑟𐑼" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed width text" +msgstr "𐑓𐑪𐑯𐑑 𐑓𐑹 𐑓𐑦𐑒𐑕𐑑 𐑢𐑦𐑛𐑔 𐑑𐑧𐑒𐑕𐑑" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "𐑓𐑪𐑯𐑑 𐑓𐑹 𐑑𐑧𐑒𐑕𐑑" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width, such as code examples." +msgstr "𐑓𐑪𐑯𐑑 𐑓𐑹 𐑑𐑧𐑒𐑕𐑑 𐑢𐑦𐑞 𐑓𐑦𐑒𐑕𐑑 𐑢𐑦𐑛𐑔, 𐑕𐑳𐑗 𐑨𐑟 𐑒𐑴𐑛 𐑦𐑜𐑟𐑭𐑥𐑐𐑩𐑤𐑟." + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "𐑓𐑪𐑯𐑑 𐑓𐑹 𐑑𐑧𐑒𐑕𐑑 𐑢𐑦𐑞 𐑝𐑺𐑦𐑩𐑚𐑩𐑤 𐑢𐑦𐑛𐑔." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of assistant window" +msgstr "𐑣𐑲𐑑 𐑝 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Height of main window" +msgstr "𐑣𐑲𐑑 𐑝 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟𐑛 𐑕𐑑𐑱𐑑" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "𐑕𐑩𐑤𐑧𐑒𐑑𐑩𐑛 𐑑𐑨𐑚: \"content\" 𐑹 \"search\"" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the assistant window." +msgstr "𐑞 X 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:10 +msgid "The X position of the main window." +msgstr "𐑞 X 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:11 +msgid "The Y position of the assistant window." +msgstr "𐑞 Y 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:12 +msgid "The Y position of the main window." +msgstr "𐑞 Y 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The height of the assistant window." +msgstr "𐑞 𐑣𐑲𐑑 𐑝 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the main window." +msgstr "𐑞 𐑣𐑲𐑑 𐑝 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The width of the assistant window." +msgstr "𐑞 𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The width of the index and search pane." +msgstr "𐑞 𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑦𐑯𐑛𐑧𐑒𐑕 𐑯 𐑕𐑻𐑗 𐑐𐑱𐑯." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The width of the main window." +msgstr "𐑞 𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴." + +#: ../data/devhelp.schemas.in.h:18 +msgid "Use system fonts" +msgstr "𐑿𐑟 𐑕𐑦𐑕𐑑𐑩𐑥 𐑓𐑪𐑯𐑑𐑕" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Use the system default fonts." +msgstr "𐑿𐑟 𐑞 𐑕𐑦𐑕𐑑𐑩𐑥 𐑛𐑦𐑓𐑷𐑤𐑑 𐑓𐑪𐑯𐑑𐑕." + +#: ../data/devhelp.schemas.in.h:20 +msgid "Whether the main window should start maximized." +msgstr "𐑢𐑧𐑞𐑼 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴 𐑖𐑫𐑛 𐑕𐑑𐑸𐑑 𐑥𐑨𐑒𐑕𐑩𐑥𐑲𐑟𐑛." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "𐑢𐑦𐑗 𐑝 𐑞 𐑑𐑨𐑚𐑟 𐑦𐑟 𐑕𐑩𐑤𐑧𐑒𐑑𐑩𐑛: \"content\" 𐑹 \"search\"." + +#: ../data/devhelp.schemas.in.h:22 +msgid "Width of the assistant window" +msgstr "𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Width of the index and search pane" +msgstr "𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑦𐑯𐑛𐑧𐑒𐑕 𐑯 𐑕𐑻𐑗 𐑐𐑱𐑯" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Width of the main window" +msgstr "𐑢𐑦𐑛𐑔 𐑝 𐑞 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:25 +msgid "X position of assistant window" +msgstr "X 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:26 +msgid "X position of main window" +msgstr "X 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Y position of assistant window" +msgstr "Y 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Y position of main window" +msgstr "Y 𐑐𐑩𐑟𐑦𐑖𐑩𐑯 𐑝 𐑥𐑱𐑯 𐑢𐑦𐑯𐑛𐑴" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "·𐑛𐑧𐑝𐑣𐑧𐑤𐑐 𐑕𐑩𐑐𐑹𐑑" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "𐑥𐑱𐑒𐑕 F2 𐑚𐑮𐑦𐑙 𐑳𐑐 ·𐑛𐑧𐑝𐑣𐑧𐑤𐑐 𐑓𐑹 𐑞 𐑢𐑻𐑛 𐑨𐑑 𐑞 𐑒𐑻𐑕𐑼" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation" +msgstr "𐑖𐑴 API 𐑛𐑪𐑒𐑿𐑥𐑩𐑯𐑑𐑱𐑖𐑩𐑯" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:40 +msgid "Show API Documentation for the word at the cursor" +msgstr "𐑖𐑴 API 𐑛𐑪𐑒𐑿𐑥𐑩𐑯𐑑𐑱𐑖𐑩𐑯 𐑓𐑹 𐑞 𐑢𐑻𐑛 𐑨𐑑 𐑞 𐑒𐑻𐑕𐑼" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "·𐑛𐑧𐑝𐑣𐑧𐑤𐑐 — 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑" + +#: ../src/dh-assistant-view.c:328 +msgid "Book:" +msgstr "𐑚𐑫𐑒:" + +#. i18n: a documentation book +#: ../src/dh-link.c:255 +msgid "Book" +msgstr "𐑚𐑫𐑒" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:258 +msgid "Page" +msgstr "𐑐𐑱𐑡" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:262 +msgid "Keyword" +msgstr "𐑒𐑰𐑢𐑻𐑛" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:267 +msgid "Function" +msgstr "𐑓𐑳𐑙𐑒𐑖𐑩𐑯" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:272 +msgid "Struct" +msgstr "𐑕𐑑𐑮𐑳𐑒𐑑" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:277 +msgid "Macro" +msgstr "𐑥𐑨𐑒𐑮𐑴" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Enum" +msgstr "𐑰𐑯𐑳𐑥" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Type" +msgstr "𐑑𐑲𐑐" + +#: ../src/dh-main.c:175 +msgid "Search for a keyword" +msgstr "𐑕𐑻𐑗 𐑓𐑹 𐑩 𐑒𐑰𐑢𐑻𐑛" + +#: ../src/dh-main.c:180 +msgid "Quit any running Devhelp" +msgstr "𐑒𐑢𐑦𐑑 𐑧𐑯𐑦 𐑮𐑳𐑯𐑦𐑙 ·𐑛𐑧𐑝𐑣𐑧𐑤𐑐" + +#: ../src/dh-main.c:185 +msgid "Display the version and exit" +msgstr "𐑛𐑩𐑕𐑐𐑤𐑱 𐑞 𐑝𐑻𐑠𐑩𐑯 𐑯 𐑧𐑜𐑟𐑦𐑑" + +#: ../src/dh-main.c:190 +msgid "Focus the Devhelp window with the search field active" +msgstr "𐑓𐑴𐑒𐑩𐑕 𐑞 ·𐑛𐑧𐑝𐑣𐑧𐑤𐑐 𐑢𐑦𐑯𐑛𐑴 𐑢𐑦𐑞 𐑞 𐑕𐑻𐑗 𐑓𐑰𐑤𐑛 𐑨𐑒𐑑𐑦𐑝" + +#: ../src/dh-main.c:195 +msgid "Search and display any hit in the assistant window" +msgstr "𐑕𐑻𐑗 𐑯 𐑛𐑦𐑕𐑐𐑤𐑱 𐑧𐑯𐑦 𐑣𐑦𐑑 𐑦𐑯 𐑞 𐑩𐑕𐑦𐑕𐑑𐑩𐑯𐑑 𐑢𐑦𐑯𐑛𐑴" + +#, c-format +#: ../src/dh-parser.c:92 ../src/dh-parser.c:189 ../src/dh-parser.c:253 +#: ../src/dh-parser.c:263 +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "𐑦𐑒𐑕𐑐𐑧𐑒𐑑𐑩𐑛 '%s', 𐑜𐑪𐑑 '%s' 𐑨𐑑 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:109 +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "𐑦𐑯𐑝𐑨𐑤𐑦𐑛 𐑯𐑱𐑥𐑕𐑐𐑱𐑕 '%s' 𐑨𐑑 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:140 +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "\"title\", \"name\" 𐑯 \"link\" 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕 𐑸 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑨𐑑 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:208 +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %d" +msgstr "" +"\"name\" 𐑯 \"link\" 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕 𐑸 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑦𐑯𐑕𐑲𐑛 𐑪𐑯 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:288 +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "\"name\" 𐑯 \"link\" 𐑧𐑤𐑩𐑥𐑩𐑯𐑑𐑕 𐑸 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑦𐑯𐑕𐑲𐑛 '%s' 𐑪𐑯 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:301 +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"type\" 𐑧𐑤𐑩𐑥𐑩𐑯𐑑 𐑦𐑟 𐑮𐑦𐑒𐑢𐑲𐑼𐑛 𐑦𐑯𐑕𐑲𐑛 𐑪𐑯 𐑤𐑲𐑯 %d, 𐑒𐑪𐑤𐑩𐑥 %d" + +#, c-format +#: ../src/dh-parser.c:506 +msgid "Cannot uncompress book '%s': %s" +msgstr "𐑒𐑨𐑯𐑪𐑑 𐑳𐑯𐑒𐑪𐑥𐑐𐑮𐑧𐑕 𐑚𐑫𐑒 '%s': %s" + +#: ../src/dh-search.c:509 +msgid "All books" +msgstr "𐑷𐑤 𐑚𐑫𐑒𐑕" + +#: ../src/dh-search.c:587 +msgid "Search in:" +msgstr "𐑕𐑻𐑗 𐑦𐑯:" + +#: ../src/dh-window.c:95 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:96 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:97 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:98 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:99 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:100 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:101 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:102 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:103 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:731 +msgid "translator_credits" +msgstr "·𐑑𐑪𐑥𐑩𐑕 ·𐑔𐑻𐑥𐑩𐑯" + +#: ../src/dh-window.c:738 +msgid "A developers' help browser for GNOME" +msgstr "𐑩 𐑛𐑦𐑝𐑧𐑤𐑩𐑐𐑼𐑟' 𐑣𐑧𐑤𐑐 𐑚𐑮𐑬𐑟𐑼 𐑓𐑹 ·𐑜𐑯𐑴𐑥" + +#: ../src/dh-window.c:768 +msgid "_File" +msgstr "_𐑓𐑲𐑤" + +#: ../src/dh-window.c:769 +msgid "_Edit" +msgstr "_𐑧𐑛𐑦𐑑" + +#: ../src/dh-window.c:770 +msgid "_View" +msgstr "_𐑝𐑿" + +#: ../src/dh-window.c:771 +msgid "_Go" +msgstr "_𐑜𐑴" + +#: ../src/dh-window.c:772 +msgid "_Help" +msgstr "_𐑣𐑧𐑤𐑐" + +#. File menu +#: ../src/dh-window.c:775 +msgid "_New Window" +msgstr "_𐑯𐑿 𐑢𐑦𐑯𐑛𐑴" + +#: ../src/dh-window.c:777 +msgid "New _Tab" +msgstr "𐑯𐑿 _𐑑𐑨𐑚" + +#: ../src/dh-window.c:779 +msgid "_Print…" +msgstr "_𐑐𐑮𐑦𐑯𐑑…" + +#: ../src/dh-window.c:791 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "𐑓𐑲𐑯𐑛 𐑯𐑧𐑒𐑕𐑑" + +#: ../src/dh-window.c:793 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "𐑓𐑲𐑯𐑛 𐑐𐑮𐑰𐑝𐑦𐑩𐑕" + +#: ../src/dh-window.c:800 +msgid "Go to the previous page" +msgstr "𐑜𐑴 𐑑 𐑞 𐑐𐑮𐑰𐑝𐑦𐑩𐑕 𐑐𐑱𐑡" + +#: ../src/dh-window.c:803 +msgid "Go to the next page" +msgstr "𐑜𐑴 𐑑 𐑞 𐑯𐑧𐑒𐑕𐑑 𐑐𐑱𐑡" + +#: ../src/dh-window.c:806 +msgid "_Contents Tab" +msgstr "_𐑒𐑪𐑯𐑑𐑩𐑯𐑑𐑕 𐑑𐑨𐑚" + +#: ../src/dh-window.c:809 +msgid "_Search Tab" +msgstr "_𐑕𐑻𐑗 𐑑𐑨𐑚" + +#. View menu +#: ../src/dh-window.c:813 +msgid "_Larger Text" +msgstr "_𐑤𐑸𐑡𐑼 𐑑𐑧𐑒𐑕𐑑" + +#: ../src/dh-window.c:814 +msgid "Increase the text size" +msgstr "𐑦𐑯𐑒𐑮𐑰𐑕 𐑞 𐑑𐑧𐑒𐑕𐑑 𐑕𐑲𐑟" + +#: ../src/dh-window.c:816 +msgid "S_maller Text" +msgstr "_𐑕𐑥𐑷𐑤𐑼 𐑑𐑧𐑒𐑕𐑑" + +#: ../src/dh-window.c:817 +msgid "Decrease the text size" +msgstr "𐑛𐑦𐑒𐑮𐑰𐑕 𐑞 𐑑𐑧𐑒𐑕𐑑 𐑕𐑲𐑟" + +#: ../src/dh-window.c:819 +msgid "_Normal Size" +msgstr "_𐑯𐑹𐑥𐑩𐑤 𐑕𐑲𐑟" + +#: ../src/dh-window.c:820 +msgid "Use the normal text size" +msgstr "𐑿𐑟 𐑞 𐑯𐑹𐑥𐑩𐑤 𐑑𐑧𐑒𐑕𐑑 𐑕𐑲𐑟" + +#: ../src/dh-window.c:829 +msgid "Leave fullscreen mode" +msgstr "𐑤𐑰𐑝 𐑓𐑫𐑤𐑕𐑒𐑮𐑰𐑯 𐑥𐑴𐑛" + +#: ../src/dh-window.c:836 +msgid "Display in full screen" +msgstr "𐑛𐑩𐑕𐑐𐑤𐑱 𐑦𐑯 𐑓𐑫𐑤 𐑕𐑒𐑮𐑰𐑯" + +#. Translators: This refers to text size +#: ../src/dh-window.c:956 +msgid "Larger" +msgstr "𐑤𐑸𐑡𐑼" + +#. Translators: This refers to text size +#: ../src/dh-window.c:959 +msgid "Smaller" +msgstr "𐑕𐑥𐑷𐑤𐑼" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1105 +msgid "About Devhelp" +msgstr "𐑩𐑚𐑬𐑑 ·𐑛𐑧𐑝𐑣𐑧𐑤𐑐" + +#: ../src/dh-window.c:1110 +msgid "Preferences…" +msgstr "𐑐𐑮𐑧𐑓𐑼𐑩𐑯𐑕𐑩𐑟…" + +#: ../src/dh-window.c:1153 +msgid "Contents" +msgstr "𐑒𐑪𐑯𐑑𐑩𐑯𐑑𐑕" + +#: ../src/dh-window.c:1163 +msgid "Search" +msgstr "𐑕𐑻𐑗" + +#: ../src/dh-window.c:1329 +msgid "Error opening the requested link." +msgstr "𐑻𐑼 𐑴𐑐𐑩𐑯𐑦𐑙 𐑞 𐑮𐑦𐑒𐑢𐑧𐑕𐑑𐑩𐑛 𐑤𐑦𐑙𐑒." + +#: ../src/dh-window.c:1635 ../src/dh-window.c:1877 +msgid "Empty Page" +msgstr "𐑧𐑥𐑐𐑑𐑦 𐑐𐑱𐑡" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "𐑓𐑲𐑯𐑛:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "𐑓𐑲𐑯𐑛 𐑐𐑮𐑰𐑝𐑦𐑩𐑕 𐑪𐑒𐑻𐑩𐑯𐑕 𐑝 𐑞 𐑕𐑻𐑗 𐑕𐑑𐑮𐑦𐑙" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "𐑓𐑲𐑯𐑛 𐑯𐑧𐑒𐑕𐑑 𐑪𐑒𐑻𐑩𐑯𐑕 𐑝 𐑞 𐑕𐑻𐑗 𐑕𐑑𐑮𐑦𐑙" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "𐑒_𐑱𐑕 𐑕𐑧𐑯𐑕𐑦𐑑𐑦𐑝" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "𐑑𐑪𐑜𐑩𐑤 𐑒𐑱𐑕 𐑕𐑧𐑯𐑕𐑦𐑑𐑦𐑝 𐑕𐑻𐑗" + diff --git a/po/en_CA.gmo b/po/en_CA.gmo new file mode 100644 index 0000000..3972653 Binary files /dev/null and b/po/en_CA.gmo differ diff --git a/po/en_CA.po b/po/en_CA.po new file mode 100644 index 0000000..ed04301 --- /dev/null +++ b/po/en_CA.po @@ -0,0 +1,582 @@ +# English/Canada translation of devhelp. +# Copyright (C) 2004-2005 Adam Weinberger and the GNOME Foundation +# This file is distributed under the same licence as the devhelp package. +# Adam Weinberger , 2004, 2005. +# Tiffany Antopolski , 2011. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2011-09-11 00:58+0000\n" +"PO-Revision-Date: 2011-09-10 20:49-0400\n" +"Last-Translator: Tiffany Antopolski \n" +"Language-Team: Canadian English\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: en_CA\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Virtaal 0.7.0\n" +"X-Project-Style: gnome\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Developer's Help program" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1860 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Documentation Browser" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "Books disabled" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "Font for fixed width text" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "Font for text" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "Font for text with fixed width, such as code examples." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "Font for text with variable width." + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "Group by language" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "Height of assistant window" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "Height of main window" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "List of books disabled by the user." + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "Main window maximized state" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Selected tab \"content\" or \"search\"" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr "The X position of the assistant window." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "The X position of the main window." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "The Y position of the assistant window." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "The Y position of the main window." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "The height of the assistant window." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "The height of the main window." + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "The width of the assistant window." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "The width of the index and search pane." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "The width of the main window." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "Use system fonts" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "Use the system default fonts." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "Whether books should be grouped by language in the UI" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "Whether the main window should start maximized." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Which of the tabs is selected: \"content\" or \"search\"." + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "Width of the assistant window" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "Width of the index and search pane" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "Width of the main window" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "X position of assistant window" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "X position of main window" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "Y position of assistant window" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Y position of main window" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "Book Shelf" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Fonts" +msgstr "Fonts" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Preferences" +msgstr "Preferences" + +#: ../data/ui/devhelp.builder.h:4 +msgid "_Fixed width:" +msgstr "_Fixed width:" + +#: ../data/ui/devhelp.builder.h:5 +msgid "_Group by language" +msgstr "_Group by language" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "_Use system fonts" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "_Variable width: " + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp support" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Makes F2 bring up Devhelp for the word at the cursor" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "Show API Documentation" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "Show API Documentation for the word at the cursor" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistant" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "Book:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "Language: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "Language: Undefined" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Book:" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Page:" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Keyword" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Type" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "Search for a keyword" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "Quit any running Devhelp" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "Display the version and exit" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "Focus the Devhelp window with the search field active" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "Search and display any hit in the assistant window" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Expected '%s', got '%s' at line %d, column %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Invalid namespace '%s' at line %d, column %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"type\" element is required inside on line %d, column %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Cannot uncompress book '%s': %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "All books" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "Search in:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "" +"Adam Weinberger \n" +"Tiffany Antopolski " + +#: ../src/dh-window.c:733 +msgid "A developers' help browser for GNOME" +msgstr "A developer's help browser for GNOME" + +#: ../src/dh-window.c:740 +msgid "DevHelp Website" +msgstr "Devhelp Website" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "_File" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "_Edit" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "_View" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "_Go" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "_Help" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "_New Window" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "New _Tab" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "_Print…" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Find Next" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Find Previous" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "Go to the previous page" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "Go to the next page" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "_Contents Tab" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "_Search Tab" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "_Larger Text" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "Increase the text size" + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "S_maller Text" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "Decrease the text size" + +#: ../src/dh-window.c:815 +msgid "_Normal Size" +msgstr "_Normal Size" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "Use the normal text size" + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "Leave fullscreen mode" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "Display in full screen" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +msgid "Larger" +msgstr "Larger" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +msgid "Smaller" +msgstr "Smaller" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1104 +msgid "About Devhelp" +msgstr "About Devhelp" + +#: ../src/dh-window.c:1109 +msgid "Preferences…" +msgstr "Preferences…" + +#: ../src/dh-window.c:1151 +msgid "Contents" +msgstr "Contents" + +#: ../src/dh-window.c:1161 +msgid "Search" +msgstr "Search" + +#: ../src/dh-window.c:1336 +msgid "Error opening the requested link." +msgstr "Error opening the requested link." + +#: ../src/dh-window.c:1649 ../src/dh-window.c:1888 +msgid "Empty Page" +msgstr "Empty Page" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Find:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Find previous occurrence of the search string" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Find next occurrence of the search string" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "Ci_ase Sensitive" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Toggle case sensitive search" + +#~ msgid "Show advanced search options" +#~ msgstr "Show advanced search options" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Whether the advanced search options are shown." + +#~ msgid "Fonts" +#~ msgstr "Fonts" + +#~ msgid "Searching" +#~ msgstr "Searching" + +#~ msgid "_Back" +#~ msgstr "_Back" + +#~ msgid "_Forward" +#~ msgstr "_Forward" + +#~ msgid "_Show advanced search options" +#~ msgstr "_Show advanced search options" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %" +#~ "d" +#~ msgstr "" +#~ "name and link elements are required inside on line %d, column %" +#~ "d" + +#~ msgid "Could not create book parser" +#~ msgstr "Could not create book parser" + +#~ msgid "Could not create markup parser" +#~ msgstr "Could not create markup parser" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp is not built with zlib support" diff --git a/po/en_GB.gmo b/po/en_GB.gmo new file mode 100644 index 0000000..e68ab1e Binary files /dev/null and b/po/en_GB.gmo differ diff --git a/po/en_GB.po b/po/en_GB.po new file mode 100644 index 0000000..c76ebbc --- /dev/null +++ b/po/en_GB.po @@ -0,0 +1,756 @@ +# English (British) translation of devhelp. +# Copyright (C) 2004 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same licence as the devhelp package. +# Gareth Owen , 2004. +# Bruce Cowan , 2009, 2010, 2011, 2012. +# Philip Withnall , 2010. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2016-08-15 08:52+0000\n" +"PO-Revision-Date: 2012-09-05 19:14+0100\n" +"Last-Translator: Bruce Cowan \n" +"Language-Team: British English \n" +"Language: en_GB\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Virtaal 0.7.1\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:249 +#: ../src/dh-app.c:559 ../src/dh-window.c:793 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Developer's Help program" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Documentation Browser" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Main window maximised state" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Whether the main window should start maximised." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Width of the main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "The width of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Height of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "The height of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "X position of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "The X position of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Y position of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "The Y position of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Width of the index and search pane" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "The width of the index and search pane." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Selected tab: \"content\" or \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Which of the tabs is selected: \"content\" or \"search\"." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Books disabled" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "List of books disabled by the user." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Group by language" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Whether books should be grouped by language in the UI" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "Whether the assistant window should start maximised." + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "Whether the assistant window should start maximised." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Width of the assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "The width of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Height of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "The height of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "X position of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "The X position of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Y position of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "The Y position of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Use system fonts" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Use the system's default fonts." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Font for text" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Font for text with variable width." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Font for fixed width text" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Font for text with fixed width, such as code examples." + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp support" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Makes F2 bring up Devhelp for the word at the cursor" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Show API Documentation" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "New _Window" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_Preferences" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "_Keyboard Shortcuts" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "_About" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_Quit" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "General" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Focus global search" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Find in current page" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Opens a new window" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Open a new tab" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "Toggle sidebar visibility" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Go back" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Go forward" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "Print" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Close the current window" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Close all windows" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zoom in" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zoom out" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Reset Zoom" + +#: ../src/dh-app.c:251 +msgid "A developers' help browser for GNOME" +msgstr "A developers' help browser for GNOME" + +#: ../src/dh-app.c:253 +msgid "translator-credits" +msgstr "" +"Gareth Owen \n" +"David Lodge \n" +"Bruce Cowan \n" +"David King " + +#: ../src/dh-app.c:255 +msgid "Devhelp Website" +msgstr "Devhelp Website" + +#: ../src/dh-app.c:484 +msgid "Opens a new Devhelp window" +msgstr "Opens a new Devhelp window" + +#: ../src/dh-app.c:489 +msgid "Search for a keyword" +msgstr "Search for a keyword" + +#: ../src/dh-app.c:490 ../src/dh-app.c:495 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-app.c:494 +msgid "Search and display any hit in the assistant window" +msgstr "Search and display any hit in the assistant window" + +#: ../src/dh-app.c:499 +msgid "Display the version and exit" +msgstr "Display the version and exit" + +#: ../src/dh-app.c:504 +msgid "Quit any running Devhelp" +msgstr "Quit any running Devhelp" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistant" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Book:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "Language: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "Language: Undefined" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "Book" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "Page" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "Keyword" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "Property" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "Signal" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Expected '%s', got '%s' at line %d, column %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Invalid namespace '%s' at line %d, column %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"type\" element is required inside on line %d, column %d" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Cannot uncompress book '%s': %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Preferences" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Group by language" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Enabled" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Title" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Book Shelf" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Use system fonts" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_Variable width: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_Fixed width:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Fonts" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1020 +msgid "Error opening the requested link." +msgstr "Error opening the requested link." + +#: ../src/dh-window.c:1337 +msgid "_Close" +msgstr "_Close" + +#: ../src/dh-window.c:1355 ../src/dh-window.c:1529 +msgid "Empty Page" +msgstr "Empty Page" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "New _Tab" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_Print" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_Find" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "_Larger Text" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "S_maller Text" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "_Normal Size" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_Side pane" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "_About Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Back" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Forward" + +#~ msgid "_Window" +#~ msgstr "_Window" + +#~ msgid "_Edit" +#~ msgstr "_Edit" + +#~ msgid "_Copy" +#~ msgstr "_Copy" + +#~ msgid "Find _Next" +#~ msgstr "Find _Next" + +#~ msgid "Find _Previous" +#~ msgstr "Find _Previous" + +#~ msgid "_View" +#~ msgstr "_View" + +#~ msgid "Fullscreen" +#~ msgstr "Fullscreen" + +#~ msgid "_Go" +#~ msgstr "_Go" + +#~ msgid "_Search Tab" +#~ msgstr "_Search Tab" + +#~ msgid "_Contents Tab" +#~ msgstr "_Contents Tab" + +#~ msgid "Go to the previous page" +#~ msgstr "Go to the previous page" + +#~ msgid "Go to the next page" +#~ msgstr "Go to the next page" + +#~ msgid "Decrease the text size" +#~ msgstr "Decrease the text size" + +#~ msgid "Increase the text size" +#~ msgstr "Increase the text size" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Show API Documentation for the word at the cursor" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Focus the Devhelp window with the search field active" + +#~ msgid "All books" +#~ msgstr "All books" + +#~ msgid "Search in:" +#~ msgstr "Search in:" + +#~ msgid "Contents" +#~ msgstr "Contents" + +#~ msgid "Search" +#~ msgstr "Search" + +#~ msgid "Find:" +#~ msgstr "Find:" + +#~ msgid "Find Previous" +#~ msgstr "Find Previous" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Find previous occurrence of the search string" + +#~ msgid "Find Next" +#~ msgstr "Find Next" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Find next occurrence of the search string" + +#~ msgid "C_ase Sensitive" +#~ msgstr "C_ase Sensitive" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Toggle case sensitive search" + +#~ msgid "_File" +#~ msgstr "_File" + +#~ msgid "_Help" +#~ msgstr "_Help" + +#~ msgid "Use the normal text size" +#~ msgstr "Use the normal text size" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Leave fullscreen mode" + +#~ msgid "Display in full screen" +#~ msgstr "Display in full screen" + +#~ msgid "Larger" +#~ msgstr "Larger" + +#~ msgid "Smaller" +#~ msgstr "Smaller" + +#~ msgid "Preferences…" +#~ msgstr "Preferences…" + +#~ msgid "Fonts" +#~ msgstr "Fonts" + +#~ msgid "Show advanced search options" +#~ msgstr "Show advanced search options" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Whether the advanced search options are shown." + +#~ msgid "Searching" +#~ msgstr "Searching" + +#~ msgid "_Show advanced search options" +#~ msgstr "_Show advanced search options" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" + +#~ msgid "Could not create book parser" +#~ msgstr "Could not create book parser" + +#~ msgid "Could not create markup parser" +#~ msgstr "Could not create markup parser" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp is not built with zlib support" + +#~ msgid "Browse Contents" +#~ msgstr "Browse Contents" + +#~ msgid "Specify the size and location of the window" +#~ msgstr "Specify the size and location of the window" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "WIDTHxHEIGHT+XOFF+YOFF" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "Cannot set UI: %s" + +#~ msgid "Location of the paned" +#~ msgstr "Location of the pane" + +#~ msgid "The location of the paned separator." +#~ msgstr "The location of the pane separator." + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Devhelp project page" +#~ msgstr "Devhelp project page" + +#~ msgid "Bug report Devhelp" +#~ msgstr "Bug report Devhelp" diff --git a/po/eo.gmo b/po/eo.gmo new file mode 100644 index 0000000..4f81b74 Binary files /dev/null and b/po/eo.gmo differ diff --git a/po/eo.po b/po/eo.po new file mode 100644 index 0000000..b63d5a1 --- /dev/null +++ b/po/eo.po @@ -0,0 +1,594 @@ +# Esperanto translation for devhelp. +# Copyright (C) 2009 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Kristjan SCHMIDT , 2009, 2011, 2015. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2015-10-03 15:24+0000\n" +"PO-Revision-Date: 2015-10-04 02:12+0200\n" +"Last-Translator: Kristjan SCHMIDT \n" +"Language-Team: Esperanto \n" +"Language: eo\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Project-Style: gnome\n" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:211 +#: ../src/dh-app.c:507 ../src/dh-window.c:753 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Programisto-Helpilo" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Dokumentarfoliumilo" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Maksimumig-stato de la ĉefa fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Ĉu la ĉefa fenestro startu maksimume." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Larĝo de la ĉefa fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "La larĝo de la ĉefa fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Alto de la ĉefa fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "La alto de la ĉefa fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Horizontala pozicio de la ĉefa fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "La horizontala pozicio de la ĉefa fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Vertikala pozicio de la ĉefa fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "La vertikala pozicio de la ĉefa fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Larĝo de la indeksa kaj serĉa panelo" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "La larĝo de la indeksa kaj serĉa panelo." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Elektita langeto: \"enhavo\" aŭ \"serĉo\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Kiu de la langeto estas elektite: \"enhavo\" aŭ \"serĉo\"." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Libroj estas elŝaltitaj" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "La librolisto estas elŝaltite de la uzanto." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Grupigi laŭ lingvo" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Ĉu grupigi librojn laŭ lingvo en la uzantointerfaco" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +#| msgid "Whether the main window should start maximized." +msgid "Whether the assistant window should be maximized" +msgstr "Ĉu la asistanta fenestro estu maksimume" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +#| msgid "Whether the main window should start maximized." +msgid "Whether the assistant window should be maximized." +msgstr "Ĉu la asistanta fenestro estu maksimume." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Larĝo de la asistanta fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "La larĝo de la asistanta fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Alto de la asistanta fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "La alto de la asistanta fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Horizontala pozicio de la asistanta fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "La horizontala pozicio de la asistanta fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Vertikala pozicio de la asistanta fenestro" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "La vertikala pozicio de la asistanta fenestro." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Uzi sistemajn tiparojn" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Uzi la sistemajn defaŭlt-tiparojn." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Tiparo por teksto" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Tiparo por teksto kun varia larĝo." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Tiparo por teksto kun fiksita larĝo" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Tiparo por teksto kun fiksita larĝo. kiel ĉe kodekzemploj." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp-subteno" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "\"F2\" serĉigis Devhelp por la vorto ĉe la kursoro" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Montri la API-dokumentadon" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +#| msgid "_New Window" +msgid "New _Window" +msgstr "Nova _fenestro" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +#| msgid "Preferences" +msgid "_Preferences" +msgstr "_Agordoj" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "_Pri" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "Ĉ_esi" + +#: ../src/dh-app.c:213 +msgid "A developers' help browser for GNOME" +msgstr "Programista helpfoliumilo por GNOME" + +#: ../src/dh-app.c:215 +#| msgid "translator_credits" +msgid "translator-credits" +msgstr "Kristjan SCHMIDT" + +#: ../src/dh-app.c:217 +#| msgid "DevHelp Website" +msgid "Devhelp Website" +msgstr "Devhelp-retejo" + +#: ../src/dh-app.c:432 +msgid "Opens a new Devhelp window" +msgstr "Malfermas novan Devhelp-fenestron" + +#: ../src/dh-app.c:437 +msgid "Search for a keyword" +msgstr "Serĉi slosilvorton" + +#: ../src/dh-app.c:438 ../src/dh-app.c:443 +msgid "KEYWORD" +msgstr "ŜLOSILVORTO" + +#: ../src/dh-app.c:442 +msgid "Search and display any hit in the assistant window" +msgstr "Serĉi kaj montri ĉiun trafon en la asistanta fenestro" + +#: ../src/dh-app.c:447 +msgid "Display the version and exit" +msgstr "Montri la version kaj eliri" + +#: ../src/dh-app.c:452 +msgid "Quit any running Devhelp" +msgstr "Ĉesi ĉiujn aperojn de Devhelp" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Asistanto" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Libro:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "Lingvo: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "Lingvo: nedifinite" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "Libro" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "Paĝo" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "Ŝlosilvorto" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Funkcio" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Strukturo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Makroo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Tipo" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Atendis '%s', ricevis '%s' ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Nevalida nomspaco '%s' ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"title\"-, \"name\"- kaj \"link\"-elementoj bezonatas ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"\"name\"- kaj \"link\"-elementoj bezonatas en ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "\"name\"- kaj \"link\"-elementoj bezonatas en '%s' ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"tipo\"-elemento bezonatas en ĉe linio %d, kolumno %d" + +#: ../src/dh-parser.c:501 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Ne eblas malkompaktigi libron '%s': %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Agordoj" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Grupigi laŭ lingvo" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Enŝaltite" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Titolo" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Libraro" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Uzi sistemajn tiparojn" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_Variebla larĝo: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_Fiksa larĝo:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Tiparoj" + +#: ../src/dh-window.c:86 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:87 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:88 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:89 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:90 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:91 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:92 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:93 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:94 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:975 +msgid "Error opening the requested link." +msgstr "Eraro dum malfermo de la petita ligilo." + +#: ../src/dh-window.c:1246 +msgid "_Close" +msgstr "_Fermi" + +#: ../src/dh-window.c:1274 ../src/dh-window.c:1446 +msgid "Empty Page" +msgstr "Malplena paĝo" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "Nova lange_to" + +#: ../src/dh-window.ui.h:2 +#| msgid "_Print…" +msgid "_Print" +msgstr "_Presi" + +#: ../src/dh-window.ui.h:3 +#| msgid "Find:" +msgid "_Find" +msgstr "_Serĉi" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "Pli _granda teksto" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "Pli _malgranda teksto" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "_Normala grando" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_Flanka panelo" + +#: ../src/dh-window.ui.h:10 +#| msgid "About Devhelp" +msgid "_About Devhelp" +msgstr "_Pri Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Reen" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Antaŭen" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Montri la API-dokumentadon pri la vorto ĉe la kursoro" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Enfokusigi la serĉkampon en la Devhelp-fenestro" + +#~ msgid "All books" +#~ msgstr "Ĉiuj libroj" + +#~ msgid "Search in:" +#~ msgstr "Serĉi en:" + +#~ msgid "_File" +#~ msgstr "_Dosiero" + +#~ msgid "_Edit" +#~ msgstr "R_edakti" + +#~ msgid "_View" +#~ msgstr "_Vido" + +#~ msgid "_Go" +#~ msgstr "E_k" + +#~ msgid "_Help" +#~ msgstr "_Helpo" + +#~ msgid "Find Next" +#~ msgstr "Trovi la sekvan" + +#~ msgid "Find Previous" +#~ msgstr "Trovi la antaŭan" + +#~ msgid "Go to the previous page" +#~ msgstr "Iri al la antaŭa paĝo" + +#~ msgid "Go to the next page" +#~ msgstr "Iri al la sekva paĝo" + +#~ msgid "_Contents Tab" +#~ msgstr "_Enhav-langeto" + +#~ msgid "_Search Tab" +#~ msgstr "_Serĉ-langeto" + +#~ msgid "Increase the text size" +#~ msgstr "Pligrandigi la tekston" + +#~ msgid "Decrease the text size" +#~ msgstr "Plimalgrandigi la tekston" + +#~ msgid "Use the normal text size" +#~ msgstr "Uzi la normalan tekst-grandon" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Forlasi plenekranan reĝimon" + +#~ msgid "Display in full screen" +#~ msgstr "Montri en plenekrana reĝimo" + +#~ msgid "Larger" +#~ msgstr "Pli grande" + +#~ msgid "Smaller" +#~ msgstr "Malpli grande" + +#~ msgid "Preferences…" +#~ msgstr "Agordoj…" + +#~ msgid "Contents" +#~ msgstr "Enhavoj" + +#~ msgid "Search" +#~ msgstr "Serĉo" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Trovi antaŭan aperon de la serĉata ĉeno" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Trovi sekvan aperon de la serĉata ĉeno" + +#~ msgid "C_ase Sensitive" +#~ msgstr "Us_klecodistinge" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Baskuligi usklecodistingan serĉon" + +#~ msgid "Fonts" +#~ msgstr "Tiparoj" diff --git a/po/es.gmo b/po/es.gmo new file mode 100644 index 0000000..85970fe Binary files /dev/null and b/po/es.gmo differ diff --git a/po/es.po b/po/es.po new file mode 100644 index 0000000..fc03e80 --- /dev/null +++ b/po/es.po @@ -0,0 +1,772 @@ +# translation of devhelp.master.po to Español +# Ismael Olea , 2001. +# Francisco Javier F. Serrador , 2003, 2004, 2006. +# Spanish/Spain translation of devhelp. +# Copyright (C) 2001,2003, 2004, 2006, 2007, 2008 Free Software Foundation, Inc. +# Jorge González , 2007, 2009, 2010, 2011. +# Daniel Mustieles , 2012, 2013, 2014, 2015, 2016, 2017, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp.master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-22 12:31+0100\n" +"Last-Translator: Daniel Mustieles \n" +"Language-Team: es \n" +"Language: es\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Gtranslator 2.91.6\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "DevHelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Una herramienta para desarrolladores que sirve para explorar y buscar " +"documentación de la API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp es una herramienta para desarrolladores que sirve para explorar y " +"buscar documentación de la API. Proporciona una manera sencilla de navegador " +"por las bibliotecas y de buscar por función, estructura o macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"La documentación debe estar instalada en local, por lo que no es necesaria " +"una conexión a Internet para usar Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp funciona de manera nativa con GTK-Doc,por lo que las bibliotecas de " +"GTK+ y GNOME están soportadas, pero también se soportan otras plataformas de " +"desarrollo siempre que tengan la documentación de la API disponible en HTML " +"y se genere un archivo índice *.devhelp2." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp se integra con otras aplicaciones como Glade, Anjuta o Builder y hay " +"complementos disponibles para diferentes editores de texto (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "Explorador de documentación de la API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentación;información;manual;desarrollador;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Estado maximizado de la ventana principal" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Indica si la ventana principal debería iniciar maximizada." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Anchura de la ventana principal" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "La anchura de la ventana principal." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Altura de la ventana principal" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "La altura de la ventana principal." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Anchura del índice de panel de búsqueda" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "La anchura del índice y el panel lateral de búsqueda." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Libros desactivados" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Lista de libros desactivados por el usuario." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Agrupar por lenguaje" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Indica si se deben agrupar por lenguaje los libros en la IU" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Anchura de la ventana del asistente" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "La anchura de la ventana del asistente." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Altura de la ventana del asistente" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "La altura de la ventana del asistente." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Usar la tipografía del sistema" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Usar la tipografía predeterminada del sistema." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Tipografía para el texto" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Tipografía para el texto con ancho variable." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Tipografía para el texto de anchura fija" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Tipografía para el texto con anchura fija, tal como los ejemplos de código." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Soporte para DevHelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostrar la documentación de la API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Daniel Mustieles , 2014\n" +"Jorge González , 2007-2009\n" +"Francisco Javier F. Serrador , 2003, 2004, 2006" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Página web de Devhelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Abre una ventana de Devhelp nueva" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Buscar una palabra clave" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "PALABRACLAVE" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Buscar y mostrar cualquier coincidencia en la ventana del asistente" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Muestra la versión y sale" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Termina cualquier DevHelp en ejecución" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Asistente" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Libro:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "lenguaje: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Lenguaje: indefinido" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Contraer todo" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Libro" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Página" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Palabra clave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Función" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Estructura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enumerar" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Tipo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Propiedad" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Señal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferencias" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Agrupar por lenguaje" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Activada" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Título" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Biblioteca" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Usar tipografía del sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Anchura _variable: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Anchura _fija:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Tipografías" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Página vacía" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Error al abrir el enlace solicitado." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Panel lateral" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Imprimir" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Buscar" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Texto más _grande" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Texto más _pequeño" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Tamaño _normal" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "_Ventana nueva" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "Prefere_ncias" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Atajos del teclado" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Ay_uda" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Acerca de DevHelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Salir" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Atrás" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Adelante" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Pestaña nueva" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "General" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Dar el foco a la búsqueda global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Buscar en la página actual" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Abrir una ventana nueva" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Abrir una pestaña nueva" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Conmutar la visibilidad del panel lateral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Atrás" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Adelante" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimir" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Cerrar la ventana actual" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Cerrar todas las ventanas" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Ampliación" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Ampliar" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Reducir" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Restaurar nivel de ampliación" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Acerca de" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Programa de ayuda del desarrollador" + +#~ msgid "X position of main window" +#~ msgstr "Posición X de la ventana principal" + +#~ msgid "The X position of the main window." +#~ msgstr "La posición X de la ventana principal." + +#~ msgid "Y position of main window" +#~ msgstr "Posición Y de la ventana principal" + +#~ msgid "The Y position of the main window." +#~ msgstr "La posición Y de la ventana principal." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Indica si la ventana del asistente debe estar maximizada" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Indica si la ventana del asistente debe estar maximizada." + +#~ msgid "X position of assistant window" +#~ msgstr "Posición X de la ventana del asistente" + +#~ msgid "The X position of the assistant window." +#~ msgstr "La posición X de la ventana del asistente." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posición Y de la ventana del asistente" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "La posición Y de la ventana del asistente." + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Un explorador de ayuda para desarrolladores de GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Cerrar" + +#~ msgid "Side _Panel" +#~ msgstr "_Panel lateral" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Pestaña seleccionada: «content» (contenido) o «search» (búsqueda)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Cuál de las pestañas está seleccionada: «content» (contenido) o " +#~ "«search» (búsqueda)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Se esperaba «%s» se obtuvo «%s» en la línea %d, columna %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Espacio de nombres no válido «%s» en la línea %d, columna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "son necesarios los elementos «título», «nombre» y «enlace» en la línea " +#~ "%d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "son necesarios los elementos «nombre» y «enlace» dentro de en la " +#~ "línea %d, columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "son necesarios los elementos «nombre» y «enlace» dentro de «%s» en la " +#~ "línea %d, columna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "es necesario el «tipo» de elemento dentro de en la línea %d, " +#~ "columna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "No se pudo descomprimir el libro «%s»: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Panel lateral" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Hace que F2 inicie DevHelp para la palabra en el cursor" + +#~| msgid "" +#~| "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~| "target=devhelp.png" +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Muestra la documentación de la API para la palabra bajo el cursor" + +#~ msgid "Current" +#~ msgstr "Actual" + +#~ msgid "All Books" +#~ msgstr "Todos los libros" + +#~ msgid "Find:" +#~ msgstr "Buscar:" + +#~ msgid "Find Previous" +#~ msgstr "Buscar anterior" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Buscar la coincidencia anterior de la cadena buscada" + +#~ msgid "Find Next" +#~ msgstr "Buscar siguiente" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Buscar la siguiente coincidencia de la cadena buscada" + +#~ msgid "C_ase Sensitive" +#~ msgstr "Coincidir con c_apitalización" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Conmutar búsqueda discriminando capitalización" + +#~ msgid "_Window" +#~ msgstr "_Ventana" + +#~ msgid "_Edit" +#~ msgstr "_Editar" + +#~ msgid "_Copy" +#~ msgstr "_Copiar" + +#~ msgid "Find _Next" +#~ msgstr "Buscar _siguiente" + +#~ msgid "Find _Previous" +#~ msgstr "Buscar _anterior" + +#~ msgid "_View" +#~ msgstr "_Ver" + +#~ msgid "Fullscreen" +#~ msgstr "Pantalla completa" + +#~ msgid "_Go" +#~ msgstr "_Ir" + +#~ msgid "_Search Tab" +#~ msgstr "Pestaña de _búsqueda" + +#~ msgid "_Contents Tab" +#~ msgstr "Pestaña de _contenido" + +#~ msgid "Go to the previous page" +#~ msgstr "Ir a la página anterior" + +#~ msgid "Go to the next page" +#~ msgstr "Ir a la página siguiente" + +#~ msgid "Decrease the text size" +#~ msgstr "Disminuir el tamaño del texto" + +#~ msgid "Increase the text size" +#~ msgstr "Aumentar el tamaño del texto" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Da el foco a la ventana de Devhelp con el campo de búsqueda activo" + +#~ msgid "Search in:" +#~ msgstr "Buscar en:" + +#~ msgid "Contents" +#~ msgstr "Índice" + +#~ msgid "Search" +#~ msgstr "Buscar" + +#~ msgid "_File" +#~ msgstr "_Archivo" + +#~ msgid "Use the normal text size" +#~ msgstr "Usar el tamaño de texto normal" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Salir del modo a pantalla completa" + +#~ msgid "Display in full screen" +#~ msgstr "Ver a pantalla completa" + +#~ msgid "Larger" +#~ msgstr "Más grande" + +#~ msgid "Smaller" +#~ msgstr "Más pequeño" + +#~ msgid "Preferences…" +#~ msgstr "Preferencias…" + +#~ msgid "Preferences..." +#~ msgstr "Preferencias…" + +#~ msgid "Show advanced search options" +#~ msgstr "Mostrar opciones de búsqueda avanzadas" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Indica si se muestran las opciones de búsqueda avanzadas." + +#~ msgid "Fonts" +#~ msgstr "Tipografías" + +#~ msgid "Searching" +#~ msgstr "Búsqueda" + +#~ msgid "_Show advanced search options" +#~ msgstr "_Mostrar las opciones de búsqueda avanzadas" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "los elementos nombre y enlace se requieren dentro de en la " +#~ "línea %d, columna %d" + +#~ msgid "Could not create book parser" +#~ msgstr "No se pudo crear el parser del libro" + +#~ msgid "Could not create markup parser" +#~ msgstr "No se pudo crear el parser del marco" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp no está construido con soporte zlib" diff --git a/po/et.gmo b/po/et.gmo new file mode 100644 index 0000000..744c15d Binary files /dev/null and b/po/et.gmo differ diff --git a/po/et.po b/po/et.po new file mode 100644 index 0000000..b2ffc9a --- /dev/null +++ b/po/et.po @@ -0,0 +1,450 @@ +# Devhelpi eesti keele tõlge. +# Estonian translation of Devhelp. +# +# Copyright (C) 2007–2010 The GNOME Project. +# This file is distributed under the same license as the devhelp package. +# +# Ivar Smolin , 2007–2010. +# Mattias Põldaru , 2008, 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp MASTER\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2013-03-12 10:24+0000\n" +"PO-Revision-Date: 2013-03-12 22:35+0300\n" +"Last-Translator: Mattias Põldaru \n" +"Language-Team: Estonian \n" +"Language: et\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +msgid "Devhelp" +msgstr "Devhelp" + +msgid "Developer's Help program" +msgstr "Arendaja abiteabe programm" + +msgid "Documentation Browser" +msgstr "Dokumentatsioonisirvija" + +msgid "documentation;information;manual;developer;api;" +msgstr "" +"dokumentatsioon;informatsioon;andmed;käsiraamat;manuaal;arendajad;arendus;" +"api;" + +msgid "Main window maximized state" +msgstr "Peaakna maksimeeritud olek" + +msgid "Whether the main window should start maximized." +msgstr "Kas peaaken peab käivitamisel saama maksimeeritud või mitte." + +msgid "Width of the main window" +msgstr "Peaakna laius." + +msgid "The width of the main window." +msgstr "Peaakna laius." + +msgid "Height of main window" +msgstr "Peaakna kõrgus" + +msgid "The height of the main window." +msgstr "Peaakna kõrgus." + +msgid "X position of main window" +msgstr "Peaakna asukoht X-teljel" + +msgid "The X position of the main window." +msgstr "Peaakna asukoht X-teljel." + +msgid "Y position of main window" +msgstr "Peaakna asukoht Y-teljel" + +msgid "The Y position of the main window." +msgstr "Peaakna asukoht Y-teljel." + +msgid "Width of the index and search pane" +msgstr "Indeksi- ja otsimispaani laius" + +msgid "The width of the index and search pane." +msgstr "Indeksi- ja otsimispaani laius." + +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Valitud kaart: \"content\" (sisukord) või \"search\" (otsing)" + +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" +"Milline kaart on valitud, kas \"content\" (sisukord) või \"search\" (otsing)" + +msgid "Books disabled" +msgstr "Keelatud raamatud" + +msgid "List of books disabled by the user." +msgstr "Kasutaja poolt keelatud raamatute nimekiri." + +msgid "Group by language" +msgstr "Rühmitamine keelte kaupa" + +msgid "Whether books should be grouped by language in the UI" +msgstr "Kas raamatud tuleks kasutajaliideses rühmitada keelte kaupa või mitte" + +msgid "Width of the assistant window" +msgstr "Assistendiakna laius." + +msgid "The width of the assistant window." +msgstr "Assistendiakna laius." + +msgid "Height of assistant window" +msgstr "Assistendiakna kõrgus" + +msgid "The height of the assistant window." +msgstr "Assistendiakna kõrgus." + +msgid "X position of assistant window" +msgstr "Assistendiakna asukoht X-teljel" + +msgid "The X position of the assistant window." +msgstr "Assistendiakna asukoht X-teljel." + +msgid "Y position of assistant window" +msgstr "Assistendiakna asukoht Y-teljel" + +msgid "The Y position of the assistant window." +msgstr "Assistendiakna asukoht Y-teljel." + +msgid "Use system fonts" +msgstr "Süsteemsete kirjatüüpide kasutamine" + +msgid "Use the system default fonts." +msgstr "Süsteemsete vaikimisi kirjatüüpide kasutamine" + +msgid "Font for text" +msgstr "Teksti kirjatüüp" + +msgid "Font for text with variable width." +msgstr "Muutuva laiusega teksti korral kasutatav kirjatüüp." + +msgid "Font for fixed width text" +msgstr "Määratud laiusega teksti kirjatüüp" + +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Määratud laiusega teksti, nagu koodilõigud, korral kasutatav kirjatüüp." + +msgid "Devhelp support" +msgstr "Devhelpi tugi" + +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F2 korral Devhelpi avamine kursori all oleva sõna kohta" + +msgid "Show API Documentation" +msgstr "Näita API dokumentatsiooni" + +msgid "Show API Documentation for the word at the cursor" +msgstr "Kursori all oleva sõna kohta API dokumentatsiooni näitamine" + +msgid "New window" +msgstr "Uus aken" + +msgid "Preferences" +msgstr "Eelistused" + +msgid "About Devhelp" +msgstr "Devhelpist lähemalt" + +msgid "Quit" +msgstr "Lõpeta" + +msgid "New _Tab" +msgstr "Uus _kaart" + +msgid "_Print" +msgstr "_Printimine" + +msgid "_Find" +msgstr "_Otsi" + +msgid "_Larger text" +msgstr "_Suurem kiri" + +msgid "S_maller text" +msgstr "_Väiksem kiri" + +msgid "_Normal size" +msgstr "_Tavasuurus" + +msgid "_Group by language" +msgstr "_Rühmita keelte kaupa" + +msgid "Enabled" +msgstr "Lubatud" + +msgid "Title" +msgstr "Pealkiri" + +msgid "Book Shelf" +msgstr "Raamaturiiul" + +msgid "_Use system fonts" +msgstr "_Süsteemsete kirjatüüpide kasutamine" + +msgid "_Variable width: " +msgstr "M_uutuva laiusega: " + +msgid "_Fixed width:" +msgstr "_Määratud laiusega:" + +msgid "Fonts" +msgstr "Kirjatüübid" + +msgid "translator_credits" +msgstr "" +"Ivar Smolin , 2007–2010.\n" +"Mattias Põldaru , 2008." + +msgid "A developers' help browser for GNOME" +msgstr "Arendusteabe sirvija GNOME töölauale" + +msgid "DevHelp Website" +msgstr "Devhelpi veebisait" + +#. i18n: Please don't translate "Devhelp". +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +msgid "Book:" +msgstr "Raamat:" + +#, c-format +msgid "Language: %s" +msgstr "Keel: %s" + +msgid "Language: Undefined" +msgstr "Keel: Määramata" + +#. i18n: a documentation book +msgid "Book" +msgstr "Raamat" + +#. i18n: a "page" in a documentation book +msgid "Page" +msgstr "Lehekülg" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +msgid "Keyword" +msgstr "Võtmesõna" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +msgid "Function" +msgstr "Funktsioon" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +msgid "Struct" +msgstr "Struktuur" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +msgid "Type" +msgstr "Tüüp" + +msgid "Opens a new Devhelp window" +msgstr "Uue Devhelp akna avamine" + +msgid "Search for a keyword" +msgstr "Võtmesõna otsimine" + +msgid "KEYWORD" +msgstr "VÕTMESÕNA" + +msgid "Search and display any hit in the assistant window" +msgstr "Otsi ja kuva iga vastavus assistendiaknas" + +msgid "Display the version and exit" +msgstr "Versiooni andmete kuvamine ja programmi töö lõpetamine" + +msgid "Quit any running Devhelp" +msgstr "Kõigi töötavate devhelp'ide sulgemine" + +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Oodati '%s', selle asemel saadi '%s' %d. rea %d. veerul" + +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Vigane nimeruum '%s' %d. rea %d. veerul" + +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"%d. rea %d. veerul peavad olema pealkiri (\"title\"), nimi (\"name\") ja " +"viit (\"link\")" + +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"%d. rea %d. veerul peavas sildi sees olema nime (\"name\") ja viida " +"(\"link\") kirjed" + +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"%2$d. rea %3$d. veerul peavad '%1$s' sildi sees olema nime (\"name\") ja " +"viida (\"link\") kirjed" + +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "%d. rea %d. veerul sees on \"type\" element kohustuslik" + +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Raamatut '%s' pole võimalik lahti pakkida: %s" + +#. Setup the Current/All Files selector +msgid "Current" +msgstr "Praegune" + +msgid "All Books" +msgstr "Kõik raamatud" + +msgid "50%" +msgstr "50%" + +msgid "75%" +msgstr "75%" + +msgid "100%" +msgstr "100%" + +msgid "125%" +msgstr "125%" + +msgid "150%" +msgstr "150%" + +msgid "175%" +msgstr "175%" + +msgid "200%" +msgstr "200%" + +msgid "300%" +msgstr "300%" + +msgid "400%" +msgstr "400%" + +msgid "Back" +msgstr "Tagasi" + +msgid "Forward" +msgstr "Edasi" + +msgid "Error opening the requested link." +msgstr "Viga küsitud viida avamisel." + +msgid "Empty Page" +msgstr "Tühi leht" + +msgid "Find:" +msgstr "Otsing:" + +msgid "Find Previous" +msgstr "Leia eelmine" + +msgid "Find previous occurrence of the search string" +msgstr "Stringi eelmise esinemiskoha leidmine" + +msgid "Find Next" +msgstr "Leia järgmine" + +msgid "Find next occurrence of the search string" +msgstr "Stringi järgmise esinemiskoha leidmine" + +msgid "C_ase Sensitive" +msgstr "_Tõstutundlik" + +msgid "Toggle case sensitive search" +msgstr "Tõstutundliku otsingu sisse- ja väljalülitamine" + +#~ msgid "_Window" +#~ msgstr "_Aken" + +#~ msgid "_Close" +#~ msgstr "_Sulge" + +#~ msgid "_Edit" +#~ msgstr "_Redaktor" + +#~ msgid "_Copy" +#~ msgstr "_Kopeeri" + +#~ msgid "Find _Next" +#~ msgstr "Leia _järgmine" + +#~ msgid "Find _Previous" +#~ msgstr "Leia _eelmine" + +#~ msgid "_View" +#~ msgstr "_Vaade" + +#~ msgid "Fullscreen" +#~ msgstr "Täisekraan" + +#~ msgid "_Go" +#~ msgstr "_Liikumine" + +#~ msgid "_Search Tab" +#~ msgstr "_Otsingu kaart" + +#~ msgid "_Contents Tab" +#~ msgstr "_Sisukorra kaart" + +#~ msgid "Go to the previous page" +#~ msgstr "Liigu järgmisele lehele" + +#~ msgid "Go to the next page" +#~ msgstr "Liigu eelmisele lehele" + +#~ msgid "Decrease the text size" +#~ msgstr "Kirja suuruse vähendamine" + +#~ msgid "Increase the text size" +#~ msgstr "Kirja suuruse suurendamine" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Devhelpi akna fokuseerimine koos aktiivse otsinguväljaga" + +#~ msgid "Search in:" +#~ msgstr "Otsi kohast:" + +#~ msgid "Contents" +#~ msgstr "Sisukord" + +#~ msgid "Search" +#~ msgstr "Otsing" diff --git a/po/eu.gmo b/po/eu.gmo new file mode 100644 index 0000000..2964a24 Binary files /dev/null and b/po/eu.gmo differ diff --git a/po/eu.po b/po/eu.po new file mode 100644 index 0000000..a3bfead --- /dev/null +++ b/po/eu.po @@ -0,0 +1,644 @@ +# Basque translation of devhelp. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Iñaki Larrañaga Murgoitio , 2011, 2013, 2014, 2015, 2016, 2017. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-09-09 14:23+0200\n" +"PO-Revision-Date: 2017-07-25 16:11+0200\n" +"Last-Translator: Iñaki Larrañaga Murgoitio \n" +"Language-Team: Basque \n" +"Language: eu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.5\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Maximizatutako leiho nagusiaren egoera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Leiho nagusia maximizatuta ireki behar den ala ez adierazten du." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Leiho nagusiaren zabalera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "Leiho nagusiaren zabalera." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Leiho nagusiaren altuera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "Leiho nagusiaren altuera." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Leiho nagusiaren X posizioa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "Leiho nagusiaren X posizioa." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Leiho nagusiaren Y posizioa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "Leiho nagusiaren Y posizioa." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Indexazio- eta bilaketa-panelaren zabalera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "Indexazio- eta bilaketa-panelaren zabalera." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Books disabled" +msgstr "Liburuak desgaituta" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "List of books disabled by the user." +msgstr "Erabiltzaileak desgaitutako liburuen zerrenda." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Group by language" +msgstr "Elkartu hizkuntzaren arabera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "Whether books should be grouped by language in the UI" +msgstr "Liburuak hizkuntzaren arabera elkartu behar diren interfazean edo ez" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Whether the assistant window should be maximized" +msgstr "Laguntzailearen leihoa maximizatuta behar den ala ez adierazten du" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether the assistant window should be maximized." +msgstr "Laguntzailearen leihoa maximizatuta behar den ala ez adierazten du." + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Width of the assistant window" +msgstr "Leiho laguntzailearen zabalera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "The width of the assistant window." +msgstr "Leiho laguntzailearen zabalera." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Height of assistant window" +msgstr "Leiho laguntzailearen altuera" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The height of the assistant window." +msgstr "Leiho laguntzailearen altuera." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "X position of assistant window" +msgstr "Leiho laguntzailearen X posizioa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The X position of the assistant window." +msgstr "Leiho laguntzailearen X posizioa." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "Y position of assistant window" +msgstr "Leiho laguntzailearen Y posizioa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The Y position of the assistant window." +msgstr "Leiho laguntzailearen Y posizioa." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Use system fonts" +msgstr "Erabili sistemako letra-tipoak" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "Use the system default fonts." +msgstr "Erabili sistemaren letra-tipo lehenetsiak." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Font for text" +msgstr "Testuaren letra-tipoa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Font for text with variable width." +msgstr "Zabalera aldakorreko testuaren letra-tipoa." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for fixed width text" +msgstr "Zabalera finkoko testuaren letra-tipoa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Zabalera finkoko testuaren letra-tipoa, kode-adibideen testuarena, esate " +"baterako." + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Erakutsi API dokumentazioa" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../src/dh-app.c:232 ../src/dh-app.c:537 ../src/dh-window.c:878 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "GNOMErako garatzaileen laguntza-arakatzailea" + +#: ../src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Hizkuntza Politikarako SailburuordetzaIñaki Larrañaga Murgoitio " +"" + +#: ../src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Devhelp-en webgunea" + +#: ../src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Devhelp-en leiho berria irekitzen du" + +#: ../src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Gako-hitz bat bilatzen du" + +#: ../src/dh-app.c:468 ../src/dh-app.c:473 +msgid "KEYWORD" +msgstr "GAKO-HITZA" + +#: ../src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Bilatu eta erakutsi leiho laguntzaileko atzipen guztiak" + +#: ../src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Bistaratu bertsioa eta irten" + +#: ../src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Irten exekutatzen ari diren Devhelp guztiak" + +#: ../src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Liburua:" + +#: ../src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Hizkuntza: %s" + +#: ../src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Hizkuntza: definitu gabea" + +#: ../src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "_Tolestu dena" + +#. i18n: a documentation book +#: ../src/dh-link.c:403 +msgid "Book" +msgstr "Liburua" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:407 +msgid "Page" +msgstr "Orria" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:412 +msgid "Keyword" +msgstr "Gako-hitza" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:418 +msgid "Function" +msgstr "Funtzioa" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:424 +msgid "Struct" +msgstr "Egitura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:430 +msgid "Macro" +msgstr "Makroa" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:436 +msgid "Enum" +msgstr "Zenbakitzea" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:442 +msgid "Type" +msgstr "Mota" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:448 +msgid "Property" +msgstr "Propietatea" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:454 +msgid "Signal" +msgstr "Seinalea" + +#: ../src/dh-window.c:78 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:79 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:80 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:81 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:82 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:83 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:84 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:85 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:86 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1100 +msgid "Error opening the requested link." +msgstr "Errorea eskatutako esteka irekitzean." + +#: ../src/dh-window.c:1417 +msgid "_Close" +msgstr "_Itxi" + +#: ../src/dh-window.c:1435 ../src/dh-window.c:1616 +msgid "Empty Page" +msgstr "Orri hutsa" + +#~ msgid "Developer’s Help program" +#~ msgstr "Garatzaileen Laguntza-programa" + +#~ msgid "" +#~ "Devhelp is an API documentation browser. It provides an easy way to " +#~ "navigate through libraries, search by function, struct, or macro. It " +#~ "provides a tabbed interface and allows to print results." +#~ msgstr "" +#~ "Devhelp APIen dokumentazioaren arakatzaile bat da. Liburutegien artean " +#~ "erraz nabigatzea uzten dizu, baita funtzioen, egituren edo makroen " +#~ "arabera bilaketak egitea ere. Fitxetan banatutako interfazea eskaintzen " +#~ "du emaitzak erakusteko." + +#~ msgid "" +#~ "Devhelp integrates with other applications such as Glade, Anjuta, or " +#~ "Geany." +#~ msgstr "" +#~ "Glade, Anjuta, edo Geany bezalako aplikazio batzuekin bateratzen da " +#~ "Devhelp." + +#~ msgid "Documentation Browser" +#~ msgstr "Dokumentazio-arakatzailea" + +#~ msgid "documentation;information;manual;developer;api;" +#~ msgstr "dokumentazioa;informazioa;eskuliburua;garatzailea;APIa;" + +#~ msgid "devhelp" +#~ msgstr "devhelp" + +#~ msgid "Devhelp support" +#~ msgstr "Devhelp-en laguntza" + +#~ msgid "New _Window" +#~ msgstr "Leiho _berria" + +#~ msgid "_Preferences" +#~ msgstr "_Hobespenak" + +#~ msgid "_Keyboard Shortcuts" +#~ msgstr "_Laster-teklak" + +#~ msgid "_About" +#~ msgstr "Honi _buruz" + +#~ msgid "_Quit" +#~ msgstr "I_rten" + +#~ msgctxt "shortcut window" +#~ msgid "General" +#~ msgstr "Orokorra" + +#~ msgctxt "shortcut window" +#~ msgid "Focus global search" +#~ msgstr "Fokua bilaketa globalean" + +#~ msgctxt "shortcut window" +#~ msgid "Find in current page" +#~ msgstr "Bilatu uneko orrialdean" + +#~ msgctxt "shortcut window" +#~ msgid "Open a new window" +#~ msgstr "Ireki leiho berria" + +#~ msgctxt "shortcut window" +#~ msgid "Open a new tab" +#~ msgstr "Ireki fitxa berria" + +#~ msgctxt "shortcut window" +#~ msgid "Toggle side panel visibility" +#~ msgstr "Txandakatu albo-panelaren ikusgaitasuna" + +#~ msgctxt "shortcut window" +#~ msgid "Go back" +#~ msgstr "Joan atzera" + +#~ msgctxt "shortcut window" +#~ msgid "Go forward" +#~ msgstr "Joan aurrera" + +#~ msgctxt "shortcut window" +#~ msgid "Print" +#~ msgstr "Inprimatu" + +#~ msgctxt "shortcut window" +#~ msgid "Close the current window" +#~ msgstr "Itxi uneko leihoa" + +#~ msgctxt "shortcut window" +#~ msgid "Close all windows" +#~ msgstr "Itxi leiho guztiak" + +#~ msgctxt "shortcut window" +#~ msgid "Zoom" +#~ msgstr "Zooma" + +#~ msgctxt "shortcut window" +#~ msgid "Zoom in" +#~ msgstr "Handiagotu" + +#~ msgctxt "shortcut window" +#~ msgid "Zoom out" +#~ msgstr "Txikiagotu" + +#~ msgctxt "shortcut window" +#~ msgid "Reset Zoom" +#~ msgstr "Berrezarri zooma" + +#~ msgid "Devhelp — Assistant" +#~ msgstr "Devhelp — Laguntzailea" + +#~ msgid "Preferences" +#~ msgstr "Hobespenak" + +#~ msgid "_Group by language" +#~ msgstr "_Elkartu hizkuntzaren arabera" + +#~ msgid "Enabled" +#~ msgstr "Gaituta" + +#~ msgid "Title" +#~ msgstr "Titulua" + +#~ msgid "Book Shelf" +#~ msgstr "Liburutegia" + +#~ msgid "_Use system fonts" +#~ msgstr "_Erabili sistemako letra-tipoak" + +#~ msgid "_Variable width: " +#~ msgstr "Zabalera _aldakorra: " + +#~ msgid "_Fixed width:" +#~ msgstr "Zabalera _finkatua:" + +#~ msgid "Fonts" +#~ msgstr "Letra-tipoak" + +#~ msgid "Side _Panel" +#~ msgstr "Albo-_panela" + +#~ msgid "_Print" +#~ msgstr "_Inprimatu" + +#~ msgid "_Find" +#~ msgstr "_Bilatu" + +#~ msgid "_Larger Text" +#~ msgstr "Testu _handiagoa" + +#~ msgid "S_maller Text" +#~ msgstr "Testu _txikiagoa" + +#~ msgid "_Normal Size" +#~ msgstr "Tamaina _normala" + +#~ msgid "_Side Panel" +#~ msgstr "Albo-_panela" + +#~ msgid "_About Devhelp" +#~ msgstr "_Devhelp-i buruz" + +#~ msgid "Back" +#~ msgstr "Atzera" + +#~ msgid "Forward" +#~ msgstr "Aurrera" + +#~ msgid "New Tab" +#~ msgstr "Fitxa berria" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Hautatutako fitxa: \"edukia\" edo \"bilatu\"" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Fitxetako zein dagoen hautatuta: \"content\" edo \"search\"." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "'%s' espero zen, '%s' jaso da %d lerroan, %d zutabean" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Baliogabeko '%s' izenlekua %d lerroan, %d zutabean" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "\"title\", \"name\" eta \"link\" elementuak behar dira %d lerroan, %d " +#~ "zutabean" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"name\" eta \"link\" elementuak behar dira barruan %d lerroan, %d " +#~ "zutabean" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"name\" eta \"link\" elementuak behar dira '%s' barruan %d lerroan, %d " +#~ "zutabean" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "\"type\" elementua behar da barruan %d lerroan, %d zutabean" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Ezin da deskonprimatu '%s' liburua: %s" + +#~ msgid "_Side pane" +#~ msgstr "Albo-panela" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "F2 teklak Devhelp irekitzea eragiten du kurtsorea dagoen hitzerako" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Erakutsi API dokumentazioa kurtsorea dagoen hitzerako" + +#~ msgid "Current" +#~ msgstr "Unekoa" + +#~ msgid "All Books" +#~ msgstr "Liburu guztiak" + +#~ msgid "Find:" +#~ msgstr "Bilatu:" + +#~ msgid "Find Previous" +#~ msgstr "Bilatu aurrekoa" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Bilatu bilaketa-katearen aurreko agerraldia" + +#~ msgid "Find Next" +#~ msgstr "Bilatu hurrengoa" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Bilatu bilaketa-katearen hurrengo agerraldia" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_Maiuskula/minuskula" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Txandakatu maiuskulak eta minuskulak bereizten dituen bilaketa" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Devhelp leihoa fokuratzen du bilaketa-eremu aktiboarekin" + +#~ msgid "Search in:" +#~ msgstr "Bilatu hemen:" + +#~ msgid "_File" +#~ msgstr "_Fitxategia" + +#~ msgid "_Edit" +#~ msgstr "_Editatu" + +#~ msgid "_View" +#~ msgstr "_Ikuspegia" + +#~ msgid "_Go" +#~ msgstr "_Joan" + +#~ msgid "_Help" +#~ msgstr "_Laguntza" + +#~ msgid "Go to the previous page" +#~ msgstr "Joan aurreko orrira" + +#~ msgid "Go to the next page" +#~ msgstr "Joan hurrengo orrira" + +#~ msgid "_Contents Tab" +#~ msgstr "_Edukien fitxa" + +#~ msgid "_Search Tab" +#~ msgstr "_Bilatu fitxa" + +#~ msgid "Increase the text size" +#~ msgstr "Handitu testuaren tamaina" + +#~ msgid "Decrease the text size" +#~ msgstr "Txikitu testuaren tamaina" + +#~ msgid "Use the normal text size" +#~ msgstr "Erabili testu-tamaina normala" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Utzi pantaila osoko modua" + +#~ msgid "Display in full screen" +#~ msgstr "Erakutsi pantaila osoko moduan" + +#~ msgid "Larger" +#~ msgstr "Handiagoa" + +#~ msgid "Smaller" +#~ msgstr "Txikiagoa" + +#~ msgid "Preferences…" +#~ msgstr "Hobespenak..." + +#~ msgid "Contents" +#~ msgstr "Edukia" + +#~ msgid "Search" +#~ msgstr "Bilatu" diff --git a/po/fa.gmo b/po/fa.gmo new file mode 100644 index 0000000..1804fcd Binary files /dev/null and b/po/fa.gmo differ diff --git a/po/fa.po b/po/fa.po new file mode 100644 index 0000000..d15eb3f --- /dev/null +++ b/po/fa.po @@ -0,0 +1,593 @@ +# Persian translation for devhelp. +# Copyright (C) 2011 Iranian Free Software Users Group (IFSUG.org)translation team. +# This file is distributed under the same license as the devhelp package. +# Arash Mousavi , 2011, 2012, 2013, 2015. +# Mahyar Moghimi , 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2015-09-16 15:21+0000\n" +"PO-Revision-Date: 2015-09-16 23:30+0430\n" +"Last-Translator: Arash Mousavi \n" +"Language-Team: Persian\n" +"Language: fa\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-Poedit-SourceCharset: UTF-8\n" +"X-Generator: Poedit 1.8.4\n" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a tabbed " +"interface and allows to print results." +msgstr "" +"برنامه Devhelp یک مرورگر مستندات API است. این برنامه راهی ساده برای حرکت بین " +"کتابخانه‌ها، جستجو بر اساس تابع، struct یا ماکرو را فراهم می‌کند. از امکان ایجاد " +"زبانه برخوردار است و اجازه چاپ نتایج را می‌دهد." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +msgid "Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "برنامه Devhelp با سایر برنامه‌ها نظیر Glade، Anjuta و Geany یکپارچه می‌شود." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:211 +#: ../src/dh-app.c:507 ../src/dh-window.c:753 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "برنامه‌ی راهنمای توسعه‌دهندگان" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "مرورگر مستندات" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "مستندات;اطلاعات;راهنما;توسعه‌دهنده;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "وضعیت بیشینه‌ی پنجره اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "این‌که آیا پنجره اصلی در هنگام آغاز به کار بیشینه باشد یا خیر." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "پهنای پنجره اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "پهنای پنجره اصلی." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "ارتفاع پنجره‌ی اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "ارتفاع پنجره‌ی اصلی." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "موقعیت X پنجره‌ی اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "موقعیت X پنجره‌ی اصلی." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "موقعیت Y پنجره‌ی اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "موقعیت Y پنجره‌ی اصلی" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "پهنای قاب فهرست و جستجو" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "پهنای قاب نمایه و جستجو." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "زبانه انتخاب شده: «content» یا «search»" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "کدام یک از زبانه‌ها انتخاب شده است: «content» یا «search»." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "کتابها غیرفعال شد" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "لیست کتابهایی که توسط کاربر غیرفعال شده است." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "گروه‌بندی براساس زبان" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "این‌که آیا کتابها بر اساس زبان در رابط کاربری گروه‌بندی بشوند یا خیر" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "این‌که آیا پنجره کمکی بیشینه باشد یا خیر." + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "این‌که آیا پنجره کمکی بیشینه باشد یا خیر." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "پهنای پنجره دستیار" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "پهنای پنجره‌ی دستیار." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "ارتفاع پنجره‌ی دستیار" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "ارتفاع پنجره‌ی دستیار." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "موقعیت X پنجره‌ی دستیار" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "موقعیت X پنجره‌ی دستیار." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "موقعیت Y پنجره‌ی دستیار" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "موقعیت Y پنجره‌ی دستیار." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "استفاده از قلم‌های سیستم" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "استفاده از قلم‌های پیش‌فرض سیستم." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "قلم برای متن" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "قلم برای متن با پهنای متغیر." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "قلم برای متن‌هایی با پهنا ثابت" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "قلم برای متن با پهنای ثابت، مثل کدهای مثال." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "پشتیبانی DevHelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" +"کاری می‌کند تا F2 باعث بالا آمدن DevHelp برای کلمه مشخص شده توسط مکان‌نما شود" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "نمایش مستندات API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "_پنجره جدید" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_ترجیحات" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "_درباره" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_خروج" + +#: ../src/dh-app.c:213 +msgid "A developers' help browser for GNOME" +msgstr "یک مرورگر راهنما برای توسعه‌دهنده‌گان گنوم" + +#: ../src/dh-app.c:215 +msgid "translator-credits" +msgstr "" +"آرش موسوی \n" +"مهیار مقیمی " + +#: ../src/dh-app.c:217 +msgid "Devhelp Website" +msgstr "پایگاه وب Devhelp" + +#: ../src/dh-app.c:432 +msgid "Opens a new Devhelp window" +msgstr "یک پنجره جدید Devhelp باز می‌کند" + +#: ../src/dh-app.c:437 +msgid "Search for a keyword" +msgstr "کلیدواژه برای جستجو" + +#: ../src/dh-app.c:438 ../src/dh-app.c:443 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-app.c:442 +msgid "Search and display any hit in the assistant window" +msgstr "جستجو و نمایش هر نوع نتیجه در پنجره دستیار" + +#: ../src/dh-app.c:447 +msgid "Display the version and exit" +msgstr "نمایش نسخه و خروج" + +#: ../src/dh-app.c:452 +msgid "Quit any running Devhelp" +msgstr "خروج از هر DevHelp درحال اجر" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — دستیار" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "کتاب:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "زبان: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "زبان: تعریف نشده" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "کتاب" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "صفحه" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "کلیدواژه" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Type" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "یک «%s» مورد انتظار بود که به جای آن «%s»در خط %Id، ستون %Id دریافت شده" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "فضای‌نام نامعتبر «%s» در خط %Id، ستون %Id" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "عناصر «title»، «name» و «link» در خط %Id، ستون %Id لازم است" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %d" +msgstr "عناصر «name» و «link» درون در خط %Id، ستون %Id لازم است" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "عناصر «name» و «link» درون «%s» در خط %Id، ستون %Id لازم است" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "عنصر «type» درون در خط %Id، ستون %Id لازم است" + +#: ../src/dh-parser.c:501 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "عدم امکان در نافشرده کتاب «%s»: %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "ترجیح‌ها" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_گروه‌بندی بر اساس زبان" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "فعال شد" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "عنوان" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "قفسه‌ی کتاب" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_استفاده از قلم‌های سیستم" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_پهنای متغیر: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_پهنای ثابت:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "قلم‌ها" + +#: ../src/dh-window.c:86 +msgid "50%" +msgstr "۵۰٪" + +#: ../src/dh-window.c:87 +msgid "75%" +msgstr "۷۵٪" + +#: ../src/dh-window.c:88 +msgid "100%" +msgstr "۱۰۰٪" + +#: ../src/dh-window.c:89 +msgid "125%" +msgstr "۱۲۵٪" + +#: ../src/dh-window.c:90 +msgid "150%" +msgstr "۱۵۰٪" + +#: ../src/dh-window.c:91 +msgid "175%" +msgstr "۱۷۵٪" + +#: ../src/dh-window.c:92 +msgid "200%" +msgstr "۲۰۰٪" + +#: ../src/dh-window.c:93 +msgid "300%" +msgstr "۳۰۰٪" + +#: ../src/dh-window.c:94 +msgid "400%" +msgstr "۴۰۰٪" + +#: ../src/dh-window.c:975 +msgid "Error opening the requested link." +msgstr "خطا در هنگام بازکردن لینک درخواست شده." + +#: ../src/dh-window.c:1246 +msgid "_Close" +msgstr "_خروج" + +#: ../src/dh-window.c:1274 ../src/dh-window.c:1446 +msgid "Empty Page" +msgstr "صفحه‌ی خالی" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "_زبانه‌ی جدید" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_چاپ" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_پیدا کردن" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "_متن بزرگتر" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "م_تن کوچکتر" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "اندازه‌ی _عادی" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_نوار کناری" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "درباره‌ی Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "عقب" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "جلو" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "نمایش مستندات API برای کلمه مشخص شده توسط مکان‌نما" + +#~ msgid "Current" +#~ msgstr "فعلی" + +#~| msgid "All books" +#~ msgid "All Books" +#~ msgstr "تمام کتاب‌ها" + +#~ msgid "Find:" +#~ msgstr "جستجو:" + +#~ msgid "Find Previous" +#~ msgstr "جستجوی قبلی" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "پیدا کردن پیش‌آمد پیشین رشته‌ی جستجو شده" + +#~ msgid "Find Next" +#~ msgstr "جستجوی بعدی" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "پیدا کردن پیش‌آمد بعدی رشته‌ی جستجو شده" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_حساس به بزرگی و کوچکی حروف" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "تغییر حالت به جستجو به شکل حساس به بزرگی و کوچکی حروف" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "تمرکز بر روی پنجره Devhelp همراه با فیلد فعال جستجو" + +#~ msgid "Search in:" +#~ msgstr "جستجو در:" + +#~ msgid "_File" +#~ msgstr "_پرونده" + +#~ msgid "_Edit" +#~ msgstr "_ویرایش" + +#~ msgid "_View" +#~ msgstr "_نما" + +#~ msgid "_Go" +#~ msgstr "_رفتن" + +#~ msgid "_Help" +#~ msgstr "_راهنما" + +#~ msgid "Go to the previous page" +#~ msgstr "رفتن به صفحه‌ی پیشین" + +#~ msgid "Go to the next page" +#~ msgstr "رفتن به صفحه‌ی بعدی" + +#~ msgid "_Contents Tab" +#~ msgstr "_زبانه‌ی محتویات" + +#~ msgid "_Search Tab" +#~ msgstr "_زبانه‌ی جستجو" + +#~ msgid "Increase the text size" +#~ msgstr "افزایش اندازه‌ی متن" + +#~ msgid "Decrease the text size" +#~ msgstr "کاهش اندازه‌ی متن" + +#~ msgid "Use the normal text size" +#~ msgstr "استفاده از اندازه‌ی عادی متن" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "خروج از حالت تمام‌صفحه" + +#~ msgid "Display in full screen" +#~ msgstr "نمایش در حالت تمام‌صفحه" + +#~ msgid "Larger" +#~ msgstr "بزرگ‌تر" + +#~ msgid "Smaller" +#~ msgstr "کوچک‌تر" + +#~ msgid "Contents" +#~ msgstr "محتویات" + +#~ msgid "Search" +#~ msgstr "جستجو" + +#~ msgid "Preferences…" +#~ msgstr "ترجیح‌ها..." diff --git a/po/fi.gmo b/po/fi.gmo new file mode 100644 index 0000000..9d3250a Binary files /dev/null and b/po/fi.gmo differ diff --git a/po/fi.po b/po/fi.po new file mode 100644 index 0000000..a130ed0 --- /dev/null +++ b/po/fi.po @@ -0,0 +1,638 @@ +# Finnish translations for devhelp +# Copyright (C) 2004 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Ilkka Tuohela 2004-2009. +# Tommi Vainikainen 2010-2011. +# +# Gnome 2012-03 Finnish translation sprint participants: +# Niklas Laxström +# +# Lasse Liehu , 2014. +# Jiri Grönroos , 2012, 2013, 2014, 2015, 2016, 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-28 17:56+0000\n" +"PO-Revision-Date: 2018-02-06 23:49+0200\n" +"Last-Translator: Jiri Grönroos \n" +"Language-Team: suomi \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-POT-Import-Date: 2012-02-19 15:17:00+0000\n" +"X-Generator: Poedit 1.8.7.1\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:450 +#: src/dh-window.c:608 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Kehittäjätyökalu rajapintadokumentaation selaamiseen ja hakemiseen" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp on ohjelmointirajapintojen dokumentaatioselain. Sen avulla " +"kirjastojen selaus on helppoa, hakuominaisuuksiin sisältyvät function, " +"struct ja macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Tämä dokumentaatio on asennettava paikallisesti, joten internetyhteyttä ei " +"tarvita Devhelpin käyttämiseksi." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp toimii natiivisti GTK-Docin kanssa, joten GTK+- ja GNOME-kirjastot " +"ovat hyvin tuettuja. Myös muut kehitysalustat ovat tuettavissa, niin kauan " +"kuin rajapintadokumentaatio on saatavilla HTML-muodossa ja *.devhelp2-" +"indeksitiedosto on luotu." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp integroituu muihin sovelluksiin, kuten Gladeen, Builderiin tai " +"Anjutaan, ja liitännäisiä on saatavilla eri tekstimuokkaimille (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Rajapintojen dokumentaatioselain" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentation;information;manual;developer;api;dokumentaatio;käsikirja;ohje;" +"kehittäjä;kehitys;ohjelmointirajapinta;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Pääikkunan suurennettu tila" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Näytetäänkö pääikkuna käynnistettäessä suurennettuna." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Pääikkunan leveys" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Pääikkunan leveys." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Pääikkunan korkeus" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Pääikkunan korkeus." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Sisällysluettelo- ja hakupaneelin leveys" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Sisällysluettelo- ja hakupaneelin leveys." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Piilotetut kirjat" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Luettelo käyttäjän piilottamista kirjoista." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Ryhmittele kielen mukaan" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Ryhmitelläänkö kirjat kielen mukaan käyttöliittymässä" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Apuikkunan leveys" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Apuikkunan leveys." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Apuikkunan korkeus" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Apuikkunan korkeus." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Käytä järjestelmän fontteja" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Käytä järjestelmän oletusfontteja." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Tekstin fontti" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Fontti vaihtelevan levyistä fonttia käyttäville teksteille." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Tasalevyisen tekstin fontti" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Fontti tasalevyistä fonttia käyttäville teksteille kuten esimerkiksi " +"koodiesimerkeille." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp-tuki" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Näytä API-dokumentaatio" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Jiri Grönroos 2012-2018\n" +"Tommi Vainikainen, 2010-2011\n" +"Ilkka Tuohela, 2004-2005\n" +"\n" +"https://l10n.gnome.org/teams/fi/" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Devhelp-verkkosivusto" + +#: src/dh-app.c:354 +msgid "Opens a new Devhelp window" +msgstr "Avaa uuden Devhelp-ikkunan" + +#: src/dh-app.c:359 +msgid "Search for a keyword" +msgstr "Etsi avainsanalla" + +#: src/dh-app.c:360 src/dh-app.c:365 +msgid "KEYWORD" +msgstr "AVAINSANA" + +#: src/dh-app.c:364 +msgid "Search and display any hit in the assistant window" +msgstr "Etsi ja näytä osumat apuikkunassa" + +#: src/dh-app.c:369 +msgid "Display the version and exit" +msgstr "Näytä versio ja lopeta" + +#: src/dh-app.c:374 +msgid "Quit any running Devhelp" +msgstr "Sulje avoinna olevat Devhelp-ohjelmat" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — apuikkuna" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Kirja:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Kieli: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Kieli: määrittelemätön" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Supista kaikki" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Kirja" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Sivu" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Avainsana" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funktio" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Ominaisuus" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signaali" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Asetukset" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Ryhmittele kielen mukaan" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Käytössä" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Otsikko" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Kirjahylly" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Käytä järjestelmän fontteja" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Vaihtelevan levyinen: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Tasalevyinen:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Fontit" + +#: src/dh-window.c:60 +msgid "50%" +msgstr "50 %" + +#: src/dh-window.c:61 +msgid "75%" +msgstr "75 %" + +#: src/dh-window.c:62 +msgid "100%" +msgstr "100 %" + +#: src/dh-window.c:63 +msgid "125%" +msgstr "125 %" + +#: src/dh-window.c:64 +msgid "150%" +msgstr "150 %" + +#: src/dh-window.c:65 +msgid "175%" +msgstr "175 %" + +#: src/dh-window.c:66 +msgid "200%" +msgstr "200 %" + +#: src/dh-window.c:67 +msgid "300%" +msgstr "300 %" + +#: src/dh-window.c:68 +msgid "400%" +msgstr "400 %" + +#: src/dh-window.c:832 +msgid "Error opening the requested link." +msgstr "Linkin avaaminen epäonnistui." + +#: src/dh-window.c:1147 +msgid "_Close" +msgstr "_Sulje" + +#: src/dh-window.c:1165 src/dh-window.c:1346 +msgid "Empty Page" +msgstr "Tyhjä sivu" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Sivupaneeli" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Tulosta" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Etsi" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Suurempi teksti" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Pienempi teksti" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Tavallinen koko" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "_Uusi ikkuna" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Asetukset" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Pikanpääimet" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Ohje" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Tietoja - Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Lopeta" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Edellinen" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Seuraava" + +#: src/dh-window.ui:188 +msgid "New Tab" +msgstr "Uusi välilehti" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Yleiset" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Kohdista yleishakuun" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Etsi nykyiseltä sivulta" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Avaa uusi ikkuna" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Avaa uusi välilehti" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Sivupalkki päällä/pois" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Siirry taaksepäin" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Siirry eteenpäin" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Tulosta" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Sulje nykyinen ikkuna" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Sulje kaikki ikkunat" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Mittakaava" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Lähennä" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Loitonna" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Palauta mittakaava" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Tietoja" + +#~ msgid "Developer’s Help program" +#~ msgstr "Kehittäjien ohje" + +#~ msgid "X position of main window" +#~ msgstr "Pääikkunan X-koordinaatti" + +#~ msgid "The X position of the main window." +#~ msgstr "Pääikkunan X-koordinaatti." + +#~ msgid "Y position of main window" +#~ msgstr "Pääikkunan Y-koordinaatti" + +#~ msgid "The Y position of the main window." +#~ msgstr "Pääikkunan Y-koordinaatti." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Näytetäänkö apuikkuna suurennettuna" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Näytetäänkö apuikkuna suurennettuna." + +#~ msgid "X position of assistant window" +#~ msgstr "Apuikkunan X-koordinaatti" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Apuikkunan X-koordinaatti." + +#~ msgid "Y position of assistant window" +#~ msgstr "Apuikkunan Y-koordinaatti" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Apuikkunan Y-koordinaatti." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Gnomen ohjeselain kehittäjille" + +#~ msgid "Side _Panel" +#~ msgstr "_Sivupaneeli" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Valittu välilehti: ”sisältö” tai ”haku”" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Mikä välilehdistä on valittuna: ”sisältö” vai ”haku”" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Oletettiin ”%s”, saatiin ”%s” rivillä %d, sarakkeessa %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Virheellinen nimiavaruus ”%s” rivillä %d, sarakkeessa %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "”title”-, ”name”- ja ”link”-elementit vaaditaan rivillä %d, sarakkeessa %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "”name” ja ”link” -elementit vaaditaan elementin sisällä rivillä %d, " +#~ "sarakkeessa %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "”name” ja ”link” -elementit vaaditaan elementin ”%s” sisällä rivillä %d, " +#~ "sarakkeessa %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "”type”-elementti vaaditaan elementin sisällä rivillä %d, " +#~ "sarakkeessa %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Kirjan ”%s” pakkausta ei voitu avata: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Sivupaneeli" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Avaa devhelpin kohdistimen kohdalla olevalle sanalle F2-näppäimestä" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" diff --git a/po/fr.gmo b/po/fr.gmo new file mode 100644 index 0000000..45a514d Binary files /dev/null and b/po/fr.gmo differ diff --git a/po/fr.po b/po/fr.po new file mode 100644 index 0000000..3eb0843 --- /dev/null +++ b/po/fr.po @@ -0,0 +1,511 @@ +# French translation of devhelp. +# Copyright (C) 2001-2018 Free Software Foundation, Inc. +# This file is distributed under the GNU General Public License Version 2. +# +# Christophe Fergeau , 2001. +# Christophe Merlet , 2002-2006. +# Laurent Richard , 2003. +# Sebastien Bacher , 2003. +# Thierry Moisan , 2004. +# Robert-André Mauchin , 2006-2008. +# Jonathan Ernst , 2006-2007. +# Damien Durand , 2006. +# Stéphane Raimbault , 2007. +# Bruno Brouard , 2010,2012 +# Alain Lojewski , 2012, 2016. +# Guillaume Bernard , 2016. +# Charles Monzat , 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-23 22:47+0100\n" +"Last-Translator: Claude Paroz \n" +"Language-Team: français \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Un outil de développement pour naviguer et rechercher dans les documentations " +"d’API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp est un outil de développement pour naviguer et rechercher dans les " +"documentations d’API. Il permet de naviguer facilement parmi les " +"bibliothèques, de chercher par fonction, structure ou macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"La documentation doit être installée localement, ce qui implique qu’une " +"connexion Internet soit disponible pour utiliser Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp fonctionne nativement avec GTK-Doc ; les bibliothèques GTK+ et GNOME " +"sont donc bien prises en charge. Mais d’autres plates-formes de développement " +"peuvent aussi être prises en charge, pour autant que la documentation des " +"API soit disponible en HTML et qu’un fichier de sommaire *.devhelp2 ait été " +"généré." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp s’intègre avec d’autres applications, telles que Glade, Builder ou " +"Anjuta, et des greffons sont disponibles pour différents éditeurs de texte " +"(gedit, Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Navigateur de documentation d’API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manuel;développeur;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "État maximisé de la fenêtre principale" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Indique si la fenêtre principale doit démarrer maximisée." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Largeur de la fenêtre principale" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "La largeur de la fenêtre principale." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Hauteur de la fenêtre principale" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "La hauteur de la fenêtre principale." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Largeur de l’index et du panneau de recherche" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "La largeur de l’index et du panneau de recherche." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Livres désactivée" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "La liste des livres désactivés par l’utilisateur." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grouper par langage" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Indiquer si les livres doivent être groupés par langage dans l’interface" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Largeur de la fenêtre de l’assistant" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "La largeur de la fenêtre de l’assistant." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Hauteur de la fenêtre de l’assistant" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "La hauteur de la fenêtre de l’assistant." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Utiliser les polices de caractères du système" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Utilise les polices de caractères par défaut du système." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Police de caractères" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Police de caractères à largeur variable." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Police de caractères à chasse fixe" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Police de caractères à chasse fixe, comme pour les exemples de code." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Prise en charge de Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Afficher la documentation API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Christophe Fergeau \n" +"Christophe Merlet \n" +"Laurent Richard \n" +"Sebastien Bacher \n" +"Thierry Moisan \n" +"Robert-André Mauchin \n" +"Jonathan Ernst \n" +"Damien Durand \n" +"Stéphane Raimbault " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Site Web de Devhelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Ouvre une nouvelle fenêtre Devhelp" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Recherche un mot-clé" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "MOTCLÉ" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Recherche et affiche tout résultat dans la fenêtre de l’assistant" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Affiche la version et quitte" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Quitte tous les Devhelp en cours" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistant" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Livre :" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Langage : %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Langage : non défini" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Tout _condenser" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Livre" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Page" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Mot-clé" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Fonction" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Propriété" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Préférences" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grouper par langage" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Activé" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titre" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Bibliothèque" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Utiliser les polices de caractères du système" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Largeur _variable : " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Chasse _fixe :" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Polices" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Page vide" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Erreur lors de l’ouverture du lien demandé." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Panneau latéral" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Imprimer" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "Re_chercher" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "A_grandir le texte" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Ré_duire le texte" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Taille _normale" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nouvelle _fenêtre" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Préférences" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Raccourcis _clavier" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Aid_e" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "À _propos de Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Quitter" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Précédent" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Suivant" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nouvel onglet" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Général" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Aller à champ de recherche globale" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Rechercher dans la page actuelle" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Ouvrir une nouvelle fenêtre" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Ouvrir un nouvel onglet" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Afficher ou masquer le panneau latéral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Précédent" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Suivant" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimer" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Fermer la fenêtre actuelle" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Fermer toutes les fenêtres" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Agrandir" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Diminuer" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Réinitialiser le zoom" + +#: src/menus.ui:50 +msgid "_About" +msgstr "À _propos" diff --git a/po/fur.gmo b/po/fur.gmo new file mode 100644 index 0000000..54fb4f6 Binary files /dev/null and b/po/fur.gmo differ diff --git a/po/fur.po b/po/fur.po new file mode 100644 index 0000000..907e7f2 --- /dev/null +++ b/po/fur.po @@ -0,0 +1,616 @@ +# Friulian translation for devhelp. +# Copyright (C) 2016 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# Fabio Tomat , 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-28 17:56+0000\n" +"PO-Revision-Date: 2018-02-06 22:44+0100\n" +"Last-Translator: Fabio Tomat \n" +"Language-Team: Friulian \n" +"Language: fur\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.0.3\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:450 +#: src/dh-window.c:608 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Un strument di svilupadôrs par navigâ e cirî la documentazion des API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp al è un strument di svilup par navigâ e cirî la documentazion des " +"API. Al permet di esplorâ, in maniere facile, lis librariis e di eseguî " +"ricercjis par funzions, struturis o macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"La documentazion e scugne jessi instalade in locâl, duncje une conession a " +"internet no covente par doprâ Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp al lavore in maniere native cun GTK-Doc, cussì che lis librariis GTK" +"+ e GNOME a sedin ben supuartadis. Ma ancje altris plateformis di svilup a " +"puedin jessi supuartadis, baste che la documentazion de API e sedi " +"disponibile in HTML e un file di indiç*.devhelp2 al sedi gjenerât." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp si integre cun altris aplicazions come Glade, Builder o Anjuta e i " +"plugin a son disponibii par diferents editôrs di test (gedit, Vim, Emacs, " +"Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Navigadôr di documentazion API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentazion;informazion;manuâl;svilupadôr;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stât di slargjadure dal barcon principâl" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Indiche se il barcon principâl al à di jessi inviât slargjât." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Largjece dal barcon principâl" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "La largjece dal barcon principâl." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Altece dal barcon principâl" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "La altece dal barcon principâl." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Largjece dal ricuadri di ricercje e indiç" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "La largjece dal ricuadri di ricercje e de metude in indiç." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Libris disabilitâts" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Liste di libris disabilitâts dal utent." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Met dongje par lengaç" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Indiche se meti dongje lis guidis inte interface utent in base al lengaç" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Largjece dal barcon dal assistent" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "La largjece dal barcon dal assistent." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Altece dal barcon dal assistent" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "La altece dal barcon dal assistent." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Dopre i caratars di sisteme" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Dopre i caratars di sisteme predefinîts." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Gjenar di caratar pal test" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Gjenar di caratar pal test a largjece variabil." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Gjenar di caratar pal test a largjece fisse" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Gjenar di caratar pal test a largjece fisse, come esemplis di codiç." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Supuart Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostre documentazion API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "Fabio Tomat " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Sît web di Devhelp" + +#: src/dh-app.c:354 +msgid "Opens a new Devhelp window" +msgstr "Vierç un gnûf barcon di Devhelp" + +#: src/dh-app.c:359 +msgid "Search for a keyword" +msgstr "Cîr par peraule clâf" + +#: src/dh-app.c:360 src/dh-app.c:365 +msgid "KEYWORD" +msgstr "PERAULECLÂF" + +#: src/dh-app.c:364 +msgid "Search and display any hit in the assistant window" +msgstr "Cîr e mostre ogni corispuindince tal barcon assistent" + +#: src/dh-app.c:369 +msgid "Display the version and exit" +msgstr "Mostre la version e jes" + +#: src/dh-app.c:374 +msgid "Quit any running Devhelp" +msgstr "Jes di ogni Devhelp in esecuzion" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Libri:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Lengaç: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Lengaç: no definît" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Strenç dut" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Libri" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Pagjine" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Peraule clâf" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Proprietât" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Segnâl" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferencis" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Met dongje par lengaç" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Abilitât" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titul" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Racuelte libris" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Dopre i caratars di sisteme" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Largjece _variabil: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Largjece _fisse:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Caratars" + +#: src/dh-window.c:60 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:61 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:62 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:63 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:64 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:65 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:66 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:67 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:68 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:832 +msgid "Error opening the requested link." +msgstr "Erôr tal vierzi il colegament domandât." + +#: src/dh-window.c:1147 +msgid "_Close" +msgstr "_Siere" + +#: src/dh-window.c:1165 src/dh-window.c:1346 +msgid "Empty Page" +msgstr "Pagjine vueide" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Panel _laterâl" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Stampe" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Cjate" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Test plui _grant" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Test plui _piçul" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Dimension _normâl" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Gnûf _barcon" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Preferencis" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Scurtis di tastiere" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Jutori" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "I_nformazions su Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Jes" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Indaûr" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Indenant" + +#: src/dh-window.ui:188 +msgid "New Tab" +msgstr "Gnove schede" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Gjenerâl" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Da il focus ae ricercje globâl" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Cjate te pagjine atuâl" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Vierç un gnûf barcon" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Vierç une gnove schede" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Comute la visibilitât dal panel laterâl" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Torne indaûr" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Va Indevant" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Stampe" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Siere il barcon atuâl" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Siere ducj i barcons" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Ingrandiment" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Ingrandìs" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Impiçulìs" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Azerâ ingrandiment" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Informazions" + +#~ msgid "Side _Panel" +#~ msgstr "_Ricuadri laterâl" + +#~ msgid "Developer’s Help program" +#~ msgstr "Program par vuidis di svilup" + +#~ msgid "X position of main window" +#~ msgstr "Posizion X dal barcon principâl" + +#~ msgid "The X position of the main window." +#~ msgstr "La posizion X dal barcon principâl" + +#~ msgid "Y position of main window" +#~ msgstr "Posizion Y dal barcon principâl" + +#~ msgid "The Y position of the main window." +#~ msgstr "La posizion Y dal barcon principâl." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Indiche se il barcon dal assistent al à di jessi slargjât" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Indiche se il barcon dal assistent al à di jessi slargjât." + +#~ msgid "X position of assistant window" +#~ msgstr "Posizion X dal barcon dal assistent" + +#~ msgid "The X position of the assistant window." +#~ msgstr "La posizion X dal barcon dal assistent." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posizion Y dal barcon dal assistent" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "La posizion Y dal barcon dal assistent." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Un navigadôr pe documentazion di svilup par GNOME" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Schede selezionade:\"content\" (contignût) o \"search\" (ricercje)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Cualis des schedis e je selezionade:\"content\" (contignût) o \"search" +#~ "\" (ricercje)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Spietât '%s', vût '%s' ae rie %d, colone %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Namespace '%s' no voalit ae rie %d, colone %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "I elements \"title\", \"name\" e \"link\" a scugnin jessi presints ae rie " +#~ "%d, colone %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "I elements \"name\" e \"link\" a scugnin jessi presints dentri ae " +#~ "rie %d, colone %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "I elements \"name\" e \"link\" a scugnin jessi presints dentri '%s' ae " +#~ "rie %d, colone %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "L'element \"type\" al scugne jessi dentri ae rie %d, colone %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Impussibil decomprimi il libri '%s': %s" + +#~ msgid "_Side pane" +#~ msgstr "Ricuadri _laterâl" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Fâs che F2 al ativi Devhelp pe peraule sot dal cursôr" diff --git a/po/gl.gmo b/po/gl.gmo new file mode 100644 index 0000000..0f754e6 Binary files /dev/null and b/po/gl.gmo differ diff --git a/po/gl.po b/po/gl.po new file mode 100644 index 0000000..9e47dee --- /dev/null +++ b/po/gl.po @@ -0,0 +1,747 @@ +# translation of devhelp to Galician +# This file is distributed under the same license as the devhelp package. +# Copyright (C) 2009, 2010, 2012 Leandro Regueiro. +# Proxecto Trasno - Adaptación do software libre á lingua galega: Se desexas +# colaborar connosco, podes atopar máis información en http://www.trasno.net +# Ignacio Casal Quinteiro , 2005, 2006. +# Ignacio Casal Quinteiro , 2007. +# Ignacio Casal Quinteiro , 2007, 2008. +# Mancomún - Centro de Referencia e Servizos de Software Libre , 2009. +# Antón Méixome , 2009. +# Leandro Regueiro , 2009, 2010, 2012. +# Fran Diéguez , 2009, 2010, 2011, 2012. +# Fran Dieguez , 2012, 2013, 2014, 2015, 2016, 2017, 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp-master-po-gl-1953\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-17 01:20+0200\n" +"Last-Translator: Fran Dieguez \n" +"Language-Team: Galician\n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Project-Style: gnome\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Unha ferramenta de desenvolvemento para explorar e buscar documentación de " +"API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp é unha ferramenta de desenvolvemento para explorar e buscar " +"documentación de API. Fornece unha forma doada para navegar polas " +"bibliotecas, buscar por función, estrutura ou macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"A documentación debe estar instalada de forma local, polo que non se precisa " +"unha conexión a internet para usar Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp funciona de forma nativa con GTK-Doc, polo que as bibliotecas de GTK+" +" e GNOME son compatíbeis. Pero calquera plataforma de devenvolvemento pode " +"ser compatíbel tamén, así como documentación de API dispoñíbel en HTLM e " +"está xerado un ficheiro de índice *.devhelp2" + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp intégrase con outros aplicativos como Glade, Builder ou Anjuta, e " +"hai dispoñíbeis engadidos para variso editores de texto (gedit, Vim, Emacs, " +"Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "Explorador de documentación de API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentación;información;manual;desenvolvedor;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Estado maximizado da xanela principal" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Indica se a xanela principal debería iniciarse maximizada." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "A anchura da xanela principal" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "A largura da xanela principal." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Altura da xanela principal" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "A altura da xanela principal." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Anchura do índice e do panel de busca" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "A largura do índice e do panel de busca." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Libros desactivados" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Lista de libros desactivados polo usuario" + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Agrupar por idioma" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Indica se os libros se deben agrupar por idioma na UI" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "A anchura da xanela do asistente" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "A largura da xanela do asistente." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Altura da xanela do asistente" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "A altura da xanela do asistente." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Usar os tipos de letra do sistema" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Usar os tipos de letra predeterminados do sistema." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Tipo de letra para o texto" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Tipo de letra para o texto de ancho variábel." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Tipo de letra para o texto de ancho fixo" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Tipo de letra para o texto de ancho fixo, tal como os exemplos de código." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Asistencia de Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostrar a documentación da API" + +# (pofilter) accelerators: accelerator _ is missing from translation +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Fran Dieguez , 2009-2017\n" +"Leandro Regueiro , 2009, 2010\n" +"Antón Méixome , 2009\n" +"Mancomún , 2009\n" +"Ignacio Casal Quinteiro , 2005, 2006, 2007, 2008\n" +"\n" +"Proxecto Trasno http://trasno.net" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Sitio web de DevHelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Abre unha nova xanela de Devhelp" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Buscar unha palabra chave" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "PALABRA CLAVE" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Buscar e mostrar calquera coincidencia na xanela do asistente" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Mostrar a versión e saír" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Saír de calquera Devhelp en execución" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Asistente" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Libro:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Idioma: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Idioma: non definido" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Contraer todo" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Libro" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Páxina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Palabra chave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Función" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Estrutura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enumerado" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Tipo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Propiedade" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Sinal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferencias" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "A_grupar por idioma" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Activada" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Título" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Biblioteca" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Usar os tipos de letra do sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Anchura _variábel:" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Anchura _fixa:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Tipos de fonte" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Páxina baleira" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Produciuse un erro ao abrir a ligazón solicitada." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Panel _lateral" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Im_primir" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Buscar" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Texto máis _grande" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Texto máis _pequeno" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Tamaño _normal" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nova _xanela" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Preferencias" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Atallos de _teclado" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Axuda" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "Sobre _Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Saír" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Atrás" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Adiante" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nova lapela" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Xeral" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Enfocar a busca global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Buscar na páxina actual" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Abrir unha nova xanela" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Abrir unha nova lapela" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Trocar a visibilidade do panel lateral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Ir atrás" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Ir adiante" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimir" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Pechar a xanela actual" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Pechar todas as xanelas" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Ampliación" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Ampliar" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Afastar" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Restabelecer ampliación" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Sobre" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Programa de axuda do desenvolvedor" + +#~ msgid "X position of main window" +#~ msgstr "Posición X da xanela principal" + +#~ msgid "The X position of the main window." +#~ msgstr "A posición X da xanela principal." + +#~ msgid "Y position of main window" +#~ msgstr "Posición Y da xanela principal" + +#~ msgid "The Y position of the main window." +#~ msgstr "A posición Y da xanela principal." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Indica se a xanela asistente debería estar maximizada." + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Indica se a xanela asistente debería estar maximizada." + +#~ msgid "X position of assistant window" +#~ msgstr "Posición X da xanela do asistente" + +#~ msgid "The X position of the assistant window." +#~ msgstr "A posición X da xanela do asistente." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posición Y da xanela do asistente" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "A posición Y da xanela do asistente." + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Un visor de axuda para desenvolvedores de GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "Pe_char" + +#~ msgid "Side _Panel" +#~ msgstr "Panel _lateral" + +# (pofilter) gconf: do not translate gconf attribute: "content", "search" +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "A lapela seleccionada: «content» (contido) ou «search» (busca)" + +# (pofilter) gconf: do not translate gconf attribute: "content", "search" +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Cal das lapela está seleccionada: «content» (contidos) ou " +#~ "«search» (busca)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Esperábase «%s» e obtívose «%s» na liña %d, columna %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "O espazo de nomes incorrecto '%s' na liña %d, columna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Requírense os elementos «título», «nome» e «ligazón» na liña %d, columna " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "requírense os elementos «nome» e «ligazón» dentro de na liña %d, " +#~ "columna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "requírense os elementos «nome» e «ligazón» dentro de «%s» na liña %d, " +#~ "columna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "requírese o elemento «tipo» dentro de na liña %d, columna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Non foi posíbel descomprimir o libro «%s»: %s" + +#~ msgid "_Side pane" +#~ msgstr "Panel _lateral" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Fai que a tecla F2 inicie Devhelp para a palabra onde está o cursor" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Mostra a documentación da API para a palabra onde está o cursor" + +#~ msgid "Current" +#~ msgstr "Actual" + +#~ msgid "All Books" +#~ msgstr "Todos os libros" + +#~ msgid "Find:" +#~ msgstr "Buscar:" + +#~ msgid "Find Previous" +#~ msgstr "Buscar anterior" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Buscar a anterior aparición da cadea de busca" + +#~ msgid "Find Next" +#~ msgstr "Buscar seguinte" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Buscar a seguinte coincidencia da cadea buscada" + +#~ msgid "C_ase Sensitive" +#~ msgstr "Coincidir con c_apitalización" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Activar/desactivar a busca discriminando a capitalización" + +#~ msgid "_Window" +#~ msgstr "_Xanela" + +#~ msgid "_Edit" +#~ msgstr "E_ditar" + +#~ msgid "_Copy" +#~ msgstr "_Copiar" + +#~ msgid "Find _Next" +#~ msgstr "Buscar _seguinte" + +#~ msgid "Find _Previous" +#~ msgstr "Buscar _anterior" + +#~ msgid "_View" +#~ msgstr "Ver" + +#~ msgid "Fullscreen" +#~ msgstr "Pantalla completa" + +#~ msgid "_Go" +#~ msgstr "_Ir" + +#~ msgid "_Search Tab" +#~ msgstr "Lapela de _busca" + +#~ msgid "_Contents Tab" +#~ msgstr "Lapela de _contido" + +#~ msgid "Go to the previous page" +#~ msgstr "Ir á páxina anterior" + +#~ msgid "Go to the next page" +#~ msgstr "Ir á páxina seguinte" + +#~ msgid "Decrease the text size" +#~ msgstr "Diminuír o tamaño do texto" + +#~ msgid "Increase the text size" +#~ msgstr "Aumentar o tamaño do texto" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Enfocar a xanela do devhelp co campo de busca activo" + +#~ msgid "Search in:" +#~ msgstr "Buscar en:" + +#~ msgid "Contents" +#~ msgstr "Contido" + +#~ msgid "Search" +#~ msgstr "Buscar" + +#~ msgid "_File" +#~ msgstr "_Ficheiro" + +#~ msgid "Use the normal text size" +#~ msgstr "Usar o tamaño de texto normal" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Saír do modo a pantalla completa" + +#~ msgid "Display in full screen" +#~ msgstr "Ver a pantalla completa" + +#~ msgid "Larger" +#~ msgstr "Máis grande" + +#~ msgid "Smaller" +#~ msgstr "Máis pequeno" + +#~ msgid "Preferences…" +#~ msgstr "Preferencias…" diff --git a/po/gu.gmo b/po/gu.gmo new file mode 100644 index 0000000..4032794 Binary files /dev/null and b/po/gu.gmo differ diff --git a/po/gu.po b/po/gu.po new file mode 100644 index 0000000..217b306 --- /dev/null +++ b/po/gu.po @@ -0,0 +1,315 @@ +# translation of devhelp.HEAD.gu.po to Gujarati +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# +# Ankit Patel , 2004, 2007. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD.gu\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-09-06 21:59+0100\n" +"PO-Revision-Date: 2007-09-07 18:12+0530\n" +"Last-Translator: Ankit Patel \n" +"Language-Team: Gujarati \n" +"Language: gu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n\n" +"\n" +"\n" +"\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "વિકાસ કરનારાઓનો મદદ કાર્યક્રમ" + +#: ../data/devhelp.desktop.in.in.h:2 ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:141 ../src/dh-window.c:689 +msgid "Devhelp" +msgstr "વિકાસ મદદ" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "દસ્તાવેજીકરણ બ્રાઉઝર" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "ચોક્કસ લખાણ માટે ફોન્ટ" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "લખાણ માટે ફોન્ટ" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "લખાણ માટે ચોક્કસ પહોળાઈવાળા ફોન્ટ." + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "લખાણ માટે ચલિત પહોળાઈવાળા ફોન્ટ." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "મુખ્ય વિન્ડોની ઊંચાઈ" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "મુખ્ય વિન્ડોની મહત્તમ સ્થિતિ" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "પસંદ થયેલ ટેબ, \"સમાવિષ્ટ\" અથવા \"શોધ\"" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "અદ્યતન શોધ વિકલ્પો બતાવો" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "મુખ્ય વિન્ડોની X સ્થિતિ." + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "મુખ્ય વિન્ડોની Y સ્થિતિ." + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "મુખ્ય વિન્ડોની ઊંચાઈ." + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "અનુક્રમણિકાની પહોળાઈ અને શોધ તકતી." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "મુખ્ય વિન્ડોની પહોળાઈ." + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "સિસ્ટમ ફોન્ટ વાપરો" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "સિસ્ટમના મૂળભુત ફોન્ટ વાપરો." + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "શું અદ્યતન શોધ વિકલ્પો બતાવાયેલ છે." + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "શું મુખ્ય વિન્ડો મહત્તમ સ્થિતિમાં શરુ થશે કે નહિં." + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "ટેબોમાંની કઈ કે જે પસંદ થયેલ છે, \"સમાવિષ્ટ\" અથવા \"શોધ\"." + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "અનુક્રમણિકાની પહોળાઈ અને શોધ તકતી" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "મુખ્ય વિન્ડોની પહોળાઈ" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "મુખ્ય વિન્ડોની X સ્થિતિ" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "મુખ્ય વિન્ડોની Y સ્થિતિ" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "ફોન્ટ" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "શોધ કરી રહ્યા છીએ" + +#: ../data/ui/devhelp.glade.h:3 ../src/dh-window.c:463 +msgid "Contents" +msgstr "સમાવિષ્ટો" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "પસંદગીઓ" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "પાછા જાઓ (_B)" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "ચોક્કસ પહોળાઈ (_F):" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "આગળ ધપાવો (_F)" + +#: ../data/ui/devhelp.glade.h:9 ../src/dh-window.c:158 +msgid "_Go" +msgstr "જાઓ (_G)" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "અદ્યતન શોધ વિકલ્પો બતાવો (_S)" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "સિસ્ટમ ફોન્ટ વાપરો (_U)" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "ચલિત પહોળાઈ (_V): " + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp આધાર" + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F2 એ કર્સર આગળના શબ્દ માટે Devhelp લઈ આવે છે" + +#: ../src/dh-main.c:90 +msgid "Search for a function" +msgstr "વિધેય માટે શોધ કરો" + +#: ../src/dh-main.c:99 +msgid "Quit any running Devhelp" +msgstr "કોઈપણ ચાલતી વિકાસ મદદ બંધ કરો" + +#: ../src/dh-main.c:108 +msgid "Display the version and exit" +msgstr "આવૃત્તિ દર્શાવો અને બહાર નીકળો" + +#: ../src/dh-main.c:117 +msgid "Focus the devhelp window with the search field active" +msgstr "devhelp વિન્ડોને શોધ ક્ષેત્ર સક્રિય રાખીને ફોકસ કરો" + +#: ../src/dh-parser.c:110 ../src/dh-parser.c:194 ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "'%s' ઈચ્છિત '%s' મળ્યું લીટી %d, સ્તંભ %d પર" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "અયોગ્ય નામસ્પેસ '%s' એ લીટી %d, સ્તંભ %d આગળ" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "શીર્ષક, નામ, અને કડી વસ્તુઓ લીટી %d, સ્તંભ %d આગળ જરુરી છે" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "નામ અને કડી વસ્તુઓ ની અંદર લીટી %d, સ્તંભ %d આગળ જરુરી છે" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "નામ અને કડી વસ્તુઓ ની અંદર લીટી %d, સ્તંભ %d આગળ જરુરી છે" + +#: ../src/dh-parser.c:420 ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "ચોપડી પદચ્છેદ કરનાર બનાવી શક્યા નહિં" + +#: ../src/dh-parser.c:436 ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "માર્કઅપ પદચ્છેદ કરનાર બનાવી શક્યા નહિં" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "ચોપડી '%s' નું સંકોચન દૂર કરી શક્યા નહિં: %s" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "Devhelp એ zlib આધાર સાથે બનેલ નથી" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "પુસ્તક (_B):" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "પાનું (_P):" + +#: ../src/dh-window.c:156 +msgid "_File" +msgstr "ફાઈલ (_F)" + +#: ../src/dh-window.c:157 +msgid "_Edit" +msgstr "ફેરફાર કરો (_E)" + +#: ../src/dh-window.c:159 +msgid "_Help" +msgstr "મદદ (_H)" + +#. File menu +#: ../src/dh-window.c:162 +msgid "_New Window" +msgstr "નવી વિન્ડો (_N)" + +#: ../src/dh-window.c:164 +msgid "New _Tab" +msgstr "નવી ટેબ (_T)" + +#: ../src/dh-window.c:176 ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "આગળનું શોધો" + +#: ../src/dh-window.c:178 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "પહેલાંનું શોધો" + +#: ../src/dh-window.c:189 +msgid "_Contents Tab" +msgstr "સમાવિષ્ટો ટેબ (_C)" + +#: ../src/dh-window.c:192 +msgid "_Search Tab" +msgstr "શોધો ટેબ (_S)" + +#: ../src/dh-window.c:473 +msgid "Search" +msgstr "શોધો" + +#: ../src/dh-window.c:686 +msgid "translator_credits" +msgstr "અંકિત પટેલ " + +#: ../src/dh-window.c:691 +msgid "A developer's help browser for GNOME 2" +msgstr "જીનોમ ૨ માટે વિકાસ કરનારાઓ માટે મદદ બ્રાઉઝર" + +#: ../src/dh-window.c:1085 ../src/dh-window.c:1214 +msgid "Empty Page" +msgstr "ખાલી પાનું" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "શોધો:" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "શોધ શબ્દમાળાનો પહેલાંનો વારો શોધો" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "શોધ શબ્દમાળાનો આગળનો વારો શોધો" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "કેસ પ્રત્યે સંવેદનશીલ" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "કેસ પ્રત્યે સંવેદનશીલ શોધ બદલો" + diff --git a/po/he.gmo b/po/he.gmo new file mode 100644 index 0000000..f624430 Binary files /dev/null and b/po/he.gmo differ diff --git a/po/he.po b/po/he.po new file mode 100644 index 0000000..61acbdd --- /dev/null +++ b/po/he.po @@ -0,0 +1,763 @@ +# translation of sss.txt.po to Hebrew +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# Gil 'Dolfin' Osher , 2003 +# Yosef Or Boczko , 2014, 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: sss.txt\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2016-03-02 12:59+0200\n" +"PO-Revision-Date: 2016-03-02 13:01+0200\n" +"Last-Translator: Yosef Or Boczko \n" +"Language-Team: עברית <>\n" +"Language: he\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Gtranslator 2.91.7\n" +"Plural-Forms: nplurals=2; plural= (n!=1);\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "DevHelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "תכנית עזרה למפתחים" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"‏DevHelp הוא דפדפן תיעוד API. הוא מספק דרך קלה לנווט בספריות, לחפש פונקציות, " +"מבנים או הגדרות מקרו. הוא מספק ממשק לשוניות ומאפשר להדפיס תוצאות." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "‏DevHelp משולב עם יישומים נוספים כגון Glade, Anjuta או Geany." + +# בכל מקרה עם י כי המילה המקורית מופיע עם חיריק ודגש ב־ת +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "דפדפן תיעוד" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "תיעוד;מידע;פרטים;הדרכה;מדריך;פיתוח;תכנות;מפתח;מתכנת;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Main window maximized state" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Whether the main window should start maximized." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Width of the main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "The width of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Height of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "The height of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "X position of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "The X position of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Y position of main window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "The Y position of the main window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Width of the index and search pane" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "The width of the index and search pane." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Selected tab: \"content\" or \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Which of the tabs is selected: \"content\" or \"search\"." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Books disabled" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "List of books disabled by the user." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Group by language" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Whether books should be grouped by language in the UI" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "Whether the assistant window should be maximixed" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "Whether the assistant window should be maximixed." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Width of the assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "The width of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Height of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "The height of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "X position of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "The X position of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Y position of assistant window" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "The Y position of the assistant window." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Use system fonts" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Use the system default fonts." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Font for text" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Font for text with variable width." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Font for fixed width text" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Font for text with fixed width, such as code examples." + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "תמיכת Devhelp" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "גורם ל־F2 להעלות את Devhelp עבור המילה תחת הסמן" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "הצגת תיעוד API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "חלון _חדש" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "ה_עדפות" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "_צירופי מקשים" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "על _אודות" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "י_ציאה" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "כללי" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "התמקדות בחיפוש הכללי" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "חיפוש בעמוד הנוכחי" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "פתיחת חלון חדש" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "פתיחת לשונית חדשה" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "הצגה/הסתרת הסרגל הצדי" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "אחורה" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "קדימה" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "הדפסה" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "סגירת החלון הנוכחי" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "סגירת כל החלונות" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "תקריב" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "התקרבות" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "התרחקות" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "איפוס התקריב" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "דפדפן עזרה למפתחים עבור GNOME" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"יאיר הרשקוביץ \n" +"Yaron Shahrabani \n" +"יוסף אור בוצ׳קו \n" +"\n" +"פרויקט תרגום GNOME לעברית:\n" +"‏http://gnome-il.berlios.de" + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "אתר האינטרנט של DevHelp" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "פתיחת חלון חדש של Devhelp" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "Search for a keyword" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "Search and display any hit in the assistant window" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "Display the version and exit" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "Quit any running Devhelp" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — המסייע" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "ספר:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "שפה: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "שפה: בלתי מוגדרת" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "ספר" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "עמוד" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "מילת מפתח" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "פונקציה" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "מבנה" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "מקרו" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "מניה" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "סוג" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "מאפיין" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "אות" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Expected '%s', got '%s' at line %d, column %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Invalid namespace '%s' at line %d, column %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"type\" element is required inside on line %d, column %d" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Cannot uncompress book '%s': %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "העדפות" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_קיבוץ לפי שפה" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "פעיל" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "כותרת" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "מדף ספרים" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "שימוש ב_גופני המערכת" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "רוחב _משתנה: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_רוחב קבוע:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "גופנים" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "שגיאה בפתיחת הקישור המבוקש." + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "_סגירה" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "דף ריק" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "_לשונית חדשה" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "ה_דפסה" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_חיפוש" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "ה_גדלת הטקסט" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "ה_קטנת טקסט" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "גודל _רגיל" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "חלונית ה_צד" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "על _אודות DevHelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "חזרה" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "קדימה" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://upload.wikimedia.org/wikipedia/commons/9/96/DevHelp_3.11.x_-" +#~ "_Screenshot.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "הצגת תיעוד API עבור המילה שתחת הסמן" + +#~ msgid "Current" +#~ msgstr "נוכחי" + +#~ msgid "All Books" +#~ msgstr "כל הספרים" + +#~ msgid "Find:" +#~ msgstr "חיפוש:" + +#~ msgid "Find Previous" +#~ msgstr "חיפוש הקודם" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "חיפוש המופע הקודם של מחרוזת החיפוש" + +#~ msgid "Find Next" +#~ msgstr "חיפוש הבא" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "חיפוש המופע הבא של מחרוזת החיפוש" + +#~ msgid "C_ase Sensitive" +#~ msgstr "תלוי ר_שיות" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "הפעלה/כיבוי של חיפוש תלוי רשיות" + +#~ msgid "_Window" +#~ msgstr "_חלון" + +#~ msgid "_Edit" +#~ msgstr "ע_ריכה" + +#~ msgid "_Copy" +#~ msgstr "ה_עתקה" + +#~ msgid "Find _Next" +#~ msgstr "חיפוש ה_בא" + +#~ msgid "Find _Previous" +#~ msgstr "חיפוש ה_קודם" + +#~ msgid "_View" +#~ msgstr "_תצוגה" + +#~ msgid "Fullscreen" +#~ msgstr "מסך מלא" + +#~ msgid "_Go" +#~ msgstr "מע_בר" + +#~ msgid "_Search Tab" +#~ msgstr "לשונית _חיפוש" + +#~ msgid "_Contents Tab" +#~ msgstr "לשונית _תכנים" + +#~ msgid "Go to the previous page" +#~ msgstr "מעבר לדף הקודם" + +#~ msgid "Go to the next page" +#~ msgstr "מעבר לדף הבא" + +#~ msgid "Decrease the text size" +#~ msgstr "הקטנת גודל הטקסט" + +#~ msgid "Increase the text size" +#~ msgstr "הגדלת גודל הטקסט" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Focus the Devhelp window with the search field active" + +#~ msgid "Search in:" +#~ msgstr "חיפוש תחת:" + +#~ msgid "Contents" +#~ msgstr "תכנים" + +#~ msgid "Search" +#~ msgstr "חיפוש" + +#~ msgid "_File" +#~ msgstr "_קובץ" + +#~ msgid "_Help" +#~ msgstr "ע_זרה" + +#~ msgid "Use the normal text size" +#~ msgstr "שימוש בגודל הטקסט הרגיל" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "יציאה ממצב מסך מלא" + +#~ msgid "Display in full screen" +#~ msgstr "הצגה במסך מלא" + +#~ msgid "Larger" +#~ msgstr "גדול יותר" + +#~ msgid "Smaller" +#~ msgstr "קטן יותר" + +#~ msgid "Preferences…" +#~ msgstr "העדפות..." + +#~ msgid "Show advanced search options" +#~ msgstr "Show advanced search options" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Whether the advanced search options are shown." + +#~ msgid "Fonts" +#~ msgstr "גופנים" + +#~ msgid "Searching" +#~ msgstr "חיפוש" + +#~ msgid "_Show advanced search options" +#~ msgstr "הצג אפשרויות חיפוש _מתקדמות" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" + +#~ msgid "Could not create book parser" +#~ msgstr "Could not create book parser" + +#~ msgid "Could not create markup parser" +#~ msgstr "Could not create markup parser" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp is not built with zlib support" + +#~ msgid "_Search for:" +#~ msgstr "_חפש בעבור:" + +#~ msgid "" +#~ "Select a subject in the contents to the left or switch to the search pane " +#~ "to find what you are looking for.

Use Shift Up/Down to navigate " +#~ "the tree to the left, and Shift Left/Right to expand and collapse " +#~ "the books in the tree." +#~ msgstr "" +#~ "בחר נושא בתכנים בצד שמאל או החלף לחלונית החיפוש כדי למצוא את מה שאתה מחפש." +#~ "

השתמש ב Shift Up/Down כדי לנווט בעץ בצד שמאל, ו Shift Left/" +#~ "Right כדי להרחיב או לצמצם את הספרים בעץ." + +#~ msgid "" +#~ "Could not read all books\n" +#~ "\n" +#~ "The following errors occured whilst reading the books:\n" +#~ "%s" +#~ msgstr "" +#~ "לא ניתן לקרוא את כל הספרים\n" +#~ "\n" +#~ "השגיאות הבאות ארעו בזמן קריאת הספרים:\n" +#~ "%s" diff --git a/po/hi.gmo b/po/hi.gmo new file mode 100644 index 0000000..431c61f Binary files /dev/null and b/po/hi.gmo differ diff --git a/po/hi.po b/po/hi.po new file mode 100644 index 0000000..f93bf09 --- /dev/null +++ b/po/hi.po @@ -0,0 +1,590 @@ +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# G Karunakar , 2003. +# chandankumar , 2012. +msgid "" +msgstr "" +"Project-Id-Version: devhelp HEAD\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2012-04-05 16:37+0000\n" +"PO-Revision-Date: 2012-04-11 12:41+0530\n" +"Last-Translator: chandankumar (ciypro) \n" +"Language-Team: Hindi \n" +"Language: hi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" +"X-Generator: Lokalize 1.2\n" +"X-DamnedLies-Scope: partial\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-main.c:281 +#: ../src/dh-window.c:745 ../src/dh-window.c:1051 ../src/dh-window.c:1967 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "डेवलपर मदद प्रोग्राम" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "प्रलेखन ब्राउज़र" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Width of the main window" +msgstr "मुख्य विंडो की चौड़ाई" + +#: ../data/devhelp.schemas.in.h:4 +msgid "The width of the main window." +msgstr "मुख्य विंडो की चौड़ाई." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "मुख्य विंडो की ऊँचाई" + +#: ../data/devhelp.schemas.in.h:6 +msgid "The height of the main window." +msgstr "मुख्य विंडो की ऊँचाई." + +#: ../data/devhelp.schemas.in.h:7 +msgid "X position of main window" +msgstr "मुख्य विंडो के X स्थिति" + +#: ../data/devhelp.schemas.in.h:8 +msgid "The X position of the main window." +msgstr "मुख्य विंडो की X स्थिति." + +#: ../data/devhelp.schemas.in.h:9 +msgid "Y position of main window" +msgstr "मुख्य विंडो के Y स्थिति" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "मुख्य विंडो की Y स्थिति." + +#: ../data/devhelp.schemas.in.h:11 +#| msgid "Width of the main window" +msgid "Width of the assistant window" +msgstr "सहायक विंडो की चौड़ाई" + +#: ../data/devhelp.schemas.in.h:12 +#| msgid "The width of the main window." +msgid "The width of the assistant window." +msgstr "सहायक विंडो की चौड़ाई." + +#: ../data/devhelp.schemas.in.h:13 +#| msgid "Height of main window" +msgid "Height of assistant window" +msgstr "सहायक विंडो की ऊंचाई" + +#: ../data/devhelp.schemas.in.h:14 +#| msgid "The height of the main window." +msgid "The height of the assistant window." +msgstr "सहायक विंडो की ऊँचाई." + +#: ../data/devhelp.schemas.in.h:15 +#| msgid "X position of main window" +msgid "X position of assistant window" +msgstr "सहायक विंडो के X स्थिति" + +#: ../data/devhelp.schemas.in.h:16 +#| msgid "The X position of the main window." +msgid "The X position of the assistant window." +msgstr "सहायक विंडो की X स्थिति." + +#: ../data/devhelp.schemas.in.h:17 +#| msgid "Y position of main window" +msgid "Y position of assistant window" +msgstr "सहायक विंडो के Y स्थिति" + +#: ../data/devhelp.schemas.in.h:18 +#| msgid "The Y position of the main window." +msgid "The Y position of the assistant window." +msgstr "सहायक विंडो की Y स्थिति." + +#: ../data/devhelp.schemas.in.h:19 +#| msgid "Width of the main window" +msgid "Width of the index and search pane" +msgstr "सूचकांक और खोज फलक की चौड़ाई" + +#: ../data/devhelp.schemas.in.h:20 +#| msgid "The width of the main window." +msgid "The width of the index and search pane." +msgstr "सूचकांक और खोज फलक की चौड़ाई." + +#: ../data/devhelp.schemas.in.h:27 +msgid "Use system fonts" +msgstr "प्रणाली फोंट का प्रयोग करें" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Use the system default fonts." +msgstr "सिस्टम डिफ़ॉल्ट फ़ॉन्ट का प्रयोग करें." + +#: ../data/devhelp.schemas.in.h:29 +msgid "Font for text" +msgstr "पाठ के लिए फ़ॉन्ट" + +#: ../data/devhelp.schemas.in.h:30 +msgid "Font for text with variable width." +msgstr "परिवर्तनीय चौड़ाई के साथ पाठ के लिए फ़ॉन्ट." + +#: ../data/devhelp.schemas.in.h:31 +#| msgid "Font for fixed text" +msgid "Font for fixed width text" +msgstr "स्थिर चौड़ाई पाठ के लिए फ़ॉन्ट" + +#: ../data/devhelp.schemas.in.h:32 +#| msgid "Font for text with fixed width." +msgid "Font for text with fixed width, such as code examples." +msgstr "कोड उदाहरण के रूप में, फिक्स्ड चौड़ाई के साथ पाठ के लिए फ़ॉन्ट." + +#: ../data/ui/devhelp.builder.h:1 +msgid "Preferences" +msgstr "प्राथमिकताएँ" + +#: ../data/ui/devhelp.builder.h:2 +msgid "_Group by language" +msgstr "भाषा द्वारा समूह (_G)" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Enabled" +msgstr "सक्षम" + +#: ../data/ui/devhelp.builder.h:4 +#| msgid "_File" +msgid "Title" +msgstr "शीर्षक" + +#: ../data/ui/devhelp.builder.h:5 +msgid "Book Shelf" +msgstr "किताब शेल्फ" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "सिस्टम फ़ॉन्ट प्रयोग करें (_U)" + +#: ../data/ui/devhelp.builder.h:7 +#| msgid "Variable width: " +msgid "_Variable width: " +msgstr "चर चौड़ाई: (_V)" + +#: ../data/ui/devhelp.builder.h:8 +#| msgid "Fixed width:" +msgid "_Fixed width:" +msgstr "स्थिर चौड़ाई: (_F)" + +#: ../data/ui/devhelp.builder.h:9 +#| msgid "Contents" +msgid "Fonts" +msgstr "फ़ॉन्ट्स" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +#| msgid "Devhelp Book" +msgid "Devhelp support" +msgstr "Devhelp समर्थन" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "कर्सर पर शब्द के लिएDevhelp को लाने में F2 करता है" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "एपीआई प्रलेखन दिखाएँ" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "शब्द के लिए कर्सर पर एपीआई प्रलेखन दिखाएँ" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:76 +msgid "Devhelp — Assistant" +msgstr "Devhelp — सहायक" + +#: ../src/dh-assistant-view.c:407 +msgid "Book:" +msgstr "किताब:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "भाषा: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "भाषा: अपरिभाषित" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "किताब" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "पृष्ठ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "कीवर्ड" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +#| msgid "Section" +msgid "Function" +msgstr "फंक्शन" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "मैक्रो" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "क़िस्म" + +#: ../src/dh-main.c:47 +#| msgid "Search for a function" +msgid "Search for a keyword" +msgstr "कीवर्ड के लिए खोज" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "कोइ चालू डेवहेल्प बंद करें" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "संस्करण और निकास प्रदर्शित" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "खोज क्षेत्र सक्रिय के साथ Devhelp विंडो ध्यान केंद्रित करें" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "खोज और सहायक विंडो में कोई भी हिट प्रदर्शित" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +#| msgid "Expected '%s' got '%s' at line %d, column %d" +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "उम्मीद '%s', मिला '%s' पंक्ति %d, कॉलम %d पर" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "अवैध नामस्थान '%s' पंक्ति %d, कॉलम %d पर" + +#: ../src/dh-parser.c:143 +#, c-format +#| msgid "title, name, and link elements are required at line %d, column %d" +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"शीर्षक\", \"नाम\", और \"लिंक\" तत्वों %d पंक्ति, कॉलम %d पर आवश्यक हैं" + +#: ../src/dh-parser.c:218 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"\"नाम\" और \"लिंक\" तत्वों %d पंक्ति, कॉलम %d पर के अंदर आवश्यक हैं" + +#: ../src/dh-parser.c:298 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"\"नाम\" और \"लिंक\" तत्वों '%s' के अंदर %d पंक्ति, कॉलम %d पर आवश्यक हैं" + +#: ../src/dh-parser.c:311 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"प्रकार\" तत्व %d पंक्ति, कॉलम %d पर के अंदर आवश्यक हैं" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "पुस्तक '%s' नहीं uncompress कर सकते हैं: %s" + +#: ../src/dh-search.c:493 +msgid "All books" +msgstr "सभी पुस्तकों" + +#: ../src/dh-search.c:1111 +#| msgid "_Search:" +msgid "Search in:" +msgstr "में खोजें:" + +#: ../src/dh-window.c:104 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:105 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:106 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:107 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:108 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:109 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:110 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:111 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:112 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:740 +msgid "translator_credits" +msgstr "चंदन कुमार (chandankumar.093047@gmail.com)" + +#: ../src/dh-window.c:747 +#| msgid "A developer's help browser for GNOME 2" +msgid "A developers' help browser for GNOME" +msgstr "एक 'डेवलपर्स मदद ब्राउज़र GNOME के ​​लिए" + +#: ../src/dh-window.c:754 +msgid "DevHelp Website" +msgstr "DevHelp वेबसाइट" + +#: ../src/dh-window.c:778 +msgid "_File" +msgstr "फाइल (_F)" + +#: ../src/dh-window.c:779 +msgid "_Edit" +msgstr "संपादन (_E)" + +#: ../src/dh-window.c:780 +#| msgid "_File" +msgid "_View" +msgstr "दृश्य_(V)" + +#: ../src/dh-window.c:781 +msgid "_Go" +msgstr "जाना (_G)" + +#: ../src/dh-window.c:782 +msgid "_Help" +msgstr "सहायता (_H)" + +#. File menu +#: ../src/dh-window.c:785 +msgid "_New Window" +msgstr "नया विंडो (_N)" + +#: ../src/dh-window.c:787 +msgid "New _Tab" +msgstr "नया टैब (_T)" + +#: ../src/dh-window.c:789 +msgid "_Print…" +msgstr "छापें (_P)…" + +#: ../src/dh-window.c:801 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "अगला ढूंढें" + +#: ../src/dh-window.c:803 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "पिछला ढूंढें" + +#: ../src/dh-window.c:810 +msgid "Go to the previous page" +msgstr "पिछले पृष्ठ पर जाएँ" + +#: ../src/dh-window.c:813 +msgid "Go to the next page" +msgstr "अगले पेज पर जाएँ" + +#: ../src/dh-window.c:816 +#| msgid "Contents" +msgid "_Contents Tab" +msgstr "सामग्री टैब (_C)" + +#: ../src/dh-window.c:819 +#| msgid "_Search:" +msgid "_Search Tab" +msgstr "खोज टैब (_S)" + +#. View menu +#: ../src/dh-window.c:823 +msgid "_Larger Text" +msgstr "बड़ा पाठ (_L)" + +#: ../src/dh-window.c:824 +msgid "Increase the text size" +msgstr "पाठ का आकार बढ़ाएँ" + +#: ../src/dh-window.c:826 +msgid "S_maller Text" +msgstr "छोटा पाठ (_m)" + +#: ../src/dh-window.c:827 +msgid "Decrease the text size" +msgstr "पाठ का आकार घटाएँ" + +#: ../src/dh-window.c:829 +msgid "_Normal Size" +msgstr "सामान्य आकार (_N)" + +#: ../src/dh-window.c:830 +msgid "Use the normal text size" +msgstr "सामान्य पाठ आकार उपयोग" + +#: ../src/dh-window.c:839 +msgid "Leave fullscreen mode" +msgstr "पूर्ण स्क्रीन छोड़ें" + +#: ../src/dh-window.c:846 +msgid "Display in full screen" +msgstr "पूर्ण स्क्रीन में प्रदर्शित करें" + +#. Translators: This refers to text size +#: ../src/dh-window.c:966 +msgid "Larger" +msgstr "बड़ा" + +#. Translators: This refers to text size +#: ../src/dh-window.c:969 +msgid "Smaller" +msgstr "छोटा" + +#: ../src/dh-window.c:1171 +msgid "Contents" +msgstr "घटक" + +#: ../src/dh-window.c:1181 +msgid "Search" +msgstr "खोज" + +#: ../src/dh-window.c:1395 +msgid "Error opening the requested link." +msgstr "अनुरोध लिंक खोलने में त्रुटि." + +#: ../src/dh-window.c:1748 ../src/dh-window.c:1995 +msgid "Empty Page" +msgstr "रिक्त पेज" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "ढूंढें:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "खोज स्ट्रिंग की पिछली उपस्थिति ढूंढें" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "खोज स्ट्रिंग की अगली उपस्थिति ढूंढें" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "स्थिति के प्रति संवेदनशील (_a)" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "स्थिति संवेदनशील खोज टॉगल करें" + +#~ msgid "Location of the paned" +#~ msgstr "paned का स्थान" + +#~ msgid "The location of the paned separator." +#~ msgstr "paned विभाजक का स्थान." + +#~ msgid "Specify the size and location of the window" +#~ msgstr "विंडो का आकार और स्थान निर्दिष्ट करें" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "WIDTHxHEIGHT+XOFF+YOFF" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %" +#~ "d" +#~ msgstr "नाम और लिंक तत्वों %d पंक्ति, कॉलम %d पर के अंदर आवश्यक हैं" + +#~ msgid "Could not create book parser" +#~ msgstr "पुस्तक पार्सर नहीं बना सका" + +#~ msgid "Could not create markup parser" +#~ msgstr "मार्कअप पार्सर नहीं बना सका" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "यूआई सेट नहीं कर सकते: %s" + +#~ msgid "Devhelp project page" +#~ msgstr "Devhelp परियोजना पृष्ठ" + +#~ msgid "Bug report Devhelp" +#~ msgstr "बग रिपोर्ट Devhelp" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "Fonts" +#~ msgstr "फ़ॉन्ट्स" + +#~ msgid "_Back" +#~ msgstr "पीछे (_B)" + +#~ msgid "_Forward" +#~ msgstr "आगे (_F)" + +#~ msgid "_Search for:" +#~ msgstr "के लिए ढूँढें (_S):" + +#~ msgid "_About" +#~ msgstr "के बारे में (_A)" diff --git a/po/hr.gmo b/po/hr.gmo new file mode 100644 index 0000000..c76891b Binary files /dev/null and b/po/hr.gmo differ diff --git a/po/hr.po b/po/hr.po new file mode 100644 index 0000000..36bd200 --- /dev/null +++ b/po/hr.po @@ -0,0 +1,667 @@ +# Translation of devhelp to Croatiann +# Copyright (C) Croatiann team +# Translators: Automatski Prijevod <>,Robert Sedak , +msgid "" +msgstr "" +"Project-Id-Version: devhelp 0\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-26 01:13+0000\n" +"PO-Revision-Date: 2018-02-27 14:06+0100\n" +"Last-Translator: gogo \n" +"Language-Team: Croatian \n" +"Language: hr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2014-01-06 10:49+0000\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Devhelp je alat razvijatelja za pregledavanje i pretraživanje API " +"dokumentacije" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp je alat razvijatelja za pregledavanje i pretraživanje API " +"dokumentacije. Omogućuje jednostavan način navigacije kroz biblioteke i " +"pretraživanje po funkciji, strukturi ili makrou." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentacija mora biti instalirana lokalno, stoga pristup internetu nije " +"potreban za korištenje Devhelpa." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp radi izvorno sa GTK-Doc, stoga GTK+ i GNOME biblioteke su dobro " +"podržane. Ali i ostale razvojne platforme mogu biti isto tako podržane, sve " +"dok je API dokumentacija dostupna u HTML-u i *.devhelp2 sadržaj je generiran." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp se integrira s drugim aplikacijama poput Gladea, Buildera ili " +"Anjute, i dostupni su priključci za različite uređivače teksta (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API preglednik dokumentacije" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentacija;informacija;priručnik;razvijatelj;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stanje uvećanja glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Treba li se glavni prozor pokrenuti uvećan." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Širina glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Širina glavnog prozora." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Širina glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Visina glavnog prozora." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Širina sadržaja i panela pretrage" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Širina sadržaja i panela pretrage." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Onemogućene knjige" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Popis knjiga koje je onemogućio korisnik." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grupiranje prema jeziku" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Trebaju li knjige biti grupirane prema jeziku u korisničkom sučelju" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Širina prozora pomoćnika" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Širina prozora pomoćnika." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Visina prozora pomoćnika" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Visina prozora pomoćnika." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Koristi slova sustava" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Koristi zadana slova sustava." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Slova teksta" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Slova za tekst s promjenjivom širinom." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Slova za tekst s nepromjenjivom širinom" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Slova za tekst s nepromjenjivom širinom, poput primjera kôda." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp podrška" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Prikaži API dokumentaciju" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"Launchpad Contributions:\n" +" gogo https://launchpad.net/~trebelnik-stefina" + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Devhelp web stranica" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Otvara novi Devhelp prozor" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Pretraži ključnu riječ" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "KLJUČNA RIJEČ" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Pretražuje i prikazuje sve rezultate u prozoru pomoćnika" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Prikaži broj inačice i izađi" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Zatvori sve pokrenute primjerke Devhelpa" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Pomoćnik" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Knjiga:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Jezik: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Jezik: Neodređen" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Suzi sve" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Knjiga" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Stranica" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Ključna riječ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struktura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Vrsta" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Svojstvo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Osobitosti" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupiranje prema jeziku" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Omogućeno" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Naslov" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Polica knjiga" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Koristi slova sustava" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Promjenjiva širina: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Nepromjenjiva širina:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Slova" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Greška otvaranja zahtjevane poveznice." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Prazna stranica" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Bočni panel" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Ispis" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Pretraži" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Veći tekst" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "M_anji tekst" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Izvorna veličina" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Novi _prozor" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Osobitosti" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Prečaci tipkovnice" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Priručnik" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_O Devhelpu" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Zatvori" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Prijašnje" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Sljedeće" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nova kartica" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Općenito" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokusiraj globalnu pretragu" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Potraži u trenutnoj stranici" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Otvori novi prozor" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Otvori novu karticu" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Uklj/Isklj vidljivost bočnog panela" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Idi natrag" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Idi naprijed" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Ispis" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zatvori trenutni prozor" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zatvori sve prozore" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Uvećanje" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Uvećaj" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Umanji" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Izvorno uvećanje" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_O programu" + +#~ msgid "Developer's Help program" +#~ msgstr "Program pomoći za razvijatelje programa" + +#~ msgid "X position of main window" +#~ msgstr "Položaj glavnog prozora po x-osi" + +#~ msgid "The X position of the main window." +#~ msgstr "Položaj glavnog prozora po x-osi." + +#~ msgid "Y position of main window" +#~ msgstr "Položaj glavnog prozora po y-osi" + +#~ msgid "The Y position of the main window." +#~ msgstr "Položaj glavnog prozora po y-osi." + +#~ msgid "X position of assistant window" +#~ msgstr "Položaj prozora pomoćnika po x-osi" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Položaj prozora pomoćnika po x-osi." + +#~ msgid "Y position of assistant window" +#~ msgstr "Položaj prozora pomoćnika po y-osi" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Položaj prozora pomoćnika po y-osi." + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Odabrana kartica: \"sadržaj\" ili \"pretraga\"" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Koja je kartica odabrana: \"sadržaj\" ili \"pretraga\"." + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Učini da F2 pokrene Devhelp za riječ na pokazivaču" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Prikaži API dokumentaciju za riječ na pokazivaču" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Fokusira Devhelp prozor sa aktivnim poljem pretrage" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Očekivano '%s', dobiveno '%s' u redku %d, stupcu %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Neispravan prostor naziva '%s' u redku %d, stupcu %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "\"title\", \"name\" i \"link\" elementi su potrebni na redku %d, stupcu %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"name\" i \"link\" elementi su potrebni unutar na redku %d, stupcu " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"name\" i \"link\" elementi su potrebni unutar '%s' na redku %d, stupcu " +#~ "%d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "\"type\" element je potreban unutar na redku %d, stupcu %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Nemoguće raspakiravanje knjige '%s': %s" + +#~ msgid "All books" +#~ msgstr "Sve knjige" + +#~ msgid "Search in:" +#~ msgstr "Pretraži u:" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "A developers' help browser for GNOME" +#~ msgstr "GNOME preglednik pomoći za razvijatelje" + +#~ msgid "_File" +#~ msgstr "_Datoteka" + +#~ msgid "_Edit" +#~ msgstr "_Uredi" + +#~ msgid "_View" +#~ msgstr "_Pogled" + +#~ msgid "_Go" +#~ msgstr "_Idi" + +#~ msgid "Find Next" +#~ msgstr "Pretraži sljedeće" + +#~ msgid "Find Previous" +#~ msgstr "Pretraži prijašnje" + +#~ msgid "Go to the previous page" +#~ msgstr "Idi na prijašnju stranicu" + +#~ msgid "Go to the next page" +#~ msgstr "Idi na sljedeću stranicu" + +#~ msgid "_Contents Tab" +#~ msgstr "_Kartica sadržaja" + +#~ msgid "_Search Tab" +#~ msgstr "_Kartica pretrage" + +#~ msgid "Increase the text size" +#~ msgstr "Povećaj veličinu teksta" + +#~ msgid "Decrease the text size" +#~ msgstr "Smanji veličinu teksta" + +#~ msgid "Use the normal text size" +#~ msgstr "Koristi izvornu veličinu teksta" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Napusti cjelozaslonski prikaz" + +#~ msgid "Display in full screen" +#~ msgstr "Prikažu preko cijelog zaslona" + +#~ msgid "Larger" +#~ msgstr "Veće" + +#~ msgid "Smaller" +#~ msgstr "Manje" + +#~ msgid "Contents" +#~ msgstr "Sadržaj" + +#~ msgid "Search" +#~ msgstr "Pretraga" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Pretraži prijašnje pojavljivanje traženog pojma" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Pretraži sljedeće pojavljivanje traženog pojma" + +#~ msgid "C_ase Sensitive" +#~ msgstr "R_azlikuj velika i mala slova" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Uklj/Isklj pretragu razlike velikih malih slova" diff --git a/po/hu.gmo b/po/hu.gmo new file mode 100644 index 0000000..dff9012 Binary files /dev/null and b/po/hu.gmo differ diff --git a/po/hu.po b/po/hu.po new file mode 100644 index 0000000..19be74b --- /dev/null +++ b/po/hu.po @@ -0,0 +1,546 @@ +# Hungarian translation of devhelp. +# Copyright (C) 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# +# Gabor Kelemen , 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2016. +# Balázs Úr , 2013, 2014, 2015, 2016, 2017, 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-21 10:03+0000\n" +"PO-Revision-Date: 2018-01-26 21:14+0100\n" +"Last-Translator: Balázs Úr \n" +"Language-Team: Hungarian \n" +"Language: hu\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:100 src/dh-app.c:438 +#: src/dh-window.c:736 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:102 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Fejlesztői eszköz API dokumentációk böngészéséhez és kereséséhez" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"A Devhelp egy fejlesztői eszköz API dokumentáció böngészéséhez és kereséséhez." +" Egyszerű módot biztosít a programkönyvtárakon keresztüli navigációhoz, " +"függvény, struktúra vagy makró alapján történő kereséshez." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"A dokumentációt helyben kell telepíteni, így nem szükséges internetkapcsolat " +"a Devhelp használatához." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"A Devhelp natívan működik a GTK-Doc-kal, így a GTK+ és GNOME " +"programkönyvtárak jól támogatottak. De más fejlesztői platformok is " +"támogatottak lehetnek, amíg az API dokumentációjuk elérhető HTML-ben, és " +"előállításra kerül egy *.devhelp2 indexfájl." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"A Devhelp integrálódik egyéb alkalmazásokkal, mint a Glade, az Építő vagy az " +"Anjuta, és bővítmények érhetőek el más szövegszerkesztőkhöz is (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "API dokumentáció böngésző" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentáció;információ;kézikönyv;fejlesztő;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Főablak maximalizált állapota" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "A főablak teljes méretben induljon-e?" + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Főablak szélessége" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "A főablak szélessége." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Főablak magassága" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "A főablak magassága." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Az index és a kereső oldalsáv szélessége" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Az index és a kereső oldalsáv szélessége." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Letiltott könyvek" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "A felhasználó által letiltott könyvek listája." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Csoportosítás nyelv szerint" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "A könyvek nyelv szerint csoportosítandók-e a felületen" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Asszisztensablak szélessége" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Az asszisztensablak szélessége." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Asszisztensablak magassága" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Az asszisztensablak magassága." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "A rendszer betűkészletének használata" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "A rendszer alapértelmezett betűkészleteinek használata." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Szöveg betűkészlete" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Változó szélességű szöveg betűkészlete." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Rögzített szélességű szöveg betűkészlete" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Rögzített szélességű szöveg, mint a példakódok betűkészlete." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp támogatás" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API dokumentáció megjelenítése" + +#: src/dh-app.c:104 +msgid "translator-credits" +msgstr "" +"Kelemen Gábor \n" +"Meskó Balázs \n" +"Úr Balázs " + +#: src/dh-app.c:106 +msgid "Devhelp Website" +msgstr "A Devhelp weboldala" + +#: src/dh-app.c:342 +msgid "Opens a new Devhelp window" +msgstr "Új Devhelp ablak megnyitása" + +#: src/dh-app.c:347 +msgid "Search for a keyword" +msgstr "Kulcsszó keresése" + +#: src/dh-app.c:348 src/dh-app.c:353 +msgid "KEYWORD" +msgstr "KULCSSZÓ" + +#: src/dh-app.c:352 +msgid "Search and display any hit in the assistant window" +msgstr "Keresés és találatok megjelenítése az asszisztens ablakban" + +#: src/dh-app.c:357 +msgid "Display the version and exit" +msgstr "Verziószám megjelenítése és kilépés" + +#: src/dh-app.c:362 +msgid "Quit any running Devhelp" +msgstr "Kilépés bármely futó Devhelpből" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp – Asszisztens" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Könyv:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Nyelv: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Nyelv: nincs megadva" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Összes össze_csukása" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Könyv" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Oldal" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Kulcsszó" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Függvény" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struktúra" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makró" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Felsorolás" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Típus" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Tulajdonság" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Szignál" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Beállítások" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Csoportosítás nyelv szerint" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Engedélyezve" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Cím" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Könyvespolc" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "A _rendszer betűkészletének használata" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Változó szélességű: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Rögzített szélességű:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Betűkészletek" + +#: src/dh-window.c:63 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:64 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:65 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:66 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:67 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:68 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:69 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:70 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:71 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:960 +msgid "Error opening the requested link." +msgstr "Hiba a kért hivatkozás megnyitásakor." + +#: src/dh-window.c:1275 +msgid "_Close" +msgstr "_Bezárás" + +#: src/dh-window.c:1293 src/dh-window.c:1474 +msgid "Empty Page" +msgstr "Üres oldal" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "_Oldalpanel" + +#: src/dh-window.ui:14 src/dh-window.ui:53 +msgid "_Print" +msgstr "_Nyomtatás" + +#: src/dh-window.ui:18 src/dh-window.ui:57 +msgid "_Find" +msgstr "_Keresés" + +#: src/dh-window.ui:24 src/dh-window.ui:63 +msgid "_Larger Text" +msgstr "_Nagyobb szöveg" + +#: src/dh-window.ui:28 src/dh-window.ui:67 +msgid "S_maller Text" +msgstr "Kisebb szöve_g" + +#: src/dh-window.ui:32 src/dh-window.ui:71 +msgid "_Normal Size" +msgstr "_Normál méret" + +#: src/dh-window.ui:40 src/menus.ui:30 +msgid "New _Window" +msgstr "Új _ablak" + +#: src/dh-window.ui:46 +msgid "_Side Panel" +msgstr "_Oldalpanel" + +#: src/dh-window.ui:77 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Beállítások" + +#: src/dh-window.ui:83 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Gyorsbillentyűk" + +#: src/dh-window.ui:87 src/menus.ui:46 +msgid "_Help" +msgstr "_Súgó" + +#: src/dh-window.ui:91 +msgid "_About Devhelp" +msgstr "A Devhelp _névjegye" + +#: src/dh-window.ui:95 src/menus.ui:54 +msgid "_Quit" +msgstr "_Kilépés" + +#: src/dh-window.ui:124 +msgid "Back" +msgstr "Vissza" + +#: src/dh-window.ui:143 +msgid "Forward" +msgstr "Előre" + +#: src/dh-window.ui:190 +msgid "New Tab" +msgstr "Új lap" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Általános" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Globális keresés" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Keresés az aktuális oldalon" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Új ablak megnyitása" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Új lap megnyitása" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Az oldalsáv láthatóságának be- vagy kikapcsolása" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Vissza" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Előre" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Nyomtatás" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Aktuális ablak bezárása" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Az összes ablak bezárása" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Nagyítás" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Nagyítás" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Kicsinyítés" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Visszaállítás" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Névjegy" + diff --git a/po/hy.gmo b/po/hy.gmo new file mode 100644 index 0000000..916aa91 Binary files /dev/null and b/po/hy.gmo differ diff --git a/po/hy.po b/po/hy.po new file mode 100644 index 0000000..82fb471 --- /dev/null +++ b/po/hy.po @@ -0,0 +1,487 @@ +# Translation of devhelp to Armenian +# This file is distributed under the same license as the devhelp package. +# Copyright (C) Zhanna Sargsyan, 2010. +# Zhanna Sargsyan +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&component=general\n" +"POT-Creation-Date: 2010-05-13 01:54+0000\n" +"PO-Revision-Date: 2010-05-19 15:36+0400\n" +"Last-Translator: Zhanna \n" +"Language-Team: \n" +"Language: hy\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Օգնություն ծրագիր նախագծողի համար" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 +#: ../src/dh-main.c:235 +#: ../src/dh-window.c:736 +#: ../src/dh-window.c:1043 +#: ../src/dh-window.c:1849 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Փաստաթղթի զննիչ" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed width text" +msgstr "Տառատեսակ ֆիքսված լայնությամբ տեքստի համար" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "Տառատեսակ տեքստի համար" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width, such as code examples." +msgstr "Տառատեսակ ֆիքսված լայնությամբ տեքստի համար, ինչպիսիք են կոդի օրինակները:" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "Տառատեսակ փոփոխական լայնությամբ տեքստի համար:" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of assistant window" +msgstr "Օգնական պատուհանի բարձրություն" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Height of main window" +msgstr "Հիմնական պատուհանի բարձրություն" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "Հիմնական պատուհանի մեծացված վիճակ" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Նշված ներդիր․ \"բովանդակություն\" կամ \" որոնում\"" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the assistant window." +msgstr "Օգնական պատուհանի X դիրքը:" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The X position of the main window." +msgstr "Հիմնական պատուհանի X դիրքը:" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The Y position of the assistant window." +msgstr "Օգնական պատուհանի Y դիրքը:" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The Y position of the main window." +msgstr "Հիմնական պատուհանի Y դիրքը:" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The height of the assistant window." +msgstr "Օգնական պատուհանի բարձրությունը:" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the main window." +msgstr "Հիմնական պատուհանի բարձրությունը:" + +#: ../data/devhelp.schemas.in.h:15 +msgid "The width of the assistant window." +msgstr "Օգնական պատուհանի լայնությունը:" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The width of the index and search pane." +msgstr "Ինդեքսի և որոնման վահանակի լայնությունը:" + +#: ../data/devhelp.schemas.in.h:17 +msgid "The width of the main window." +msgstr "Հիմնական պատուհանի լայնությունը:" + +#: ../data/devhelp.schemas.in.h:18 +msgid "Use system fonts" +msgstr "Օգտագործել համակարգի տառատեսակները" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Use the system default fonts." +msgstr "Օգտագործել համակարգի լռելայն տառատեսակները։" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Whether the main window should start maximized." +msgstr "Երբ հիմնական պատուհանը սկսի մեծանալ:" + +#: ../data/devhelp.schemas.in.h:21 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Ներդիրներից որն է նշված․ \"բովանդակություն\" թե \" որոնում\":" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Width of the assistant window" +msgstr "Օգնական պատուհանի լայնություն" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Width of the index and search pane" +msgstr "Ինդեքսի և որոնման վահանակի լայնություն" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Width of the main window" +msgstr "Հիմնական պատուհանի լայնություն" + +#: ../data/devhelp.schemas.in.h:25 +msgid "X position of assistant window" +msgstr "Օգնական պատուհանի X դիրք" + +#: ../data/devhelp.schemas.in.h:26 +msgid "X position of main window" +msgstr "Հիմնական պատուհանի X դիրք" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Y position of assistant window" +msgstr "Օգնական պատուհանի Y դիրք" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Y position of main window" +msgstr "Հիմնական պատուհանի Y դիրք" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp ապահովում" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Կանչել Devhelp սեղմելով F2 այն բառի վրա, որտեղ կանգնած է կուրսորը" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation" +msgstr "Ցույց տալ API Փաստաթուղթը" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:40 +msgid "Show API Documentation for the word at the cursor" +msgstr "Ցույց տալ API Փաստաթուղթը կուրսորի տակ գտնվող բառի համար" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Օգնական" + +#: ../src/dh-assistant-view.c:328 +msgid "Book:" +msgstr "Գիրք." + +#. i18n: a documentation book +#: ../src/dh-link.c:255 +msgid "Book" +msgstr "Գիրք" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:258 +msgid "Page" +msgstr "Էջ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:262 +msgid "Keyword" +msgstr "Հիմնաբառ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:267 +msgid "Function" +msgstr "Ֆունկցիա" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:272 +msgid "Struct" +msgstr "Ստրուկտուրա" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:277 +msgid "Macro" +msgstr "Մակրո" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Type" +msgstr "Տիպ" + +#: ../src/dh-main.c:175 +msgid "Search for a keyword" +msgstr "Որոնել ըստ հիմնաբառի" + +#: ../src/dh-main.c:180 +msgid "Quit any running Devhelp" +msgstr "Անջատել ցանկացած գործարկվող Devhelp" + +#: ../src/dh-main.c:185 +msgid "Display the version and exit" +msgstr "Ցույց տալ տարբերակը և դուրս գալ" + +#: ../src/dh-main.c:190 +msgid "Focus the Devhelp window with the search field active" +msgstr "Ֆոկուսի բերել Devhelp պատուհանը ակտիվացված որոնման դաշտով" + +#: ../src/dh-main.c:195 +msgid "Search and display any hit in the assistant window" +msgstr "Oգնական պատուհանում որոնել և ցույց տալ ցանկացած համընկնում" + +#: ../src/dh-parser.c:92 +#: ../src/dh-parser.c:189 +#: ../src/dh-parser.c:253 +#: ../src/dh-parser.c:263 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Ակնկալվում էր '%s', ստացված է '%s' %d տողում և %d սյունում" + +#: ../src/dh-parser.c:109 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Անվավեր անվանումների տիրույթ '%s' %d տողում և %d սյունում" + +#: ../src/dh-parser.c:140 +#, c-format +msgid "\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "%d տողում և %d սյունում պահանջվում են \"title\", \"name\" և \"link\" էլեմենտներ" + +#: ../src/dh-parser.c:208 +#, c-format +msgid "\"name\" and \"link\" elements are required inside on line %d, column %d" +msgstr "%d տողում և %d սյունում -ի ներսում պահանջվում են \"name\" և \"link\" էլեմենտներ" + +#: ../src/dh-parser.c:288 +#, c-format +msgid "\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "'%s' -ի ներսում %d տողում և %d սյունում պահանջվում են \"name\" և \"link\" էլեմենտները" + +#: ../src/dh-parser.c:301 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr " -ի ներսում %d տողում և %d սյունում պահանջվում է \"type\" էլեմենտ" + +#: ../src/dh-parser.c:506 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Չի հաջողվել բացել սեղմված '%s'. %s գիրքը" + +#: ../src/dh-search.c:509 +msgid "All books" +msgstr "Բոլոր գրքերը" + +#: ../src/dh-search.c:587 +msgid "Search in:" +msgstr "Որոնել." + +#: ../src/dh-window.c:95 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:96 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:97 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:98 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:99 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:100 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:101 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:102 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:103 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:731 +msgid "translator_credits" +msgstr "Թարգմանչի _կրեդիտներ" + +#: ../src/dh-window.c:738 +msgid "A developers' help browser for GNOME" +msgstr "Նախագծողների օգնություն ծրագիր GNOME-ի համար" + +#: ../src/dh-window.c:768 +msgid "_File" +msgstr "_Ֆայլ" + +#: ../src/dh-window.c:769 +msgid "_Edit" +msgstr "_Խմբագրել" + +#: ../src/dh-window.c:770 +msgid "_View" +msgstr "_Տեսք" + +#: ../src/dh-window.c:771 +msgid "_Go" +msgstr "_Գնալ" + +#: ../src/dh-window.c:772 +msgid "_Help" +msgstr "_Օգնություն" + +#. File menu +#: ../src/dh-window.c:775 +msgid "_New Window" +msgstr "_Նոր պատուհան" + +#: ../src/dh-window.c:777 +msgid "New _Tab" +msgstr "Նոր _Ներդիր" + +#: ../src/dh-window.c:779 +msgid "_Print…" +msgstr "_Տպել" + +#: ../src/dh-window.c:791 +#: ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Գտնել Հաջորդը" + +#: ../src/dh-window.c:793 +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Գտնել Նախորդը" + +#: ../src/dh-window.c:800 +msgid "Go to the previous page" +msgstr "Գնալ նախորդ էջ" + +#: ../src/dh-window.c:803 +msgid "Go to the next page" +msgstr "Գնալ հաջորդ էջ" + +#: ../src/dh-window.c:806 +msgid "_Contents Tab" +msgstr "_Բովանդակության ներդիր" + +#: ../src/dh-window.c:809 +msgid "_Search Tab" +msgstr "_Որոնման Ներդիր" + +#. View menu +#: ../src/dh-window.c:813 +msgid "_Larger Text" +msgstr "_Մեծացնել տեքստը" + +#: ../src/dh-window.c:814 +msgid "Increase the text size" +msgstr "Մեծացնել տեքստի չափը" + +#: ../src/dh-window.c:816 +msgid "S_maller Text" +msgstr "_Փոքրացնել տեքստը" + +#: ../src/dh-window.c:817 +msgid "Decrease the text size" +msgstr "Փոքրացնել տեքստի չափը" + +#: ../src/dh-window.c:819 +msgid "_Normal Size" +msgstr "_Նորմալ չափ" + +#: ../src/dh-window.c:820 +msgid "Use the normal text size" +msgstr "Օգտագործել տեքստի նորմալ չափ" + +#: ../src/dh-window.c:829 +msgid "Leave fullscreen mode" +msgstr "Դուրս գալ լրիվ էկրանային ռեժիմից" + +#: ../src/dh-window.c:836 +msgid "Display in full screen" +msgstr "Ցույց տալ լրիվ էկրանային ռեժիմում" + +#. Translators: This refers to text size +#: ../src/dh-window.c:956 +msgid "Larger" +msgstr "Մեծացնել" + +#. Translators: This refers to text size +#: ../src/dh-window.c:959 +msgid "Smaller" +msgstr "Փոքրացնել" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1105 +msgid "About Devhelp" +msgstr "Devhelp-ի մասին" + +#: ../src/dh-window.c:1110 +msgid "Preferences…" +msgstr "Նախընտրություններ" + +#: ../src/dh-window.c:1153 +msgid "Contents" +msgstr "Բովանդակություն" + +#: ../src/dh-window.c:1163 +msgid "Search" +msgstr "Որոնել" + +#: ../src/dh-window.c:1329 +msgid "Error opening the requested link." +msgstr "Պահանջվող հղումը բացելու սխալ" + +#: ../src/dh-window.c:1635 +#: ../src/dh-window.c:1877 +msgid "Empty Page" +msgstr "Դատարկ էջ" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Գտնել." + +#: ../src/eggfindbar.c:333 +#: ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Գտնել որոնվող տողի նախորդ հանդիպած արդյունքը" + +#: ../src/eggfindbar.c:346 +#: ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Գտնել որոնվող տողի հաջորդ հանդիպած արդյունքը" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "_Զգայուն ռեգիստրի նկատմամբ" + +#: ../src/eggfindbar.c:362 +#: ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Միացնել ռեգիստրի նկատմամբ զգայուն որոնումը" + diff --git a/po/id.gmo b/po/id.gmo new file mode 100644 index 0000000..cfe1523 Binary files /dev/null and b/po/id.gmo differ diff --git a/po/id.po b/po/id.po new file mode 100644 index 0000000..add30d2 --- /dev/null +++ b/po/id.po @@ -0,0 +1,608 @@ +# translation of devhelp to Indonesian +# Copyright (C) 2010 the devhelp's copyright holder +# This file is distributed under the same license as the devhelp package. +# Mikiya 2010 +# Dirgita , 2010. +# Dirgita , 2010. +# Andika Triwidada , 2010, 2012, 2013, 2014, 2015. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp.master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-28 19:47+0000\n" +"PO-Revision-Date: 2018-01-31 13:55+0700\n" +"Last-Translator: Kukuh Syafaat \n" +"Language-Team: GNOME Indonesian Translation Team \n" +"Language: id\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-Poedit-SourceCharset: UTF-8\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:450 +#: src/dh-window.c:598 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Alat pengembang untuk meramban dan mencari dokumentasi API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp adalah alat pengembang untuk meramban dan mencari dokumentasi API. " +"Ini menyediakan cara mudah untuk menavigasi melalui pustaka dan mencari " +"berdasarkan fungsi, struct, atau makro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentasi harus dipasang secara lokal, sehingga koneksi internet tidak " +"diperlukan untuk menggunakan Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp bekerja secara native dengan GTK-Doc, jadi pustaka GTK+ dan GNOME " +"didukung dengan baik. Tapi platform pengembangan lainnya dapat didukung " +"juga, selama dokumentasi API tersedia di HTML dan berkas indeks *.devhelp2 " +"dihasilkan." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp terintegrasi dengan aplikasi lain seperti Glade, Builder, atau " +"Anjuta, dan pengaya tersedia untuk editor teks yang berbeda (gedit, Vim, " +"Emacs, Geany, ...)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Peramban Dokumentasi API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentasi;informasi;manual;pengembang;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Ukuran maksimal jendela utama" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Memulai jendela utama dengan ukuran maksimal." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Lebar jendela utama" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Lebar jendela utama." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Tinggi jendela utama" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Tinggi jendela utama." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Lebar untuk panel indeks dan pencarian" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Lebar untuk panel indeks dan pencarian." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Buku yang dinonaktifkan" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Daftar buku yang dinonaktifkan oleh pengguna." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Kelompokkan menurut bahasa" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Apakah buku-buku mesti dikelompokkan menurut bahasa dalam UI" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Lebar jendela pembantu" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Lebar jendela pembantu." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Tinggi jendela pembantu" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Tinggi jendela pembantu." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Gunakan fonta sistem" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Menggunakan fonta bawaan sistem." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Fonta untuk teks" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Fonta untuk teks dengan lebar bervariasi." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Fonta untuk teks dengan lebar tetap" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Fonta untuk teks lebar tetap, seperti contoh kode." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Dukungan Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Tunjukkan Dokumentasi API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Mikiya , 2010.\n" +"Andika Triwidada , 2010, 2012, 2013, 2014.\n" +"Dirgita , 2010.\n" +"Kukuh Syafaat , 2017, 2018." + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Situs Web Devhelp" + +#: src/dh-app.c:354 +msgid "Opens a new Devhelp window" +msgstr "Buka jendela Devhelp baru" + +#: src/dh-app.c:359 +msgid "Search for a keyword" +msgstr "Mencari kata kunci" + +#: src/dh-app.c:360 src/dh-app.c:365 +msgid "KEYWORD" +msgstr "KATA KUNCI" + +#: src/dh-app.c:364 +msgid "Search and display any hit in the assistant window" +msgstr "Mencari dan menampilkan semua hasil di jendela pembantu" + +#: src/dh-app.c:369 +msgid "Display the version and exit" +msgstr "Menampilkan versi dan keluar" + +#: src/dh-app.c:374 +msgid "Quit any running Devhelp" +msgstr "Keluar dari semua Devhelp yang sedang berjalan" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Pembantu" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Buku:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Bahasa: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Bahasa: Tak didefinisikan" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Kuncupkan Semua" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Buku" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Halaman" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Kata Kunci" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Fungsi" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struktur" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enumerasi" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Jenis" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Properti" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Sinyal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferensi" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Kelompokkan menurut bahasa" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Diaktifkan" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Judul" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Rak Buku" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "G_unakan fonta sistem" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Lebar _variabel: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Lebar tetap:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Fonta" + +#: src/dh-window.c:60 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:61 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:62 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:63 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:64 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:65 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:66 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:67 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:68 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:822 +msgid "Error opening the requested link." +msgstr "Galat sewaktu membuka tautan yang diminta." + +#: src/dh-window.c:1137 +msgid "_Close" +msgstr "_Tutup" + +#: src/dh-window.c:1155 src/dh-window.c:1336 +msgid "Empty Page" +msgstr "Halaman Kosong" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Panel _Sisi" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Cetak" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "C_ari" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Teks Lebih _Besar" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Teks Lebih _Kecil" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Ukuran _Normal" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "_Jendela Baru" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Preferensi" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Pintasan Papan Ti_k" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Ba_ntuan" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "Tent_ang Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Keluar" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Mundur" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Maju" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Tab Baru" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Umum" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokus pencarian global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Temukan di halaman saat ini" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Buka jendela baru" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Buka tab baru" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Jungkitkan kenampakan bilah sisi" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Mundur" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Maju" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Cetak" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Tutup jendela ini" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Tutup semua jendela" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zum" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Perbesar" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Perkecil" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Reset Zum" + +#: src/menus.ui:50 +msgid "_About" +msgstr "Tent_ang" + +#~ msgid "Side _Panel" +#~ msgstr "_Panel Sisi" + +#~ msgid "Developer’s Help program" +#~ msgstr "Program Bantuan untuk Pengembang" + +#~ msgid "X position of main window" +#~ msgstr "Posisi X jendela utama" + +#~ msgid "The X position of the main window." +#~ msgstr "Posisi X jendela utama." + +#~ msgid "Y position of main window" +#~ msgstr "Posisi Y jendela utama" + +#~ msgid "The Y position of the main window." +#~ msgstr "Posisi Y jendela utama." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Apakah jendela bantu mesti dimaksimalkan" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Apakah jendela bantu mesti dimaksimalkan." + +#~ msgid "X position of assistant window" +#~ msgstr "Posisi X jendela pembantu" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Posisi X jendela pembantu." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posisi Y jendela pembantu" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Posisi Y jendela pembantu." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Peramban bantuan pengembang untuk GNOME" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Diharapkan '%s', memperoleh '%s' pada baris %d, kolom %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Namespace '%s' tidak sah pada baris %d, kolom %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Elemen \"title\", \"name\", dan \"link\" diperlukan pada baris %d, kolom " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elemen \"name\" dan \"link\" diperlukan dalam pada baris %d, kolom " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elemen \"name\" dan \"link\" diperlukan dalam '%s' pada baris %d, kolom %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Elemen \"type\" diperlukan dalam pada baris %d, kolom %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Tidak dapat mendekompresi buku '%s': %s" diff --git a/po/insert-header.sin b/po/insert-header.sin new file mode 100644 index 0000000..b26de01 --- /dev/null +++ b/po/insert-header.sin @@ -0,0 +1,23 @@ +# 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 +} diff --git a/po/is.gmo b/po/is.gmo new file mode 100644 index 0000000..d61de1c Binary files /dev/null and b/po/is.gmo differ diff --git a/po/is.po b/po/is.po new file mode 100644 index 0000000..3a0262f --- /dev/null +++ b/po/is.po @@ -0,0 +1,243 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# Samúel Jón Gunnarsson , 2003. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"POT-Creation-Date: 2004-04-07 01:21+0000\n" +"PO-Revision-Date: 2009-09-30 23:20+0000\n" +"Last-Translator: Samuel Jon Gunnarsson \n" +"Language-Team: Icelandic \n" +"Language: is\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: devhelp.desktop.in.h:1 +msgid "Developer's Help program" +msgstr "Hjálparvafri fyrir þróendur" + +#: devhelp.desktop.in.h:2 +#: ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "Devhelp" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "Devhelp Bók" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "Tilgreindu stærð og staðsetningu glugga" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "BREIDDxHÆÐ+XOFF+YOFF" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "Leita eftir falli" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "Loka öllum opnum eintökum af DevHelp" + +#: src/dh-parser.c:104 +#: src/dh-parser.c:181 +#: src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "Gerði ráð fyrir '%s' en fékk '%s' í línu %d, dálk %d" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "titill, nafn og tenglaeinigar vantar í línu %d, dálk %d" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "nafn og tenglaeingar vantar undir í línu %d, dálk %d" + +#: src/dh-parser.c:250 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "nafn og tenglaeiningar vantar undir í línu %d, dálk %d" + +#: src/dh-parser.c:337 +#: src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "Ekki tókst að stofna greinir fyrir bók" + +#: src/dh-parser.c:347 +#: src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "Ekki tókst að stofna merkjagreini" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Ekki tókst að afþjappa bók '%s': %s" + +#: src/dh-search.c:417 +msgid "_Search:" +msgstr "_Leita:" + +#: src/dh-search.c:461 +msgid "Section" +msgstr "Flokkar" + +#: src/dh-window.c:112 +msgid "_File" +msgstr "_Skrá" + +#: src/dh-window.c:113 +msgid "_Edit" +msgstr "Br_eyta" + +#: src/dh-window.c:114 +#: ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "_Fram" + +#: src/dh-window.c:115 +msgid "_Help" +msgstr "_Hjálp" + +#: src/dh-window.c:300 +#, c-format +msgid "Cannot set UI: %s" +msgstr "" + +#: src/dh-window.c:355 +#: ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "Innihald" + +#: src/dh-window.c:366 +msgid "Search" +msgstr "Leita" + +#: src/dh-window.c:449 +msgid "A developer's help browser for GNOME 2" +msgstr "Hjálparvafri fyrir þróendur í GNOME2" + +#: src/dh-window.c:465 +msgid "Devhelp project page" +msgstr "Þróunarsíða DevHelp" + +#: src/dh-window.c:469 +msgid "Bug report Devhelp" +msgstr "Senda tilkynningu um lús í DevHelp" + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "Leturgerð fyrir fastan texta" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "Leturgerð fyrir texta" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "Hæð aðalglugga" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "" + +#: devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "Hámörkunargildi aðalglugga" + +#: devhelp.schemas.in.h:8 +msgid "The X position of the main window." +msgstr "X staðsetning aðalglugga" + +#: devhelp.schemas.in.h:9 +msgid "The Y position of the main window." +msgstr "Y staðsetning aðalglugga." + +#: devhelp.schemas.in.h:10 +msgid "The height of the main window." +msgstr "Hæð aðalglugga" + +#: devhelp.schemas.in.h:11 +msgid "The location of the paned separator." +msgstr "" + +#: devhelp.schemas.in.h:12 +msgid "The width of the main window." +msgstr "Breidd aðalglugga." + +#: devhelp.schemas.in.h:13 +msgid "Use system fonts" +msgstr "Nota letur kerfis" + +#: devhelp.schemas.in.h:14 +msgid "Use the system default fonts." +msgstr "Nota sjálfgefið letur kerfis." + +#: devhelp.schemas.in.h:15 +msgid "Whether the main window should start maximized or not." +msgstr "Hvort aðalgluggi eigi að ræsast hámarkaður eða ekki." + +#: devhelp.schemas.in.h:16 +msgid "Width of the main window" +msgstr "Breidd aðalglugga" + +#: devhelp.schemas.in.h:17 +msgid "X position of main window" +msgstr "X staðsetning aðalglugga" + +#: devhelp.schemas.in.h:18 +msgid "Y position of main window" +msgstr "Y staðsetning aðalglugga" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr " " + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "Letur" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "Stillingar" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "" + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "_Til baka" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "Á_fram" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "_Nota letur kerfis" + diff --git a/po/it.gmo b/po/it.gmo new file mode 100644 index 0000000..31de971 Binary files /dev/null and b/po/it.gmo differ diff --git a/po/it.po b/po/it.po new file mode 100644 index 0000000..424b4a3 --- /dev/null +++ b/po/it.po @@ -0,0 +1,625 @@ +# Italian translation for devhelp. +# Copyright (C) 2001 - 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 Free Software Foundation, Inc. +# Copyright (C) 2012 the devhelp copyright holders. +# This file is distributed under the same license as the devhelp package. +# Alessio Frusciante , 2001, 2002, 2003. +# Francesco Marletta , 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011. +# Milo Casagrande , 2012, 2013, 2014, 2015, 2016, 2017, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-03-05 14:12+0100\n" +"Last-Translator: Milo Casagrande \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Uno strumento per sviluppatori per esplorare e cercare la documentazione " +"delle API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp è uno strumento per sviluppatori per esplorare e cercare la " +"documentazione delle API. Consente di esplorare facilmente le librerie e di " +"eseguire ricerche per funzioni, strutture o macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"La documentazione deve essere installata localmente, in modo tale che una " +"connessione a Internet non sia necessaria per utilizzare l'applicazione." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Lavora nativamente con GTK-Doc in modo da supportare automaticamente le " +"librerie di GNOME e GTK+. Altre piattaforme di sviluppo possono essere " +"supportare facilmente: è sufficiente che la documentazione delle API sia " +"disponibile in formato HTML e che sia presente un file *.devhelp2." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp si integra con altre applicazioni come Glade, Builder o Anjuta e " +"sono disponibili diversi plugin per altri editor di testo (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Esplorazione documentazione API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentazione;informazioni;manuale;manuali;sviluppo;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stato di massimizzazione della finestra principale" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Indica se la finestra principale deve essere avviata massimizzata." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Larghezza della finestra principale" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "La larghezza della finestra principale." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Altezza della finestra principale" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "L'altezza della finestra principale." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Larghezza del riquadro di ricerca e indicizzazione" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "La larghezza del riquadro di ricerca e indicizzazione." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Libri disabilitati" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Elenco di libri disabilitati dall'utente." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Raggruppa per linguaggio" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Indica se raggruppare le guide nella UI in base al linguaggio" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Larghezza della finestra assistente" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "La larghezza della finestra assistente." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Altezza della finestra assistente" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "L'altezza della finestra assistente." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Usa i tipi di carattere di sistema" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Usa i tipi di carattere di sistema predefiniti." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Tipo di carattere per il testo" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Tipo di carattere per il testo ad ampiezza variabile." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Tipo di carattere per testo ad ampiezza fissa" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Tipo di carattere per il testo ad ampiezza fissa, come esempi di codice." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Supporto DevHelp" + +# GNOME-2-22 +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostra documentazione API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Milo Casagrande \n" +"Francesco Marletta " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Sito web di DevHelp" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Apre una nuova finestra di Devhelp" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Cerca per parola chiave" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "PAROLACHIAVE" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Cerca e mostra ogni corrispondenza nella finestra assistente" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Mostra la versione ed esce" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Termina ogni Devhelp in esecuzione" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistente" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Libro:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Linguaggio: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Linguaggio: non definito" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Ridu_ci tutti" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Libro" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Pagina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Parola chiave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Proprietà" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Segnale" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferenze" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "Ra_ggruppare per linguaggio" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Abilitato" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titolo" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Raccolta libri" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Usare i tipi di carattere di sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Larghezza _variabile: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Larghezza _fissa:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Tipi di carattere" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Pagina vuota" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Errore nell'aprire il collegamento richiesto." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Ri_quadro laterale" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Stam_pa" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "Tr_ova" + +# GNOME-2-22 +# tradotto come in Ephy, non so se anche +# gli originali coincidono --Luca +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Testo più _grande" + +# GNOME-2-22 +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Testo più _piccolo" + +# GNOME-2-22 +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Dimensione _normale" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nuova _finestra" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "Preferen_ze" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Scorciatoie da tastiera" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "A_iuto" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "I_nformazioni su Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Esci" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Indietro" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Avanti" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nuova scheda" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Generale" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Focus sulla ricerca globale" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Trova nella pagina attuale" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Apre una nuova finestra" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Apre una nuova scheda" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Attiva/Disattiva la barra laterale" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Va indietro" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Va avanti" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Stampa" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Chiude la finestra corrente" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Chiude tutte le finestre" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Ingrandimento" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Aumenta l'ingrandimento" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Riduce l'ingrandimento" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Ripristina l'ingrandimento" + +#: src/menus.ui:50 +msgid "_About" +msgstr "I_nformazioni" + +#~ msgid "Developer’s Help program" +#~ msgstr "Programma di aiuto per sviluppatori" + +#~ msgid "X position of main window" +#~ msgstr "Posizione X della finestra principale" + +#~ msgid "The X position of the main window." +#~ msgstr "La posizione X della finestra principale." + +#~ msgid "Y position of main window" +#~ msgstr "Posizione Y della finestra principale" + +#~ msgid "The Y position of the main window." +#~ msgstr "La posizione Y della finestra principale." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Massimizza la finestra dell'assistente" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Indica se la finestra dell'assistente deve essere massimizzata." + +#~ msgid "X position of assistant window" +#~ msgstr "Posizione X della finestra assistente" + +#~ msgid "The X position of the assistant window." +#~ msgstr "La posizione X della finestra assistente." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posizione Y della finestra assistente" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "La posizione Y della finestra assistente." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Un visualizzatore per la documentazione di sviluppo per GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Chiudi" + +#~ msgid "Side _Panel" +#~ msgstr "Ri_quadro laterale" + +# GNOME-2-22 +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Scheda selezionata: \"content\" (contenuto) o \"search\" (ricerca)" + +# GNOME-2-22 +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Quale delle schede è selezionata: \"content\" (contenuto) o \"search" +#~ "\" (ricerca)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "" +#~ "Era atteso «%s», invece è stato trovato «%s» alla riga %d, colonna %d" + +# [NdT] è una guida per sviluppatori quindi si presume che si sappia cos'è +# un namespace +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Namespace «%s» non valido alla riga %d, colonna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Gli elementi «title», «name» e «link» devono essere presenti alla riga " +#~ "%d, colonna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Gli elementi «name» e «link» devono essere presenti dentro il tag " +#~ "alla riga %d, colonna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Gli elementi «name» e «link» devono essere presenti dentro il tag «%s» " +#~ "alla riga %d, colonna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "Gli elementi «name» e «link» devono essere presenti dentro il tag " +#~ " alla riga %d, colonna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Impossibile decomprimere il libro «%s»: %s" + +#~ msgid "_Side pane" +#~ msgstr "Ri_quadro laterale" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "" +#~ "Imposta F2 come attivatore di Devhelp per la parola dove si trova il " +#~ "cursore" diff --git a/po/ja.gmo b/po/ja.gmo new file mode 100644 index 0000000..69ba050 Binary files /dev/null and b/po/ja.gmo differ diff --git a/po/ja.po b/po/ja.po new file mode 100644 index 0000000..9055d93 --- /dev/null +++ b/po/ja.po @@ -0,0 +1,594 @@ +# devhelp ja.po. +# Copyright (C) 2001-2011 devhelp's COPYRIGHT HOLDE +# Takeshi Aihana , 2001-2009. +# Takayuki KUSANO , 2010. +# Jiro Matsuzawa , 2011-2015. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2015-09-14 15:21+0000\n" +"PO-Revision-Date: 2015-09-15 01:20+0900\n" +"Last-Translator: Jiro Matsuzawa \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +msgid "Devhelp is an API documentation browser. It provides an easy way to navigate through libraries, search by function, struct, or macro. It provides a tabbed interface and allows to print results." +msgstr "Devhelp は、API ドキュメントブラウザーです。ライブラリの API を簡単に調べることができ、関数や構造体、マクロなどを検索することもできます。ユーザーインターフェースはタブ表示が可能で、ドキュメントの印刷機能も備えています。" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +msgid "Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp では他のアプリケーションとの統合も実現されており、Glade や、Anjuta、Geany などと連携して使用することができます。" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&target=devhelp.png" +msgstr "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:211 +#: ../src/dh-app.c:507 ../src/dh-window.c:753 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "開発者向けのヘルプブラウザーです" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ドキュメントブラウザー" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;ドキュメンテーション;ドキュメント;情報;リファレンスマニュアル;開発者;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "メインウィンドウの最大化" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "メインウィンドウを最大サイズで起動するかどうかです。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "メインウィンドウの幅" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "メインウィンドウの幅です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "メインウィンドウの高さ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "メインウィンドウの高さです。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "メインウィンドウの位置X" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "メインウィンドウを表示するX座標です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "メインウィンドウの位置Y" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "メインウィンドウを表示するY座標です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "目次と検索ウィンドウの幅" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "目次と検索ウィンドウの幅です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "選択したタブ: \"content\" または \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "どちらのタブが選択されたか: \"content\" または \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "無効化されたブック" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "ユーザーによって無効化されたブックの一覧" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "言語別に分類する" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "ブックを言語別に分類して表示するかどうかの設定です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "アシスタントウィンドウを最大サイズにする" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "アシスタントウィンドウを最大サイズにするかどうかの設定です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "アシスタントウィンドウの幅" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "アシスタントウィンドウの幅です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "アシスタントウィンドウの高さ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "アシスタントウィンドウの高さです。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "アシスタントウィンドウの位置X" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "アシスタントウィンドウを表示するX座標です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "アシスタントウィンドウの位置Y" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "アシスタントウィンドウを表示するY座標です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "システムフォントを使う" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "デスクトップで設定したデフォルトのフォントを使用するかどうかの設定です。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "文章のフォント" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "可変幅の文を表示する際に使用するフォントです。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "等幅のフォント" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "等幅 (固定幅) のフォントで、主にサンプルコードで使用します。" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp のサポート" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "[F2] キーを押してカーソル位置にある単語を Devhelp から検索します" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API ドキュメントの参照" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "新しいウィンドウ(_W)" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "設定(_P)" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "このアプリケーションについて(_A)" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "終了(_Q)" + +#: ../src/dh-app.c:213 +msgid "A developers' help browser for GNOME" +msgstr "GNOME の開発者用ヘルプブラウザー" + +#: ../src/dh-app.c:215 +msgid "translator-credits" +msgstr "" +"相花 毅 \n" +"草野 貴之 \n" +"松澤 二郎 \n" +"日本GNOMEユーザー会 " + +#: ../src/dh-app.c:217 +msgid "Devhelp Website" +msgstr "Devhelp のウェブサイト" + +#: ../src/dh-app.c:432 +msgid "Opens a new Devhelp window" +msgstr "Devhelp の新しいウィンドウを開く" + +#: ../src/dh-app.c:437 +msgid "Search for a keyword" +msgstr "キーワードを検索する" + +#: ../src/dh-app.c:438 ../src/dh-app.c:443 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-app.c:442 +msgid "Search and display any hit in the assistant window" +msgstr "検索結果をアシスタントウィンドウの中に表示する" + +#: ../src/dh-app.c:447 +msgid "Display the version and exit" +msgstr "バージョンを表示して終了する" + +#: ../src/dh-app.c:452 +msgid "Quit any running Devhelp" +msgstr "Devhelp を終了する" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — アシスタント" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "ブック:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "言語: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "言語: 未定義" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "ブック" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "ページ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "キーワード" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "関数" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "構造体" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "マクロ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "列挙子" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "型" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "'%s' を期待しましたが '%s' を受け取りました (%d 行 %d 桁)" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "名前空間 '%s' が正しくありません (%d 行 %d 桁)" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "要素 \"title\" と \"name\" と \"link\" が %d 行 %d 桁で要求されました" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "\"name\" and \"link\" elements are required inside on line %d, column %d" +msgstr "\"name\" と \"link\" が の中の %d 行 %d 桁で要求されました" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "\"name\" と \"link\" が '%s' の中の %d 行 %d 桁で要求されました" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "\"type\" が の中の %d 行 %d 桁で要求されました" + +#: ../src/dh-parser.c:501 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' というブックを展開できません: %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "設定" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "言語別に分類する(_G)" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "有効" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "タイトル" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "本棚" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "システムフォントを使う(_U)" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "可変幅(_V): " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "固定幅(_F):" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "フォント" + +#: ../src/dh-window.c:86 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:87 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:88 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:89 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:90 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:91 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:92 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:93 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:94 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:975 +msgid "Error opening the requested link." +msgstr "要求されたリンクを開くのに失敗しました。" + +#: ../src/dh-window.c:1246 +msgid "_Close" +msgstr "閉じる(_C)" + +#: ../src/dh-window.c:1274 ../src/dh-window.c:1446 +msgid "Empty Page" +msgstr "空のページ" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "新しいタブ(_T)" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "印刷(_P)" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "検索(_F)" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "文字を大きくする(_L)" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "文字を小さくする(_M)" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "通常の大きさ(_N)" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "サイドペイン(_S)" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "このアプリケーションについて(_A)" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "戻る" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "進む" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "カーソル位置にある文字列に対応する API ドキュメントを表示します" + +#~ msgid "Current" +#~ msgstr "選択中" + +#~ msgid "All Books" +#~ msgstr "すべてのブック" + +#~ msgid "_Window" +#~ msgstr "ウィンドウ(_W)" + +#~ msgid "_Edit" +#~ msgstr "編集(_E)" + +#~ msgid "_Copy" +#~ msgstr "コピー(_C)" + +#~ msgid "Find _Next" +#~ msgstr "次を検索(_N)" + +#~ msgid "Find _Previous" +#~ msgstr "前を検索(_P)" + +#~ msgid "_View" +#~ msgstr "表示(_V)" + +#~ msgid "Fullscreen" +#~ msgstr "フルスクリーン" + +#~ msgid "_Go" +#~ msgstr "移動(_G)" + +#~ msgid "_Search Tab" +#~ msgstr "検索タブ(_S)" + +#~ msgid "_Contents Tab" +#~ msgstr "目次タブ(_C)" + +#~ msgid "Go to the previous page" +#~ msgstr "前のページに移動します" + +#~ msgid "Go to the next page" +#~ msgstr "次のページに移動します" + +#~ msgid "Decrease the text size" +#~ msgstr "文字を一段階小さくします" + +#~ msgid "Increase the text size" +#~ msgstr "文字を一段階大きくします" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Devhelp のウィンドウにフォーカスを与えて検索タブを開く" + +#~ msgid "Search in:" +#~ msgstr "検索対象:" + +#~ msgid "Contents" +#~ msgstr "目次" + +#~ msgid "Search" +#~ msgstr "検索" + +#~ msgid "Find:" +#~ msgstr "検索:" + +#~ msgid "Find Previous" +#~ msgstr "前を検索" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "先頭に向かって文字列を検索します" + +#~ msgid "Find Next" +#~ msgstr "次を検索" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "後方に向かって文字列を検索します" + +#~ msgid "C_ase Sensitive" +#~ msgstr "大/小文字を区別する(_A)" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "大/小文字を区別するかどうかを切り換えます" + +#~ msgid "_File" +#~ msgstr "ファイル(_F)" + +#~ msgid "_Help" +#~ msgstr "ヘルプ(_H)" + +#~ msgid "Use the normal text size" +#~ msgstr "文字を標準の大きさにリセットします" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "フルスクリーンモードを解除" + +#~ msgid "Display in full screen" +#~ msgstr "フルスクリーンモードで表示" + +#~ msgid "Larger" +#~ msgstr "拡大" + +#~ msgid "Smaller" +#~ msgstr "縮小" + +#~ msgid "Preferences…" +#~ msgstr "設定…" + +#~ msgid "Fonts" +#~ msgstr "フォント" diff --git a/po/kk.gmo b/po/kk.gmo new file mode 100644 index 0000000..bc15c86 Binary files /dev/null and b/po/kk.gmo differ diff --git a/po/kk.po b/po/kk.po new file mode 100644 index 0000000..502bb38 --- /dev/null +++ b/po/kk.po @@ -0,0 +1,544 @@ +# Kazakh translation for devhelp. +# Copyright (C) 2016 devhelp's COPYRIGHT HOLDER +# This file is distributed under the same license as the devhelp package. +# Baurzhan Muftakhidinov , 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-03-03 20:36+0500\n" +"Last-Translator: Baurzhan Muftakhidinov \n" +"Language-Team: Kazakh \n" +"Language: kk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API құжаттамасын шолушысы" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentation;information;manual;developer;api;құжаттама;ақпарат;нұсқаулық;" +"өндіруші;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Басты терезенің максималды күйі" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Басты терезе жазық түрінде ашылуы тиіс пе." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Басты терезенің ені" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Басты терезенің ені." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Басты терезенің биіктігі" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Басты терезенің биіктігі." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Тіл бойынша топтау" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Көмекші терезенің ені" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Көмекші терезенің ені." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Көмекші терезенің биіктігі" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Көмекші терезенің биіктігі." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Жүйелік қаріптерді қолдану" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Жүйелік негізгі қаріптерді қолдану." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Мәтін үшін қаріп" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Ені ауыспалы болатын мәтін үшін қаріп." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Ені тұрақты болатын мәтін үшін қаріп" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Ені тұрақты болатын, код үлгілері сияқты, мәтін үшін қаріп." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp қолдауы" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API құжаттамасын көрсету" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "Baurzhan Muftakhidinov " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Devhelp вебсайты" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Жаңа Devhelp терезесін ашады" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Кілтсөзді іздеу" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "КІЛТСӨЗ" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Нұсқасын шығару және шығу" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Орындалып тұрған Devhelp нұсқаларының жұмысын аяқтау" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Көмекші" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Кітап:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Тілі: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Тілі: анықталмаған" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Барл_ығын жинау" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Кітап" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Парақ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Кілт сөз" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Функция" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Макрос" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Түрі" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Қасиеті" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Сигнал" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Баптаулар" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "Топ бойынша то_птау" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Іске қосулы" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Атауы" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Кітап сөресі" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "Жүйелік қаріптерді қ_олдану" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "А_йнымалы ені: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Бе_кітілген ені:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Қаріптер" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Бос парақ" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Бүйір _панелі" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Бас_паға шығару" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Табу" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Ү_лкенірек мәтін" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Кі_шірек мәтін" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Қалы_пты өлшемі" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Жаңа _терезе" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Баптаулар" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "П_ернетақта жарлықтары" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Кө_мек" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "Devhelp тур_алы" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Шығу" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Кері" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Алға" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Жаңа бет" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Жалпы" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Глобалды іздеу өрісіне фокусты орнату" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Ағымдағы парақтан табу" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Жаңа терезені ашу" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Жаңа бетті ашу" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Бүйір панелін көрсету/жасыру" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Артқа өту" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Алға өту" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Баспаға шығару" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Ағымдағы терезені жабу" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Барлық терезелерді жабу" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Үлкейту" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Үлкейту" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Кішірейту" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Масштабты тастау" + +#: src/menus.ui:50 +msgid "_About" +msgstr "О_сы туралы" + +#~ msgid "X position of main window" +#~ msgstr "Басты терезенің X орны" + +#~ msgid "The X position of the main window." +#~ msgstr "Басты терезенің X орны." + +#~ msgid "Y position of main window" +#~ msgstr "Басты терезенің Y орны" + +#~ msgid "The Y position of the main window." +#~ msgstr "Басты терезенің Y орны." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Көмекші терезе жазық түрінде ашылуы тиіс пе" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Көмекші терезе жазық түрінде ашылуы тиіс пе." + +#~ msgid "X position of assistant window" +#~ msgstr "Көмекші терезенің X орны" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Көмекші терезенің X орны." + +#~ msgid "Y position of assistant window" +#~ msgstr "Көмекші терезенің Y орны" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Көмекші терезенің Y орны." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "GNOME ортасы үшін өндірушілер құжаттамасын шолушысы" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Жабу" + +#~ msgid "Side _Panel" +#~ msgstr "Бүйір _панелі" + +#~ msgid "_Side pane" +#~ msgstr "Бү_йір панелі" diff --git a/po/km.gmo b/po/km.gmo new file mode 100644 index 0000000..aa1005f Binary files /dev/null and b/po/km.gmo differ diff --git a/po/km.po b/po/km.po new file mode 100644 index 0000000..8c97af3 --- /dev/null +++ b/po/km.po @@ -0,0 +1,540 @@ +# translation of devhelp.master.po to Khmer +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Khoem Sokhem , 2012. +# Seng Sutha , 2012. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2012-01-11 18:02+0000\n" +"PO-Revision-Date: 2012-01-25 10:14+0700\n" +"Last-Translator: Seng Sutha \n" +"Language-Team: Khmer \n" +"Language: km\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: WordForge 0.8 RC1\n" +"X-Language: km-KH\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "កម្មវិធី​ជំនួយ​​របស់​អ្នក​អភិវឌ្ឍន៍" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1868 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "កម្មវិធី​រុករក​ឯកសារ" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "បាន​បិទ​សៀវភៅ" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "ពុម្ពអក្សរ​សម្រាប់​អត្ថបទ​ទឹង​ថេរ" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "ពុម្ពអក្សរ​សម្រាប់​អត្ថបទ" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "ពុម្ពអក្សរ​សម្រាប់​អត្ថបទ​ដែល​មាន​ទទឹង​ថេរ ដូច​ជា​​ឧទាហរណ៍​របស់​កូដ ។" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "ពុម្ពអក្សរ​សម្រាប់​អត្ថបទ​ដែល​មាន​ទទឹង​​អថេរ ។" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "ដាក់​ជា​ក្រុម​តាម​ភាសា" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "កម្ពស់​របស់​​បង្អួច​ជំនួយ" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "កម្ពស់​​របស់​បង្អួច​​​មេ" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "បញ្ជី​សៀវភៅ​បាន​បិទ​ដោយ​អ្នក​ប្រើ ។" + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "បាន​កំណត់​សភាព​អតិបរមា​​នៃ​បង្អួច​មេ" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "ផ្ទាំង​ដែល​បាន​ជ្រើស ៖ \"មាតិកា\" ឬ \"ការ​ស្វែងរក\"" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr " X ទីតាំង​របស់​បង្អួច​ជំនួយ ។" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "X ទីតាំង​របស់​បង្អួច​មេ ។" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "Y ទីតាំង​របស់​បង្អួច​ជំនួយ ។" + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "Y ទីតាំង​របស់​បង្អួច​មេ ។" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "កម្ពស់​របស់​បង្អួច​ជំនួយ ។" + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "កម្ពស់​របស់​បង្អួច​មេ ។" + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "ទទឹង​របស់​បង្អួច​ជំនួយ ។" + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "ទទឹង​របស់​លិបិក្រម និងការ​​​​ស្វែងរក​ស្លាបព្រិល ។" + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "ទទឹង​របស់​បង្អួច​មេ ។" + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "ប្រើ​ពុម្ពអក្សរ​ប្រព័ន្ធ" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "ប្រើ​ពុម្ពអក្សរ​លំនាំដើម​ប្រព័ន្ធ ។" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "ថា​តើ​សៀវភៅ​គួរតែ​ត្រូវ​បាន​ដាក់​ជា​ក្រុម​តាម​ភាសា​នៅក្នុង UI" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "ថា​តើ​បង្អួច​មេ​គួរតែ​ត្រូវ​​ចាប់ផ្ដើម​ពង្រីក​អតិបរមា ។" + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "ផ្ទាំង​ណាមួយ​ត្រូវ​បាន​ជ្រើស ៖ \"មាតិកា\" ឬ \"ការ​ស្វែងរក\" ។" + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "ទទឹង​របស់​បង្អួច​ជំនួយ" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "ទទឹង​របស់​លិបិក្រម និង​ការ​ស្វែងរក​ស្លាបព្រិល" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "ទទឹង​របស់​បង្អួច​មេ" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "X ទីតាំង​របស់​បង្អួច​ជំនួយ" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "X ទីតាំង​របស់​បង្អួច​មេ" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "Y ទីតាំង​របស់​បង្អួច​ជំនួយ" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Y ទីតាំង​របស់​បង្អួច​មេ" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "ថត​ដាក់​សៀវភៅ" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Enabled" +msgstr "បាន​បើក" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Fonts" +msgstr "ពុម្ពអក្សរ" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Preferences" +msgstr "ចំណូលចិត្ត" + +#: ../data/ui/devhelp.builder.h:5 +msgid "Title" +msgstr "ចំណងជើង" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Fixed width:" +msgstr "ទទឹង​ថេរ ៖" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Group by language" +msgstr "ក្រុម​តាម​ភាសា" + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Use system fonts" +msgstr "ប្រើ​ពុម្ពអក្សរ​ប្រព័ន្ធ" + +#: ../data/ui/devhelp.builder.h:9 +msgid "_Variable width: " +msgstr "ទទឹង​អថេរ ៖" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "ការ​គាំទ្រ Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "បង្កើត​ F2 នាំ​យក Devhelp សម្រាប់​ពាក្យ​នៅ​ទស្សន៍ទ្រនិច" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "បង្ហាញ​ឯកសារ API" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "បង្ហាញ​ឯកសារ API សម្រាប់​ពាក្យ​នៅ​ទស្សន៍ទ្រនិច" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "ជំនួយ​របស់ Devhelp" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "សៀវភៅ ៖" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "ភាសា ៖ %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "ភាសា ៖ ដែល​មិន​បាន​កំណត់" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "សៀវភៅ" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "ទំព័រ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "ពាក្យ​គន្លឹះ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "មុខងារ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "រចនាសម្ព័ន្ធ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "ម៉ាក្រូ​" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "ប្រភេទ" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "ស្វែងរក​ពាក្យគន្លឹះ" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "បោះបង់​ការ​ដំណើរការ Devhelp មួយ​ចំនួន" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "បង្ហាញ​កំណែ ហើយ​ចេញ" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "ផ្ដោត​លើ​បង្អួច​របស់ Devhelp ដែល​មាន​វាល​ស្វែងរក​សកម្ម" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "ស្វែងរក និង​បង្ហាញ​ការ​វាយ​មួយ​ចំនួន​នៅ​ក្នុង​បង្អួច​ជំនួយ" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr " '%s' ដែល​រំពឹង ទទួល​បាន '%s' នៅ​បន្ទាត់ %d ជួរឈរ %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "namespace មិន​ត្រឹមត្រូវ '%s' នៅ​បន្ទាត់ %d ជួរឈរ %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"ធាតុ \"ចំណងជើង\" \"ឈ្មោះ\" និង \"តំណ\" ត្រូវ​បាន​ទាមទារ​នៅ​បន្ទាប់ %d ជួរឈរ %d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"ធាតុ \"ឈ្មោះ\" និង \"តំណ\" ​ត្រូវ​បាន​ទាមទារ​ខាងក្នុង លើ​បន្ទាត់ %d ជួរឈរ " +"%d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"ធាតុ \"ឈ្មោះ\" និង \"តំណ\" ​ត្រូវ​បាន​ទាមទារ​​​ខាងក្នុង '%s' លើ​បន្ទាត់ %d ជួរឈរ " +"%d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "ធាតុ \"ប្រភេទ\" ត្រូវ​បាន​ទាមទារ លើ​បន្ទាត់ %d ជួរឈរ %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "មិន​អាច​​មិន​បង្ហាប់​សៀវភៅ '%s' ៖ %s បាន​ទេ" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "សៀវភៅ​ទាំងអស់" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "ស្វែងរក​ក្នុង ៖" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "៥០%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "៧៥​%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "១០០%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "១២៥​%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "១៥០%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "១៧៥​%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "២០០%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "៣០០​%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "៤០០​%" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "ខឹម សុខែម, ម៉ន ម៉េត, សេង សុត្ថា, ចាន់ សម្បត្តិរតនៈ, សុខ សុភា" + +#: ../src/dh-window.c:733 +msgid "A developers' help browser for GNOME" +msgstr "កម្មវិធី​រុករក​ជំនួយ​របស់​អ្នក​អភិវឌ្ឍន៍​សម្រាប់ GNOME" + +#: ../src/dh-window.c:740 +msgid "DevHelp Website" +msgstr "តំបន់បណ្ដាញ​របស់ DevHelp" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "ឯកសារ" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "កែសម្រួល" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "មើល" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "ទៅ" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "ជំនួយ" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "បង្អួច​ថ្មី" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "ផ្ទាំង​ថ្មី" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "បោះពុម្ព…" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "រក​បន្ទាប់" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "រក​ខាងដើម" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "ទៅកាន់​ទំព័រ​មុន" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "ទៅកាន់​ទំព័រ​បន្ទាប់" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "ផ្ទាំង​មាតិកា" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "ផ្ទាំង​ស្វែងរក" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "អត្ថបទ​ធំជាង" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "បង្កើន​ទំហំ​អត្ថបទ" + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "ទំហំ​អត្ថបទ​តូច​ជាង" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "បន្ថយ​ទំហំ​អត្ថបទ" + +#: ../src/dh-window.c:815 +msgid "_Normal Size" +msgstr "ទំហំ​ធម្មតា" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "ប្រើ​ទំហំ​អត្ថបទ​ធម្មតា" + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "ទុក​របៀប​ពេញ​អេក្រង់" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "បង្ហាញ​ជា​របៀប​ពេញ​អេក្រង់" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +msgid "Larger" +msgstr "ធំជាង" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +msgid "Smaller" +msgstr "តូចជាង" + +#: ../src/dh-window.c:1159 +msgid "Contents" +msgstr "មាតិកា" + +#: ../src/dh-window.c:1169 +msgid "Search" +msgstr "ស្វែងរក" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "កំហុស​ក្នុង​ការ​បើក​តំណ​ដែល​បាន​​ស្នើ ។" + +#: ../src/dh-window.c:1657 ../src/dh-window.c:1896 +msgid "Empty Page" +msgstr "ទំព័រ​ទទេ" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "រក ៖" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "រក​ខាងដើម​ដែល​មាន​នៅ​​ខ្សែ​អក្សរ​ស្វែងរក" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "រក​បន្ទាប់​ដែល​មាន​នៅ​ខ្សែ​អក្សរ​ស្វែងរក" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "ប្រកាន់​តួ​អក្សរ​តូច​ធំ" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "បិទ​/​​បើក​ការ​ស្វែងរក​ប្រកាន់​តួ​អក្សរ​តូច​ធំ" + diff --git a/po/kn.gmo b/po/kn.gmo new file mode 100644 index 0000000..5bcc63e Binary files /dev/null and b/po/kn.gmo differ diff --git a/po/kn.po b/po/kn.po new file mode 100644 index 0000000..fc0959e --- /dev/null +++ b/po/kn.po @@ -0,0 +1,238 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: DevHelp.Gnome-2.1\n" +"POT-Creation-Date: 2004-03-16 23:25+0100\n" +"PO-Revision-Date: 2002-12-17 12:12+0530\n" +"Last-Translator: Pramod \n" +"Language-Team: Kannada \n" +"Language: kn\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: devhelp.desktop.in.h:1 +msgid "Developer's Help program" +msgstr "" + +#: devhelp.desktop.in.h:2 ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "" + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "" + +#: devhelp.schemas.in.h:7 +msgid "The X position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:8 +msgid "The Y position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:9 +msgid "The height of the main window." +msgstr "" + +#: devhelp.schemas.in.h:10 +msgid "The location of the paned separator." +msgstr "" + +#: devhelp.schemas.in.h:11 +msgid "The width of the main window." +msgstr "" + +#: devhelp.schemas.in.h:12 +msgid "Use system fonts" +msgstr "" + +#: devhelp.schemas.in.h:13 +msgid "Use the system default fonts." +msgstr "" + +#: devhelp.schemas.in.h:14 +msgid "Width of the main window" +msgstr "" + +#: devhelp.schemas.in.h:15 +msgid "X position of main window" +msgstr "" + +#: devhelp.schemas.in.h:16 +msgid "Y position of main window" +msgstr "" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "" + +#: src/dh-parser.c:104 src/dh-parser.c:181 src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "" + +#: src/dh-parser.c:250 +#, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "" + +#: src/dh-parser.c:337 src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "" + +#: src/dh-parser.c:347 src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "" + +#: src/dh-search.c:417 +#, fuzzy +msgid "_Search:" +msgstr "ಹುಡುಕು" + +#: src/dh-search.c:461 +msgid "Section" +msgstr "" + +#: src/dh-window.c:111 +msgid "_File" +msgstr "ಕಡತ" + +#: src/dh-window.c:112 +msgid "_Edit" +msgstr "" + +#: src/dh-window.c:113 ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "ಹೊಗು" + +#: src/dh-window.c:114 +msgid "_Help" +msgstr "ಸಹಾಯ" + +#: src/dh-window.c:292 +#, c-format +msgid "Cannot set UI: %s" +msgstr "" + +#: src/dh-window.c:352 ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "ಒಳ ವಿಷಯಗಳು" + +#: src/dh-window.c:363 +msgid "Search" +msgstr "ಹುಡುಕು" + +#: src/dh-window.c:446 +msgid "A developer's help browser for GNOME 2" +msgstr "" + +#: src/dh-window.c:462 +msgid "Devhelp project page" +msgstr "" + +#: src/dh-window.c:466 +msgid "Bug report Devhelp" +msgstr "" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr "" + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "" + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "" + +#~ msgid "_Search for:" +#~ msgstr "ಹುಡುಕು:" + +#~ msgid "_About" +#~ msgstr "ತಂತ್ರಾಂಶದ ಬಗ್ಗೆ" + +#~ msgid "Open %s" +#~ msgstr "ತೆಗೆ %s" diff --git a/po/ko.gmo b/po/ko.gmo new file mode 100644 index 0000000..102e75f Binary files /dev/null and b/po/ko.gmo differ diff --git a/po/ko.po b/po/ko.po new file mode 100644 index 0000000..fded421 --- /dev/null +++ b/po/ko.po @@ -0,0 +1,494 @@ +# Korean translation for devhelp +# This file is distributed under the same license as the devhelp package. +# +# Kang Jeong-Hee , 2003. +# Seongchong Park , 2004. +# Changwoo Ryu , 2006, 2008-2018. +# +# - 새로 번역을 업데이트하시는 분은 "translator_credits" 항목에도 추가하세요. +# +# 주의: +# - 이 프로그램의 이름인 Devhelp는 "개발자 도움말"로 풀어서 번역 +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-24 20:18+0000\n" +"PO-Revision-Date: 2018-02-25 14:19+0900\n" +"Last-Translator: Changwoo Ryu \n" +"Language-Team: GNOME Korea \n" +"Language: ko\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" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "개발 도움말" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "API 문서를 보고 검색하는 개발자 도구" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"개발 도움말은 API 문서를 보고 검색하는 개발자 도구입니다. 함수, 구조체, 매크" +"로로 검색해서 라이브러리를 간단히 볼 수 있습니다." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"문서는 로컬에 저장해야 인터넷 연결 없이도 개발 도움말을 사용할 수 있습니다." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"개발 도움말은 Gtk-Doc과 같이 잘 동작합니다. 그러므로 GTK+ 및 그놈 라이브러리" +"를 잘 지원합니다. 그 외의 개발 플랫폼도 HTML 형식의 API 문서가 있고 문서의 *." +"devhelp2 인덱스 파일을 만들면 지원할 수 있습니다." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"개발 도움말은 글레이드, 빌더, 안주타와 같은 다른 프로그램과도 연동됩니다. 여" +"러 텍스트 편집기에서 (지에디트, VIM, 이맥스, 기니, …) 사용할 수 있는 플러그인" +"도 있습니다." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API 문서 보기" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentation;문서;information;정보;manual;설명서;매뉴얼;developer;개발자;" +"api;레퍼런스;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "메인 창의 최대화 상태" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "시작할 때 메인 창을 최대화할 지 여부." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "메인 창의 너비" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "메인 창의 너비." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "메인 창의 높이" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "메인 창의 높이." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "색인 및 검색 창의 너비" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "색인 및 검색 창의 너비." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "사용하지 않는 책 목록" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "사용자가 사용하지 않도록 표시된 책 목록." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "언어별 모음" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "UI에서 문서를 언어별로 모을지 여부" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "도우미 창의 너비" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "도우미 창의 너비." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "도우미 창의 높이" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "도우미 창의 높이." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "시스템 글꼴 사용" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "시스템 기본 글꼴을 사용합니다." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "텍스트에 사용할 글꼴" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "가변폭의 텍스트에 사용할 글꼴." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "고정폭 텍스트에 사용할 글꼴" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "고정폭 텍스트에 사용할 글꼴(코드 예제 등)." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "개발 도움말 기능" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API 문서 표시" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"강정희\n" +"류창우\n" +"박성종" + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "개발 도움말 웹사이트" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "개발자 도움말 창을 새로 엽니다" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "검색어를 검색합니다" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "<검색어>" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "도우미 창에 입력하자 마자 찾아서 표시합니다" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "버전을 표시하고 끝냅니다" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "실행 중인 개발 도움말을 끝냅니다" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "개발 도움말 — 도우미" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "문서:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "언어: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "언어: 지정하지 않음" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "모두 접기(_C)" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "문서" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "페이지" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "키워드" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "함수" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "구조체" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "매크로" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "열거형" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "타입" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "속성" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "시그널" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "기본 설정" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "언어별 모음(_G)" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "사용" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "제목" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "책장" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "시스템 글꼴 사용(_U)" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "가변폭(_V):" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "고정폭(_F):" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "글꼴" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "요청한 링크를 여는데 오류가 발생했습니다." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "빈 페이지" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "가장자리 창(_S)" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "인쇄(_P)" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "찾기(_F)" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "글씨 크게(_L)" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "글씨 작게(_M)" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "보통 크기(_N)" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "새 창(_W)" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "기본 설정(_P)" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "키보드 바로 가기(_K)" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "도움말(_H)" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "개발 도움말 정보(_A)" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "끝내기(_Q)" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "뒤로" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "앞으로" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "새 탭" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "일반" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "전체 검색 포커스" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "현재 페이지에서 찾기" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "새 창 열기" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "새 탭 열기" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "가장자리 창 보기 토글" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "뒤로 이동" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "앞으로 이동" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "인쇄" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "현재 창 닫기" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "모든 창 닫기" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "확대/축소" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "확대" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "축소" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "확대/축소 초기화" + +#: src/menus.ui:50 +msgid "_About" +msgstr "정보(_A)" diff --git a/po/lt.gmo b/po/lt.gmo new file mode 100644 index 0000000..b70f637 Binary files /dev/null and b/po/lt.gmo differ diff --git a/po/lt.po b/po/lt.po new file mode 100644 index 0000000..f5c75c1 --- /dev/null +++ b/po/lt.po @@ -0,0 +1,619 @@ +# translation of lt.po to Lithuanian +# Lithuanian translation +# Copyright (C) 2001-2007 Devhelp's authors +# This file is distributed under the same license as the devhelp package. +# +# +# Gintautas Miliauskas , 2007, 2008. +# Vytautas Liuolia , 2007, 2010. +# Aurimas Černius , 2010, 2013, 2014, 2015, 2017, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: lt\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-27 13:07+0000\n" +"PO-Revision-Date: 2018-03-03 13:41+0200\n" +"Last-Translator: Aurimas Černius \n" +"Language-Team: Lietuvių \n" +"Language: lt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Gtranslator 2.91.7\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n" +"%100<10 || n%100>=20) ? 1 : 2);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Kūrėjo įrankis, skirtas API dokumentacijos naršymui ir paieškai" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp yra kūrėjo įrankis, skirtas API dokumentacijos naršymui ir paieškai. " +"Jis pateikia lengvą būdą naršyti bibliotekas, ieškoti pagal funkciją, " +"struktūrą ar makrokomandą." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentacija privalo būti įdiegta vietoje, taigi naudojant Devhelp " +"interneto ryšys nėra reikalingas." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp veikia savu būdu su GTK-Doc, taigi GTK+ ir GNOME bibliotekos yra " +"gerai palaikomos. Tačiau gali būti palaikomos ir kitos kūrimo platformos " +"tol, kol API dokumentacija yra prieinama HTML pavidalu ir yra generuojamas *." +"devhelp2 indekso failas." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp integruojasi su kitomis programomis, tokiomis kaip Glade, Builder ar " +"Anjuta, o įvairiems tekstų redaktoriams (gedit, Vim, Emacs, Geany, …) yra " +"prieinami įskiepiai." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API dokumentacijos naršyklė" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentacija;informacija;vadovas;kūrėjas;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Pagrindinio lango būsena" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Ar paleidžiant pagrindinis langas turėtų būti išdidintas." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Pagrindinio lango plotis" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Pagrindinio lango plotis." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Pagrindinio lango aukštis" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Pagrindinio lango aukštis." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Paieškos ir turinio pulto plotis" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Indekso ir paieškos pulto plotis." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Knygos išjungtos" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Knygų sąrašas išjungtas naudotojo." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grupuoti pagal kalbą" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Ar knygos turėtų būti grupuojamos pagal galbą sąsajoje" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Pagalbinio lango plotis" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Pagalbinio lango plotis." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Pagalbinio lango aukštis" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Pagalbinio lango aukštis." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Naudoti sisteminius šriftus" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Naudoti sistemos standartinius šriftus." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Šriftas tekstui" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Šriftas kintamo pločio tekstui." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Šriftas fiksuoto pločio tekstui" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Šriftas fiksuoto pločio tekstui, pavyzdžiui kodo pavyzdžiams." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp palaikymas" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Rodyti API dokumentaciją" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"Išvertė:\n" +"Aurimas Černius \n" +"Vytautas Liuolia " + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "DevHelp žiniatinklis" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Atveria naują Devhelp langą" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Ieškoti raktažodžio" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "RAKTINIS ŽODIS" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Ieškoti ir rodyti bet kokį sutapimą pagalbiniame lange" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Parodyti versijos informaciją ir išeiti" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Uždaryti paleistus Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp - pagalbininkas" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Knyga:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Kalba: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Kalba: Nenurodyta" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Suskleisti _viską" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Knyga" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Puslapis" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Raktažodis" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Savybė" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signalas" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Nuostatos" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupuoti pagal kalbą" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Įjungta" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Pavadinimas" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Knygos lentyna" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Naudoti sisteminius šriftus" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Kintamo pločio šriftas: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Fiksuoto pločio šriftas:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Šriftai" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Klaida atveriant nuorodą." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Tuščias puslapis" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Šoninis _skydelis" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "S_pausdinti" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Ieškoti" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Didesnis tekstas" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Mažesnis tekstas" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Į_prastinis dydis" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Naujas _langas" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Nuostatos" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Klaviatūros trumpiniai" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Ž_inynas" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Apie Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "Iš_eiti" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Atgal" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Pirmyn" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nauja kortelė" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Bendra" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokusuoti visuotinę paiešką" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Rasti esamame puslapyje" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Atverti naują langą" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Atverti naują kortelę" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Perjungti šoninės juostos matomumą" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Grįžti atgal" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Eiti pirmyn" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Spausdinti" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Užverti esamą langą" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Užverti visus langus" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Mastelis" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Didinti" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Mažinti" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Atstatyti mastelį" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Apie" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Programuotojo žinyno programa" + +#~ msgid "X position of main window" +#~ msgstr "Pagrindinio lango X koordinatė" + +#~ msgid "The X position of the main window." +#~ msgstr "Pagrindinio lango X koordinatė" + +#~ msgid "Y position of main window" +#~ msgstr "Pagrindinio lango X koordinatė" + +#~ msgid "The Y position of the main window." +#~ msgstr "Pagrindinio lango Y koordinatė" + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Ar pagalbinis langas turėtų būti išdidintas" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Ar pagalbinis langas turėtų būti išdidintas." + +#~ msgid "X position of assistant window" +#~ msgstr "Pagalbinio lango X koordinatė" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Pagalbinio lango X koordinatė" + +#~ msgid "Y position of assistant window" +#~ msgstr "Pagalbinio lango X koordinatė" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Pagalbinio lango Y koordinatė" + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "GNOME programuotojo žinyno naršyklė" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Užverti" + +#~ msgid "Side _Panel" +#~ msgstr "Šoninis _skydelis" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Pasirinkta kortelė: „turinys“ ar „paieška“" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Kuri iš kortelių pasirinkta: „turinys“ ar „paieška“." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Tikėtasi '%s', rasta '%s' eilutėje %d, stulpelyje %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Klaidinga vardų erdvė '%s' eilutėje %d, stulpelyje %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "„pavadinimas“, „vardas“ ir „saitas“ elementai reikalingi eilutėje %d, " +#~ "stulpelyje %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "„vardas“ ir „saitas“ elementai būtini viduje eilutėje %d, " +#~ "stulpelyje %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "„vardas“ ir „saitas“ elementai būtini '%s' viduje eilutėje %d, stulpelyje " +#~ "%d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "Elementas „tipas“ būtinas viduje eilutėje %d, stulpelyje %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Nepavyko išpakuoti knygos '%s': %s" + +#~ msgid "_Side pane" +#~ msgstr "Šoninis _polangis" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Nurodo, kad F2 iškviestų Devhelp pagalbą apie žodį ties žymekliu" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" diff --git a/po/lv.gmo b/po/lv.gmo new file mode 100644 index 0000000..abea3ff Binary files /dev/null and b/po/lv.gmo differ diff --git a/po/lv.po b/po/lv.po new file mode 100644 index 0000000..4201298 --- /dev/null +++ b/po/lv.po @@ -0,0 +1,486 @@ +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Rudolfs , 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=devhelp" +"&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-25 11:06+0000\n" +"PO-Revision-Date: 2018-03-04 17:57+0200\n" +"Last-Translator: Rūdolfs Mazurs \n" +"Language-Team: Latvian \n" +"Language: lv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 2.0\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 :" +" 2);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Rīks izstrādātājiem, ar ko pārlūkot un meklēt API dokumentāciju" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp ir rīks izstrādātājiem, ar ko pārlūkot un meklēt API dokumentāciju. " +"Tas piedāvā vieglu veidu, kā apskatīt bibliotēkas, meklējot pēc funkcijām, " +"struktūrām vai makrosiem." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentācijai ir jābūt lokāli uzinstalētais, tāpēc nav nepieciešams " +"savienojums ar internetu, lai izmantotu Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp ir pielāgots darbam ar GTK-Doc, tāpēc GTK+ un GNOME bibliotēkas ir" +" labi atbalstītas. Arī citas izstrādes platformas var tikt atbalstītas, ja" +" API dokumentācija ir pieejama HTML formātā un ir uzģenerēta *.devhelp2" +" indeksu datne." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp ir integrēts ar citām lietotnēm, piemēram, Glade, Builder, Anjuta. " +"Ir pieejami spraudņi dažādiem teksta redaktoriem (gedit, Vim, Emacs, Geany, " +"…)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API dokumentācijas pārlūks" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentācija;informācija;rokasgrāmata;izstrāde;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Galvenā loga maksimizētais stāvoklis" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Vai galvenajam logam vajadzētu atvērties maksimizētam." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Galvenā loga platums" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Galvenā loga platums." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Galvenā loga augstums" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Galvenā loga augstums." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Rādītāja un meklēšanas rūts platums" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Rādītāja un meklēšanas rūts platums" + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Grāmatas deaktivētas" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Saraksts ar grāmatām, ko lietotājs deaktivējis." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grupēt pēc valodas" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Vai grāmatas saskarnē vajadzētu grupēt pēc valodas" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Asistenta loga platums" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Asistenta loga platums." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Asistenta loga augstums" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Asistenta loga augstums." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Lietot sistēmas fontus" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Lietot sistēmas noklusējuma fontus." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Fonts tekstam" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Fonts tekstam ar mainīgu platumu." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Fonts fiksēta platuma tekstam" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Fonts tekstam ar fiksētu platumu, teiksim, koda piemēriem." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp atbalsts" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Rādīt API dokumentāciju" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "Rūdolfs Mazurs " + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Devhelp tīmekļa vietne" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Atver jaunu Devhelp logu" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Meklēt atslēgvārdu" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "ATSLĒGVĀRDS" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Meklēt un parādīt jebkuru rezultātu asistenta logā" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Rādīt versiju un iziet" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Iziet no jebkura palaista Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — asistents" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Grāmata:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Valoda: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Valoda: nedefinēta" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Sakļaut visu" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Grāmata" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Lapa" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Atslēgvārds" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struktūra" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makross" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Tips" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Īpašība" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signāls" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Iestatījumi" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupēt pēc valodas" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Aktivēts" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Nosaukums" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Grāmatplaukts" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "Lietot sistēmas font_us" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Mainīgs platums: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Fiksēts platums:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Fonti" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Kļūda, atverot pieprasīto saiti." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Tukša lapa" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "_Sānu rūts" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Drukāt" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Meklēt" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Lielāks teksts" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Mazāks teksts" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Normāls izmērs" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Jauns _logs" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Iestatījumi" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Tastatūras īsinājumtaustiņi" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Palīdzība" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "P_ar Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "I_ziet" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Atpakaļ" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Uz priekšu" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Jauna cilne" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Vispārīgi" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokusēt globālo meklēšanu" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Meklēt šajā lapā" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Atvērt jaunu logu" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Atvērt jaunu cilni" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Pārslēgt sānu rūts redzamību" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Iet atpakaļ" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Iet uz priekšu" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Drukāt" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Aizvērt pašreizējo logu" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Aizvērt visus logus" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Mērogs" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Tuvināt" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Tālināt" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Atstatīt mērogu" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Par" diff --git a/po/mai.gmo b/po/mai.gmo new file mode 100644 index 0000000..53bbf01 Binary files /dev/null and b/po/mai.gmo differ diff --git a/po/mai.po b/po/mai.po new file mode 100644 index 0000000..90e64d4 --- /dev/null +++ b/po/mai.po @@ -0,0 +1,468 @@ +# translation of devhelp.master.po to Maithili +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Sangeeta Kumari , 2009. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&component=general\n" +"POT-Creation-Date: 2009-09-11 06:43+0000\n" +"PO-Revision-Date: 2009-09-11 20:32+0530\n" +"Last-Translator: Sangeeta Kumari \n" +"Language-Team: Maithili \n" +"Language: mai\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:235 +#: ../src/dh-window.c:438 ../src/dh-window.c:734 ../src/dh-window.c:1398 +msgid "Devhelp" +msgstr "" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed width text" +msgstr "" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "पाठ क'लेल फाँट" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width, such as code examples." +msgstr "" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "परिवर्तनशील चओड़ाइ क' सँग पाठ क'लेल फाँट" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of assistant window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Height of main window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the assistant window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The X position of the main window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The Y position of the assistant window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The Y position of the main window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The height of the assistant window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the main window." +msgstr "मुख्य विंडो क' उँचाइ." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The width of the assistant window." +msgstr "" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The width of the index and search pane." +msgstr "" + +#: ../data/devhelp.schemas.in.h:17 +msgid "The width of the main window." +msgstr "मुख्य विंडो क' चओड़ाइ." + +#: ../data/devhelp.schemas.in.h:18 +msgid "Use system fonts" +msgstr "सिस्टम फाँट क' प्रयोग करू " + +#: ../data/devhelp.schemas.in.h:19 +msgid "Use the system default fonts." +msgstr "" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Whether the main window should start maximized or not." +msgstr "" + +#: ../data/devhelp.schemas.in.h:21 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Width of the assistant window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Width of the index and search pane" +msgstr "" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Width of the main window" +msgstr "मुख्य विंडो क' चओड़ाइ." + +#: ../data/devhelp.schemas.in.h:25 +msgid "X position of assistant window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:26 +msgid "X position of main window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Y position of assistant window" +msgstr "" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Y position of main window" +msgstr "" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation" +msgstr "" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:40 +msgid "Show API Documentation for the word at the cursor" +msgstr "" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp - Assistant" +msgstr "" + +#: ../src/dh-assistant-view.c:319 +msgid "Book:" +msgstr "" + +#. i18n: a documentation book +#: ../src/dh-link.c:255 +msgid "Book" +msgstr "पुस्तक" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:258 +msgid "Page" +msgstr "पृष्ठ" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:262 +msgid "Keyword" +msgstr "कीवर्ड" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:267 +msgid "Function" +msgstr "फंक्शन" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:272 +msgid "Struct" +msgstr "सट्रक्ट" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:277 +msgid "Macro" +msgstr "मैक्रो" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Enum" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Type" +msgstr "प्रकार" + +#: ../src/dh-main.c:175 +msgid "Search for a keyword" +msgstr "" + +#: ../src/dh-main.c:180 +msgid "Quit any running Devhelp" +msgstr "" + +#: ../src/dh-main.c:185 +msgid "Display the version and exit" +msgstr "" + +#: ../src/dh-main.c:190 +msgid "Focus the Devhelp window with the search field active" +msgstr "" + +#: ../src/dh-main.c:195 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: ../src/dh-parser.c:81 ../src/dh-parser.c:178 ../src/dh-parser.c:242 +#: ../src/dh-parser.c:252 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:98 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:129 +#, c-format +msgid "\"title\", \"name\", and \"link\" elements are required at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:197 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" + +#: ../src/dh-parser.c:277 +#, c-format +msgid "\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:290 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:495 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "" + +#: ../src/dh-search.c:503 +msgid "All books" +msgstr "" + +#: ../src/dh-search.c:581 +msgid "Search in:" +msgstr "" + +#: ../src/dh-window.c:82 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:83 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:84 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:85 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:86 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:87 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:88 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:89 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:90 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:433 +msgid "translator_credits" +msgstr "संगीता कुमारी (sangeeta09@gmail.com)" + +#: ../src/dh-window.c:440 +msgid "A developer's help browser for GNOME" +msgstr "" + +#: ../src/dh-window.c:470 +msgid "_File" +msgstr "फाइल (_F)" + +#: ../src/dh-window.c:471 +msgid "_Edit" +msgstr "संपादन (_E)" + +#: ../src/dh-window.c:472 +msgid "_View" +msgstr "देखू (_V)" + +#: ../src/dh-window.c:473 +msgid "_Go" +msgstr "जाउ (_G)" + +#: ../src/dh-window.c:474 +msgid "_Help" +msgstr "मद्दति (_H)" + +#. File menu +#: ../src/dh-window.c:477 +msgid "_New Window" +msgstr "नवीन विंडो (_N)" + +#: ../src/dh-window.c:479 +msgid "New _Tab" +msgstr "नवीन टैब (_T)" + +#: ../src/dh-window.c:481 +msgid "_Print..." +msgstr "छापू... (_P)" + +#: ../src/dh-window.c:493 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "अगिला खोजू" + +#: ../src/dh-window.c:495 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "पछिला खोजू" + +#: ../src/dh-window.c:502 +msgid "Go to the previous page" +msgstr "पछिला पृष्ठ पर जाउ" + +#: ../src/dh-window.c:505 +msgid "Go to the next page" +msgstr "अगिला पृष्ठ पर जाउ" + +#: ../src/dh-window.c:508 +msgid "_Contents Tab" +msgstr "" + +#: ../src/dh-window.c:511 +msgid "_Search Tab" +msgstr "" + +#. View menu +#: ../src/dh-window.c:515 +msgid "_Larger Text" +msgstr "पैघ पाठ (_L)" + +#: ../src/dh-window.c:516 +msgid "Increase the text size" +msgstr "पाठ क' आकार बढ़ाबू" + +#: ../src/dh-window.c:518 +msgid "S_maller Text" +msgstr "छोट पाठ (_m)" + +#: ../src/dh-window.c:519 +msgid "Decrease the text size" +msgstr "पाठ क' आकार घटाबू" + +#: ../src/dh-window.c:521 +msgid "_Normal Size" +msgstr "सामान्य आकार (_N)" + +#: ../src/dh-window.c:522 +msgid "Use the normal text size" +msgstr "सामान्य पाठ आकार उपयोगमे लिअ'" + +#. Translators: This refers to text size +#: ../src/dh-window.c:647 +msgid "Larger" +msgstr "पैघ" + +#. Translators: This refers to text size +#: ../src/dh-window.c:650 +msgid "Smaller" +msgstr "छोट" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:789 +msgid "About Devhelp" +msgstr "" + +#: ../src/dh-window.c:794 +msgid "Preferences..." +msgstr "वरीयतासभ ..." + +#: ../src/dh-window.c:837 +msgid "Contents" +msgstr "विषय सूची" + +#: ../src/dh-window.c:847 +msgid "Search" +msgstr "खोजू" + +#: ../src/dh-window.c:1216 ../src/dh-window.c:1425 +msgid "Empty Page" +msgstr "" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "खोजू:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "खोज स्ट्रिंग क' पछिला उपस्थिति खोजू" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "खोज स्ट्रिंग क' अगिला उपस्थिति खोजू" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "स्थिति क' प्रति संवेदनशील (_a)" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "स्थिति संवेदनशील खोज टॉगल करू" + diff --git a/po/mk.gmo b/po/mk.gmo new file mode 100644 index 0000000..5f9d865 Binary files /dev/null and b/po/mk.gmo differ diff --git a/po/mk.po b/po/mk.po new file mode 100644 index 0000000..9d187dc --- /dev/null +++ b/po/mk.po @@ -0,0 +1,396 @@ +# translation of devhelp.HEAD.mk.po to Macedonian +# translation of devhelp.HEAD.po to +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# +# Ime Prezime , 2003. +# Arangel Angov , 2006, 2007, 2008. +# Jovan Naumovski , 2007, 2008. +# Arangel Angov , 2007. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD.mk\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-02-16 15:13+0000\n" +"PO-Revision-Date: 2008-03-02 18:39+0100\n" +"Last-Translator: Jovan Naumovski \n" +"Language-Team: Macedonian \n" +"Language: mk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Помошна програма за програмери" + +#: ../data/devhelp.desktop.in.in.h:2 ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:151 ../src/dh-window.c:790 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Прелистувач за документација" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "Фонт за fixed текст" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "Фонт за текст" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "Фонт за текст со fixed широчина." + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "Фонт за текст со променлива широчина." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "Висина на главен прозорец" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "Максимизирана состојба на главниот прозорец" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "Избран таб, \"содржина\" или \"пребарување\"" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "Покажи напредни опции за пребарување" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "X позицијата на главниот прозорец." + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "Y позицијата на главниот прозорец." + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "Височината на главниот прозорец." + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "Широчината на индексот и просторот за пребарување." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "Широчината на главниот прозорец." + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "Користи системски фонтови" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "Користи системски стандардни фонтови." + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "Дали да бидат прикажани напредните опции за пребарување." + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "Дали главниот прозорец да се подигне како максимизиран или не." + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "Кои табови се избрани, \"содржина\" или \"пребарување\"." + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "Широчина на индексот и просторот за пребарување." + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "Широчина на главниот прозорец" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "X позицијата на главниот прозорец" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "Y позицијата на главниот прозорец" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "Фонтови" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "Пребарување" + +#: ../data/ui/devhelp.glade.h:3 ../src/dh-window.c:519 +msgid "Contents" +msgstr "Содржини" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "Преференци" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "_Назад" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "_Fixed широчина:" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "_Напред" + +#: ../data/ui/devhelp.glade.h:9 ../src/dh-window.c:190 +msgid "_Go" +msgstr "_Оди" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "_Покажи напредни опции за пребарување" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "_Користи системски фонтови" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "_Променлива широчина: " + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Поддршка за Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Прави F2 да го подигнува Devhelp на зборчето каде што е курсорот" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:36 +msgid "Show API Documentation" +msgstr "Прикажи API документација" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation for the word at the cursor" +msgstr "Прикажувај API документација за зборот под стрелката" + +#: ../src/dh-main.c:100 +msgid "Search for a function" +msgstr "Пребарувај за функција" + +#: ../src/dh-main.c:109 +msgid "Quit any running Devhelp" +msgstr "Напушти секое вклучено Девпомош" + +#: ../src/dh-main.c:118 +msgid "Display the version and exit" +msgstr "Прикажи ја верзијата и излези" + +#: ../src/dh-main.c:127 +msgid "Focus the devhelp window with the search field active" +msgstr "Фокусирај го прозорецот на devhelp со активно поле за пребарување" + +#: ../src/dh-parser.c:110 ../src/dh-parser.c:194 ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "Очекував '%s' добив '%s' на линија %d, колона %d" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Неважечко место за име '%s' на линија %d, колона %d" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "Наслов, име, и линк елементи се потребни на линија %d, колона %d" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "име и линк елементи се потребни внатре на линија %d, колона %d" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "име и линк елементи се потребни внатре на линија %d, колона %d" + +#: ../src/dh-parser.c:420 ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "Не може да создаде парсер за книга" + +#: ../src/dh-parser.c:436 ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "Не може да создаде парсер за означување" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Не може да ја декомпресира книгата '%s': %s" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "Devhelp не е изграден со поддршка за zlib" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "_Книга:" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "_Страница:" + +#: ../src/dh-window.c:70 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:71 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:72 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:73 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:74 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:75 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:76 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:77 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:78 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:187 +msgid "_File" +msgstr "_Датотека" + +#: ../src/dh-window.c:188 +msgid "_Edit" +msgstr "_Уреди" + +#: ../src/dh-window.c:189 +msgid "_View" +msgstr "_Поглед" + +#: ../src/dh-window.c:191 +msgid "_Help" +msgstr "_Помош" + +#. File menu +#: ../src/dh-window.c:194 +msgid "_New Window" +msgstr "_Нов прозорец" + +#: ../src/dh-window.c:196 +msgid "New _Tab" +msgstr "Нов _таб" + +#: ../src/dh-window.c:208 ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "Пронајди следно" + +#: ../src/dh-window.c:210 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Пронајди претходно" + +#: ../src/dh-window.c:217 +msgid "Go to the previous page" +msgstr "Оди на претходната страна" + +#: ../src/dh-window.c:220 +msgid "Go to the next page" +msgstr "Оди на наредната страна" + +#: ../src/dh-window.c:223 +msgid "_Contents Tab" +msgstr "Јазиче со _содржини" + +#: ../src/dh-window.c:226 +msgid "_Search Tab" +msgstr "Јазиче за _пребарување" + +#. View menu +#: ../src/dh-window.c:230 +msgid "_Larger Text" +msgstr "_Поголем текст" + +#: ../src/dh-window.c:231 +msgid "Increase the text size" +msgstr "Зголеми ја големината на текстот" + +#: ../src/dh-window.c:233 +msgid "S_maller Text" +msgstr "П_омал текст" + +#: ../src/dh-window.c:234 +msgid "Decrease the text size" +msgstr "Намали ја големината на текстот" + +#: ../src/dh-window.c:236 +msgid "_Normal size" +msgstr "_Нормална големина" + +#: ../src/dh-window.c:237 +msgid "Use the normal text size" +msgstr "Користи нормална големина на текст" + +#: ../src/dh-window.c:529 +msgid "Search" +msgstr "Пребарувај" + +#: ../src/dh-window.c:787 +msgid "translator_credits" +msgstr "Арангел Ангов " + +#: ../src/dh-window.c:792 +msgid "A developer's help browser for GNOME 2" +msgstr "Пребарувач за помош на развивачот за GNOME 2" + +#: ../src/dh-window.c:1186 ../src/dh-window.c:1381 +msgid "Empty Page" +msgstr "Празна страница" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Пронајди:" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "Пронајди го претходното појавување на низата која се пребарува" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "Пронајди го следното појавување на низата која се пребарува" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "Разликувај мали-големи букви" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "Овозможи/оневозможи пребарување со разликување на мали-големи букви" + diff --git a/po/ml.gmo b/po/ml.gmo new file mode 100644 index 0000000..e30f4c8 Binary files /dev/null and b/po/ml.gmo differ diff --git a/po/ml.po b/po/ml.po new file mode 100644 index 0000000..256f649 --- /dev/null +++ b/po/ml.po @@ -0,0 +1,591 @@ +# translation of devhelp.HEAD.ml.po to Malayalam +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FSF-India , 2003. +# Ani Peter , 2007. +# Anish A , 2012, 2013. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.HEAD.ml\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2013-04-17 07:41+0000\n" +"PO-Revision-Date: 2013-04-26 22:51+0530\n" +"Last-Translator: Balasankar C \n" +"Language-Team: Swatantra Malayalam Computing\n" +"Language: ml\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Project-Style: gnome\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:162 ../src/dh-app.c:347 +#: ../src/dh-window.c:636 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "ഡവലപ്പറിനെ സഹായിക്കുന്ന പ്രോഗ്രാം" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ഡോക്യുമെന്‍റേഷന്‍ ബ്രൌസര്‍" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "പ്രധാന ജാലകം ഏറ്റവും കൂടുതല്‍ വലിപ്പത്തില്‍" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "പ്രധാനപ്പെട്ട ജാലകം വലുതായി ആരംഭിക്കണമോ എന്ന്." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "പ്രധാന ജാലകത്തിന്‍റെ വീതി" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "പ്രധാന ജാലകത്തിന്‍റെ വീതി." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "പ്രധാന ജാലകത്തിന്‍റെ ഉയരം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "പ്രധാന ജാലകത്തിന്‍റെ ഉയരം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "പ്രധാന ജാലകത്തിന്‍റെ X സ്ഥാനം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "പ്രധാന ജാലകത്തിന്‍റെ X സ്ഥാനം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "പ്രധാന ജാലകത്തിന്‍റെ Y സ്ഥാനം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "പ്രധാന ജാലകത്തിന്‍റെ Y സ്ഥാനം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "ഇന്‍ഡക്സിന്‍റേയും തിരച്ചില്‍ പാളിയുടേയും വീതി" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "ഇന്‍ഡക്സിന്‍റേയും തിരച്ചില്‍ പാളിയുടേയും വീതി." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "\"content\" അല്ലെങ്കില്‍ \"search\" ടാബ് തിരഞ്ഞെടുത്തിരിക്കുന്നു" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "ഏത് ടാബ് തിരഞ്ഞെടുത്തിരിക്കുന്നു, \"content\" അല്ലെങ്കില്‍ \"search\"." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "പുസ്തകങ്ങള്‍ പ്രവര്‍ത്തനരഹിതം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "ഉപയോക്താവ് പ്രവര്‍ത്തനരഹിതമാക്കിയ ബുക്കുകളുടെ പട്ടിക." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "ഭാഷ വെച്ച് തരംതിരിക്കുക" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "പുസ്തകങ്ങള്‍ ഭാഷയനുസരിച്ച് തരം തിരിക്കണോ എന്ന്" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Width of the assistant window" +msgstr "സഹായി ജാലകത്തിന്‍റെ വീതി" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "The width of the assistant window." +msgstr "സഹായി ജാലകത്തിന്‍റെ വീതി." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Height of assistant window" +msgstr "സഹായി ജാലകത്തിന്‍റെ ഉയരം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The height of the assistant window." +msgstr "സഹായി ജാലകത്തിന്‍റെ ഉയരം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "X position of assistant window" +msgstr "സഹായി ജാലകത്തിന്‍റെ X സ്ഥാനം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The X position of the assistant window." +msgstr "സഹായി ജാലകത്തിന്‍റെ X സ്ഥാനം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "Y position of assistant window" +msgstr "സഹായി ജാലകത്തിന്‍റെ Y സ്ഥാനം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The Y position of the assistant window." +msgstr "സഹായി ജാലകത്തിന്‍റെ Y സ്ഥാനം." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Use system fonts" +msgstr "സിസ്റ്റമിലുളള ലിപികള്‍ ഉപയോഗിക്കുക." + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "Use the system default fonts." +msgstr "സിസ്റ്റമില്‍ ഡീഫോള്‍ട്ടായുളള ലിപികള്‍ ഉപയോഗിക്കുക." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Font for text" +msgstr "ടെക്സ്റ്റിനുളള ലിപി" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Font for text with variable width." +msgstr "വിവിധ വീതിയുളള ടെക്സ്റ്റിനുളള ലിപി." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for fixed width text" +msgstr "സ്ഥിരമായ വീതിയുള്ള വാചകത്തിനുള്ള അക്ഷരസഞ്ചയം" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "സ്ഥിരമായ വീതിയുളള ടെക്സ്റ്റിനുളള ലിപി, കോഡ് ഉദാഹരണങ്ങള്‍ പോലെ." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp സപ്പോറ്‍ട്ട്" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "കഴ്സറിലുളള വാക്കിനായി F2 Devhelp ലഭ്യമാക്കുന്നു" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "എപിഐ വിവരണം കാണിക്കുക" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "കഴ്സറിലുളള വാക്കിന്റെ API വിവരണം കാണിക്കുക" + +#: ../src/devhelp.ui.h:1 +msgid "New window" +msgstr "പുതിയ ജാലകം" + +#: ../src/devhelp.ui.h:2 +msgid "Preferences" +msgstr "സവിശേഷതകള്‍" + +#: ../src/devhelp.ui.h:3 +msgid "About Devhelp" +msgstr "ഡെവ്ഹെല്‍പ്പിനെകുറിച്ച്" + +#: ../src/devhelp.ui.h:4 +msgid "Quit" +msgstr "പുറത്ത് കടക്കുക" + +#: ../src/devhelp.ui.h:5 +msgid "New _Tab" +msgstr "പുതിയ ടാബ് (_T)" + +#: ../src/devhelp.ui.h:6 +msgid "_Print" +msgstr "_അച്ചടിയ്ക്കുക" + +#: ../src/devhelp.ui.h:7 +msgid "_Find" +msgstr "_കണ്ടെത്തുക" + +#: ../src/devhelp.ui.h:8 +msgid "_Larger text" +msgstr "_വലിയ പദാവലി" + +#: ../src/devhelp.ui.h:9 +msgid "S_maller text" +msgstr "_ചെറിയ പദാവലി" + +#: ../src/devhelp.ui.h:10 +msgid "_Normal size" +msgstr "_സാധാരണ വലിപ്പം " + +#: ../src/devhelp.ui.h:11 +msgid "_Group by language" +msgstr "_ഭാഷ വെച്ച് തരംതിരിക്കുക" + +#: ../src/devhelp.ui.h:12 +msgid "Enabled" +msgstr "പ്രവര്‍ത്തന സജ്ജം" + +#: ../src/devhelp.ui.h:13 +msgid "Title" +msgstr "ശീര്‍ഷകം" + +#: ../src/devhelp.ui.h:14 +msgid "Book Shelf" +msgstr "പുസ്തക അറ" + +#: ../src/devhelp.ui.h:15 +msgid "_Use system fonts" +msgstr "സിസ്റ്റത്തിലുള്ള ലിപികള്‍ ഉപയോഗിക്കുക (_U)" + +#: ../src/devhelp.ui.h:16 +msgid "_Variable width: " +msgstr "മാറ്റുവാന്‍ സാധ്യമായ വീതി (_V):" + +#: ../src/devhelp.ui.h:17 +msgid "_Fixed width:" +msgstr "സ്ഥിരമായ വീതി (_F):" + +#: ../src/devhelp.ui.h:18 +msgid "Fonts" +msgstr "അക്ഷരസഞ്ചയം" + +#: ../src/dh-app.c:157 +msgid "translator_credits" +msgstr "" +"അനി പീറ്റര്‍\n" +"അനീഷ് എ" + +#: ../src/dh-app.c:164 +msgid "A developers' help browser for GNOME" +msgstr "GNOME -നുളള ഒരു ഡവലപ്പറിന്‍റെ സഹായി" + +#: ../src/dh-app.c:172 +msgid "DevHelp Website" +msgstr "Devhelp വെബ്സൈറ്റ്" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:119 +msgid "Devhelp — Assistant" +msgstr "Devhelp — സഹായി" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "പുസ്തകം:" + +#: ../src/dh-book.c:255 +#, c-format +msgid "Language: %s" +msgstr "ഭാഷ: %s" + +#: ../src/dh-book.c:256 +msgid "Language: Undefined" +msgstr "ഭാഷ: അറിയില്ല" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "പുസ്തകം" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "താള്‍" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "കീവേര്‍ഡ്" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "ഫംങ്ഷന്‍" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "മാക്രോ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "തരം" + +#: ../src/dh-main.c:43 +msgid "Opens a new Devhelp window" +msgstr "പുതിയ ഡെവ്‌ഹെല്‍പ്പ് ജാലകം തുറക്കുക" + +#: ../src/dh-main.c:48 +msgid "Search for a keyword" +msgstr "ഒരു കീവേര്‍ഡിനായി തിരയുക" + +#: ../src/dh-main.c:49 ../src/dh-main.c:54 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-main.c:53 +msgid "Search and display any hit in the assistant window" +msgstr "വിവരങ്ങള്‍ തിരഞ്ഞ് കണ്ടുപിടിച്ച് സഹായക ജാലകത്തില്‍ കാണിക്കുക" + +#: ../src/dh-main.c:58 +msgid "Display the version and exit" +msgstr "പതിപ്പ് ഏത് എന്ന് കാണിച്ച് പുറത്ത് കടക്കുക" + +#: ../src/dh-main.c:63 +msgid "Quit any running Devhelp" +msgstr "പ്രവര്‍ത്തനത്തിലുളള Devhelp-ല്‍ നിന്നും പുറത്ത് കടക്കുക" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "'%s' പ്രതീക്ഷിച്ചു ലഭ്യമായത് '%s' - %d-ആം വരിയില്‍, %d-ആം നിരയില്‍" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "namespace '%s' തെറ്റാണ്. ഇത് %d-ആം വരിയില്‍, %d-ആം നിരയില്‍ ലഭ്യമാണ്." + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"\"title\", \"name\", \"link\" എലമെന്‍റുകള്‍ എന്നിവ %d-ആം വരിയില്‍, %d-ആം നിരയില്‍ " +"ആവശ്യമുണ്ട്." + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"%d-ആം വരിയില്‍, %d-ആം നിരയില്‍, -നുളളില്‍ \"name\", \"link\" എലമെന്‍റുകള്‍ ആവശ്യമുണ്ട്" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"'%s'-നുളളില്‍ %d-ആം വരിയില്‍, %d-ആം നിരയില്‍, \"name\", \"link\" എലമെന്‍റുകള്‍ വേണം" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"%d-ആം വരിയില്‍, %d-ആം നിരയില്‍, -നുളളില്‍ \"name\", \"link\" എലമെന്‍റുകള്‍ വേണം" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' എന്ന പുസ്തകം അണ്‍കംപ്റസ്സ് ചെയ്യുവാന്‍ സാധ്യമായില്ല: %s" + +#. Setup the Current/All Files selector +#: ../src/dh-sidebar.c:478 +msgid "Current" +msgstr "നിലവിലുള്ളതു്" + +#: ../src/dh-sidebar.c:481 +msgid "All Books" +msgstr "എല്ലാ പുസ്തകങ്ങളും" + +#: ../src/dh-window.c:82 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:83 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:84 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:85 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:86 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:87 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:88 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:89 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:90 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:669 +msgid "Back" +msgstr "പുറകോട്ട്" + +#: ../src/dh-window.c:676 +msgid "Forward" +msgstr "മുന്നോട്ട്" + +#: ../src/dh-window.c:896 +msgid "Error opening the requested link." +msgstr "പറഞ്ഞ കണ്ണി തുറക്കുന്നതില്‍ പിഴവ്." + +#: ../src/dh-window.c:1175 ../src/dh-window.c:1349 +msgid "Empty Page" +msgstr "കാലിയായ പേജ്" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "കണ്ടുപിടിയ്ക്കുക:" + +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "മുമ്പുള്ളതു് കണ്ടുപിടിയ്ക്കുക" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "തിരച്ചില്‍ നടത്തുന്ന വാചകം ഇതിന് മുന്പ് ഏത് വരിയില്‍ ഉളളത് എന്ന് കണ്ടുപിടിക്കുക" + +#: ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "അടുത്തതു് കണ്ടുപിടിയ്ക്കുക" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "തിരച്ചില്‍ നടത്തുന്ന വാചകം ഇതിന് ശേഷം ഏത് വരിയില്‍ ഉളളത് എന്ന് കണ്ടുപിടിക്കുക" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "_കേസ് സെന്‍സിറ്റീവ്" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "കേസ് സെന്‍സിറ്റീവ് തിരച്ചില്‍ ടൊഗിള്‍ ചെയ്യുക" + +#~ msgid "_Window" +#~ msgstr "_ജാലകം" + +#~ msgid "_Close" +#~ msgstr "_അടയ്ക്കുക" + +#~ msgid "_Edit" +#~ msgstr "മാറ്റുക (_E)" + +#~ msgid "_Copy" +#~ msgstr "_പകര്‍ത്തുക" + +#~ msgid "Find _Next" +#~ msgstr "_അടുത്തത് കണ്ടുപിടിക്കുക" + +#~ msgid "Find _Previous" +#~ msgstr "_മുമ്പുളളത് കണ്ടുപിടിക്കുക" + +#~ msgid "_View" +#~ msgstr "_കാഴ്ച" + +#~ msgid "Fullscreen" +#~ msgstr "മുഴുവന്‍ തിരശ്ശീലയും" + +#~ msgid "_Go" +#~ msgstr "പോകുക (_G)" + +#~ msgid "_Search Tab" +#~ msgstr "ടാബ് _തെരയുക" + +#~ msgid "_Contents Tab" +#~ msgstr "_ഉള്ളടക്കം ടാബ്" + +#~ msgid "Go to the previous page" +#~ msgstr "മുമ്പുള്ള താളിലേയ്ക്കു് പോകുക" + +#~ msgid "Go to the next page" +#~ msgstr "തൊട്ടടുത്ത താളിലേയ്ക്കു് പോകുക" + +#~ msgid "Decrease the text size" +#~ msgstr "ടെക്സ്റ്റിന്‍റെ വലിപ്പം കുറയ്ക്കുക" + +#~ msgid "Increase the text size" +#~ msgstr "വാചകത്തിന്‍റെ വലിപ്പം കൂട്ടുക" + +#~ msgid "Search in:" +#~ msgstr "ഇതില്‍ തിരയുക:" + +#~ msgid "Contents" +#~ msgstr "ഉള്ളടക്കം" + +#~ msgid "Search" +#~ msgstr "തിരയുക" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "%d-ആം വരിയില്‍, %d-ആം നിരയില്‍, -നുളളില്‍ പേരും ലിങ്ക് എലമെന്‍റുകളും ആവശ്യമുണ്ട്." + +#~ msgid "Could not create book parser" +#~ msgstr "ബുക്ക് പാഴ്സറ്‍ ഉണ്ടാക്കുവാന്‍ സാധ്യമായില്ല" + +#~ msgid "Could not create markup parser" +#~ msgstr "മാറ്‍ക്കപ്പ് പാഴ്സറ്‍ ഉണ്ടാക്കുവാന്‍ സാധ്യമായില്ല" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp zlib പിന്തുണയോടെയല്ല ഉണ്ടാക്കിയിരിക്കുന്നത്" + +#~ msgid "_File" +#~ msgstr "ഫയല്‍ (_F)" + +#~ msgid "_Help" +#~ msgstr "സഹായം (_H)" + +#~ msgid "Browse Contents" +#~ msgstr "ഉള്ളടക്കം തിരയുക" + +#~ msgid "Show advanced search options" +#~ msgstr "പുരോഗമിച്ച തിരച്ചില്‍ ഉപാധികള്‍" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "പുരോഗമിച്ച തിരച്ചില്‍ ഉപാധികള്‍ കാണിച്ചിട്ടുണ്ടോ എന്ന്." + +#~ msgid "Fonts" +#~ msgstr "ലിപികള്‍" + +#~ msgid "Searching" +#~ msgstr "തിരയുന്നു" + +#~ msgid "_Show advanced search options" +#~ msgstr "പുരോഗമിച്ച തിരച്ചില്‍ ഉപാധികള്‍ കാണിക്കുക (_S)" diff --git a/po/ms.gmo b/po/ms.gmo new file mode 100644 index 0000000..fbc6c0d Binary files /dev/null and b/po/ms.gmo differ diff --git a/po/ms.po b/po/ms.po new file mode 100644 index 0000000..1d1fc53 --- /dev/null +++ b/po/ms.po @@ -0,0 +1,237 @@ +# Gedit Bahasa Melayu (ms) +# Jika takut risiko, Jangan bicara tentang Perjuangan +# Hasbullah Bin Pit (sebol) , 2002 +# +msgid "" +msgstr "" +"Project-Id-Version: besar\n" +"POT-Creation-Date: 2004-03-16 23:25+0100\n" +"PO-Revision-Date: 2003-07-24 00:12+0800\n" +"Last-Translator: Hasbullah Bin Pit \n" +"Language-Team: Projek Gabai \n" +"Language: ms\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: devhelp.desktop.in.h:1 +msgid "Developer's Help program" +msgstr "Program Bantuan Pembangun" + +#: devhelp.desktop.in.h:2 ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "DevHelp" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "Buku DevHelp" + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "" + +#: devhelp.schemas.in.h:7 +msgid "The X position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:8 +msgid "The Y position of the main window." +msgstr "" + +#: devhelp.schemas.in.h:9 +msgid "The height of the main window." +msgstr "" + +#: devhelp.schemas.in.h:10 +msgid "The location of the paned separator." +msgstr "" + +#: devhelp.schemas.in.h:11 +msgid "The width of the main window." +msgstr "" + +#: devhelp.schemas.in.h:12 +msgid "Use system fonts" +msgstr "" + +#: devhelp.schemas.in.h:13 +msgid "Use the system default fonts." +msgstr "" + +#: devhelp.schemas.in.h:14 +msgid "Width of the main window" +msgstr "" + +#: devhelp.schemas.in.h:15 +msgid "X position of main window" +msgstr "" + +#: devhelp.schemas.in.h:16 +msgid "Y position of main window" +msgstr "" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "Nyatakan saiz dan lokasi bagi tetingkap" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "WIDTHxHEIGHT+XOFF+YOFF" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "Cari satu fungsi" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "Hentikan semua Devhelp yg terlaksana" + +#: src/dh-parser.c:104 src/dh-parser.c:181 src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "Dijangka '%s' dapat '%s' pada baris %d, kolum %d" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "ruangnama tak sah '%s' pada baris %d, kolum %d" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "unsur tajuk, nama, dan pautan diperlukan pada baris %d, kolum %d" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "" +"unsur nama dan pautan diperlukan di dalam pada baris %d, kolum %d" + +#: src/dh-parser.c:250 +#, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "" +"unsur nama dan pautan diperlukan di dalam pada baris %d, kolum %d" + +#: src/dh-parser.c:337 src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "Tak dapat mencipta penghantar buku" + +#: src/dh-parser.c:347 src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "Tak dapat mencipta penghantar markup" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Tak dapat nyahmampat buku '%s': %s" + +#: src/dh-search.c:417 +msgid "_Search:" +msgstr "_Cari:" + +# kadang2 'Saat' +#: src/dh-search.c:461 +msgid "Section" +msgstr "Seksyen" + +#: src/dh-window.c:111 +msgid "_File" +msgstr "_Fail" + +#: src/dh-window.c:112 +msgid "_Edit" +msgstr "" + +#: src/dh-window.c:113 ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "_Pergi" + +#: src/dh-window.c:114 +msgid "_Help" +msgstr "_Bantuan" + +#: src/dh-window.c:292 +#, c-format +msgid "Cannot set UI: %s" +msgstr "" + +#: src/dh-window.c:352 ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "Kandungan" + +#: src/dh-window.c:363 +msgid "Search" +msgstr "Cari" + +#: src/dh-window.c:446 +msgid "A developer's help browser for GNOME 2" +msgstr "Pelungsur bantuan pembangun untuk GNOME 2" + +#: src/dh-window.c:462 +msgid "Devhelp project page" +msgstr "Halaman projek devhelp" + +#: src/dh-window.c:466 +msgid "Bug report Devhelp" +msgstr "Lapor pepijat Devhelp" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr "" + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "" + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "" + +#~ msgid "" +#~ "Select a subject in the contents to the left or switch to the search tab " +#~ "to find what you are looking for." +#~ msgstr "" +#~ "Pilih tajuk pada kandungan sebelah kiri atau bertukar ke tab carian untuk " +#~ "mencari apa yang anda ingin cari." diff --git a/po/nb.gmo b/po/nb.gmo new file mode 100644 index 0000000..75d55ba Binary files /dev/null and b/po/nb.gmo differ diff --git a/po/nb.po b/po/nb.po new file mode 100644 index 0000000..63b9a8e --- /dev/null +++ b/po/nb.po @@ -0,0 +1,546 @@ +# Norwegian bokmål translation of devhelp. +# Copyright (C) 2001 Free Software Foundation, Inc. +# +# Kjartan Maraas , 2001-2017. +# Torstein Adolf Winterseth , 2010. +msgid "" +msgstr "" +"Project-Id-Version: devhelp 3.26.x\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-07-27 13:58+0000\n" +"PO-Revision-Date: 2017-11-08 20:12+0100\n" +"Last-Translator: Kjartan Maraas \n" +"Language-Team: Norwegian bokmål \n" +"Language: nb\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Lokalize 1.1\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:807 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Hjelpleser for utviklere" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp er et program for å lese API-dokumentasjon. Den gir deg en enkel " +"måte å navigere biblioteker, søke etter funksjoner, strukturer eller " +"makroer. Grensesnittet har faner og du kan skrive ut resultatene." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp integrerer med andre programmer som Glade, Anjuta eller Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Dokumentasjonsvisning" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentasjon;informasjon;håndbok;utvikler;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Maksimert tilstand for hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Om hovedvinduet skal startes maksimert." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Bredde på hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Bredde på hovedvinduet." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Høyde for hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Høyde på hovedvinduet." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Horisontal posisjon for hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "Horisontal posisjon for hovedvinduet." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Vertikal posisjon for hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "Vertikal posisjon for hovedvinduet." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Bredde på indeks og hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "Bredde på indeks og søkevinduet." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Deaktiverte bøker" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Liste med bøker som er deaktivert av bruker." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Grupper etter språk" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "Om bøkene skal grupperes etter språk i brukergrensesnittet" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Hvorvidt assistentvinduet skal startes maksimert." + +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Hvorvidt assistentvinduet skal startes maksimert." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Bredde på assistentvinduet" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "Bredde på assistentvinduet." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Høyde på veiviservinduet" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Høyde på assistentvinduet." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "X-posisjon for assistentvinduet" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "X-posisjon for veiviservinduet." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Vertikal posisjon for hovedvinduet" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "Y-posisjon for veiviservinduet." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Bruk systemets skrifter" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Bruk systemets forvalgte skrifter." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Skrift for tekst" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Skrift for tekst med variabel bredde." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Skrift for tekst med fast størrelse" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "Skrift for tekst med fast bredde som f.eks kodeeksempler." + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Støtte for Devhelp" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Vis API-dokumentasjon" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Nytt _vindu" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "_Brukervalg" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Tastatursnarveier" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_Om" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "A_vslutt" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Generelt" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokuser globalt søk" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Finn på denne siden" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Åpne et nytt vindu" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Åpne en ny fane" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Slå av/på synlighet for sidepanelet" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Gå tilbake" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Gå fremover" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Skriv ut" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Lukk aktivt vindu" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Lukk alle vinduer" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zoom inn" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zoom ut" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Nullstill zoom" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "GNOME's hjelpleser for utviklere" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Kjartan Maraas \n" +"Torstein Adolf Winterseth " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Nettsted for Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Åpner et nytt Devhelp-vindu" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Søk etter en nøkkelord" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "NØKKELORD" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Søk etter og vis alle treff i assistentvinduet" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Vis versjon og avslutt" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Avslutt Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp - Assistent" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Bok:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Språk: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Språk: Udefinert" + +#: src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "_Slå sammen alle" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Bok" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Side" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Nøkkelord" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Funksjon" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Egenskap" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Brukervalg" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupper etter språk" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Slått på" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Tittel" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Bokhylle" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "Br_uk systemets skrifter" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Variabel bredde: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Fast bredde:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Skrifter" + +#: src/dh-window.c:75 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:76 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:77 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:78 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:79 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:80 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:81 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:82 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:83 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1029 +msgid "Error opening the requested link." +msgstr "Feil ved åpning av forespurt lenke." + +#: src/dh-window.c:1346 +msgid "_Close" +msgstr "_Lukk" + +#: src/dh-window.c:1364 src/dh-window.c:1545 +msgid "Empty Page" +msgstr "Tom side" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Side_panel" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "S_kriv ut" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Finn" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "S_tørre tekst" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "_Mindre tekst" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "_Normal størrelse" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Sidepanel" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "_Om Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Tilbake" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Fremover" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Ny fane" diff --git a/po/ne.gmo b/po/ne.gmo new file mode 100644 index 0000000..2076144 Binary files /dev/null and b/po/ne.gmo differ diff --git a/po/ne.po b/po/ne.po new file mode 100644 index 0000000..8c2bbe0 --- /dev/null +++ b/po/ne.po @@ -0,0 +1,687 @@ +# translation of devhelp.HEAD.ne.po to Nepali +# This file is distributed under the same license as the PACKAGE package. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER. +# +# Pawan Chitrakar , 2005. +# Kapil Timilsina , 2005. +# Jaydeep Bhusal , 2005. +# Mahesh subedi , 2006. +# Narayan Kumar Magar , 2007. +# Nabin Gautam , 2008. +msgid "" +msgstr "" +"Project-Id-Version: Gnome Nepali Translation Project\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-06-03 13:21+0000\n" +"PO-Revision-Date: 2017-08-21 16:11+0545\n" +"Last-Translator: Pawan Chitrakar \n" +"Language-Team: Nepali Translation Team \n" +"Language: ne\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.0.3\n" +"Plural-Forms: nplurals=2; plural=n !=1;\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:807 +msgid "Devhelp" +msgstr "विकासकर्ताको मद्दत" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "विकाकर्ताको मद्दत कार्यक्रम" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a tabbed " +"interface and allows to print results." +msgstr "" + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "मिसिलिकरण ब्राउजर" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "मुख्य सञ्झ्यालको अधिकतम स्थिति" + +#: data/org.gnome.devhelp.gschema.xml:19 +#, fuzzy +#| msgid "Whether the main window should start maximized or not." +msgid "Whether the main window should start maximized." +msgstr "अधिकतम स्थितिमा मुख्य सञ्झ्याल खोल्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "मुख्य सञ्झ्यालको चौडाइ" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "मुख्य सञ्झ्यालको चौडाइ ।" + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "मुख्य सञ्झ्यालको उचाइ" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "मुख्य सञ्झ्यालको उचाइ ।" + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "मुख्य सञ्झ्यालको X स्थान" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "मुख्य सञ्झ्यालको X स्थान ।" + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "मुख्य सञ्झ्यालको Y स्थान" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "मुख्य सञ्झ्यालको Y स्थान" + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "अनुक्रमणिका र खोजी फलकको चौडाइ" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "अनुक्रमणिका वा खोजी फलकको चौडाइ ।" + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "किताबहरू असक्षम गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:53 +#, fuzzy +msgid "List of books disabled by the user." +msgstr "किताबहरू असक्षम गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "भाषा द्धारा समूह" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "" + +#: data/org.gnome.devhelp.gschema.xml:67 +#, fuzzy +#| msgid "Whether the main window should start maximized or not." +msgid "Whether the assistant window should be maximized" +msgstr "अधिकतम स्थितिमा मुख्य सञ्झ्याल खोल्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:68 +#, fuzzy +#| msgid "Whether the main window should start maximized or not." +msgid "Whether the assistant window should be maximized." +msgstr "अधिकतम स्थितिमा मुख्य सञ्झ्याल खोल्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:72 +#, fuzzy +#| msgid "Width of the main window" +msgid "Width of the assistant window" +msgstr "सञ्झ्यालको चौडाई" + +#: data/org.gnome.devhelp.gschema.xml:73 +#, fuzzy +#| msgid "The width of the main window." +msgid "The width of the assistant window." +msgstr "सञ्झ्यालको चौडाई" + +#: data/org.gnome.devhelp.gschema.xml:77 +#, fuzzy +#| msgid "Height of main window" +msgid "Height of assistant window" +msgstr "सञ्झ्यालको उचाइलाई उचाइ मानमा परिवर्तन गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:78 +#, fuzzy +#| msgid "The height of the main window." +msgid "The height of the assistant window." +msgstr "सञ्झ्यालको उचाइलाई उचाइ मानमा परिवर्तन गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:82 +#, fuzzy +#| msgid "X position of main window" +msgid "X position of assistant window" +msgstr "मुख्य सञ्झ्यालको X स्थान ।" + +#: data/org.gnome.devhelp.gschema.xml:83 +#, fuzzy +#| msgid "The X position of the main window." +msgid "The X position of the assistant window." +msgstr "मुख्य सञ्झ्यालको X स्थान ।" + +#: data/org.gnome.devhelp.gschema.xml:87 +#, fuzzy +#| msgid "Y position of main window" +msgid "Y position of assistant window" +msgstr "विनडोजको स्थान (x र y)" + +#: data/org.gnome.devhelp.gschema.xml:88 +#, fuzzy +#| msgid "The Y position of the main window." +msgid "The Y position of the assistant window." +msgstr "विनडोजको स्थान (x र y)" + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "प्रणाली फन्ट प्रयोग गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "प्रणालीको पूर्वनिर्धारित फन्ट प्रयोग गर्नुहोस् ।" + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "पाठका लागि फन्ट" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "अनिश्चित चौडाइ भएको पाठका लागि फन्ट" + +#: data/org.gnome.devhelp.gschema.xml:104 +#, fuzzy +#| msgid "Font for fixed text" +msgid "Font for fixed width text" +msgstr "HTML स्थिर चौडाइ फन्ट चयन गर्नुहोस्" + +#: data/org.gnome.devhelp.gschema.xml:105 +#, fuzzy +#| msgid "Font for text with fixed width." +msgid "Font for text with fixed width, such as code examples." +msgstr "निश्चित चौडाइ भएको पाठका लागि फन्ट" + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "विकासकर्ता मद्दत समर्थन" + +#: misc/gedit-plugin/devhelp.py:42 +#, fuzzy +#| msgid "Documentation Browser" +msgid "Show API Documentation" +msgstr "अभिलेखीकरण" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "नयाँ सञ्झ्याल" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "_प्राथमिकताहरू" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "कुञ्जीपाटी सटकर्ट" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_बारेमा" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "अन्त्य गर्नुहोस् (_Q)" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "सामान्य" + +#: src/help-overlay.ui:19 +#, fuzzy +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "विश्वव्यापी खोज" + +#: src/help-overlay.ui:26 +#, fuzzy +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "हालको पृष्ठ" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "नयाँ सञ्झ्याल खोल्नुहोस्" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "नयाँ टयाब खोल्नुहोस्" + +#: src/help-overlay.ui:47 +#, fuzzy +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "छेउ प्यानल" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "पछिडि जानुहोस्" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "अगाडि जानुहोस्" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "मुद्रण गर्नुहोस्" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "हालको सञ्झ्याल बन्द गर्नुहोस्" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "सबै सञझ्याल बन्द गर्नुहोस्" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "जुम " + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "भित्र जुम गर्नुहोस्" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "जुम घटाउनुहोस््" + +#: src/help-overlay.ui:109 +#, fuzzy +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "जूम बढाउनुहोस्" + +#: src/dh-app.c:234 +#, fuzzy +#| msgid "A developer's help browser for GNOME 2" +msgid "A developers’ help browser for GNOME" +msgstr "जिनोमका लागि एउटा छवि दर्शक र ब्राउजर" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "श्यामकृष्ण बल" + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "डेवहेल्प वेबसाइट" + +#: src/dh-app.c:462 +#, fuzzy +msgid "Opens a new Devhelp window" +msgstr "एपमा नयाँ विन्डो खोल्छ ।" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "शब्दकुञ्जी खोज" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "शब्दकुञ्जी" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "संस्करण प्रदर्शन गर्नुहोस् र निस्कनुहोस्" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "कुनै पनि चालु विकासकर्ता मद्दतलाई अन्त्य गर्नुहोस्" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "डेवहेल्प सहयोगी" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "पूस्तक:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "भाषा: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "भाषा : अपरिभाषित" + +#: src/dh-book-tree.c:644 +#, fuzzy +msgid "_Collapse All" +msgstr "सबै थ्रेडहरू संक्षिप्त गर्नुहोस्" + +#. i18n: a documentation book +#: src/dh-link.c:388 +msgid "Book" +msgstr "पूस्तिका" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:391 +msgid "Page" +msgstr "पन्ना" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:395 +msgid "Keyword" +msgstr "शब्दकुञ्जी" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:400 +msgid "Function" +msgstr "Function" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:405 +#, fuzzy +msgid "Struct" +msgstr "वनावटको सट्टमा म्याक्रो प्रयोग गर्नुहोस्" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:410 +msgid "Macro" +msgstr "म्याक्रो" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:415 +#, fuzzy +msgid "Enum" +msgstr "विशेषता %s का लागि अज्ञात इनुम मान '%s'" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:420 +msgid "Type" +msgstr "वर्ग" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:425 +msgid "Property" +msgstr "विशेषता" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Signal" +msgstr "सङ्केत" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "प्राथमिकता" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "भाषा द्धारा समूह" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "सक्षम पारिएको" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "शीर्षक:" + +#: src/dh-preferences.ui:151 +#, fuzzy +msgid "Book Shelf" +msgstr "पूस्तिका छैन" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "प्रणाली फन्ट प्रयोग गर्नुहोस्" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "चल चौडाइ: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "स्थिर चौडाइ:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "फन्टहरू" + +#: src/dh-window.c:75 +msgid "50%" +msgstr "५०%" + +#: src/dh-window.c:76 +msgid "75%" +msgstr "७५%" + +#: src/dh-window.c:77 +msgid "100%" +msgstr "१००%" + +#: src/dh-window.c:78 +msgid "125%" +msgstr "१२५%" + +#: src/dh-window.c:79 +msgid "150%" +msgstr "१५०%" + +#: src/dh-window.c:80 +msgid "175%" +msgstr "१७५%" + +#: src/dh-window.c:81 +msgid "200%" +msgstr "२००%" + +#: src/dh-window.c:82 +msgid "300%" +msgstr "३००%" + +#: src/dh-window.c:83 +msgid "400%" +msgstr "४००%" + +#: src/dh-window.c:1029 +#, fuzzy +msgid "Error opening the requested link." +msgstr "अनुरोध गरिएको कार्य परित्याग गरियो: प्रक्रियामा त्रुटि" + +#: src/dh-window.c:1331 +msgid "_Close" +msgstr "_Close" + +#: src/dh-window.c:1349 src/dh-window.c:1530 +msgid "Empty Page" +msgstr "खाली पृष्ठ" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "छेउ प्यानल" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "प्रिन्ट गर्नुहोस" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Find" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "अझ ठूलो पाठ" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +#, fuzzy +msgid "S_maller Text" +msgstr "%s मा हस्ताक्षर UTF-8 पाठ होइन।" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "साधारण साइज" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "छेउ प्यानल" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "डेवहेल्प बारेमा" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "पछाडि" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "पठाउनुहोस्" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "नयाँ ट्याब" + +#~ msgid "Selected tab, \"content\" or \"search\"" +#~ msgstr "चयन गरिएको ट्याब, \"विषय\" वा \"खोजी\"" + +#~ msgid "Show advanced search options" +#~ msgstr "उन्नत खोजी विकल्प देखाउनुहोस्" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "उन्नत खोजी विकल्प देखाइने छन् वा छैनन् ।" + +#~ msgid "Which of the tabs that is selected, \"content\" or \"search\"." +#~ msgstr "कुन ट्याब चयन गरियो, \"विषय\" वा \"खोजी\"" + +#~ msgid "Fonts" +#~ msgstr "फन्ट" + +#~ msgid "Searching" +#~ msgstr "खोजी" + +#~ msgid "Contents" +#~ msgstr "विषय-सूची" + +#~ msgid "_Go" +#~ msgstr "जानुहोस्" + +#~ msgid "_Show advanced search options" +#~ msgstr "उन्नत खोजी विकल्प देखाउनुहोस्" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "कर्सर रहेको शब्दका लागि F2 ले विकासकर्ता मद्दत ल्याउने बनाउँदछ" + +#~ msgid "Focus the devhelp window with the search field active" +#~ msgstr "खोजी फिल्ड सक्रियतासँग डेभहेल्प सञ्झ्याल फोकस गर्दछ" + +#~ msgid "Expected '%s' got '%s' at line %d, column %d" +#~ msgstr "अपेक्षित '%s' प्राप्त '%s' लाइन %d, स्तम्भ %d मा" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "अवैध नेमस्पेस '%s' रेखा %d, स्तम्भ %d मा" + +#~ msgid "title, name, and link elements are required at line %d, column %d" +#~ msgstr "शीर्षक, नाम, र लिङ्क तत्वहरू रेखा %d, स्तम्भ %d मा आवश्यक हुन्छन्" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %d" +#~ msgstr " रेखा %d, %d स्तम्भमा नाम र लिङ्क तत्वहरू आवश्यक हुन्छन्" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %d" +#~ msgstr " %d लाइनमा, %d स्तम्भमा नाम र लिङ्क तत्वहरू आवश्यक हुन्छन्" + +#~ msgid "Could not create book parser" +#~ msgstr "पुस्तक पद वर्णक सिर्जना गर्न सकेन" + +#~ msgid "Could not create markup parser" +#~ msgstr "मार्कअप पद वर्णक सिर्जना गर्न सकेन" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "पुस्तक '%s' को सङ्कुचन हटाउन सकिँदैन: %s" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "विकासकर्ता मद्दत ग्लिब समर्थनसँग निर्माण गरिएको छैन" + +#~ msgid "_File" +#~ msgstr "फाइल" + +#~ msgid "_Edit" +#~ msgstr "सम्पादन" + +#~ msgid "_Help" +#~ msgstr "मद्दत" + +#~ msgid "Find Next" +#~ msgstr "पछिल्लो फेला पार्नुहोस्" + +#~ msgid "Find Previous" +#~ msgstr "अघिल्लो फेला पार्नुहोस्" + +#~ msgid "_Contents Tab" +#~ msgstr "सामाग्री ट्याब" + +#~ msgid "_Search Tab" +#~ msgstr "खोजी ट्याब" + +#~ msgid "Search" +#~ msgstr "खोजी गर्नुहोस्" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "खोजी स्ट्रिङको अघिल्लो घटना फेला पार्नुहोस्" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "खोजी स्ट्रिङको पछिल्लो घटना फेला पार्नुहोस्" + +#~ msgid "Case Sensitive" +#~ msgstr "केस संवेदनशिलता" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "केस संवेदनशिल खोजी टगल गर्नुहोस्" diff --git a/po/nl.gmo b/po/nl.gmo new file mode 100644 index 0000000..a9f8375 Binary files /dev/null and b/po/nl.gmo differ diff --git a/po/nl.po b/po/nl.po new file mode 100644 index 0000000..eb3efe0 --- /dev/null +++ b/po/nl.po @@ -0,0 +1,734 @@ +# Dutch translation for devhelp +# +# This file is distributed under the same license as the devhelp package. +# +# Vincent van Adrighem , 2003 +# Daniel van Eeden , 2004 +# Taco Witte , 2004, 2005 +# Wouter Bolsterlee , 2006–2012 +# Justin van Steijn , 2016, 2017. +# Nathan Follens , 2017 +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-12-21 21:47+0000\n" +"PO-Revision-Date: 2017-12-24 08:59+0100\n" +"Last-Translator: Justin van Steijn \n" +"Language-Team: Dutch \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:81 src/dh-app.c:407 +#: src/dh-window.c:736 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:83 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Een ontwikkelhulpmiddel voor het bladeren en zoeken door API-documentatie." + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp is een ontwikkelhulpmiddel voor het bladeren en zoeken door API-" +"documentatie. U kunt op een gemakkelijke manier door bibliotheken bladeren, " +"en zoeken per functie, struct of macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"De documentatie moet lokaal worden geïnstalleerd, dus om Devhelp te " +"gebruiken is geen internetverbinding nodig." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp werkt standaard met GTK-Doc, dus de bibliotheken van GTK+ en Gnome " +"worden goed ondersteund. Andere ontwikkelplatforms kunnen echter ook " +"ondersteund worden, mits de API-documentatie beschikbaar is in HTML en een *." +"devhelp2-indexbestand is gegenereerd." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp integreert met andere toepassingen zoals Glade, Builder en Anjuta. " +"Plug-ins zijn beschikbaar voor verschillende teksteditors (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "API-documentatiebrowser" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentation;information;manual;developer;documentatie;informatie;" +"handleiding;ontwikkeling;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Gemaximaliseerde status van hoofdvenster" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Of het hoofdvenster gemaximaliseerd moet starten." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Breedte van het hoofdvenster" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "De breedte van het hoofdvenster." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Hoogte van hoofdvenster" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "De hoogte van het hoofdvenster." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Breedte van het inhoud- en zoekvenster" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "De breedte van het inhoud- en zoekvenster." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Boeken uitgeschakeld" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Boekenlijst is uitgeschakeld door de gebruiker." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Groeperen op taal" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Of boeken per taal gegroepeerd moeten worden in de interface" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Breedte van het hulpvenster" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "De breedte van het hulpvenster." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Hoogte van hulpvenster" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "De hoogte van het hulpvenster." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Systeemlettertypen gebruiken" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "De systeemlettertypen gebruiken." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Lettertype voor tekst" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Lettertype voor tekst met variabele tekenbreedte." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Lettertype voor vaste tekenbreedte" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Lettertype voor tekst met een vaste tekenbreedte, zoals codevoorbeelden." + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp-ondersteuning" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API-documentatie tonen" + +#: src/dh-app.c:85 +msgid "translator-credits" +msgstr "" +"Wouter Bolsterlee\n" +"Taco Witte\n" +"Justin van Steijn\n" +"Nathan Follens\n" +"\n" +"Meer info over Gnome-NL http://nl.gnome.org" + +#: src/dh-app.c:87 +msgid "Devhelp Website" +msgstr "Devhelp-website" + +#: src/dh-app.c:311 +msgid "Opens a new Devhelp window" +msgstr "Nieuw Devhelp-venster openen" + +#: src/dh-app.c:316 +msgid "Search for a keyword" +msgstr "Naar een sleutelwoord zoeken" + +#: src/dh-app.c:317 src/dh-app.c:322 +msgid "KEYWORD" +msgstr "ZOEKWOORD" + +#: src/dh-app.c:321 +msgid "Search and display any hit in the assistant window" +msgstr "Zoeken naar resultaten en deze weergeven in het hulpvenster" + +#: src/dh-app.c:326 +msgid "Display the version and exit" +msgstr "Versie tonen en afsluiten" + +#: src/dh-app.c:331 +msgid "Quit any running Devhelp" +msgstr "Alle actieve Devhelp-processen afsluiten" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Hulpvenster" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Boek:" + +#: src/dh-book.c:343 +#, c-format +msgid "Language: %s" +msgstr "Taal: %s" + +#: src/dh-book.c:344 +msgid "Language: Undefined" +msgstr "Taal: onbekend" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Alles in_klappen" + +#. i18n: a documentation book +#: src/dh-link.c:559 +msgid "Book" +msgstr "Boek" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:563 +msgid "Page" +msgstr "Pagina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:568 +msgid "Keyword" +msgstr "Sleutelwoord" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:574 +msgid "Function" +msgstr "Functie" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:580 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:586 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:592 +msgid "Enum" +msgstr "Enumeratie" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:598 +msgid "Type" +msgstr "Type" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:604 +msgid "Property" +msgstr "Eigenschap" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:610 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Voorkeuren" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Groeperen op taal" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Ingeschakeld" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titel" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Boekenplank" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Systeemlettertypen gebruiken" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Variabele breedte: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Vaste breedte:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Lettertypen" + +#: src/dh-window.c:63 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:64 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:65 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:66 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:67 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:68 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:69 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:70 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:71 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:960 +msgid "Error opening the requested link." +msgstr "Fout bij het openen van de opgevraagde verwijzing." + +#: src/dh-window.c:1275 +msgid "_Close" +msgstr "Sl_uiten" + +#: src/dh-window.c:1293 src/dh-window.c:1474 +msgid "Empty Page" +msgstr "Lege pagina" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Zij_paneel" + +#: src/dh-window.ui:14 src/dh-window.ui:53 +msgid "_Print" +msgstr "Af_drukken" + +#: src/dh-window.ui:18 src/dh-window.ui:57 +msgid "_Find" +msgstr "_Zoeken" + +#: src/dh-window.ui:24 src/dh-window.ui:63 +msgid "_Larger Text" +msgstr "_Grotere tekst" + +#: src/dh-window.ui:28 src/dh-window.ui:67 +msgid "S_maller Text" +msgstr "_Kleinere tekst" + +#: src/dh-window.ui:32 src/dh-window.ui:71 +msgid "_Normal Size" +msgstr "_Normale grootte" + +#: src/dh-window.ui:40 src/menus.ui:30 +msgid "New _Window" +msgstr "Nieuw _venster" + +#: src/dh-window.ui:46 +msgid "_Side Panel" +msgstr "_Zijpaneel" + +#: src/dh-window.ui:77 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Voorkeuren" + +#: src/dh-window.ui:83 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Sneltoetsen" + +#: src/dh-window.ui:87 +msgid "_About Devhelp" +msgstr "_Over Devhelp" + +#: src/dh-window.ui:91 src/menus.ui:50 +msgid "_Quit" +msgstr "_Afsluiten" + +#: src/dh-window.ui:120 +msgid "Back" +msgstr "Terug" + +#: src/dh-window.ui:139 +msgid "Forward" +msgstr "Volgende" + +#: src/dh-window.ui:186 +msgid "New Tab" +msgstr "Nieuw tabblad" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Algemeen" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Overal zoeken" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "In huidige pagina zoeken" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Nieuw venster openen" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Nieuw tabblad openen" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Zijpaneel in-/uitschakelen" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Vorige" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Volgende" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Afdrukken" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Het huidige venster sluiten" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Alle vensters sluiten" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoomen" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Inzoomen" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Uitzoomen" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Zoomniveau herstellen" + +#: src/menus.ui:46 +msgid "_About" +msgstr "In_fo" + +#~ msgid "Developer’s Help program" +#~ msgstr "Hulpprogramma voor ontwikkelaars" + +#~ msgid "X position of main window" +#~ msgstr "X-positie van hoofdvenster" + +#~ msgid "The X position of the main window." +#~ msgstr "De X-positie van het hoofdvenster." + +#~ msgid "Y position of main window" +#~ msgstr "Y-positie van hoofdvenster" + +#~ msgid "The Y position of the main window." +#~ msgstr "De Y-positie van het hoofdvenster." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Of het assistentvenster gemaximaliseerd moet zijn" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Of het assistentvenster gemaximaliseerd moet zijn." + +#~ msgid "X position of assistant window" +#~ msgstr "X-positie van hulpvenster" + +#~ msgid "The X position of the assistant window." +#~ msgstr "De X-positie van het hulpvenster." + +#~ msgid "Y position of assistant window" +#~ msgstr "Y-positie van hulpvenster" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "De Y-positie van het hulpvenster." + +# Vrij vertaald (Wouter Bolsterlee) +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Hulpbrowser voor ontwikkelaars" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Geselecteerde tabblad: ‘content’ of ‘search’" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Welk tabblad geselecteerd is: ‘content’ of ‘search’." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Verwacht: ‘%s’, gekregen: ‘%s’ op regel %d, kolom %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Ongeldige context '%s' op regel %d, kolom %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "De elementen ‘title’, ‘name’ en ‘link’ zijn verplicht op regel %d, kolom " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "De elementen ‘name’ en ‘link’ zijn verplicht in op regel %d, kolom " +#~ "%d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "De elementen ‘name’ en ‘link’ zijn verplicht in ‘%s’ op regel %d, kolom %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Het element ‘type’ is verplicht in op regel %d, kolom %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Kan boek '%s' niet uitpakken: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Zijpaneel" + +#~ msgid "_Window" +#~ msgstr "_Venster" + +#~ msgid "_Edit" +#~ msgstr "Be_werken" + +#~ msgid "_Copy" +#~ msgstr "_Kopiëren" + +#~ msgid "Find _Next" +#~ msgstr "_Volgende zoeken" + +#~ msgid "Find _Previous" +#~ msgstr "V_orige zoeken" + +#~ msgid "_View" +#~ msgstr "Beel_d" + +#~ msgid "Fullscreen" +#~ msgstr "Volledig scherm" + +#~ msgid "_Go" +#~ msgstr "_Ga naar" + +#~ msgid "_Search Tab" +#~ msgstr "_Zoektabblad" + +#~ msgid "_Contents Tab" +#~ msgstr "In_houdtabblad" + +#~ msgid "Go to the previous page" +#~ msgstr "Terug naar de vorige pagina" + +#~ msgid "Go to the next page" +#~ msgstr "Vooruit naar de volgende pagina" + +#~ msgid "Decrease the text size" +#~ msgstr "Tekst verkleinen" + +#~ msgid "Increase the text size" +#~ msgstr "Tekst vergroten" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Zorgt dat F2 een Devhelp-venster opent voor het huidige woord" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "API-documentatie voor het huidige woord tonen" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Het Devhelp-venster de aandacht geven met het zoekveld actief" + +#~ msgid "All books" +#~ msgstr "Alle boeken" + +#~ msgid "Search in:" +#~ msgstr "Zoeken in:" + +#~ msgid "Contents" +#~ msgstr "Inhoud" + +#~ msgid "Search" +#~ msgstr "Zoeken" + +#~ msgid "Find:" +#~ msgstr "Zoeken:" + +#~ msgid "Find Previous" +#~ msgstr "Vorige zoeken" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Vorige voorkomen van de zoekterm vinden" + +#~ msgid "Find Next" +#~ msgstr "Volgende zoeken" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Volgende voorkomen van de zoekterm vinden" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_Hoofdlettergevoelig" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Hoofdlettergevoeligheid omschakelen" + +#~ msgid "_File" +#~ msgstr "_Bestand" + +#~ msgid "_Help" +#~ msgstr "_Hulp" + +#~ msgid "Use the normal text size" +#~ msgstr "Standaard tekstgrootte" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Volledig scherm verlaten" + +#~ msgid "Display in full screen" +#~ msgstr "In volledig scherm weergeven" + +#~ msgid "Larger" +#~ msgstr "Groter" + +#~ msgid "Smaller" +#~ msgstr "Kleiner" + +#~ msgid "Preferences…" +#~ msgstr "Voorkeuren…" + +#~ msgid "Fonts" +#~ msgstr "Lettertypen" diff --git a/po/nn.gmo b/po/nn.gmo new file mode 100644 index 0000000..0752a9f Binary files /dev/null and b/po/nn.gmo differ diff --git a/po/nn.po b/po/nn.po new file mode 100644 index 0000000..f078257 --- /dev/null +++ b/po/nn.po @@ -0,0 +1,611 @@ +# Norwegian/Nynorsk translation of devhelp. +# Copyright (C) 2001-2008 Free Software Foundation, Inc. +# +# Kjartan Maraas , 2001-2008. +# Eskild Hustvedt , 2008. +# Åsmund Skjæveland , 2012. +msgid "" +msgstr "" +"Project-Id-Version: devhelp 0.16\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2011-12-17 15:53+0000\n" +"PO-Revision-Date: 2012-05-08 10:59+0200\n" +"Last-Translator: Åsmund Skjæveland \n" +"Language-Team: Norwegian Nynorsk \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nn\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Lokalize 1.4\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Hjelplesar for utviklarar" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1868 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Dokumentasjonsvising" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "Bøker slått av" + +#: ../data/devhelp.schemas.in.h:2 +#| msgid "Font for fixed text" +msgid "Font for fixed width text" +msgstr "Skrift for tekst med fast Breidde" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "Skrift for tekst" + +#: ../data/devhelp.schemas.in.h:4 +#| msgid "Font for text with fixed width." +msgid "Font for text with fixed width, such as code examples." +msgstr "Skrift for tekst med fast Breidde, t.d. programmeringsdøme." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "Skrift for tekst med variabel breidd." + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "Grupper etter språk" + +#: ../data/devhelp.schemas.in.h:7 +#| msgid "Height of main window" +msgid "Height of assistant window" +msgstr "Høgde på assistentvindauget" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "Storleik på hovudvindauget" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "Liste over bøker slått av av brukaren." + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "Maksimert tilstand for hovudvindauget" + +#: ../data/devhelp.schemas.in.h:11 +#| msgid "Selected tab, \"content\" or \"search\"" +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Vald fane: «innhald» eller «søk»" + +#: ../data/devhelp.schemas.in.h:12 +#| msgid "The X position of the main window." +msgid "The X position of the assistant window." +msgstr "Horisontal plassering av assistentvindauget." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "Horisontal plassering av hovudvindauget." + +#: ../data/devhelp.schemas.in.h:14 +#| msgid "The Y position of the main window." +msgid "The Y position of the assistant window." +msgstr "Vertikal plassering av assistentvindauget." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "Vertikal plassering av hovudvindauget." + +#: ../data/devhelp.schemas.in.h:16 +#| msgid "The height of the main window." +msgid "The height of the assistant window." +msgstr "Storleik på assistentvindauget." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "Storleik på hovudvindauget." + +#: ../data/devhelp.schemas.in.h:18 +#| msgid "The width of the main window." +msgid "The width of the assistant window." +msgstr "Breidde på assistentvindauget." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "Breidde på indeks- og søkjestolpen." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "Breidde på hovudvindauget." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "Bruk systemskrifter" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "Bruk forvalde skrifter." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "Om bøker skal grupperast etter språk i grensesnittet" + +#: ../data/devhelp.schemas.in.h:24 +#| msgid "Whether the main window should start maximized or not." +msgid "Whether the main window should start maximized." +msgstr "Om hovudvindauget skal startast maksimert." + +#: ../data/devhelp.schemas.in.h:25 +#| msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Kva fane er vald; «innhald» eller «søk»." + +#: ../data/devhelp.schemas.in.h:26 +#| msgid "Width of the main window" +msgid "Width of the assistant window" +msgstr "Breidde på assistentvindauget" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "Breidde på indeks- og søkjestolpe" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "Breidde på hovudvindauget" + +#: ../data/devhelp.schemas.in.h:29 +#| msgid "X position of main window" +msgid "X position of assistant window" +msgstr "Horisontal plassering av assistentvindauget" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "Horisontal plassering av hovudvindauget" + +#: ../data/devhelp.schemas.in.h:31 +#| msgid "Y position of main window" +msgid "Y position of assistant window" +msgstr "Vertikal plassering av assistentvindauget" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Vertikal plassering av hovudvindauget" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "Bokhylle" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Enabled" +msgstr "På" + +#: ../data/ui/devhelp.builder.h:3 +#| msgid "Contents" +msgid "Fonts" +msgstr "Skrifttypar" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Preferences" +msgstr "Innstillingar" + +#: ../data/ui/devhelp.builder.h:5 +#| msgid "_File" +msgid "Title" +msgstr "Tittel" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Fixed width:" +msgstr "_Fast breidd:" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Group by language" +msgstr "_Grupper etter språk" + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Use system fonts" +msgstr "Br_uk systemskrifter" + +#: ../data/ui/devhelp.builder.h:9 +msgid "_Variable width: " +msgstr "_Variabel breidd: " + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Støtte for Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Start Devhelp for ordet ved markøren med F2" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "Vis API-dokumentasjon" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "Vis API-dokumentasjon for ordet ved markøren" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +#: ../src/dh-assistant-view.c:336 +#| msgid "_Book:" +msgid "Book:" +msgstr "Bok:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "Språk: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "Språk: udefinert" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +#| msgid "_Book:" +msgid "Book" +msgstr "Bok" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +#| msgid "_Page:" +msgid "Page" +msgstr "Side" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Stikkord" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Funksjon" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Type" + +#: ../src/dh-main.c:47 +#| msgid "Search for a function" +msgid "Search for a keyword" +msgstr "Søk etter eit stikkord" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "Avslutt Devhelp" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "Vis versjon og avslutt" + +#: ../src/dh-main.c:62 +#| msgid "Focus the devhelp window with the search field active" +msgid "Focus the Devhelp window with the search field active" +msgstr "Fokuser Devhelp-vindauget med søkjefeltet aktivt" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "Søk og vis treff i assistentvindauget" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +#| msgid "Expected '%s' got '%s' at line %d, column %d" +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Venta «%s», fekk «%s» ved linje %d, kolonne %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Ugyldig namnerom «%s» ved linje %d, kolonne %d" + +#: ../src/dh-parser.c:143 +#, c-format +#| msgid "title, name, and link elements are required at line %d, column %d" +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "Elementa «tittel», «namn» og «lenkje» krevst på linje %d, kolonne %d" + +#: ../src/dh-parser.c:218 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "Elementa «namn» og «lenkje» krevst inni på linje %d, kolonne %d" + +#: ../src/dh-parser.c:298 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "Elementa «namn» og «lenkje» krevst inni «%s» på linje %d, kolonne %d" + +#: ../src/dh-parser.c:311 +#, c-format +#| msgid "" +#| "name and link elements are required inside on line %d, column %d" +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "Elementet «type» krevst inni på linje %d, kolonne %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Klarte ikkje dekomprimera boka «%s»: %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "Alle bøkene" + +#: ../src/dh-search.c:1118 +#| msgid "Search" +msgid "Search in:" +msgstr "Søk i:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50 %" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75 %" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100 %" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125 %" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150 %" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175 %" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200 %" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300 %" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400 %" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "" +"Kjartan Maraas \n" +"Eskild Hustvedt \n" +"Åsmund Skjæveland " + +#: ../src/dh-window.c:733 +#| msgid "A developer's help browser for GNOME 2" +msgid "A developers' help browser for GNOME" +msgstr "Ein hjelplesar for utviklarar av GNOME" + +#: ../src/dh-window.c:740 +#| msgid "Devhelp support" +msgid "DevHelp Website" +msgstr "Devhelp-nettstad" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "_Fil" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "R_ediger" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "_Vis" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "_Gå" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "_Hjelp" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "_Nytt vindauge" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "Ny _fane" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "Sk_riv ut …" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Finn neste" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Finn førre" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "Gå til førre side" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "Gå til neste side" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "_Innhaldsfane" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "_Søkjefane" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "S_tørre tekst" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "Bruk større tekst" + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "_Mindre tekst" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "Bruk mindre tekst" + +#: ../src/dh-window.c:815 +#| msgid "_Normal size" +msgid "_Normal Size" +msgstr "_Normal storleik" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "Bruk normal tekststorleik" + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "Gå ut av fullskjerm" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "Vis i fullskjerm" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +#| msgid "_Larger Text" +msgid "Larger" +msgstr "Større" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +#| msgid "S_maller Text" +msgid "Smaller" +msgstr "Mindre" + +#: ../src/dh-window.c:1159 +msgid "Contents" +msgstr "Innhald" + +#: ../src/dh-window.c:1169 +msgid "Search" +msgstr "Søk" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "Klarte ikkje opna lenkja" + +#: ../src/dh-window.c:1657 ../src/dh-window.c:1896 +msgid "Empty Page" +msgstr "Tom side" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Finn:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Finn førre oppføring av søkjestrengen" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Finn neste oppføring av søkjestrengen" + +#: ../src/eggfindbar.c:358 +#| msgid "Case Sensitive" +msgid "C_ase Sensitive" +msgstr "S_kil mellom små/store bokstavar" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Slå av/på skilja mellom små/store bokstavar" + +#~ msgid "Show advanced search options" +#~ msgstr "Vis avanserte søkjealternativ" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Hvorvidt avanserte søkjealternativ skal vert viste." + +#~ msgid "Fonts" +#~ msgstr "Skrifter" + +#~ msgid "Searching" +#~ msgstr "Søk" + +#~ msgid "_Back" +#~ msgstr "Til_bake" + +#~ msgid "_Forward" +#~ msgstr "_Framover" + +#~ msgid "_Show advanced search options" +#~ msgstr "Vi_s avanserte søkjealternativ" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column %" +#~ "d" +#~ msgstr "" +#~ "namn og lenkjeelementer kreves inne i på linje %d, kolone %d" + +#~ msgid "Could not create book parser" +#~ msgstr "Kunne ikkje oppretta boklesar" + +#~ msgid "Could not create markup parser" +#~ msgstr "Kunne ikkje oppretta lesar for taggar" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp er ikkje bygget med støtte for zlib" diff --git a/po/oc.gmo b/po/oc.gmo new file mode 100644 index 0000000..951a669 Binary files /dev/null and b/po/oc.gmo differ diff --git a/po/oc.po b/po/oc.po new file mode 100644 index 0000000..dfba217 --- /dev/null +++ b/po/oc.po @@ -0,0 +1,591 @@ +# Translation of oc.po to Occitan +# Occitan translation of devhelp. +# Copyright (C) 2001-2007 Free Software Foundation, Inc. +# This file is distributed under the GNU General Public License Version 2. +# Yannig Marchegay (Kokoyaya) , 2006-2008 +# Cédric Valmary (totenoc.eu) , 2016. +msgid "" +msgstr "" +"Project-Id-Version: oc\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp" +"&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2016-05-19 15:25+0000\n" +"PO-Revision-Date: 2016-05-29 20:34+0200\n" +"Last-Translator: Cédric Valmary (totenoc.eu) \n" +"Language-Team: Tot En Òc\n" +"Language: oc\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Launchpad-Export-Date: 2015-05-20 16:32+0000\n" +"X-Project-Style: gnome\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Programa d'ajuda pels desvolopaires" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Navigador de documentacion" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Estat maximizat de la fenèstra principala" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Indica se la fenèstra principala deu començar per èsser agrandida." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Largor de la fenèstra principala" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "La largor de la fenèstra principala." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Nautor de la fenèstra principala" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "La nautor de la fenèstra principala." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Posicion X de la fenèstra principala" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "La posicion X de la fenèstra principala." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Posicion Y de la fenèstra principala" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "La posicion Y de la fenèstra principala." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Largor de l'indèx e del panèl de recèrca" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "La largor de l'indèx e del panèl de recèrca." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Onglet seleccionat : « content » o « search »" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" +"L'onglet qu'es seleccionat : « content » (contengut) o « search » (recèrca)." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Libres desactivats" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "Lista dels libres desactivats per l'utilizaire." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Agropar per lengatge" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Indica se los libres devon èsser agropats per lengatge dins l'interfàcia" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Largor de la fenèstra de l'assistent" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "La largor de la fenèstra de l'assistent." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "La nautor de la fenèstra de l'assistent" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "La nautor de la fenèstra de l'assistent." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Posicion X de la fenèstra de l'assistent" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "La posicion X de la fenèstra de l'assistent." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Posicion Y de la fenèstra de l'assistent" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "La posicion Y de la fenèstra de l'assistent." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Utilizar las poliças del sistèma" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Utilizar las poliças de caractèrs per defaut del sistèma." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Poliça pel tèxte" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Poliça de tèxte de chassa variabla." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Poliça de caractèrs de chassa fixa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Poliça pels caractèrs de largor fixa, coma pels exemples de còdi." + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Presa en carga de Devhelp" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" +"Una quichada sus la tòca F2 permet d'aviar Devhelp pel mot a l'emplaçament " +"del cursor." + +# +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Navigador de documentacion" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "_Fenèstra novèla" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_Preferéncias" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "Acorchis de _clavièr" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "_A prepaus de" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_Quitar" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "General" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Dobrir una novèla fenèstra" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Dobrir un onglet novèl" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Retorn" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "En avant" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimir" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Tampar la fenèstra correnta" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Tampar totas las fenèstras" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zoom avant" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zoom arrièr" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Reïnicializar lo zoom" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "Un navigador d'ajuda pels desvolopaires GNOME" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"Launchpad Contributions:\n" +" Cédric VALMARY (Tot en òc) https://launchpad.net/~cvalmary\n" +" Yannig MARCHEGAY (Kokoyaya) https://launchpad.net/~yannick-marchegay" + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "Site Web de Devhelp" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "Dobrís una novèla fenèstra Devhelp" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "Recèrca un mot clau" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "MOTCLAU" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "Recèrca e aficha tot resultat dins la fenètra de l'assistent" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "Afichar la version e sortir" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "Quita totes los Devhelp en cors" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Libre :" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "Lengatge : %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "Lengatge : pas definit" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "Libre" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "Pagina" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "Mot clau" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Foncion" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Macrò" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Tipe" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "Proprietat" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Espaci de nomenatge incorrècte « %s » a la linha %d, colomna %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Impossible de descompressar lo libre « %s » : %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Preferéncias" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "A_gropar per lengatge" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Activat" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Títol" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Bibliotèca" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Utilizar las poliças del sistèma" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "Largor _variabla : " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "Largor _fixa :" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Poliças" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50 %" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75 %" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100 %" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125 %" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150 %" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175 %" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200 %" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300 %" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400 %" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "" + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "_Tampar" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "Pagina voida" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "_Onglet novèl" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_Imprimir" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_Recercar" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "A_grandir lo tèxte" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "_Reduire lo tèxte" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "Talha _normala" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "Panèl _lateral" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "_A prepaus de Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Precedent" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Seguent" diff --git a/po/or.gmo b/po/or.gmo new file mode 100644 index 0000000..107df30 Binary files /dev/null and b/po/or.gmo differ diff --git a/po/or.po b/po/or.po new file mode 100644 index 0000000..3a0b651 --- /dev/null +++ b/po/or.po @@ -0,0 +1,312 @@ +# translation of or.po to Oriya +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Subhransu Behera , 2007. +msgid "" +msgstr "" +"Project-Id-Version: or\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-05-09 03:15+0100\n" +"PO-Revision-Date: 2007-05-09 18:53+0530\n" +"Last-Translator: Subhransu Behera \n" +"Language-Team: Oriya \n" +"Language: or\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: Plural-Forms: nplurals=2; plural=(n!=1);\n\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "ବିକାଶକାରୀ ମାନଙ୍କର ସହୟତା ପ୍ରୋଗ୍ରାମ" + +#: ../data/devhelp.desktop.in.in.h:2 ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:141 ../src/dh-window.c:689 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ଦଲିଲକରଣ ବ୍ରାଉଜର" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "ସ୍ଥିର ପାଠ୍ଯ ପାଇଁ ଅକ୍ଷରରୂପ" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "ପାଠ୍ଯ ପାଇଁ ଅକ୍ଷରରୂପ" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "ପାଠ୍ଯ ପାଇଁ ନିର୍ଦ୍ଦିଷ୍ଟ ଓସାର ବିଶିଷ୍ଟ ଅକ୍ଷରରୂପ।" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "ପାଠ୍ଯ ପାଇଁ ଅନିର୍ଦ୍ଦିଷ୍ଟ ଓସାର ବିଶିଷ୍ଟ ଅକ୍ଷରରୂପ।" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଉଚ୍ଛତା" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ବୃହତ୍ତମ ଅବସ୍ଥା" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "ଚୟିତ ଟ୍ଯାବ, \"ସୂଚୀପତ୍ର\" କିମ୍ବା \"ସନ୍ଧାନ\"" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "ଉନ୍ନତ ସନ୍ଧାନ ବିକଳ୍ପ ମାନଙ୍କୁ ପ୍ରଦର୍ଶନ କରନ୍ତୁ" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଏକ୍ସ ଅବସ୍ଥାନ।" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ୟାଈ ଅବସ୍ଥାନ।" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଉଚ୍ଛତା।" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "ଅନୁକ୍ରମଣିକା ଏବଂ ସନ୍ଧାନ ଫଳକର ଓସାର।" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଓସାର।" + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "ତନ୍ତ୍ର ଅକ୍ଷରରୂପ ବ୍ଯବହାର କରନ୍ତୁ" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "ତନ୍ତ୍ରର ପୂର୍ବନିର୍ଦ୍ଧାରିତ ଅକ୍ଷରରୂପ ମାନଙ୍କୁ ବ୍ଯବହାର କରନ୍ତୁ।" + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "ଉନ୍ନତ ସନ୍ଧାନ ବିକଳ୍ପ ମାନଙ୍କୁ ଦେଖାଯାଇଛି କି ନାହିଁ।" + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋକୁ ବଡ କରାଯିବ କି ନାହିଁ।" + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "ଏହି ଦୁଇଟି ଟ୍ଯାବ ମଧ୍ଯରୁ କାହାକୁ ଚୟନ କରାଯାଇଛି, \"ସୂଚୀପତ୍ର\" କିମ୍ବା \"ସନ୍ଧାନ\"।" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "ଅନୁକ୍ରମଣିକା ଏବଂ ସନ୍ଧାନ ଫଳକର ଓସାର" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଓସାର" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ଏକ୍ସ ଅବସ୍ଥାନ" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "ମୂଖ୍ଯ ୱିଣ୍ଡୋର ୟାଈ ଅବସ୍ଥାନ" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "ଅକ୍ଷରରୂପ" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "ସନ୍ଧାନ କରୁଅଛି" + +#: ../data/ui/devhelp.glade.h:3 ../src/dh-window.c:463 +msgid "Contents" +msgstr "ସୂଚୀପତ୍ର" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "ବିକଳ୍ପ" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "ପୂର୍ବବର୍ତ୍ତୀ (_B)" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "ନିର୍ଦ୍ଦିଷ୍ଟ ଓସାର: (_F)" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "ପରବର୍ତ୍ତୀ (_F)" + +#: ../data/ui/devhelp.glade.h:9 ../src/dh-window.c:158 +msgid "_Go" +msgstr "ଯାଆନ୍ତୁ (_G)" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "ଉନ୍ନତ ସନ୍ଧାନ ବିକଳ୍ପ ମାନଙ୍କୁ ପ୍ରଦର୍ଶନ କରନ୍ତୁ (_S)" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "ତନ୍ତ୍ର ଅକ୍ଷରରୂପ ବ୍ଯବହାର କରନ୍ତୁ (_U)" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "ଅନିର୍ଦ୍ଦିଷ୍ଟ ଓସାର (_V):" + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp ସହାୟତା" + +#: ../misc/gedit-plugin/devhelp.gedit-plugin.desktop.in.h:2 +msgid "Makes F7 bring up Devhelp for the word at the cursor" +msgstr "ଏହା F7 ଦ୍ବାରା ଦର୍ଶିକା ଥିବା ଶବ୍ଦ ପାଇଁ Devhelp ପ୍ରଦାନ କରିଥାଏ" + +#: ../src/dh-main.c:90 +msgid "Search for a function" +msgstr "ଗୋଟିଏ ପ୍ରକ୍ରିୟା ପାଇଁ ଖୋଜନ୍ତୁ" + +#: ../src/dh-main.c:99 +msgid "Quit any running Devhelp" +msgstr "ଯେ କୌଣସି ଚଳନ୍ତି Devhelp କୁ ବନ୍ଦ କରନ୍ତୁ" + +#: ../src/dh-main.c:108 +msgid "Display the version and exit" +msgstr "ସଂସ୍କରଣ ପ୍ରଦର୍ଶନ କରନ୍ତୁ ଏବଂ ବନ୍ଦ କରନ୍ତୁ" + +#: ../src/dh-main.c:117 +msgid "Focus the devhelp window with the search field active" +msgstr "ସନ୍ଧାନ କ୍ଷେତ୍ରକୁ ସକ୍ରିୟ କରି devhelp ୱିଣ୍ଡୋ ପ୍ରତି ଦୃଷ୍ଟି ଦିଅନ୍ତୁ" + +#: ../src/dh-parser.c:110 ../src/dh-parser.c:194 ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "'%s' ଆଶା କରାଯାଉଥିଲା '%s' ମିଳିଲା - %d ଧାଡିର, %d ସ୍ତମ୍ଭରେ" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "ଅବୈଧ namespace '%s' - %d ଧାଡିର, %d ସ୍ତମ୍ଭରେ" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "%d ଧାଡିର, %d ସ୍ତମ୍ଭରେ ଶୀର୍ଷକ, ନାମ, ଏବଂ ସଂଯୋଗ ବସ୍ତୁ ଗୁଡିକ ଦରକାରୀ" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "%d ଧାଡିର, %d ସ୍ତମ୍ଭରେ ମଧ୍ଯରେ ନାମ, ଏବଂ ସଂଯୋଗ ବସ୍ତୁ ଗୁଡିକ ଦରକାରୀ" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "%d ଧାଡିର, %d ସ୍ତମ୍ଭରେ ମଧ୍ଯରେ ନାମ, ଏବଂ ସଂଯୋଗ ବସ୍ତୁ ଗୁଡିକ ଦରକାରୀ" + +#: ../src/dh-parser.c:420 ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "ବହି ବିଶ୍ଳେଷକ ସୃଷ୍ଟି କରିପାରିଲା ନାହିଁ" + +#: ../src/dh-parser.c:436 ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "ମାର୍କ-ଅପ ବିଶ୍ଳେଷକ ସୃଷ୍ଟି କରିପାରିଲା ନାହିଁ" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' ବହିକୁ ଖୋଲି ପାରିଲା ନାହିଁ: %s" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "Devhelp କୁ zlib ସହାୟତା ସହିତ ନିର୍ମାଣ କରାଯାଇ ନାହିଁ" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "ବହି (_B):" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "ପୃଷ୍ଠା (_P):" + +#: ../src/dh-window.c:156 +msgid "_File" +msgstr "ଫାଇଲ (_F)" + +#: ../src/dh-window.c:157 +msgid "_Edit" +msgstr "ସମ୍ପାଦନ କରନ୍ତୁ (_E)" + +#: ../src/dh-window.c:159 +msgid "_Help" +msgstr "ସହାୟତା (_H)" + +#. File menu +#: ../src/dh-window.c:162 +msgid "_New Window" +msgstr "ନୂତନ ୱିଣ୍ଡୋ (_N)" + +#: ../src/dh-window.c:164 +msgid "New _Tab" +msgstr "ନୂତନ ଟ୍ଯାବ (_T)" + +#: ../src/dh-window.c:176 ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "ପରବର୍ତ୍ତୀ ଉପସ୍ଥିତିକୁ ଖୋଜନ୍ତୁ" + +#: ../src/dh-window.c:178 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "ପୂର୍ବବର୍ତ୍ତୀ ଉପସ୍ଥିତିକୁ ଖୋଜନ୍ତୁ" + +#: ../src/dh-window.c:189 +msgid "_Contents Tab" +msgstr "ବିଷୟବସ୍ତୁ ଟ୍ଯାବ (_C)" + +#: ../src/dh-window.c:192 +msgid "_Search Tab" +msgstr "ସନ୍ଧାନ ଟ୍ଯାବ (_S)" + +#: ../src/dh-window.c:473 +msgid "Search" +msgstr "ଖୋଜନ୍ତୁ" + +#: ../src/dh-window.c:686 +msgid "translator_credits" +msgstr "ଶୁଭ୍ରାଂଶୁ ବେହେରା " + +#: ../src/dh-window.c:691 +msgid "A developer's help browser for GNOME 2" +msgstr "ନୋମ-୨ ପାଇଁ ଗୋଟିଏ ବିକାଶକାରୀ ମାନଙ୍କର ସହୟତା ବ୍ରାଉଜର" + +#: ../src/dh-window.c:1085 ../src/dh-window.c:1214 +msgid "Empty Page" +msgstr "ଖାଲି ପୃଷ୍ଠା" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "ଖୋଜନ୍ତୁ:" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "ସନ୍ଧାନ ପଂକ୍ତିର ପୂର୍ବବର୍ତ୍ତୀ ଉପସ୍ଥିତିକୁ ଖୋଜନ୍ତୁ" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "ସନ୍ଧାନ ପଂକ୍ତିର ପରବର୍ତ୍ତୀ ଉପସ୍ଥିତିକୁ ଖୋଜନ୍ତୁ" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "ଅକ୍ଷର ନିର୍ଦ୍ଦିଷ୍ଟ" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "ଅକ୍ଷର ନିର୍ଦ୍ଦିଷ୍ଟ ଅନୁସନ୍ଧାନକୁ ଅଦଳବଦଳ କରନ୍ତୁ" + diff --git a/po/pa.gmo b/po/pa.gmo new file mode 100644 index 0000000..63364a3 Binary files /dev/null and b/po/pa.gmo differ diff --git a/po/pa.po b/po/pa.po new file mode 100644 index 0000000..de8729e --- /dev/null +++ b/po/pa.po @@ -0,0 +1,240 @@ +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2004-04-10 03:01+0200\n" +"PO-Revision-Date: 2004-06-25 15:29+0530\n" +"Last-Translator: Amanpreet Singh Alam \n" +"Language-Team: Punjab \n" +"Language: pa\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit" + +#: devhelp.desktop.in.h:1 +msgid "Developer's Help program" +msgstr "ਵਿਕਾਸਵਾਦੀਆਂ ਲਈ ਸਹਾਈ ਕਾਰਜ" + +#: devhelp.desktop.in.h:2 +#: ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "ਵਿਕਾਸਸਹਾਈ" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "ਵਿਕਾਸਸਹਾਈ ਕਿਤਾਬ" + +#: src/dh-main.c:259 +msgid "Specify the size and location of the window" +msgstr "ਝਰੋਖੇ ਦਾ ਅਕਾਰ ਅਤੇ ਥਾਂ ਨਿਰਧਾਰਿਤ ਕਰੋ" + +#: src/dh-main.c:260 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "ਚੌਡ਼ਾਈ xਉਚਾਈ+ XOFF+YOFF" + +#: src/dh-main.c:268 +msgid "Search for a function" +msgstr "ਫੰਕਸ਼ਨ ਲਈ ਖੋਜ ਕਰੋ" + +#: src/dh-main.c:277 +msgid "Quit any running Devhelp" +msgstr "ਕੋਈ ਵੀ ਚਲ ਰਹੀ ਵਿਕਾਸਸਹਾਈ ਬੰਦ ਕਰੋ" + +#: src/dh-parser.c:104 +#: src/dh-parser.c:181 +#: src/dh-parser.c:228 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "ਉਮੀਦ ਕੀਤੀ ਗਈ ਹੈ ਕਿ '%s' ਮਿਲ ਗਿਆ ਹੈ '%s' ਇਸ ਸਤਰ ਤੇ %d, ਕਾਲਮ %d ਤੇ" + +#: src/dh-parser.c:120 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "ਨਾਜ਼ਾਇਜ਼ ਨਾਂ ਥਾਂ '%s' ਇਸ ਸਤਰ ਤੇ %d, ਕਾਲਮ %d ਤੇ" + +#: src/dh-parser.c:149 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "ਸਤਰ %d, ਕਾਲਮ %d ਉਪਰ ਸਿਰਲੇਖ, ਨਾਂ ਅਤੇ ਸੰਬੰਧਿਤ ਚੀਜ਼ਾਂ ਚਾਹੀਦੀਆਂ ਹਨ" + +#: src/dh-parser.c:202 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "ਸਤਰ %d, ਕਾਲਮ %d ਉਪਰ ਵਿਚ ਨਾਂ ਅਤੇ ਸੰਬੰਧਿਤ ਚੀਜ਼ਾਂ ਚਾਹੀਦੀਆਂ ਹਨ" + +#: src/dh-parser.c:250 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "ਸਤਰ %d, ਕਾਲਮ %d ਉਪਰ ਵਿਚ ਨਾਂ ਅਤੇ ਸੰਬੰਧਿਤ ਚੀਜ਼ਾਂ ਚਾਹੀਦੀਆਂ ਹਨ" + +#: src/dh-parser.c:337 +#: src/dh-parser.c:423 +msgid "Could not create book parser" +msgstr "ਕਿਤਾਬ ਪਾਰਸਰ ਨਹੀ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ" + +#: src/dh-parser.c:347 +#: src/dh-parser.c:433 +msgid "Could not create markup parser" +msgstr "ਮਾਰਕਅਪ ਪਾਰਸਰ ਨਹੀ ਬਣਾਇਆ ਜਾ ਸਕਦਾ ਹੈ" + +#: src/dh-parser.c:479 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "ਕਿਤਾਬ '%s': %s ਖੋਲੀ ਨਹੀ ਜਾ ਸਕਦੀ ਹੈ" + +#: src/dh-search.c:417 +msgid "_Search:" +msgstr "ਖੋਜ :" + +#: src/dh-search.c:461 +msgid "Section" +msgstr "ਵਿਭਾਗ" + +#: src/dh-window.c:112 +msgid "_File" +msgstr "ਫਾਇਲ" + +#: src/dh-window.c:113 +msgid "_Edit" +msgstr "ਸੋਧ" + +#: src/dh-window.c:114 +#: ui/devhelp.glade.h:10 +msgid "_Go" +msgstr "ਜਾਓ" + +#: src/dh-window.c:115 +msgid "_Help" +msgstr "ਸਹਾਇਤਾ" + +#: src/dh-window.c:300 +#, c-format +msgid "Cannot set UI: %s" +msgstr "ਯੂਆਈ ਨਿਸ਼ਚਿਤ ਨਹੀ ਕੀਤਾ ਜਾ ਸਕਦਾ ਹੈ: %s" + +#: src/dh-window.c:355 +#: ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "ਸੰਖੇਪ" + +#: src/dh-window.c:366 +msgid "Search" +msgstr "ਖੋਜ" + +#: src/dh-window.c:449 +msgid "A developer's help browser for GNOME 2" +msgstr "ਗਨੋਮ ੨ ਲਈ ਵਿਕਾਸ਼ਵਾਦੀ ਲਈ ਸਹਾਇਤਾ ਦਰਸ਼ਕ" + +#: src/dh-window.c:465 +msgid "Devhelp project page" +msgstr "ਵਿਕਾਸ ਸਹਾਈ ਪੋਜੈਕਟ ਸਫ਼ਾ" + +#: src/dh-window.c:469 +msgid "Bug report Devhelp" +msgstr "ਵਿਕਾਸ ਸਹਾਈ ਬਗ ਰਿਪੋਰਟ " + +#: devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "ਸਥਿਰ ਪਾਠ ਲਈ ਫੋਟ" + +#: devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "ਪਾਠ ਲਈ ਫੋਟ" + +#: devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "ਸਥਿਰ ਚੌੜਾਈ ਨਾਲ ਪਾਠ ਲਈ ਫੋਟ" + +#: devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "ਅਸਥਿਰ ਚੌੜਾਈ ਨਾਲ ਪਾਠ ਲਈ ਫੋਟ" + +#: devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਲਈ ਉਚਾਈ" + +#: devhelp.schemas.in.h:6 +msgid "Location of the paned" +msgstr "ਪੈਨਡ ਲਈ ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:7 +msgid "Main window maximized state" +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ ਵੱਧੋ-ਵੱਧ ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:8 +msgid "The X position of the main window." +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ X ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:9 +msgid "The Y position of the main window." +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ Y ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:10 +msgid "The height of the main window." +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ ਉਚਾਈ" + +#: devhelp.schemas.in.h:11 +msgid "The location of the paned separator." +msgstr "ਪੈਨਡ ਵੱਖਰੇਵੇ ਦੀ ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:12 +msgid "The width of the main window." +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ ਚੌੜਾਈ" + +#: devhelp.schemas.in.h:13 +msgid "Use system fonts" +msgstr "ਸਿਸਟਮ ਫੋਟ ਵਰਤੋਂ" + +#: devhelp.schemas.in.h:14 +msgid "Use the system default fonts." +msgstr "ਮੂਲ ਸਿਸਟਮ ਫੋਟ ਵਰਤੋਂ" + +#: devhelp.schemas.in.h:15 +msgid "Whether the main window should start maximized or not." +msgstr "ਕੀ ਮੁੱਖ ਝਰੋਖੇ ਚੱਲਣ ਸਮੇਂ ਅਧਿਕਤਮ ਹੋਵੇ ਜਾਂ ਨਾ ?" + +#: devhelp.schemas.in.h:16 +msgid "Width of the main window" +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ ਚੌੜਾਈ" + +#: devhelp.schemas.in.h:17 +msgid "X position of main window" +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ X ਸਥਿਤੀ" + +#: devhelp.schemas.in.h:18 +msgid "Y position of main window" +msgstr "ਮੁੱਖ ਝਰੋਖੇ ਦੀ Y ਸਥਿਤੀ" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr " " + +#: ui/devhelp.glade.h:2 +msgid "Fonts" +msgstr "ਫੋਟ" + +#: ui/devhelp.glade.h:5 +msgid "Fixed width:" +msgstr "ਨਿਸ਼ਚਿਤ ਚੌੜਾਈ:" + +#: ui/devhelp.glade.h:6 +msgid "Preferences" +msgstr "ਮੇਰੀ ਪਸੰਦ" + +#: ui/devhelp.glade.h:7 +msgid "Variable width: " +msgstr "ਅਸਥਿਰ ਚੌੜਾਈ: " + +#: ui/devhelp.glade.h:8 +msgid "_Back" +msgstr "ਪਿੱਛੇ" + +#: ui/devhelp.glade.h:9 +msgid "_Forward" +msgstr "ਅੱਗੇ" + +#: ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "ਸਿਸਟਮ ਫੋਟ ਵਰਤੋਂ" + diff --git a/po/pl.gmo b/po/pl.gmo new file mode 100644 index 0000000..441b21a Binary files /dev/null and b/po/pl.gmo differ diff --git a/po/pl.po b/po/pl.po new file mode 100644 index 0000000..542c55e --- /dev/null +++ b/po/pl.po @@ -0,0 +1,546 @@ +# Polish translation for devhelp. +# Copyright © 2001-2018 the devhelp authors. +# This file is distributed under the same license as the devhelp package. +# Zbigniew Chyla , 2001-2003. +# Artur Flinta , 2003. +# Wadim Dziedzic , 2007. +# Tomasz Dominikowski , 2008-2009. +# Piotr Drąg , 2009-2018. +# Paweł Żołnowski , 2014. +# Aviary.pl , 2007-2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-01-28 17:56+0000\n" +"PO-Revision-Date: 2018-02-08 01:42+0100\n" +"Last-Translator: Piotr Drąg \n" +"Language-Team: Polish \n" +"Language: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 " +"|| n%100>=20) ? 1 : 2);\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:450 +#: src/dh-window.c:608 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Narzędzie dla programistów do przeglądania i przeszukiwania dokumentacji API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp to narzędzie dla programistów do przeglądania i przeszukiwania " +"dokumentacji API. Umożliwia łatwą nawigację wśród bibliotek oraz " +"wyszukiwanie na podstawie funkcji, struktur lub makr." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentacja musi być zainstalowana lokalnie, aby do używania programu " +"Devhelp nie było wymagane połączenie z Internetem." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp działa natywnie z biblioteką GTK-Doc, więc biblioteki GTK+ i GNOME " +"są dobrze obsługiwane. Obsługiwane są także inne platformy programistyczne, " +"jeśli dokumentacja API jest dostępna w formacie HTML i został utworzony plik " +"indeksu *.devhelp2." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp można zintegrować z innymi programami, takimi jak Glade, Builder " +"i Anjuta. Dostępne są także wtyczki dla różnych edytorów tekstów (gedit, " +"Vim, Emacs, Geany…)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Przeglądarka dokumentacji API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"dokumentacja;informacje;podręcznik;przewodnik;programista;developer;" +"deweloper;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stan maksymalizacji głównego okna" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Czy główne okno ma być uruchomione zmaksymalizowane." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Szerokość głównego okna" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Szerokość głównego okna." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Wysokość głównego okna" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Wysokość głównego okna." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Szerokość indeksu i panelu wyszukiwania" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Szerokość indeksu i panelu wyszukiwania." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Wyłączone książki" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Lista książek wyłączonych przez użytkownika." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grupowanie według języka" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Czy książki mają być grupowane według języka w interfejsie użytkownika" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Szerokość okna asystenta" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Szerokość okna asystenta." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Wysokość okna asystenta" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Wysokość okna asystenta." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Użycie czcionek systemowych" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Użycie domyślnych czcionek systemu." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Czcionka tekstu" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Czcionka tekstu o zmiennej szerokości." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Czcionka tekstu o stałej szerokości" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Czcionka tekstu o stałej szerokości, takiego jak przykłady kodu źródłowego." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Obsługa programu Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Wyświetlanie dokumentacji API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Zbigniew Chyla , 2001-2003\n" +"Artur Flinta , 2003\n" +"Wadim Dziedzic , 2007\n" +"Tomasz Dominikowski , 2008-2009\n" +"Piotr Drąg , 2009-2018\n" +"Paweł Żołnowski , 2014\n" +"Aviary.pl , 2007-2018" + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Witryna programu Devhelp" + +#: src/dh-app.c:354 +msgid "Opens a new Devhelp window" +msgstr "Otwiera nowe okno programu Devhelp" + +#: src/dh-app.c:359 +msgid "Search for a keyword" +msgstr "Wyszukuje słowo kluczowe" + +#: src/dh-app.c:360 src/dh-app.c:365 +msgid "KEYWORD" +msgstr "SŁOWO-KLUCZOWE" + +#: src/dh-app.c:364 +msgid "Search and display any hit in the assistant window" +msgstr "Wyszukuje i wyświetla każde trafienie w oknie asystenta" + +#: src/dh-app.c:369 +msgid "Display the version and exit" +msgstr "Wyświetla wersję i kończy działanie" + +#: src/dh-app.c:374 +msgid "Quit any running Devhelp" +msgstr "Kończy wszystkie uruchomione wystąpienia programu Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — asystent" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Książka:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Język: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Język: nieokreślony" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Zwiń wszystko" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Książka" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Strona" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Słowo kluczowe" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Procedura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Typ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Właściwość" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Sygnał" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferencje" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupowanie według języka" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Włączona" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Tytuł" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Półka na książki" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Czcionki systemowe" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Zmienna szerokość: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Stała szerokość:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Czcionki" + +#: src/dh-window.c:60 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:61 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:62 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:63 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:64 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:65 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:66 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:67 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:68 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:832 +msgid "Error opening the requested link." +msgstr "Błąd podczas otwierania żądanego odnośnika." + +#: src/dh-window.c:1147 +msgid "_Close" +msgstr "Za_mknij" + +#: src/dh-window.c:1165 src/dh-window.c:1346 +msgid "Empty Page" +msgstr "Pusta strona" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Panel _boczny" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Wy_drukuj" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Znajdź" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Większy tekst" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Mniejszy tekst" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Zwykły _rozmiar" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nowe _okno" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Preferencje" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Skróty klawiszowe" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Pomo_c" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_O programie" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "Za_kończ" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Wstecz" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Dalej" + +#: src/dh-window.ui:188 +msgid "New Tab" +msgstr "Nowa karta" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Ogólne" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Aktywacja globalnego wyszukiwania" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Wyszukiwanie na bieżącej stronie" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Otwarcie nowego okna" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Otwarcie nowej karty" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Przełączenie widoczności panelu bocznego" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Przejście wstecz" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Przejście dalej" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Wydrukowanie" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zamknięcie bieżącego okna" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zamknięcie wszystkich okien" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Powiększanie" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Powiększenie" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Pomniejszenie" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Przywrócenie domyślnego powiększenia" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_O programie" diff --git a/po/ps.gmo b/po/ps.gmo new file mode 100644 index 0000000..7edd583 Binary files /dev/null and b/po/ps.gmo differ diff --git a/po/ps.po b/po/ps.po new file mode 100644 index 0000000..09bb2fb --- /dev/null +++ b/po/ps.po @@ -0,0 +1,421 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp.head\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2008-07-10 03:15+0000\n" +"PO-Revision-Date: 2008-07-14 17:37-0800\n" +"Last-Translator: Zabeeh Khan \n" +"Language-Team: Pashto \n" +"Language: ps\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Pashto, Pushto\n" +"X-Poedit-Country: AFGHANISTAN\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "د پرمخبيونکو مرستندويه کړنلار" + +#: ../data/devhelp.desktop.in.in.h:2 +#: ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:151 +#: ../src/dh-window.c:836 +msgid "Devhelp" +msgstr "ډېوهېلپ" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "د لاسوندونې لټوونی" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "د جوتې ليکنې ليکبڼه" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "د ليکنې ليکبڼه" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr ".د هغو ليکنو ليکبڼه چې جوت پلنوالی ولري" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr ".د هغو ليکنو ليکبڼه چې بدلېدونکی پلنوالی ولري" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "د ارې کړکۍ اوږدوالی" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "د ارې کړکۍ لوی شوی انکړ" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "\"منځپانګه\" يا \"پلټون\" ‎ټاکل شوی ټوپ" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "ژور پلټون غوراوي ښودل" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr ".ځايونه X د ارې کړکۍ" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr ".ځايونه Y د ارې کړکۍ" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr ".د ارې کړکۍ اوږدوالی" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr ".د لړيال او د پلټون چوکاټ پلنوالی" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr ".د ارې کړکۍ پلنوالی" + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "غونډال ليکبڼې کارول" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr ".د غونډال تلواله ليکبڼې کارول" + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr ".ژور پلټون غوراوي ښودل پکار دي که نه" + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr ".اره کړکۍ لويه پېلول پکار دي که نه" + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "د لړيال او د پلټون چوکاټ پلنوالی" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "د ارې کړکۍ پلنوالی" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "ځايونه X د ارې کړکۍ" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "ځايونه Y د ارې کړکۍ" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "ليکبڼې" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "پلټل کيږي" + +#: ../data/ui/devhelp.glade.h:3 +#: ../src/dh-window.c:560 +msgid "Contents" +msgstr "منځپانګې" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "غوراوي" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "شاته_" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr ":جوت پلنوالی_" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "مخکې_" + +#: ../data/ui/devhelp.glade.h:9 +#: ../src/dh-window.c:202 +msgid "_Go" +msgstr "ورتګ_" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "ژور پلټون غوراوي ښودل_" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "غونډال ليکبڼې کارول_" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr ":بدلېدونکی پلنوالی_" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "د ډېوهېلپ ملاتړ" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:36 +msgid "Show API Documentation" +msgstr "لاسوندونه ښودل API" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation for the word at the cursor" +msgstr "" + +#: ../src/dh-main.c:100 +msgid "Search for a function" +msgstr "کومه کړنه پلټل" + +#: ../src/dh-main.c:109 +msgid "Quit any running Devhelp" +msgstr "ټول ځغلېدونکي ډېوهېلپ بندول" + +#: ../src/dh-main.c:118 +msgid "Display the version and exit" +msgstr "نسخه ښودل او بندول" + +#: ../src/dh-main.c:127 +msgid "Focus the devhelp window with the search field active" +msgstr "" + +#: ../src/dh-parser.c:110 +#: ../src/dh-parser.c:194 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:420 +#: ../src/dh-parser.c:515 +#, c-format +msgid "Could not create book parser" +msgstr "" + +#: ../src/dh-parser.c:436 +#: ../src/dh-parser.c:525 +#, c-format +msgid "Could not create markup parser" +msgstr "" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "%s :کتاب نه شي نازېرلی '%s'" + +#: ../src/dh-parser.c:603 +#, c-format +msgid "Devhelp is not built with zlib support" +msgstr "" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr ":کتاب_" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr ":مخ_" + +#: ../src/dh-window.c:74 +msgid "50%" +msgstr "۵۰٪" + +#: ../src/dh-window.c:75 +msgid "75%" +msgstr "۷۵٪" + +#: ../src/dh-window.c:76 +msgid "100%" +msgstr "۱۰۰٪" + +#: ../src/dh-window.c:77 +msgid "125%" +msgstr "۱۲۵٪" + +#: ../src/dh-window.c:78 +msgid "150%" +msgstr "۱۵۰٪‍" + +#: ../src/dh-window.c:79 +msgid "175%" +msgstr "۱۷۵٪" + +#: ../src/dh-window.c:80 +msgid "200%" +msgstr "۲۰۰٪" + +#: ../src/dh-window.c:81 +msgid "300%" +msgstr "۳۰۰٪" + +#: ../src/dh-window.c:82 +msgid "400%" +msgstr "۴۰۰٪" + +#: ../src/dh-window.c:199 +msgid "_File" +msgstr "دوتنه_" + +#: ../src/dh-window.c:200 +msgid "_Edit" +msgstr "سمون_" + +#: ../src/dh-window.c:201 +msgid "_View" +msgstr "ليد_" + +#: ../src/dh-window.c:203 +msgid "_Help" +msgstr "مرسته_" + +#. File menu +#: ../src/dh-window.c:206 +msgid "_New Window" +msgstr "نوې کړکۍ_" + +#: ../src/dh-window.c:208 +msgid "New _Tab" +msgstr "نوی _ټوپ" + +#: ../src/dh-window.c:210 +msgid "_Print..." +msgstr "...چاپول_" + +#: ../src/dh-window.c:222 +#: ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "راتلونکی لټول" + +#: ../src/dh-window.c:224 +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "مخکنی لټول" + +#: ../src/dh-window.c:231 +msgid "Go to the previous page" +msgstr "مخکني مخ ته تلل" + +#: ../src/dh-window.c:234 +msgid "Go to the next page" +msgstr "راتلونکي مخ ته تلل" + +#: ../src/dh-window.c:237 +msgid "_Contents Tab" +msgstr "منځپانګه ټوپ_" + +#: ../src/dh-window.c:240 +msgid "_Search Tab" +msgstr "پلټون ټوپ_" + +#. View menu +#: ../src/dh-window.c:244 +msgid "_Larger Text" +msgstr "لويه ليکنه_" + +#: ../src/dh-window.c:245 +msgid "Increase the text size" +msgstr "د ليکنې کچ ډېرول" + +#: ../src/dh-window.c:247 +msgid "S_maller Text" +msgstr "و_ړه ليکنه" + +#: ../src/dh-window.c:248 +msgid "Decrease the text size" +msgstr "د ليکنې کچ کمول" + +#: ../src/dh-window.c:250 +msgid "_Normal size" +msgstr "لېوی کچ_" + +#: ../src/dh-window.c:251 +msgid "Use the normal text size" +msgstr "د ليکنې لېوی کچ کارول" + +#: ../src/dh-window.c:501 +msgid "About Devhelp" +msgstr "د ډېوهېلپ په اړه" + +#: ../src/dh-window.c:506 +msgid "Preferences..." +msgstr "...غوراوي" + +#: ../src/dh-window.c:570 +msgid "Search" +msgstr "پلټون" + +#: ../src/dh-window.c:833 +msgid "translator_credits" +msgstr "" +"Zabeeh Khan \n" +"The Pathanisation Project " + +#: ../src/dh-window.c:838 +msgid "A developer's help browser for GNOME 2" +msgstr "" + +#: ../src/dh-window.c:1247 +#: ../src/dh-window.c:1437 +msgid "Empty Page" +msgstr "تش مخ" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr ":لټول" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "د پلټون مزي مخکنی ځای لټول" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "د پلټون مزي راتلونکی ځای لټول" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "" + diff --git a/po/pt.gmo b/po/pt.gmo new file mode 100644 index 0000000..fc2f48c Binary files /dev/null and b/po/pt.gmo differ diff --git a/po/pt.po b/po/pt.po new file mode 100644 index 0000000..6c30a36 --- /dev/null +++ b/po/pt.po @@ -0,0 +1,775 @@ +# devhelp's Portuguese Translation +# Copyright © 2001, 2002, 2003, 2004, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014 devhelp +# Diatributed under the same licence as the devhelp package +# Duarte Loreto , 2001, 2002, 2003, 2004, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014. +# Pedro Albuquerque , 2015. +# Sérgio Cardeira , 2016. +# Tiago Santos , 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: 3.12\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2016-02-18 16:24+0000\n" +"PO-Revision-Date: 2016-04-27 23:08+0100\n" +"Last-Translator: Tiago Santos \n" +"Language-Team: Português <>\n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" +"X-Generator: Poedit 1.5.4\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Aplicação de ajuda aos programadores" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"O Devhelp é um navegador de documentação de API (interface de programação de " +"aplicações). Disponibiliza uma forma simples de navegar através de " +"bibliotecas, procurar por função, estrutura ou macro. Apresenta um ambiente " +"com separadores e permite imprimir resultados." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"O Devhelp integra-se com outras aplicações tais como o Glade, Anjuta, ou " +"Geany." + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Navegador de documentação" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentação;informação;manual;programador;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Estado de maximização da janela principal" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Se a janela principal deverá ou não iniciar maximizada." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Largura da janela principal" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "A largura da janela principal." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Altura da janela principal" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "A altura da janela principal." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Posição X da janela principal" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "A posição X da janela principal." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Posição Y da janela principal" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "A posição Y da janela principal." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Largura dos painéis de índice e procura" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "A largura dos painéis de índice e procura." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Separador selecionado: \"conteúdo\" ou \"procura\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Qual dos separadores está selecionado: \"conteúdo\" ou \"procura\"." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Livros desativados" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "Lista de livros desativados pelo utilizador." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Agrupar por linguagem" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Se os livros deverão ou não ser agrupados no ambiente gráfico por linguagem" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "Se a janela do assistente deverá ou não estar maximizada" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "Se a janela do assistente deverá ou não estar maximizada." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Largura da janela do assistente" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "A largura da janela do assistente." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Altura da janela do assistente" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "A altura da janela do assistente." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Posição X da janela do assistente" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "A posição X da janela do assistente." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Posição Y da janela do assistente" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "A posição Y da janela do assistente." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Utilizar as letras do sistema" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Utilizar as letras predefinidas do sistema." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Letra para o texto" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Letra para o texto de largura variável." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Letra para o texto de largura fixa" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Letra para o texto de largura fixa, tal como exemplos de código." + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Assistência do Devhelp" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Faz com que F2 abra o Devhelp para a palavra sob o cursor" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostrar a documentação de API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "Nova _janela" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_Preferências" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "_Atalhos de teclado" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "_Sobre" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_Sair" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "Geral" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Focar na procura global" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Encontrar na página atual" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Abre uma nova janela" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Abrir um novo separador" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "Alterar a visibilidade da barra lateral" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Recuar" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Avançar" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimir" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Fechar a janela atual" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Fechar todas as janelas" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zoom" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Ampliar" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Reduzir" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Repor Zoom" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "Um navegador de ajuda para programadores do GNOME" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"Duarte Loreto \n" +"Pedro Albuquerque " + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "Página web do Devhelp" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "Abre uma nova janela Devhelp" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "Procurar uma palavra-chave" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "PALAVRA-CHAVE" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "Procurar e mostrar os resultados na janela do assistente" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "Mostrar a versão e sair" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "Sair de qualquer Devhelp em execução" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — assistente" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Livro:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "Linguagem: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "Linguagem: indefinida" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "Livro" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "Página" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "Palavra-chave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Função" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Estrutura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Tipo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "Propriedade" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "Sinal" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Esperado \"%s\", obtido \"%s\" na linha %d, coluna %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Nome de espaço \"%s\" inválido na linha %d, coluna %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"Os elementos \"title\", \"name\" e \"link\" são obrigatórios na linha %d, " +"coluna %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"Os elementos \"name\" e \"link\" são obrigatórios dentro de na linha " +"%d, coluna %d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"Os elementos \"name\" e \"link\" são obrigatórios dentro de \"%s\" na linha " +"%d, coluna %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"O elemento \"type\" é obrigatório dentro da na linha %d, coluna %d" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Impossível descomprimir o livro \"%s\": %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Preferências" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Agrupar por linguagem" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Ativado" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Título" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Prateleira de livros" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Utilizar as fontes do sistema" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "Largura _variável: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "Largura _fixa:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Letras" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "Erro ao abrir a ligação indicada." + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "_Fechar" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "Página vazia" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "Novo _separador" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_Imprimir" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_Localizar" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "Texto _maior" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "_Texto menor" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "Tamanho _normal" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_Painel lateral" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "_Sobre o Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Recuar" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Avançar" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Apresentar a Documentação de API para a palavra sob o cursor" + +#~ msgid "Current" +#~ msgstr "Atual" + +#~ msgid "All Books" +#~ msgstr "Todos os Livros" + +#~ msgid "Find:" +#~ msgstr "Procurar:" + +#~ msgid "Find Previous" +#~ msgstr "Procurar Anterior" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Procurar a ocorrência anterior da expressão de pesquisa" + +#~ msgid "Find Next" +#~ msgstr "Procurar Seguinte" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Procurar a ocorrência seguinte da expressão de pesquisa" + +#~ msgid "C_ase Sensitive" +#~ msgstr "Sensível à C_apitalização" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Alternar procura sensível à capitalização" + +#~ msgid "_Window" +#~ msgstr "_Janela" + +#~ msgid "_Edit" +#~ msgstr "_Editar" + +#~ msgid "_Copy" +#~ msgstr "_Copiar" + +#~ msgid "Find _Next" +#~ msgstr "Procurar _Seguinte" + +#~ msgid "Find _Previous" +#~ msgstr "Procurar _Anterior" + +#~ msgid "_View" +#~ msgstr "_Ver" + +#~ msgid "Fullscreen" +#~ msgstr "Ecrã completo" + +#~ msgid "_Go" +#~ msgstr "_Ir" + +#~ msgid "_Search Tab" +#~ msgstr "Separador de _Procura" + +#~ msgid "_Contents Tab" +#~ msgstr "Separador de _Conteúdo" + +#~ msgid "Go to the previous page" +#~ msgstr "Ir para a página anterior" + +#~ msgid "Go to the next page" +#~ msgstr "Ir para a página seguinte" + +#~ msgid "Decrease the text size" +#~ msgstr "Reduzir o tamanho da fonte do texto" + +#~ msgid "Increase the text size" +#~ msgstr "Aumentar o tamanho da fonte do texto" + +#~ msgid "Focus the Devhelp window with the search field ative" +#~ msgstr "Transmitir o foco à janela do Devhelp com o campo de procura ativo" + +#~ msgid "Search in:" +#~ msgstr "Procurar em:" + +#~ msgid "Contents" +#~ msgstr "Conteúdo" + +#~ msgid "Search" +#~ msgstr "Procurar" + +#~ msgid "_File" +#~ msgstr "_Ficheiro" + +#~ msgid "_Help" +#~ msgstr "_Ajuda" + +#~ msgid "Use the normal text size" +#~ msgstr "Utilizar o tamanho normal da fonte do texto" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Deixar o modo de ecrã completo" + +#~ msgid "Display in full screen" +#~ msgstr "Apresentar em modo de ecrã completo" + +#~ msgid "Larger" +#~ msgstr "Maior" + +#~ msgid "Smaller" +#~ msgstr "Menor" + +#~ msgid "Preferences…" +#~ msgstr "Preferências…" + +#~ msgid "Preferences..." +#~ msgstr "Preferências..." + +#~ msgid "Show advanced search options" +#~ msgstr "Apresentar as opções de procura avançada" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Se as opções avançadas de procura são apresentadas ou não." + +#~ msgid "Fonts" +#~ msgstr "Fontes" + +#~ msgid "Searching" +#~ msgstr "A Procurar" + +#~ msgid "_Show advanced search options" +#~ msgstr "Apresentar _opções avançadas de procura" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Elementos \"name\" e \"link\" são requeridos dentro de na " +#~ "linha %d, coluna %d" + +#~ msgid "Could not create book parser" +#~ msgstr "Incapaz de criar um processador de livro" + +#~ msgid "Could not create markup parser" +#~ msgstr "Incapaz de criar um processador de markup" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp não foi compilado com suporte para zlib" + +#~ msgid "Browse Contents" +#~ msgstr "Navegar no Conteúdo" + +#~ msgid "Specify the size and location of the window" +#~ msgstr "Especificar o tamanho e localização da janela" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "LARGURAxALTURA+DESLX+DESLY" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "Incapaz de definir o IU: %s" + +#~ msgid "Devhelp project page" +#~ msgstr "Página do projeto Devhelp" + +#~ msgid "Bug report Devhelp" +#~ msgstr "Relatório de erro Devhelp" + +#~ msgid "Location of the paned" +#~ msgstr "Localização do painel" + +#~ msgid "The location of the paned separator." +#~ msgstr "A localização do separador de painel." + +#~ msgid " " +#~ msgstr " " diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo new file mode 100644 index 0000000..ed81354 Binary files /dev/null and b/po/pt_BR.gmo differ diff --git a/po/pt_BR.po b/po/pt_BR.po new file mode 100644 index 0000000..210df30 --- /dev/null +++ b/po/pt_BR.po @@ -0,0 +1,785 @@ +# Brazilian Portuguese translation of devhelp +# Copyright (C) 2018 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Alexandre Folle de Menezes , 2002-2003. +# based on the GNOME 2.0 translation to Portuguese (pt) by +# Duarte Loreto , 2001. +# Raphael Higino , 2004. +# Luiz Fernando S. Armesto , 2007. +# Washington Lins , 2007. +# Og Maciel , 2007-2009. +# Taylon Silmer , 2008. +# Leonardo Ferreira Fontenelle , 2009. +# Jonh Wendell , 2010. +# Enrico Nicoletto , 2013, 2014, 2017. +# Rafael Fontenelle , 2012-2014, 2017, 2018. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-02-10 09:48+0000\n" +"PO-Revision-Date: 2018-02-16 15:09-0200\n" +"Last-Translator: Rafael Fontenelle \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" +"X-Generator: Virtaal 1.0.0-beta1\n" +"X-Project-Style: gnome\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Uma ferramenta de desenvolvimento para navegar e pesquisar documentação de " +"API" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp é uma ferramenta de desenvolvimento para navegar e pesquisar " +"documentação de API. Ele fornece uma maneira fácil de navegar pelas " +"bibliotecas e procurar por função, estrutura ou macro." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"A documentação deve ser instalada localmente, portanto, uma conexão à " +"Internet não é necessária para usar o Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp funciona nativamente com o GTK-Doc, de modo que há um bom suporte às " +"bibliotecas do GTK+ e do GNOME. Mas outras plataformas de desenvolvimento " +"também podem ter suporte, desde que a documentação da API esteja disponível " +"em HTML e um arquivo de índice *.devhelp2 seja gerado." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp se integra com outros aplicativos, tais como Glade, Builder ou " +"Anjuta, e plug-ins estão disponíveis para diferentes editores de texto (" +"gedit, Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "Navegador de documentação de API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentação;documentações;informações;manual;desenvolvedor;programador;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Estado maximizado da janela principal" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Se a janela principal deve iniciar maximizada ou não." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Largura da janela principal" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "A largura da janela principal." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Altura da janela principal" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "A altura da janela principal." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Largura do painel de índice e de pesquisa" + +# "index and search pane": o painel lateral (só tem um) +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "A largura do painel de índice e pesquisa." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Livros desabilitados" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Lista dos livros desabilitados pelo usuário." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Agrupar por idioma" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Os livros devem ser agrupados por idioma na interface do usuário" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Largura da janela do assistente" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "A largura da janela do assistente." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Altura da janela do assistente" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "A altura da janela do assistente." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Usar fontes do sistema" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Usa as fontes padrão do sistema." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Fonte para texto" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Fonte para texto com largura variável." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Fonte para texto com largura fixa" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Fonte para texto com largura fixa, assim como os códigos de exemplo." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Suporte do Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Mostrar documentação da API" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Alexandre Folle de Menezes \n" +"Raphael Higino (In memoriam)\n" +"Luiz Armesto \n" +"Washington Lins \n" +"Og Maciel \n" +"Taylon Silmer \n" +"Leonardo Ferreira Fontenelle \n" +"Jonh Wendell \n" +"Rafael Fontenelle \n" +"Enrico Nicoletto " + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Site do Devhelp" + +# Descrição de linha de comando do --help +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Abre uma nova janela de Devhelp" + +# Descrição de linha de comando do --help +# Neste caso, "procurar" fica melhor que "pesquisar" +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Procura por uma palavra-chave" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "PALAVRA" + +# Descrição de linha de comando do --help +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Pesquisa e exibe resultados no assistente" + +# Descrição de linha de comando do --help +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Exibe a versão e sai" + +# Descrição de linha de comando do --help +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Sai de qualquer Devhelp em execução" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistente" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Livro:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Idioma: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Idioma: Indefinido" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "Re_colher todos" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Livro" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Página" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Palavra-chave" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Função" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Estrutura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Tipo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Propriedade" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Sinal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Preferências" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "A_grupar por idioma" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Habilitado" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Título" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Estante de livros" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Usar fontes do sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Largura _variável: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Largura _fixa:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Fontes" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Página vazia" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Erro ao abrir o link requisitado." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Painel _lateral" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "Im_primir" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Localizar" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Texto m_aior" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Texto _menor" + +# Apesar do "size", a tradução "texto" segue o padrão das outras duas mensagens acima. +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Texto _normal" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nova _janela" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Preferências" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Atalhos de _teclado" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Aj_uda" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "S_obre o Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Sair" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Retroceder" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Avançar" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nova aba" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Geral" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Foco na pesquisa global" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Localizar na página atual" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Abrir uma nova janela" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Abrir uma nova aba" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Alternar a visibilidade do painel lateral" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Voltar" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Avançar" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Imprimir" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Fechar a janela atual" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Fechar todas as janelas" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Ampliação" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Ampliar" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Reduzir" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Restaurar" + +#: src/menus.ui:50 +msgid "_About" +msgstr "S_obre" + +#~ msgid "Developer’s Help program" +#~ msgstr "Programa de ajuda para desenvolvedores" + +#~ msgid "X position of main window" +#~ msgstr "Posição X da janela principal" + +#~ msgid "The X position of the main window." +#~ msgstr "A posição X da janela principal." + +#~ msgid "Y position of main window" +#~ msgstr "Posição Y da janela principal" + +#~ msgid "The Y position of the main window." +#~ msgstr "A posição Y da janela principal." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Se a janela do assistente deve ser maximizada ou não" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Se a janela do assistente deve ser maximizada ou não." + +#~ msgid "X position of assistant window" +#~ msgstr "Posição X da janela do assistente" + +#~ msgid "The X position of the assistant window." +#~ msgstr "A posição X da janela do assistente." + +#~ msgid "Y position of assistant window" +#~ msgstr "Posição Y da janela do assistente" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "A posição Y da janela do assistente." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Um navegador de ajuda para desenvolvedores do GNOME" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Fechar" + +#~ msgid "Side _Panel" +#~ msgstr "Painel _lateral" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Aba selecionada: “content” ou “search”" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Qual das abas está selecionada: “content” ou “search”." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Esperava “%s”, encontrei “%s” na linha %d, coluna %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Espaço de nomes “%s” inválido na linha %d, coluna %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Os elementos “title”, “name”, e “link” são necessários na linha %d, " +#~ "coluna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Os elementos “name” e “link” são necessários dentro de na linha %d, " +#~ "coluna %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Os elementos “name” e “link” são necessários dentro de “%s” na linha %d, " +#~ "coluna %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "O elemento “type” é necessário dentro de na linha %d, coluna %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Não é possível descompactar o livro “%s”: %s" + +#~ msgid "_Side pane" +#~ msgstr "Painel _lateral" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Faz a tecla F2 exibir o Devhelp para a palavra sob o cursor" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Mostrar a documentação da API para a palavra sob o cursor" + +#~ msgid "Current" +#~ msgstr "Atual" + +#~ msgid "All Books" +#~ msgstr "Todos os livros" + +#~ msgid "Find:" +#~ msgstr "Localizar:" + +#~ msgid "Find Previous" +#~ msgstr "Localizar anterior" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Localiza a ocorrência anterior da palavra ou frase" + +#~ msgid "Find Next" +#~ msgstr "Localizar próxima" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Localiza a próxima ocorrência da palavra ou frase" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_Diferenciar maiúsculas de minúsculas" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "" +#~ "Habilita ou desabilita a diferenciação entre maiúsculas de minúsculas" + +#~ msgid "_Window" +#~ msgstr "_Janela" + +#~ msgid "_Edit" +#~ msgstr "_Editar" + +#~ msgid "_Copy" +#~ msgstr "_Copiar" + +#~ msgid "Find _Next" +#~ msgstr "Localizar pró_xima" + +#~ msgid "Find _Previous" +#~ msgstr "Localizar _anterior" + +#~ msgid "_View" +#~ msgstr "_Ver" + +#~ msgid "Fullscreen" +#~ msgstr "Tela cheia" + +#~ msgid "_Go" +#~ msgstr "_Ir" + +#~ msgid "_Search Tab" +#~ msgstr "Aba _pesquisar" + +#~ msgid "_Contents Tab" +#~ msgstr "Aba _conteúdo" + +#~ msgid "Go to the previous page" +#~ msgstr "Vai para a página anterior" + +#~ msgid "Go to the next page" +#~ msgstr "Vai para a próxima página" + +#~ msgid "Decrease the text size" +#~ msgstr "Diminui o tamanho do texto" + +#~ msgid "Increase the text size" +#~ msgstr "Aumenta o tamanho do texto" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Focar na janela do Devhelp com o campo de pesquisa ativo" + +#~ msgid "Search in:" +#~ msgstr "Pesquisar em:" + +#~ msgid "Contents" +#~ msgstr "Conteúdo" + +#~ msgid "Search" +#~ msgstr "Pesquisar" + +#~ msgid "_File" +#~ msgstr "_Arquivo" + +#~ msgid "Use the normal text size" +#~ msgstr "Usa o tamanho normal de texto" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Sai do modo tela cheia" + +#~ msgid "Display in full screen" +#~ msgstr "Exibe em tela cheia" + +#~ msgid "Larger" +#~ msgstr "Maior" + +#~ msgid "Smaller" +#~ msgstr "Menor" + +#~ msgid "Preferences…" +#~ msgstr "Preferências..." + +#~ msgid "Fonts" +#~ msgstr "Fontes" + +#~ msgid "Show advanced search options" +#~ msgstr "Mostrar opções avançadas de pesquisa" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Mostra as opções avançadas de pesquisa." + +#~ msgid "Searching" +#~ msgstr "Pesquisando" + +#~ msgid "_Show advanced search options" +#~ msgstr "_Mostrar opções avançadas de pesquisa" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "os elementos \"name\" e \"link\" são necessários dentro de na " +#~ "linha %d, coluna %d" + +#~ msgid "Could not create book parser" +#~ msgstr "Impossível criar analisador de livro" + +#~ msgid "Could not create markup parser" +#~ msgstr "Impossível criar analisador de marcação" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp não foi compilado com suporte a zlib" diff --git a/po/quot.sed b/po/quot.sed new file mode 100644 index 0000000..0122c46 --- /dev/null +++ b/po/quot.sed @@ -0,0 +1,6 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin new file mode 100644 index 0000000..2436c49 --- /dev/null +++ b/po/remove-potcdate.sin @@ -0,0 +1,19 @@ +# 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 +} diff --git a/po/ro.gmo b/po/ro.gmo new file mode 100644 index 0000000..7950375 Binary files /dev/null and b/po/ro.gmo differ diff --git a/po/ro.po b/po/ro.po new file mode 100644 index 0000000..390fd20 --- /dev/null +++ b/po/ro.po @@ -0,0 +1,565 @@ +# Romanian translation for devhelp +# Copyright (c) 2007 Rosetta Contributors and Canonical Ltd 2007 +# This file is distributed under the same license as the devhelp package. +# Adi Roiban , https://launchpad.net/~adiroiban +# Lucian Adrian Grijincu , 2010, 2011. +# Daniel Șerbănescu , 2010. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: " +"http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&component=general\n" +"POT-Creation-Date: 2010-12-21 10:07+0000\n" +"PO-Revision-Date: 2011-03-11 11:00+0200\n" +"Last-Translator: Lucian Adrian Grijincu \n" +"Language-Team: Romanian Gnome Team \n" +"Language: ro\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < " +"20)) ? 1 : 2);;\n" +"X-Generator: Virtaal 0.6.1\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Program de ajutor pentru programatori" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:740 ../src/dh-window.c:1048 ../src/dh-window.c:1880 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Navigator documentație" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "Cărți dezactivate" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "Font pentru text cu lățime fixă" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "Font pentru text" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "Font pentru text cu lățime fixă, cum ar fi exemplele de cod." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "Font pentru text cu lățime variabilă" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "Grupează după limbă" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "Înălțime ferestră asistent" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "Înălțime ferestră principală" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "Listă de cărți dezactivate de utilizator." + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "Starea ferestrei principale maximizate" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Tab selectat: „content” sau „search”" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr "Poziția X a ferestrei asistent." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "Coordonata X a ferestrei principale" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "Poziția Y a ferestrei asistent." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "Coordonata Y a ferestrei principale" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "Înălțimea ferestrei asistent." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "Înălțimea ferestrei principale." + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "Lățime ferestrei asistent." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "Lățimea panoului pentru index și căutare." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "Lățimea ferestrei principale." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "Folosește fonturile sistemului" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "Folosește setul de fonturi implicit al sistemului." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Dacă cărțile ar trebui să fie grupate după limbă în interfața cu " +"utilizatorul" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "Dacă fereastra principală va fi pornită maximizată." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Care din taburile alese: „content” sau „search”." + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "Lățime ferestră asistent" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "Lățimea panoului de indexare și de căutare" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "Lățimea ferestrei principale" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "Poziția X a ferestrei asistent" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "Coordonata X a ferestrei principale" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "Poziția Y a ferestrei asistent" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Coordonata Y a ferestrei principale" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "Raft de cărți" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Fonts" +msgstr "Fonturi" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Preferences" +msgstr "Preferințe" + +#: ../data/ui/devhelp.builder.h:4 +msgid "_Fixed width:" +msgstr "Lățime _fixă:" + +#: ../data/ui/devhelp.builder.h:5 +msgid "_Group by language" +msgstr "_Grupează după limbă" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "Folosește font_urile sistemului" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "Lățime _variabilă:" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Asistență Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Face ca tasta F2 să arate Devhelp pentru cuvântul de la cursor" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:38 +msgid "Show API Documentation" +msgstr "Afișare documentație API" + +#: ../misc/gedit-plugin/devhelp/devhelp.py:40 +msgid "Show API Documentation for the word at the cursor" +msgstr "Afișează documentația API pentru cuvântul de la cursor" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp – Asistent" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "Carte:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "Limbă: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "Limbă: nedefinită" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Carte" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Pagină" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Cuvânt cheie" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Funcție" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Structură" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Tip" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "Caută cuvânt cheie" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "Închide orice instanță Devhelp" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "Afișează versiunea și ieși" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "Activează fereastra Devhelp cu câmpul de căutare activat" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "Caută și afișează orice rezultat în fereastra asistent" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Se aștepta „%s”, dar s-a primit „%s” la linia %d, coloana %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Spațiu de nume „%s” nevalid la linia %d, coloana %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"elementele „title”, „name”, și „link” sunt necesare la linia %d, coloana %d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" +"elementele „name”, și „link” sunt necesare în interiorul la linia %d, " +"coloana %d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"elementele „name”, și „link” sunt necesare în interiorul „%s” la linia %d, " +"coloana %d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"elementul „type” este necesar în interiorul la linia %d, coloana %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Nu se poate dezarhiva cartea „%s”: %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "Toate cărțile" + +#: ../src/dh-search.c:1117 +msgid "Search in:" +msgstr "Caută în:" + +#: ../src/dh-window.c:98 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:99 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:100 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:101 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:102 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:103 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:104 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:105 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:106 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:735 +msgid "translator_credits" +msgstr "" +"Adi Roiban\n" +"Lucian Adrian Grijincu\n" +"\n" +"Launchpad Contributions:\n" +" Adi Roiban https://launchpad.net/~adiroiban\n" +" Ionuț Jula https://launchpad.net/~ionutjula\n" +" Mihai Felseghi https://launchpad.net/~mihaifelseghi" + +#: ../src/dh-window.c:742 +msgid "A developers' help browser for GNOME" +msgstr "Navigator de documentație pentru GNOME" + +#: ../src/dh-window.c:749 +msgid "DevHelp Website" +msgstr "Pagina web Devhelp" + +#: ../src/dh-window.c:773 +msgid "_File" +msgstr "_Fișier" + +#: ../src/dh-window.c:774 +msgid "_Edit" +msgstr "_Modifică" + +#: ../src/dh-window.c:775 +msgid "_View" +msgstr "_Vizualizare" + +#: ../src/dh-window.c:776 +msgid "_Go" +msgstr "_Du-te" + +#: ../src/dh-window.c:777 +msgid "_Help" +msgstr "_Ajutor" + +#. File menu +#: ../src/dh-window.c:780 +msgid "_New Window" +msgstr "Fereastră _nouă" + +#: ../src/dh-window.c:782 +msgid "New _Tab" +msgstr "_Tab nou" + +#: ../src/dh-window.c:784 +msgid "_Print…" +msgstr "Ti_părește…" + +#: ../src/dh-window.c:796 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Caută următor" + +#: ../src/dh-window.c:798 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Caută precedent" + +#: ../src/dh-window.c:805 +msgid "Go to the previous page" +msgstr "Arată pagina precedentă" + +#: ../src/dh-window.c:808 +msgid "Go to the next page" +msgstr "Arată pagina următoare" + +#: ../src/dh-window.c:811 +msgid "_Contents Tab" +msgstr "Tab _conținut" + +#: ../src/dh-window.c:814 +msgid "_Search Tab" +msgstr "Tab cău_tare" + +#. View menu +#: ../src/dh-window.c:818 +msgid "_Larger Text" +msgstr "_Text mai mare" + +#: ../src/dh-window.c:819 +msgid "Increase the text size" +msgstr "Mărește dimensiunea textului" + +#: ../src/dh-window.c:821 +msgid "S_maller Text" +msgstr "Text mai _mic" + +#: ../src/dh-window.c:822 +msgid "Decrease the text size" +msgstr "Micșorează dimensiunea textului" + +#: ../src/dh-window.c:824 +msgid "_Normal Size" +msgstr "Dimensiune _normală" + +#: ../src/dh-window.c:825 +msgid "Use the normal text size" +msgstr "Utilizează dimensiunea normală a textului" + +#: ../src/dh-window.c:834 +msgid "Leave fullscreen mode" +msgstr "Părăsește modul pe tot ecranul" + +#: ../src/dh-window.c:841 +msgid "Display in full screen" +msgstr "Afișează pe tot ecranul" + +#. Translators: This refers to text size +#: ../src/dh-window.c:961 +msgid "Larger" +msgstr "Mai mare" + +#. Translators: This refers to text size +#: ../src/dh-window.c:964 +msgid "Smaller" +msgstr "Mai mic" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1109 +msgid "About Devhelp" +msgstr "Despre Devhelp" + +#: ../src/dh-window.c:1114 +msgid "Preferences…" +msgstr "Preferințe…" + +#: ../src/dh-window.c:1156 +msgid "Contents" +msgstr "Conținut" + +#: ../src/dh-window.c:1166 +msgid "Search" +msgstr "Caută" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "Eroare la deschiderea legăturii cerute." + +#: ../src/dh-window.c:1666 ../src/dh-window.c:1908 +msgid "Empty Page" +msgstr "Pagina goală" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Caută:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Caută precedenta apariție a șirului de caractere căutat" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Caută următoarea apariție a șirului de caractere căutat" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "M_ajuscule semnificative" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Comută căutare cu majuscule semnificative" + +#~ msgid "Enabled" +#~ msgstr "Activat" + +#~ msgid "Title" +#~ msgstr "Titlu" + +#~ msgid "Fonts" +#~ msgstr "Fonturi" diff --git a/po/ru.gmo b/po/ru.gmo new file mode 100644 index 0000000..dc4d34f Binary files /dev/null and b/po/ru.gmo differ diff --git a/po/ru.po b/po/ru.po new file mode 100644 index 0000000..504a12d --- /dev/null +++ b/po/ru.po @@ -0,0 +1,601 @@ +# translation of devhelp to Russian +# Copyright (C) 2001-2003, 2008, 2010 Free Software Foundation, Inc. +# +# +# Valek Filippov , 2001-2003. +# Yuri Kozlov , 2008. +# Leonid Kanter , 2010. +# Yuri Myasoedov , 2012-2014. +# +msgid "" +msgstr "" +"Project-Id-Version: ru\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2016-03-17 16:25+0000\n" +"PO-Revision-Date: 2016-03-17 21:45+0300\n" +"Last-Translator: Yuri Myasoedov \n" +"Language-Team: русский \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Poedit 1.6.9\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Программа справки для разработчиков" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp — это браузер документации по API. Devhelp предоставляет простую " +"навигацию по библиотекам, позволяет выполнять поиск по функциям, структурам " +"и макросам. Браузер использует интерфейс со вкладками и с возможностью " +"печати." + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp интегрируется с другими приложениями, например с Glade, Anjuta и " +"Geany." + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Поиск и чтение документации разработчика" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "документация;информация;руководство;разработчик;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Главное окно в развёрнутом состоянии" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Разворачивать ли главное окно при запуске." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Ширина главного окна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "Ширина главного окна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Высота главного окна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "Высота главного окна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Положение главного окна по оси X" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "Положение главного окна по оси X." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Положение главного окна по оси Y" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "Положение главного окна по оси Y." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Ширина панели содержания и поиска" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "Ширина панели содержания и поиска." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Выбранная вкладка: «содержание» или «поиск»" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Какая из вкладок выбрана: «содержание» или «поиск»." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Выключенные книги" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "Список книг, выключенных пользователем." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Группировать по языкам" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Должны ли книги быть сгруппированы в интерфейсе по языкам" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "Разворачивать ли вспомогательное окно" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "Разворачивать ли вспомогательное окно." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Ширина окна помощника" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "Ширина главного окна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Высота окна помощника" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "Высота окна помощника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Положение окна помощника по оси X" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "Положение окна помощника по оси X." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Положение окна помощника по оси Y" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "Положение окна помощника по оси Y." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Использовать системные шрифты" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Использовать системные шрифты по умолчанию." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Шрифт для текста" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Шрифт для текста с переменной шириной." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Шрифт для текста фиксированной ширины" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Шрифт для текста с фиксированной шириной, например, фрагментов кода." + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Поддержка Devhelp" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Вызывать Devhelp по нажатию F2 для слова под курсором" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Показать документацию по API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "_Создать окно" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_Параметры" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "Комбинации клавиш" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "_О приложении" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_Завершить" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "Основные" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Перейти к общему поиску" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Найти на текущей странице" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Открыть новое окно" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Открыть новую вкладку" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "Показать или скрыть боковую панель" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Назад" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Вперёд" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "Печать" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Закрыть текущее окно" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Закрыть все окна" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Масштаб" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Увеличить" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Уменьшить" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Сбросить масштаб" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "Приложение для просмотра справки GNOME для разработчиков" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"Валек Филиппов \n" +"Сергей Сафонов \n" +"Юрий Мясоедов , 2014." + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "Веб-сайт Devhelp" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "Открывает новое окно Devhelp" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "Поиск по ключевому слову" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "КЛЮЧЕВОЕ СЛОВО" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "Поиск и отображение любого совпадения в окне помощника" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "Показать версию и выйти" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "Выйти из Devhelp" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Помощник" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Книга:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "Язык: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "Язык: не определён" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "Книга" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "Страница" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "Ключевое слово" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "Функция" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "Макрос" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Перечисление" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "Тип" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "Свойство" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "Сигнал" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Ожидалось «%s», получено «%s» в строке %d, столбец %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Недопустимое пространство имён «%s» в строке %d, столбце %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "Элементы «title», «name» и «link» требуются в строке %d, столбец %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "Элементы «name» и «link» требуются в в строке %d, столбец %d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "Элементы «name» и «link» требуются в «%s» в строке %d, столбец %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "Элемент «type» требуется в в строке %d, столбце %d" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Не удалось распаковать книгу «%s»: %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Параметры" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Группировать по языкам" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Включено" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Заголовок" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Книжная полка" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Использовать системные шрифты" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_Переменная ширина:" + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_Постоянная ширина:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Шрифты" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "Ошибка при открытии запрошенной ссылки." + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "_Закрыть" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "Пустая страница" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "Новая _вкладка" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_Печать" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_Найти" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "У_величить текст" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "У_меньшить текст" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "О_бычный размер" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "_Боковая панель" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "_О приложении" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "Назад" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "Вперёд" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" diff --git a/po/rw.gmo b/po/rw.gmo new file mode 100644 index 0000000..f495cd9 Binary files /dev/null and b/po/rw.gmo differ diff --git a/po/rw.po b/po/rw.po new file mode 100644 index 0000000..ec34042 --- /dev/null +++ b/po/rw.po @@ -0,0 +1,320 @@ +# translation of devhelp to Kinyarwanda. +# Copyright (C) 2005 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp 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.. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp HEAD\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2005-04-01 10:35-0700\n" +"PO-Revision-Date: 2005-03-31 20:55-0700\n" +"Last-Translator: Steve Murphy \n" +"Language-Team: Kinyarwanda \n" +"Language: rw\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#: devhelp.desktop.in.in.h:1 +#, fuzzy +msgid "Developer's Help program" +msgstr "Porogaramu" + +#: devhelp.desktop.in.in.h:2 src/dh-window.c:449 ui/devhelp.glade.h:4 +msgid "Devhelp" +msgstr "" + +#: devhelp.keys.in.h:1 +msgid "Devhelp Book" +msgstr "" + +#: src/dh-main.c:89 +#, fuzzy +msgid "Specify the size and location of the window" +msgstr "i Ingano Na Ahantu Bya i Idirishya" + +#: src/dh-main.c:90 +msgid "WIDTHxHEIGHT+XOFF+YOFF" +msgstr "" + +#: src/dh-main.c:98 +#, fuzzy +msgid "Search for a function" +msgstr "kugirango a Umumaro" + +#: src/dh-main.c:107 +msgid "Quit any running Devhelp" +msgstr "" + +#: src/dh-parser.c:105 src/dh-parser.c:182 src/dh-parser.c:229 +#, fuzzy, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "Itegerejwe ku Umurongo Inkingi" + +#: src/dh-parser.c:121 +#, fuzzy, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "ku Umurongo Inkingi" + +#: src/dh-parser.c:150 +#, fuzzy, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "Umutwe Izina: Na Ihuza Ibintu Bya ngombwa ku Umurongo Inkingi" + +#: src/dh-parser.c:203 +#, fuzzy, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "Izina: Na Ihuza Ibintu Bya ngombwa Mo Imbere ku Umurongo Inkingi" + +#: src/dh-parser.c:251 +#, fuzzy, c-format +msgid "" +"name and link elements are required inside on line %d, column %d" +msgstr "" +"Izina: Na Ihuza Ibintu Bya ngombwa Mo Imbere Umumaro ku Umurongo Inkingi" + +#: src/dh-parser.c:338 src/dh-parser.c:424 +#, fuzzy +msgid "Could not create book parser" +msgstr "OYA Kurema Igitabo" + +#: src/dh-parser.c:348 src/dh-parser.c:434 +#, fuzzy +msgid "Could not create markup parser" +msgstr "OYA Kurema" + +#: src/dh-parser.c:480 +#, fuzzy, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Igitabo" + +# #-#-#-#-# so3.pot (PACKAGE VERSION) #-#-#-#-# +# so3/src\svuidlg.src:MD_INSERT_OLEOBJECT.BTN_FILEPATH.text +# #-#-#-#-# so3.pot (PACKAGE VERSION) #-#-#-#-# +# so3/src\svuidlg.src:MD_INSERT_OBJECT_APPLET.BTN_CLASS.text +#: src/dh-search.c:418 +#, fuzzy +msgid "_Search:" +msgstr "Gushakisha..." + +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\app\app.src:STR_REGION_DEFNAME.text +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\chrdlg\ccoll.src:TP_CONDCOLL.STR_REGIONS.4.text +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\dialog\regionsw.src:MD_EDIT_REGION.FL_NAME.text +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\dialog\regionsw.src:DLG_INSERT_SECTION.1.TP_INSERT_SECTION.text +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\ribbar\workctrl.src:RID_SCROLL_NAVIGATION_WIN.ST_REG.text +# #-#-#-#-# sw.pot (PACKAGE VERSION) #-#-#-#-# +# sw/source\ui\utlui\utlui.src:STR_CONTENT_TYPE_SINGLE_REGION.text +#: src/dh-search.c:462 +msgid "Section" +msgstr "Icyiciro" + +# sc/source\ui\src\globstr.src:RID_GLOBSTR.STR_HFCMD_FILE.text +#: src/dh-window.c:110 +#, fuzzy +msgid "_File" +msgstr "IDOSIYE" + +# #-#-#-#-# basctl.pot (PACKAGE VERSION) #-#-#-#-# +# basctl/source\basicide\basidesh.src:RID_BASICMENU.MN_EDIT.text +# #-#-#-#-# basctl.pot (PACKAGE VERSION) #-#-#-#-# +# basctl/source\basicide\basidesh.src:RID_BASICPLUGINMENU.MN_PLEDIT.text +# #-#-#-#-# basctl.pot (PACKAGE VERSION) #-#-#-#-# +# basctl/source\basicide\macrodlg.src:RID_MACROCHOOSER.RID_PB_EDIT.text +# #-#-#-#-# basctl.pot (PACKAGE VERSION) #-#-#-#-# +# basctl/source\basicide\moduldlg.src:RID_TP_MODULS.RID_PB_EDIT.text +# #-#-#-#-# basctl.pot (PACKAGE VERSION) #-#-#-#-# +# basctl/source\basicide\moduldlg.src:RID_TP_LIBS.RID_PB_EDIT.text +#: src/dh-window.c:111 +#, fuzzy +msgid "_Edit" +msgstr "Guhindura" + +#: src/dh-window.c:112 ui/devhelp.glade.h:10 +#, fuzzy +msgid "_Go" +msgstr "Gyayo" + +#: src/dh-window.c:113 +#, fuzzy +msgid "_Help" +msgstr "Ifashayobora" + +#: src/dh-window.c:297 +#, fuzzy, c-format +msgid "Cannot set UI: %s" +msgstr "Gushyiraho" + +# #-#-#-#-# sc.pot (PACKAGE VERSION) #-#-#-#-# +# sc/source\ui\dbgui\validate.src:TP_VALIDATION_INPUTHELP.FL_CONTENT.text +# #-#-#-#-# sc.pot (PACKAGE VERSION) #-#-#-#-# +# sc/source\ui\dbgui\validate.src:TP_VALIDATION_ERROR.FL_CONTENT.text +# #-#-#-#-# sc.pot (PACKAGE VERSION) #-#-#-#-# +# sc/source\ui\navipi\navipi.src:RID_SCDLG_NAVIGATOR.TBX_CMD.IID_ZOOMOUT.text +# #-#-#-#-# sc.pot (PACKAGE VERSION) #-#-#-#-# +# sc/source\ui\navipi\navipi.src:SCSTR_CONTENT_ROOT.text +#: src/dh-window.c:357 ui/devhelp.glade.h:3 +msgid "Contents" +msgstr "Ibigize" + +# #-#-#-#-# offmgr.pot (PACKAGE VERSION) #-#-#-#-# +# offmgr/source\offapp\dialog\inetdlg.src:RID_OFADLG_INTERNET.1.RID_SVXPAGE_INET_SEARCH.text +# #-#-#-#-# offmgr.pot (PACKAGE VERSION) #-#-#-#-# +# offmgr/source\offapp\dialog\treeopt.src:RID_OFADLG_OPTIONS_TREE_PAGES.SID_INET_DLG.3.text +#: src/dh-window.c:368 +msgid "Search" +msgstr "Gushaka" + +#: src/dh-window.c:446 +msgid "translator_credits" +msgstr "" + +#: src/dh-window.c:451 +#, fuzzy +msgid "A developer's help browser for GNOME 2" +msgstr "A Ifashayobora Mucukumbuzi kugirango 2." + +#: devhelp.schemas.in.h:1 +#, fuzzy +msgid "Font for fixed text" +msgstr "kugirango BIHAMYE Umwandiko" + +#: devhelp.schemas.in.h:2 +#, fuzzy +msgid "Font for text" +msgstr "kugirango Umwandiko" + +#: devhelp.schemas.in.h:3 +#, fuzzy +msgid "Font for text with fixed width." +msgstr "kugirango Umwandiko Na: BIHAMYE Ubugari" + +#: devhelp.schemas.in.h:4 +#, fuzzy +msgid "Font for text with variable width." +msgstr "kugirango Umwandiko Na: IMPINDURAGACIRO Ubugari" + +#: devhelp.schemas.in.h:5 +#, fuzzy +msgid "Height of main window" +msgstr "Bya Idirishya" + +#: devhelp.schemas.in.h:6 +#, fuzzy +msgid "Location of the paned" +msgstr "Bya i" + +#: devhelp.schemas.in.h:7 +#, fuzzy +msgid "Main window maximized state" +msgstr "Idirishya Leta" + +#: devhelp.schemas.in.h:8 +#, fuzzy +msgid "The X position of the main window." +msgstr "Ibirindiro Bya i Idirishya" + +#: devhelp.schemas.in.h:9 +#, fuzzy +msgid "The Y position of the main window." +msgstr "Ibirindiro Bya i Idirishya" + +#: devhelp.schemas.in.h:10 +#, fuzzy +msgid "The height of the main window." +msgstr "Ubuhagarike Bya i Idirishya" + +#: devhelp.schemas.in.h:11 +#, fuzzy +msgid "The location of the paned separator." +msgstr "Ahantu Bya i Mutandukanya" + +#: devhelp.schemas.in.h:12 +#, fuzzy +msgid "The width of the main window." +msgstr "Ubugari Bya i Idirishya" + +#: devhelp.schemas.in.h:13 +#, fuzzy +msgid "Use system fonts" +msgstr "Sisitemu Imyandikire" + +#: devhelp.schemas.in.h:14 +#, fuzzy +msgid "Use the system default fonts." +msgstr "i Mburabuzi Imyandikire" + +#: devhelp.schemas.in.h:15 +#, fuzzy +msgid "Whether the main window should start maximized or not." +msgstr "i Idirishya Gutangira Cyangwa OYA" + +#: devhelp.schemas.in.h:16 +#, fuzzy +msgid "Width of the main window" +msgstr "Bya i Idirishya" + +#: devhelp.schemas.in.h:17 +#, fuzzy +msgid "X position of main window" +msgstr "Ibirindiro Bya Idirishya" + +#: devhelp.schemas.in.h:18 +#, fuzzy +msgid "Y position of main window" +msgstr "Ibirindiro Bya Idirishya" + +#: ui/devhelp.glade.h:1 +msgid " " +msgstr "" + +#: ui/devhelp.glade.h:2 +#, fuzzy +msgid "Fonts" +msgstr ", 2012. +# Danishka Navin , 2012. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2012-02-17 18:51+0000\n" +"PO-Revision-Date: 2012-02-18 17:48+0530\n" +"Last-Translator: Danishka Navin \n" +"Language-Team: Sinhala \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: si\n" +"X-Generator: Lokalize 1.2\n" +"Plural-Forms: nplurals=2; plural=n != 1;\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1868 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "දියුණු කරන්නන්ගේ උපකාරක වැඩසටහන" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "ලිපිගොනු විමසීම/ බ්‍රව්සරය" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Main window maximized state" +msgstr "ප්‍රධාන වින්ඩෝව පුලුල්තිර අවස්ථාවේ.." + +#: ../data/devhelp.schemas.in.h:2 +msgid "Whether the main window should start maximized." +msgstr "ප්‍රධාන වින්ඩෝව පුළුල් තිරයේ ඇරඹිය යුතුද යන්න වග." + +#: ../data/devhelp.schemas.in.h:3 +msgid "Width of the main window" +msgstr "ප්‍රධාන වින්ඩෝවේ පළල" + +#: ../data/devhelp.schemas.in.h:4 +msgid "The width of the main window." +msgstr "ප්‍රධාන වින්ඩෝවේ පළල" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "ප්‍රධාන වින්ඩෝවේ උස" + +#: ../data/devhelp.schemas.in.h:6 +msgid "The height of the main window." +msgstr "ප්‍රධාන වින්ඩෝවේ උස" + +#: ../data/devhelp.schemas.in.h:7 +msgid "X position of main window" +msgstr "ප්‍රධාන වින්ඩෝවේ X කන්දාංක" + +#: ../data/devhelp.schemas.in.h:8 +msgid "The X position of the main window." +msgstr "ප්‍රධාන වින්ඩෝවේ X කන්දාංක" + +#: ../data/devhelp.schemas.in.h:9 +msgid "Y position of main window" +msgstr "ප්‍රධාන වින්ඩෝවේ Y කන්දාංක" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "ප්‍රධාන වින්ඩෝවේ X කන්දාංක" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Width of the assistant window" +msgstr "සහකාරක වින්ඩෝවේ පළල" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the assistant window." +msgstr "සහකාරක වින්ඩෝවේ පළල" + +#: ../data/devhelp.schemas.in.h:13 +msgid "Height of assistant window" +msgstr "සහකාරක වින්ඩෝවේ උස" + +#: ../data/devhelp.schemas.in.h:14 +msgid "The height of the assistant window." +msgstr "සහකාරක වින්ඩෝවේ පළල" + +#: ../data/devhelp.schemas.in.h:15 +msgid "X position of assistant window" +msgstr "සහකාරක වින්ඩෝවේ X කන්දාංක" + +#: ../data/devhelp.schemas.in.h:16 +msgid "The X position of the assistant window." +msgstr "සහකාරක වින්ඩෝවේ X කන්දාංක" + +#: ../data/devhelp.schemas.in.h:17 +msgid "Y position of assistant window" +msgstr "සහකාරක වින්ඩෝවේ Y කන්දාංක" + +#: ../data/devhelp.schemas.in.h:18 +msgid "The Y position of the assistant window." +msgstr "සහකාරක වින්ඩෝවේ Y කන්දාංක" + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "සුචියේ හා සෙවුම් කොටුවේ පළල" + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the index and search pane." +msgstr "සුචියේ හා සෙවුම් කොටුවේ පළල" + +#: ../data/devhelp.schemas.in.h:21 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" + +#: ../data/devhelp.schemas.in.h:23 +msgid "Books disabled" +msgstr "පොත් අක්‍රිය කර ඇත" + +#: ../data/devhelp.schemas.in.h:24 +msgid "List of books disabled by the user." +msgstr "පොත් ලේකනය පරිශීලකයා විසින් අක්‍රිය කර ඇත" + +#: ../data/devhelp.schemas.in.h:25 +msgid "Group by language" +msgstr "භාෂාව අනුපිලිවලට ගොනු ගත කරන්න" + +#: ../data/devhelp.schemas.in.h:26 +msgid "Whether books should be grouped by language in the UI" +msgstr "පොත් භාෂා අනුව ගොනුගත කල යුතුද යන්න වග" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Use system fonts" +msgstr "පද්ධතියේ ඇති අකුරු රටා භාවිතා කරන්න" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Use the system default fonts." +msgstr "පද්ධතියේ ඇති මුලික අකුරු රටා භාවිතා කරන්න" + +#: ../data/devhelp.schemas.in.h:29 +msgid "Font for text" +msgstr "වචන කාණ්ඩය සඳහා අකුරු රටාව" + +#: ../data/devhelp.schemas.in.h:30 +msgid "Font for text with variable width." +msgstr "විචල්‍ය දිගක් ඇති වචන කාණ්ඩයට අකුරු රටා" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Font for fixed width text" +msgstr "අචල දිගක් ඇති වචන කාණ්ඩයට අකුරු රටා" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "කේත උදාහරණ වැනි අචල දිගක් ඇති වචන කාණ්ඩයට අකුරු රටා" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Preferences" +msgstr "" + +#: ../data/ui/devhelp.builder.h:2 +msgid "_Group by language" +msgstr "_භාෂා වශයෙන් ගොනුගත කරන්න" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Enabled" +msgstr "සක්‍රිය කර ඇත" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Title" +msgstr "මාතෘකාව" + +#: ../data/ui/devhelp.builder.h:5 +msgid "Book Shelf" +msgstr "පොත් රාක්කය" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "_පද්ධතියේ ඇති අකුරු රටා භාවිත කරන්න" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "_විචල්‍ය පළල" + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Fixed width:" +msgstr "_අචල පළල" + +#: ../data/ui/devhelp.builder.h:9 +msgid "Fonts" +msgstr "අකුරු රටා" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "DevHelp උපකාර" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "F2 මගින් කසරය ඇති වචනයට DevHelp උපකාර ලබා දෙයි" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "API ලිපි ලේකන පෙන්වයි" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "කසරය ඇති වචනයට API ලිපි ලේකන පෙන්වයි" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "DevHelp සහයක" + +#: ../src/dh-assistant-view.c:337 +msgid "Book:" +msgstr "පොත:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "භාෂාව: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "භාෂාව: අර්ථදක්වා නැත" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "පොත" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "පිටුව" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "මුල පදය" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "කාර්‍ය" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "විශාල" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "වර්ගය" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "මුල පදයක් සොයන්න" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "ධාවනය වන ඕනෑම DevHelp උපකාරයක් විසන්ධි කරන්න" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "අනුවාදය පෙන්වා ඉවත්වන්න" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "සක්‍රිය සෙවුම් ක්ෂේත්‍රය සහිත වින්ඩෝව වෙත යොමුවන්න" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column %" +"d" +msgstr "" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "සියලු පොත්" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "තුල සොයන්න" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "පරිවර්තකයාගේ_සම්මාන" + +#: ../src/dh-window.c:733 +msgid "A developers' help browser for GNOME" +msgstr "GNOME සඳහා විකෂකයන්ගේ බ්‍රව්සරය" + +#: ../src/dh-window.c:740 +msgid "DevHelp Website" +msgstr "DevHelp වෙබ් අඩවිය" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "ගොනුව (_F)" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "සැකසුම් (_E)" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "දසුන (_V)" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "යන්න (_G)" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "උදව් (_H)" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "නව කවුළුව (_N)" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "නව ටැබය (_T)" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "මුද්‍රණය... (_P)" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "පසුවට සොයන්න" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "ඉදිරියට සොයන්න" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "පෙර පිටුව වෙත යන්න" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "පසු පිටුව වෙත යන්න" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "අන්තර්ගත ටැබය (_C)" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "සෙවුම් ටැබය (_S)" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "විශාල අකුරු (_L)" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "අකුරු ප්‍රමාණය වැඩි කරන්න" + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "කුඩා අකුරු (_m)" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "අකුරු ප්‍රමාණය අඩු කරන්න" + +#: ../src/dh-window.c:815 +msgid "_Normal Size" +msgstr "සාමාන්‍ය ප්‍රමාණය (_N)" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "අකුරු ප්‍රමාණය සාමාන්‍ය කරන්න" + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "මුලුතිර මොඩය හැර යන්න" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "මුලුතිරයේ පෙන්වන්න" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +msgid "Larger" +msgstr "විශාල" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +msgid "Smaller" +msgstr "කුඩා" + +#: ../src/dh-window.c:1159 +msgid "Contents" +msgstr "අන්තර්ගතය" + +#: ../src/dh-window.c:1169 +msgid "Search" +msgstr "සෙවීම" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "අයදුම් කරන ලද බන්ධයේ(link) දෝෂයක් පවතී" + +#: ../src/dh-window.c:1657 ../src/dh-window.c:1896 +msgid "Empty Page" +msgstr "හිස් පිටුව" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "සොයන්න:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "පෙර සෙවුම් වචනය සොයන්න" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "පසු සෙවුම් වචනය සොයන්න" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "" + diff --git a/po/sk.gmo b/po/sk.gmo new file mode 100644 index 0000000..6ffd840 Binary files /dev/null and b/po/sk.gmo differ diff --git a/po/sk.po b/po/sk.po new file mode 100644 index 0000000..0598e25 --- /dev/null +++ b/po/sk.po @@ -0,0 +1,625 @@ +# Slovak translation for devhelp. +# Copyright (C) 2001-2005, 2010-2012 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Marcel Telka , 2001-2005. +# Roman Mátyus , 2010-2012. +# Dušan Kazik , 2015. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-07-27 13:58+0000\n" +"PO-Revision-Date: 2017-09-03 12:43+0200\n" +"Last-Translator: Dušan Kazik \n" +"Language-Team: slovenčina <>\n" +"Language: sk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 1 : (n>=2 && n<=4) ? 2 : 0;\n" +"X-Generator: Poedit 2.0.3\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:807 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Program pomocníka pre vývojárov" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp je prehliadač dokumentácie API. Poskytuje jednoduchý spôsob pre " +"prechádzanie knižnicami, vyhľadávanie podľa funkci, štruktúry, alebo makra. " +"Poskytuje rozhranie so záložkami a umožňuje tlačiť výsledky." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp je integrovaný s inými aplikáciami, ako sú Glade, Anjuta, alebo " +"Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Prehliadač dokumentácie" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentácia;informácie;návod;vývojár;api;rozhranie;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Maximalizovaný stav hlavného okna" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Určuje, či sa má hlavné okno spustiť maximalizované." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Šírka hlavného okna" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Šírka hlavného okna." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Výška hlavného okna" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Výška hlavného okna." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Umiestnenie hlavného okna v smere osi X" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "Umiestnenie hlavného okna v smere osi X." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Umiestnenie hlavného okna v smere osi Y" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "Umiestnenie hlavného okna v smere osi Y." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Šírka indexu a vyhľadávacieho panelu" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "Šírka indexu a vyhľadávacieho panelu." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Zakázané knihy" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Zoznam kníh zakázaných používateľom." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Zoskupiť podla jazyka" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "" +"Určuje, či by sa mali knihy v používateľskom rozhraní zoskupovať podla jazyka" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Určuje, či má byť okno asistenta maximalizované" + +# nahlasene +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Určuje, či má byť okno asistenta maximalizované." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Šírka okna asistenta" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "Šírka okna asistenta." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Výška okna asistenta" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Výška okna asistenta." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "Umiestnenie okna asistenta v smere osi X" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "Umiestnenie okna asistenta v smere osi X." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Umiestnenie okna asistenta v smere osi Y" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "Umiestnenie okna asistenta v smere osi Y." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Použiť systémové písma" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Použiť predvolené systémové písma." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Písmo pre text" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Písmo pre text s premenlivou šírkou." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Písmo pre pevnú šírku textu" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "Písmo pre text s pevnou šírkou, napríklad ukážky kódu." + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Podpora pre Devhelp" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Zobraziť dokumentáciu API" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Nové _okno" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "Nas_tavenia" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Klávesové skratky" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "_O programe" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "U_končiť" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Všeobecné" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Zameranie globálneho vyhľadávania" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Nájdenie v aktuálnej stránke" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Otvorenie nového okna" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Otvorenie novej karty" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Prepnutie viditeľnosti bočného panelu" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Prejdenie späť" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Prejdenie dopredu" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Tlač" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zatvorenie aktuálneho okna" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zatvorenie všetkých okien" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Priblíženie" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zväčšenie" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zmenšenie" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Vynulovanie priblíženia" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "Prehliadač pomocníka pre vývojárov prostredia GNOME" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "" +"Marcel Telka \n" +"Roman Mátyus \n" +"Dušan Kazik " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Webová stránka Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Otvoriť nové okno Devhelp" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Vyhľadať kľúčové slovo" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "KĽÚČOVÉ SLOVO" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Nájsť a zobraziť každý výskyt v okne asistenta" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Zobraziť verziu a ukončiť" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Ukončiť každý bežiaci Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — asistent" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Kniha:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Jazyk: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Jazyk: Nedefinovaný" + +#: src/dh-book-tree.c:648 +msgid "_Collapse All" +msgstr "Z_baliť všetko" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Kniha" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Strana" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Kľúčové slovo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Funkcia" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Štruktúra" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Makro" + +# Podľa komentára i18n to radšej ponechávam nepreložené. Nateraz. +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Typ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Vlastnosť" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Signál" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Nastavenia" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Zoskupiť podla jazyka" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Povolené" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titulok" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Knižnica" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "Použiť _systémové písma" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Premenli_vá šírka: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Pevná šírka:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Písma" + +#: src/dh-window.c:75 +msgid "50%" +msgstr "50 %" + +#: src/dh-window.c:76 +msgid "75%" +msgstr "75 %" + +#: src/dh-window.c:77 +msgid "100%" +msgstr "100 %" + +#: src/dh-window.c:78 +msgid "125%" +msgstr "125 %" + +#: src/dh-window.c:79 +msgid "150%" +msgstr "150 %" + +#: src/dh-window.c:80 +msgid "175%" +msgstr "175 %" + +#: src/dh-window.c:81 +msgid "200%" +msgstr "200 %" + +#: src/dh-window.c:82 +msgid "300%" +msgstr "300 %" + +#: src/dh-window.c:83 +msgid "400%" +msgstr "400 %" + +#: src/dh-window.c:1029 +msgid "Error opening the requested link." +msgstr "Chyba pri otváraní požadovaného odkazu." + +#: src/dh-window.c:1346 +msgid "_Close" +msgstr "_Zavrieť" + +#: src/dh-window.c:1364 src/dh-window.c:1545 +msgid "Empty Page" +msgstr "Prázdna strana" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "_Bočný panel" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "_Tlačiť" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Nájsť" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "_Väčší text" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "_Menší text" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "_Normálna veľkosť" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Bočný panel" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "_O programe Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Späť" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Dopredu" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Nová karta" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Zvolená karta: „obsah“ (obsah) alebo „search“ (hľadanie)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Ktorá z týchto kariet je vybraná: „content“ (obsah) alebo " +#~ "„search“ (hľadanie)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Očakávané „%s“, vyskytlo sa „%s“ na riadku %d, stĺpci %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Neplatný menný priestor „%s“ na riadku %d, stĺpci %d" + +# Sú to názvy elementov, nie je dôvod na ich prekladanie +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "Elementy „title“, „name“ a „link“ sú vyžadované na riadku %d, stĺpci %d" + +# Sú to názvy elementov, nie je dôvod na ich prekladanie +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementy „name“ a „link“ sú vyžadované vo vnútri na riadku %d, " +#~ "stĺpci %d" + +# Sú to názvy elementov, nie je dôvod na ich prekladanie +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementy „name“ a „link“ sú vyžadované vo vnútri „%s“ na riadku %d, " +#~ "stĺpci %d" + +# Sú to názvy elementov, nie je dôvod na ich prekladanie +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "Element „type“ je vyžadovaný vo vnútri na riadku %d, stĺpci %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Nedá sa rozbaliť knihu „%s“: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Bočný panel" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Zariadi, že F2 vyvolá Devhelp pre slovo, na ktorom je kurzor" + +#~| msgid "" +#~| "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~| "target=devhelp.png" +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Zobraziť dokumentáciu API pre slovo, na ktorom je kurzor" + +#~ msgid "Current" +#~ msgstr "Aktuálne" + +#~ msgid "All Books" +#~ msgstr "Všetky knihy" diff --git a/po/sl.gmo b/po/sl.gmo new file mode 100644 index 0000000..7e7efdf Binary files /dev/null and b/po/sl.gmo differ diff --git a/po/sl.po b/po/sl.po new file mode 100644 index 0000000..50bcaf0 --- /dev/null +++ b/po/sl.po @@ -0,0 +1,720 @@ +# Slovenian translations for devhelp. +# Copyright (C) 2005-2007 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# +# Matej Urbančič , 2007–2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-03-26 11:45+0000\n" +"PO-Revision-Date: 2018-03-27 21:36+0200\n" +"Last-Translator: Matej Urbančič \n" +"Language-Team: Slovenian GNOME Translation Team \n" +"Language: sl_SI\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=(n%100==1 ? 1 : n%100==2 ? 2 : n%100==3 || n" +"%100==4 ? 3 : 0);\n" +"X-Poedit-SourceCharset: utf-8\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Brskalnik dokumentacije API, namenjen razvijalcem programske opreme." + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Program Devhelp je brskalnik dokumentacije API, namenjen razvijalcem " +"programske opreme. Omogoča hitro in enostavno pregledovanje knjižnic, " +"iskanje funkcij, zgradbe ali makra." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentacijo je treba namestiti krajevno, da uporaba programa Devhelp ni " +"odvisna od omrežne povezave." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Program Devhelp uporablja izvorno sistem GTK-Doc, zato so knjižnice GTK+ in " +"GNOME odlično podprte. Podprte pa so lahko tudi druga razvojna okolja, če je " +"le dokumentacija API na voljo v zapisu HTML in je ustvarjena datoteka kazala " +"*.devhelp2." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Program Devhelp je vključen v druge programe, kot so Glade, Anjuta ali " +"Geany, na voljo pa so tudi vstavki za različne urejevalnike besedil (gedit, " +"Vim, Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Pregledovalnik dokumentacije API" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentacija;podrobnosti;podatki;priročnik;razvoj;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Razpeto glavno okno" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Ali naj bo glavno okno ob zagonu razpeto." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Širina glavnega okna" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Širina glavnega okna." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Višina glavnega okna" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Višina glavnega okna." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Širina indeksa in iskalnega pladnja." + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Širina kazala in iskalnega pladnja." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Onemogočene knjige" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Seznam knjig, ki so privzeto onemogočene" + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Združi po jeziku" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Ali naj se knjige združujejo v skupine po jeziku" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Širina okna pomočnika" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Širina okna pomočnika." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Višina okna pomočnika" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Višina okna pomočnika." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Uporabi sistemske pisave" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Uporabi privzete sistemske pisave." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Pisava za besedilo" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Pisava za besedilo s spremenljivo širino." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Pisava z določeno širino" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Pisava za besedilo z določeno širino, kot so vzorci kode." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp podpora" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Pokaži API dokumentacijo" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "Matej Urbančič " + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Spletišče DevHelp" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Odpre novo okno Devhelp" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Iskanje ključne besede" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "Ključna beseda" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Poišči in prikaži vse zadetke v oknu pomočnika" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Pokaži pomoč in končaj program" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Končaj zagnani Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp - pomočnik" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Knjiga:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Jezik: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Jezik: nedoločen" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Zloži vse" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Knjiga" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Stran" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Ključna beseda" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Vrsta" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Lastnost" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Možnosti" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Združi po jeziku" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Omogočeno" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Naslov" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Knjižna polica" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Uporabi sistemske pisave" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Spremenljiva širina:" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Določena širina:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Pisave" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Napaka med odpiranjem zahtevane povezave." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Prazna stran" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Bočno _okno" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Natisni" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Najdi" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Večja pisava" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Manjša pisava" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Običajna pisava" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Novo _okno" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Možnosti" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Tipkovne bližnjice" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "Pomo_č" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_O programu" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Končaj" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Nazaj" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Naprej" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Nov _zavihek" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Splošno" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Osredotoči se na globalno iskanje" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Najdi na trenutni strani" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Odpri novo okno" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Odpri nov zavihek" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Preklopi vidnost stranskega okna" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Nazaj" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Naprej" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Natisni" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zapri trenutno okno" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zapri vsa okna" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Približanje" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Približaj" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Oddalji" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Ponastavi približanje" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_O programu" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Zapri" + +#~ msgid "Side _Panel" +#~ msgstr "Bočno _okno" + +#~ msgid "Developer’s Help program" +#~ msgstr "Program za pomoč razvijalcem" + +#~ msgid "X position of main window" +#~ msgstr "X položaj glavnega okna" + +#~ msgid "The X position of the main window." +#~ msgstr "X položaj glavnega okna" + +#~ msgid "Y position of main window" +#~ msgstr "Y položaj glavnega okna" + +#~ msgid "The Y position of the main window." +#~ msgstr "Y položaj glavnega okna." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Ali naj bo okno pomočnika razpeto" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Ali naj bo okno pomočnika razpeto." + +#~ msgid "X position of assistant window" +#~ msgstr "X položaj okna pomočnika" + +#~ msgid "The X position of the assistant window." +#~ msgstr "X položaj okna pomočnika" + +#~ msgid "Y position of assistant window" +#~ msgstr "Y položaj okna pomočnika" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Y položaj okna pomočnika" + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Pregledovalnik vsebin pomoči za razvijalce okolja GNOME" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Izbrani zavihek: \"vsebina\" ali \"iskanje\"" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Kateri zavihek je izbran: \"vsebina\" ali \"iskanje\"." + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Tipka F2 prikaže pomoč Devhelp za besedo ob kazalki" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Pričakovano '%s', vpisano '%s' v vrstici %d, stolpec %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Neveljaven imenski prostor '%s' v vrstici %d, stolpec %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "\"title\" (naslov), \"name\" (ime) in \"link\" (povezava) predmeta so " +#~ "zahtevani v vrstici %d in stolpcu %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"ime\" in \"povezava\" predmeta sta zahtevana znotraj v vrstici %d " +#~ "in stolpcu %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "\"ime\" in\"povezava\" predmeta sta zahtevana znotraj '%s' v vrstici %d " +#~ "in stolpcu %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "" +#~ "\"vrstni\" element je zahtevan znotraj v vrstici %d in " +#~ "stolpcu %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Ni mogoče razširiti knjige '%s': %s" + +#~ msgid "_Side pane" +#~ msgstr "Stranski _pladenj" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "DevHelp Website" +#~ msgstr "Spletišče Devhelp" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Pokaži API dokumentacijo za besedo ob kazalki" + +#~ msgid "Current" +#~ msgstr "Trenutna" + +#~ msgid "All Books" +#~ msgstr "Vse knjige" + +#~ msgid "Find:" +#~ msgstr "Najdi:" + +#~ msgid "Find Previous" +#~ msgstr "Najdi predhodne" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Najdi predhodno ponovitev iskanega niza" + +#~ msgid "Find Next" +#~ msgstr "Najdi naslednje" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Najdi naslednjo ponovitev iskanega niza" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_Razlikovanje velikosti črk" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Preklopi iskanje z razlikovanjem velikih in malih črk" + +#~ msgid "_Window" +#~ msgstr "_Okno" + +#~ msgid "_Edit" +#~ msgstr "_Uredi" + +#~ msgid "_Copy" +#~ msgstr "_Kopiraj" + +#~ msgid "Find _Next" +#~ msgstr "Najdi _naslednje" + +#~ msgid "Find _Previous" +#~ msgstr "Najdi _predhodne" + +#~ msgid "_View" +#~ msgstr "_Pogled" + +#~ msgid "Fullscreen" +#~ msgstr "Celozaslonski način" + +#~ msgid "_Go" +#~ msgstr "_Pojdi" + +#~ msgid "_Search Tab" +#~ msgstr "Zavihek _iskanja" + +#~ msgid "_Contents Tab" +#~ msgstr "Zavihek _vsebine" + +#~ msgid "Go to the previous page" +#~ msgstr "Pojdi na predhodno stran" + +#~ msgid "Go to the next page" +#~ msgstr "Pojdi na naslednjo stran" + +#~ msgid "Decrease the text size" +#~ msgstr "Zmanjšaj velikost besedila" + +#~ msgid "Increase the text size" +#~ msgstr "Povečaj velikost besedila" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Osveži devhelp okno z dejavnim iskalnim poljem" + +#~ msgid "Search in:" +#~ msgstr "Poišči v:" + +#~ msgid "Contents" +#~ msgstr "Vsebina" + +#~ msgid "Search" +#~ msgstr "Iskanje" + +#~ msgid "_File" +#~ msgstr "_Datoteka" + +#~ msgid "Use the normal text size" +#~ msgstr "Uporabi običajno velikost pisave" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Zapusti celozaslonski način" + +#~ msgid "Display in full screen" +#~ msgstr "Pokaži v celozaslonskem načinu" + +#~ msgid "Larger" +#~ msgstr "Večje" + +#~ msgid "Smaller" +#~ msgstr "Manjša" + +#~ msgid "Preferences…" +#~ msgstr "Možnosti ..." diff --git a/po/sq.gmo b/po/sq.gmo new file mode 100644 index 0000000..4a33e40 Binary files /dev/null and b/po/sq.gmo differ diff --git a/po/sq.po b/po/sq.po new file mode 100644 index 0000000..aa6a506 --- /dev/null +++ b/po/sq.po @@ -0,0 +1,546 @@ +# Përkthimi i devhelp në shqip. +# This file is distributed under the same license as the devhelp package. +# Copyright (C) 2004-2008, 2010 Free Software Foundation, Inc. +# Laurent Dhima , 2004-2008, 2010, 2011. +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-03-17 13:06+0100\n" +"PO-Revision-Date: 2011-03-17 13:06+0200\n" +"Last-Translator: Laurent Dhima \n" +"Language-Team: gnome-albanian-perkthyesit@lists.sourceforge.net\n" +"Language: sq\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "Program ndihmues për zhvilluesit" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:741 ../src/dh-window.c:1049 ../src/dh-window.c:1883 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Shfletimi i dokumentimeve" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "Libra të çaktivizuar" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "Lloji i shkronjave për tekste me gjerësi fikse" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "Lloji i shkronjave për tekstin" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "Lloji i shkronjave për tekste me gjerësi fikse, si p.sh. shembuj kodi." + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "Lloji i shkronjave për tekste me gjerësi të ndryshueshme." + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "Grupim sipas gjuhës" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "Lartësia e dritares ndihmuese" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "Lartësia e dritares qendrore" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "Lista e librave të çaktivizuar nga përdoruesi." + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "Gjendja e maksimizimit të dritares qendrore" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Skeda e zgjedhur: \"përmbajtja\" ose \"kërko\"" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr "Pozicioni X i dritares ndihmuese." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "Pozicioni X i dritares qendrore." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "Pozicioni Y i dritares ndihmuese." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "Pozicioni Y i dritares qendrore." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "Lartësia e dritares ndihmuese." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "Lartësia e dritares kryesore." + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "Gjerësia e dritares ndihmuese." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "Gjerësia e kuadratit të kërkimit dhe indeksimit." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "Gjerësia e dritares kryesore." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "Përdor shkronjat e sistemit" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "Përdor gërmat e prezgjedhura të sistemit." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "Nëse librat duhet të grupohen sipas gjuhës në UI" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "Nëse dritarja qendrore duhet të hapet e maksimizuar." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Cila nga skedat është zgjedhur: \"përmbajtja\" ose \"kërko\"." + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "Gjerësia e dritares ndihmuese" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "Gjerësia e kuadratit të kërkimit dhe indeksimit" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "Gjerësia e dritares qendrore" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "Pozicioni X i dritares ndihmuese" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "Pozicioni X i dritares qendrore" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "Pozicioni Y i dritares ndihmuese" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "Pozicioni Y i dritares qendrore" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "Rafti i librave" + +#: ../data/ui/devhelp.builder.h:2 +msgid "Fonts" +msgstr "Gërmat" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Preferences" +msgstr "Preferimet" + +#: ../data/ui/devhelp.builder.h:4 +msgid "_Fixed width:" +msgstr "Gjerësia _fikse:" + +#: ../data/ui/devhelp.builder.h:5 +msgid "_Group by language" +msgstr "_Grupim sipas gjuhës" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Use system fonts" +msgstr "_Përdor gërmat e sistemit" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Variable width: " +msgstr "Gjerësia e _ndryshueshme:" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Suporti i Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Bën që F2 të shfaqë Devhelp për fjalën tek pozicioni i kursorit" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "Shfaq dokumentimin API" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "Shfaq dokumentimin API për fjalën tek pozicioni i kursorit" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Asistenti" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "Libri:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "Gjuha: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "Gjuha: E papërcaktuar" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Libër" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Faqe" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Fjalëkyçi" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Funksion" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Type" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "Kërko për një fjalëkyç" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "Përfundo çdo Devhelp në ekzekutim" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "Shfaq versionin dhe dil" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "Vë në fokus dritaren e Devhelp me fushën e kërkimit të aktivizuar" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "Kërkon dhe shfaq çfarëdo ndihme në dritaren ndihmuese" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Pritej '%s', u mor '%s' në rreshtin %d, kollona %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Emër hapësire i pavlefshëm '%s' tek rreshti %d, kollona %d" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"Elementët \"titulli\", \"emri\" dhe \"lidhja\" janë të domosdoshëm tek " +"rreshti %d, kollona %d" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"Elementët \"emri\" dhe \"lidhja\" janë të domosdoshëm në brendësi të " +"tek rreshti %d, kollona %d" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"Elementët \"emri\" dhe \"lidhja\" janë të domosdoshëm në brendësi të '%s' " +"tek rreshti %d, kollona %d" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"Elementi \"lloji\" është i domosdoshëm në brendësi të tek rreshti " +"%d, kollona %d" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "I pamundur dekompresimi i librit '%s': %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "Të gjithë librat" + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "Kërko tek:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +# (pofilter) accelerators: accelerator _ is missing from translation +# (pofilter) xmltags: checks that XML/HTML tags have not been translated +#: ../src/dh-window.c:736 +msgid "translator_credits" +msgstr "Laurent Dhima " + +#: ../src/dh-window.c:743 +msgid "A developers' help browser for GNOME" +msgstr "Një shletues i ndihmës për zhvillues për GNOME" + +#: ../src/dh-window.c:750 +msgid "DevHelp Website" +msgstr "Siti i Devhelp" + +#: ../src/dh-window.c:774 +msgid "_File" +msgstr "_File" + +#: ../src/dh-window.c:775 +msgid "_Edit" +msgstr "_Ndrysho" + +#: ../src/dh-window.c:776 +msgid "_View" +msgstr "_Shfaq" + +#: ../src/dh-window.c:777 +msgid "_Go" +msgstr "_Shko" + +#: ../src/dh-window.c:778 +msgid "_Help" +msgstr "_Ndihmë" + +#. File menu +#: ../src/dh-window.c:781 +msgid "_New Window" +msgstr "_Dritare e re" + +#: ../src/dh-window.c:783 +msgid "New _Tab" +msgstr "_Skedë e re" + +#: ../src/dh-window.c:785 +msgid "_Print…" +msgstr "_Printo..." + +#: ../src/dh-window.c:797 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Gjej në vazhdim" + +#: ../src/dh-window.c:799 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "Gjej paraardhësen" + +#: ../src/dh-window.c:806 +msgid "Go to the previous page" +msgstr "Shko tek faqja paraardhëse" + +#: ../src/dh-window.c:809 +msgid "Go to the next page" +msgstr "Shko tek faqja në vijim" + +#: ../src/dh-window.c:812 +msgid "_Contents Tab" +msgstr "_Skeda e përmbajtjes" + +#: ../src/dh-window.c:815 +msgid "_Search Tab" +msgstr "_Skeda e kërkimit" + +#. View menu +#: ../src/dh-window.c:819 +msgid "_Larger Text" +msgstr "Tekst më i _madh" + +#: ../src/dh-window.c:820 +msgid "Increase the text size" +msgstr "Rrit madhësinë e tekstit" + +#: ../src/dh-window.c:822 +msgid "S_maller Text" +msgstr "Tekst më i v_ogël" + +#: ../src/dh-window.c:823 +msgid "Decrease the text size" +msgstr "Zvogëlo madhësinë e tekstit" + +#: ../src/dh-window.c:825 +msgid "_Normal Size" +msgstr "Madhësia _normale" + +#: ../src/dh-window.c:826 +msgid "Use the normal text size" +msgstr "Përdor madhësinë e zakonshme të tekstit" + +#: ../src/dh-window.c:835 +msgid "Leave fullscreen mode" +msgstr "Dil nga modaliteti me ekran të plotë" + +#: ../src/dh-window.c:842 +msgid "Display in full screen" +msgstr "Shfaq me ekran të plotë" + +#. Translators: This refers to text size +#: ../src/dh-window.c:962 +msgid "Larger" +msgstr "Më i madh" + +#. Translators: This refers to text size +#: ../src/dh-window.c:965 +msgid "Smaller" +msgstr "Më i vogël" + +#. i18n: please don't translate +#. * "Devhelp", it's a name, not a +#. * generic word. +#: ../src/dh-window.c:1113 +msgid "About Devhelp" +msgstr "Informacione mbi Devhelp" + +#: ../src/dh-window.c:1118 +msgid "Preferences…" +msgstr "Preferimet..." + +#: ../src/dh-window.c:1160 +msgid "Contents" +msgstr "Përmbajtja" + +#: ../src/dh-window.c:1170 +msgid "Search" +msgstr "Kërko" + +#: ../src/dh-window.c:1348 +msgid "Error opening the requested link." +msgstr "Gabim gjatë hapjes së lidhjes së kërkuar." + +#: ../src/dh-window.c:1670 ../src/dh-window.c:1911 +msgid "Empty Page" +msgstr "Faqe bosh" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Gjej:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "Gjej korrispondimin paraardhës të tekstit të kërkuar" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "Gjej korrispondimin në vazhdim të tekstit të kërkuar" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "Ndjeshmëri ndaj ndryshimit gërma të mëdh_a/vogla" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "Ndrysho kërkimin duke shpërfillur ndryshimet gërma të mëdha/vogla" diff --git a/po/sr.gmo b/po/sr.gmo new file mode 100644 index 0000000..4be5cbb Binary files /dev/null and b/po/sr.gmo differ diff --git a/po/sr.po b/po/sr.po new file mode 100644 index 0000000..f739584 --- /dev/null +++ b/po/sr.po @@ -0,0 +1,637 @@ +# Serbian translation of devhelp +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2017. +# This file is distributed under the same license as the devhelp package. +# Бранко Ивановић +# Данило Шеган , 2004-03-26 +# Горан Ракић +# Бранко Кокановић , 2009-09-13 +# Милош Поповић , 2010, 2011. +# Мирослав Николић , 2011—2017 +# Марко М. Костић (Marko M. Kostić) \n" +"Language-Team: српски \n" +"Language: sr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" +"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Project-Style: gnome\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:112 src/dh-app.c:480 +msgid "Devhelp" +msgstr "Девхелп" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:114 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Програмерска алатка за прегледање и претраживање АПИ документације" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Девхелп је програмерска алатка за прегледање и претраживање АПИ " +"документације. Обезбеђује једноставно кретање кроз библиотеке, претрагу " +"према функцији, структури или макроу." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Уколико не желите да користите интернет везу за Девхелп, потребно је да " +"инсталирате документацију локално." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Девхелп обично ради са GTK-Doc тако да су Гномове библиотеке и ГТК+ добро " +"подржани. Могуће је додавати и друге програмерске платформе све док је АПИ " +"документација доступна у ХТМЛ формату и док постоји *.devhelp2 датотека са " +"садржајем." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Девхелп је усклађен са другим програмима као што су то Глејд, Градитељ или " +"Ањута. Прикључци су доступни за већи број уређивача текста (Вилењакова " +"бележница, Вим, Емакс, Џини, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Прегледач АПИ документације" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"документација;подаци;информације;обавештења;упутство;програмер;апи;" +"documentation;information;manual;developer;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Стање увећања главног прозора" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Да ли се главни прозор покреће увећан." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Ширина главног прозора" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Ширина главног прозора." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Висина главног прозора" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Висина главног прозора." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Ширина главног прозора" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Ширина панела за садржај и претрагу." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Онемогућене књиге" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Списак књига које је корисник онемогућио." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Груписање према језику" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Да ли књиге треба да буду груписане према језику у корисничком сучељу" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Ширина прозора помоћника" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Ширина прозора помоћника." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Висина прозора помоћника" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Висина прозора помоћника." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Користи словни лик са система" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Користи подразумеване словне ликове из окружења." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Словни лик за текст" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Словни лик за текст променљиве ширине." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Словни лик за текст утврђене ширине" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Словни лик за текст утврђене ширине, као што су примери програмског кода." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Подршка Девхелпа" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Прикажи АПИ документацију" + +#: src/dh-app.c:116 +msgid "translator-credits" +msgstr "" +"Бранко Ивановић \n" +"Данило Шеган \n" +"Горан Ракић \n" +"Бранко Кокановић \n" +"Милош Поповић \n" +"Мирослав Николић \n" +"Марко М. Костић (Marko M. Kostić) \n" +"\n" +"http://prevod.org — превод на српски језик." + +#: src/dh-app.c:118 +msgid "Devhelp Website" +msgstr "Веб страница Девхелпа" + +#: src/dh-app.c:384 +msgid "Opens a new Devhelp window" +msgstr "Отвара нови прозор Девхелпа" + +#: src/dh-app.c:389 +msgid "Search for a keyword" +msgstr "Тражи кључну реч" + +#: src/dh-app.c:390 src/dh-app.c:395 +msgid "KEYWORD" +msgstr "КЉУЧНА РЕЧ" + +#: src/dh-app.c:394 +msgid "Search and display any hit in the assistant window" +msgstr "Претражује и приказује све резултате у прозору помоћника" + +#: src/dh-app.c:399 +msgid "Display the version and exit" +msgstr "Приказује издање и излази" + +#: src/dh-app.c:404 +msgid "Quit any running Devhelp" +msgstr "Затвара све прозоре Девхелпа" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Девхелп — Помоћник" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Књига:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Језик: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Језик: неодређен" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Скупи све" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Књига" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Страна" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Кључна реч" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Функција" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Макро" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Врста" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Својство" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Сигнал" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Поставке" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Групиши према језику" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Укључено" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Наслов" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Полица књига" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Користи словни лик система" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Променљива ширина: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Стална ширина:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Словни ликови" + +#: src/dh-window.c:161 src/dh-window.c:1006 src/dh-window.c:1139 +msgid "Empty Page" +msgstr "Празна страница" + +#: src/dh-window.c:892 +msgid "Error opening the requested link." +msgstr "Грешка отварања захтеване везе." + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Бочна _површ" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Штампај" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Нађи" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Већи текст" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Мањи текст" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Обична величина" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Нови _прозор" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Поставке" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Пречице на та_статури" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Помоћ" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_О Девхелпу" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Изађи" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Назад" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Напред" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Нови језичак" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Опште" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Стави општу претрагу у фокус" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Нађи на тренутној страници" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Отвори нови прозор" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Отвори нови језичак" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Промени видљивост бочне површи" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Иди назад" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Иди напред" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Одштампај" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Затвори тренутни прозор" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Затвори све прозоре" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Увећавање и умањивање" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Увећај" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Умањи" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Поново постави степен увећања" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_О Девхелпу" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Затвори" + +#~ msgid "Side _Panel" +#~ msgstr "Бочна _површ" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Програм за помоћ програмерима" + +#~ msgid "X position of main window" +#~ msgstr "Водоравни положај главног прозора" + +#~ msgid "The X position of the main window." +#~ msgstr "X (водораван) положај главног прозора." + +#~ msgid "Y position of main window" +#~ msgstr "Усправни положај главног прозора" + +#~ msgid "The Y position of the main window." +#~ msgstr "Y (усправан) положај главног прозора." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Да ли прозор помоћника треба да буде увећан" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Да ли прозор помоћника треба да буде увећан." + +#~ msgid "X position of assistant window" +#~ msgstr "Водоравни положај прозора помоћника" + +#~ msgid "The X position of the assistant window." +#~ msgstr "X (водораван) положај прозора помоћника." + +#~ msgid "Y position of assistant window" +#~ msgstr "Усправни положај прозора помоћника" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Y (усправан) положај прозора помоћника." + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Прегледник помоћи за програмере у Гном окружењу" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Изабрани језичак: „content“ (садржај) или „search“ (претрага)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Одређује који језичак је изабран: „content“ (садржај) или " +#~ "„search“ (претрага)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Очекивах „%s“, добих „%s“ у %d. реду %d. колоне" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Неисправан простор назива „%s“ у %d. реду %d. колоне" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "Елементи „title“, „name“ и „link“ су обавезни у %d. реду %d. колоне" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Елементи „title“, „name“ и „link“ су обавезни унутар у %d. реду %d. " +#~ "колоне" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Елементи „title“, „name“ и „link“ су обавезни унутар „%s“ у %d. реду %d. " +#~ "колоне" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Елемент „type“ је обавезан унутар у %d. реду %d. колоне" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Не могу да распакујем књигу „%s“: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Бочна површ" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Ф2 ће позвати Девхелпа и тражити реч под курсором" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Прикажи АПИ документацију за реч под курсором" + +#~ msgid "Current" +#~ msgstr "Тренутна" + +#~ msgid "All Books" +#~ msgstr "Све књиге" diff --git a/po/sr@latin.gmo b/po/sr@latin.gmo new file mode 100644 index 0000000..936d5d2 Binary files /dev/null and b/po/sr@latin.gmo differ diff --git a/po/sr@latin.po b/po/sr@latin.po new file mode 100644 index 0000000..ae9901b --- /dev/null +++ b/po/sr@latin.po @@ -0,0 +1,637 @@ +# Serbian translation of devhelp +# Courtesy of Prevod.org team (http://prevod.org/) -- 2003—2017. +# This file is distributed under the same license as the devhelp package. +# Branko Ivanović +# Danilo Šegan , 2004-03-26 +# Goran Rakić +# Branko Kokanović , 2009-09-13 +# Miloš Popović , 2010, 2011. +# Miroslav Nikolić , 2011—2017 +# Marko M. Kostić (Marko M. Kostić) \n" +"Language-Team: srpski \n" +"Language: sr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=4; plural=n==1? 3 : n%10==1 && n%100!=11 ? 0 : n" +"%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" +"X-Project-Style: gnome\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "Programerska alatka za pregledanje i pretraživanje API dokumentacije" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp je programerska alatka za pregledanje i pretraživanje API " +"dokumentacije. Obezbeđuje jednostavno kretanje kroz biblioteke, pretragu " +"prema funkciji, strukturi ili makrou." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Ukoliko ne želite da koristite internet vezu za Devhelp, potrebno je da " +"instalirate dokumentaciju lokalno." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp obično radi sa GTK-Doc tako da su Gnomove biblioteke i GTK+ dobro " +"podržani. Moguće je dodavati i druge programerske platforme sve dok je API " +"dokumentacija dostupna u HTML formatu i dok postoji *.devhelp2 datoteka sa " +"sadržajem." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp je usklađen sa drugim programima kao što su to Glejd, Graditelj ili " +"Anjuta. Priključci su dostupni za veći broj uređivača teksta (Vilenjakova " +"beležnica, Vim, Emaks, Džini, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "Pregledač API dokumentacije" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"dokumentacija;podaci;informacije;obaveštenja;uputstvo;programer;api;" +"documentation;information;manual;developer;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Stanje uvećanja glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Da li se glavni prozor pokreće uvećan." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Širina glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Širina glavnog prozora." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Visina glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Visina glavnog prozora." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Širina glavnog prozora" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Širina panela za sadržaj i pretragu." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Onemogućene knjige" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Spisak knjiga koje je korisnik onemogućio." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Grupisanje prema jeziku" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Da li knjige treba da budu grupisane prema jeziku u korisničkom sučelju" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Širina prozora pomoćnika" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Širina prozora pomoćnika." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Visina prozora pomoćnika" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Visina prozora pomoćnika." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Koristi slovni lik sa sistema" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Koristi podrazumevane slovne likove iz okruženja." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Slovni lik za tekst" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Slovni lik za tekst promenljive širine." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Slovni lik za tekst utvrđene širine" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "" +"Slovni lik za tekst utvrđene širine, kao što su primeri programskog koda." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Podrška Devhelpa" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Prikaži API dokumentaciju" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"Branko Ivanović \n" +"Danilo Šegan \n" +"Goran Rakić \n" +"Branko Kokanović \n" +"Miloš Popović \n" +"Miroslav Nikolić \n" +"Marko M. Kostić (Marko M. Kostić) \n" +"\n" +"http://prevod.org — prevod na srpski jezik." + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Veb stranica Devhelpa" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Otvara novi prozor Devhelpa" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Traži ključnu reč" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "KLJUČNA REČ" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Pretražuje i prikazuje sve rezultate u prozoru pomoćnika" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Prikazuje izdanje i izlazi" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Zatvara sve prozore Devhelpa" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Pomoćnik" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Knjiga:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Jezik: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Jezik: neodređen" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Skupi sve" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Knjiga" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Strana" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Ključna reč" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "Funkcija" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struktura" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Vrsta" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Svojstvo" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Postavke" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Grupiši prema jeziku" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Uključeno" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Naslov" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Polica knjiga" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Koristi slovni lik sistema" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Promenljiva širina: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Stalna širina:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Slovni likovi" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Greška otvaranja zahtevane veze." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Prazna stranica" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Bočna _površ" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Štampaj" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Nađi" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "_Veći tekst" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Manji tekst" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Obična veličina" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Novi _prozor" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Postavke" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "Prečice na ta_staturi" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Pomoć" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_O Devhelpu" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Izađi" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Nazad" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Napred" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Novi jezičak" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Opšte" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Stavi opštu pretragu u fokus" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Nađi na trenutnoj stranici" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Otvori novi prozor" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Otvori novi jezičak" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Promeni vidljivost bočne površi" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Idi nazad" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Idi napred" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Odštampaj" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Zatvori trenutni prozor" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Zatvori sve prozore" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Uvećavanje i umanjivanje" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Uvećaj" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Umanji" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Ponovo postavi stepen uvećanja" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_O Devhelpu" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Zatvori" + +#~ msgid "Side _Panel" +#~ msgstr "Bočna _površ" + +#~| msgid "Developer's Help program" +#~ msgid "Developer’s Help program" +#~ msgstr "Program za pomoć programerima" + +#~ msgid "X position of main window" +#~ msgstr "Vodoravni položaj glavnog prozora" + +#~ msgid "The X position of the main window." +#~ msgstr "X (vodoravan) položaj glavnog prozora." + +#~ msgid "Y position of main window" +#~ msgstr "Uspravni položaj glavnog prozora" + +#~ msgid "The Y position of the main window." +#~ msgstr "Y (uspravan) položaj glavnog prozora." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Da li prozor pomoćnika treba da bude uvećan" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Da li prozor pomoćnika treba da bude uvećan." + +#~ msgid "X position of assistant window" +#~ msgstr "Vodoravni položaj prozora pomoćnika" + +#~ msgid "The X position of the assistant window." +#~ msgstr "X (vodoravan) položaj prozora pomoćnika." + +#~ msgid "Y position of assistant window" +#~ msgstr "Uspravni položaj prozora pomoćnika" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Y (uspravan) položaj prozora pomoćnika." + +#~| msgid "A developers' help browser for GNOME" +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Preglednik pomoći za programere u Gnom okruženju" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Izabrani jezičak: „content“ (sadržaj) ili „search“ (pretraga)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "" +#~ "Određuje koji jezičak je izabran: „content“ (sadržaj) ili " +#~ "„search“ (pretraga)." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Očekivah „%s“, dobih „%s“ u %d. redu %d. kolone" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Neispravan prostor naziva „%s“ u %d. redu %d. kolone" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "Elementi „title“, „name“ i „link“ su obavezni u %d. redu %d. kolone" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementi „title“, „name“ i „link“ su obavezni unutar u %d. redu %d. " +#~ "kolone" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "Elementi „title“, „name“ i „link“ su obavezni unutar „%s“ u %d. redu %d. " +#~ "kolone" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Element „type“ je obavezan unutar u %d. redu %d. kolone" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Ne mogu da raspakujem knjigu „%s“: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Bočna površ" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "F2 će pozvati Devhelpa i tražiti reč pod kursorom" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Prikaži API dokumentaciju za reč pod kursorom" + +#~ msgid "Current" +#~ msgstr "Trenutna" + +#~ msgid "All Books" +#~ msgstr "Sve knjige" diff --git a/po/stamp-po b/po/stamp-po new file mode 100644 index 0000000..9788f70 --- /dev/null +++ b/po/stamp-po @@ -0,0 +1 @@ +timestamp diff --git a/po/sv.gmo b/po/sv.gmo new file mode 100644 index 0000000..a8fdf9c Binary files /dev/null and b/po/sv.gmo differ diff --git a/po/sv.po b/po/sv.po new file mode 100644 index 0000000..19c126f --- /dev/null +++ b/po/sv.po @@ -0,0 +1,619 @@ +# Swedish messages for Devhelp. +# Copyright © 2001-2018 Free Software Foundation, Inc. +# Richard Hult , 2001, 2004. +# Johan Dahlin , 2001. +# Christian Rose , 2001, 2002, 2003, 2004. +# Daniel Nylander , 2006, 2008, 2009, 2010, 2011, 2012. +# Sebastian Rasmussen , 2014. +# Anders Jonsson , 2015, 2016, 2017, 2018. +# +# Översätt inte "Devhelp", det är ett namn. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-03-10 11:38+0000\n" +"PO-Revision-Date: 2018-02-22 21:56+0100\n" +"Last-Translator: Anders Jonsson \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 2.0.6\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"Ett utvecklingsverktyg för att bläddra genom samt söka i API-dokumentation" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp är ett utvecklingsverktyg för att bläddra genom samt söka i API-" +"dokumentation. Det erbjuder ett lätt sätt att navigera genom bibliotek samt " +"att söka efter funktioner, strukturer eller makron." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Dokumentationen måste finnas installerad lokalt, så en internetanslutning " +"krävs inte för att använda Devhelp." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp arbetar internt med GTK-Doc, så det finns bra stöd för GTK+- och " +"GNOME-biblioteken. Men andra utvecklingsplattformar kan också stödjas, under " +"förutsättning att API-dokumentationen finns tillgänglig i HTML samt att en *." +"devhelp2-indexfil skapas." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp integrerar med andra program så som Glade, Builder eller Anjuta, och " +"insticksmoduler finns tillgängliga för olika textredigerare (gedit, Vim, " +"Emacs, Geany, …)." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "API Documentation Browser" +msgstr "API-dokumentationsläsare" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "dokumentation;information;manual;utvecklare;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:17 +msgid "Main window maximized state" +msgstr "Maximerat tillstånd för huvudfönstret" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Whether the main window should start maximized." +msgstr "Huruvida huvudfönstret ska starta maximerat." + +#: data/org.gnome.devhelp.gschema.xml:22 +msgid "Width of the main window" +msgstr "Bredd på huvudfönstret" + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "The width of the main window." +msgstr "Bredden på huvudfönstret." + +#: data/org.gnome.devhelp.gschema.xml:27 +msgid "Height of main window" +msgstr "Höjd på huvudfönstret" + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "The height of the main window." +msgstr "Höjden på huvudfönstret." + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "Width of the index and search pane" +msgstr "Bredd på index- och sökpanelen" + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "The width of the index and search pane." +msgstr "Bredden på index- och sökpanelen." + +#: data/org.gnome.devhelp.gschema.xml:44 +msgid "Width of the assistant window" +msgstr "Bredd på assistentfönstret" + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "The width of the assistant window." +msgstr "Bredden på assistentfönstret." + +#: data/org.gnome.devhelp.gschema.xml:49 +msgid "Height of assistant window" +msgstr "Höjd på assistentfönstret" + +#: data/org.gnome.devhelp.gschema.xml:50 +msgid "The height of the assistant window." +msgstr "Höjden på assistentfönstret." + +#: data/org.gnome.devhelp.gschema.xml:56 +msgid "Use system fonts" +msgstr "Använd systemtypsnitt" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Use the system default fonts." +msgstr "Använd systemets standardtypsnitt." + +#: data/org.gnome.devhelp.gschema.xml:61 +msgid "Font for text" +msgstr "Typsnitt för text" + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Font for text with variable width." +msgstr "Typsnitt för text med variabel bredd." + +#: data/org.gnome.devhelp.gschema.xml:66 +msgid "Font for fixed width text" +msgstr "Typsnitt för text med fast bredd" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Font for text with fixed width, such as code examples." +msgstr "Typsnitt för text med fast bredd, som kodexempel." + +#: data/org.gnome.libdevhelp-3.gschema.xml:8 +msgid "Books disabled" +msgstr "Böcker inaktiverade" + +#: data/org.gnome.libdevhelp-3.gschema.xml:9 +msgid "List of books disabled by the user." +msgstr "Lista över böcker som inaktiverats av användaren." + +#: data/org.gnome.libdevhelp-3.gschema.xml:13 +msgid "Group by language" +msgstr "Gruppera efter språk" + +#: data/org.gnome.libdevhelp-3.gschema.xml:14 +msgid "Whether books should be grouped by language in the UI" +msgstr "Huruvida böckerna ska grupperas efter språk i användargränssnittet" + +#: devhelp/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Bok:" + +#: devhelp/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Språk: %s" + +#: devhelp/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Språk: Odefinierat" + +#: devhelp/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "_Fäll ihop alla" + +#. i18n: a documentation book +#: devhelp/dh-link.c:549 +msgid "Book" +msgstr "Bok" + +#. i18n: a "page" in a documentation book +#: devhelp/dh-link.c:553 +msgid "Page" +msgstr "Sida" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: devhelp/dh-link.c:558 +msgid "Keyword" +msgstr "Nyckelord" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:564 +msgid "Function" +msgstr "Funktion" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:588 +msgid "Type" +msgstr "Typ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:594 +msgid "Property" +msgstr "Egenskap" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: devhelp/dh-link.c:600 +msgid "Signal" +msgstr "Signal" + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Stöd för Devhelp" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Visa API-dokumentation" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"Daniel Nylander \n" +"Christian Rose \n" +"Richard Hult \n" +"Johan Dahlin \n" +"Sebastian Rasmussen \n" +"Anders Jonsson \n" +"\n" +"Skicka synpunkter på översättningen till\n" +"." + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Webbplatsen för Devhelp" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Öppnar ett nytt Devhelp-fönster" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Sök efter ett nyckelord" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "NYCKELORD" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Sök och visa eventuell träff i assistentfönstret" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Visa versionen och avsluta" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Avsluta alla körande Devhelp" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Assistent" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Inställningar" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Gruppera efter språk" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Aktiverad" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Titel" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Bokhylla" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Använd systemets typsnitt" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Variabel bredd: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Fast bredd:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Typsnitt" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "Fel vid öppnandet av begärd länk." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Tom sida" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Sido_panel" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Skriv ut" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "Sö_k" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "S_törre text" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "_Mindre text" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "_Normal storlek" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Nytt _fönster" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Inställningar" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Tangentbordsgenvägar" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Hjälp" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "_Om Devhelp" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Avsluta" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Bakåt" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "Framåt" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Ny flik" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Allmänt" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Fokusera global sökning" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Sök i aktuell sida" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Öppna ett nytt fönster" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Öppna en ny flik" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Växla synlighet för sidopanel" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Gå bakåt" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Gå framåt" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Skriv ut" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Stäng aktuellt fönster" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Stäng alla fönster" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Zooma" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Zooma in" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Zooma ut" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Återställ zoom" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Om" + +#~ msgid "50%" +#~ msgstr "50%" + +#~ msgid "75%" +#~ msgstr "75%" + +#~ msgid "100%" +#~ msgstr "100%" + +#~ msgid "125%" +#~ msgstr "125%" + +#~ msgid "150%" +#~ msgstr "150%" + +#~ msgid "175%" +#~ msgstr "175%" + +#~ msgid "200%" +#~ msgstr "200%" + +#~ msgid "300%" +#~ msgstr "300%" + +#~ msgid "400%" +#~ msgstr "400%" + +#~ msgid "_Close" +#~ msgstr "_Stäng" + +#~ msgid "Developer’s Help program" +#~ msgstr "Hjälpprogram för utvecklare" + +#~ msgid "X position of main window" +#~ msgstr "X-position för huvudfönstret" + +#~ msgid "The X position of the main window." +#~ msgstr "X-positionen för huvudfönstret." + +#~ msgid "Y position of main window" +#~ msgstr "Y-position för huvudfönstret" + +#~ msgid "The Y position of the main window." +#~ msgstr "Y-positionen för huvudfönstret." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Huruvida assistentfönstret ska vara maximerat" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Huruvida assistentfönstret ska vara maximerat." + +#~ msgid "X position of assistant window" +#~ msgstr "X-position för assistentfönstret" + +#~ msgid "The X position of the assistant window." +#~ msgstr "X-positionen för assistentfönstret." + +#~ msgid "Y position of assistant window" +#~ msgstr "Y-position för assistentfönstret" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Y-positionen för assistentfönstret." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "Ett hjälpprogram för utvecklare för GNOME" + +#~ msgid "Side _Panel" +#~ msgstr "Sido_panel" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Vald flik: \"content\" eller \"search\"" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Vilken av flikarna som är vald: \"content\" eller \"search\"." + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "”%s” förväntades, fick ”%s” på rad %d, kolumn %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Ogiltig namnrymd ”%s” vid rad %d, kolumn %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "Elementen ”title”, ”name” och ”link” krävs på rad %d, kolumn %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "Elementen ”name” och ”link” krävs inuti på rad %d, kolumn %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "Elementen ”name” och ”link” krävs inuti ”%s” på rad %d, kolumn %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "Elementet ”type” krävs inuti på rad %d, kolumn %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Kan inte dekomprimera boken ”%s”: %s" + +#~ msgid "_Side pane" +#~ msgstr "_Sidopanel" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Gör så att F2 tar fram Devhelp för ordet vid markören" + +#~| msgid "" +#~| "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~| "target=devhelp.png" +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&" +#~ "do=view&target=devhelp.png" diff --git a/po/ta.gmo b/po/ta.gmo new file mode 100644 index 0000000..8593b00 Binary files /dev/null and b/po/ta.gmo differ diff --git a/po/ta.po b/po/ta.po new file mode 100644 index 0000000..3411f7b --- /dev/null +++ b/po/ta.po @@ -0,0 +1,351 @@ +# translation of devhelp.desktop_ta.po to +# Translation of Devhelp.desktop_ta.po to TAMIL. +# Copyright (C) 2008 Free Software Foundation, Inc. +# This file is distributed under the same license as the Devhelp package. +# தங்கம் அருண் , 2008. +msgid "" +msgstr "" +"Project-Id-Version: devhelp.desktop_ta\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2007-12-31 03:15+0000\n" +"PO-Revision-Date: 2008-01-03 13:22+0530\n" +"Last-Translator: \n" +"Language-Team: \n" +"Language: ta\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "உற்பத்தியாளர்களின் உதவி நிரல்" + +#: ../data/devhelp.desktop.in.in.h:2 ../data/ui/devhelp.glade.h:4 +#: ../src/dh-main.c:151 ../src/dh-window.c:776 +msgid "Devhelp" +msgstr "டேவு உதவி(Devhelp)" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "உரையேட்டின் வலையோடு" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Font for fixed text" +msgstr "உரைக்கான நிலையான எழுத்துரு" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for text" +msgstr "உரைக்கான எழுத்துரு" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text with fixed width." +msgstr "உரைக்கான எழுத்துருவின் நிலையான குறுக்களவு" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with variable width." +msgstr "உரைக்கான எழுத்துருவின் நிலைமாறும் குறுக்களவு," + +#: ../data/devhelp.schemas.in.h:5 +msgid "Height of main window" +msgstr "முக்கிய சாளரத்தின் உயரம்" + +#: ../data/devhelp.schemas.in.h:6 +msgid "Main window maximized state" +msgstr "முக்கிய சாளரம் விரிந்த நிலையில்" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Selected tab, \"content\" or \"search\"" +msgstr "தேர்ந்தெடுக்கப்பட்ட பலக இடம் \"உள்ளடக்கம்\" அல்லது \"தேடு\"" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Show advanced search options" +msgstr "முன்னேர்ந்த தேடியின் விருப்பங்களை தெரிவி" + +#: ../data/devhelp.schemas.in.h:9 +msgid "The X position of the main window." +msgstr "முக்கிய சாளரத்தின் X நிலை" + +#: ../data/devhelp.schemas.in.h:10 +msgid "The Y position of the main window." +msgstr "முக்கிய சாளரத்தின் Y நிலை" + +#: ../data/devhelp.schemas.in.h:11 +msgid "The height of the main window." +msgstr "முக்கிய சாளரத்தின் உயரம்" + +#: ../data/devhelp.schemas.in.h:12 +msgid "The width of the index and search pane." +msgstr "அட்டவணை குறி மற்றும் சாளரப்பலகை தேடியின் குறுக்களவு" + +#: ../data/devhelp.schemas.in.h:13 +msgid "The width of the main window." +msgstr "முக்கிய சாளரத்தின் குறுக்களவு." + +#: ../data/devhelp.schemas.in.h:14 +msgid "Use system fonts" +msgstr "கணினி எழுத்துருக்களை பயன்படுத்து" + +#: ../data/devhelp.schemas.in.h:15 +msgid "Use the system default fonts." +msgstr "கணினியின் கொடா எழுத்துருக்களை பயன்படுத்து." + +#: ../data/devhelp.schemas.in.h:16 +msgid "Whether the advanced search options are shown." +msgstr "முன்னேர்ந்த தேடி விருப்பங்களை தெரிவித்ததா?" + +#: ../data/devhelp.schemas.in.h:17 +msgid "Whether the main window should start maximized or not." +msgstr "முக்கிய சாளரம் வரிந்த நிலையில் தொடங்கியதா அல்லது இல்லையா?. " + +#: ../data/devhelp.schemas.in.h:18 +msgid "Which of the tabs that is selected, \"content\" or \"search\"." +msgstr "எந்த பலக இடம் தேர்ந்தெடுக்கப்பட்டது, \"உள்ளுள்ள\" அல்லது \"தேடு\"." + +#: ../data/devhelp.schemas.in.h:19 +msgid "Width of the index and search pane" +msgstr "அட்டவணை குறி மற்றும் சாளரப்பலகை தேடியின் குறுக்களவு" + +#: ../data/devhelp.schemas.in.h:20 +msgid "Width of the main window" +msgstr "முக்கிய சாளரத்தின் குறுக்களவு" + +#: ../data/devhelp.schemas.in.h:21 +msgid "X position of main window" +msgstr "முக்கிய சாளரத்தின் X நிலை" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Y position of main window" +msgstr "முக்கிய சாளரத்தின் Y நிலை" + +#: ../data/ui/devhelp.glade.h:1 +msgid "Fonts" +msgstr "எழுத்துருக்கள்" + +#: ../data/ui/devhelp.glade.h:2 +msgid "Searching" +msgstr "தேடிக்கொண்டிருக்கிறது " + +#: ../data/ui/devhelp.glade.h:3 ../src/dh-window.c:505 +msgid "Contents" +msgstr "உள்ளடக்கங்கள்" + +#: ../data/ui/devhelp.glade.h:5 +msgid "Preferences" +msgstr "விருப்பங்கள்" + +#: ../data/ui/devhelp.glade.h:6 +msgid "_Back" +msgstr "பின்னாடி" + +#: ../data/ui/devhelp.glade.h:7 +msgid "_Fixed width:" +msgstr "நிலையான அளவு" + +#: ../data/ui/devhelp.glade.h:8 +msgid "_Forward" +msgstr "முன்னோக்கி" + +#: ../data/ui/devhelp.glade.h:9 ../src/dh-window.c:190 +msgid "_Go" +msgstr "செல்" + +#: ../data/ui/devhelp.glade.h:10 +msgid "_Show advanced search options" +msgstr "முன்னேர்ந்த தேடியின் விருப்பங்களை தெரிவி" + +#: ../data/ui/devhelp.glade.h:11 +msgid "_Use system fonts" +msgstr "கணினி எழுத்துருக்களை பயன்படுத்து" + +#: ../data/ui/devhelp.glade.h:12 +msgid "_Variable width: " +msgstr "மாறிலியின் குறுக்களவு: " + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "டேவ் உதவி(Devhelp) ஆதரவு" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "நிலைக்காட்டியில் உள்ள வார்த்தைக்கு F2 டேவ் உதவியை(Devhelp) கொண்டுவருமாருச்செய்கிறது " + +#: ../src/dh-main.c:100 +msgid "Search for a function" +msgstr "செயலுக்காக தேடு" + +#: ../src/dh-main.c:109 +msgid "Quit any running Devhelp" +msgstr "டேவ் உதவி(Devhelp) எதாவது ஓடிக் கொண்டுயிருந்தால் வெளியெற்று" + +#: ../src/dh-main.c:118 +msgid "Display the version and exit" +msgstr "பதிப்பை தெறியப்படுத்து மற்றும் வெளிச்செல்" + +#: ../src/dh-main.c:127 +msgid "Focus the devhelp window with the search field active" +msgstr "டேவ் உதவி(Devhelp) சாளரத்தை சுறுசுறுப்பாக உள்ள தேடுகளத்துடன் நோக்கு " + +#: ../src/dh-parser.c:110 ../src/dh-parser.c:194 ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s' got '%s' at line %d, column %d" +msgstr "எதிர்பார்க்கப்பட்டது '%s' கிடைத்தது '%s' இந்த வரி %d, நெடுக்கு %d" + +#: ../src/dh-parser.c:128 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "இல்லாத பேயரிடம் '%s' இந்த வரி %d, நெடுக்கு %d " + +#: ../src/dh-parser.c:158 +#, c-format +msgid "title, name, and link elements are required at line %d, column %d" +msgstr "தலைப்பு, பெயர், மற்றும் இணைப்பு மூலங்கள் தேவைப்படும் வரி %d, நெடுக்கு %d " + +#: ../src/dh-parser.c:215 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "பெயர், மற்றும் இணைப்பு மூலங்கள் தேவைப்படும் உட்பக்க <துணை> மேல் வரி %d, நெடுக்கு %d" + +#: ../src/dh-parser.c:297 +#, c-format +msgid "name and link elements are required inside on line %d, column %d" +msgstr "பெயர், மற்றும் இணைப்பு மூலங்கள் தேவைப்படும் உட்பக்க <செயல்> மேல் வரி %d, நெடுக்கு %d" + +#: ../src/dh-parser.c:420 ../src/dh-parser.c:515 +msgid "Could not create book parser" +msgstr "புத்தக பிரிப்பானை உருவாக்க முடியவில்லை" + +#: ../src/dh-parser.c:436 ../src/dh-parser.c:525 +msgid "Could not create markup parser" +msgstr "புத்தக பிரிப்பானை உருவாக்க முடியவில்லை" + +#: ../src/dh-parser.c:578 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "புத்தகத்தை விரிக்க முடியவில்லை '%s': %s" + +#: ../src/dh-parser.c:603 +msgid "Devhelp is not built with zlib support" +msgstr "டேவ் உதவி(Devhelp) zlib ஆதரவுயின்றி உருவாக்கப்பட்டுள்ளது" + +#: ../src/dh-search.c:621 +msgid "_Book:" +msgstr "_புத்தகம்:" + +#: ../src/dh-search.c:641 +msgid "_Page:" +msgstr "_பக்கம்" + +#: ../src/dh-window.c:70 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:71 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:72 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:73 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:74 +msgid "150%" +msgstr "" + +#: ../src/dh-window.c:75 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:76 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:77 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:78 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:187 +msgid "_File" +msgstr "_கோப்பு" + +#: ../src/dh-window.c:188 +msgid "_Edit" +msgstr "_தொகுப்பான்" + +#: ../src/dh-window.c:189 +msgid "_View" +msgstr "_காட்சி" + +#: ../src/dh-window.c:191 +msgid "_Help" +msgstr "_உதவி" + +#. File menu +#: ../src/dh-window.c:194 +msgid "_New Window" +msgstr "புதிய சாளரம்" + +#: ../src/dh-window.c:196 +msgid "New _Tab" +msgstr "புதிய பலக_இடம்" + +#: ../src/dh-window.c:208 ../src/eggfindbar.c:337 +msgid "Find Next" +msgstr "அடுத்ததை கண்டுபிடி" + +#: ../src/dh-window.c:210 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "முந்தியதை கண்டுபிடி" + +#: ../src/dh-window.c:221 +msgid "_Contents Tab" +msgstr "_உள்ளடக்கங்களின் பலக இடம்" + +#: ../src/dh-window.c:224 +msgid "_Search Tab" +msgstr "_தேடியின் பலக இடம்" + +#: ../src/dh-window.c:515 +msgid "Search" +msgstr "தெடு" + +#: ../src/dh-window.c:773 +msgid "translator_credits" +msgstr "மொழிப்பெயர்ப்பாளரின்_வரவுகள் " + +#: ../src/dh-window.c:778 +msgid "A developer's help browser for GNOME 2" +msgstr "கனோம் 2(GNOME 2)க்கான உற்பத்தியாளர்களின் உதவி மேலோடு" + +#: ../src/dh-window.c:1172 ../src/dh-window.c:1370 +msgid "Empty Page" +msgstr "காலியான பக்கம்" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "கண்டுபிடி:" + +#: ../src/eggfindbar.c:332 +msgid "Find previous occurrence of the search string" +msgstr "தேடிய சரத்தின் முந்தைய நிகழ்வைக் கண்டுபிடி" + +#: ../src/eggfindbar.c:340 +msgid "Find next occurrence of the search string" +msgstr "தேடிய சரத்தின் அடுத்த நிகழ்வைக் கண்டுபிடி" + +#: ../src/eggfindbar.c:348 +msgid "Case Sensitive" +msgstr "உணர்வுள்ள உறை மூடி" + +#: ../src/eggfindbar.c:351 +msgid "Toggle case sensitive search" +msgstr "உணர்வுள்ள உறை மூடி" + diff --git a/po/te.gmo b/po/te.gmo new file mode 100644 index 0000000..e19c2b9 Binary files /dev/null and b/po/te.gmo differ diff --git a/po/te.po b/po/te.po new file mode 100644 index 0000000..11b2483 --- /dev/null +++ b/po/te.po @@ -0,0 +1,589 @@ +# Telugu translation of devhelp. +# Copyright (C) 2007 Swecha Telugu Localisation Team +# This file is distributed under the same license as the devhelp package. +# Matapathi Pramod , 2007. +# Hari Krishna , 2011. +# GVS.Giri ,2011. +# Praveen Illa , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2012-01-08 06:40+0000\n" +"PO-Revision-Date: 2012-01-11 23:29+0530\n" +"Last-Translator: Praveen Illa \n" +"Language-Team: Telugu \n" +"Language: te\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n!=1);\n" + +#: ../data/devhelp.desktop.in.in.h:1 +msgid "Developer's Help program" +msgstr "అభివృద్ధికారుల సహాయ కార్యక్రమం" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:2 ../src/dh-main.c:281 +#: ../src/dh-window.c:731 ../src/dh-window.c:1039 ../src/dh-window.c:1868 +msgid "Devhelp" +msgstr "డెవ్ సహాయం" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "పత్రీకరణ విహారకం" + +#: ../data/devhelp.schemas.in.h:1 +msgid "Books disabled" +msgstr "పుస్తకాలు అచేతనపరచివున్నాయి" + +#: ../data/devhelp.schemas.in.h:2 +msgid "Font for fixed width text" +msgstr "వెడల్పు స్థిరతత పాఠం కొరకు ఫాంటు" + +#: ../data/devhelp.schemas.in.h:3 +msgid "Font for text" +msgstr "పాఠం కొరకు ఫాంటు" + +#: ../data/devhelp.schemas.in.h:4 +msgid "Font for text with fixed width, such as code examples." +msgstr "స్థిర పాఠం కొరకు ఫాంటు,కోడ్ ఉదాహరణలు లాంటివి" + +#: ../data/devhelp.schemas.in.h:5 +msgid "Font for text with variable width." +msgstr "చలరాశి పొడవుతో పాఠం కొరకు ఫాంటు." + +#: ../data/devhelp.schemas.in.h:6 +msgid "Group by language" +msgstr "భాషతో వర్గము" + +#: ../data/devhelp.schemas.in.h:7 +msgid "Height of assistant window" +msgstr "సాహాయ కిటికీ యొక్క ఎత్తు" + +#: ../data/devhelp.schemas.in.h:8 +msgid "Height of main window" +msgstr "మూల కిటికీ యొక్క ఎత్తు" + +#: ../data/devhelp.schemas.in.h:9 +msgid "List of books disabled by the user." +msgstr "వినియోగదారుడు నిరుపయోగపరచిన పుస్తకాల జాబితా" + +#: ../data/devhelp.schemas.in.h:10 +msgid "Main window maximized state" +msgstr "మూల కిటికీ పెద్దదిచేయబడిన స్థితి" + +#: ../data/devhelp.schemas.in.h:11 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "నెట్టులలో ఏది ఎంచుకొనబడినది: \"సారము\" లేదా \"వెతుకు\"." + +#: ../data/devhelp.schemas.in.h:12 +msgid "The X position of the assistant window." +msgstr "సహాయ కిటికీ యొక్క X స్థానం." + +#: ../data/devhelp.schemas.in.h:13 +msgid "The X position of the main window." +msgstr "మూల కిటికీ యొక్క X స్థానం." + +#: ../data/devhelp.schemas.in.h:14 +msgid "The Y position of the assistant window." +msgstr "సహాయ కిటికీ యొక్క Y స్థానం." + +#: ../data/devhelp.schemas.in.h:15 +msgid "The Y position of the main window." +msgstr "మూల కిటికీ యొక్క Y స్థానం." + +#: ../data/devhelp.schemas.in.h:16 +msgid "The height of the assistant window." +msgstr "సహాయ కిటికీ యొక్క ఎత్తు." + +#: ../data/devhelp.schemas.in.h:17 +msgid "The height of the main window." +msgstr "మూల కిటికీ యొక్క ఎత్తు." + +#: ../data/devhelp.schemas.in.h:18 +msgid "The width of the assistant window." +msgstr "సహాయ కిటికీ యొక్క పొడవు." + +#: ../data/devhelp.schemas.in.h:19 +msgid "The width of the index and search pane." +msgstr "వెతుకు అస్థిత్వం మరియు చూచి యొక్క పొడవు." + +#: ../data/devhelp.schemas.in.h:20 +msgid "The width of the main window." +msgstr "మూల కిటికీ యొక్క పొడవు." + +#: ../data/devhelp.schemas.in.h:21 +msgid "Use system fonts" +msgstr "వ్యవస్థ ఫాంటుని వాడు" + +#: ../data/devhelp.schemas.in.h:22 +msgid "Use the system default fonts." +msgstr "వ్యవస్థ అప్రమేయ ఫాంట్లను వాడు." + +#: ../data/devhelp.schemas.in.h:23 +msgid "Whether books should be grouped by language in the UI" +msgstr "UI లో పుస్తకాలు భాషతో ఒక గుంపు తయారుచేయాలేమో" + +#: ../data/devhelp.schemas.in.h:24 +msgid "Whether the main window should start maximized." +msgstr "మూల కిటికీ ప్రారంభించవలెను సూక్ష్మీకరించబడనదా లేదా." + +#: ../data/devhelp.schemas.in.h:25 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "నెట్టులలో ఏది ఎంచుకొనబడినది, \"సారము\" లేదా \"వెతుకు\"." + +#: ../data/devhelp.schemas.in.h:26 +msgid "Width of the assistant window" +msgstr "సహాయ కిటికీ యొక్క వెడల్పు" + +#: ../data/devhelp.schemas.in.h:27 +msgid "Width of the index and search pane" +msgstr "వెతుకు అస్థిత్వం మరియు సూచి యొక్క పొడవు" + +#: ../data/devhelp.schemas.in.h:28 +msgid "Width of the main window" +msgstr "మూల కిటికీ యొక్క పొడవు" + +#: ../data/devhelp.schemas.in.h:29 +msgid "X position of assistant window" +msgstr "సహాయ కిటికీ యొక్క X స్థానము" + +#: ../data/devhelp.schemas.in.h:30 +msgid "X position of main window" +msgstr "మూల కిటికీ యొక్క X స్థానము" + +#: ../data/devhelp.schemas.in.h:31 +msgid "Y position of assistant window" +msgstr "సహాయ కిటికీ యొక్క Y స్థానము" + +#: ../data/devhelp.schemas.in.h:32 +msgid "Y position of main window" +msgstr "మూల కిటికీ యొక్క Y స్థానము" + +#: ../data/ui/devhelp.builder.h:1 +msgid "Book Shelf" +msgstr "పుస్తకాల అర " + +#: ../data/ui/devhelp.builder.h:2 +msgid "Enabled" +msgstr "చేతనపరచివుంది" + +#: ../data/ui/devhelp.builder.h:3 +msgid "Fonts" +msgstr "ఫాంట్లు" + +#: ../data/ui/devhelp.builder.h:4 +msgid "Preferences" +msgstr "ప్రాధాన్యతలు" + +#: ../data/ui/devhelp.builder.h:5 +msgid "Title" +msgstr "శీర్షిక" + +#: ../data/ui/devhelp.builder.h:6 +msgid "_Fixed width:" +msgstr "స్థిర పొడవు (_F):" + +#: ../data/ui/devhelp.builder.h:7 +msgid "_Group by language" +msgstr "భాషతో సమీకరించు (_G)" + +#: ../data/ui/devhelp.builder.h:8 +msgid "_Use system fonts" +msgstr "వ్యవస్థ అక్షరశైలి వాడు (_U)" + +#: ../data/ui/devhelp.builder.h:9 +msgid "_Variable width: " +msgstr "చరరాశి పొడవు (_V):" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "డెవ్ సహాయ సహకారం" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "ములుకు వద్ద పదము కొరకు డెవ్ సహాయం F2 ను పైకి తెచ్చుటకు తయారవుతుంది" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "APIపత్రరచన కనబర్చుము " + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "ములుకు వద్ద పదము కొరకు APIపత్రరచన కనబర్చుము" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:74 +msgid "Devhelp — Assistant" +msgstr "డెవ్ హెల్ప్ - సహాయకం" + +#: ../src/dh-assistant-view.c:336 +msgid "Book:" +msgstr "పుస్తకం:" + +#: ../src/dh-book.c:252 +#, c-format +msgid "Language: %s" +msgstr "భాష: %s" + +#: ../src/dh-book.c:253 +msgid "Language: Undefined" +msgstr "భాష: గుర్తించలేని " + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "పుస్తకం:" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "పుట:" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "ముఖ్యపదం " + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "ప్రమేయం" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "స్ట్రక్ట్" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "మాక్రో" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "ఈనం " + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "రకం" + +#: ../src/dh-main.c:47 +msgid "Search for a keyword" +msgstr "ఒక మీట పలకం కొరకు వెతుకు" + +#: ../src/dh-main.c:52 +msgid "Quit any running Devhelp" +msgstr "నడుచుచున్న డెవ్ సహాయం నుండి నిష్క్రమించు" + +#: ../src/dh-main.c:57 +msgid "Display the version and exit" +msgstr "బయటకు మరియు వివరణం ప్రదర్శించు" + +#: ../src/dh-main.c:62 +msgid "Focus the Devhelp window with the search field active" +msgstr "వెతుకు క్షేత్ర క్రియాశీలంతో డెవ్ సహాయ కిటికీ కేంద్రము" + +#: ../src/dh-main.c:67 +msgid "Search and display any hit in the assistant window" +msgstr "సహాయ కిటికీలో ఏదైనా హిట్ ను వెతుకు మరియు ప్రదర్శించు " + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "నిరీక్షించబడిన '%s' పొందు '%s' గీత వద్ద %d, నిలువుపట్టీ %d" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "'%s' నిస్సారమైన నామముఖాళీ %d గీత, %d నిలువుపట్టీ వద్ద " + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"%d గీత, %d నిలువుపట్టీ వద్ద\" శీర్షిక\", \"పేరు\", మరియు \"జోడి\" మూలపదార్ధములు " +"ఆపేక్షించుచున్నవి" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"%d గీత పై <ఉప> లోపల \"నామము\" మరియు\" జోడి \"మూలపదార్థములు ఆపేక్షించుచున్నవి, %d నిలువుపట్టీ" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "%s లోపల %d గీతలో, %d నిలువుపట్టీ పై \"పేరు\" మరియు \"జోడి\" మూలపదార్థములు అవసరము" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "%d గీత పై <ఉప> లోపల \"రకం \" మూలపదార్థములు ఆపేక్షించుచున్నవి, %d నిలువుపట్టీ" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "'%s' పుస్తకం సంగ్రహము చేయుటకు వీలుకాదు: %s" + +#: ../src/dh-search.c:500 +msgid "All books" +msgstr "అన్నీ పుస్తకాలు " + +#: ../src/dh-search.c:1118 +msgid "Search in:" +msgstr "ఇందులో వెతుకు:" + +#: ../src/dh-window.c:99 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:100 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:101 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:102 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:103 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:104 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:105 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:106 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:107 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:726 +msgid "translator_credits" +msgstr "" +"Pramod \n" +"Praveen Illa , 2012." + +#: ../src/dh-window.c:733 +msgid "A developers' help browser for GNOME" +msgstr "గ్నోమ్ కొరకు అభివృద్ధికారుల సహాయ విహారకం" + +#: ../src/dh-window.c:740 +msgid "DevHelp Website" +msgstr "డెవ్ సహాయ వెబ్ సైట్" + +#: ../src/dh-window.c:764 +msgid "_File" +msgstr "ఫైల్ (_F)" + +#: ../src/dh-window.c:765 +msgid "_Edit" +msgstr "సవరణ (_E)" + +#: ../src/dh-window.c:766 +msgid "_View" +msgstr "వీక్షణం (_V)" + +#: ../src/dh-window.c:767 +msgid "_Go" +msgstr "వెళ్ళు (_G)" + +#: ../src/dh-window.c:768 +msgid "_Help" +msgstr "సహాయం (_H)" + +#. File menu +#: ../src/dh-window.c:771 +msgid "_New Window" +msgstr "కొత్త కిటికీ (_N)" + +#: ../src/dh-window.c:773 +msgid "New _Tab" +msgstr "కొత్త నెట్టు (_T)" + +#: ../src/dh-window.c:775 +msgid "_Print…" +msgstr "ముద్రించు...(_P)" + +#: ../src/dh-window.c:787 ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "తరువాతది వెతుకు" + +#: ../src/dh-window.c:789 ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "ముందుది వెతుకు" + +#: ../src/dh-window.c:796 +msgid "Go to the previous page" +msgstr "ముందు పుటకు వెళ్ళు" + +#: ../src/dh-window.c:799 +msgid "Go to the next page" +msgstr "తరువాత పుటకు వెళ్ళు" + +#: ../src/dh-window.c:802 +msgid "_Contents Tab" +msgstr "సారముల నెట్టు (_C)" + +#: ../src/dh-window.c:805 +msgid "_Search Tab" +msgstr "వెతుకు నెట్టు (_S)" + +#. View menu +#: ../src/dh-window.c:809 +msgid "_Larger Text" +msgstr "భారీ పాఠం (_L)" + +#: ../src/dh-window.c:810 +msgid "Increase the text size" +msgstr "పాఠం పరిమాణము పెంచుము " + +#: ../src/dh-window.c:812 +msgid "S_maller Text" +msgstr "చిన్న పాఠం (_m)" + +#: ../src/dh-window.c:813 +msgid "Decrease the text size" +msgstr "పాఠం పరిమాణము తగ్గించుము " + +#: ../src/dh-window.c:815 +msgid "_Normal Size" +msgstr "సాధారణ పరిమానము (_N)" + +#: ../src/dh-window.c:816 +msgid "Use the normal text size" +msgstr "సాధారణ పాఠ్య పరిమాణము ఉపయోగించుము " + +#: ../src/dh-window.c:825 +msgid "Leave fullscreen mode" +msgstr "పూర్తితెర విధమును వదిలివెళ్ళు" + +#: ../src/dh-window.c:832 +msgid "Display in full screen" +msgstr "పూర్తితెరలో ప్రదర్శించు" + +#. Translators: This refers to text size +#: ../src/dh-window.c:952 +msgid "Larger" +msgstr "పెద్దగా" + +#. Translators: This refers to text size +#: ../src/dh-window.c:955 +msgid "Smaller" +msgstr "చిన్నగా" + +#: ../src/dh-window.c:1159 +msgid "Contents" +msgstr "విషయసూచిక" + +#: ../src/dh-window.c:1169 +msgid "Search" +msgstr "శోధించు" + +#: ../src/dh-window.c:1344 +msgid "Error opening the requested link." +msgstr "అడిగిన లింక్ తెరువుటలో దోషం " + +#: ../src/dh-window.c:1657 ../src/dh-window.c:1896 +msgid "Empty Page" +msgstr "ఖాళీ పుట" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "వెతుకు:" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "వెతుకుమాట యొక్క సంభవించునది ముందుది వెతుకు" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "వెతుకుమాట యొక్క సంభవించునది తరువాత వెతుకు" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "సందర్భ స్పందన (_a)" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "మార్పు సందర్భ స్పందన" + +#~ msgid "About Devhelp" +#~ msgstr "డెవ్ సహాయంగురించి" + +#~ msgid "Preferences…" +#~ msgstr "ప్రాధాన్యతలు..." + +#~ msgid "Show advanced search options" +#~ msgstr "ఉన్నతస్థితి వెతుకు ఇఛ్ఛాపూర్వకాలు చూపుము" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "అత్యాధునిక వెతుకు ఇఛ్ఛాపూర్వకాలు చూపబడుచున్నవా ." + +#~ msgid "Fonts" +#~ msgstr "అక్షరశైలిలు" + +#~ msgid "Searching" +#~ msgstr "వెతుకుతున్నది" + +#~ msgid "_Back" +#~ msgstr "_వెనక్కి" + +#~ msgid "_Forward" +#~ msgstr "_మునుముందుకు" + +#~ msgid "_Show advanced search options" +#~ msgstr "_ఉన్నతస్థితి వెతుకు ఇఛ్ఛాపూర్వకాలను చూపుము" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "%d గీత పై <పరిక్రియ> లోపల నామము మరియు జోడి మూలపదార్థములు ఆపేక్షించుచున్నవి, %d నిలువుపట్టీ" + +#~ msgid "Could not create book parser" +#~ msgstr "పుస్తకం పార్సర్ ను సృష్టించుట వీలుకాదు" + +#~ msgid "Could not create markup parser" +#~ msgstr "గుర్తింపుపై పార్సర్ సృష్టించుటకు వీలుకాదు" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "zlib సహకారంతో డెవ్ సహాయము నిర్మించబడదు" + +#~ msgid "" +#~ "Selవెతుకుమాట యొక్క సంభవించునది తరువాత వెతుకుected tab, \"content\" or \"search\"" +#~ msgstr "\"వెతుకు\" లేదా \"సారము\", ఎంచుకొకబడిన నెట్టు" diff --git a/po/tg.gmo b/po/tg.gmo new file mode 100644 index 0000000..ff29da3 Binary files /dev/null and b/po/tg.gmo differ diff --git a/po/tg.po b/po/tg.po new file mode 100644 index 0000000..dd7dc62 --- /dev/null +++ b/po/tg.po @@ -0,0 +1,527 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Victor Ibragimov , 2013. +# +msgid "" +msgstr "" +"Project-Id-Version: Tajik Gnome\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2013-03-15 15:27+0000\n" +"PO-Revision-Date: 2013-01-19 18:09+0500\n" +"Last-Translator: Victor Ibragimov \n" +"Language-Team: \n" +"Language: tg\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.5.4\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:162 ../src/dh-app.c:347 +#: ../src/dh-window.c:647 +msgid "Devhelp" +msgstr "" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Width of the assistant window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "The width of the assistant window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Height of assistant window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The height of the assistant window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "X position of assistant window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The X position of the assistant window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "Y position of assistant window" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The Y position of the assistant window." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Use system fonts" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "Use the system default fonts." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Font for text" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Font for text with variable width." +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for fixed width text" +msgstr "" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "" + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "" + +#: ../src/devhelp.ui.h:1 +msgid "New window" +msgstr "Равзанаи нав" + +#: ../src/devhelp.ui.h:2 +msgid "Preferences" +msgstr "Хусусиятҳо" + +#: ../src/devhelp.ui.h:3 +msgid "About Devhelp" +msgstr "Дар бораи Devhelp" + +#: ../src/devhelp.ui.h:4 +msgid "Quit" +msgstr "Баромад" + +#: ../src/devhelp.ui.h:5 +msgid "New _Tab" +msgstr "Варақаи _нав" + +#: ../src/devhelp.ui.h:6 +msgid "_Print" +msgstr "_Чоп кардан" + +#: ../src/devhelp.ui.h:7 +msgid "_Find" +msgstr "_Ёфтан" + +#: ../src/devhelp.ui.h:8 +msgid "_Larger text" +msgstr "" + +#: ../src/devhelp.ui.h:9 +msgid "S_maller text" +msgstr "" + +#: ../src/devhelp.ui.h:10 +msgid "_Normal size" +msgstr "" + +#: ../src/devhelp.ui.h:11 +msgid "_Group by language" +msgstr "" + +#: ../src/devhelp.ui.h:12 +msgid "Enabled" +msgstr "Фаъол" + +#: ../src/devhelp.ui.h:13 +msgid "Title" +msgstr "Сарлавҳа" + +#: ../src/devhelp.ui.h:14 +msgid "Book Shelf" +msgstr "" + +#: ../src/devhelp.ui.h:15 +msgid "_Use system fonts" +msgstr "" + +#: ../src/devhelp.ui.h:16 +msgid "_Variable width: " +msgstr "" + +#: ../src/devhelp.ui.h:17 +msgid "_Fixed width:" +msgstr "_Бо бари муайян:" + +#: ../src/devhelp.ui.h:18 +msgid "Fonts" +msgstr "Шрифтҳо" + +#: ../src/dh-app.c:157 +msgid "translator_credits" +msgstr "" + +#: ../src/dh-app.c:164 +msgid "A developers' help browser for GNOME" +msgstr "" + +#: ../src/dh-app.c:172 +msgid "DevHelp Website" +msgstr "" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:121 +msgid "Devhelp — Assistant" +msgstr "" + +#: ../src/dh-assistant-view.c:403 +msgid "Book:" +msgstr "Китоб:" + +#: ../src/dh-book.c:255 +#, c-format +msgid "Language: %s" +msgstr "Забон: %s" + +#: ../src/dh-book.c:256 +msgid "Language: Undefined" +msgstr "Забон: Номаълум" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "Китоб" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "Саҳифа" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "Калидвожа" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "Функсия" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Макрос" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "Навъ" + +#: ../src/dh-main.c:43 +msgid "Opens a new Devhelp window" +msgstr "" + +#: ../src/dh-main.c:48 +msgid "Search for a keyword" +msgstr "" + +#: ../src/dh-main.c:49 ../src/dh-main.c:54 +msgid "KEYWORD" +msgstr "КАЛИДВОЖА" + +#: ../src/dh-main.c:53 +msgid "Search and display any hit in the assistant window" +msgstr "" + +#: ../src/dh-main.c:58 +msgid "Display the version and exit" +msgstr "" + +#: ../src/dh-main.c:63 +msgid "Quit any running Devhelp" +msgstr "" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "" + +#. Setup the Current/All Files selector +#: ../src/dh-sidebar.c:478 +msgid "Current" +msgstr "" + +#: ../src/dh-sidebar.c:481 +#, fuzzy +#| msgid "All books" +msgid "All Books" +msgstr "Ҳамаи китобҳо" + +#: ../src/dh-window.c:85 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:86 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:87 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:88 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:89 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:90 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:91 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:92 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:93 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:678 +#, fuzzy +#| msgid "_Back" +msgid "Back" +msgstr "_Бозгашт" + +#: ../src/dh-window.c:683 +#, fuzzy +#| msgid "_Forward" +msgid "Forward" +msgstr "_Пеш" + +#: ../src/dh-window.c:952 +msgid "Error opening the requested link." +msgstr "" + +#: ../src/dh-window.c:1302 ../src/dh-window.c:1488 +msgid "Empty Page" +msgstr "Саҳифаи холӣ" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "Ёфтан:" + +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "" + +#: ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "Ҷустуҷӯи навбатӣ" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "" + +#~ msgid "_Window" +#~ msgstr "_Равзана" + +#~ msgid "_Close" +#~ msgstr "_Пӯшидан" + +#~ msgid "_Edit" +#~ msgstr "_Таҳрир кардан" + +#~ msgid "_Copy" +#~ msgstr "_Нусха бардоштан" + +#~ msgid "Find _Next" +#~ msgstr "Ҷустуҷӯи _навбатӣ" + +#~ msgid "_View" +#~ msgstr "_Намоиш" + +#~ msgid "Fullscreen" +#~ msgstr "Экрани пурра" + +#~ msgid "_Go" +#~ msgstr "_Гузариш" + +#~ msgid "Search in:" +#~ msgstr "Ҷустуҷӯ дар:" + +#~ msgid "Contents" +#~ msgstr "Мундариҷа" + +#~ msgid "Search" +#~ msgstr "Ҷустуҷӯ" diff --git a/po/th.gmo b/po/th.gmo new file mode 100644 index 0000000..2aa441c Binary files /dev/null and b/po/th.gmo differ diff --git a/po/th.po b/po/th.po new file mode 100644 index 0000000..0695327 --- /dev/null +++ b/po/th.po @@ -0,0 +1,734 @@ +# Thai translation of devhelp +# Copyright (C) 2007-2016 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Theppitak Karoonboonyanan , 2007-2013, 2016. +# Visal Srivisal , 2008. +# Akom Chotiphantawanon , 2015. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2016-05-19 15:25+0000\n" +"PO-Revision-Date: 2016-05-27 15:06+0700\n" +"Last-Translator: Theppitak Karoonboonyanan \n" +"Language-Team: Thai \n" +"Language: th\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: Gtranslator 2.91.6\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "โปรแกรมช่วยเหลือนักพัฒนา" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp เป็นเบราว์เซอร์เอกสาร API ซึ่งช่วยให้ง่ายในการท่องดูส่วนต่างๆ ของไลบรารี, " +"ค้นหาด้วยชื่อฟังก์ชั่น, struct หรือแมโคร มีส่วนติดต่อแบบแท็บ และสามารถพิมพ์ผลการค้นหาได้" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp มีการเชื่อมรวมกับโปรแกรมอื่น เช่น Glade, Anjuta หรือ Geany" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "เครื่องมือเรียกดูเอกสาร" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "เอกสารประกอบ;สอบถาม;คู่มือ;นักพัฒนา;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "สถานะขยายแผ่ของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "กำหนดว่าควรเปิดหน้าต่างหลักแบบขยายแผ่หรือไม่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "ความกว้างของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "ความกว้างของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "ความสูงของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "ความสูงของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "ตำแหน่ง X ของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "ตำแหน่ง X ของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "ตำแหน่ง Y ของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "ตำแหน่ง Y ของหน้าต่างหลัก" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "ความกว้างของช่องดัชนีและค้นหา" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "ความกว้างของช่องดัชนีและค้นหา" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "แท็บที่เลือก: \"content\" หรือ \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "แท็บไหนที่เลือกอยู่: \"content\" หรือ \"search\"" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "หนังสือที่ไม่ใช้" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "รายชื่อหนังสือที่ผู้ใช้ปิดการใช้งาน" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "จัดกลุ่มตามภาษา" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "หนังสือควรจะจัดกลุ่มตามภาษาใน UI หรือไม่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "กำหนดว่าควรเปิดหน้าต่างผู้ช่วยแบบขยายแผ่หรือไม่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "กำหนดว่าควรเปิดหน้าต่างผู้ช่วยแบบขยายแผ่หรือไม่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "ความกว้างของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "ความกว้างของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "ความสูงของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "ความสูงของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "ตำแหน่ง X ของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "ตำแหน่ง X ของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "ตำแหน่ง Y ของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "ตำแหน่ง Y ของหน้าต่างผู้ช่วย" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "ใช้แบบอักษรของระบบ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "ใช้แบบอักษรปริยายของระบบ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "แบบอักษรสำหรับข้อความ" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "แบบอักษรสำหรับข้อความที่ใช้อักษรความกว้างไม่คงที่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "แบบอักษรสำหรับอักษรความกว้างคงที่" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "แบบอักษรสำหรับข้อความที่ใช้อักษรความกว้างคงที่ เช่น ตัวอย่างโค้ด" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "การรองรับ Devhelp" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "ทำให้ใช้ F2 เปิด Devhelp สำหรับคำที่ตำแหน่งเคอร์เซอร์ได้" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "แสดงเอกสารของ API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "หน้าต่างใ_หม่" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "_ปรับแต่ง" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "ปุ่ม_ลัดแป้นพิมพ์" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "เ_กี่ยวกับ" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "_ออก" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "ทั่วไป" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "โฟกัสที่ช่องค้นหารวม" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "ค้นหาในหน้าปัจจุบัน" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "เปิดหน้าต่างบานใหม่" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "เปิดแท็บใหม่" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "เปิด-ปิดการแสดงช่องด้านข้าง" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "ย้อนกลับ" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "ต่อไป" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "พิมพ์" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "ปิดหน้าต่างปัจจุบัน" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "ปิดหน้าต่างทั้งหมด" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "ซูม" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "ซูมเข้า" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "ซูมออก" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "ซูมปกติ" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "เบราว์เซอร์คู่มือนักพัฒนาสำหรับ GNOME" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"Theppitak Karoonboonyanan \n" +"Visal Srivisal \n" +"Akom Chotiphantawanon " + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "เว็บไซต์ Devhelp" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "เปิดหน้าต่าง Devhelp บานใหม่" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "ค้นหาคำหลัก" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "คำหลัก" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "ค้นหาและแสดงรายการที่พบในหน้าต่างผู้ช่วย" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "แสดงข้อมูลรุ่นโปรแกรมแล้วจบการทำงาน" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "ปิด Devhelp ทุกตัวที่กำลังทำงานอยู่" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — ผู้ช่วย" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "หนังสือ:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "ภาษา: %s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "ภาษา: ไม่ระบุ" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "หนังสือ" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "หน้า" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "คำหลัก" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "ฟังก์ชัน" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "โครงสร้าง" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "แมโคร" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "ชนิด" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "คุณสมบัติ" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "สัญญาณ" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "ต้องการ '%s' แต่พบ '%s' ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "namespace '%s' ไม่ถูกต้อง ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "ต้องมีอิลิเมนต์ \"title\", \"name\" และ \"link\" ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "ต้องมีอิลิเมนต์ \"name\" และ \"link\" ภายใต้ ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "ต้องมีอิลิเมนต์ \"name\" และ \"link\" ภายใต้ '%s' ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "ต้องมีอิลิเมนต์ \"type\" ภายใต้ ที่บรรทัด %d, คอลัมน์ %d" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "ไม่สามารถคลายข้อมูลหนังสือ '%s': %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "ปรับแต่ง" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "จัด_กลุ่มตามภาษา" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "เปิดใช้งาน" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "ชื่อ" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "หิ้งหนังสือ" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "ใ_ช้แบบอักษรของระบบ" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "ความกว้างไ_ม่คงที่: " + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "ความกว้าง_คงที่:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "แบบอักษร" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "เกิดข้อผิดพลาดขณะเปิดลิงก์ที่ร้องขอ" + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "ปิ_ด" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "หน้าว่าง" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "แ_ท็บใหม่" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "_พิมพ์" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "_หา" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "ตัวอักษรใ_หญ่ขึ้น" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "ตัวอักษรเ_ล็กลง" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "ขนาด_ปกติ" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "ช่องด้าน_ข้าง" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "เ_กี่ยวกับ Devhelp" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "ย้อนกลับ" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "ถัดไป" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "แสดงเอกสารของ API สำหรับคำที่ตำแหน่งเคอร์เซอร์" + +#~ msgid "Current" +#~ msgstr "ปัจจุบัน" + +#~ msgid "All Books" +#~ msgstr "ทุกเอกสาร" + +#~ msgid "Find:" +#~ msgstr "หา:" + +#~ msgid "Find Previous" +#~ msgstr "หาก่อนหน้า" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "หาข้อความค้นที่ปรากฏก่อนหน้านี้" + +#~ msgid "Find Next" +#~ msgstr "หาต่อ" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "หาข้อความค้นที่ปรากฏถัดไป" + +#~ msgid "C_ase Sensitive" +#~ msgstr "ตัวพิมพ์ใหญ่-เ_ล็กตรงกัน" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "เปิด-ปิดการค้นหาแบบตัวพิมพ์ใหญ่-เล็กตรงกัน" + +#~ msgid "_Window" +#~ msgstr "หน้า_ต่าง" + +#~ msgid "_Edit" +#~ msgstr "แ_ก้ไข" + +#~ msgid "_Copy" +#~ msgstr "_คัดลอก" + +#~ msgid "Find _Next" +#~ msgstr "หา_ต่อ" + +#~ msgid "Find _Previous" +#~ msgstr "หา_ก่อนหน้า" + +#~ msgid "_View" +#~ msgstr "มุ_มมอง" + +#~ msgid "Fullscreen" +#~ msgstr "เต็มจอ" + +#~ msgid "_Go" +#~ msgstr "ไ_ป" + +#~ msgid "_Search Tab" +#~ msgstr "แท็บ_ค้นหา" + +#~ msgid "_Contents Tab" +#~ msgstr "แท็บเนื้อ_หา" + +#~ msgid "Go to the previous page" +#~ msgstr "ไปหน้าก่อน" + +#~ msgid "Go to the next page" +#~ msgstr "ไปหน้าถัดไป" + +#~ msgid "Decrease the text size" +#~ msgstr "ลดขนาดตัวอักษร" + +#~ msgid "Increase the text size" +#~ msgstr "เพิ่มขนาดตัวอักษร" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "โฟกัสไปที่หน้าต่าง Devhelp แล้วเรียกช่องค้นหา" + +#~ msgid "Search in:" +#~ msgstr "ค้นหาใน:" + +#~ msgid "Contents" +#~ msgstr "เนื้อหา" + +#~ msgid "Search" +#~ msgstr "ค้นหา" + +#~ msgid "_File" +#~ msgstr "แ_ฟ้ม" + +#~ msgid "_Help" +#~ msgstr "_วิธีใช้" + +#~ msgid "Use the normal text size" +#~ msgstr "ใช้ตัวอักษรขนาดปกติ" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "ออกจากการแสดงผลเต็มจอ" + +#~ msgid "Display in full screen" +#~ msgstr "แสดงผลแบบเต็มจอ" + +#~ msgid "Larger" +#~ msgstr "ใหญ่ขึ้น" + +#~ msgid "Smaller" +#~ msgstr "เล็กลง" + +#~ msgid "Preferences…" +#~ msgstr "ปรับแต่ง…" + +#~ msgid "Show advanced search options" +#~ msgstr "แสดงตัวเลือกเพิ่มเติมของการค้นหา" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "กำหนดว่าจะแสดงตัวเลือกเพิ่มเติมของการค้นหาหรือไม่" + +#~ msgid "Fonts" +#~ msgstr "แบบอักษร" + +#~ msgid "Searching" +#~ msgstr "การค้นหา" + +#~ msgid "_Show advanced search options" +#~ msgstr "แ_สดงตัวเลือกเพิ่มเติมของการค้นหา" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "ต้องมีอิลิเมนต์ name และ link ภายใต้ ที่บรรทัด %d, คอลัมน์ %d" + +#~ msgid "Could not create book parser" +#~ msgstr "ไม่สามารถสร้างตัวแจงหนังสือ" + +#~ msgid "Could not create markup parser" +#~ msgstr "ไม่สามารถสร้างตัวแจงมาร์กอัพ" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp ไม่ได้คอมไพล์ไว้ในแบบที่รองรับ zlib" + +#~ msgid "Browse Contents" +#~ msgstr "แสดงเนื้อหา" diff --git a/po/tr.gmo b/po/tr.gmo new file mode 100644 index 0000000..697f849 Binary files /dev/null and b/po/tr.gmo differ diff --git a/po/tr.po b/po/tr.po new file mode 100644 index 0000000..c2275e1 --- /dev/null +++ b/po/tr.po @@ -0,0 +1,700 @@ +# Turkish translation of devhelp +# This file is distributed under the same license as the devhelp package. +# Copyright (C) 2007-2012 Free Software Foundation, Inc. +# +# Baris Cicek , 2007, 2008, 2009. +# Necdet Yücel , 2014. +# Osman Karagöz , 2017. +# Emin Tufan Çetin , 2017. +# Muhammet Kara , 2011, 2012, 2014, 2015, 2018. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2018-03-10 11:41+0000\n" +"PO-Revision-Date: 2018-03-11 11:15+0300\n" +"Last-Translator: Muhammet Kara \n" +"Language-Team: Türkçe \n" +"Language: tr\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: Gtranslator 2.91.7\n" +"X-POOTLE-MTIME: 1419278523.000000\n" + +#. Translators: please don't translate "Devhelp" (it's marked as +#. * translatable for transliteration only). +#. +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:152 src/dh-app.c:497 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 src/dh-app.c:154 +msgid "A developer tool for browsing and searching API documentation" +msgstr "" +"API belgelendirmesine gözatmak ve belgelendirme içinde arama yapmak için bir " +"geliştirici aracı" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +#| msgid "" +#| "Devhelp is an API documentation browser. It provides an easy way to " +#| "navigate through libraries, search by function, struct, or macro. It " +#| "provides a tabbed interface and allows to print results." +msgid "" +"Devhelp is a developer tool for browsing and searching API documentation. It " +"provides an easy way to navigate through libraries and to search by " +"function, struct, or macro." +msgstr "" +"Devhelp, API belgelendirmesine gözatmak ve belgelendirme içinde arama yapmak " +"için bir geliştirici aracıdır. Kitaplıklar arasında gezinti; işlev, yapı ve " +"makrolar ile arama için kolay bir yol sunar." + +#: data/org.gnome.Devhelp.appdata.xml.in:14 +msgid "" +"The documentation must be installed locally, so an internet connection is " +"not needed to use Devhelp." +msgstr "" +"Devhelp kullanırken internet bağlantısına gerek duyulmaması için; " +"belgelendirme, bilgisayarınızda kurulu olmalıdır." + +#: data/org.gnome.Devhelp.appdata.xml.in:18 +msgid "" +"Devhelp works natively with GTK-Doc, so the GTK+ and GNOME libraries are " +"well supported. But other development platforms can be supported as well, as " +"long as the API documentation is available in HTML and a *.devhelp2 index " +"file is generated." +msgstr "" +"Devhelp GTK-Doc ile doğal olarak çalışır; dolayısıyla, GTK+ ve GNOME " +"kütüphaneleri iyi desteklenir. Fakat API belgeleri HTML biçiminde olduğu ve " +"bir *.devhelp2 dizin dosyası üretildiği sürece, diğer geliştirme " +"platformları da desteklenebilir." + +#: data/org.gnome.Devhelp.appdata.xml.in:24 +#| msgid "" +#| "Devhelp integrates with other applications such as Glade, Anjuta, or " +#| "Geany." +msgid "" +"Devhelp integrates with other applications such as Glade, Builder or Anjuta, " +"and plugins are available for different text editors (gedit, Vim, Emacs, " +"Geany, …)." +msgstr "" +"Devhelp; Glade, Builder ya da Anjuta gibi diğer uygulamalarla bütünleşik " +"olarak çalışır ve farklı metin düzenleyiciler (gedit, Vim, Emacs, Geany, …) " +"için kullanılabilir eklentiler bulunmaktadır." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +#| msgid "Documentation Browser" +msgid "API Documentation Browser" +msgstr "API Belgeleri Tarayıcısı" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "belgelendirme;bilgiler;el kitabı;rehber;kılavuz;geliştirici;api;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Ana pencerenin büyültülmüş durumu" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Ana pencerenin büyültülmüş olarak başlatılması." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Ana pencerenin genişliği" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Ana pencerenin genişliği." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Ana pencerenin yüksekliği" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Ana pencerenin yüksekliği." + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "Width of the index and search pane" +msgstr "Dizin ve arama panelinin genişliği" + +#: data/org.gnome.devhelp.gschema.xml:36 +msgid "The width of the index and search pane." +msgstr "Dizin ve arama panelinin genişliği." + +#: data/org.gnome.devhelp.gschema.xml:42 +msgid "Books disabled" +msgstr "Kitaplar devre dışı" + +#: data/org.gnome.devhelp.gschema.xml:43 +msgid "List of books disabled by the user." +msgstr "Kullanıcı tarafından devre dışı bırakılan kitap listesi." + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "Group by language" +msgstr "Dile göre grupla" + +#: data/org.gnome.devhelp.gschema.xml:48 +msgid "Whether books should be grouped by language in the UI" +msgstr "Kitapların kullanıcı arayüzü (UI) içinde dile göre gruplandırılması" + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Width of the assistant window" +msgstr "Yardımcı pencerenin genişliği" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "The width of the assistant window." +msgstr "Yardımcı pencerenin genişliği." + +#: data/org.gnome.devhelp.gschema.xml:62 +msgid "Height of assistant window" +msgstr "Yardımcı pencerenin yüksekliği" + +#: data/org.gnome.devhelp.gschema.xml:63 +msgid "The height of the assistant window." +msgstr "Yardımcı pencerenin yüksekliği." + +#: data/org.gnome.devhelp.gschema.xml:69 +msgid "Use system fonts" +msgstr "Sistem yazı tiplerini kullan" + +#: data/org.gnome.devhelp.gschema.xml:70 +msgid "Use the system default fonts." +msgstr "Sistem öntanımlı yazı tiplerini kullan." + +#: data/org.gnome.devhelp.gschema.xml:74 +msgid "Font for text" +msgstr "Metin için yazı tipi" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Font for text with variable width." +msgstr "Değişken genişlikli metin için yazı tipi." + +#: data/org.gnome.devhelp.gschema.xml:79 +msgid "Font for fixed width text" +msgstr "Sabit genişlikli metin için yazı tipi" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Font for text with fixed width, such as code examples." +msgstr "Sabit genişlikli metin, örneğin kod örnekleri, için yazı tipi." + +#: plugins/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp desteği" + +#: plugins/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "API Belgelendirmesini Göster" + +#: src/dh-app.c:156 +msgid "translator-credits" +msgstr "" +"Barış Çiçek \n" +"Muhammet Kara \n" +"Osman Karagöz " + +#: src/dh-app.c:158 +msgid "Devhelp Website" +msgstr "Devhelp Web Sitesi" + +#: src/dh-app.c:401 +msgid "Opens a new Devhelp window" +msgstr "Yeni bir Devhelp penceresi açar" + +#: src/dh-app.c:406 +msgid "Search for a keyword" +msgstr "Bir anahtar sözcük için ara" + +#: src/dh-app.c:407 src/dh-app.c:412 +msgid "KEYWORD" +msgstr "ANAHTAR SÖZCÜK" + +#: src/dh-app.c:411 +msgid "Search and display any hit in the assistant window" +msgstr "Ara ve bulunan herhangi bir ögeyi yardımcı penceresinde göster" + +#: src/dh-app.c:416 +msgid "Display the version and exit" +msgstr "Sürümü göster ve çık" + +#: src/dh-app.c:421 +msgid "Quit any running Devhelp" +msgstr "Çalışan herhangi bir Devhelp’ten çık" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Yardımcı" + +#: src/dh-assistant-view.c:400 +msgid "Book:" +msgstr "Kitap:" + +#: src/dh-book.c:348 +#, c-format +msgid "Language: %s" +msgstr "Dil: %s" + +#: src/dh-book.c:349 +msgid "Language: Undefined" +msgstr "Dil: Tanımlanmamış" + +#: src/dh-book-tree.c:655 +msgid "_Collapse All" +msgstr "T_üm Dalları Kapat" + +#. i18n: a documentation book +#: src/dh-link.c:549 +msgid "Book" +msgstr "Kitap" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:553 +msgid "Page" +msgstr "Sayfa" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:558 +msgid "Keyword" +msgstr "Anahtar sözcük" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:564 +msgid "Function" +msgstr "İşlev" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:570 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:576 +msgid "Macro" +msgstr "Makro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:582 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:588 +msgid "Type" +msgstr "Tür" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:594 +msgid "Property" +msgstr "Özellik" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:600 +msgid "Signal" +msgstr "Sinyal" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Tercihler" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Dile göre grupla" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Etkinleştirildi" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Başlık" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Kitap Rafı" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Sistem yazı tiplerini kullan" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "_Değişken genişlik: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "_Sabit genişlik:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Yazı Tipleri" + +#: src/dh-tab.c:68 +msgid "Error opening the requested link." +msgstr "İstenen bağlantı açılırken hata oluştu." + +#: src/dh-web-view.c:201 +msgid "Empty Page" +msgstr "Boş Sayfa" + +#: src/dh-window.ui:7 src/dh-window.ui:45 +msgid "_Side Panel" +msgstr "Yan P_anel" + +#: src/dh-window.ui:13 src/dh-window.ui:51 +msgid "_Print" +msgstr "_Yazdır" + +#: src/dh-window.ui:17 src/dh-window.ui:55 +msgid "_Find" +msgstr "_Bul" + +#: src/dh-window.ui:23 src/dh-window.ui:61 +msgid "_Larger Text" +msgstr "Daha _Büyük Metin" + +#: src/dh-window.ui:27 src/dh-window.ui:65 +msgid "S_maller Text" +msgstr "Daha _Küçük Metin" + +#: src/dh-window.ui:31 src/dh-window.ui:69 +msgid "_Normal Size" +msgstr "Olağa_n Boyut" + +#: src/dh-window.ui:39 src/menus.ui:30 +msgid "New _Window" +msgstr "Yeni _Pencere" + +#: src/dh-window.ui:75 src/menus.ui:36 +msgid "_Preferences" +msgstr "_Tercihler" + +#: src/dh-window.ui:81 src/menus.ui:42 +msgid "_Keyboard Shortcuts" +msgstr "_Klavye Kısayolları" + +#: src/dh-window.ui:85 src/menus.ui:46 +msgid "_Help" +msgstr "_Yardım" + +#: src/dh-window.ui:89 +msgid "_About Devhelp" +msgstr "Devhelp _Hakkında" + +#: src/dh-window.ui:93 src/menus.ui:54 +msgid "_Quit" +msgstr "_Çıkış" + +#: src/dh-window.ui:122 +msgid "Back" +msgstr "Geri" + +#: src/dh-window.ui:141 +msgid "Forward" +msgstr "İleri" + +#: src/dh-window.ui:187 +msgid "New Tab" +msgstr "Yeni Sekme" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Genel" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Genel aramaya odaklan" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Sayfada bul" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Yeni bir pencere aç" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Yeni bir sekme aç" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Yan panel görünürlüğünü değiştir" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Geri git" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "İleri git" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "Yazdır" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Geçerli pencereyi kapat" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Tüm pencereleri kapat" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Yakınlaştırma" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Yakınlaştır" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Uzaklaştır" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Yakınlaştırmayı sıfırla" + +#: src/menus.ui:50 +msgid "_About" +msgstr "_Hakkında" + +#~ msgid "Developer’s Help program" +#~ msgstr "Geliştirici Yardım programı" + +#~ msgid "X position of main window" +#~ msgstr "Ana pencerenin X konumu" + +#~ msgid "The X position of the main window." +#~ msgstr "Ana pencerenin X pozisyonu." + +#~ msgid "Y position of main window" +#~ msgstr "Ana pencerenin Y konumu" + +#~ msgid "The Y position of the main window." +#~ msgstr "Ana pencerenin Y pozisyonu." + +#~ msgid "Whether the assistant window should be maximized" +#~ msgstr "Yardımcı pencerenin boyutunun büyültülüp büyütülmeyeceği" + +#~ msgid "Whether the assistant window should be maximized." +#~ msgstr "Yardımcı pencerenin boyutunun büyültülüp büyütülmeyeceği." + +#~ msgid "X position of assistant window" +#~ msgstr "Yardımcı pencerenin X konumu" + +#~ msgid "The X position of the assistant window." +#~ msgstr "Yardımcı pencerenin X pozisyonu." + +#~ msgid "Y position of assistant window" +#~ msgstr "Yardımcı pencerenin Y konumu" + +#~ msgid "The Y position of the assistant window." +#~ msgstr "Yardımcı pencerenin Y pozisyonu." + +#~ msgid "A developers’ help browser for GNOME" +#~ msgstr "GNOME için, geliştiricinin yardım tarayıcısı" + +#~ msgid "50%" +#~ msgstr "%%50" + +#~ msgid "75%" +#~ msgstr "%%75" + +#~ msgid "100%" +#~ msgstr "%%100" + +#~ msgid "125%" +#~ msgstr "%%125" + +#~ msgid "150%" +#~ msgstr "%%150" + +#~ msgid "175%" +#~ msgstr "%%175" + +#~ msgid "200%" +#~ msgstr "%%200" + +#~ msgid "300%" +#~ msgstr "%%300" + +#~ msgid "400%" +#~ msgstr "%%400" + +#~ msgid "_Close" +#~ msgstr "_Kapat" + +#~ msgid "Side _Panel" +#~ msgstr "Yan _Panel" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Seçilen sekme: \"content\" (içerik) ya da \"search\" (arama)" + +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Hangi sekme seçili: \"content\" (içerik) ya da \"search\" (arama)." + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "F2 imlecin bulunduğu kelimede Devhelp'i getirir" + +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Beklenen '%s', alınan '%s', satır %d, sütun %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "'%s' geçersiz isim alanı; satır %d, sütun %d" + +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "\"title\", \"name\" ve \"link\" öğeleri gerekli; satır %d, sütun %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ " içinde \"name\" ve \"link\" öğeleri gerekli; satır %d, sütun %d" + +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "'%s' içinde \"isim\" ve \"link\" öğeleri gerekli; satır %d, sütun %d" + +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr " içinde \"type\" öğesi gerekli; satır %d, sütun %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "'%s' kitabı sıkıştırması açılamadı: %s" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "İmlecin bulunduğu kelime için API belgelendirmesini göster" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Devhelp penceresini arama alanı aktif şekilde odakla" + +#~ msgid "All books" +#~ msgstr "Tüm kitaplar" + +#~ msgid "Search in:" +#~ msgstr "Arama yeri:" + +#~ msgid "_File" +#~ msgstr "_Dosya" + +#~ msgid "_Edit" +#~ msgstr "_Düzenle" + +#~ msgid "_View" +#~ msgstr "_Görünüm" + +#~ msgid "_Go" +#~ msgstr "_Git" + +#~ msgid "Find Next" +#~ msgstr "Sonrakini Bul" + +#~ msgid "Find Previous" +#~ msgstr "Öncekini Bul" + +#~ msgid "Go to the previous page" +#~ msgstr "Önceki sayfaya git" + +#~ msgid "Go to the next page" +#~ msgstr "Sonraki sayfaya git" + +#~ msgid "_Contents Tab" +#~ msgstr "İçi_ndekiler Sekmesi" + +#~ msgid "_Search Tab" +#~ msgstr "_Arama Sekmesi" + +#~ msgid "Increase the text size" +#~ msgstr "Metin boyutunu büyült" + +#~ msgid "Decrease the text size" +#~ msgstr "Metin boyutunu küçült" + +#~ msgid "Use the normal text size" +#~ msgstr "Normal metin boyutunu kullan" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Tam ekran kipinden çık" + +#~ msgid "Display in full screen" +#~ msgstr "Tam ekranda göster" + +#~ msgid "Larger" +#~ msgstr "Daha Büyük" + +#~ msgid "Smaller" +#~ msgstr "Daha Küçük" + +#~ msgid "Contents" +#~ msgstr "İçindekiler" + +#~ msgid "Search" +#~ msgstr "Ara" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Arama dizgisinin bir önceki geçtiği yeri bul" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Arama dizgisinin bir sonraki geçtiği yeri bul" + +#~ msgid "C_ase Sensitive" +#~ msgstr "_Büyük Küçük Harf Duyarlı" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Harf duyarlı aramayı aç ya da kapat" diff --git a/po/ug.gmo b/po/ug.gmo new file mode 100644 index 0000000..d5015c8 Binary files /dev/null and b/po/ug.gmo differ diff --git a/po/ug.po b/po/ug.po new file mode 100644 index 0000000..d0c4e8e --- /dev/null +++ b/po/ug.po @@ -0,0 +1,494 @@ +# Uyghur translation for devhelp. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Gheyret Kenji , YEAR. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2013-02-06 10:10+0000\n" +"PO-Revision-Date: 2013-02-13 19:47+0900\n" +"Last-Translator: Gheyret Kenji \n" +"Language-Team: Uyghur Computer Science Association \n" +"Language: ug\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:162 ../src/dh-app.c:345 +#: ../src/dh-window.c:633 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "ئىجادىيەتچىلەرنىڭ ياردەم پروگراممىسى" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "پۈتۈك كۆرگۈ" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;قوللانما;ئۇچۇر;چۈشەندۈرۈشى;ئىجادىيەتچى;پروگرامما ئېغىزى;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "ئاساسىي كۆزنەك ئەڭ چوڭ ھالەتتە" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "ئاساسىي كۆزنەك ئەڭ چوڭ ھالەتتە قوزغىتىلغانمۇ يوق." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "ئاساسىي كۆزنەكنىڭ كەڭلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "ئاساسىي كۆزنەكنىڭ كەڭلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "ئاساسىي كۆزنەكنىڭ ئېگىزلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "ئاساسىي كۆزنەكنىڭ ئېگىزلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "ئاساسىي كۆزنەكنىڭ X ئوق قىممىتى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "ئاساسىي كۆزنەكنىڭ X ئوق قىممىتى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "ئاساسىي كۆزنەكنىڭ Y ئوق قىممىتى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "ئاساسىي كۆزنەكنىڭ Y ئوق قىممىتى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "ئىندېكس ۋە ئىزدەش پەنجىرىسىنىڭ كەڭلىكى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "ئىندېكس ۋە ئىزدەش پەنجىرىسىنىڭ كەڭلىكى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "تاللانغان بەتكۈچ: (\"content\" ياكى \"search\")" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "قايسى بەتكۈچ تاللانغان(\"content\" ياكى \"search\") ." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "كىتاب چەكلەنگەن" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "ئىشلەتكۈچى كىتاب تىزىملىكىنى چەكلەنگەن" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "تىل بويىچە گۇرۇپپىلا" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "كىتابلار كۆرۈنمە يۈزدە تىل بويىچە گۇرۇپپىلىنامدۇ يوق" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Width of the assistant window" +msgstr "ياردەمچى كۆزنەكنىڭ كەڭلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "The width of the assistant window." +msgstr "ياردەمچى كۆزنەكنىڭ كەڭلىكى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Height of assistant window" +msgstr "ياردەمچى كۆزنەكنىڭ ئېگىزلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The height of the assistant window." +msgstr "ياردەمچى كۆزنەكنىڭ ئېگىزلىكى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "X position of assistant window" +msgstr "ياردەمچى كۆزنەكنىڭ X ئوق قىممىتى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The X position of the assistant window." +msgstr "ياردەمچى كۆزنەكنىڭ X ئوق قىممىتى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "Y position of assistant window" +msgstr "ياردەمچى كۆزنەكنىڭ Y ئوق قىممىتى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The Y position of the assistant window." +msgstr "ياردەمچى كۆزنەكنىڭ Y ئوق قىممىتى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Use system fonts" +msgstr "سىستېما خەت نۇسخىسى ئىشلەت" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "Use the system default fonts." +msgstr "سىستېمىنىڭ كۆڭۈلدىكى فونتىنى ئىشلىتىش" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Font for text" +msgstr "تېكىست خەت نۇسخىسى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Font for text with variable width." +msgstr "ئۆزگىرىشچان كەڭلىكتىكى تېكىست خەت نۇسخىسى." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for fixed width text" +msgstr "تەڭ كەڭلىكتىكى تېكىست فونتى" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with fixed width, such as code examples." +msgstr "تېكىست ئۈچۈن ئىشلىتىدىغان ھەرپ كەڭلىكى ئوخشاش فونت، مەسىلەن ئەسلى كود قاتارلىقلاردا." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp تېخنىكىلىق ياردەملىرى" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "[F2] نى باسسا نۇربەلگىسى تۇرغان ئورۇندىكى سۆزنى Devhelp تىن ئىزدەيدۇ." + +#: ../misc/gedit-plugin/devhelp.py:69 +msgid "Show API Documentation" +msgstr "API ھەققىدىكى پۈتۈكلەرنى كۆرسىتىش" + +#: ../misc/gedit-plugin/devhelp.py:71 +msgid "Show API Documentation for the word at the cursor" +msgstr "نۇربەلگىسى تۇرغان يەردىكى سۆزنىڭ API پۈتۈكىنى كۆرسىتىش." + +#: ../src/devhelp.ui.h:1 +msgid "New window" +msgstr "يېڭى كۆزنەك" + +#: ../src/devhelp.ui.h:2 +msgid "Preferences" +msgstr "مايىللىق" + +#: ../src/devhelp.ui.h:3 +msgid "About Devhelp" +msgstr "Devhelp ھەققىدە" + +#: ../src/devhelp.ui.h:4 +msgid "Quit" +msgstr "ئاخىرلاشتۇر" + +#: ../src/devhelp.ui.h:5 +msgid "New _Tab" +msgstr "يېڭى بەتكۈچ(_T)" + +#: ../src/devhelp.ui.h:6 +msgid "_Print" +msgstr "باس(_P)" + +#: ../src/devhelp.ui.h:7 +msgid "_Find" +msgstr "ئىزدە(_F)" + +#: ../src/devhelp.ui.h:8 +msgid "_Larger text" +msgstr "چوڭراق تېكىست(_L)" + +#: ../src/devhelp.ui.h:9 +msgid "S_maller text" +msgstr "كىچىكرەك تېكىست(_M)" + +#: ../src/devhelp.ui.h:10 +msgid "_Normal size" +msgstr "ئادەتتىكى چوڭلۇقى(_N)" + +#: ../src/devhelp.ui.h:11 +msgid "_Group by language" +msgstr "تىل بويىچە گۇرۇپپىلا(_G)" + +#: ../src/devhelp.ui.h:12 +msgid "Enabled" +msgstr "ئىناۋەتلىك قىلىنغان" + +#: ../src/devhelp.ui.h:13 +msgid "Title" +msgstr "ماۋزۇ" + +#: ../src/devhelp.ui.h:14 +msgid "Book Shelf" +msgstr "كىتاب تەكچىسى" + +#: ../src/devhelp.ui.h:15 +msgid "_Use system fonts" +msgstr "سىستېما خەت نۇسخىلىرىنى ئىشلەت(_U)" + +#: ../src/devhelp.ui.h:16 +msgid "_Variable width: " +msgstr "ئۆزگىرىشچان كەڭلىك(_V): " + +#: ../src/devhelp.ui.h:17 +msgid "_Fixed width:" +msgstr "مۇقىم كەڭلىك(_F)" + +#: ../src/devhelp.ui.h:18 +msgid "Fonts" +msgstr "خەت نۇسخا" + +#: ../src/dh-app.c:157 +msgid "translator_credits" +msgstr "Sahran \n" +"Gheyret T.Kenji \n" +"Zeper \n" +"Abduxukur Abdurixit \n" +"\n" +"Launchpad Contributions:\n" +" Burkut https://launchpad.net/~burkut\n" +" Gheyret T.Kenji https://launchpad.net/~gheyretkenji\n" +" Sahran https://launchpad.net/~sahran" + +#: ../src/dh-app.c:164 +msgid "A developers' help browser for GNOME" +msgstr "گىنوم ئىجادىيەتچىلىرىنىڭ ياردەم ئۇچۇر كۆرگۈسى" + +#: ../src/dh-app.c:172 +msgid "DevHelp Website" +msgstr "DevHelp تورتۇراسى" + +#. i18n: Please don't translate "Devhelp". +#: ../src/dh-assistant.c:121 +msgid "Devhelp — Assistant" +msgstr "Devhelp – ياردەمچىسى" + +#: ../src/dh-assistant-view.c:403 +msgid "Book:" +msgstr "كىتاب:" + +#: ../src/dh-book.c:255 +#, c-format +msgid "Language: %s" +msgstr "تىل: %s" + +#: ../src/dh-book.c:256 +msgid "Language: Undefined" +msgstr "تىل: ئېنىقلانمىغان" + +#. i18n: a documentation book +#: ../src/dh-link.c:267 +msgid "Book" +msgstr "كىتاب" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:270 +msgid "Page" +msgstr "بەت" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:274 +msgid "Keyword" +msgstr "ھالقىلىق سۆز" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:279 +msgid "Function" +msgstr "فۇنكسىيە" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:284 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:289 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:294 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:299 +msgid "Type" +msgstr "تىپى" + +#: ../src/dh-main.c:43 +msgid "Opens a new Devhelp window" +msgstr "يېڭى بىر Devhelp كۆزنىكى ئاچىدۇ" + +#: ../src/dh-main.c:48 +msgid "Search for a keyword" +msgstr "ئاچقۇچ سۆزنى ئىزدەش" + +#: ../src/dh-main.c:49 ../src/dh-main.c:54 +msgid "KEYWORD" +msgstr "ئاچقۇچ سۆز" + +#: ../src/dh-main.c:53 +msgid "Search and display any hit in the assistant window" +msgstr "ئىزدەش نەتىجىسىنى ياردەمچى كۆزنەكتە كۆرسىتىش" + +#: ../src/dh-main.c:58 +msgid "Display the version and exit" +msgstr "نەشر ئۇچۇرنى كۆرسىتىپ ئاخىرلاشتۇرماق" + +#: ../src/dh-main.c:63 +msgid "Quit any running Devhelp" +msgstr "Devhelp نى ئاخىرلاشتۇرماق" + +#: ../src/dh-parser.c:97 ../src/dh-parser.c:199 ../src/dh-parser.c:263 +#: ../src/dh-parser.c:273 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "‹%s› كېلىشى كېرەك بولغان يەرگە ‹%s› كېلىپ قالدى(%d قۇر %d ئىستون)" + +#: ../src/dh-parser.c:114 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "namespace ‹%s› توغرا ئەمەس (%d قۇر %d ئىستون)" + +#: ../src/dh-parser.c:143 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "\"title\" ۋە \"name ۋە \"ئۇلانما\" لار %d قۇر %d ئىستونغا كېرەك." + +#: ../src/dh-parser.c:218 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "\"name\" ۋە \"ئۇلانما\" لار نىڭ %d قۇر %d ئىستونىغا كېرەك" + +#: ../src/dh-parser.c:298 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "\"name\" ۋە \"ئۇلانما\" لار ‹%s› نىڭ %d قۇر %d ئىستونىغا كېرەك" + +#: ../src/dh-parser.c:311 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "ئېلېمېنت \"type\" نىڭ %d قۇر %d ئىستونىغا كېرەك" + +#: ../src/dh-parser.c:514 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "كىتاب ‹%s› نى يايالمىدى: %s" + +#. Setup the Current/All Files selector +#: ../src/dh-sidebar.c:478 +msgid "Current" +msgstr "نۆۋەتتىكى" + +#: ../src/dh-sidebar.c:481 +msgid "All Books" +msgstr "بارلىق كىتابلار" + +#: ../src/dh-window.c:86 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:87 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:88 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:89 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:90 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:91 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:92 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:93 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:94 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:664 +msgid "Back" +msgstr "كەينى" + +#: ../src/dh-window.c:669 +msgid "Forward" +msgstr "ئالدى" + +#: ../src/dh-window.c:936 +msgid "Error opening the requested link." +msgstr "تەلەپ قىلىنغان ئۇلانمىنى ئېچىشتا خاتالىق كۆرۈلدى" + +#: ../src/dh-window.c:1286 ../src/dh-window.c:1472 +msgid "Empty Page" +msgstr "قۇرۇق بەت" + +#: ../src/eggfindbar.c:320 +msgid "Find:" +msgstr "ئىزدە:" + +#: ../src/eggfindbar.c:329 +msgid "Find Previous" +msgstr "كېيىنكىنى ئىزدە" + +#: ../src/eggfindbar.c:333 ../src/eggfindbar.c:336 +msgid "Find previous occurrence of the search string" +msgstr "باش قىسمىدا كۆرۈنگەن تېكىستلەرنى ئىزدەيدۇ" + +#: ../src/eggfindbar.c:342 +msgid "Find Next" +msgstr "كېيىنكىنى ئىزدە" + +#: ../src/eggfindbar.c:346 ../src/eggfindbar.c:349 +msgid "Find next occurrence of the search string" +msgstr "كەينىدە كۆرۈنگەن تېكىستلەرنى ئىزدەيدۇ" + +#: ../src/eggfindbar.c:358 +msgid "C_ase Sensitive" +msgstr "چوڭ-كىچىكلىكىنى پەرقلەندۈر(_A)" + +#: ../src/eggfindbar.c:362 ../src/eggfindbar.c:365 +msgid "Toggle case sensitive search" +msgstr "چوڭ-كىچىكلىكىنى پەرقلەندۈرۈشنى ئالماشتۇر" diff --git a/po/uk.gmo b/po/uk.gmo new file mode 100644 index 0000000..8823bce Binary files /dev/null and b/po/uk.gmo differ diff --git a/po/uk.po b/po/uk.po new file mode 100644 index 0000000..8a36fe2 --- /dev/null +++ b/po/uk.po @@ -0,0 +1,600 @@ +# Ukrainian translation of devhelp module. +# Copyright (C) 2001 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# Yuriy Syrota , 2003. +# Maxim Dziumanenko , 2007-2010, 2011. +# Korostil Daniel , 2011, 2012. +# Daniel Korostil , 2014. +msgid "" +msgstr "" +"Project-Id-Version: devhelp\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?product=devhel" +"p&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2014-02-14 04:16+0000\n" +"PO-Revision-Date: 2014-02-14 10:40+0300\n" +"Last-Translator: Daniel Korostil \n" +"Language-Team: linux.org.ua\n" +"Language: uk\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%" +"10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Virtaal 0.7.1\n" +"X-Project-Style: gnome\n" + +#: ../data/devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp — переглядач документації API. Він надає легкий спосіб переміщатись " +"між бібліотеками, шукати функції, структури, макроси, а також має вкладки і " +"може друкувати результати." + +#: ../data/devhelp.appdata.xml.in.h:2 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp інтегровано з іншими програмами, зокрема Glade, Anjuta та Geany." + +#: ../data/devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=get&target=devhelp." +"png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:212 ../src/dh-app.c:398 +#: ../src/dh-window.c:645 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "Програма довідки для розробників" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "Переглядач документації" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "документація;інформація;посібник;розробник;api;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "Головне вікно у розгорнутому вигляді" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "Чи розгортати головне вікно на старті." + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "Ширина головного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "Ширина головного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "Висота головного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "Висота головного вікна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "Горизонтальна позиція головного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "Горизонтальна позиція головного вікна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "Вертикальна позиція головного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "Вертикальна позиція головного вікна." + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "Ширина панелі змісту та пошуку" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "Ширина панелі змісту та пошуку." + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "Вибрано вкладку: «content» або «search»" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "Яка з закладок вибрано: «content» або «search»." + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "Книги вимкнено" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "Список книг вимкнено користувачем." + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "Група з мови" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "Чи книги слід групувати за мовою в інтерфейсі" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +#| msgid "Whether the main window should start maximized." +msgid "Whether the assistant window should be maximized" +msgstr "Чи слід розгортати вікно помічника" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +#| msgid "Whether the main window should start maximized." +msgid "Whether the assistant window should be maximized." +msgstr "Чи слід розгортати вікно помічника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "Ширина допоміжного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "Ширина вікна помічника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "Висота вікна помічника" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "Висота вікна помічника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "Горизонтальна позиція допоміжного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "Горизонтальна позиція вікна помічника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "Вертикальна позиція допоміжного вікна" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "Вертикальна позиція вікна помічника." + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "Використовувати системні шрифти" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "Використовувати системні типові шрифти." + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "Шрифт для тексту" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "Шрифт для тексту із змінною шириною." + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "Шрифт для фіксованого тексту" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "Шрифт для тексту із фіксованою шириною, для прикладів програм." + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Підказки Devhelp" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "Викликати Devhelp при натисканні F2 для слова під курсором" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Показати документацію з API" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +#| msgid "_New Window" +msgid "New _Window" +msgstr "Створити _вікно" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:8 +#| msgid "Preferences" +msgid "_Preferences" +msgstr "_Параметри" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "_Про програму" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:10 +msgid "_Quit" +msgstr "Ви_йти" + +#: ../src/dh-app.c:204 +#| msgid "translator_credits" +msgid "translator-credits" +msgstr "" +"Yuriy Syrota \n" +"Maxim Dziumanenko \n" +"Daniel Korostil " + +#: ../src/dh-app.c:214 +msgid "A developers' help browser for GNOME" +msgstr "Переглядач довідки для розробників GNOME" + +#: ../src/dh-app.c:222 +msgid "DevHelp Website" +msgstr "Сайт Devhelp" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — Помічник" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "Книга:" + +#: ../src/dh-book.c:240 +#, c-format +msgid "Language: %s" +msgstr "Мова: %s" + +#: ../src/dh-book.c:241 +msgid "Language: Undefined" +msgstr "Мова: Невизначена" + +#. i18n: a documentation book +#: ../src/dh-link.c:270 +msgid "Book" +msgstr "Книга" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:273 +msgid "Page" +msgstr "Сторінка" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:277 +msgid "Keyword" +msgstr "Ключове слово" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Function" +msgstr "Функція" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Struct" +msgstr "Структура" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:292 +msgid "Macro" +msgstr "Макрос" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:297 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:302 +msgid "Type" +msgstr "Тип" + +#: ../src/dh-main.c:41 +msgid "Opens a new Devhelp window" +msgstr "Відкриває нове вікно Devhelp" + +#: ../src/dh-main.c:46 +msgid "Search for a keyword" +msgstr "Знайти ключове слово" + +#: ../src/dh-main.c:47 ../src/dh-main.c:52 +msgid "KEYWORD" +msgstr "ФРАЗА" + +#: ../src/dh-main.c:51 +msgid "Search and display any hit in the assistant window" +msgstr "Шукати та показувати будь-які відповідності у вікні помічника" + +#: ../src/dh-main.c:56 +msgid "Display the version and exit" +msgstr "Показати версію та вийти" + +#: ../src/dh-main.c:61 +msgid "Quit any running Devhelp" +msgstr "Вийти з Devhelp" + +#: ../src/dh-parser.c:95 ../src/dh-parser.c:196 ../src/dh-parser.c:260 +#: ../src/dh-parser.c:270 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "Очікувалось «%s», а отримано «%s» в рядку %d, колонка %d" + +#: ../src/dh-parser.c:112 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "Неправильний простір назв \"%s\" в рядку %d, колонка %d" + +#: ../src/dh-parser.c:141 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "" +"Елементи \"title\", \"name\", та \"link\" є обов'язковими в рядку %d, " +"колонка %d" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "" +"Елементи \"name\" та \"link\" є обов'язковими у в рядку %d, колонка %d" + +#: ../src/dh-parser.c:295 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "" +"Елементи \"name\" та \"link\" є обов'язковими у '%s' в рядку %d, колонка %d" + +#: ../src/dh-parser.c:308 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "" +"Елемент \"type\" є обов'язковим всередині в рядку %d, колонка %d" + +#: ../src/dh-parser.c:511 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "Не вдалось розпакувати книгу «%s»: %s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "Параметри" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "_Групувати за мовою" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "Увімкнуто" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "Заголовок" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "Книжкова полиця" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "_Використовувати системні шрифти" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "_Змінна ширина:" + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "_Фіксована ширина:" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "Шрифти" + +#: ../src/dh-window.c:83 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:84 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:85 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:86 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:87 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:88 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:89 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:90 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:91 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:861 +msgid "Error opening the requested link." +msgstr "Помилка при відкриванні потрібного посилання." + +#: ../src/dh-window.c:1106 +msgid "_Close" +msgstr "_Закрити" + +#: ../src/dh-window.c:1134 ../src/dh-window.c:1306 +msgid "Empty Page" +msgstr "Порожня сторінка" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "Створити _вкладку" + +#: ../src/dh-window.ui.h:2 +#| msgid "_Print…" +msgid "_Print" +msgstr "_Надрукувати" + +#: ../src/dh-window.ui.h:3 +#| msgid "Find:" +msgid "_Find" +msgstr "З_найти" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "_Більший шрифт" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "_Менший шрифт" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "_Звичайний розмір" + +#: ../src/dh-window.ui.h:9 +#| msgid "About Devhelp" +msgid "_About Devhelp" +msgstr "_Про Devhelp" + +#: ../src/dh-window.ui.h:11 +msgid "Back" +msgstr "Назад" + +#: ../src/dh-window.ui.h:12 +msgid "Forward" +msgstr "Далі" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Показати документацію з API для слова під курсором" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "Сфокусувати на вікні Devhelp та активувати поле пошуку" + +#~ msgid "All books" +#~ msgstr "Усі книги" + +#~ msgid "Search in:" +#~ msgstr "Знайти у:" + +#~ msgid "_File" +#~ msgstr "_Файл" + +#~ msgid "_Edit" +#~ msgstr "З_міни" + +#~ msgid "_View" +#~ msgstr "П_ерегляд" + +#~ msgid "_Go" +#~ msgstr "Пере_хід" + +#~ msgid "_Help" +#~ msgstr "_Довідка" + +#~ msgid "Find Next" +#~ msgstr "Зайти наступне" + +#~ msgid "Find Previous" +#~ msgstr "Знайти попереднє" + +#~ msgid "Go to the previous page" +#~ msgstr "Перейти до попередньої сторінки" + +#~ msgid "Go to the next page" +#~ msgstr "Перейти до наступної сторінки" + +#~ msgid "_Contents Tab" +#~ msgstr "Вкладка _змісту" + +#~ msgid "_Search Tab" +#~ msgstr "Вкладка _пошуку" + +#~ msgid "Increase the text size" +#~ msgstr "Збільшити розмір тексту" + +#~ msgid "Decrease the text size" +#~ msgstr "Зменшити розмір тексту" + +#~ msgid "Use the normal text size" +#~ msgstr "Текст звичайного розміру" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "Вийти з повноекранного режиму" + +#~ msgid "Display in full screen" +#~ msgstr "Показати на весь екран" + +#~ msgid "Larger" +#~ msgstr "Більший шрифт" + +#~ msgid "Smaller" +#~ msgstr "Менший шрифт" + +#~ msgid "Contents" +#~ msgstr "Зміст" + +#~ msgid "Search" +#~ msgstr "Пошук" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Знайти попереднє місце знаходження рядка" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Знайти наступне місце знаходження рядка" + +#~ msgid "C_ase Sensitive" +#~ msgstr "З _урахуванням регістру" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Чутливість до регістру літер" + +#~ msgid "Preferences…" +#~ msgstr "Параметри…" diff --git a/po/vi.gmo b/po/vi.gmo new file mode 100644 index 0000000..ca1e32e Binary files /dev/null and b/po/vi.gmo differ diff --git a/po/vi.po b/po/vi.po new file mode 100644 index 0000000..b01f920 --- /dev/null +++ b/po/vi.po @@ -0,0 +1,732 @@ +# Vietnamese translation for Dev. Help. +# Copyright © 2008 Gnome i18n Project for Vietnamese. +# Nguyễn Thái Ngọc Duy , 2002, 2012. +# Clytie Siddall , 2005-2008. +# Trần Ngọc Quân , 2017. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-06-06 10:04+0000\n" +"PO-Revision-Date: 2017-06-07 14:02+0700\n" +"Last-Translator: Trần Ngọc Quân \n" +"Language-Team: Vietnamese \n" +"Language: vi\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: Gtranslator 2.91.7\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:232 src/dh-app.c:537 +#: src/dh-window.c:807 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer’s Help program" +msgstr "Chương trình trợ giúp cho nhà phát triển" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp là một bộ duyệt tài liệu API. Nó cung cấp một cách thức dễ dàng để " +"duyệt xuyên suốt các thư viện, tìm kiếm theo hàm, cấu trúc, hay vĩ lệnh. Nó " +"cung cấp một giao diện bản kiểm kê và cho phép in kết quả." + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "" +"Devhelp được tổ hợp cùng các ứng dụng khác như là Glade, Anjuta, hay Geany." + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "Bộ duyệt tài liệu" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "" +"documentation;information;manual;developer;api;tài liệu;tai lieu;thông tin;" +"thong tin;hướng dẫn sử dụng;huong dan su dung;phát triển;phat trien;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:18 +msgid "Main window maximized state" +msgstr "Tình trạng được cực đại hóa của cửa sổ chính" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Whether the main window should start maximized." +msgstr "Khi nào cửa sổ chính bắt đầu với kích cỡ lớn nhất." + +#: data/org.gnome.devhelp.gschema.xml:23 +msgid "Width of the main window" +msgstr "Độ rộng của cửa sổ chính" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "The width of the main window." +msgstr "Độ rộng của cửa sổ chính." + +#: data/org.gnome.devhelp.gschema.xml:28 +msgid "Height of main window" +msgstr "Độ cao của cửa sổ chính" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "The height of the main window." +msgstr "Độ cao của cửa sổ chính." + +#: data/org.gnome.devhelp.gschema.xml:33 +msgid "X position of main window" +msgstr "Vị trí X của cửa sổ chính" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "The X position of the main window." +msgstr "Vị trí X của cửa sổ chính." + +#: data/org.gnome.devhelp.gschema.xml:38 +msgid "Y position of main window" +msgstr "Vị trí Y của cửa sổ chính" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "The Y position of the main window." +msgstr "Vị trí Y của cửa sổ chính." + +#: data/org.gnome.devhelp.gschema.xml:45 +msgid "Width of the index and search pane" +msgstr "Độ rộng của mục lục và ô tìm kiếm" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "The width of the index and search pane." +msgstr "Độ rộng của mục lục và ô tìm kiếm." + +#: data/org.gnome.devhelp.gschema.xml:52 +msgid "Books disabled" +msgstr "Các sách bị tắt" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "List of books disabled by the user." +msgstr "Danh mục sách bị tắt bởi người dùng." + +#: data/org.gnome.devhelp.gschema.xml:57 +msgid "Group by language" +msgstr "Nhóm theo ngôn ngữ" + +#: data/org.gnome.devhelp.gschema.xml:58 +msgid "Whether books should be grouped by language in the UI" +msgstr "Có nhóm sách theo ngôn ngữ không trong giao diện người dùng hay không" + +#: data/org.gnome.devhelp.gschema.xml:67 +msgid "Whether the assistant window should be maximized" +msgstr "Có để cửa sổ trợ giúp phóng to hết cỡ không" + +#: data/org.gnome.devhelp.gschema.xml:68 +msgid "Whether the assistant window should be maximized." +msgstr "Có để cửa sổ trợ giúp phóng to hết cỡ không." + +#: data/org.gnome.devhelp.gschema.xml:72 +msgid "Width of the assistant window" +msgstr "Độ rộng của cửa sổ trợ giúp" + +#: data/org.gnome.devhelp.gschema.xml:73 +msgid "The width of the assistant window." +msgstr "Độ rộng của cửa sổ trợ giúp." + +#: data/org.gnome.devhelp.gschema.xml:77 +msgid "Height of assistant window" +msgstr "Độ cao của cửa sổ trợ giúp" + +#: data/org.gnome.devhelp.gschema.xml:78 +msgid "The height of the assistant window." +msgstr "Độ cao của cửa sổ trợ giúp." + +#: data/org.gnome.devhelp.gschema.xml:82 +msgid "X position of assistant window" +msgstr "Vị trí X của cửa sổ trợ giúp" + +#: data/org.gnome.devhelp.gschema.xml:83 +msgid "The X position of the assistant window." +msgstr "Vị trí X của cửa sổ trợ giúp." + +#: data/org.gnome.devhelp.gschema.xml:87 +msgid "Y position of assistant window" +msgstr "Vị trí Y của cửa sổ trợ giúp" + +#: data/org.gnome.devhelp.gschema.xml:88 +msgid "The Y position of the assistant window." +msgstr "Vị trí Y của cửa sổ trợ giúp." + +#: data/org.gnome.devhelp.gschema.xml:94 +msgid "Use system fonts" +msgstr "Dùng phông hệ thống" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Use the system default fonts." +msgstr "Sử dụng các phông mặc định của hệ thống." + +#: data/org.gnome.devhelp.gschema.xml:99 +msgid "Font for text" +msgstr "Phông cho văn bản" + +#: data/org.gnome.devhelp.gschema.xml:100 +msgid "Font for text with variable width." +msgstr "Phông cho văn bản có độ rộng thay đổi." + +#: data/org.gnome.devhelp.gschema.xml:104 +msgid "Font for fixed width text" +msgstr "Phông cho văn bản cố định" + +#: data/org.gnome.devhelp.gschema.xml:105 +msgid "Font for text with fixed width, such as code examples." +msgstr "Phông cho văn bản có độ rộng cố định, như mã ví dụ." + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Hỗ trợ của Trợ giúp phát triển" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "Hiển thị tài liệu hướng dẫn API" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:46 +msgid "New _Window" +msgstr "Cửa _sổ mới" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:89 +msgid "_Preferences" +msgstr "Tù_y thích" + +#: src/devhelp-menu.ui:41 src/dh-window.ui:95 +msgid "_Keyboard Shortcuts" +msgstr "_Phím tắt" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "G_iới thiệu" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:103 +msgid "_Quit" +msgstr "T_hoát" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "Chung" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "Nhắm vào tìm kiếm toàn thể" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "Tìm trong trang hiện tại" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "Mở một cửa sổ mới" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "Mở một thẻ mới" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle side panel visibility" +msgstr "Bật tắt việc hiển thị khung bên" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "Quay lại" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "Đi tiếp" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "In" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "Đóng cửa sổ hiện tại" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "Đóng mọi cửa sổ" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "Phóng đại" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "Phóng to" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "Thu nhỏ" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "Đặt lại phóng đại" + +#: src/dh-app.c:234 +msgid "A developers’ help browser for GNOME" +msgstr "Bộ duyệt trợ giúp của GNOME dành cho nhà phát triển" + +#: src/dh-app.c:236 +msgid "translator-credits" +msgstr "Nhóm Việt hóa Gnome " + +#: src/dh-app.c:238 +msgid "Devhelp Website" +msgstr "Trang web Devhelp" + +#: src/dh-app.c:462 +msgid "Opens a new Devhelp window" +msgstr "Mở cửa sổ Devhelp mới" + +#: src/dh-app.c:467 +msgid "Search for a keyword" +msgstr "Tìm từ khóa" + +#: src/dh-app.c:468 src/dh-app.c:473 +msgid "KEYWORD" +msgstr "TỪ_KHÓA" + +#: src/dh-app.c:472 +msgid "Search and display any hit in the assistant window" +msgstr "Tìm và hiển thị kết quả trong cửa sổ hỗ trợ" + +#: src/dh-app.c:477 +msgid "Display the version and exit" +msgstr "Hiển thị phiên bản rồi thoát" + +#: src/dh-app.c:482 +msgid "Quit any running Devhelp" +msgstr "Thoát bất kì chương trình trợ giúp phát triển nào đang chạy" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp - Trợ giúp" + +#: src/dh-assistant-view.c:399 +msgid "Book:" +msgstr "Sách:" + +#: src/dh-book.c:324 +#, c-format +msgid "Language: %s" +msgstr "Ngôn ngữ: %s" + +#: src/dh-book.c:325 +msgid "Language: Undefined" +msgstr "Ngôn ngữ: Không xác định" + +#: src/dh-book-tree.c:644 +msgid "_Collapse All" +msgstr "_Co lại tất cả" + +#. i18n: a documentation book +#: src/dh-link.c:403 +msgid "Book" +msgstr "Sách" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:407 +msgid "Page" +msgstr "Trang" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:412 +msgid "Keyword" +msgstr "Từ khóa" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:418 +msgid "Function" +msgstr "Hàm" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:424 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "Macro" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:436 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:442 +msgid "Type" +msgstr "Kiểu" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:448 +msgid "Property" +msgstr "Thuộc tính" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:454 +msgid "Signal" +msgstr "Tín hiệu" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "Cấu hình" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "_Nhóm theo ngôn ngữ" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "Bật" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "Tựa" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "Tủ sách" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "_Dùng phông hệ thống" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "Độ rộng _không cố định: " + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "Độ rộng _cố định:" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "Phông chữ" + +#: src/dh-window.c:75 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:76 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:77 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:78 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:79 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:80 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:81 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:82 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:83 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1029 +msgid "Error opening the requested link." +msgstr "Lỗi mở liên kết yêu cầu" + +#: src/dh-window.c:1331 +msgid "_Close" +msgstr "Đón_g" + +#: src/dh-window.c:1349 src/dh-window.c:1530 +msgid "Empty Page" +msgstr "Trang trắng" + +#: src/dh-window.ui:7 +msgid "Side _Panel" +msgstr "Khung _lề" + +#: src/dh-window.ui:15 src/dh-window.ui:60 +msgid "_Print" +msgstr "_In" + +#: src/dh-window.ui:20 src/dh-window.ui:65 +msgid "_Find" +msgstr "_Tìm" + +#: src/dh-window.ui:27 src/dh-window.ui:72 +msgid "_Larger Text" +msgstr "Chữ _lớn hơn" + +#: src/dh-window.ui:32 src/dh-window.ui:77 +msgid "S_maller Text" +msgstr "Chữ _nhỏ hơn" + +#: src/dh-window.ui:37 src/dh-window.ui:82 +msgid "_Normal Size" +msgstr "_Kích cỡ chuẩn" + +#: src/dh-window.ui:53 +msgid "_Side Panel" +msgstr "_Khung lề" + +#: src/dh-window.ui:99 +msgid "_About Devhelp" +msgstr "G_iới thiệu Devhelp" + +#: src/dh-window.ui:133 +msgid "Back" +msgstr "Kế trước" + +#: src/dh-window.ui:152 +msgid "Forward" +msgstr "Kế tiếp" + +#: src/dh-window.ui:176 +msgid "New Tab" +msgstr "Thanh mới" + +#~| msgid "Selected tab, \"content\" or \"search\"" +#~ msgid "Selected tab: \"content\" or \"search\"" +#~ msgstr "Thanh đã chọn: \"nội dung\" hoặc \"tìm kiếm\"" + +#~| msgid "Which of the tabs that is selected, \"content\" or \"search\"." +#~ msgid "Which of the tabs is selected: \"content\" or \"search\"." +#~ msgstr "Đối với thanh đã chọn: “nội dung” hoặc “tìm kiếm”." + +#~| msgid "_New Window" +#~ msgid "_Window" +#~ msgstr "_Cửa sổ" + +#~ msgid "_Edit" +#~ msgstr "_Sửa" + +#~ msgid "_Copy" +#~ msgstr "_Chép" + +#~| msgid "Find Next" +#~ msgid "Find _Next" +#~ msgstr "Tìm _tiếp" + +#~| msgid "Find Previous" +#~ msgid "Find _Previous" +#~ msgstr "Tìm _lùi" + +#~ msgid "_View" +#~ msgstr "_Xem" + +#~ msgid "Fullscreen" +#~ msgstr "Toàn màn hình" + +#~ msgid "_Go" +#~ msgstr "Tớ_i" + +#~ msgid "_Search Tab" +#~ msgstr "Thẻ Tìm _kiếm" + +#~ msgid "_Contents Tab" +#~ msgstr "Thẻ Mụ_c lục" + +#~ msgid "Go to the previous page" +#~ msgstr "Đi về trang trước" + +#~ msgid "Go to the next page" +#~ msgstr "Đi tới trang kế tiếp" + +#~ msgid "Decrease the text size" +#~ msgstr "Giảm kích cỡ của các chữ" + +#~ msgid "Increase the text size" +#~ msgstr "Tăng kích cỡ của các chữ" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "Đặt phím F2 để hiển thị Trợ giúp Phát triển cho từ ở vị trí con trỏ" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "Hiển thị tài liệu hướng dẫn API cho từ ở vị trí con trỏ" + +#~| msgid "Focus the devhelp window with the search field active" +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "" +#~ "Đặt tiêu điểm trong cửa sổ trợ giúp phát triển, có trường tìm kiếm còn " +#~ "hoạt động" + +#~| msgid "Expected '%s' got '%s' at line %d, column %d" +#~ msgid "Expected '%s', got '%s' at line %d, column %d" +#~ msgstr "Đợi “%s”, nhận “%s” tại dòng %d, cột %d" + +#~ msgid "Invalid namespace '%s' at line %d, column %d" +#~ msgstr "Miền tên không hợp lệ “%s” tại dòng %d, cột %d" + +#~| msgid "title, name, and link elements are required at line %d, column %d" +#~ msgid "" +#~ "\"title\", \"name\" and \"link\" elements are required at line %d, column " +#~ "%d" +#~ msgstr "" +#~ "các yếu tố \"title\", \"name\" và \"link\" đều phải có tại dòng %d, cột %d" + +#~| msgid "" +#~| "name and link elements are required inside on line %d, column %d" +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "các yếu tố \"name\" và \"link\" đều phải có bên trong tại dòng %d, " +#~ "cột %d" + +#~| msgid "" +#~| "name and link elements are required inside on line %d, column %d" +#~ msgid "" +#~ "\"name\" and \"link\" elements are required inside '%s' on line %d, " +#~ "column %d" +#~ msgstr "" +#~ "các yếu tố \"name\" và \"link\" đều phải có bên trong “%s” tại dòng %d, " +#~ "cột %d" + +#~| msgid "" +#~| "name and link elements are required inside on line %d, column %d" +#~ msgid "\"type\" element is required inside on line %d, column %d" +#~ msgstr "yếu tố \"type\" phải có bên trong tại dòng %d, cột %d" + +#~ msgid "Cannot uncompress book '%s': %s" +#~ msgstr "Không thể giải nén quyển sách “%s”: %s" + +#~ msgid "All books" +#~ msgstr "Tất cả sách" + +#~| msgid "Search" +#~ msgid "Search in:" +#~ msgstr "Tìm trong:" + +#~ msgid "Contents" +#~ msgstr "Mục lục" + +#~ msgid "Search" +#~ msgstr "Tìm kiếm" + +#~ msgid "Find:" +#~ msgstr "Tìm:" + +#~ msgid "Find Previous" +#~ msgstr "Tìm lùi" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "Tìm lần trước gặp chuỗi tìm kiếm" + +#~ msgid "Find Next" +#~ msgstr "Tìm kế" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "Tìm lần kế tiếp gặp chuỗi tìm kiếm" + +#~| msgid "Case Sensitive" +#~ msgid "C_ase Sensitive" +#~ msgstr "_Phân biệt chữ hoa/thường" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "Bật/tắt phân biệt chữ hoa/thường" + +#~ msgid "Show advanced search options" +#~ msgstr "Hiện các tùy chọn tìm kiếm nâng cao" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "Hiện/ẩn các tùy chọn tìm kiếm nâng cao." + +#~ msgid "Fonts" +#~ msgstr "Phông" + +#~ msgid "Searching" +#~ msgstr "Tìm kiếm" + +#~ msgid "_Show advanced search options" +#~ msgstr "_Hiện tùy chọn tìm kiếm nâng cao" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "" +#~ "các yếu tố tên và liên kết đều phải có bên trong tại dòng %d, " +#~ "cột %d" + +#~ msgid "Could not create book parser" +#~ msgstr "Không thể tạo bộ phân tách sách" + +#~ msgid "Could not create markup parser" +#~ msgstr "Không thể tạo bộ phân tách mã định dạng" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Trợ giúp phát triển không được xây dựng với khả năng hỗ trợ zlib" + +#~ msgid "_File" +#~ msgstr "_Tập tin" + +#~ msgid "_Help" +#~ msgstr "Trợ _giúp" + +#~ msgid "Use the normal text size" +#~ msgstr "Dùng kích cỡ chữ tiêu chuẩn" + +#~ msgid "Preferences..." +#~ msgstr "Tùy thích…" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo new file mode 100644 index 0000000..70d34b9 Binary files /dev/null and b/po/zh_CN.gmo differ diff --git a/po/zh_CN.po b/po/zh_CN.po new file mode 100644 index 0000000..21f76d2 --- /dev/null +++ b/po/zh_CN.po @@ -0,0 +1,765 @@ +# devhelp simplified chinese translation +# Copyright (C) 2002, 2004, 2007, 2008, 2009, 2010 Free Software Foundation, Inc. +# This file is distributed under the same license as the devhelp package. +# +# Zipeco , 2002. +# Funda Wang , 2004. +# Yang Zhang , 2007. +# Deng Xiyue , 2008. +# Richard Ma , 2009. +# Tao Wang , 2010. +# Aron Xu , 2010. +# Cheng Lu , 2012. +# Sphinx Jiang , 2013. +# YunQiang Su , 2015. +# Jeff Bai , 2016. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp master\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2016-02-18 16:24+0000\n" +"PO-Revision-Date: 2016-02-19 02:44+0100\n" +"Last-Translator: Mingye Wang (Arthur2e5) \n" +"Language-Team: 汉语 \n" +"Language: zh_CN\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: Poedit 1.8.7\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:1 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:1 ../src/dh-app.c:247 +#: ../src/dh-app.c:557 ../src/dh-window.c:797 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:2 +#: ../data/org.gnome.Devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "开发者帮助程序" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:3 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp 是一款 API 文档浏览器。它提供了简便的查看库,搜索函数、结构体或宏的功" +"能。它拥有标签页式的界面,并可以打印结果。" + +#: ../data/org.gnome.Devhelp.appdata.xml.in.h:4 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp 与 Glade、Anjuta 或 Geany 等软件实现了集成。" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "文档浏览器" + +#: ../data/org.gnome.Devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;文档;信息;说明书;开发;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "主窗口最大化" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "是否以最大化启动主窗口。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "主窗口宽度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "主窗口宽度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "主窗口高度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "主窗口高度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "主窗口的 X 坐标" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "主窗口的 X 坐标。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "主窗口的 Y 坐标" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "主窗口的 Y 坐标。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "索引和搜索面板宽度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "索引和搜索面板宽度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "所选的标签,是“内容”还是“搜索”" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "选中哪个标签,“内容”还是“搜索”?" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "已禁用的书籍" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "用户禁用的书籍列表。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "按语言分组" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "在界面上是否应按语言将书分组" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "是否最大化辅助窗口。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "是否最大化显示辅助窗口。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "辅助窗口宽度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "辅助窗口宽度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "辅助窗口高度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "辅助窗口高度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "辅助窗口的 X 坐标" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "辅助窗口的 X 坐标。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "辅助窗口的 Y 坐标" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "辅助窗口的 Y 坐标。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "使用系统字体" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "使用系统默认字体。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "普通文本字体" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "变动宽度文本使用的字体。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "固定宽度文本字体" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "固定宽度文本使用的字体,例如示例代码。" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp 支持" + +#: ../misc/gedit-plugin/devhelp.plugin.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "使用 F2 为光标处单词启动 Devhelp" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "显示 API 文档" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "新建窗口(_W)" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "首选项(_P)" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_Keyboard Shortcuts" +msgstr "键盘快捷键(_K)" + +#: ../src/devhelp-menu.ui.h:4 +msgid "_About" +msgstr "关于(_A)" + +#: ../src/devhelp-menu.ui.h:5 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "退出(_Q)" + +#: ../src/help-overlay.ui.h:1 +msgctxt "shortcut window" +msgid "General" +msgstr "常规" + +#: ../src/help-overlay.ui.h:2 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "聚焦到全局搜索" + +#: ../src/help-overlay.ui.h:3 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "在当前页面查找" + +#: ../src/help-overlay.ui.h:4 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "新建窗口" + +#: ../src/help-overlay.ui.h:5 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "新建标签页" + +#: ../src/help-overlay.ui.h:6 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "切换侧边栏可见性" + +#: ../src/help-overlay.ui.h:7 +msgctxt "shortcut window" +msgid "Go back" +msgstr "后退" + +#: ../src/help-overlay.ui.h:8 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "前进" + +#: ../src/help-overlay.ui.h:9 +msgctxt "shortcut window" +msgid "Print" +msgstr "打印" + +#: ../src/help-overlay.ui.h:10 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "关闭当前窗口" + +#: ../src/help-overlay.ui.h:11 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "关闭所有窗口" + +#: ../src/help-overlay.ui.h:12 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "缩放" + +#: ../src/help-overlay.ui.h:13 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "放大" + +#: ../src/help-overlay.ui.h:14 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "缩小" + +#: ../src/help-overlay.ui.h:15 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "重置缩放" + +#: ../src/dh-app.c:249 +msgid "A developers' help browser for GNOME" +msgstr "GNOME 开发者帮助浏览器" + +#: ../src/dh-app.c:251 +msgid "translator-credits" +msgstr "" +"Zipeco , 2002\n" +"Funda Wang , 2004\n" +"YangZhang , 2007\n" +"Den Xiyue , 2008\n" +"Richard Ma , 2009\n" +"Tao Wang , 2010\n" +"Aron Xu , 2010\n" +"Cheng Lu , 2012\n" +"Sphinx Jiang , 2013\n" +"Jeff Bai , 2016" + +#: ../src/dh-app.c:253 +msgid "Devhelp Website" +msgstr "DevHelp 网站" + +#: ../src/dh-app.c:482 +msgid "Opens a new Devhelp window" +msgstr "打开新的 Devhelp 窗口" + +#: ../src/dh-app.c:487 +msgid "Search for a keyword" +msgstr "搜索一个关键词" + +#: ../src/dh-app.c:488 ../src/dh-app.c:493 +msgid "KEYWORD" +msgstr "关键字" + +#: ../src/dh-app.c:492 +msgid "Search and display any hit in the assistant window" +msgstr "在辅助窗口中搜索并显示任何命中内容" + +#: ../src/dh-app.c:497 +msgid "Display the version and exit" +msgstr "显示版本后退出" + +#: ../src/dh-app.c:502 +msgid "Quit any running Devhelp" +msgstr "退出正在运行的 Devhelp" + +#. Please don +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp - 助手" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "书籍:" + +#: ../src/dh-book.c:254 +#, c-format +msgid "Language: %s" +msgstr "语言:%s" + +#: ../src/dh-book.c:255 +msgid "Language: Undefined" +msgstr "语言:未定义" + +#. i18n: a documentation book +#: ../src/dh-link.c:289 +msgid "Book" +msgstr "书籍" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:292 +msgid "Page" +msgstr "页面" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:296 +msgid "Keyword" +msgstr "关键词" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:301 +msgid "Function" +msgstr "函数" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:306 +msgid "Struct" +msgstr "结构体" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:311 +msgid "Macro" +msgstr "宏" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:316 +msgid "Enum" +msgstr "枚举" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:321 +msgid "Type" +msgstr "类型" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:326 +msgid "Property" +msgstr "属性" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:331 +msgid "Signal" +msgstr "信号" + +#: ../src/dh-parser.c:96 ../src/dh-parser.c:197 ../src/dh-parser.c:261 +#: ../src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "需要“%s”但得到“%s”(第%d行,第%d列)" + +#: ../src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "非法命名空间“%s”(第%d行,第%d列)" + +#: ../src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "在第%d行,第%d列,需要指定元素“title”,“name”,和“link”" + +#: ../src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "在内第%d行,第%d列,需要指定元素“name”和“link”" + +#: ../src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "在“%s”内第%d行,第%d列,需要指定元素“name”和“link”" + +#: ../src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr "在 内第%d行,第%d列,需要指定元素“name”和“link”" + +#: ../src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "无法解压缩书籍“%s”:%s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "首选项" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "按语言分组(_G)" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "已启用" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "标题" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "书架" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "使用系统字体(_U)" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "变宽字体(_V):" + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "等宽字体(_F):" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "字体" + +#: ../src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:1024 +msgid "Error opening the requested link." +msgstr "在打开需要的链接时出错。" + +#: ../src/dh-window.c:1282 +msgid "_Close" +msgstr "关闭(_C)" + +#: ../src/dh-window.c:1300 ../src/dh-window.c:1471 +msgid "Empty Page" +msgstr "空白页" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "新建标签(_T)" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "打印(_P)" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "查找(_F)" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "放大文本(_L)" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "缩小文本(_M)" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "正常大小(_N)" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "侧面板(_S)" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "关于 Devhelp(_A)" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "后退" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "前进" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "显示光标处单词的 API 文档" + +#~ msgid "Current" +#~ msgstr "当前" + +#~ msgid "All Books" +#~ msgstr "所有书籍" + +#~ msgid "_Window" +#~ msgstr "窗口(_N)" + +#~ msgid "_Edit" +#~ msgstr "编辑(_E)" + +#~ msgid "_Copy" +#~ msgstr "复制(_C)" + +#~ msgid "Find _Next" +#~ msgstr "查找下一个(_N)" + +#~ msgid "Find _Previous" +#~ msgstr "查找上一个(_P)" + +#~ msgid "_View" +#~ msgstr "视图(_V)" + +#~ msgid "Fullscreen" +#~ msgstr "全屏" + +#~ msgid "_Go" +#~ msgstr "转到(_G)" + +#~ msgid "_Search Tab" +#~ msgstr "搜索标签(_S)" + +#~ msgid "_Contents Tab" +#~ msgstr "内容标签(_C)" + +#~ msgid "Go to the previous page" +#~ msgstr "到上一页面" + +#~ msgid "Go to the next page" +#~ msgstr "到下一页面" + +#~ msgid "Decrease the text size" +#~ msgstr "减小文本大小" + +#~ msgid "Increase the text size" +#~ msgstr "加大文本大小" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "使 Devhelp 窗口获得焦点并让搜索域激活" + +#~ msgid "Search in:" +#~ msgstr "在范围内搜索:" + +#~ msgid "Contents" +#~ msgstr "目录" + +#~ msgid "Search" +#~ msgstr "搜索" + +#~ msgid "Find:" +#~ msgstr "查找:" + +#~ msgid "Find Previous" +#~ msgstr "查找上一个" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "寻找搜索字符串的上一次出现" + +#~ msgid "Find Next" +#~ msgstr "查找下一个" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "寻找搜索字符串的下一次出现" + +#~ msgid "C_ase Sensitive" +#~ msgstr "区分大小写(_A)" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "切换区分大小写搜索" + +#~ msgid "_File" +#~ msgstr "文件(_F)" + +#~ msgid "_Help" +#~ msgstr "帮助(_H)" + +#~ msgid "Use the normal text size" +#~ msgstr "使用正常文本大小" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "离开全屏模式" + +#~ msgid "Display in full screen" +#~ msgstr "在全屏中显示" + +#~ msgid "Larger" +#~ msgstr "更大" + +#~ msgid "Smaller" +#~ msgstr "更小" + +#~ msgid "Preferences…" +#~ msgstr "首选项..." + +#~ msgid "Show advanced search options" +#~ msgstr "显示高级搜索选项" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "是否显示高级搜索选项。" + +#~ msgid "Fonts" +#~ msgstr "字体" + +#~ msgid "Searching" +#~ msgstr "搜索" + +#~ msgid "_Show advanced search options" +#~ msgstr "显示高级搜索选项(_S)" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "在 内需要指定 name 和 link 元素 (第%d行,第%d列)" + +#~ msgid "Could not create book parser" +#~ msgstr "无法创建书籍分析器" + +#~ msgid "Could not create markup parser" +#~ msgstr "无法创建标记分析器" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "构建 Devhelp 时没有加入 zlib 支持" + +#~ msgid "Browse Contents" +#~ msgstr "浏览内容" + +#~ msgid "Specify the size and location of the window" +#~ msgstr "指定窗口的大小和位置" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "WIDTHxHEIGHT+XOFF+YOFF" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "无法设定 UI:%s" + +#~ msgid "Devhelp project page" +#~ msgstr "Devhelp 项目页" + +#~ msgid "Bug report Devhelp" +#~ msgstr "错误报告 Devhelp" diff --git a/po/zh_HK.gmo b/po/zh_HK.gmo new file mode 100644 index 0000000..657b967 Binary files /dev/null and b/po/zh_HK.gmo differ diff --git a/po/zh_HK.po b/po/zh_HK.po new file mode 100644 index 0000000..5bde90e --- /dev/null +++ b/po/zh_HK.po @@ -0,0 +1,791 @@ +# Chinese (Hong Kong) translation for devhelp. +# Copyright (C) 2001, 03, 04, 06, 07 Free Software Foundation, Inc. +# Joe Man , 2001. +# Abel Cheung , 2003, 04. +# Lin-Chieh Shangkuan , 2006. +# Woodman Tuen , 2007. +# Hialan Liu , 2008. +# Chao-Hsiung Liao , 2010. +# Wei-Lun Chao , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp 2.91.6\n" +"Report-Msgid-Bugs-To: http://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=general\n" +"POT-Creation-Date: 2014-08-25 15:11+0000\n" +"PO-Revision-Date: 2014-08-30 18:17+0800\n" +"Last-Translator: Chao-Hsiung Liao \n" +"Language-Team: Chinese (Hong Kong) \n" +"Language: zh_HK\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.6.5\n" + +#: ../data/devhelp.appdata.xml.in.h:1 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "Devhelp 是 API 文件瀏覽器。它提供簡單的方式來瀏覽程式庫,根據函數、結構或巨集搜尋。它提供分頁式的介面並允許將結果列印出來。" + +#: ../data/devhelp.appdata.xml.in.h:2 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp 整合了其他的應用程式,像是 Glade、Anjuta 或 Geany。" + +#: ../data/devhelp.appdata.xml.in.h:3 +msgid "" +"https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +"target=devhelp.png" +msgstr "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&target=devhelp.png" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: ../data/devhelp.desktop.in.in.h:1 ../src/dh-app.c:212 ../src/dh-app.c:399 +#: ../src/dh-window.c:659 +msgid "Devhelp" +msgstr "Devhelp" + +#: ../data/devhelp.desktop.in.in.h:2 +msgid "Developer's Help program" +msgstr "程式開發者的說明書瀏覽程式" + +#: ../data/devhelp.desktop.in.in.h:3 +msgid "Documentation Browser" +msgstr "文件瀏覽器" + +#: ../data/devhelp.desktop.in.in.h:4 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;文件;資訊;手冊;開發者;" + +#: ../data/org.gnome.devhelp.gschema.xml.h:1 +msgid "Main window maximized state" +msgstr "視窗最大化" + +#: ../data/org.gnome.devhelp.gschema.xml.h:2 +msgid "Whether the main window should start maximized." +msgstr "程式啟動時主視窗應否成為最大化的狀態。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:3 +msgid "Width of the main window" +msgstr "主視窗闊度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:4 +msgid "The width of the main window." +msgstr "主視窗的闊度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:5 +msgid "Height of main window" +msgstr "主視窗高度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:6 +msgid "The height of the main window." +msgstr "主視窗的高度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:7 +msgid "X position of main window" +msgstr "主視窗水平位置" + +#: ../data/org.gnome.devhelp.gschema.xml.h:8 +msgid "The X position of the main window." +msgstr "主視窗的水平位置。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:9 +msgid "Y position of main window" +msgstr "主視窗垂直位置" + +#: ../data/org.gnome.devhelp.gschema.xml.h:10 +msgid "The Y position of the main window." +msgstr "主視窗垂直位置。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:11 +msgid "Width of the index and search pane" +msgstr "索引及搜尋窗格闊度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:12 +msgid "The width of the index and search pane." +msgstr "索引及搜尋窗格闊度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:13 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "已選取分頁:「內容」或「搜尋」" + +#: ../data/org.gnome.devhelp.gschema.xml.h:14 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "哪個分頁已選取:「內容」或「搜尋」。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:15 +msgid "Books disabled" +msgstr "已停用書籍" + +#: ../data/org.gnome.devhelp.gschema.xml.h:16 +msgid "List of books disabled by the user." +msgstr "被使用者停用的書籍清單。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:17 +msgid "Group by language" +msgstr "以語言為羣組" + +#: ../data/org.gnome.devhelp.gschema.xml.h:18 +msgid "Whether books should be grouped by language in the UI" +msgstr "書本在使用者介面中是否應以語言做為羣組" + +#: ../data/org.gnome.devhelp.gschema.xml.h:19 +msgid "Whether the assistant window should be maximized" +msgstr "助理視窗應否成為最大化的狀態" + +#: ../data/org.gnome.devhelp.gschema.xml.h:20 +msgid "Whether the assistant window should be maximized." +msgstr "助理視窗應否成為最大化的狀態。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:21 +msgid "Width of the assistant window" +msgstr "助理視窗闊度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:22 +msgid "The width of the assistant window." +msgstr "助理視窗的闊度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:23 +msgid "Height of assistant window" +msgstr "助理視窗高度" + +#: ../data/org.gnome.devhelp.gschema.xml.h:24 +msgid "The height of the assistant window." +msgstr "助理視窗的高度。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:25 +msgid "X position of assistant window" +msgstr "助理視窗的 X 位置" + +#: ../data/org.gnome.devhelp.gschema.xml.h:26 +msgid "The X position of the assistant window." +msgstr "助理視窗的 X 位置。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:27 +msgid "Y position of assistant window" +msgstr "助理視窗的 Y 位置" + +#: ../data/org.gnome.devhelp.gschema.xml.h:28 +msgid "The Y position of the assistant window." +msgstr "助理視窗的 Y 位置。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:29 +msgid "Use system fonts" +msgstr "使用系統字型" + +#: ../data/org.gnome.devhelp.gschema.xml.h:30 +msgid "Use the system default fonts." +msgstr "使用系統預設字型。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:31 +msgid "Font for text" +msgstr "普通文字字型" + +#: ../data/org.gnome.devhelp.gschema.xml.h:32 +msgid "Font for text with variable width." +msgstr "可變闊度文字所使用的字型。" + +#: ../data/org.gnome.devhelp.gschema.xml.h:33 +msgid "Font for fixed width text" +msgstr "固定闊度字型" + +#: ../data/org.gnome.devhelp.gschema.xml.h:34 +msgid "Font for text with fixed width, such as code examples." +msgstr "固定闊度文字所使用的字型,例如原始碼範例。" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:1 +msgid "Devhelp support" +msgstr "Devhelp 支援" + +#: ../misc/gedit-plugin/devhelp.desktop.in.h:2 +msgid "Makes F2 bring up Devhelp for the word at the cursor" +msgstr "使得按 F2 會以游標所在的文字啟動 Devhelp" + +#: ../misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "顯示 API 文件" + +#. ex:ts=4:et: +#: ../src/devhelp-menu.ui.h:1 ../src/dh-window.ui.h:7 +msgid "New _Window" +msgstr "新增視窗(_W)" + +#: ../src/devhelp-menu.ui.h:2 ../src/dh-window.ui.h:9 +msgid "_Preferences" +msgstr "偏好設定(_P)" + +#: ../src/devhelp-menu.ui.h:3 +msgid "_About" +msgstr "關於(_A)" + +#: ../src/devhelp-menu.ui.h:4 ../src/dh-window.ui.h:11 +msgid "_Quit" +msgstr "結束(_Q)" + +#: ../src/dh-app.c:204 +msgid "translator-credits" +msgstr "" +"如對翻譯有任何意見,請送一封電子郵件給\n" +"以下地址,GNOME 翻譯隊伍會盡快回覆你:\n" +"zh-l10n@lists.linux.org.tw" + +#: ../src/dh-app.c:214 +msgid "A developers' help browser for GNOME" +msgstr "GNOME 的程式開發者說明文件瀏覽程式" + +#: ../src/dh-app.c:222 +msgid "DevHelp Website" +msgstr "DevHelp 網站" + +#. Please don't translate "Devhelp" +#: ../src/dh-assistant.ui.h:2 +msgid "Devhelp — Assistant" +msgstr "Devhelp — 助理" + +#: ../src/dh-assistant-view.c:372 +msgid "Book:" +msgstr "書本:" + +#: ../src/dh-book.c:240 +#, c-format +msgid "Language: %s" +msgstr "語言:%s" + +#: ../src/dh-book.c:241 +msgid "Language: Undefined" +msgstr "語言:未定義" + +#. i18n: a documentation book +#: ../src/dh-link.c:270 +msgid "Book" +msgstr "書本" + +#. i18n: a "page" in a documentation book +#: ../src/dh-link.c:273 +msgid "Page" +msgstr "頁面" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: ../src/dh-link.c:277 +msgid "Keyword" +msgstr "關鍵字" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:282 +msgid "Function" +msgstr "函數" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:287 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:292 +msgid "Macro" +msgstr "巨集" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:297 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: ../src/dh-link.c:302 +msgid "Type" +msgstr "類型" + +#: ../src/dh-main.c:41 +msgid "Opens a new Devhelp window" +msgstr "開啟新的 Devhelp 視窗" + +#: ../src/dh-main.c:46 +msgid "Search for a keyword" +msgstr "搜尋關鍵字" + +#: ../src/dh-main.c:47 ../src/dh-main.c:52 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: ../src/dh-main.c:51 +msgid "Search and display any hit in the assistant window" +msgstr "在助理視窗中搜尋並顯示任何提示" + +#: ../src/dh-main.c:56 +msgid "Display the version and exit" +msgstr "顯示版本號及離開" + +#: ../src/dh-main.c:61 +msgid "Quit any running Devhelp" +msgstr "結束所有執行中的 Devhelp 進程" + +#: ../src/dh-parser.c:95 ../src/dh-parser.c:196 ../src/dh-parser.c:260 +#: ../src/dh-parser.c:270 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "第 %3$d 列第 %4$d 字應該是‘%1$s’,但實際是‘%2$s’" + +#: ../src/dh-parser.c:112 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "第 %2$d 列第 %3$d 字出現無效的 namespace‘%1$s’" + +#: ../src/dh-parser.c:141 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "第 %d 列第 %d 字需要指定 \"title\",\"name\"及\"link\"元素" + +#: ../src/dh-parser.c:215 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "第 %d 列第 %d 字的 之內需要指定\"name\"及\"link\"元素" + +#: ../src/dh-parser.c:295 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "「%s」的第 %d 列第 %d 字需要指定\"name\"及\"link\"元素" + +#: ../src/dh-parser.c:308 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr " 的第 %d 列第 %d 字需要指定\"type\"元素" + +#: ../src/dh-parser.c:511 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "無法將說明書‘%s’解壓:%s" + +#: ../src/dh-preferences.ui.h:1 +msgid "Preferences" +msgstr "偏好設定" + +#: ../src/dh-preferences.ui.h:2 +msgid "_Group by language" +msgstr "以語言為羣組(_G)" + +#: ../src/dh-preferences.ui.h:3 +msgid "Enabled" +msgstr "已啟用" + +#: ../src/dh-preferences.ui.h:4 +msgid "Title" +msgstr "標題" + +#: ../src/dh-preferences.ui.h:5 +msgid "Book Shelf" +msgstr "書櫃" + +#: ../src/dh-preferences.ui.h:6 +msgid "_Use system fonts" +msgstr "使用系統字型(_U)" + +#: ../src/dh-preferences.ui.h:7 +msgid "_Variable width: " +msgstr "可變闊度(_V):" + +#: ../src/dh-preferences.ui.h:8 +msgid "_Fixed width:" +msgstr "固定闊度(_F):" + +#: ../src/dh-preferences.ui.h:9 +msgid "Fonts" +msgstr "字型" + +#: ../src/dh-window.c:81 +msgid "50%" +msgstr "50%" + +#: ../src/dh-window.c:82 +msgid "75%" +msgstr "75%" + +#: ../src/dh-window.c:83 +msgid "100%" +msgstr "100%" + +#: ../src/dh-window.c:84 +msgid "125%" +msgstr "125%" + +#: ../src/dh-window.c:85 +msgid "150%" +msgstr "150%" + +#: ../src/dh-window.c:86 +msgid "175%" +msgstr "175%" + +#: ../src/dh-window.c:87 +msgid "200%" +msgstr "200%" + +#: ../src/dh-window.c:88 +msgid "300%" +msgstr "300%" + +#: ../src/dh-window.c:89 +msgid "400%" +msgstr "400%" + +#: ../src/dh-window.c:868 +msgid "Error opening the requested link." +msgstr "開啟要求的連結時發生錯誤。" + +#: ../src/dh-window.c:1126 +msgid "_Close" +msgstr "關閉(_C)" + +#: ../src/dh-window.c:1154 ../src/dh-window.c:1327 +msgid "Empty Page" +msgstr "空白頁" + +#: ../src/dh-window.ui.h:1 +msgid "New _Tab" +msgstr "新增分頁(_T)" + +#: ../src/dh-window.ui.h:2 +msgid "_Print" +msgstr "打印(_P)" + +#: ../src/dh-window.ui.h:3 +msgid "_Find" +msgstr "尋找(_F)" + +#: ../src/dh-window.ui.h:4 +msgid "_Larger Text" +msgstr "較大文字(_L)" + +#: ../src/dh-window.ui.h:5 +msgid "S_maller Text" +msgstr "較小文字(_S)" + +#: ../src/dh-window.ui.h:6 +msgid "_Normal Size" +msgstr "正常大小(_N)" + +#: ../src/dh-window.ui.h:8 +msgid "_Side pane" +msgstr "側邊窗格(_S)" + +#: ../src/dh-window.ui.h:10 +msgid "_About Devhelp" +msgstr "關於 Devhelp(_A)" + +#: ../src/dh-window.ui.h:12 +msgid "Back" +msgstr "上一頁" + +#: ../src/dh-window.ui.h:13 +msgid "Forward" +msgstr "下一頁" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "以游標所在的文字顯示其 API 文件" + +#~ msgid "Current" +#~ msgstr "目前的" + +#~ msgid "All Books" +#~ msgstr "所有書籍" + +#~ msgid "Find:" +#~ msgstr "搜尋:" + +#~ msgid "Find Previous" +#~ msgstr "尋找上一筆" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "尋找上一個出現的搜尋字串" + +#~ msgid "Find Next" +#~ msgstr "尋找下一筆" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "尋找下一個出現的搜尋字串" + +#~ msgid "C_ase Sensitive" +#~ msgstr "區分大小寫(_A)" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "選取後在搜尋時將區分大小寫" + +#~ msgid "_Window" +#~ msgstr "視窗(_W)" + +#~ msgid "_Edit" +#~ msgstr "編輯(_E)" + +#~ msgid "_Copy" +#~ msgstr "複製(_C)" + +#~ msgid "Find _Next" +#~ msgstr "找下一個(_N)" + +#~ msgid "Find _Previous" +#~ msgstr "找上一個(_P)" + +#~ msgid "_View" +#~ msgstr "檢視(_V)" + +#~ msgid "Fullscreen" +#~ msgstr "全螢幕" + +#~ msgid "_Go" +#~ msgstr "前往(_G)" + +#~ msgid "_Search Tab" +#~ msgstr "搜尋分頁(_S)" + +#~ msgid "_Contents Tab" +#~ msgstr "內容分頁(_C)" + +#~ msgid "Go to the previous page" +#~ msgstr "前往上一頁" + +#~ msgid "Go to the next page" +#~ msgstr "前往下一頁" + +#~ msgid "Decrease the text size" +#~ msgstr "降低文字大小" + +#~ msgid "Increase the text size" +#~ msgstr "增加文字大小" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "使用搜尋欄位時將焦點定在 Devhelp 視窗上" + +#~ msgid "Search in:" +#~ msgstr "搜尋於:" + +#~ msgid "Contents" +#~ msgstr "內容" + +#~ msgid "Search" +#~ msgstr "搜尋" + +#~ msgid "_File" +#~ msgstr "檔案(_F)" + +#~ msgid "_Help" +#~ msgstr "求助(_H)" + +#~ msgid "Use the normal text size" +#~ msgstr "使用一般文字大小" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "離開全螢幕模式" + +#~ msgid "Display in full screen" +#~ msgstr "以全螢幕顯示" + +#~ msgid "Larger" +#~ msgstr "放大" + +#~ msgid "Smaller" +#~ msgstr "縮小" + +#~ msgid "Preferences…" +#~ msgstr "偏好設定…" + +#~ msgid "Show advanced search options" +#~ msgstr "顯示進階搜尋選項" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "是否顯示進階搜尋選項。" + +#~ msgid "Fonts" +#~ msgstr "字型" + +#~ msgid "Searching" +#~ msgstr "搜尋中" + +#~ msgid "_Show advanced search options" +#~ msgstr "顯示進階搜尋選項(_S)" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "第 %d 列第 %d 字的 之內需要指定 name 及 link 元素" + +#~ msgid "Could not create book parser" +#~ msgstr "無法產生說明書內容的分析程序" + +#~ msgid "Could not create markup parser" +#~ msgstr "無法產生標記文字的分析程序" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp 建置時未加入 zlib 支援" + +#~ msgid "Browse Contents" +#~ msgstr "瀏覽內容" + +#~ msgid "Specify the size and location of the window" +#~ msgstr "指定視窗尺寸和位置" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "寬度x高度+水平+垂直" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "無法建立介面:%s" + +#~ msgid "Devhelp project page" +#~ msgstr "Devhelp 專案主網頁" + +#~ msgid "Bug report Devhelp" +#~ msgstr "匯報 Devhelp 程式錯誤" + +#~ msgid "Location of the paned" +#~ msgstr "窗格分隔條位置" + +#~ msgid "The location of the paned separator." +#~ msgstr "分開兩邊窗格的分隔條位置。" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "" +#~ "Select a subject in the contents to the left or switch to the search pane " +#~ "to find what you are looking for.

Use Shift Up/Down to navigate " +#~ "the tree to the left, and Shift Left/Right to expand and collapse " +#~ "the books in the tree." +#~ msgstr "" +#~ "請在左面的目錄中選取標題,或者在搜尋窗格中尋找您想要的內容。

使用 " +#~ "Shift ↑/↓鍵 可在內容的標題之間移動,而 Shift ←/→ 鍵 可展開或" +#~ "摺疊說明書。" + +#~ msgid "Expected 'book' got '%s' at line %d, column %d" +#~ msgstr "第 %2$d 列第 %3$d 字應該是‘book’,但實際是‘%1$s’" + +#~ msgid "Expected 'function' got '%s' at line %d, column %d" +#~ msgstr "第 %2$d 列第 %3$d 字應該是‘function’,但實際是‘%1$s’" + +#~ msgid "_Search for:" +#~ msgstr "搜尋字串(_S):" + +#~ msgid "'%s' is not a valid book" +#~ msgstr "‘%s’不是有效的說明書" + +#~ msgid "Couldn't find file '%s'" +#~ msgstr "找不到檔案‘%s’" + +#~ msgid "Book '%s' is malformed, the parse context is invalid." +#~ msgstr "說明書‘%s’格式不正確,準備分析的內容無效。" + +#~ msgid "Book '%s' is malformed, the XML is invalid." +#~ msgstr "說明書‘%s’格式不正確,XML 內容無效。" + +#~ msgid "Book '%s' is malformed, it does not conform to the DTD (%s)." +#~ msgstr "說明書‘%s’格式不正確,它不符合 DTD 指定的規格 (%s)。" + +#~ msgid "" +#~ "Could not read all books\n" +#~ "\n" +#~ "The following errors occured whilst reading the books:\n" +#~ "%s" +#~ msgstr "" +#~ "無法讀取全部說明書\n" +#~ "\n" +#~ "當讀取說明書時發生以下的錯誤:\n" +#~ "%s" + +#~ msgid "Open %s" +#~ msgstr "開啟 %s" + +#~ msgid "Problems when reading books: %s\n" +#~ msgstr "讀取說明書時發生錯誤:%s\n" + +#~ msgid "Empty document: %s" +#~ msgstr "沒有內容的說明書:%s" + +#~ msgid "Document wrong type, got %s, expected 'booklist': %s" +#~ msgstr "不正確的說明書類別,讀取到 %s,但應該是 'booklist':%s" + +#~ msgid "Print Help" +#~ msgstr "列印說明" + +#~ msgid "Printing failed." +#~ msgstr "列印失敗。" + +#~ msgid "The book is already installed." +#~ msgstr "這本說明書之前已經安裝了。" + +#~ msgid "Failed to move book. This should never happen." +#~ msgstr "移動說明書時發生錯誤。" + +#~ msgid "Failed to extract spec file from book." +#~ msgstr "無法讀取說明書的目錄索引。" + +#~ msgid "Error, the book is corrupted or very old." +#~ msgstr "錯誤,這本說明書已損毀或過時。" + +#~ msgid "Wrong type (mime_type=%s)." +#~ msgstr "錯誤的類別 (mime 類別 = %s)。" + +#~ msgid "Author:" +#~ msgstr "作者:" + +#~ msgid "Bookmarks" +#~ msgstr "書籤" + +#~ msgid "Install new book..." +#~ msgstr "新增說明書…" + +#~ msgid "Move down" +#~ msgstr "下移" + +#~ msgid "Move up" +#~ msgstr "上移" + +#~ msgid "Name:" +#~ msgstr "名稱:" + +#~ msgid "Path:" +#~ msgstr "路徑:" + +#~ msgid "Remove" +#~ msgstr "移除" + +#~ msgid "Version:" +#~ msgstr "版本:" + +#~ msgid "_Limit the number of hits to:" +#~ msgstr "搜尋結果數目限制為(_L):" + +#~ msgid "_Text size: " +#~ msgstr "字型大小(_T):" + +#~ msgid "About this application" +#~ msgstr "關於本程式的資訊" + +#~ msgid "Book Manager..." +#~ msgstr "說明書總管…" + +#~ msgid "Open the book manager dialog" +#~ msgstr "安裝及管理說明書" + +#~ msgid "Add book ..." +#~ msgstr "新增說明書 …" + +#~ msgid "Use autocompletion" +#~ msgstr "使用自動完成" + +#~ msgid "_Book manager..." +#~ msgstr "說明書總管(_B)…" diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo new file mode 100644 index 0000000..a937748 Binary files /dev/null and b/po/zh_TW.gmo differ diff --git a/po/zh_TW.po b/po/zh_TW.po new file mode 100644 index 0000000..0a6b2e8 --- /dev/null +++ b/po/zh_TW.po @@ -0,0 +1,899 @@ +# Chinese (Taiwan) translation for devhelp. +# Copyright (C) 2001, 03, 04, 06, 07 Free Software Foundation, Inc. +# Joe Man , 2001. +# Abel Cheung , 2003, 04. +# Lin-Chieh Shangkuan , 2006. +# Woodman Tuen , 2007. +# Hialan Liu , 2008. +# Chao-Hsiung Liao , 2010. +# Wei-Lun Chao , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: devhelp 2.91.6\n" +"Report-Msgid-Bugs-To: https://bugzilla.gnome.org/enter_bug.cgi?" +"product=devhelp&keywords=I18N+L10N&component=General\n" +"POT-Creation-Date: 2017-02-26 06:35+0000\n" +"PO-Revision-Date: 2017-02-27 10:51+0800\n" +"Last-Translator: Chao-Hsiung Liao \n" +"Language-Team: Chinese (Taiwan) \n" +"Language: zh_TW\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: Poedit 1.8.11\n" + +#. i18n: Please don't translate "Devhelp" (it's marked as translatable +#. * for transliteration only) +#: data/org.gnome.Devhelp.appdata.xml.in:6 +#: data/org.gnome.Devhelp.desktop.in.in:3 src/dh-app.c:303 src/dh-app.c:620 +#: src/dh-window.c:799 +msgid "Devhelp" +msgstr "Devhelp" + +#: data/org.gnome.Devhelp.appdata.xml.in:7 +#: data/org.gnome.Devhelp.desktop.in.in:4 +msgid "Developer's Help program" +msgstr "程式開發者的說明書瀏覽程式" + +#: data/org.gnome.Devhelp.appdata.xml.in:9 +msgid "" +"Devhelp is an API documentation browser. It provides an easy way to navigate " +"through libraries, search by function, struct, or macro. It provides a " +"tabbed interface and allows to print results." +msgstr "" +"Devhelp 是 API 文件瀏覽器。它提供簡單的方式來瀏覽程式庫,依函式、結構或巨集搜" +"尋。它提供分頁式的介面並允許將結果列印出來。" + +#: data/org.gnome.Devhelp.appdata.xml.in:15 +msgid "" +"Devhelp integrates with other applications such as Glade, Anjuta, or Geany." +msgstr "Devhelp 整合了其他的應用程式,像是 Glade、Anjuta 或 Geany。" + +#: data/org.gnome.Devhelp.desktop.in.in:5 +msgid "Documentation Browser" +msgstr "文件瀏覽器" + +#. Translators: Search terms to find this application. Do NOT translate or localize the semicolons! The list MUST also end with a semicolon! +#: data/org.gnome.Devhelp.desktop.in.in:7 +msgid "documentation;information;manual;developer;api;" +msgstr "documentation;information;manual;developer;api;文件;資訊;手冊;開發者;" + +#. Translators: Do NOT translate or transliterate this text (this is an icon file name)! +#: data/org.gnome.Devhelp.desktop.in.in:12 +#: misc/gedit-plugin/devhelp.plugin.desktop.in:10 +#| msgid "Devhelp" +msgid "devhelp" +msgstr "devhelp" + +#: data/org.gnome.devhelp.gschema.xml:19 +msgid "Main window maximized state" +msgstr "視窗最大化" + +#: data/org.gnome.devhelp.gschema.xml:20 +msgid "Whether the main window should start maximized." +msgstr "程式啟動時主視窗應否成為最大化的狀態。" + +#: data/org.gnome.devhelp.gschema.xml:24 +msgid "Width of the main window" +msgstr "主視窗寬度" + +#: data/org.gnome.devhelp.gschema.xml:25 +msgid "The width of the main window." +msgstr "主視窗的寬度。" + +#: data/org.gnome.devhelp.gschema.xml:29 +msgid "Height of main window" +msgstr "主視窗高度" + +#: data/org.gnome.devhelp.gschema.xml:30 +msgid "The height of the main window." +msgstr "主視窗的高度。" + +#: data/org.gnome.devhelp.gschema.xml:34 +msgid "X position of main window" +msgstr "主視窗水平位置" + +#: data/org.gnome.devhelp.gschema.xml:35 +msgid "The X position of the main window." +msgstr "主視窗的水平位置。" + +#: data/org.gnome.devhelp.gschema.xml:39 +msgid "Y position of main window" +msgstr "主視窗垂直位置" + +#: data/org.gnome.devhelp.gschema.xml:40 +msgid "The Y position of the main window." +msgstr "主視窗垂直位置。" + +#: data/org.gnome.devhelp.gschema.xml:46 +msgid "Width of the index and search pane" +msgstr "索引及搜尋窗格寬度。" + +#: data/org.gnome.devhelp.gschema.xml:47 +msgid "The width of the index and search pane." +msgstr "索引及搜尋窗格寬度。" + +#: data/org.gnome.devhelp.gschema.xml:53 +msgid "Selected tab: \"content\" or \"search\"" +msgstr "已選取分頁:「內容」或「搜尋」" + +#: data/org.gnome.devhelp.gschema.xml:54 +msgid "Which of the tabs is selected: \"content\" or \"search\"." +msgstr "哪個分頁已選取:「內容」或「搜尋」。" + +#: data/org.gnome.devhelp.gschema.xml:60 +msgid "Books disabled" +msgstr "已停用書籍" + +#: data/org.gnome.devhelp.gschema.xml:61 +msgid "List of books disabled by the user." +msgstr "被使用者停用的書籍清單。" + +#: data/org.gnome.devhelp.gschema.xml:65 +msgid "Group by language" +msgstr "以語言為群組" + +#: data/org.gnome.devhelp.gschema.xml:66 +msgid "Whether books should be grouped by language in the UI" +msgstr "書本在使用者介面中是否應以語言做為群組" + +#: data/org.gnome.devhelp.gschema.xml:75 +msgid "Whether the assistant window should be maximized" +msgstr "助理視窗應否成為最大化的狀態" + +#: data/org.gnome.devhelp.gschema.xml:76 +msgid "Whether the assistant window should be maximized." +msgstr "助理視窗應否成為最大化的狀態。" + +#: data/org.gnome.devhelp.gschema.xml:80 +msgid "Width of the assistant window" +msgstr "助理視窗寬度" + +#: data/org.gnome.devhelp.gschema.xml:81 +msgid "The width of the assistant window." +msgstr "助理視窗的寬度。" + +#: data/org.gnome.devhelp.gschema.xml:85 +msgid "Height of assistant window" +msgstr "助理視窗高度" + +#: data/org.gnome.devhelp.gschema.xml:86 +msgid "The height of the assistant window." +msgstr "助理視窗的高度。" + +#: data/org.gnome.devhelp.gschema.xml:90 +msgid "X position of assistant window" +msgstr "助理視窗的 X 位置" + +#: data/org.gnome.devhelp.gschema.xml:91 +msgid "The X position of the assistant window." +msgstr "助理視窗的 X 位置。" + +#: data/org.gnome.devhelp.gschema.xml:95 +msgid "Y position of assistant window" +msgstr "助理視窗的 Y 位置" + +#: data/org.gnome.devhelp.gschema.xml:96 +msgid "The Y position of the assistant window." +msgstr "助理視窗的 Y 位置。" + +#: data/org.gnome.devhelp.gschema.xml:102 +msgid "Use system fonts" +msgstr "使用系統字型" + +#: data/org.gnome.devhelp.gschema.xml:103 +msgid "Use the system default fonts." +msgstr "使用系統預設字型。" + +#: data/org.gnome.devhelp.gschema.xml:107 +msgid "Font for text" +msgstr "普通文字字型" + +#: data/org.gnome.devhelp.gschema.xml:108 +msgid "Font for text with variable width." +msgstr "可變寬度文字所使用的字型。" + +#: data/org.gnome.devhelp.gschema.xml:112 +msgid "Font for fixed width text" +msgstr "固定寬度字型" + +#: data/org.gnome.devhelp.gschema.xml:113 +msgid "Font for text with fixed width, such as code examples." +msgstr "固定寬度文字所使用的字型,例如源碼範例。" + +#: misc/gedit-plugin/devhelp.plugin.desktop.in:6 +msgid "Devhelp support" +msgstr "Devhelp 支援" + +#: misc/gedit-plugin/devhelp.py:42 +msgid "Show API Documentation" +msgstr "顯示 API 文件" + +#: src/devhelp-menu.ui:28 src/dh-window.ui:51 +msgid "New _Window" +msgstr "新增視窗(_W)" + +#: src/devhelp-menu.ui:35 src/dh-window.ui:98 +msgid "_Preferences" +msgstr "偏好設定(_P)" + +#: src/devhelp-menu.ui:41 +msgid "_Keyboard Shortcuts" +msgstr "鍵盤捷徑鍵(_K)" + +#: src/devhelp-menu.ui:45 +msgid "_About" +msgstr "關於(_A)" + +#: src/devhelp-menu.ui:49 src/dh-window.ui:108 +msgid "_Quit" +msgstr "結束(_Q)" + +#: src/help-overlay.ui:14 +msgctxt "shortcut window" +msgid "General" +msgstr "一般" + +#: src/help-overlay.ui:19 +msgctxt "shortcut window" +msgid "Focus global search" +msgstr "聚焦到全域搜尋" + +#: src/help-overlay.ui:26 +msgctxt "shortcut window" +msgid "Find in current page" +msgstr "在目前的頁面尋找" + +#: src/help-overlay.ui:33 +msgctxt "shortcut window" +msgid "Open a new window" +msgstr "開啟新的視窗" + +#: src/help-overlay.ui:40 +msgctxt "shortcut window" +msgid "Open a new tab" +msgstr "在新的分頁開啟" + +#: src/help-overlay.ui:47 +msgctxt "shortcut window" +msgid "Toggle sidebar visibility" +msgstr "切換側邊欄的可見度" + +#: src/help-overlay.ui:54 +msgctxt "shortcut window" +msgid "Go back" +msgstr "向後" + +#: src/help-overlay.ui:61 +msgctxt "shortcut window" +msgid "Go forward" +msgstr "向前" + +#: src/help-overlay.ui:68 +msgctxt "shortcut window" +msgid "Print" +msgstr "列印" + +#: src/help-overlay.ui:75 +msgctxt "shortcut window" +msgid "Close the current window" +msgstr "關閉目前的視窗" + +#: src/help-overlay.ui:82 +msgctxt "shortcut window" +msgid "Close all windows" +msgstr "關閉所有視窗" + +#: src/help-overlay.ui:90 +msgctxt "shortcut window" +msgid "Zoom" +msgstr "縮放" + +#: src/help-overlay.ui:95 +msgctxt "shortcut window" +msgid "Zoom in" +msgstr "拉近" + +#: src/help-overlay.ui:102 +msgctxt "shortcut window" +msgid "Zoom out" +msgstr "拉遠" + +#: src/help-overlay.ui:109 +msgctxt "shortcut window" +msgid "Reset Zoom" +msgstr "重設縮放" + +#: src/dh-app.c:305 +msgid "A developers' help browser for GNOME" +msgstr "GNOME 的程式開發者說明文件瀏覽程式" + +#: src/dh-app.c:307 +msgid "translator-credits" +msgstr "" +"如對翻譯有任何意見,請送一封電子郵件給\n" +"以下地址,GNOME 翻譯團隊會盡快回覆您:\n" +"zh-l10n@lists.linux.org.tw" + +#: src/dh-app.c:309 +msgid "Devhelp Website" +msgstr "Devhelp 網站" + +#: src/dh-app.c:545 +msgid "Opens a new Devhelp window" +msgstr "開啟新的 Devhelp 視窗" + +#: src/dh-app.c:550 +msgid "Search for a keyword" +msgstr "搜尋關鍵字" + +#: src/dh-app.c:551 src/dh-app.c:556 +msgid "KEYWORD" +msgstr "KEYWORD" + +#: src/dh-app.c:555 +msgid "Search and display any hit in the assistant window" +msgstr "在助理視窗中搜尋並顯示任何提示" + +#: src/dh-app.c:560 +msgid "Display the version and exit" +msgstr "顯示版本號及離開" + +#: src/dh-app.c:565 +msgid "Quit any running Devhelp" +msgstr "結束所有執行中的 Devhelp 進程" + +#. Please don't translate "Devhelp" +#: src/dh-assistant.ui:8 +msgid "Devhelp — Assistant" +msgstr "Devhelp — 助理" + +#: src/dh-assistant-view.c:392 +msgid "Book:" +msgstr "書本:" + +#: src/dh-book.c:277 +#, c-format +msgid "Language: %s" +msgstr "語言:%s" + +#: src/dh-book.c:278 +msgid "Language: Undefined" +msgstr "語言:未定義" + +#. i18n: a documentation book +#: src/dh-link.c:408 +msgid "Book" +msgstr "書本" + +#. i18n: a "page" in a documentation book +#: src/dh-link.c:411 +msgid "Page" +msgstr "頁面" + +#. i18n: a search hit in the documentation, could be a +#. * function, macro, struct, etc +#: src/dh-link.c:415 +msgid "Keyword" +msgstr "關鍵字" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:420 +msgid "Function" +msgstr "函式" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:425 +msgid "Struct" +msgstr "Struct" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:430 +msgid "Macro" +msgstr "巨集" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:435 +msgid "Enum" +msgstr "Enum" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:440 +msgid "Type" +msgstr "類型" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:445 +msgid "Property" +msgstr "屬性" + +#. i18n: in the programming language context, if you don't +#. * have an ESTABLISHED term for it, leave it +#. * untranslated. +#: src/dh-link.c:450 +msgid "Signal" +msgstr "信號" + +#: src/dh-parser.c:96 src/dh-parser.c:197 src/dh-parser.c:261 +#: src/dh-parser.c:271 +#, c-format +msgid "Expected '%s', got '%s' at line %d, column %d" +msgstr "第 %3$d 列第 %4$d 字應該是‘%1$s’,但實際是‘%2$s’" + +#: src/dh-parser.c:113 +#, c-format +msgid "Invalid namespace '%s' at line %d, column %d" +msgstr "第 %2$d 列第 %3$d 字出現無效的 namespace‘%1$s’" + +#: src/dh-parser.c:142 +#, c-format +msgid "" +"\"title\", \"name\" and \"link\" elements are required at line %d, column %d" +msgstr "第 %d 列第 %d 字需要指定 \"title\",\"name\"及\"link\"元素" + +#: src/dh-parser.c:216 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside on line %d, column " +"%d" +msgstr "第 %d 列第 %d 字的 之內需要指定\"name\"及\"link\"元素" + +#: src/dh-parser.c:296 +#, c-format +msgid "" +"\"name\" and \"link\" elements are required inside '%s' on line %d, column %d" +msgstr "「%s」的第 %d 列第 %d 字需要指定\"name\"及\"link\"元素" + +#: src/dh-parser.c:309 +#, c-format +msgid "\"type\" element is required inside on line %d, column %d" +msgstr " 的第 %d 列第 %d 字需要指定\"type\"元素" + +#: src/dh-parser.c:516 +#, c-format +msgid "Cannot uncompress book '%s': %s" +msgstr "無法將說明書‘%s’解壓:%s" + +#: src/dh-preferences.ui:40 +msgid "Preferences" +msgstr "偏好設定" + +#: src/dh-preferences.ui:76 +msgid "_Group by language" +msgstr "以語言為群組(_G)" + +#: src/dh-preferences.ui:107 +msgid "Enabled" +msgstr "已啟用" + +#: src/dh-preferences.ui:122 +msgid "Title" +msgstr "標題" + +#: src/dh-preferences.ui:151 +msgid "Book Shelf" +msgstr "書櫃" + +#: src/dh-preferences.ui:172 +msgid "_Use system fonts" +msgstr "使用系統字型(_U)" + +#: src/dh-preferences.ui:196 +msgid "_Variable width: " +msgstr "可變寬度(_V):" + +#: src/dh-preferences.ui:209 +msgid "_Fixed width:" +msgstr "固定寬度(_F):" + +#: src/dh-preferences.ui:270 +msgid "Fonts" +msgstr "字型" + +#: src/dh-window.c:76 +msgid "50%" +msgstr "50%" + +#: src/dh-window.c:77 +msgid "75%" +msgstr "75%" + +#: src/dh-window.c:78 +msgid "100%" +msgstr "100%" + +#: src/dh-window.c:79 +msgid "125%" +msgstr "125%" + +#: src/dh-window.c:80 +msgid "150%" +msgstr "150%" + +#: src/dh-window.c:81 +msgid "175%" +msgstr "175%" + +#: src/dh-window.c:82 +msgid "200%" +msgstr "200%" + +#: src/dh-window.c:83 +msgid "300%" +msgstr "300%" + +#: src/dh-window.c:84 +msgid "400%" +msgstr "400%" + +#: src/dh-window.c:1026 +msgid "Error opening the requested link." +msgstr "開啟要求的連結時發生錯誤。" + +#: src/dh-window.c:1342 +msgid "_Close" +msgstr "關閉(_C)" + +#: src/dh-window.c:1360 src/dh-window.c:1534 +msgid "Empty Page" +msgstr "空白頁" + +#: src/dh-window.ui:7 src/dh-window.ui:56 +msgid "New _Tab" +msgstr "新增分頁(_T)" + +#: src/dh-window.ui:12 +msgid "Side _Panel" +msgstr "側邊窗格(_P)" + +#: src/dh-window.ui:20 src/dh-window.ui:64 +msgid "_Print" +msgstr "列印(_P)" + +#: src/dh-window.ui:25 src/dh-window.ui:69 +msgid "_Find" +msgstr "尋找(_F)" + +#: src/dh-window.ui:32 src/dh-window.ui:76 +msgid "_Larger Text" +msgstr "較大文字(_L)" + +#: src/dh-window.ui:37 src/dh-window.ui:81 +msgid "S_maller Text" +msgstr "較小文字(_S)" + +#: src/dh-window.ui:42 src/dh-window.ui:86 +msgid "_Normal Size" +msgstr "正常大小(_N)" + +#: src/dh-window.ui:93 +msgid "_Side pane" +msgstr "側邊窗格(_S)" + +#: src/dh-window.ui:104 +msgid "_About Devhelp" +msgstr "關於 Devhelp(_A)" + +#: src/dh-window.ui:138 +msgid "Back" +msgstr "上一頁" + +#: src/dh-window.ui:157 +msgid "Forward" +msgstr "下一頁" + +#~ msgid "Makes F2 bring up Devhelp for the word at the cursor" +#~ msgstr "使得按 F2 會以游標所在的文字啟動 Devhelp" + +#~ msgid "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" +#~ msgstr "" +#~ "https://wiki.gnome.org/Apps/Devhelp?action=AttachFile&do=view&" +#~ "target=devhelp.png" + +#~ msgid "Show API Documentation for the word at the cursor" +#~ msgstr "以游標所在的文字顯示其 API 文件" + +#~ msgid "Current" +#~ msgstr "目前的" + +#~ msgid "All Books" +#~ msgstr "所有書籍" + +#~ msgid "Find:" +#~ msgstr "搜尋:" + +#~ msgid "Find Previous" +#~ msgstr "尋找上一筆" + +#~ msgid "Find previous occurrence of the search string" +#~ msgstr "尋找上一個出現的搜尋字串" + +#~ msgid "Find Next" +#~ msgstr "尋找下一筆" + +#~ msgid "Find next occurrence of the search string" +#~ msgstr "尋找下一個出現的搜尋字串" + +#~ msgid "C_ase Sensitive" +#~ msgstr "區分大小寫(_A)" + +#~ msgid "Toggle case sensitive search" +#~ msgstr "選取後在搜尋時將區分大小寫" + +#~ msgid "_Window" +#~ msgstr "視窗(_W)" + +#~ msgid "_Edit" +#~ msgstr "編輯(_E)" + +#~ msgid "_Copy" +#~ msgstr "複製(_C)" + +#~ msgid "Find _Next" +#~ msgstr "找下一個(_N)" + +#~ msgid "Find _Previous" +#~ msgstr "找上一個(_P)" + +#~ msgid "_View" +#~ msgstr "檢視(_V)" + +#~ msgid "Fullscreen" +#~ msgstr "全螢幕" + +#~ msgid "_Go" +#~ msgstr "前往(_G)" + +#~ msgid "_Search Tab" +#~ msgstr "搜尋分頁(_S)" + +#~ msgid "_Contents Tab" +#~ msgstr "內容分頁(_C)" + +#~ msgid "Go to the previous page" +#~ msgstr "前往上一頁" + +#~ msgid "Go to the next page" +#~ msgstr "前往下一頁" + +#~ msgid "Decrease the text size" +#~ msgstr "降低文字大小" + +#~ msgid "Increase the text size" +#~ msgstr "增加文字大小" + +#~ msgid "Focus the Devhelp window with the search field active" +#~ msgstr "使用搜尋欄位時將焦點定在 Devhelp 視窗上" + +#~ msgid "Search in:" +#~ msgstr "搜尋於:" + +#~ msgid "Contents" +#~ msgstr "內容" + +#~ msgid "Search" +#~ msgstr "搜尋" + +#~ msgid "_File" +#~ msgstr "檔案(_F)" + +#~ msgid "_Help" +#~ msgstr "求助(_H)" + +#~ msgid "Use the normal text size" +#~ msgstr "使用一般文字大小" + +#~ msgid "Leave fullscreen mode" +#~ msgstr "離開全螢幕模式" + +#~ msgid "Display in full screen" +#~ msgstr "以全螢幕顯示" + +#~ msgid "Larger" +#~ msgstr "放大" + +#~ msgid "Smaller" +#~ msgstr "縮小" + +#~ msgid "Preferences…" +#~ msgstr "偏好設定…" + +#~ msgid "Show advanced search options" +#~ msgstr "顯示進階搜尋選項" + +#~ msgid "Whether the advanced search options are shown." +#~ msgstr "是否顯示進階搜尋選項。" + +#~ msgid "Fonts" +#~ msgstr "字型" + +#~ msgid "Searching" +#~ msgstr "搜尋中" + +#~ msgid "_Show advanced search options" +#~ msgstr "顯示進階搜尋選項(_S)" + +#~ msgid "" +#~ "name and link elements are required inside on line %d, column " +#~ "%d" +#~ msgstr "第 %d 列第 %d 字的 之內需要指定 name 及 link 元素" + +#~ msgid "Could not create book parser" +#~ msgstr "無法產生說明書內容的分析程序" + +#~ msgid "Could not create markup parser" +#~ msgstr "無法產生標記文字的分析程序" + +#~ msgid "Devhelp is not built with zlib support" +#~ msgstr "Devhelp 建置時未加入 zlib 支援" + +#~ msgid "Browse Contents" +#~ msgstr "瀏覽內容" + +#~ msgid "Specify the size and location of the window" +#~ msgstr "指定視窗尺寸和位置" + +#~ msgid "WIDTHxHEIGHT+XOFF+YOFF" +#~ msgstr "寬度x高度+水平+垂直" + +#~ msgid "Cannot set UI: %s" +#~ msgstr "無法建立介面:%s" + +#~ msgid "Devhelp project page" +#~ msgstr "Devhelp 專案主網頁" + +#~ msgid "Bug report Devhelp" +#~ msgstr "匯報 Devhelp 程式錯誤" + +#~ msgid "Location of the paned" +#~ msgstr "窗格分隔條位置" + +#~ msgid "The location of the paned separator." +#~ msgstr "分開兩邊窗格的分隔條位置。" + +#~ msgid " " +#~ msgstr " " + +#~ msgid "" +#~ "Select a subject in the contents to the left or switch to the search pane " +#~ "to find what you are looking for.

Use Shift Up/Down to navigate " +#~ "the tree to the left, and Shift Left/Right to expand and collapse " +#~ "the books in the tree." +#~ msgstr "" +#~ "請在左面的目錄中選取標題,或者在搜尋窗格中尋找您想要的內容。

使用 " +#~ "Shift ↑/↓鍵 可在內容的標題之間移動,而 Shift ←/→ 鍵 可展開或" +#~ "摺疊說明書。" + +#~ msgid "Expected 'book' got '%s' at line %d, column %d" +#~ msgstr "第 %2$d 列第 %3$d 字應該是‘book’,但實際是‘%1$s’" + +#~ msgid "Expected 'function' got '%s' at line %d, column %d" +#~ msgstr "第 %2$d 列第 %3$d 字應該是‘function’,但實際是‘%1$s’" + +#~ msgid "_Search for:" +#~ msgstr "搜尋字串(_S):" + +#~ msgid "'%s' is not a valid book" +#~ msgstr "‘%s’不是有效的說明書" + +#~ msgid "Couldn't find file '%s'" +#~ msgstr "找不到檔案‘%s’" + +#~ msgid "Book '%s' is malformed, the parse context is invalid." +#~ msgstr "說明書‘%s’格式不正確,準備分析的內容無效。" + +#~ msgid "Book '%s' is malformed, the XML is invalid." +#~ msgstr "說明書‘%s’格式不正確,XML 內容無效。" + +#~ msgid "Book '%s' is malformed, it does not conform to the DTD (%s)." +#~ msgstr "說明書‘%s’格式不正確,它不符合 DTD 指定的規格 (%s)。" + +#~ msgid "" +#~ "Could not read all books\n" +#~ "\n" +#~ "The following errors occured whilst reading the books:\n" +#~ "%s" +#~ msgstr "" +#~ "無法讀取全部說明書\n" +#~ "\n" +#~ "當讀取說明書時發生以下的錯誤:\n" +#~ "%s" + +#~ msgid "Open %s" +#~ msgstr "開啟 %s" + +#~ msgid "Problems when reading books: %s\n" +#~ msgstr "讀取說明書時發生錯誤:%s\n" + +#~ msgid "Empty document: %s" +#~ msgstr "沒有內容的說明書:%s" + +#~ msgid "Document wrong type, got %s, expected 'booklist': %s" +#~ msgstr "不正確的說明書類別,讀取到 %s,但應該是 'booklist':%s" + +#~ msgid "Print Help" +#~ msgstr "列印說明" + +#~ msgid "Printing failed." +#~ msgstr "列印失敗。" + +#~ msgid "The book is already installed." +#~ msgstr "這本說明書之前已經安裝了。" + +#~ msgid "Failed to move book. This should never happen." +#~ msgstr "移動說明書時發生錯誤。" + +#~ msgid "Failed to extract spec file from book." +#~ msgstr "無法讀取說明書的目錄索引。" + +#~ msgid "Error, the book is corrupted or very old." +#~ msgstr "錯誤,這本說明書已損毀或過時。" + +#~ msgid "Wrong type (mime_type=%s)." +#~ msgstr "錯誤的類別 (mime 類別 = %s)。" + +#~ msgid "Author:" +#~ msgstr "作者:" + +#~ msgid "Bookmarks" +#~ msgstr "書籤" + +#~ msgid "Install new book..." +#~ msgstr "新增說明書…" + +#~ msgid "Move down" +#~ msgstr "下移" + +#~ msgid "Move up" +#~ msgstr "上移" + +#~ msgid "Name:" +#~ msgstr "名稱:" + +#~ msgid "Path:" +#~ msgstr "路徑:" + +#~ msgid "Remove" +#~ msgstr "移除" + +#~ msgid "Version:" +#~ msgstr "版本:" + +#~ msgid "_Limit the number of hits to:" +#~ msgstr "搜尋結果數目限制為(_L):" + +#~ msgid "_Text size: " +#~ msgstr "字型大小(_T):" + +#~ msgid "About this application" +#~ msgstr "關於本程式的資訊" + +#~ msgid "Book Manager..." +#~ msgstr "說明書總管…" + +#~ msgid "Open the book manager dialog" +#~ msgstr "安裝及管理說明書" + +#~ msgid "Add book ..." +#~ msgstr "新增說明書 …" + +#~ msgid "Use autocompletion" +#~ msgstr "使用自動完成" + +#~ msgid "_Book manager..." +#~ msgstr "說明書總管(_B)…" diff --git a/py-compile b/py-compile new file mode 100755 index 0000000..3693d96 --- /dev/null +++ b/py-compile @@ -0,0 +1,170 @@ +#!/bin/sh +# py-compile - Compile a Python program + +scriptversion=2016-01-11.22; # UTC + +# Copyright (C) 2000-2017 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, see . + +# 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 +# . + +if [ -z "$PYTHON" ]; then + PYTHON=python +fi + +me=py-compile + +usage_error () +{ + echo "$me: $*" >&2 + echo "Try '$me --help' for more information." >&2 + exit 1 +} + +basedir= +destdir= +while test $# -ne 0; do + case "$1" in + --basedir) + if test $# -lt 2; then + usage_error "option '--basedir' requires an argument" + else + basedir=$2 + fi + shift + ;; + --destdir) + if test $# -lt 2; then + usage_error "option '--destdir' requires an argument" + else + destdir=$2 + fi + shift + ;; + -h|--help) + cat <<\EOF +Usage: py-compile [--help] [--version] [--basedir DIR] [--destdir DIR] FILES..." + +Byte compile some python scripts FILES. Use --destdir to specify any +leading directory path to the FILES that you don't want to include in the +byte compiled file. Specify --basedir for any additional path information you +do want to be shown in the byte compiled file. + +Example: + py-compile --destdir /tmp/pkg-root --basedir /usr/share/test test.py test2.py + +Report bugs to . +EOF + exit $? + ;; + -v|--version) + echo "$me $scriptversion" + exit $? + ;; + --) + shift + break + ;; + -*) + usage_error "unrecognized option '$1'" + ;; + *) + break + ;; + esac + shift +done + +files=$* +if test -z "$files"; then + usage_error "no files given" +fi + +# if basedir was given, then it should be prepended to filenames before +# byte compilation. +if [ -z "$basedir" ]; then + pathtrans="path = file" +else + pathtrans="path = os.path.join('$basedir', file)" +fi + +# if destdir was given, then it needs to be prepended to the filename to +# byte compile but not go into the compiled file. +if [ -z "$destdir" ]; then + filetrans="filepath = path" +else + filetrans="filepath = os.path.normpath('$destdir' + os.sep + path)" +fi + +$PYTHON -c " +import sys, os, py_compile, imp + +files = '''$files''' + +sys.stdout.write('Byte-compiling python modules...\n') +for file in files.split(): + $pathtrans + $filetrans + if not os.path.exists(filepath) or not (len(filepath) >= 3 + and filepath[-3:] == '.py'): + continue + sys.stdout.write(file) + sys.stdout.flush() + if hasattr(imp, 'get_tag'): + py_compile.compile(filepath, imp.cache_from_source(filepath), path) + else: + py_compile.compile(filepath, filepath + 'c', path) +sys.stdout.write('\n')" || exit $? + +# this will fail for python < 1.5, but that doesn't matter ... +$PYTHON -O -c " +import sys, os, py_compile, imp + +# pypy does not use .pyo optimization +if hasattr(sys, 'pypy_translation_info'): + sys.exit(0) + +files = '''$files''' +sys.stdout.write('Byte-compiling python modules (optimized versions) ...\n') +for file in files.split(): + $pathtrans + $filetrans + if not os.path.exists(filepath) or not (len(filepath) >= 3 + and filepath[-3:] == '.py'): + continue + sys.stdout.write(file) + sys.stdout.flush() + if hasattr(imp, 'get_tag'): + py_compile.compile(filepath, imp.cache_from_source(filepath, False), path) + else: + py_compile.compile(filepath, filepath + 'o', path) +sys.stdout.write('\n')" 2>/dev/null || : + +# 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-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/src/Makefile.am b/src/Makefile.am new file mode 100644 index 0000000..2296ad3 --- /dev/null +++ b/src/Makefile.am @@ -0,0 +1,223 @@ +AM_CPPFLAGS = \ + -I$(top_srcdir) \ + -DLOCALEDIR=\""$(localedir)"\" \ + -DDATADIR=\""$(datadir)"\" \ + -DG_LOG_DOMAIN=\"Devhelp\" \ + -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES \ + $(WARN_CFLAGS) + +AM_LDFLAGS = \ + $(WARN_LDFLAGS) + +libdevhelp_public_headers = \ + devhelp.h \ + dh-assistant-view.h \ + dh-book.h \ + dh-book-manager.h \ + dh-book-tree.h \ + dh-completion.h \ + dh-init.h \ + dh-keyword-model.h \ + dh-link.h \ + dh-sidebar.h \ + $(NULL) + +libdevhelp_public_c_files = \ + dh-assistant-view.c \ + dh-book.c \ + dh-book-manager.c \ + dh-book-tree.c \ + dh-completion.c \ + dh-init.c \ + dh-keyword-model.c \ + dh-link.c \ + dh-sidebar.c \ + $(NULL) + +libdevhelp_private_headers = \ + dh-error.h \ + dh-parser.h \ + dh-preferences.h \ + dh-search-context.h \ + dh-settings.h \ + dh-util.h \ + $(NULL) + +libdevhelp_private_c_files = \ + dh-error.c \ + dh-parser.c \ + dh-preferences.c \ + dh-search-context.c \ + dh-settings.c \ + dh-util.c \ + $(NULL) + +libdevhelp_built_public_headers = \ + dh-enum-types.h \ + $(NULL) + +libdevhelp_built_public_c_files = \ + dh-enum-types.c \ + $(NULL) + +libdevhelp_built_sources = \ + $(libdevhelp_built_public_headers) \ + $(libdevhelp_built_public_c_files) \ + dh-resources.c \ + $(NULL) + +app_headers = \ + dh-app.h \ + dh-assistant.h \ + dh-tab.h \ + dh-tab-label.h \ + dh-web-view.h \ + dh-window.h \ + tepl-info-bar.h \ + $(NULL) + +app_c_files = \ + dh-app.c \ + dh-assistant.c \ + dh-main.c \ + dh-tab.c \ + dh-tab-label.c \ + dh-web-view.c \ + dh-window.c \ + tepl-info-bar.c \ + $(NULL) + +BUILT_SOURCES = \ + $(libdevhelp_built_sources) \ + $(NULL) + +# Helper Libtool library, so that the private functions can be used in unit +# tests. +noinst_LTLIBRARIES = libdevhelp-core.la + +libdevhelp_core_la_SOURCES = \ + $(libdevhelp_public_headers) \ + $(libdevhelp_public_c_files) \ + $(libdevhelp_private_headers) \ + $(libdevhelp_private_c_files) + +# Do not distribute generated files. +nodist_libdevhelp_core_la_SOURCES = \ + $(libdevhelp_built_sources) + +libdevhelp_core_la_CPPFLAGS = \ + $(AM_CPPFLAGS) + +libdevhelp_core_la_CFLAGS = \ + $(DEVHELP_CFLAGS) + +libdevhelp_core_la_LDFLAGS = \ + $(AM_LDFLAGS) \ + -no-undefined + +# The library +lib_LTLIBRARIES = libdevhelp-3.la + +devhelpincludedir = $(includedir)/devhelp-3.0/devhelp +devhelpinclude_HEADERS = $(libdevhelp_public_headers) +nodist_devhelpinclude_HEADERS = $(libdevhelp_built_public_headers) + +libdevhelp_3_la_SOURCES = + +libdevhelp_3_la_LIBADD = \ + libdevhelp-core.la \ + $(DEVHELP_LIBS) \ + $(LIBM) + +libdevhelp_3_la_LDFLAGS = \ + $(AM_LDFLAGS) \ + -no-undefined \ + -version-info $(LIBDEVHELP_LT_VERSION) \ + -export-symbols-regex ^dh_ + +# The application +bin_PROGRAMS = devhelp + +devhelp_SOURCES = \ + $(app_headers) \ + $(app_c_files) \ + $(NULL) + +devhelp_CPPFLAGS = \ + $(AM_CPPFLAGS) + +devhelp_CFLAGS = \ + $(DEVHELP_CFLAGS) + +devhelp_LDADD = \ + $(DEVHELP_LIBS) \ + $(LIBM) \ + libdevhelp-3.la + +devhelp_LDFLAGS = \ + $(AM_LDFLAGS) + +resource_files = \ + dh-assistant.ui \ + dh-preferences.ui \ + dh-window.ui \ + help-overlay.ui \ + menus.ui \ + $(NULL) + +dh-resources.c: dh.gresource.xml $(resource_files) + $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source --c-name dh $(srcdir)/dh.gresource.xml + +dh-enum-types.h: dh-enum-types.h.template $(libdevhelp_public_headers) $(GLIB_MKENUMS) + $(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template dh-enum-types.h.template $(libdevhelp_public_headers)) > $@ + +dh-enum-types.c: dh-enum-types.c.template $(libdevhelp_public_headers) $(GLIB_MKENUMS) + $(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template dh-enum-types.c.template $(libdevhelp_public_headers)) > $@ + +EXTRA_DIST = \ + dh-enum-types.c.template \ + dh-enum-types.h.template \ + dh.gresource.xml \ + $(resource_files) \ + $(NULL) + +CLEANFILES = $(BUILT_SOURCES) + +# GObject Introspection +-include $(INTROSPECTION_MAKEFILE) +INTROSPECTION_GIRS = +INTROSPECTION_SCANNER_ARGS = \ + --add-include-path=$(srcdir) \ + --warn-all \ + --identifier-prefix Dh \ + --identifier-prefix dh \ + --pkg-export libdevhelp-3.0 \ + --c-include="devhelp/devhelp.h" + +INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) + +if HAVE_INTROSPECTION +introspection_sources = \ + $(libdevhelp_public_c_files) \ + $(libdevhelp_public_headers) \ + $(libdevhelp_built_public_c_files) \ + $(libdevhelp_built_public_headers) + +Devhelp-3.0.gir: libdevhelp-3.la +Devhelp_3_0_gir_INCLUDES = Gtk-3.0 WebKit2-4.0 +Devhelp_3_0_gir_CFLAGS = $(INCLUDES) +Devhelp_3_0_gir_LIBS = libdevhelp-3.la +Devhelp_3_0_gir_FILES = $(introspection_sources) +Devhelp_3_0_gir_SCANNERFLAGS = $(WARN_SCANNERFLAGS) +INTROSPECTION_GIRS += Devhelp-3.0.gir + +girdir = $(datadir)/gir-1.0 +gir_DATA = $(INTROSPECTION_GIRS) + +typelibdir = $(libdir)/girepository-1.0 +typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) + +CLEANFILES += $(gir_DATA) $(typelib_DATA) +endif # HAVE_INTROSPECTION + +-include $(top_srcdir)/git.mk diff --git a/src/Makefile.in b/src/Makefile.in new file mode 100644 index 0000000..652dace --- /dev/null +++ b/src/Makefile.in @@ -0,0 +1,1417 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + + + + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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@ +bin_PROGRAMS = devhelp$(EXEEXT) +@HAVE_INTROSPECTION_TRUE@am__append_1 = Devhelp-3.0.gir +@HAVE_INTROSPECTION_TRUE@am__append_2 = $(gir_DATA) $(typelib_DATA) +subdir = src +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(devhelpinclude_HEADERS) \ + $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__installdirs = "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" \ + "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" \ + "$(DESTDIR)$(devhelpincludedir)" \ + "$(DESTDIR)$(devhelpincludedir)" +LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES) +am__DEPENDENCIES_1 = +libdevhelp_3_la_DEPENDENCIES = libdevhelp-core.la \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +am_libdevhelp_3_la_OBJECTS = +libdevhelp_3_la_OBJECTS = $(am_libdevhelp_3_la_OBJECTS) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +libdevhelp_3_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(libdevhelp_3_la_LDFLAGS) $(LDFLAGS) \ + -o $@ +libdevhelp_core_la_LIBADD = +am__objects_1 = +am__objects_2 = libdevhelp_core_la-dh-assistant-view.lo \ + libdevhelp_core_la-dh-book.lo \ + libdevhelp_core_la-dh-book-manager.lo \ + libdevhelp_core_la-dh-book-tree.lo \ + libdevhelp_core_la-dh-completion.lo \ + libdevhelp_core_la-dh-init.lo \ + libdevhelp_core_la-dh-keyword-model.lo \ + libdevhelp_core_la-dh-link.lo libdevhelp_core_la-dh-sidebar.lo +am__objects_3 = libdevhelp_core_la-dh-error.lo \ + libdevhelp_core_la-dh-parser.lo \ + libdevhelp_core_la-dh-preferences.lo \ + libdevhelp_core_la-dh-search-context.lo \ + libdevhelp_core_la-dh-settings.lo \ + libdevhelp_core_la-dh-util.lo +am_libdevhelp_core_la_OBJECTS = $(am__objects_1) $(am__objects_2) \ + $(am__objects_1) $(am__objects_3) +am__objects_4 = libdevhelp_core_la-dh-enum-types.lo +am__objects_5 = $(am__objects_1) $(am__objects_4) \ + libdevhelp_core_la-dh-resources.lo +nodist_libdevhelp_core_la_OBJECTS = $(am__objects_5) +libdevhelp_core_la_OBJECTS = $(am_libdevhelp_core_la_OBJECTS) \ + $(nodist_libdevhelp_core_la_OBJECTS) +libdevhelp_core_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(libdevhelp_core_la_CFLAGS) $(CFLAGS) \ + $(libdevhelp_core_la_LDFLAGS) $(LDFLAGS) -o $@ +PROGRAMS = $(bin_PROGRAMS) +am__objects_6 = devhelp-dh-app.$(OBJEXT) \ + devhelp-dh-assistant.$(OBJEXT) devhelp-dh-main.$(OBJEXT) \ + devhelp-dh-tab.$(OBJEXT) devhelp-dh-tab-label.$(OBJEXT) \ + devhelp-dh-web-view.$(OBJEXT) devhelp-dh-window.$(OBJEXT) \ + devhelp-tepl-info-bar.$(OBJEXT) +am_devhelp_OBJECTS = $(am__objects_1) $(am__objects_6) +devhelp_OBJECTS = $(am_devhelp_OBJECTS) +devhelp_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + libdevhelp-3.la +devhelp_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(devhelp_CFLAGS) \ + $(CFLAGS) $(devhelp_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(libdevhelp_3_la_SOURCES) $(libdevhelp_core_la_SOURCES) \ + $(nodist_libdevhelp_core_la_SOURCES) $(devhelp_SOURCES) +DIST_SOURCES = $(libdevhelp_3_la_SOURCES) \ + $(libdevhelp_core_la_SOURCES) $(devhelp_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +DATA = $(gir_DATA) $(typelib_DATA) +HEADERS = $(devhelpinclude_HEADERS) $(nodist_devhelpinclude_HEADERS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AM_CPPFLAGS = \ + -I$(top_srcdir) \ + -DLOCALEDIR=\""$(localedir)"\" \ + -DDATADIR=\""$(datadir)"\" \ + -DG_LOG_DOMAIN=\"Devhelp\" \ + -DGDK_PIXBUF_DISABLE_SINGLE_INCLUDES \ + $(WARN_CFLAGS) + +AM_LDFLAGS = \ + $(WARN_LDFLAGS) + +libdevhelp_public_headers = \ + devhelp.h \ + dh-assistant-view.h \ + dh-book.h \ + dh-book-manager.h \ + dh-book-tree.h \ + dh-completion.h \ + dh-init.h \ + dh-keyword-model.h \ + dh-link.h \ + dh-sidebar.h \ + $(NULL) + +libdevhelp_public_c_files = \ + dh-assistant-view.c \ + dh-book.c \ + dh-book-manager.c \ + dh-book-tree.c \ + dh-completion.c \ + dh-init.c \ + dh-keyword-model.c \ + dh-link.c \ + dh-sidebar.c \ + $(NULL) + +libdevhelp_private_headers = \ + dh-error.h \ + dh-parser.h \ + dh-preferences.h \ + dh-search-context.h \ + dh-settings.h \ + dh-util.h \ + $(NULL) + +libdevhelp_private_c_files = \ + dh-error.c \ + dh-parser.c \ + dh-preferences.c \ + dh-search-context.c \ + dh-settings.c \ + dh-util.c \ + $(NULL) + +libdevhelp_built_public_headers = \ + dh-enum-types.h \ + $(NULL) + +libdevhelp_built_public_c_files = \ + dh-enum-types.c \ + $(NULL) + +libdevhelp_built_sources = \ + $(libdevhelp_built_public_headers) \ + $(libdevhelp_built_public_c_files) \ + dh-resources.c \ + $(NULL) + +app_headers = \ + dh-app.h \ + dh-assistant.h \ + dh-tab.h \ + dh-tab-label.h \ + dh-web-view.h \ + dh-window.h \ + tepl-info-bar.h \ + $(NULL) + +app_c_files = \ + dh-app.c \ + dh-assistant.c \ + dh-main.c \ + dh-tab.c \ + dh-tab-label.c \ + dh-web-view.c \ + dh-window.c \ + tepl-info-bar.c \ + $(NULL) + +BUILT_SOURCES = \ + $(libdevhelp_built_sources) \ + $(NULL) + + +# Helper Libtool library, so that the private functions can be used in unit +# tests. +noinst_LTLIBRARIES = libdevhelp-core.la +libdevhelp_core_la_SOURCES = \ + $(libdevhelp_public_headers) \ + $(libdevhelp_public_c_files) \ + $(libdevhelp_private_headers) \ + $(libdevhelp_private_c_files) + + +# Do not distribute generated files. +nodist_libdevhelp_core_la_SOURCES = \ + $(libdevhelp_built_sources) + +libdevhelp_core_la_CPPFLAGS = \ + $(AM_CPPFLAGS) + +libdevhelp_core_la_CFLAGS = \ + $(DEVHELP_CFLAGS) + +libdevhelp_core_la_LDFLAGS = \ + $(AM_LDFLAGS) \ + -no-undefined + + +# The library +lib_LTLIBRARIES = libdevhelp-3.la +devhelpincludedir = $(includedir)/devhelp-3.0/devhelp +devhelpinclude_HEADERS = $(libdevhelp_public_headers) +nodist_devhelpinclude_HEADERS = $(libdevhelp_built_public_headers) +libdevhelp_3_la_SOURCES = +libdevhelp_3_la_LIBADD = \ + libdevhelp-core.la \ + $(DEVHELP_LIBS) \ + $(LIBM) + +libdevhelp_3_la_LDFLAGS = \ + $(AM_LDFLAGS) \ + -no-undefined \ + -version-info $(LIBDEVHELP_LT_VERSION) \ + -export-symbols-regex ^dh_ + +devhelp_SOURCES = \ + $(app_headers) \ + $(app_c_files) \ + $(NULL) + +devhelp_CPPFLAGS = \ + $(AM_CPPFLAGS) + +devhelp_CFLAGS = \ + $(DEVHELP_CFLAGS) + +devhelp_LDADD = \ + $(DEVHELP_LIBS) \ + $(LIBM) \ + libdevhelp-3.la + +devhelp_LDFLAGS = \ + $(AM_LDFLAGS) + +resource_files = \ + dh-assistant.ui \ + dh-preferences.ui \ + dh-window.ui \ + help-overlay.ui \ + menus.ui \ + $(NULL) + +EXTRA_DIST = \ + dh-enum-types.c.template \ + dh-enum-types.h.template \ + dh.gresource.xml \ + $(resource_files) \ + $(NULL) + +CLEANFILES = $(BUILT_SOURCES) $(am__append_2) +INTROSPECTION_GIRS = $(am__append_1) +INTROSPECTION_SCANNER_ARGS = \ + --add-include-path=$(srcdir) \ + --warn-all \ + --identifier-prefix Dh \ + --identifier-prefix dh \ + --pkg-export libdevhelp-3.0 \ + --c-include="devhelp/devhelp.h" + +INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir) +@HAVE_INTROSPECTION_TRUE@introspection_sources = \ +@HAVE_INTROSPECTION_TRUE@ $(libdevhelp_public_c_files) \ +@HAVE_INTROSPECTION_TRUE@ $(libdevhelp_public_headers) \ +@HAVE_INTROSPECTION_TRUE@ $(libdevhelp_built_public_c_files) \ +@HAVE_INTROSPECTION_TRUE@ $(libdevhelp_built_public_headers) + +@HAVE_INTROSPECTION_TRUE@Devhelp_3_0_gir_INCLUDES = Gtk-3.0 WebKit2-4.0 +@HAVE_INTROSPECTION_TRUE@Devhelp_3_0_gir_CFLAGS = $(INCLUDES) +@HAVE_INTROSPECTION_TRUE@Devhelp_3_0_gir_LIBS = libdevhelp-3.la +@HAVE_INTROSPECTION_TRUE@Devhelp_3_0_gir_FILES = $(introspection_sources) +@HAVE_INTROSPECTION_TRUE@Devhelp_3_0_gir_SCANNERFLAGS = $(WARN_SCANNERFLAGS) +@HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0 +@HAVE_INTROSPECTION_TRUE@gir_DATA = $(INTROSPECTION_GIRS) +@HAVE_INTROSPECTION_TRUE@typelibdir = $(libdir)/girepository-1.0 +@HAVE_INTROSPECTION_TRUE@typelib_DATA = $(INTROSPECTION_GIRS:.gir=.typelib) +all: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign src/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 +$(am__aclocal_m4_deps): + +install-libLTLIBRARIES: $(lib_LTLIBRARIES) + @$(NORMAL_INSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + list2=; for p in $$list; do \ + if test -f $$p; then \ + list2="$$list2 $$p"; \ + else :; fi; \ + done; \ + test -z "$$list2" || { \ + echo " $(MKDIR_P) '$(DESTDIR)$(libdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(libdir)" || exit 1; \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 '$(DESTDIR)$(libdir)'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL) $(INSTALL_STRIP_FLAG) $$list2 "$(DESTDIR)$(libdir)"; \ + } + +uninstall-libLTLIBRARIES: + @$(NORMAL_UNINSTALL) + @list='$(lib_LTLIBRARIES)'; test -n "$(libdir)" || list=; \ + for p in $$list; do \ + $(am__strip_dir) \ + echo " $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f '$(DESTDIR)$(libdir)/$$f'"; \ + $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=uninstall rm -f "$(DESTDIR)$(libdir)/$$f"; \ + done + +clean-libLTLIBRARIES: + -test -z "$(lib_LTLIBRARIES)" || rm -f $(lib_LTLIBRARIES) + @list='$(lib_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } + +clean-noinstLTLIBRARIES: + -test -z "$(noinst_LTLIBRARIES)" || rm -f $(noinst_LTLIBRARIES) + @list='$(noinst_LTLIBRARIES)'; \ + locs=`for p in $$list; do echo $$p; done | \ + sed 's|^[^/]*$$|.|; s|/[^/]*$$||; s|$$|/so_locations|' | \ + sort -u`; \ + test -z "$$locs" || { \ + echo rm -f $${locs}; \ + rm -f $${locs}; \ + } + +libdevhelp-3.la: $(libdevhelp_3_la_OBJECTS) $(libdevhelp_3_la_DEPENDENCIES) $(EXTRA_libdevhelp_3_la_DEPENDENCIES) + $(AM_V_CCLD)$(libdevhelp_3_la_LINK) -rpath $(libdir) $(libdevhelp_3_la_OBJECTS) $(libdevhelp_3_la_LIBADD) $(LIBS) + +libdevhelp-core.la: $(libdevhelp_core_la_OBJECTS) $(libdevhelp_core_la_DEPENDENCIES) $(EXTRA_libdevhelp_core_la_DEPENDENCIES) + $(AM_V_CCLD)$(libdevhelp_core_la_LINK) $(libdevhelp_core_la_OBJECTS) $(libdevhelp_core_la_LIBADD) $(LIBS) +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + +clean-binPROGRAMS: + @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +devhelp$(EXEEXT): $(devhelp_OBJECTS) $(devhelp_DEPENDENCIES) $(EXTRA_devhelp_DEPENDENCIES) + @rm -f devhelp$(EXEEXT) + $(AM_V_CCLD)$(devhelp_LINK) $(devhelp_OBJECTS) $(devhelp_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-app.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-assistant.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-main.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-tab-label.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-tab.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-web-view.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-dh-window.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/devhelp-tepl-info-bar.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-assistant-view.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-book-manager.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-book-tree.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-book.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-completion.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-enum-types.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-error.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-init.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-keyword-model.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-link.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-parser.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-preferences.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-resources.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-search-context.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-settings.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-sidebar.Plo@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libdevhelp_core_la-dh-util.Plo@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +libdevhelp_core_la-dh-assistant-view.lo: dh-assistant-view.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-assistant-view.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-assistant-view.Tpo -c -o libdevhelp_core_la-dh-assistant-view.lo `test -f 'dh-assistant-view.c' || echo '$(srcdir)/'`dh-assistant-view.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-assistant-view.Tpo $(DEPDIR)/libdevhelp_core_la-dh-assistant-view.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-assistant-view.c' object='libdevhelp_core_la-dh-assistant-view.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-assistant-view.lo `test -f 'dh-assistant-view.c' || echo '$(srcdir)/'`dh-assistant-view.c + +libdevhelp_core_la-dh-book.lo: dh-book.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-book.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-book.Tpo -c -o libdevhelp_core_la-dh-book.lo `test -f 'dh-book.c' || echo '$(srcdir)/'`dh-book.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-book.Tpo $(DEPDIR)/libdevhelp_core_la-dh-book.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-book.c' object='libdevhelp_core_la-dh-book.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-book.lo `test -f 'dh-book.c' || echo '$(srcdir)/'`dh-book.c + +libdevhelp_core_la-dh-book-manager.lo: dh-book-manager.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-book-manager.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-book-manager.Tpo -c -o libdevhelp_core_la-dh-book-manager.lo `test -f 'dh-book-manager.c' || echo '$(srcdir)/'`dh-book-manager.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-book-manager.Tpo $(DEPDIR)/libdevhelp_core_la-dh-book-manager.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-book-manager.c' object='libdevhelp_core_la-dh-book-manager.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-book-manager.lo `test -f 'dh-book-manager.c' || echo '$(srcdir)/'`dh-book-manager.c + +libdevhelp_core_la-dh-book-tree.lo: dh-book-tree.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-book-tree.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-book-tree.Tpo -c -o libdevhelp_core_la-dh-book-tree.lo `test -f 'dh-book-tree.c' || echo '$(srcdir)/'`dh-book-tree.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-book-tree.Tpo $(DEPDIR)/libdevhelp_core_la-dh-book-tree.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-book-tree.c' object='libdevhelp_core_la-dh-book-tree.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-book-tree.lo `test -f 'dh-book-tree.c' || echo '$(srcdir)/'`dh-book-tree.c + +libdevhelp_core_la-dh-completion.lo: dh-completion.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-completion.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-completion.Tpo -c -o libdevhelp_core_la-dh-completion.lo `test -f 'dh-completion.c' || echo '$(srcdir)/'`dh-completion.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-completion.Tpo $(DEPDIR)/libdevhelp_core_la-dh-completion.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-completion.c' object='libdevhelp_core_la-dh-completion.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-completion.lo `test -f 'dh-completion.c' || echo '$(srcdir)/'`dh-completion.c + +libdevhelp_core_la-dh-init.lo: dh-init.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-init.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-init.Tpo -c -o libdevhelp_core_la-dh-init.lo `test -f 'dh-init.c' || echo '$(srcdir)/'`dh-init.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-init.Tpo $(DEPDIR)/libdevhelp_core_la-dh-init.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-init.c' object='libdevhelp_core_la-dh-init.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-init.lo `test -f 'dh-init.c' || echo '$(srcdir)/'`dh-init.c + +libdevhelp_core_la-dh-keyword-model.lo: dh-keyword-model.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-keyword-model.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-keyword-model.Tpo -c -o libdevhelp_core_la-dh-keyword-model.lo `test -f 'dh-keyword-model.c' || echo '$(srcdir)/'`dh-keyword-model.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-keyword-model.Tpo $(DEPDIR)/libdevhelp_core_la-dh-keyword-model.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-keyword-model.c' object='libdevhelp_core_la-dh-keyword-model.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-keyword-model.lo `test -f 'dh-keyword-model.c' || echo '$(srcdir)/'`dh-keyword-model.c + +libdevhelp_core_la-dh-link.lo: dh-link.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-link.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-link.Tpo -c -o libdevhelp_core_la-dh-link.lo `test -f 'dh-link.c' || echo '$(srcdir)/'`dh-link.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-link.Tpo $(DEPDIR)/libdevhelp_core_la-dh-link.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-link.c' object='libdevhelp_core_la-dh-link.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-link.lo `test -f 'dh-link.c' || echo '$(srcdir)/'`dh-link.c + +libdevhelp_core_la-dh-sidebar.lo: dh-sidebar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-sidebar.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-sidebar.Tpo -c -o libdevhelp_core_la-dh-sidebar.lo `test -f 'dh-sidebar.c' || echo '$(srcdir)/'`dh-sidebar.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-sidebar.Tpo $(DEPDIR)/libdevhelp_core_la-dh-sidebar.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-sidebar.c' object='libdevhelp_core_la-dh-sidebar.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-sidebar.lo `test -f 'dh-sidebar.c' || echo '$(srcdir)/'`dh-sidebar.c + +libdevhelp_core_la-dh-error.lo: dh-error.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-error.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-error.Tpo -c -o libdevhelp_core_la-dh-error.lo `test -f 'dh-error.c' || echo '$(srcdir)/'`dh-error.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-error.Tpo $(DEPDIR)/libdevhelp_core_la-dh-error.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-error.c' object='libdevhelp_core_la-dh-error.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-error.lo `test -f 'dh-error.c' || echo '$(srcdir)/'`dh-error.c + +libdevhelp_core_la-dh-parser.lo: dh-parser.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-parser.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-parser.Tpo -c -o libdevhelp_core_la-dh-parser.lo `test -f 'dh-parser.c' || echo '$(srcdir)/'`dh-parser.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-parser.Tpo $(DEPDIR)/libdevhelp_core_la-dh-parser.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-parser.c' object='libdevhelp_core_la-dh-parser.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-parser.lo `test -f 'dh-parser.c' || echo '$(srcdir)/'`dh-parser.c + +libdevhelp_core_la-dh-preferences.lo: dh-preferences.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-preferences.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-preferences.Tpo -c -o libdevhelp_core_la-dh-preferences.lo `test -f 'dh-preferences.c' || echo '$(srcdir)/'`dh-preferences.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-preferences.Tpo $(DEPDIR)/libdevhelp_core_la-dh-preferences.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-preferences.c' object='libdevhelp_core_la-dh-preferences.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-preferences.lo `test -f 'dh-preferences.c' || echo '$(srcdir)/'`dh-preferences.c + +libdevhelp_core_la-dh-search-context.lo: dh-search-context.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-search-context.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-search-context.Tpo -c -o libdevhelp_core_la-dh-search-context.lo `test -f 'dh-search-context.c' || echo '$(srcdir)/'`dh-search-context.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-search-context.Tpo $(DEPDIR)/libdevhelp_core_la-dh-search-context.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-search-context.c' object='libdevhelp_core_la-dh-search-context.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-search-context.lo `test -f 'dh-search-context.c' || echo '$(srcdir)/'`dh-search-context.c + +libdevhelp_core_la-dh-settings.lo: dh-settings.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-settings.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-settings.Tpo -c -o libdevhelp_core_la-dh-settings.lo `test -f 'dh-settings.c' || echo '$(srcdir)/'`dh-settings.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-settings.Tpo $(DEPDIR)/libdevhelp_core_la-dh-settings.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-settings.c' object='libdevhelp_core_la-dh-settings.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-settings.lo `test -f 'dh-settings.c' || echo '$(srcdir)/'`dh-settings.c + +libdevhelp_core_la-dh-util.lo: dh-util.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-util.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-util.Tpo -c -o libdevhelp_core_la-dh-util.lo `test -f 'dh-util.c' || echo '$(srcdir)/'`dh-util.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-util.Tpo $(DEPDIR)/libdevhelp_core_la-dh-util.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-util.c' object='libdevhelp_core_la-dh-util.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-util.lo `test -f 'dh-util.c' || echo '$(srcdir)/'`dh-util.c + +libdevhelp_core_la-dh-enum-types.lo: dh-enum-types.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-enum-types.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-enum-types.Tpo -c -o libdevhelp_core_la-dh-enum-types.lo `test -f 'dh-enum-types.c' || echo '$(srcdir)/'`dh-enum-types.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-enum-types.Tpo $(DEPDIR)/libdevhelp_core_la-dh-enum-types.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-enum-types.c' object='libdevhelp_core_la-dh-enum-types.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-enum-types.lo `test -f 'dh-enum-types.c' || echo '$(srcdir)/'`dh-enum-types.c + +libdevhelp_core_la-dh-resources.lo: dh-resources.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -MT libdevhelp_core_la-dh-resources.lo -MD -MP -MF $(DEPDIR)/libdevhelp_core_la-dh-resources.Tpo -c -o libdevhelp_core_la-dh-resources.lo `test -f 'dh-resources.c' || echo '$(srcdir)/'`dh-resources.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/libdevhelp_core_la-dh-resources.Tpo $(DEPDIR)/libdevhelp_core_la-dh-resources.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-resources.c' object='libdevhelp_core_la-dh-resources.lo' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(libdevhelp_core_la_CPPFLAGS) $(CPPFLAGS) $(libdevhelp_core_la_CFLAGS) $(CFLAGS) -c -o libdevhelp_core_la-dh-resources.lo `test -f 'dh-resources.c' || echo '$(srcdir)/'`dh-resources.c + +devhelp-dh-app.o: dh-app.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-app.o -MD -MP -MF $(DEPDIR)/devhelp-dh-app.Tpo -c -o devhelp-dh-app.o `test -f 'dh-app.c' || echo '$(srcdir)/'`dh-app.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-app.Tpo $(DEPDIR)/devhelp-dh-app.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-app.c' object='devhelp-dh-app.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-app.o `test -f 'dh-app.c' || echo '$(srcdir)/'`dh-app.c + +devhelp-dh-app.obj: dh-app.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-app.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-app.Tpo -c -o devhelp-dh-app.obj `if test -f 'dh-app.c'; then $(CYGPATH_W) 'dh-app.c'; else $(CYGPATH_W) '$(srcdir)/dh-app.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-app.Tpo $(DEPDIR)/devhelp-dh-app.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-app.c' object='devhelp-dh-app.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-app.obj `if test -f 'dh-app.c'; then $(CYGPATH_W) 'dh-app.c'; else $(CYGPATH_W) '$(srcdir)/dh-app.c'; fi` + +devhelp-dh-assistant.o: dh-assistant.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-assistant.o -MD -MP -MF $(DEPDIR)/devhelp-dh-assistant.Tpo -c -o devhelp-dh-assistant.o `test -f 'dh-assistant.c' || echo '$(srcdir)/'`dh-assistant.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-assistant.Tpo $(DEPDIR)/devhelp-dh-assistant.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-assistant.c' object='devhelp-dh-assistant.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-assistant.o `test -f 'dh-assistant.c' || echo '$(srcdir)/'`dh-assistant.c + +devhelp-dh-assistant.obj: dh-assistant.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-assistant.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-assistant.Tpo -c -o devhelp-dh-assistant.obj `if test -f 'dh-assistant.c'; then $(CYGPATH_W) 'dh-assistant.c'; else $(CYGPATH_W) '$(srcdir)/dh-assistant.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-assistant.Tpo $(DEPDIR)/devhelp-dh-assistant.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-assistant.c' object='devhelp-dh-assistant.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-assistant.obj `if test -f 'dh-assistant.c'; then $(CYGPATH_W) 'dh-assistant.c'; else $(CYGPATH_W) '$(srcdir)/dh-assistant.c'; fi` + +devhelp-dh-main.o: dh-main.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-main.o -MD -MP -MF $(DEPDIR)/devhelp-dh-main.Tpo -c -o devhelp-dh-main.o `test -f 'dh-main.c' || echo '$(srcdir)/'`dh-main.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-main.Tpo $(DEPDIR)/devhelp-dh-main.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-main.c' object='devhelp-dh-main.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-main.o `test -f 'dh-main.c' || echo '$(srcdir)/'`dh-main.c + +devhelp-dh-main.obj: dh-main.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-main.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-main.Tpo -c -o devhelp-dh-main.obj `if test -f 'dh-main.c'; then $(CYGPATH_W) 'dh-main.c'; else $(CYGPATH_W) '$(srcdir)/dh-main.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-main.Tpo $(DEPDIR)/devhelp-dh-main.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-main.c' object='devhelp-dh-main.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-main.obj `if test -f 'dh-main.c'; then $(CYGPATH_W) 'dh-main.c'; else $(CYGPATH_W) '$(srcdir)/dh-main.c'; fi` + +devhelp-dh-tab.o: dh-tab.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-tab.o -MD -MP -MF $(DEPDIR)/devhelp-dh-tab.Tpo -c -o devhelp-dh-tab.o `test -f 'dh-tab.c' || echo '$(srcdir)/'`dh-tab.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-tab.Tpo $(DEPDIR)/devhelp-dh-tab.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-tab.c' object='devhelp-dh-tab.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-tab.o `test -f 'dh-tab.c' || echo '$(srcdir)/'`dh-tab.c + +devhelp-dh-tab.obj: dh-tab.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-tab.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-tab.Tpo -c -o devhelp-dh-tab.obj `if test -f 'dh-tab.c'; then $(CYGPATH_W) 'dh-tab.c'; else $(CYGPATH_W) '$(srcdir)/dh-tab.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-tab.Tpo $(DEPDIR)/devhelp-dh-tab.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-tab.c' object='devhelp-dh-tab.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-tab.obj `if test -f 'dh-tab.c'; then $(CYGPATH_W) 'dh-tab.c'; else $(CYGPATH_W) '$(srcdir)/dh-tab.c'; fi` + +devhelp-dh-tab-label.o: dh-tab-label.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-tab-label.o -MD -MP -MF $(DEPDIR)/devhelp-dh-tab-label.Tpo -c -o devhelp-dh-tab-label.o `test -f 'dh-tab-label.c' || echo '$(srcdir)/'`dh-tab-label.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-tab-label.Tpo $(DEPDIR)/devhelp-dh-tab-label.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-tab-label.c' object='devhelp-dh-tab-label.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-tab-label.o `test -f 'dh-tab-label.c' || echo '$(srcdir)/'`dh-tab-label.c + +devhelp-dh-tab-label.obj: dh-tab-label.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-tab-label.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-tab-label.Tpo -c -o devhelp-dh-tab-label.obj `if test -f 'dh-tab-label.c'; then $(CYGPATH_W) 'dh-tab-label.c'; else $(CYGPATH_W) '$(srcdir)/dh-tab-label.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-tab-label.Tpo $(DEPDIR)/devhelp-dh-tab-label.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-tab-label.c' object='devhelp-dh-tab-label.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-tab-label.obj `if test -f 'dh-tab-label.c'; then $(CYGPATH_W) 'dh-tab-label.c'; else $(CYGPATH_W) '$(srcdir)/dh-tab-label.c'; fi` + +devhelp-dh-web-view.o: dh-web-view.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-web-view.o -MD -MP -MF $(DEPDIR)/devhelp-dh-web-view.Tpo -c -o devhelp-dh-web-view.o `test -f 'dh-web-view.c' || echo '$(srcdir)/'`dh-web-view.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-web-view.Tpo $(DEPDIR)/devhelp-dh-web-view.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-web-view.c' object='devhelp-dh-web-view.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-web-view.o `test -f 'dh-web-view.c' || echo '$(srcdir)/'`dh-web-view.c + +devhelp-dh-web-view.obj: dh-web-view.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-web-view.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-web-view.Tpo -c -o devhelp-dh-web-view.obj `if test -f 'dh-web-view.c'; then $(CYGPATH_W) 'dh-web-view.c'; else $(CYGPATH_W) '$(srcdir)/dh-web-view.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-web-view.Tpo $(DEPDIR)/devhelp-dh-web-view.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-web-view.c' object='devhelp-dh-web-view.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-web-view.obj `if test -f 'dh-web-view.c'; then $(CYGPATH_W) 'dh-web-view.c'; else $(CYGPATH_W) '$(srcdir)/dh-web-view.c'; fi` + +devhelp-dh-window.o: dh-window.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-window.o -MD -MP -MF $(DEPDIR)/devhelp-dh-window.Tpo -c -o devhelp-dh-window.o `test -f 'dh-window.c' || echo '$(srcdir)/'`dh-window.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-window.Tpo $(DEPDIR)/devhelp-dh-window.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-window.c' object='devhelp-dh-window.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-window.o `test -f 'dh-window.c' || echo '$(srcdir)/'`dh-window.c + +devhelp-dh-window.obj: dh-window.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-dh-window.obj -MD -MP -MF $(DEPDIR)/devhelp-dh-window.Tpo -c -o devhelp-dh-window.obj `if test -f 'dh-window.c'; then $(CYGPATH_W) 'dh-window.c'; else $(CYGPATH_W) '$(srcdir)/dh-window.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-dh-window.Tpo $(DEPDIR)/devhelp-dh-window.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='dh-window.c' object='devhelp-dh-window.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-dh-window.obj `if test -f 'dh-window.c'; then $(CYGPATH_W) 'dh-window.c'; else $(CYGPATH_W) '$(srcdir)/dh-window.c'; fi` + +devhelp-tepl-info-bar.o: tepl-info-bar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-tepl-info-bar.o -MD -MP -MF $(DEPDIR)/devhelp-tepl-info-bar.Tpo -c -o devhelp-tepl-info-bar.o `test -f 'tepl-info-bar.c' || echo '$(srcdir)/'`tepl-info-bar.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-tepl-info-bar.Tpo $(DEPDIR)/devhelp-tepl-info-bar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tepl-info-bar.c' object='devhelp-tepl-info-bar.o' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-tepl-info-bar.o `test -f 'tepl-info-bar.c' || echo '$(srcdir)/'`tepl-info-bar.c + +devhelp-tepl-info-bar.obj: tepl-info-bar.c +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -MT devhelp-tepl-info-bar.obj -MD -MP -MF $(DEPDIR)/devhelp-tepl-info-bar.Tpo -c -o devhelp-tepl-info-bar.obj `if test -f 'tepl-info-bar.c'; then $(CYGPATH_W) 'tepl-info-bar.c'; else $(CYGPATH_W) '$(srcdir)/tepl-info-bar.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/devhelp-tepl-info-bar.Tpo $(DEPDIR)/devhelp-tepl-info-bar.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='tepl-info-bar.c' object='devhelp-tepl-info-bar.obj' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(devhelp_CPPFLAGS) $(CPPFLAGS) $(devhelp_CFLAGS) $(CFLAGS) -c -o devhelp-tepl-info-bar.obj `if test -f 'tepl-info-bar.c'; then $(CYGPATH_W) 'tepl-info-bar.c'; else $(CYGPATH_W) '$(srcdir)/tepl-info-bar.c'; fi` + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs +install-girDATA: $(gir_DATA) + @$(NORMAL_INSTALL) + @list='$(gir_DATA)'; test -n "$(girdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(girdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(girdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(girdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(girdir)" || exit $$?; \ + done + +uninstall-girDATA: + @$(NORMAL_UNINSTALL) + @list='$(gir_DATA)'; test -n "$(girdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(girdir)'; $(am__uninstall_files_from_dir) +install-typelibDATA: $(typelib_DATA) + @$(NORMAL_INSTALL) + @list='$(typelib_DATA)'; test -n "$(typelibdir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(typelibdir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(typelibdir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(typelibdir)'"; \ + $(INSTALL_DATA) $$files "$(DESTDIR)$(typelibdir)" || exit $$?; \ + done + +uninstall-typelibDATA: + @$(NORMAL_UNINSTALL) + @list='$(typelib_DATA)'; test -n "$(typelibdir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(typelibdir)'; $(am__uninstall_files_from_dir) +install-devhelpincludeHEADERS: $(devhelpinclude_HEADERS) + @$(NORMAL_INSTALL) + @list='$(devhelpinclude_HEADERS)'; test -n "$(devhelpincludedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(devhelpincludedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(devhelpincludedir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(devhelpincludedir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(devhelpincludedir)" || exit $$?; \ + done + +uninstall-devhelpincludeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(devhelpinclude_HEADERS)'; test -n "$(devhelpincludedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(devhelpincludedir)'; $(am__uninstall_files_from_dir) +install-nodist_devhelpincludeHEADERS: $(nodist_devhelpinclude_HEADERS) + @$(NORMAL_INSTALL) + @list='$(nodist_devhelpinclude_HEADERS)'; test -n "$(devhelpincludedir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(devhelpincludedir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(devhelpincludedir)" || exit 1; \ + fi; \ + for p in $$list; do \ + if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ + echo "$$d$$p"; \ + done | $(am__base_list) | \ + while read files; do \ + echo " $(INSTALL_HEADER) $$files '$(DESTDIR)$(devhelpincludedir)'"; \ + $(INSTALL_HEADER) $$files "$(DESTDIR)$(devhelpincludedir)" || exit $$?; \ + done + +uninstall-nodist_devhelpincludeHEADERS: + @$(NORMAL_UNINSTALL) + @list='$(nodist_devhelpinclude_HEADERS)'; test -n "$(devhelpincludedir)" || list=; \ + files=`for p in $$list; do echo $$p; done | sed -e 's|^.*/||'`; \ + dir='$(DESTDIR)$(devhelpincludedir)'; $(am__uninstall_files_from_dir) + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +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)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) check-am +all-am: Makefile $(LTLIBRARIES) $(PROGRAMS) $(DATA) $(HEADERS) +install-binPROGRAMS: install-libLTLIBRARIES + +installdirs: + for dir in "$(DESTDIR)$(libdir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(girdir)" "$(DESTDIR)$(typelibdir)" "$(DESTDIR)$(devhelpincludedir)" "$(DESTDIR)$(devhelpincludedir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: $(BUILT_SOURCES) + $(MAKE) $(AM_MAKEFLAGS) 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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + +clean-generic: + -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES) + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES) + +maintainer-clean-generic: + @echo "This command is intended for maintainers to use" + @echo "it deletes files that may require special tools to rebuild." + -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) +clean: clean-am + +clean-am: clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \ + clean-libtool clean-noinstLTLIBRARIES 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 + +html-am: + +info: info-am + +info-am: + +install-data-am: install-devhelpincludeHEADERS install-girDATA \ + install-nodist_devhelpincludeHEADERS install-typelibDATA + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-binPROGRAMS install-libLTLIBRARIES + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +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 \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binPROGRAMS uninstall-devhelpincludeHEADERS \ + uninstall-girDATA uninstall-libLTLIBRARIES \ + uninstall-nodist_devhelpincludeHEADERS uninstall-typelibDATA + +.MAKE: all check install install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic clean-libLTLIBRARIES \ + clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \ + ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-binPROGRAMS \ + install-data install-data-am install-devhelpincludeHEADERS \ + install-dvi install-dvi-am install-exec install-exec-am \ + install-girDATA install-html install-html-am install-info \ + install-info-am install-libLTLIBRARIES install-man \ + install-nodist_devhelpincludeHEADERS install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-typelibDATA installcheck installcheck-am installdirs \ + maintainer-clean maintainer-clean-generic mostlyclean \ + mostlyclean-compile mostlyclean-generic mostlyclean-libtool \ + pdf pdf-am ps ps-am tags tags-am uninstall uninstall-am \ + uninstall-binPROGRAMS uninstall-devhelpincludeHEADERS \ + uninstall-girDATA uninstall-libLTLIBRARIES \ + uninstall-nodist_devhelpincludeHEADERS uninstall-typelibDATA + +.PRECIOUS: Makefile + + +dh-resources.c: dh.gresource.xml $(resource_files) + $(AM_V_GEN) $(GLIB_COMPILE_RESOURCES) --target=$@ --sourcedir=$(srcdir) --generate-source --c-name dh $(srcdir)/dh.gresource.xml + +dh-enum-types.h: dh-enum-types.h.template $(libdevhelp_public_headers) $(GLIB_MKENUMS) + $(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template dh-enum-types.h.template $(libdevhelp_public_headers)) > $@ + +dh-enum-types.c: dh-enum-types.c.template $(libdevhelp_public_headers) $(GLIB_MKENUMS) + $(AM_V_GEN) (cd $(srcdir) && $(GLIB_MKENUMS) --template dh-enum-types.c.template $(libdevhelp_public_headers)) > $@ + +# GObject Introspection +-include $(INTROSPECTION_MAKEFILE) + +@HAVE_INTROSPECTION_TRUE@Devhelp-3.0.gir: libdevhelp-3.la + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/src/devhelp.h b/src/devhelp.h new file mode 100644 index 0000000..c693914 --- /dev/null +++ b/src/devhelp.h @@ -0,0 +1,34 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2012 Aleksander Morgado + * + * 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, see . + */ + +#ifndef DEVHELP_H +#define DEVHELP_H + +/* Include all the public headers. */ + +#include "dh-assistant-view.h" +#include "dh-book.h" +#include "dh-book-manager.h" +#include "dh-book-tree.h" +#include "dh-completion.h" +#include "dh-init.h" +#include "dh-keyword-model.h" +#include "dh-link.h" +#include "dh-sidebar.h" + +#endif /* DEVHELP_H */ diff --git a/src/dh-app.c b/src/dh-app.c new file mode 100644 index 0000000..fe809bb --- /dev/null +++ b/src/dh-app.c @@ -0,0 +1,541 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2004-2008 Imendio AB + * Copyright (C) 2012 Aleksander Morgado + * Copyright (C) 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-app.h" +#include +#include "dh-assistant.h" +#include "dh-preferences.h" +#include "dh-settings.h" +#include "dh-util.h" + +G_DEFINE_TYPE (DhApp, dh_app, GTK_TYPE_APPLICATION); + +static DhAssistant * +get_active_assistant_window (DhApp *app) +{ + GList *windows; + GList *l; + + windows = gtk_application_get_windows (GTK_APPLICATION (app)); + + for (l = windows; l != NULL; l = l->next) { + GtkWindow *cur_window = GTK_WINDOW (l->data); + + if (DH_IS_ASSISTANT (cur_window)) + return DH_ASSISTANT (cur_window); + } + + return NULL; +} + +static void +save_active_main_window_gsettings (DhApp *app) +{ + DhWindow *active_window; + DhSettings *settings; + + active_window = dh_app_get_active_main_window (app, FALSE); + if (active_window == NULL) + return; + + settings = dh_settings_get_singleton (); + dh_util_window_settings_save (GTK_WINDOW (active_window), + dh_settings_peek_window_settings (settings)); +} + +static void +save_active_assistant_window_gsettings (DhApp *app) +{ + DhAssistant *active_assistant; + DhSettings *settings; + + active_assistant = get_active_assistant_window (app); + if (active_assistant == NULL) + return; + + settings = dh_settings_get_singleton (); + dh_util_window_settings_save (GTK_WINDOW (active_assistant), + dh_settings_peek_assistant_settings (settings)); +} + +static void +new_window_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + GtkWidget *new_window; + + save_active_main_window_gsettings (app); + + new_window = dh_window_new (GTK_APPLICATION (app)); + gtk_widget_show_all (new_window); +} + +static void +preferences_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + GtkWindow *parent_window; + + parent_window = (GtkWindow *) dh_app_get_active_main_window (app, FALSE); + dh_preferences_show_dialog (parent_window); +} + +static void +help_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + GtkWindow *window; + GError *error = NULL; + + window = (GtkWindow *) dh_app_get_active_main_window (app, FALSE); + + gtk_show_uri_on_window (window, "help:devhelp", GDK_CURRENT_TIME, &error); + + if (error != NULL) { + g_warning ("Failed to open the documentation: %s", error->message); + g_clear_error (&error); + } +} + +static void +about_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + GtkWindow *parent_window; + + const gchar *authors[] = { + "Mikael Hallendal ", + "Richard Hult ", + "Johan Dahlin ", + "Ross Burton ", + "Aleksander Morgado ", + "Thomas Bechtold ", + "Frédéric Péters ", + "Sébastien Wilmet ", + NULL + }; + + parent_window = (GtkWindow *) dh_app_get_active_main_window (app, FALSE); + + gtk_show_about_dialog (parent_window, + /* Translators: please don't translate "Devhelp" (it's marked as + * translatable for transliteration only). + */ + "name", _("Devhelp"), + "version", PACKAGE_VERSION, + "comments", _("A developer tool for browsing and searching API documentation"), + "authors", authors, + "translator-credits", _("translator-credits"), + "website", PACKAGE_URL, + "website-label", _("Devhelp Website"), + "logo-icon-name", PACKAGE_TARNAME, + "license-type", GTK_LICENSE_GPL_2_0, + "copyright", "Copyright 2001-2018 – the Devhelp team", + NULL); +} + +static void +quit_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + + save_active_main_window_gsettings (app); + save_active_assistant_window_gsettings (app); + + g_application_quit (G_APPLICATION (app)); +} + +static void +search_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + const gchar *keyword; + DhWindow *window; + + keyword = g_variant_get_string (parameter, NULL); + if (keyword == NULL || keyword[0] == '\0') { + g_warning ("Cannot search in application window: no keyword given."); + return; + } + + window = dh_app_get_active_main_window (app, TRUE); + dh_window_search (window, keyword); + gtk_window_present (GTK_WINDOW (window)); +} + +static void +search_assistant_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + DhAssistant *assistant; + const gchar *keyword; + + keyword = g_variant_get_string (parameter, NULL); + if (keyword == NULL || keyword[0] == '\0') { + g_warning ("Cannot look for keyword in Search Assistant: no keyword given."); + return; + } + + assistant = get_active_assistant_window (app); + if (assistant == NULL) + assistant = dh_assistant_new (app); + + dh_assistant_search (assistant, keyword); + gtk_window_present (GTK_WINDOW (assistant)); +} + +static void +raise_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhApp *app = DH_APP (user_data); + GtkWindow *window; + + window = gtk_application_get_active_window (GTK_APPLICATION (app)); + if (window == NULL) + window = (GtkWindow *) dh_app_get_active_main_window (app, TRUE); + + gtk_window_present (window); +} + +static void +add_action_entries (DhApp *app) +{ + const GActionEntry app_entries[] = { + /* General actions */ + { "new-window", new_window_cb }, + { "preferences", preferences_cb }, + { "help", help_cb }, + { "about", about_cb }, + { "quit", quit_cb }, + + /* Additional commandline-specific actions */ + { "search", search_cb, "s" }, + { "search-assistant", search_assistant_cb, "s" }, + { "raise", raise_cb }, + }; + + g_action_map_add_action_entries (G_ACTION_MAP (app), + app_entries, + G_N_ELEMENTS (app_entries), + app); +} + +static void +setup_go_to_tab_accelerators (GtkApplication *app) +{ + const gchar *accels[] = {NULL, NULL}; + gint key_num; + + for (key_num = 1; key_num <= 9; key_num++) { + gchar *accel; + gchar *detailed_action_name; + + accel = g_strdup_printf ("%d", key_num); + accels[0] = accel; + + detailed_action_name = g_strdup_printf ("win.go-to-tab(uint16 %d)", key_num - 1); + + gtk_application_set_accels_for_action (app, detailed_action_name, accels); + + g_free (accel); + g_free (detailed_action_name); + } + + /* On a typical keyboard the 0 is after 9, so it's the equivalent of 10 + * (9 starting from 0). + */ + accels[0] = "0"; + gtk_application_set_accels_for_action (app, "win.go-to-tab(uint16 9)", accels); +} + +static void +setup_accelerators (GtkApplication *app) +{ + const gchar *accels[] = {NULL, NULL, NULL, NULL}; + + setup_go_to_tab_accelerators (app); + + accels[0] = "0"; + gtk_application_set_accels_for_action (app, "win.zoom-default", accels); + + accels[0] = "minus"; + gtk_application_set_accels_for_action (app, "win.zoom-out", accels); + + /* For "equal": Epiphany also has this keyboard shortcut for + * zoom-in. On keyboards the = and + are usually on the same key, but + + * is less convenient to type because Shift must be pressed too. + * Apparently it's usual on Windows to press Ctrl+= to zoom in. + * https://bugzilla.gnome.org/show_bug.cgi?id=743704 + */ + accels[0] = "plus"; + accels[1] = "equal"; + gtk_application_set_accels_for_action (app, "win.zoom-in", accels); + accels[1] = NULL; + + accels[0] = "f"; + gtk_application_set_accels_for_action (app, "win.find", accels); + + accels[0] = "c"; + gtk_application_set_accels_for_action (app, "win.copy", accels); + + accels[0] = "p"; + gtk_application_set_accels_for_action (app, "win.print", accels); + + accels[0] = "t"; + gtk_application_set_accels_for_action (app, "win.new-tab", accels); + + accels[0] = "n"; + gtk_application_set_accels_for_action (app, "app.new-window", accels); + + accels[0] = "Page_Down"; + gtk_application_set_accels_for_action (app, "win.next-tab", accels); + + accels[0] = "Page_Up"; + gtk_application_set_accels_for_action (app, "win.prev-tab", accels); + + accels[0] = "w"; + gtk_application_set_accels_for_action (app, "win.close", accels); + + accels[0] = "q"; + gtk_application_set_accels_for_action (app, "app.quit", accels); + + accels[0] = "F1"; + gtk_application_set_accels_for_action (app, "app.help", accels); + + accels[0] = "F9"; + gtk_application_set_accels_for_action (app, "win.show-sidebar", accels); + + accels[0] = "F10"; + gtk_application_set_accels_for_action (app, "win.show-window-menu", accels); + + accels[0] = "Right"; + accels[1] = "Forward"; + gtk_application_set_accels_for_action (app, "win.go-forward", accels); + + accels[0] = "Left"; + accels[1] = "Back"; + gtk_application_set_accels_for_action (app, "win.go-back", accels); + + accels[0] = "k"; + accels[1] = "s"; + accels[2] = "l"; + gtk_application_set_accels_for_action (app, "win.focus-search", accels); +} + +static void +set_app_menu_if_needed (GtkApplication *app) +{ + GMenu *manual_app_menu; + + manual_app_menu = gtk_application_get_menu_by_id (app, "manual-app-menu"); + + /* Have the g_return in all cases, to catch problems in all cases. */ + g_return_if_fail (manual_app_menu != NULL); + + if (gtk_application_prefers_app_menu (app)) + gtk_application_set_app_menu (app, G_MENU_MODEL (manual_app_menu)); +} + +static void +dh_app_startup (GApplication *application) +{ + DhApp *app = DH_APP (application); + + g_application_set_resource_base_path (application, "/org/gnome/devhelp"); + + if (G_APPLICATION_CLASS (dh_app_parent_class)->startup != NULL) + G_APPLICATION_CLASS (dh_app_parent_class)->startup (application); + + add_action_entries (app); + setup_accelerators (GTK_APPLICATION (app)); + set_app_menu_if_needed (GTK_APPLICATION (app)); +} + +static void +dh_app_activate (GApplication *app) +{ + g_action_group_activate_action (G_ACTION_GROUP (app), "new-window", NULL); +} + +static gboolean option_version; + +static GOptionEntry options[] = { + { "new-window", 'n', + 0, G_OPTION_ARG_NONE, NULL, + N_("Opens a new Devhelp window"), + NULL + }, + { "search", 's', + 0, G_OPTION_ARG_STRING, NULL, + N_("Search for a keyword"), + N_("KEYWORD") + }, + { "search-assistant", 'a', + 0, G_OPTION_ARG_STRING, NULL, + N_("Search and display any hit in the assistant window"), + N_("KEYWORD") + }, + { "version", 'v', + 0, G_OPTION_ARG_NONE, &option_version, + N_("Display the version and exit"), + NULL + }, + { "quit", 'q', + 0, G_OPTION_ARG_NONE, NULL, + N_("Quit any running Devhelp"), + NULL + }, + { NULL } +}; + +static gint +dh_app_handle_local_options (GApplication *app, + GVariantDict *local_options) +{ + if (option_version) { + g_print ("%s %s\n", g_get_application_name (), PACKAGE_VERSION); + return 0; + } + + return -1; +} + +static gint +dh_app_command_line (GApplication *g_app, + GApplicationCommandLine *command_line) +{ + DhApp *app = DH_APP (g_app); + GVariantDict *options_dict; + gboolean option_new_window = FALSE; + const gchar *option_search = NULL; + const gchar *option_search_assistant = NULL; + gboolean option_quit = FALSE; + + options_dict = g_application_command_line_get_options_dict (command_line); + + g_variant_dict_lookup (options_dict, "new-window", "b", &option_new_window); + g_variant_dict_lookup (options_dict, "search", "&s", &option_search); + g_variant_dict_lookup (options_dict, "search-assistant", "&s", &option_search_assistant); + g_variant_dict_lookup (options_dict, "quit", "b", &option_quit); + + if (option_quit) { + g_action_group_activate_action (G_ACTION_GROUP (app), "quit", NULL); + return 0; + } + + if (option_new_window) + g_action_group_activate_action (G_ACTION_GROUP (app), "new-window", NULL); + + if (option_search != NULL) + g_action_group_activate_action (G_ACTION_GROUP (app), + "search", + g_variant_new_string (option_search)); + + if (option_search_assistant != NULL) + g_action_group_activate_action (G_ACTION_GROUP (app), + "search-assistant", + g_variant_new_string (option_search_assistant)); + + g_action_group_activate_action (G_ACTION_GROUP (app), "raise", NULL); + + return 0; +} + +static void +dh_app_class_init (DhAppClass *klass) +{ + GApplicationClass *application_class = G_APPLICATION_CLASS (klass); + + application_class->startup = dh_app_startup; + application_class->activate = dh_app_activate; + application_class->handle_local_options = dh_app_handle_local_options; + application_class->command_line = dh_app_command_line; +} + +static void +dh_app_init (DhApp *app) +{ + /* Translators: please don't translate "Devhelp" (it's marked as + * translatable for transliteration only). + */ + g_set_application_name (_("Devhelp")); + gtk_window_set_default_icon_name ("devhelp"); + + g_application_add_main_option_entries (G_APPLICATION (app), options); +} + +DhApp * +dh_app_new (void) +{ + return g_object_new (DH_TYPE_APP, + "application-id", "org.gnome.Devhelp", + "flags", G_APPLICATION_HANDLES_COMMAND_LINE, + NULL); +} + +/* Returns: (transfer none) (nullable). */ +DhWindow * +dh_app_get_active_main_window (DhApp *app, + gboolean create_if_none) +{ + GList *windows; + GList *l; + + g_return_val_if_fail (DH_IS_APP (app), NULL); + + windows = gtk_application_get_windows (GTK_APPLICATION (app)); + + for (l = windows; l != NULL; l = l->next) { + GtkWindow *cur_window = GTK_WINDOW (l->data); + + if (DH_IS_WINDOW (cur_window)) + return DH_WINDOW (cur_window); + } + + if (create_if_none) { + g_action_group_activate_action (G_ACTION_GROUP (app), "new-window", NULL); + + /* Look again, but with create_if_none = FALSE to avoid an + * infinite recursion in case creating a new main window fails. + */ + return dh_app_get_active_main_window (app, FALSE); + } + + return NULL; +} diff --git a/src/dh-app.h b/src/dh-app.h new file mode 100644 index 0000000..b02de44 --- /dev/null +++ b/src/dh-app.h @@ -0,0 +1,55 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2012 Aleksander Morgado + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_APP_H +#define DH_APP_H + +#include +#include "dh-window.h" + +G_BEGIN_DECLS + +#define DH_TYPE_APP (dh_app_get_type ()) +#define DH_APP(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), DH_TYPE_APP, DhApp)) +#define DH_APP_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), DH_TYPE_APP, DhAppClass)) +#define DH_IS_APP(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), DH_TYPE_APP)) +#define DH_IS_APP_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), DH_TYPE_APP)) +#define DH_APP_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), DH_TYPE_APP, DhAppClass)) + +typedef struct _DhApp DhApp; +typedef struct _DhAppClass DhAppClass; + +struct _DhApp { + GtkApplication parent_instance; +}; + +struct _DhAppClass { + GtkApplicationClass parent_class; +}; + +GType dh_app_get_type (void) G_GNUC_CONST; + +DhApp * dh_app_new (void); + +DhWindow * dh_app_get_active_main_window (DhApp *app, + gboolean create_if_none); + +G_END_DECLS + +#endif /* DH_APP_H */ diff --git a/src/dh-assistant-view.c b/src/dh-assistant-view.c new file mode 100644 index 0000000..8b70132 --- /dev/null +++ b/src/dh-assistant-view.c @@ -0,0 +1,516 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Imendio AB + * Copyright (C) 2008 Sven Herzberg + * + * 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 + */ + +#include "config.h" +#include "dh-assistant-view.h" +#include +#include +#include "dh-util.h" +#include "dh-book.h" +#include "dh-book-manager.h" + +/** + * SECTION:dh-assistant-view + * @Title: DhAssistantView + * @Short_description: A small “assistant” widget for displaying just one hit + * + * #DhAssistantView is a subclass of #WebKitWebView for displaying the + * documentation of just one symbol. + * + * A possible use-case: in a text editor, pressing a keyboard shortcut could + * display this widget for the symbol under the cursor. + * + * With the Devhelp application, an assistant can easily be launched with the + * command line option `--search-assistant`. + */ + +typedef struct { + DhLink *link; + gchar *current_search; + guint snippet_loaded : 1; +} DhAssistantViewPrivate; + +enum { + SIGNAL_OPEN_URI, + N_SIGNALS +}; + +static guint signals[N_SIGNALS] = { 0 }; + +G_DEFINE_TYPE_WITH_PRIVATE (DhAssistantView, dh_assistant_view, WEBKIT_TYPE_WEB_VIEW); + +static void +view_finalize (GObject *object) +{ + DhAssistantView *view = DH_ASSISTANT_VIEW (object); + DhAssistantViewPrivate *priv = dh_assistant_view_get_instance_private (view); + + if (priv->link) { + g_object_unref (priv->link); + } + + g_free (priv->current_search); + + G_OBJECT_CLASS (dh_assistant_view_parent_class)->finalize (object); +} + +static gboolean +assistant_decide_policy (WebKitWebView *web_view, + WebKitPolicyDecision *decision, + WebKitPolicyDecisionType decision_type) +{ + DhAssistantViewPrivate *priv; + const gchar *uri; + WebKitNavigationPolicyDecision *navigation_decision; + WebKitNavigationAction *navigation_action; + WebKitNavigationType navigation_type; + WebKitURIRequest *request; + + if (decision_type != WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION) { + webkit_policy_decision_ignore (decision); + + return TRUE; + } + + priv = dh_assistant_view_get_instance_private (DH_ASSISTANT_VIEW (web_view)); + + navigation_decision = WEBKIT_NAVIGATION_POLICY_DECISION (decision); + navigation_action = webkit_navigation_policy_decision_get_navigation_action (navigation_decision); + navigation_type = webkit_navigation_action_get_navigation_type (navigation_action); + if (navigation_type != WEBKIT_NAVIGATION_TYPE_LINK_CLICKED) { + if (! priv->snippet_loaded) { + priv->snippet_loaded = TRUE; + webkit_policy_decision_use (decision); + } + + webkit_policy_decision_ignore (decision); + + return TRUE; + } + + request = webkit_navigation_action_get_request (navigation_action); + uri = webkit_uri_request_get_uri (request); + if (strcmp (uri, "about:blank") == 0) { + webkit_policy_decision_use (decision); + + return TRUE; + } + + g_signal_emit (web_view, signals[SIGNAL_OPEN_URI], 0, uri); + webkit_policy_decision_ignore (decision); + + return TRUE; +} + +static gboolean +assistant_button_press_event (GtkWidget *widget, + GdkEventButton *event) +{ + /* Block webkit's builtin context menu. */ + if (event->button != 1) { + return TRUE; + } + + return GTK_WIDGET_CLASS (dh_assistant_view_parent_class)->button_press_event (widget, event); +} + +static void +dh_assistant_view_class_init (DhAssistantViewClass* klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + WebKitWebViewClass *web_view_class = WEBKIT_WEB_VIEW_CLASS (klass); + + object_class->finalize = view_finalize; + + widget_class->button_press_event = assistant_button_press_event; + web_view_class->decide_policy = assistant_decide_policy; + + /** + * DhAssistantView::open-uri: + * @view: the view on which the signal is emitted + * @uri: the uri to open + */ + signals[SIGNAL_OPEN_URI] = g_signal_new ("open-uri", + G_TYPE_FROM_CLASS (object_class), + 0, 0, + NULL, NULL, + NULL, + G_TYPE_NONE, 1, + G_TYPE_STRING); +} + +static void +dh_assistant_view_init (DhAssistantView *view) +{ +} + +/** + * dh_assistant_view_new: + * + * Returns: (transfer floating): a new #DhAssistantView widget. + */ +GtkWidget * +dh_assistant_view_new (void) +{ + return g_object_new (DH_TYPE_ASSISTANT_VIEW, NULL); +} + +static const gchar * +find_in_buffer (const gchar *buffer, + const gchar *key, + gsize length, + gsize key_length) +{ + gsize m = 0; + gsize i = 0; + + while (i < length) { + if (key[m] == buffer[i]) { + m++; + if (m == key_length) { + return buffer + i - m + 1; + } + } else { + m = 0; + } + i++; + } + + return NULL; +} + +/** + * dh_assistant_view_set_link: + * @view: a #DhAssistantView. + * @link: (nullable): a #DhLink to set or %NULL. + * + * Open @link in the assistant view, if %NULL the view will be blanked. + * + * Returns: %TRUE if the requested link is open, %FALSE otherwise. + */ +gboolean +dh_assistant_view_set_link (DhAssistantView *view, + DhLink *link) +{ + DhAssistantViewPrivate *priv; + gchar *uri; + const gchar *anchor; + gchar *filename; + GMappedFile *file; + const gchar *contents; + gsize length; + gchar *key; + gsize key_length; + gsize offset = 0; + const gchar *start; + const gchar *end; + + g_return_val_if_fail (DH_IS_ASSISTANT_VIEW (view), FALSE); + + priv = dh_assistant_view_get_instance_private (view); + + if (priv->link == link) { + return TRUE; + } + + if (priv->link) { + dh_link_unref (priv->link); + priv->link = NULL; + } + + if (link) { + link = dh_link_ref (link); + } else { + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (view), "about:blank"); + return TRUE; + } + + /* FIXME uri can be NULL. */ + uri = dh_link_get_uri (link); + anchor = strrchr (uri, '#'); + if (anchor) { + filename = g_strndup (uri, anchor - uri); + anchor++; + } else { + g_free (uri); + return FALSE; + } + + if (g_str_has_prefix (filename, "file://")) + offset = 7; + + file = g_mapped_file_new (filename + offset, FALSE, NULL); + if (!file) { + g_free (filename); + g_free (uri); + return FALSE; + } + + contents = g_mapped_file_get_contents (file); + length = g_mapped_file_get_length (file); + + key = g_strdup_printf (""; + + start = find_in_buffer (start, + start_key, + length, + strlen (start_key)); + + end_key = "

buf) { + name[-1] = '\n'; + } + } + + stylesheet = dh_util_build_data_filename ("devhelp", + "assistant", + "assistant.css", + NULL); + stylesheet_uri = dh_util_create_data_uri_for_filename (stylesheet, + "text/css"); + g_free (stylesheet); + if (stylesheet_uri) + stylesheet_html = g_strdup_printf ("", + stylesheet_uri); + g_free (stylesheet_uri); + + javascript = dh_util_build_data_filename ("devhelp", + "assistant", + "assistant.js", + NULL); + javascript_uri = dh_util_create_data_uri_for_filename (javascript, + "application/javascript"); + g_free (javascript); + + if (javascript_uri) + javascript_html = g_strdup_printf ("", javascript_uri); + g_free (javascript_uri); + + html = g_strdup_printf ( + "" + "" + "%s" + "%s" + "" + "" + "" + "
%s %s
" + "
%s
" + "" + "", + stylesheet_html, + javascript_html, + function, + dh_link_type_to_string (dh_link_get_link_type (link)), + dh_link_get_uri (link), + dh_link_get_name (link), + _("Book:"), + dh_link_get_book_title (link), + buf); + g_free (buf); + + g_free (stylesheet_html); + g_free (javascript_html); + + priv->snippet_loaded = FALSE; + webkit_web_view_load_html ( + WEBKIT_WEB_VIEW (view), + html, + filename); + g_free (html); + } else { + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (view), "about:blank"); + } + + g_mapped_file_unref (file); + g_free (filename); + + return TRUE; +} + +/** + * dh_assistant_view_search: + * @view: a #DhAssistantView. + * @str: the search query. + * + * Search for @str in the current assistant view. + * + * Returns: %TRUE if @str was found, %FALSE otherwise. + */ +gboolean +dh_assistant_view_search (DhAssistantView *view, + const gchar *str) +{ + DhAssistantViewPrivate *priv; + DhBookManager *book_manager; + const gchar *name; + DhLink *link; + DhLink *exact_link; + DhLink *prefix_link; + GList *books; + + g_return_val_if_fail (DH_IS_ASSISTANT_VIEW (view), FALSE); + g_return_val_if_fail (str, FALSE); + + priv = dh_assistant_view_get_instance_private (view); + + /* Filter out very short strings. */ + if (strlen (str) < 4) { + return FALSE; + } + + if (priv->current_search && strcmp (priv->current_search, str) == 0) { + return FALSE; + } + g_free (priv->current_search); + priv->current_search = g_strdup (str); + + prefix_link = NULL; + exact_link = NULL; + + book_manager = dh_book_manager_get_singleton (); + + for (books = dh_book_manager_get_books (book_manager); + !exact_link && books; + books = g_list_next (books)) { + GList *l; + + for (l = dh_book_get_links (DH_BOOK (books->data)); + l && exact_link == NULL; + l = l->next) { + DhLinkType type; + + link = l->data; + + type = dh_link_get_link_type (link); + + if (type == DH_LINK_TYPE_BOOK || + type == DH_LINK_TYPE_PAGE || + type == DH_LINK_TYPE_KEYWORD) { + continue; + } + + name = dh_link_get_name (link); + if (strcmp (name, str) == 0) { + exact_link = link; + } + else if (g_str_has_prefix (name, str)) { + /* Prefer shorter prefix matches. */ + if (!prefix_link) { + prefix_link = link; + } + else if (strlen (dh_link_get_name (prefix_link)) > strlen (name)) { + prefix_link = link; + } + } + } + } + + if (exact_link) { + /*g_print ("exact hit: '%s' '%s'\n", exact_link->name, str);*/ + dh_assistant_view_set_link (view, exact_link); + } + else if (prefix_link) { + /*g_print ("prefix hit: '%s' '%s'\n", prefix_link->name, str);*/ + dh_assistant_view_set_link (view, prefix_link); + } else { + /*g_print ("no hit\n");*/ + /*assistant_view_set_link (view, NULL);*/ + return FALSE; + } + + return TRUE; +} diff --git a/src/dh-assistant-view.h b/src/dh-assistant-view.h new file mode 100644 index 0000000..8404b34 --- /dev/null +++ b/src/dh-assistant-view.h @@ -0,0 +1,63 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Sven Herzberg + * + * 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 + */ + +#ifndef DH_ASSISTANT_VIEW_H +#define DH_ASSISTANT_VIEW_H + +#include +#include "dh-book-manager.h" +#include "dh-link.h" + +G_BEGIN_DECLS + +#define DH_TYPE_ASSISTANT_VIEW (dh_assistant_view_get_type ()) +#define DH_ASSISTANT_VIEW(i) (G_TYPE_CHECK_INSTANCE_CAST ((i), DH_TYPE_ASSISTANT_VIEW, DhAssistantView)) +#define DH_ASSISTANT_VIEW_CLASS(c) (G_TYPE_CHECK_CLASS_CAST ((c), DH_TYPE_ASSISTANT_VIEW, DhAssistantViewClass)) +#define DH_IS_ASSISTANT_VIEW(i) (G_TYPE_CHECK_INSTANCE_TYPE ((i), DH_TYPE_ASSISTANT_VIEW)) +#define DH_IS_ASSISTANT_VIEW_CLASS(c) (G_TYPE_CHECK_CLASS_TYPE ((c), DH_ASSISTANT_VIEW)) +#define DH_ASSISTANT_VIEW_GET_CLASS(i) (G_TYPE_INSTANCE_GET_CLASS ((i), DH_TYPE_ASSISTANT_VIEW, DhAssistantView)) + +typedef struct _DhAssistantView DhAssistantView; +typedef struct _DhAssistantViewClass DhAssistantViewClass; + +struct _DhAssistantView { + WebKitWebView parent_instance; +}; + +struct _DhAssistantViewClass { + WebKitWebViewClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_assistant_view_get_type (void) G_GNUC_CONST; + +GtkWidget * dh_assistant_view_new (void); + +gboolean dh_assistant_view_set_link (DhAssistantView *view, + DhLink *link); + +gboolean dh_assistant_view_search (DhAssistantView *view, + const gchar *str); + +G_END_DECLS + +#endif /* DH_ASSISTANT_VIEW_H */ diff --git a/src/dh-assistant.c b/src/dh-assistant.c new file mode 100644 index 0000000..78bf6ae --- /dev/null +++ b/src/dh-assistant.c @@ -0,0 +1,137 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Imendio AB + * + * 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, see . + */ + +#include "config.h" +#include "dh-assistant.h" +#include "dh-window.h" +#include "dh-util.h" +#include "dh-assistant-view.h" +#include "dh-settings.h" + +typedef struct { + GtkWidget *view; +} DhAssistantPrivate; + +G_DEFINE_TYPE_WITH_PRIVATE (DhAssistant, dh_assistant, GTK_TYPE_APPLICATION_WINDOW); + +static void +assistant_view_open_uri_cb (DhAssistantView *view, + const char *uri, + DhAssistant *assistant) +{ + DhApp *app; + DhWindow *window; + + app = DH_APP (gtk_window_get_application (GTK_WINDOW (assistant))); + + window = dh_app_get_active_main_window (app, TRUE); + _dh_window_display_uri (window, uri); +} + +static gboolean +dh_assistant_key_press_event (GtkWidget *widget, + GdkEventKey *event) +{ + DhAssistant *assistant = DH_ASSISTANT (widget); + + if (event->keyval == GDK_KEY_Escape) { + gtk_window_close (GTK_WINDOW (assistant)); + return GDK_EVENT_STOP; + } + + return GTK_WIDGET_CLASS (dh_assistant_parent_class)->key_press_event (widget, event); +} + +static gboolean +dh_assistant_delete_event (GtkWidget *widget, + GdkEventAny *event) +{ + DhSettings *settings; + + settings = dh_settings_get_singleton (); + dh_util_window_settings_save (GTK_WINDOW (widget), + dh_settings_peek_assistant_settings (settings)); + + if (GTK_WIDGET_CLASS (dh_assistant_parent_class)->delete_event == NULL) + return GDK_EVENT_PROPAGATE; + + return GTK_WIDGET_CLASS (dh_assistant_parent_class)->delete_event (widget, event); +} + +static void +dh_assistant_class_init (DhAssistantClass *klass) +{ + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + + widget_class->key_press_event = dh_assistant_key_press_event; + widget_class->delete_event = dh_assistant_delete_event; + + /* Bind class to template */ + gtk_widget_class_set_template_from_resource (widget_class, + "/org/gnome/devhelp/dh-assistant.ui"); + gtk_widget_class_bind_template_child_private (widget_class, DhAssistant, view); +} + +static void +dh_assistant_init (DhAssistant *assistant) +{ + DhAssistantPrivate *priv = dh_assistant_get_instance_private (assistant); + + gtk_widget_init_template (GTK_WIDGET (assistant)); + + g_signal_connect (priv->view, "open-uri", + G_CALLBACK (assistant_view_open_uri_cb), + assistant); +} + +DhAssistant * +dh_assistant_new (DhApp *application) +{ + DhAssistant *assistant; + DhSettings *settings; + + assistant = g_object_new (DH_TYPE_ASSISTANT, + "application", application, + NULL); + + settings = dh_settings_get_singleton (); + gtk_widget_realize (GTK_WIDGET (assistant)); + dh_util_window_settings_restore (GTK_WINDOW (assistant), + dh_settings_peek_assistant_settings (settings)); + + return assistant; +} + +gboolean +dh_assistant_search (DhAssistant *assistant, + const gchar *str) +{ + DhAssistantPrivate *priv; + + g_return_val_if_fail (DH_IS_ASSISTANT (assistant), FALSE); + g_return_val_if_fail (str != NULL, FALSE); + + priv = dh_assistant_get_instance_private (assistant); + + if (dh_assistant_view_search (DH_ASSISTANT_VIEW (priv->view), str)) { + gtk_widget_show (GTK_WIDGET (assistant)); + return TRUE; + } + + return FALSE; +} diff --git a/src/dh-assistant.h b/src/dh-assistant.h new file mode 100644 index 0000000..28fa0f3 --- /dev/null +++ b/src/dh-assistant.h @@ -0,0 +1,54 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2008 Imendio AB + * + * 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, see . + */ + +#ifndef DH_ASSISTANT_H +#define DH_ASSISTANT_H + +#include +#include "dh-app.h" + +G_BEGIN_DECLS + +#define DH_TYPE_ASSISTANT (dh_assistant_get_type ()) +#define DH_ASSISTANT(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), DH_TYPE_ASSISTANT, DhAssistant)) +#define DH_ASSISTANT_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), DH_TYPE_ASSISTANT, DhAssistantClass)) +#define DH_IS_ASSISTANT(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), DH_TYPE_ASSISTANT)) +#define DH_IS_ASSISTANT_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), DH_TYPE_ASSISTANT)) +#define DH_ASSISTANT_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), DH_TYPE_ASSISTANT, DhAssistantClass)) + +typedef struct _DhAssistant DhAssistant; +typedef struct _DhAssistantClass DhAssistantClass; + +struct _DhAssistant { + GtkApplicationWindow parent_instance; +}; + +struct _DhAssistantClass { + GtkApplicationWindowClass parent_class; +}; + +GType dh_assistant_get_type (void) G_GNUC_CONST; + +DhAssistant * dh_assistant_new (DhApp *application); + +gboolean dh_assistant_search (DhAssistant *assistant, + const gchar *str); + +G_END_DECLS + +#endif /* DH_ASSISTANT_H */ diff --git a/src/dh-assistant.ui b/src/dh-assistant.ui new file mode 100644 index 0000000..7803a4c --- /dev/null +++ b/src/dh-assistant.ui @@ -0,0 +1,16 @@ + + + + + diff --git a/src/dh-book-manager.c b/src/dh-book-manager.c new file mode 100644 index 0000000..c194175 --- /dev/null +++ b/src/dh-book-manager.c @@ -0,0 +1,962 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2004-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2012 Thomas Bechtold + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-book-manager.h" +#include "dh-book.h" +#include "dh-settings.h" +#include "dh-util.h" + +/** + * SECTION:dh-book-manager + * @Title: DhBookManager + * @Short_description: Aggregation of all #DhBook's + * + * #DhBookManager is a singleton class containing all the #DhBook's. + */ + +/* TODO: Re-architect DhBookManager and DhBook. + * + * DhBookManager and DhBook are not very flexible: + * 1. Whether a DhBook is enabled or disabled is hard-coded into the DhBook + * objects. It's bound to the "books-disabled" GSetting. + * + * 2. The list of directories where DhBookManager searches the books is more or + * less hard-coded inside DhBookManager (it's just configurable with XDG env + * variables, see the populate() function, it's documented in the README). It + * would be nice to have total control over which directories are searched, + * without duplicating them if two different "views" have a directory in common + * (especially not duplicating GFileMonitor's). + * + * Ideas: + * - Create a DhBookSelection class (or set of classes, with maybe an interface + * or base class), and remove the "enabled" property from DhBook. The + * books-disabled GSetting would be implemented by one implementation of + * DhBookSelection. A :book-selection property could be added to some classes, + * and if that property is NULL take the "default selection" (by default the + * one for the books-disabled GSetting). Another possible name: DhBookFilter + * (or have both). + * + * Have ::book-added and ::book-removed signals. A single ::changed signal is + * I think not appropriate: for example for DhBookTree, a full repopulate + * could be done when ::changed is emitted, but in that case DhBookTree would + * loose its selection. + * + * - Factor out a DhBookListDirectory class, finding and monitoring a list of + * books in one directory. The constructor would roughly be + * find_books_in_dir(). DhBookManager would just contain a list of + * DhBookListDirectory objects, ensuring that there are no duplicates. A list + * of DhBookListDirectory's could be added to a DhBookSelection, and it's + * DhBookSelection which applies priorities. So two different DhBookSelection + * objects could apply different priorities between the directories. + * Ensuring that a book ID is unique would be done by each DhBookListDirectory + * object, and also by DhBookSelection; which means that Devhelp would use + * more memory since some DhBooks would not be freed since they are contained + * in different DhBookListDirectory objects, but the index files anyway needed + * to be parsed to know the book ID, so it's not a big issue. + * + * Relevant bugzilla tickets: + * - https://bugzilla.gnome.org/show_bug.cgi?id=784491 + * "BookManager: allow custom search paths for documentation" + * + * For gnome-builder needs. + * + * - https://bugzilla.gnome.org/show_bug.cgi?id=792068 + * "Make it work with Flatpak" + * + * The directories probably need to be adjusted. + * + * - https://bugzilla.gnome.org/show_bug.cgi?id=761284 + * "Have the latest stable/unstable GNOME API references" + * + * The books can be downloaded in different directories, one directory for + * "GNOME stable" and another directory for "GNOME unstable" (or for specific + * versions). Switching between versions would just be a matter of changing + * the DhBookSelection. + * + * - https://bugzilla.gnome.org/show_bug.cgi?id=118423 + * "Individual bookshelfs" + * + * - https://bugzilla.gnome.org/show_bug.cgi?id=764441 + * "Implement language switching feature" + * + * Basically have the same book ID/name available for different programming + * languages. DhBookSelection could filter by programming language. Out of + * scope for now, because language switching is implemented in JavaScript for + * hot-doc, and gtk-doc doesn't support yet producing documentation for + * different programming languages. + */ + +#define NEW_POSSIBLE_BOOK_TIMEOUT_SECS 5 + +typedef struct { + DhBookManager *book_manager; /* unowned */ + GFile *book_directory; + guint timeout_id; +} NewPossibleBookData; + +typedef struct { + /* The list of all DhBooks* found in the system */ + GList *books; + + /* GFile* -> GFileMonitor* */ + GHashTable *monitors; + + /* List of NewPossibleBookData* */ + GSList *new_possible_books_data; + + /* List of book IDs (gchar*) currently disabled */ + GList *books_disabled; + + guint group_by_language : 1; +} DhBookManagerPrivate; + +enum { + SIGNAL_BOOK_CREATED, + SIGNAL_BOOK_DELETED, + SIGNAL_BOOK_ENABLED, + SIGNAL_BOOK_DISABLED, + N_SIGNALS +}; + +enum { + PROP_0, + PROP_GROUP_BY_LANGUAGE +}; + +static guint signals[N_SIGNALS] = { 0 }; + +static DhBookManager *singleton = NULL; + +G_DEFINE_TYPE_WITH_PRIVATE (DhBookManager, dh_book_manager, G_TYPE_OBJECT); + +static gboolean create_book_from_index_file (DhBookManager *book_manager, + GFile *index_file); + +static NewPossibleBookData * +new_possible_book_data_new (DhBookManager *book_manager, + GFile *book_directory) +{ + NewPossibleBookData *data; + + data = g_new0 (NewPossibleBookData, 1); + data->book_manager = book_manager; + data->book_directory = g_object_ref (book_directory); + + return data; +} + +static void +new_possible_book_data_free (gpointer _data) +{ + NewPossibleBookData *data = _data; + + if (data == NULL) + return; + + g_clear_object (&data->book_directory); + + if (data->timeout_id != 0) + g_source_remove (data->timeout_id); + + g_free (data); +} + +static void +dh_book_manager_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + DhBookManager *book_manager = DH_BOOK_MANAGER (object); + + switch (prop_id) + { + case PROP_GROUP_BY_LANGUAGE: + g_value_set_boolean (value, dh_book_manager_get_group_by_language (book_manager)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +dh_book_manager_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + DhBookManager *book_manager = DH_BOOK_MANAGER (object); + + switch (prop_id) + { + case PROP_GROUP_BY_LANGUAGE: + dh_book_manager_set_group_by_language (book_manager, g_value_get_boolean (value)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +dh_book_manager_dispose (GObject *object) +{ + DhBookManagerPrivate *priv; + + priv = dh_book_manager_get_instance_private (DH_BOOK_MANAGER (object)); + + g_list_free_full (priv->books, g_object_unref); + priv->books = NULL; + + if (priv->monitors != NULL) { + g_hash_table_destroy (priv->monitors); + priv->monitors = NULL; + } + + g_slist_free_full (priv->new_possible_books_data, new_possible_book_data_free); + priv->new_possible_books_data = NULL; + + G_OBJECT_CLASS (dh_book_manager_parent_class)->dispose (object); +} + +static void +dh_book_manager_finalize (GObject *object) +{ + DhBookManager *book_manager = DH_BOOK_MANAGER (object); + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + + g_list_free_full (priv->books_disabled, g_free); + + if (singleton == book_manager) + singleton = NULL; + + G_OBJECT_CLASS (dh_book_manager_parent_class)->finalize (object); +} + +static void +dh_book_manager_class_init (DhBookManagerClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->get_property = dh_book_manager_get_property; + object_class->set_property = dh_book_manager_set_property; + object_class->dispose = dh_book_manager_dispose; + object_class->finalize = dh_book_manager_finalize; + + /** + * DhBookManager::book-created: + * @book_manager: the #DhBookManager. + * @book: the created #DhBook. + */ + signals[SIGNAL_BOOK_CREATED] = + g_signal_new ("book-created", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 1, + DH_TYPE_BOOK); + + /** + * DhBookManager::book-deleted: + * @book_manager: the #DhBookManager. + * @book: the deleted #DhBook. + */ + signals[SIGNAL_BOOK_DELETED] = + g_signal_new ("book-deleted", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 1, + DH_TYPE_BOOK); + + /** + * DhBookManager::book-enabled: + * @book_manager: the #DhBookManager. + * @book: the enabled #DhBook. + */ + signals[SIGNAL_BOOK_ENABLED] = + g_signal_new ("book-enabled", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 1, + DH_TYPE_BOOK); + + /** + * DhBookManager::book-disabled: + * @book_manager: the #DhBookManager. + * @book: the disabled #DhBook. + */ + signals[SIGNAL_BOOK_DISABLED] = + g_signal_new ("book-disabled", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 1, + DH_TYPE_BOOK); + + /** + * DhBookManager:group-by-language: + * + * Whether books should be grouped by programming language. + */ + g_object_class_install_property (object_class, + PROP_GROUP_BY_LANGUAGE, + g_param_spec_boolean ("group-by-language", + "Group by language", + "", + FALSE, + G_PARAM_READWRITE | + G_PARAM_STATIC_STRINGS)); +} + +static void +load_books_disabled (DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + DhSettings *settings; + GSettings *contents_settings; + gchar **books_disabled_strv; + gint i; + + g_assert (priv->books_disabled == NULL); + + settings = dh_settings_get_singleton (); + contents_settings = dh_settings_peek_contents_settings (settings); + books_disabled_strv = g_settings_get_strv (contents_settings, "books-disabled"); + + if (books_disabled_strv == NULL) + return; + + for (i = 0; books_disabled_strv[i] != NULL; i++) { + gchar *book_id = books_disabled_strv[i]; + priv->books_disabled = g_list_prepend (priv->books_disabled, book_id); + } + + priv->books_disabled = g_list_reverse (priv->books_disabled); + + g_free (books_disabled_strv); +} + +static void +store_books_disabled (DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + DhSettings *settings; + GSettings *contents_settings; + GVariantBuilder *builder; + GVariant *variant; + GList *l; + + builder = g_variant_builder_new (G_VARIANT_TYPE_STRING_ARRAY); + + for (l = priv->books_disabled; l != NULL; l = l->next) { + const gchar *book_id = l->data; + g_variant_builder_add (builder, "s", book_id); + } + + variant = g_variant_builder_end (builder); + g_variant_builder_unref (builder); + + settings = dh_settings_get_singleton (); + contents_settings = dh_settings_peek_contents_settings (settings); + g_settings_set_value (contents_settings, "books-disabled", variant); +} + +static GList * +find_book_in_disabled_list (GList *books_disabled, + DhBook *book) +{ + const gchar *book_id; + GList *node; + + book_id = dh_book_get_id (book); + + for (node = books_disabled; node != NULL; node = node->next) { + const gchar *cur_book_id = node->data; + + if (g_strcmp0 (book_id, cur_book_id) == 0) + return node; + } + + return NULL; +} + +static gboolean +is_book_disabled_in_conf (DhBookManager *book_manager, + DhBook *book) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + + return find_book_in_disabled_list (priv->books_disabled, book) != NULL; +} + +static void +remove_book (DhBookManager *book_manager, + DhBook *book) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + GList *node; + + node = g_list_find (priv->books, book); + + if (node != NULL) { + g_signal_emit (book_manager, + signals[SIGNAL_BOOK_DELETED], + 0, + book); + + priv->books = g_list_delete_link (priv->books, node); + g_object_unref (book); + } +} + +static void +book_deleted_cb (DhBook *book, + DhBookManager *book_manager) +{ + remove_book (book_manager, book); +} + +static void +book_updated_cb (DhBook *book, + DhBookManager *book_manager) +{ + GFile *index_file; + + /* Re-create the DhBook to parse again the index file. */ + + index_file = dh_book_get_index_file (book); + g_object_ref (index_file); + + remove_book (book_manager, book); + + create_book_from_index_file (book_manager, index_file); + g_object_unref (index_file); +} + +static void +book_enabled_cb (DhBook *book, + DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + GList *node; + gchar *book_id; + + node = find_book_in_disabled_list (priv->books_disabled, book); + + /* When setting as enabled a given book, we should have it in the + * disabled books list! + */ + g_return_if_fail (node != NULL); + + book_id = node->data; + g_free (book_id); + priv->books_disabled = g_list_delete_link (priv->books_disabled, node); + + store_books_disabled (book_manager); + + g_signal_emit (book_manager, + signals[SIGNAL_BOOK_ENABLED], + 0, + book); +} + +static void +book_disabled_cb (DhBook *book, + DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + GList *node; + const gchar *book_id; + + node = find_book_in_disabled_list (priv->books_disabled, book); + + /* When setting as disabled a given book, we shouldn't have it in the + * disabled books list! + */ + g_return_if_fail (node == NULL); + + book_id = dh_book_get_id (book); + priv->books_disabled = g_list_append (priv->books_disabled, + g_strdup (book_id)); + store_books_disabled (book_manager); + + g_signal_emit (book_manager, + signals[SIGNAL_BOOK_DISABLED], + 0, + book); +} + +/* Returns TRUE if "successful", FALSE if the next possible index file in the + * book directory needs to be tried. + */ +static gboolean +create_book_from_index_file (DhBookManager *book_manager, + GFile *index_file) +{ + DhBookManagerPrivate *priv; + DhBook *book; + gboolean book_enabled; + GList *l; + + priv = dh_book_manager_get_instance_private (book_manager); + + /* Check if a DhBook at the same location has already been loaded. */ + for (l = priv->books; l != NULL; l = l->next) { + DhBook *cur_book = DH_BOOK (l->data); + GFile *cur_index_file; + + cur_index_file = dh_book_get_index_file (cur_book); + + if (g_file_equal (index_file, cur_index_file)) + return TRUE; + } + + book = dh_book_new (index_file); + if (book == NULL) + return FALSE; + + /* Check if book with same ID was already loaded in the manager (we need + * to force unique book IDs). + */ + if (g_list_find_custom (priv->books, + book, + (GCompareFunc)dh_book_cmp_by_id)) { + g_object_unref (book); + return TRUE; + } + + priv->books = g_list_insert_sorted (priv->books, + book, + (GCompareFunc)dh_book_cmp_by_title); + + book_enabled = !is_book_disabled_in_conf (book_manager, book); + dh_book_set_enabled (book, book_enabled); + + g_signal_connect_object (book, + "deleted", + G_CALLBACK (book_deleted_cb), + book_manager, + 0); + + g_signal_connect_object (book, + "updated", + G_CALLBACK (book_updated_cb), + book_manager, + 0); + + g_signal_connect_object (book, + "enabled", + G_CALLBACK (book_enabled_cb), + book_manager, + 0); + + g_signal_connect_object (book, + "disabled", + G_CALLBACK (book_disabled_cb), + book_manager, + 0); + + g_signal_emit (book_manager, + signals[SIGNAL_BOOK_CREATED], + 0, + book); + + return TRUE; +} + +static void +create_book_from_directory (DhBookManager *book_manager, + GFile *book_directory) +{ + GSList *possible_index_files; + GSList *l; + + possible_index_files = _dh_util_get_possible_index_files (book_directory); + + for (l = possible_index_files; l != NULL; l = l->next) { + GFile *index_file = G_FILE (l->data); + + if (create_book_from_index_file (book_manager, index_file)) + break; + } + + g_slist_free_full (possible_index_files, g_object_unref); +} + +static gboolean +new_possible_book_timeout_cb (gpointer user_data) +{ + NewPossibleBookData *data = user_data; + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (data->book_manager); + + data->timeout_id = 0; + + create_book_from_directory (data->book_manager, data->book_directory); + + priv->new_possible_books_data = g_slist_remove (priv->new_possible_books_data, data); + new_possible_book_data_free (data); + + return G_SOURCE_REMOVE; +} + +static void +books_directory_changed_cb (GFileMonitor *directory_monitor, + GFile *file, + GFile *other_file, + GFileMonitorEvent event_type, + DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + NewPossibleBookData *data; + + /* With the GFileMonitor here we only handle events for new directories + * created. Book deletions and updates are handled by the GFileMonitor + * in each DhBook object. + */ + if (event_type != G_FILE_MONITOR_EVENT_CREATED) + return; + + data = new_possible_book_data_new (book_manager, file); + + /* We add a timeout of several seconds so that we give time to the whole + * documentation to get installed. If we don't do this, we may end up + * trying to add the new book when even the *.devhelp2 index file is not + * installed yet. + */ + data->timeout_id = g_timeout_add_seconds (NEW_POSSIBLE_BOOK_TIMEOUT_SECS, + new_possible_book_timeout_cb, + data); + + priv->new_possible_books_data = g_slist_prepend (priv->new_possible_books_data, data); +} + +static void +monitor_books_directory (DhBookManager *book_manager, + GFile *books_directory) +{ + DhBookManagerPrivate *priv = dh_book_manager_get_instance_private (book_manager); + GFileMonitor *directory_monitor; + GError *error = NULL; + + /* If monitor already exists, do not re-create it. */ + if (priv->monitors != NULL && + g_hash_table_lookup (priv->monitors, books_directory) != NULL) { + return; + } + + directory_monitor = g_file_monitor_directory (books_directory, + G_FILE_MONITOR_NONE, + NULL, + &error); + + if (error != NULL) { + gchar *parse_name; + + parse_name = g_file_get_parse_name (books_directory); + + g_warning ("Failed to create file monitor on directory “%s”: %s", + parse_name, + error->message); + + g_free (parse_name); + g_clear_error (&error); + } + + if (directory_monitor != NULL) { + if (G_UNLIKELY (priv->monitors == NULL)) { + priv->monitors = g_hash_table_new_full (g_file_hash, + (GEqualFunc) g_file_equal, + g_object_unref, + g_object_unref); + } + + g_hash_table_insert (priv->monitors, + g_object_ref (books_directory), + directory_monitor); + + g_signal_connect_object (directory_monitor, + "changed", + G_CALLBACK (books_directory_changed_cb), + book_manager, + 0); + } +} + +static void +find_books_in_dir (DhBookManager *book_manager, + const gchar *dir_path) +{ + GFile *directory; + GFileEnumerator *enumerator; + GError *error = NULL; + + g_return_if_fail (dir_path != NULL); + + directory = g_file_new_for_path (dir_path); + + enumerator = g_file_enumerate_children (directory, + G_FILE_ATTRIBUTE_STANDARD_NAME, + G_FILE_QUERY_INFO_NONE, + NULL, + &error); + + if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) { + g_clear_error (&error); + goto out; + } + + if (error != NULL) { + g_warning ("Error when reading directory '%s': %s", + dir_path, + error->message); + g_clear_error (&error); + goto out; + } + + monitor_books_directory (book_manager, directory); + + while (TRUE) { + GFile *book_directory = NULL; + + g_file_enumerator_iterate (enumerator, NULL, &book_directory, NULL, &error); + + if (error != NULL) { + g_warning ("Error when enumerating directory '%s': %s", + dir_path, + error->message); + g_clear_error (&error); + break; + } + + if (book_directory == NULL) + break; + + create_book_from_directory (book_manager, book_directory); + } + +out: + g_object_unref (directory); + g_clear_object (&enumerator); +} + +static void +find_books_in_data_dir (DhBookManager *book_manager, + const gchar *data_dir) +{ + gchar *dir; + + g_return_if_fail (data_dir != NULL); + + dir = g_build_filename (data_dir, "gtk-doc", "html", NULL); + find_books_in_dir (book_manager, dir); + g_free (dir); + + dir = g_build_filename (data_dir, "devhelp", "books", NULL); + find_books_in_dir (book_manager, dir); + g_free (dir); +} + +static void +populate (DhBookManager *book_manager) +{ + const gchar * const *system_dirs; + gint i; + + find_books_in_data_dir (book_manager, g_get_user_data_dir ()); + + system_dirs = g_get_system_data_dirs (); + g_return_if_fail (system_dirs != NULL); + + for (i = 0; system_dirs[i] != NULL; i++) { + find_books_in_data_dir (book_manager, system_dirs[i]); + } + + /* For Flatpak, to see the books installed on the host by traditional + * Linux distro packages. + * + * It is not a good idea to add the directory to XDG_DATA_DIRS, see: + * https://github.com/flatpak/flatpak/issues/1299 + * "all sorts of things will break if we add all host config to each + * app, which is totally opposite to the entire point of flatpak." + * "i don't think XDG_DATA_DIRS is the right thing, because all sorts of + * libraries will start reading files from there, like dconf, dbus, + * service files, mimetypes, etc. It would be preferable to have + * something that targeted just gtk-doc files." + * + * So instead of adapting XDG_DATA_DIRS, add the directory here, with + * the path hard-coded. + * + * https://bugzilla.gnome.org/show_bug.cgi?id=792068 + */ +#ifdef FLATPAK_BUILD + find_books_in_data_dir (book_manager, "/run/host/usr/share"); +#endif +} + +static void +dh_book_manager_init (DhBookManager *book_manager) +{ + DhSettings *settings; + GSettings *contents_settings; + + load_books_disabled (book_manager); + + settings = dh_settings_get_singleton (); + contents_settings = dh_settings_peek_contents_settings (settings); + g_settings_bind (contents_settings, "group-books-by-language", + book_manager, "group-by-language", + G_SETTINGS_BIND_DEFAULT); + + populate (book_manager); +} + +/** + * dh_book_manager_new: + * + * Returns: (transfer full): the #DhBookManager singleton instance. You need to + * unref it when no longer needed. + * Deprecated: 3.26: Call dh_book_manager_get_singleton() instead. + */ +DhBookManager * +dh_book_manager_new (void) +{ + return g_object_ref (dh_book_manager_get_singleton ()); +} + +/** + * dh_book_manager_get_singleton: + * + * Returns: (transfer none): the #DhBookManager singleton instance. + * Since: 3.26 + */ +DhBookManager * +dh_book_manager_get_singleton (void) +{ + if (singleton == NULL) + singleton = g_object_new (DH_TYPE_BOOK_MANAGER, NULL); + + return singleton; +} + +void +_dh_book_manager_unref_singleton (void) +{ + if (singleton != NULL) + g_object_unref (singleton); + + /* singleton is not set to NULL here, it is set to NULL in + * dh_book_manager_finalize() (i.e. when we are sure that the ref count + * reaches 0). + */ +} + +/** + * dh_book_manager_populate: + * @book_manager: a #DhBookManager. + * + * Populates the #DhBookManager with all books found on the system and user + * directories. + * + * Deprecated: 3.26: The #DhBookManager is now automatically populated when the + * object is created, there is no need to call this function anymore. + */ +void +dh_book_manager_populate (DhBookManager *book_manager) +{ +} + +/** + * dh_book_manager_get_books: + * @book_manager: a #DhBookManager. + * + * Returns: (element-type DhBook) (transfer none): the list of all #DhBook's + * found. + */ +GList * +dh_book_manager_get_books (DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK_MANAGER (book_manager), NULL); + + priv = dh_book_manager_get_instance_private (book_manager); + + return priv->books; +} + +/** + * dh_book_manager_get_group_by_language: + * @book_manager: a #DhBookManager. + * + * Returns: whether the books should be grouped by programming language. + */ +gboolean +dh_book_manager_get_group_by_language (DhBookManager *book_manager) +{ + DhBookManagerPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK_MANAGER (book_manager), FALSE); + + priv = dh_book_manager_get_instance_private (book_manager); + + return priv->group_by_language; +} + +/** + * dh_book_manager_set_group_by_language: + * @book_manager: a #DhBookManager. + * @group_by_language: the new value. + * + * Sets whether the books should be grouped by programming language. + */ +void +dh_book_manager_set_group_by_language (DhBookManager *book_manager, + gboolean group_by_language) +{ + DhBookManagerPrivate *priv; + + g_return_if_fail (DH_IS_BOOK_MANAGER (book_manager)); + + priv = dh_book_manager_get_instance_private (book_manager); + + group_by_language = group_by_language != FALSE; + + if (priv->group_by_language != group_by_language) { + priv->group_by_language = group_by_language; + g_object_notify (G_OBJECT (book_manager), "group-by-language"); + } +} diff --git a/src/dh-book-manager.h b/src/dh-book-manager.h new file mode 100644 index 0000000..97e0d0d --- /dev/null +++ b/src/dh-book-manager.h @@ -0,0 +1,70 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_BOOK_MANAGER_H +#define DH_BOOK_MANAGER_H + +#include + +G_BEGIN_DECLS + +typedef struct _DhBookManager DhBookManager; +typedef struct _DhBookManagerClass DhBookManagerClass; + +#define DH_TYPE_BOOK_MANAGER (dh_book_manager_get_type ()) +#define DH_BOOK_MANAGER(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), DH_TYPE_BOOK_MANAGER, DhBookManager)) +#define DH_BOOK_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), DH_TYPE_BOOK_MANAGER, DhBookManagerClass)) +#define DH_IS_BOOK_MANAGER(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), DH_TYPE_BOOK_MANAGER)) +#define DH_IS_BOOK_MANAGER_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), DH_TYPE_BOOK_MANAGER)) +#define DH_BOOK_MANAGER_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), DH_TYPE_BOOK_MANAGER, DhBookManagerClass)) + +struct _DhBookManager { + GObject parent_instance; +}; + +struct _DhBookManagerClass { + GObjectClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_book_manager_get_type (void) G_GNUC_CONST; + +DhBookManager * dh_book_manager_get_singleton (void); + +GList * dh_book_manager_get_books (DhBookManager *book_manager); + +gboolean dh_book_manager_get_group_by_language (DhBookManager *book_manager); + +void dh_book_manager_set_group_by_language (DhBookManager *book_manager, + gboolean group_by_language); + +G_DEPRECATED +DhBookManager * dh_book_manager_new (void); + +G_DEPRECATED +void dh_book_manager_populate (DhBookManager *book_manager); + +G_GNUC_INTERNAL +void _dh_book_manager_unref_singleton (void); + +G_END_DECLS + +#endif /* DH_BOOK_MANAGER_H */ diff --git a/src/dh-book-tree.c b/src/dh-book-tree.c new file mode 100644 index 0000000..e97fe28 --- /dev/null +++ b/src/dh-book-tree.c @@ -0,0 +1,957 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2003 Mikael Hallendal + * Copyright (C) 2003 CodeFactory AB + * Copyright (C) 2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2015, 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-book-tree.h" +#include +#include "dh-book-manager.h" +#include "dh-book.h" + +/** + * SECTION:dh-book-tree + * @Title: DhBookTree + * @Short_description: A #GtkTreeView containing the tree structure of all + * enabled #DhBook's + * + * #DhBookTree is a #GtkTreeView (showing a tree, not a list) containing the + * general tree structure of all enabled #DhBook's. + * + * The dh_book_get_tree() function is called to get the tree structure of a + * #DhBook. As such the tree contains only #DhLink's of type %DH_LINK_TYPE_BOOK + * or %DH_LINK_TYPE_PAGE. + * + * When an element is selected, the #DhBookTree::link-selected signal is + * emitted. Only one element can be selected at a time. + */ + +typedef struct { + const gchar *uri; + GtkTreeIter iter; + GtkTreePath *path; + guint found : 1; +} FindURIData; + +typedef struct { + GtkTreeStore *store; + DhLink *selected_link; + GtkMenu *context_menu; +} DhBookTreePrivate; + +enum { + LINK_SELECTED, + N_SIGNALS +}; + +enum { + COL_TITLE, + COL_LINK, + COL_BOOK, + COL_WEIGHT, + COL_UNDERLINE, + N_COLUMNS +}; + +G_DEFINE_TYPE_WITH_PRIVATE (DhBookTree, dh_book_tree, GTK_TYPE_TREE_VIEW); + +static guint signals[N_SIGNALS] = { 0 }; + +static void +book_tree_selection_changed_cb (GtkTreeSelection *selection, + DhBookTree *tree) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + GtkTreeIter iter; + + if (gtk_tree_selection_get_selected (selection, NULL, &iter)) { + DhLink *link; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->store), + &iter, + COL_LINK, &link, + -1); + + if (link != NULL && + link != priv->selected_link) { + g_clear_pointer (&priv->selected_link, (GDestroyNotify)dh_link_unref); + priv->selected_link = dh_link_ref (link); + g_signal_emit (tree, signals[LINK_SELECTED], 0, link); + } + + if (link != NULL) + dh_link_unref (link); + } +} + +static void +book_tree_setup_selection (DhBookTree *tree) +{ + GtkTreeSelection *selection; + + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree)); + + gtk_tree_selection_set_mode (selection, GTK_SELECTION_BROWSE); + + g_signal_connect_object (selection, + "changed", + G_CALLBACK (book_tree_selection_changed_cb), + tree, + 0); +} + +/* Tries to find: + * - An exact match of the language group + * - Or the language group which should be just after our given language group. + * - Or both. + * + * FIXME: not great code. Maybe add a new column in the GtkTreeModel storing a + * DhLanguage object. Instead of @language as a string, it would be a + * DhLanguage. + */ +static void +book_tree_find_language_group (DhBookTree *tree, + const gchar *language, + GtkTreeIter *exact_iter, + gboolean *exact_found, + GtkTreeIter *next_iter, + gboolean *next_found) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + DhBookManager *book_manager; + GtkTreeIter loop_iter; + + g_assert ((exact_iter != NULL && exact_found != NULL) || + (next_iter != NULL && next_found != NULL)); + + /* Reset all flags to not found */ + if (exact_found != NULL) + *exact_found = FALSE; + if (next_found != NULL) + *next_found = FALSE; + + /* If we're not doing language grouping, return not found */ + book_manager = dh_book_manager_get_singleton (); + if (!dh_book_manager_get_group_by_language (book_manager)) + return; + + if (!gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->store), + &loop_iter)) { + /* Store is empty, not found */ + return; + } + + do { + gchar *title = NULL; + DhLink *link; + + /* Look for language titles, which are those where there + * is no book object associated in the row */ + gtk_tree_model_get (GTK_TREE_MODEL (priv->store), + &loop_iter, + COL_TITLE, &title, + COL_LINK, &link, + -1); + + if (link != NULL) { + /* Not a language */ + g_free (title); + dh_link_unref (link); + g_return_if_reached (); + } + + if (exact_iter != NULL && + g_ascii_strcasecmp (title, language) == 0) { + /* Exact match found! */ + *exact_iter = loop_iter; + *exact_found = TRUE; + if (next_iter == NULL) { + /* If we were not requested to look for the next one, end here */ + g_free (title); + return; + } + } else if (next_iter != NULL && + g_ascii_strcasecmp (title, language) > 0) { + *next_iter = loop_iter; + *next_found = TRUE; + /* There's no way to have an exact match after the next, so end here */ + g_free (title); + return; + } + + g_free (title); + } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->store), + &loop_iter)); +} + +/* Tries to find, starting at 'first' (if given), and always in the same + * level of the tree: + * - An exact match of the book + * - Or the book which should be just after our given book + * - Or both. + */ +static void +book_tree_find_book (DhBookTree *tree, + DhBook *book, + const GtkTreeIter *first, + GtkTreeIter *exact_iter, + gboolean *exact_found, + GtkTreeIter *next_iter, + gboolean *next_found) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + GtkTreeIter loop_iter; + + g_assert ((exact_iter != NULL && exact_found != NULL) || + (next_iter != NULL && next_found != NULL)); + + /* Reset all flags to not found */ + if (exact_found != NULL) + *exact_found = FALSE; + if (next_found != NULL) + *next_found = FALSE; + + /* Setup iteration start */ + if (first == NULL) { + /* If no first given, start iterating from the start of the model */ + if (!gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->store), + &loop_iter)) { + /* Store is empty, not found */ + return; + } + } else { + loop_iter = *first; + } + + do { + DhBook *in_tree_book = NULL; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->store), + &loop_iter, + COL_BOOK, &in_tree_book, + -1); + + g_return_if_fail (DH_IS_BOOK (in_tree_book)); + + /* We can compare pointers directly as we're playing with references + * of the same object */ + if (exact_iter != NULL && + in_tree_book == book) { + *exact_iter = loop_iter; + *exact_found = TRUE; + if (next_iter == NULL) { + /* If we were not requested to look for the next one, end here */ + g_object_unref (in_tree_book); + return; + } + } else if (next_iter != NULL && + dh_book_cmp_by_title (in_tree_book, book) > 0) { + *next_iter = loop_iter; + *next_found = TRUE; + g_object_unref (in_tree_book); + return; + } + + g_object_unref (in_tree_book); + } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->store), + &loop_iter)); +} + +static void +book_tree_insert_node (DhBookTree *tree, + GNode *node, + GtkTreeIter *current_iter, + DhBook *book) + +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + DhLink *link; + PangoWeight weight; + GNode *child; + + link = node->data; + g_assert (link != NULL); + + if (dh_link_get_link_type (link) == DH_LINK_TYPE_BOOK) { + weight = PANGO_WEIGHT_BOLD; + } else { + weight = PANGO_WEIGHT_NORMAL; + } + + gtk_tree_store_set (priv->store, + current_iter, + COL_TITLE, dh_link_get_name (link), + COL_LINK, link, + COL_BOOK, book, + COL_WEIGHT, weight, + COL_UNDERLINE, PANGO_UNDERLINE_NONE, + -1); + + for (child = g_node_first_child (node); + child != NULL; + child = g_node_next_sibling (child)) { + GtkTreeIter iter; + + /* Append new iter */ + gtk_tree_store_append (priv->store, &iter, current_iter); + book_tree_insert_node (tree, child, &iter, NULL); + } +} + +static void +book_tree_add_book_to_store (DhBookTree *tree, + DhBook *book) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + DhBookManager *book_manager; + GtkTreeIter book_iter; + + /* If grouping by language we need to add the language categories */ + book_manager = dh_book_manager_get_singleton (); + if (dh_book_manager_get_group_by_language (book_manager)) { + GtkTreeIter language_iter; + gboolean language_iter_found; + GtkTreeIter next_language_iter; + gboolean next_language_iter_found; + const gchar *language_title; + gboolean new_language = FALSE; + + language_title = dh_book_get_language (book); + + /* Look for the proper language group */ + book_tree_find_language_group (tree, + language_title, + &language_iter, + &language_iter_found, + &next_language_iter, + &next_language_iter_found); + /* New language group needs to be created? */ + if (!language_iter_found) { + if (!next_language_iter_found) { + gtk_tree_store_append (priv->store, + &language_iter, + NULL); + } else { + gtk_tree_store_insert_before (priv->store, + &language_iter, + NULL, + &next_language_iter); + } + + gtk_tree_store_set (priv->store, + &language_iter, + COL_TITLE, language_title, + COL_LINK, NULL, + COL_BOOK, NULL, + COL_WEIGHT, PANGO_WEIGHT_BOLD, + COL_UNDERLINE, PANGO_UNDERLINE_SINGLE, + -1); + + new_language = TRUE; + } + + /* If we got to add first book in a given language group, just append it. */ + if (new_language) { + GtkTreePath *path; + + gtk_tree_store_append (priv->store, + &book_iter, + &language_iter); + + /* Make sure we start with the language row expanded */ + path = gtk_tree_model_get_path (GTK_TREE_MODEL (priv->store), + &language_iter); + gtk_tree_view_expand_row (GTK_TREE_VIEW (tree), + path, + FALSE); + gtk_tree_path_free (path); + } else { + GtkTreeIter first_book_iter; + GtkTreeIter next_book_iter; + gboolean next_book_iter_found; + + /* The language will have at least one book, so we move iter to it */ + gtk_tree_model_iter_children (GTK_TREE_MODEL (priv->store), + &first_book_iter, + &language_iter); + + /* Find next possible book in language group */ + book_tree_find_book (tree, + book, + &first_book_iter, + NULL, + NULL, + &next_book_iter, + &next_book_iter_found); + + if (!next_book_iter_found) { + gtk_tree_store_append (priv->store, + &book_iter, + &language_iter); + } else { + gtk_tree_store_insert_before (priv->store, + &book_iter, + &language_iter, + &next_book_iter); + } + } + } else { + /* No language grouping, just order by book title */ + GtkTreeIter next_book_iter; + gboolean next_book_iter_found; + + book_tree_find_book (tree, + book, + NULL, + NULL, + NULL, + &next_book_iter, + &next_book_iter_found); + + if (!next_book_iter_found) { + gtk_tree_store_append (priv->store, + &book_iter, + NULL); + } else { + gtk_tree_store_insert_before (priv->store, + &book_iter, + NULL, + &next_book_iter); + } + } + + /* Now book_iter contains the proper iterator where we'll add the whole + * book tree. */ + book_tree_insert_node (tree, + dh_book_get_tree (book), + &book_iter, + book); +} + +static void +book_tree_book_created_or_enabled_cb (DhBookManager *book_manager, + DhBook *book, + DhBookTree *tree) +{ + if (!dh_book_get_enabled (book)) + return; + + book_tree_add_book_to_store (tree, book); +} + +static void +book_tree_book_deleted_or_disabled_cb (DhBookManager *book_manager, + DhBook *book, + DhBookTree *tree) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + GtkTreeIter exact_iter; + gboolean exact_iter_found = FALSE; + GtkTreeIter language_iter; + gboolean language_iter_found = FALSE; + + if (dh_book_manager_get_group_by_language (book_manager)) { + GtkTreeIter first_book_iter; + + book_tree_find_language_group (tree, + dh_book_get_language (book), + &language_iter, + &language_iter_found, + NULL, + NULL); + + if (language_iter_found && + gtk_tree_model_iter_children (GTK_TREE_MODEL (priv->store), + &first_book_iter, + &language_iter)) { + book_tree_find_book (tree, + book, + &first_book_iter, + &exact_iter, + &exact_iter_found, + NULL, + NULL); + } + } else { + book_tree_find_book (tree, + book, + NULL, + &exact_iter, + &exact_iter_found, + NULL, + NULL); + } + + if (exact_iter_found) { + /* Remove the book from the tree */ + gtk_tree_store_remove (priv->store, &exact_iter); + /* If this book was inside a language group, check if the group + * is now empty and so removable */ + if (language_iter_found) { + GtkTreeIter first_book_iter; + + if (!gtk_tree_model_iter_children (GTK_TREE_MODEL (priv->store), + &first_book_iter, + &language_iter)) { + /* Oh, well, no more books in this language... remove! */ + gtk_tree_store_remove (priv->store, &language_iter); + } + } + } +} + +static void +book_tree_init_selection (DhBookTree *tree) +{ + DhBookTreePrivate *priv; + DhBookManager *book_manager; + GtkTreeSelection *selection; + GtkTreeIter iter; + gboolean iter_found = FALSE; + + priv = dh_book_tree_get_instance_private (tree); + + /* Mark the first item as selected, or it would get automatically + * selected when the treeview will get focus; but that's not even + * enough as a selection changed would still be emitted when there + * is no change, hence the manual tracking of selection in + * selected_link. + * https://bugzilla.gnome.org/show_bug.cgi?id=492206 + */ + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree)); + g_signal_handlers_block_by_func (selection, + book_tree_selection_changed_cb, + tree); + + /* If grouping by languages, get first book in the first language */ + book_manager = dh_book_manager_get_singleton (); + if (dh_book_manager_get_group_by_language (book_manager)) { + GtkTreeIter language_iter; + + if (gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->store), + &language_iter)) { + iter_found = gtk_tree_model_iter_children (GTK_TREE_MODEL (priv->store), + &iter, + &language_iter); + } + } else { + iter_found = gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->store), + &iter); + } + + if (iter_found) { + DhLink *link; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->store), + &iter, + COL_LINK, &link, + -1); + + g_clear_pointer (&priv->selected_link, (GDestroyNotify)dh_link_unref); + priv->selected_link = link; + gtk_tree_selection_select_iter (selection, &iter); + + if (dh_link_get_link_type (link) != DH_LINK_TYPE_BOOK) + g_warn_if_reached (); + } + + g_signal_handlers_unblock_by_func (selection, + book_tree_selection_changed_cb, + tree); +} + +static void +book_tree_populate_tree (DhBookTree *tree) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + DhBookManager *book_manager; + GList *l; + + gtk_tree_view_set_model (GTK_TREE_VIEW (tree), NULL); + gtk_tree_store_clear (priv->store); + gtk_tree_view_set_model (GTK_TREE_VIEW (tree), + GTK_TREE_MODEL (priv->store)); + + /* This list comes in order, but we don't really mind */ + book_manager = dh_book_manager_get_singleton (); + for (l = dh_book_manager_get_books (book_manager); + l != NULL; + l = l->next) { + DhBook *book = DH_BOOK (l->data); + + /* Only add enabled books to the tree */ + if (dh_book_get_enabled (book)) + book_tree_add_book_to_store (tree, book); + } + + book_tree_init_selection (tree); +} + +static void +book_tree_group_by_language_cb (GObject *object, + GParamSpec *pspec, + DhBookTree *tree) +{ + book_tree_populate_tree (tree); +} + +static void +dh_book_tree_dispose (GObject *object) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (DH_BOOK_TREE (object)); + + g_clear_object (&priv->store); + g_clear_pointer (&priv->selected_link, (GDestroyNotify)dh_link_unref); + priv->context_menu = NULL; + + G_OBJECT_CLASS (dh_book_tree_parent_class)->dispose (object); +} + +static void +collapse_all_activate_cb (GtkMenuItem *menu_item, + DhBookTree *tree) +{ + gtk_tree_view_collapse_all (GTK_TREE_VIEW (tree)); +} + +static void +do_popup_menu (DhBookTree *tree, + GdkEventButton *event) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + + if (priv->context_menu == NULL) { + GtkWidget *menu_item; + + /* Create the menu only once. At first I wanted to create a new + * menu each time this function is called, connect to the + * GtkMenuShell::deactivate signal to call gtk_widget_destroy(). + * But GtkMenuShell::deactivate is emitted before + * collapse_all_activate_cb(), so collapse_all_activate_cb() was + * never called... It's maybe a GTK+ bug. + */ + priv->context_menu = GTK_MENU (gtk_menu_new ()); + + /* When tree is destroyed, the context menu is destroyed too. */ + gtk_menu_attach_to_widget (priv->context_menu, GTK_WIDGET (tree), NULL); + + menu_item = gtk_menu_item_new_with_mnemonic (_("_Collapse All")); + gtk_menu_shell_append (GTK_MENU_SHELL (priv->context_menu), menu_item); + gtk_widget_show (menu_item); + + g_signal_connect_object (menu_item, + "activate", + G_CALLBACK (collapse_all_activate_cb), + tree, + 0); + } + + if (event != NULL) { + gtk_menu_popup_at_pointer (priv->context_menu, (GdkEvent *) event); + } else { + gtk_menu_popup_at_widget (priv->context_menu, + GTK_WIDGET (tree), + GDK_GRAVITY_NORTH_EAST, + GDK_GRAVITY_NORTH_WEST, + NULL); + } +} + +static gboolean +dh_book_tree_button_press_event (GtkWidget *widget, + GdkEventButton *event) +{ + DhBookTree *tree = DH_BOOK_TREE (widget); + + if (gdk_event_triggers_context_menu ((GdkEvent *) event) && + event->type == GDK_BUTTON_PRESS) { + do_popup_menu (tree, event); + return GDK_EVENT_STOP; + } + + if (GTK_WIDGET_CLASS (dh_book_tree_parent_class)->button_press_event != NULL) + return GTK_WIDGET_CLASS (dh_book_tree_parent_class)->button_press_event (widget, event); + + return GDK_EVENT_PROPAGATE; +} + +static gboolean +dh_book_tree_popup_menu (GtkWidget *widget) +{ + if (GTK_WIDGET_CLASS (dh_book_tree_parent_class)->popup_menu != NULL) + g_warning ("%s(): chain-up?", G_STRFUNC); + + do_popup_menu (DH_BOOK_TREE (widget), NULL); + return TRUE; +} + +static void +dh_book_tree_class_init (DhBookTreeClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + + object_class->dispose = dh_book_tree_dispose; + + widget_class->button_press_event = dh_book_tree_button_press_event; + widget_class->popup_menu = dh_book_tree_popup_menu; + + /** + * DhBookTree::link-selected: + * @tree: the #DhBookTree. + * @link: the selected #DhLink. + */ + signals[LINK_SELECTED] = + g_signal_new ("link-selected", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 1, DH_TYPE_LINK); +} + +static void +book_tree_add_columns (DhBookTree *tree) +{ + GtkCellRenderer *cell; + GtkTreeViewColumn *column; + + column = gtk_tree_view_column_new (); + + cell = gtk_cell_renderer_text_new (); + g_object_set (cell, + "ellipsize", PANGO_ELLIPSIZE_END, + NULL); + gtk_tree_view_column_pack_start (column, cell, TRUE); + gtk_tree_view_column_set_attributes (column, cell, + "text", COL_TITLE, + "weight", COL_WEIGHT, + "underline", COL_UNDERLINE, + NULL); + + gtk_tree_view_append_column (GTK_TREE_VIEW (tree), column); +} + +static void +dh_book_tree_init (DhBookTree *tree) +{ + DhBookTreePrivate *priv; + DhBookManager *book_manager; + + priv = dh_book_tree_get_instance_private (tree); + + gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (tree), FALSE); + gtk_tree_view_set_enable_search (GTK_TREE_VIEW (tree), FALSE); + + priv->store = gtk_tree_store_new (N_COLUMNS, + G_TYPE_STRING, /* Title */ + DH_TYPE_LINK, + DH_TYPE_BOOK, + PANGO_TYPE_WEIGHT, + PANGO_TYPE_UNDERLINE); + priv->selected_link = NULL; + gtk_tree_view_set_model (GTK_TREE_VIEW (tree), + GTK_TREE_MODEL (priv->store)); + + book_tree_add_columns (tree); + book_tree_setup_selection (tree); + + book_manager = dh_book_manager_get_singleton (); + + g_signal_connect_object (book_manager, + "book-created", + G_CALLBACK (book_tree_book_created_or_enabled_cb), + tree, + 0); + + g_signal_connect_object (book_manager, + "book-enabled", + G_CALLBACK (book_tree_book_created_or_enabled_cb), + tree, + 0); + + g_signal_connect_object (book_manager, + "book-deleted", + G_CALLBACK (book_tree_book_deleted_or_disabled_cb), + tree, + 0); + + g_signal_connect_object (book_manager, + "book-disabled", + G_CALLBACK (book_tree_book_deleted_or_disabled_cb), + tree, + 0); + + g_signal_connect_object (book_manager, + "notify::group-by-language", + G_CALLBACK (book_tree_group_by_language_cb), + tree, + 0); + + book_tree_populate_tree (tree); +} + +/** + * dh_book_tree_new: + * + * Returns: (transfer floating): a new #DhBookTree widget. + */ +DhBookTree * +dh_book_tree_new (void) +{ + return g_object_new (DH_TYPE_BOOK_TREE, NULL); +} + +static gboolean +book_tree_find_uri_foreach (GtkTreeModel *model, + GtkTreePath *path, + GtkTreeIter *iter, + FindURIData *data) +{ + DhLink *link; + + gtk_tree_model_get (model, iter, + COL_LINK, &link, + -1); + + if (link != NULL) { + gchar *link_uri; + + link_uri = dh_link_get_uri (link); + + if (link_uri != NULL && + g_str_has_prefix (data->uri, link_uri)) { + data->found = TRUE; + data->iter = *iter; + data->path = gtk_tree_path_copy (path); + } + + g_free (link_uri); + dh_link_unref (link); + } + + return data->found; +} + +/** + * dh_book_tree_select_uri: + * @tree: a #DhBookTree. + * @uri: the URI to select. + * + * Selects the given @uri. + */ +void +dh_book_tree_select_uri (DhBookTree *tree, + const gchar *uri) +{ + DhBookTreePrivate *priv = dh_book_tree_get_instance_private (tree); + GtkTreeSelection *selection; + FindURIData data; + DhLink *link; + + data.found = FALSE; + data.uri = uri; + + gtk_tree_model_foreach (GTK_TREE_MODEL (priv->store), + (GtkTreeModelForeachFunc) book_tree_find_uri_foreach, + &data); + + if (!data.found) + return; + + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree)); + + /* Do not re-select (which will expand current additionally) if already + * there. */ + if (gtk_tree_selection_iter_is_selected (selection, &data.iter)) + goto out; + + /* FIXME: it's strange to block the signal here. The signal handler + * should probably be blocked in DhWindow instead. + */ + g_signal_handlers_block_by_func (selection, + book_tree_selection_changed_cb, + tree); + + gtk_tree_view_expand_to_path (GTK_TREE_VIEW (tree), data.path); + + gtk_tree_model_get (GTK_TREE_MODEL (priv->store), + &data.iter, + COL_LINK, &link, + -1); + g_clear_pointer (&priv->selected_link, (GDestroyNotify)dh_link_unref); + priv->selected_link = link; + gtk_tree_selection_select_iter (selection, &data.iter); + + gtk_tree_view_set_cursor (GTK_TREE_VIEW (tree), data.path, NULL, 0); + + g_signal_handlers_unblock_by_func (selection, + book_tree_selection_changed_cb, + tree); + +out: + gtk_tree_path_free (data.path); +} + +/** + * dh_book_tree_get_selected_book: + * @tree: a #DhBookTree. + * + * Returns: (nullable) (transfer full): the #DhLink of the selected book, or + * %NULL if there is no selection. Unref with dh_link_unref() when no longer + * needed. + */ +DhLink * +dh_book_tree_get_selected_book (DhBookTree *tree) +{ + GtkTreeSelection *selection; + GtkTreeModel *model; + GtkTreeIter iter; + + selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (tree)); + if (!gtk_tree_selection_get_selected (selection, &model, &iter)) + return NULL; + + /* Depending on whether books are grouped by language, the book link can + * be at a different depth. And it's safer to check that the returned + * link has the good type. So walk up the tree to find the book. + */ + while (TRUE) { + DhLink *link; + GtkTreeIter parent; + + gtk_tree_model_get (model, &iter, + COL_LINK, &link, + -1); + + if (dh_link_get_link_type (link) == DH_LINK_TYPE_BOOK) + return link; + + dh_link_unref (link); + + if (!gtk_tree_model_iter_parent (model, &parent, &iter)) + break; + + iter = parent; + } + + g_return_val_if_reached (NULL); +} diff --git a/src/dh-book-tree.h b/src/dh-book-tree.h new file mode 100644 index 0000000..2399547 --- /dev/null +++ b/src/dh-book-tree.h @@ -0,0 +1,58 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001 Mikael Hallendal + * + * 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, see . + */ + +#ifndef DH_BOOK_TREE_H +#define DH_BOOK_TREE_H + +#include +#include "dh-link.h" + +G_BEGIN_DECLS + +#define DH_TYPE_BOOK_TREE (dh_book_tree_get_type ()) +#define DH_BOOK_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_BOOK_TREE, DhBookTree)) +#define DH_BOOK_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_BOOK_TREE, DhBookTreeClass)) +#define DH_IS_BOOK_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_BOOK_TREE)) +#define DH_IS_BOOK_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), DH_TYPE_BOOK_TREE)) + +typedef struct _DhBookTree DhBookTree; +typedef struct _DhBookTreeClass DhBookTreeClass; + +struct _DhBookTree { + GtkTreeView parent_instance; +}; + +struct _DhBookTreeClass { + GtkTreeViewClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_book_tree_get_type (void) G_GNUC_CONST; + +DhBookTree * dh_book_tree_new (void); + +void dh_book_tree_select_uri (DhBookTree *tree, + const gchar *uri); + +DhLink * dh_book_tree_get_selected_book (DhBookTree *tree); + +G_END_DECLS + +#endif /* DH_BOOK_TREE_H */ diff --git a/src/dh-book.c b/src/dh-book.c new file mode 100644 index 0000000..864f887 --- /dev/null +++ b/src/dh-book.c @@ -0,0 +1,656 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2004-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-book.h" +#include +#include "dh-link.h" +#include "dh-parser.h" +#include "dh-util.h" + +/** + * SECTION:dh-book + * @Title: DhBook + * @Short_description: A book, usually the documentation for one library + * + * A #DhBook usually contains the documentation for one library (or + * application), for example GLib or GTK+. A #DhBook corresponds to one index + * file. An index file is a file with the extension `*.devhelp`, `*.devhelp2`, + * `*.devhelp.gz` or `*.devhelp2.gz`. + * + * #DhBook creates a #GFileMonitor on the index file, and emits the + * #DhBook::updated or #DhBook::deleted signal in case the index file has + * changed on the filesystem. #DhBookManager listens to those #DhBook signals, + * and emits in turn the #DhBookManager::book-deleted and + * #DhBookManager::book-created signals. + */ + +/* Timeout to wait for new events on the index file so that they are merged and + * we don't spam unneeded signals. + */ +#define EVENT_MERGE_TIMEOUT_SECS (2) + +enum { + /* FIXME: a boolean property would be a better API instead of the + * ::enabled and ::disabled signals. Or this whole concept can be + * removed from DhBook, by introducing DhBookSelection, see: + * https://bugzilla.gnome.org/show_bug.cgi?id=784491#c3 + */ + SIGNAL_ENABLED, + SIGNAL_DISABLED, + + SIGNAL_UPDATED, + SIGNAL_DELETED, + N_SIGNALS +}; + +typedef enum { + BOOK_MONITOR_EVENT_NONE, + BOOK_MONITOR_EVENT_UPDATED, + BOOK_MONITOR_EVENT_DELETED +} BookMonitorEvent; + +typedef struct { + GFile *index_file; + + gchar *id; + gchar *title; + gchar *language; + + /* The book tree of DhLink*. */ + GNode *tree; + + /* List of DhLink*. */ + GList *links; + + DhCompletion *completion; + + GFileMonitor *index_file_monitor; + BookMonitorEvent last_monitor_event; + guint monitor_event_timeout_id; + + guint enabled : 1; +} DhBookPrivate; + +G_DEFINE_TYPE_WITH_PRIVATE (DhBook, dh_book, G_TYPE_OBJECT); + +static guint signals[N_SIGNALS] = { 0 }; + +static void +dh_book_dispose (GObject *object) +{ + DhBookPrivate *priv; + + priv = dh_book_get_instance_private (DH_BOOK (object)); + + g_clear_object (&priv->completion); + g_clear_object (&priv->index_file_monitor); + + if (priv->monitor_event_timeout_id != 0) { + g_source_remove (priv->monitor_event_timeout_id); + priv->monitor_event_timeout_id = 0; + } + + G_OBJECT_CLASS (dh_book_parent_class)->dispose (object); +} + +static void +dh_book_finalize (GObject *object) +{ + DhBookPrivate *priv; + + priv = dh_book_get_instance_private (DH_BOOK (object)); + + g_clear_object (&priv->index_file); + g_free (priv->id); + g_free (priv->title); + g_free (priv->language); + _dh_util_free_book_tree (priv->tree); + g_list_free_full (priv->links, (GDestroyNotify)dh_link_unref); + + G_OBJECT_CLASS (dh_book_parent_class)->finalize (object); +} + +static void +dh_book_class_init (DhBookClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->dispose = dh_book_dispose; + object_class->finalize = dh_book_finalize; + + /** + * DhBook::enabled: + * @book: the #DhBook emitting the signal. + */ + signals[SIGNAL_ENABLED] = + g_signal_new ("enabled", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 0); + + /** + * DhBook::disabled: + * @book: the #DhBook emitting the signal. + */ + signals[SIGNAL_DISABLED] = + g_signal_new ("disabled", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 0); + + /** + * DhBook::updated: + * @book: the #DhBook emitting the signal. + * + * The ::updated signal is emitted when the index file has been + * modified (but the file still exists). + */ + signals[SIGNAL_UPDATED] = + g_signal_new ("updated", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 0); + + /** + * DhBook::deleted: + * @book: the #DhBook emitting the signal. + * + * The ::deleted signal is emitted when the index file has been deleted + * from the filesystem. + */ + signals[SIGNAL_DELETED] = + g_signal_new ("deleted", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + 0, + NULL, NULL, NULL, + G_TYPE_NONE, + 0); +} + +static void +dh_book_init (DhBook *book) +{ + DhBookPrivate *priv = dh_book_get_instance_private (book); + + priv->enabled = TRUE; + priv->last_monitor_event = BOOK_MONITOR_EVENT_NONE; +} + +static gboolean +monitor_event_timeout_cb (gpointer data) +{ + DhBook *book = DH_BOOK (data); + DhBookPrivate *priv = dh_book_get_instance_private (book); + BookMonitorEvent last_monitor_event = priv->last_monitor_event; + + /* Reset event */ + priv->last_monitor_event = BOOK_MONITOR_EVENT_NONE; + priv->monitor_event_timeout_id = 0; + + /* We'll get either is_deleted OR is_updated, not possible to have both + * or none. + */ + switch (last_monitor_event) + { + case BOOK_MONITOR_EVENT_DELETED: + /* Emit the signal, but make sure we hold a reference while + * doing it. + */ + g_object_ref (book); + g_signal_emit (book, signals[SIGNAL_DELETED], 0); + g_object_unref (book); + break; + + case BOOK_MONITOR_EVENT_UPDATED: + /* Emit the signal, but make sure we hold a reference while + * doing it. + */ + g_object_ref (book); + g_signal_emit (book, signals[SIGNAL_UPDATED], 0); + g_object_unref (book); + break; + + case BOOK_MONITOR_EVENT_NONE: + default: + break; + } + + /* book can be destroyed here. */ + + return G_SOURCE_REMOVE; +} + +static void +index_file_changed_cb (GFileMonitor *file_monitor, + GFile *file, + GFile *other_file, + GFileMonitorEvent event_type, + DhBook *book) +{ + DhBookPrivate *priv = dh_book_get_instance_private (book); + gboolean reset_timeout = FALSE; + + /* CREATED may happen if the file is deleted and then created right + * away, as we're merging events. + */ + if (event_type == G_FILE_MONITOR_EVENT_CHANGED || + event_type == G_FILE_MONITOR_EVENT_CREATED) { + priv->last_monitor_event = BOOK_MONITOR_EVENT_UPDATED; + reset_timeout = TRUE; + } else if (event_type == G_FILE_MONITOR_EVENT_DELETED) { + priv->last_monitor_event = BOOK_MONITOR_EVENT_DELETED; + reset_timeout = TRUE; + } + + if (reset_timeout) { + if (priv->monitor_event_timeout_id != 0) + g_source_remove (priv->monitor_event_timeout_id); + + priv->monitor_event_timeout_id = g_timeout_add_seconds (EVENT_MERGE_TIMEOUT_SECS, + monitor_event_timeout_cb, + book); + } +} + +/** + * dh_book_new: + * @index_file: the index file. + * + * Returns: (nullable): a new #DhBook object, or %NULL if parsing the index file + * failed. + */ +DhBook * +dh_book_new (GFile *index_file) +{ + DhBookPrivate *priv; + DhBook *book; + gchar *language = NULL; + GError *error = NULL; + + g_return_val_if_fail (G_IS_FILE (index_file), NULL); + + book = g_object_new (DH_TYPE_BOOK, NULL); + priv = dh_book_get_instance_private (book); + + priv->index_file = g_object_ref (index_file); + + /* Parse file storing contents in the book struct. */ + if (!dh_parser_read_file (priv->index_file, + &priv->title, + &priv->id, + &language, + &priv->tree, + &priv->links, + &error)) { + /* It's fine if the file doesn't exist, as DhBookManager tries + * to create a DhBook for each possible index file in a certain + * book directory. + */ + if (error != NULL && + !g_error_matches (error, G_IO_ERROR, G_IO_ERROR_NOT_FOUND)) { + gchar *parse_name; + + parse_name = g_file_get_parse_name (priv->index_file); + + g_warning ("Failed to read “%s”: %s", + parse_name, + error->message); + + g_free (parse_name); + } + + g_clear_error (&error); + + /* Deallocate the book, as we are not going to add it in the + * manager. + */ + g_object_unref (book); + return NULL; + } + + /* Rewrite language, if any, including the prefix we want to use when + * seeing it, to standarize how the language group is shown. + * FIXME: maybe instead of a string, have a DhLanguage object which + * canonicalizes the string. + */ + dh_util_ascii_strtitle (language); + priv->language = (language != NULL ? + g_strdup_printf (_("Language: %s"), language) : + g_strdup (_("Language: Undefined"))); + g_free (language); + + /* Setup monitor for changes */ + + priv->index_file_monitor = g_file_monitor_file (priv->index_file, + G_FILE_MONITOR_NONE, + NULL, + &error); + + if (error != NULL) { + gchar *parse_name; + + parse_name = g_file_get_parse_name (priv->index_file); + + g_warning ("Failed to create file monitor for file “%s”: %s", + parse_name, + error->message); + + g_free (parse_name); + g_clear_error (&error); + } + + if (priv->index_file_monitor != NULL) { + g_signal_connect_object (priv->index_file_monitor, + "changed", + G_CALLBACK (index_file_changed_cb), + book, + 0); + } + + return book; +} + +/** + * dh_book_get_index_file: + * @book: a #DhBook. + * + * Returns: (transfer none): the index file. + */ +GFile * +dh_book_get_index_file (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->index_file; +} + +/** + * dh_book_get_id: + * @book: a #DhBook. + * + * Gets the book ID. In the Devhelp index file format version 2, it is actually + * the “name”, not the ID, but “book ID” is clearer, “book name” can be confused + * with the title. + * + * Returns: the book ID. + */ +const gchar * +dh_book_get_id (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->id; +} + +/** + * dh_book_get_title: + * @book: a #DhBook. + * + * Returns: the book title. + */ +const gchar * +dh_book_get_title (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->title; +} + +/** + * dh_book_get_language: + * @book: a #DhBook. + * + * Returns: the programming language used in @book. + */ +const gchar * +dh_book_get_language (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->language; +} + +/** + * dh_book_get_links: + * @book: a #DhBook. + * + * Returns: (element-type DhLink) (transfer none) (nullable): the list of + * all #DhLink's part of @book, or %NULL if the book is + * disabled. + */ +GList * +dh_book_get_links (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->enabled ? priv->links : NULL; +} + +/** + * dh_book_get_tree: + * @book: a #DhBook. + * + * Gets the general structure of the book, as a tree. The tree contains only + * #DhLink's of type %DH_LINK_TYPE_BOOK or %DH_LINK_TYPE_PAGE. The other + * #DhLink's are not contained in the tree. To have a list of + * all #DhLink's part of the book, you need to call + * dh_book_get_links(). + * + * Returns: (transfer none) (nullable): the tree of #DhLink's part of the @book, + * or %NULL if the book is disabled. + */ +GNode * +dh_book_get_tree (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + return priv->enabled ? priv->tree : NULL; +} + +/** + * dh_book_get_completion: + * @book: a #DhBook. + * + * Returns: (transfer none): the #DhCompletion of @book. + * Since: 3.28 + */ +DhCompletion * +dh_book_get_completion (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), NULL); + + priv = dh_book_get_instance_private (book); + + if (priv->completion == NULL) { + GList *l; + + priv->completion = dh_completion_new (); + + for (l = priv->links; l != NULL; l = l->next) { + DhLink *link = l->data; + const gchar *str; + + /* Do not provide completion for book titles. Normally + * the user doesn't need it, it's more convenient to + * choose a book with the DhBookTree. + */ + if (dh_link_get_link_type (link) == DH_LINK_TYPE_BOOK) + continue; + + str = dh_link_get_name (link); + dh_completion_add_string (priv->completion, str); + } + + dh_completion_sort (priv->completion); + } + + return priv->completion; +} + +/** + * dh_book_get_enabled: + * @book: a #DhBook. + * + * Returns: whether the book is enabled. + */ +gboolean +dh_book_get_enabled (DhBook *book) +{ + DhBookPrivate *priv; + + g_return_val_if_fail (DH_IS_BOOK (book), FALSE); + + priv = dh_book_get_instance_private (book); + + return priv->enabled; +} + +/** + * dh_book_set_enabled: + * @book: a #DhBook. + * @enabled: the new value. + * + * Enables or disables the book. + */ +void +dh_book_set_enabled (DhBook *book, + gboolean enabled) +{ + DhBookPrivate *priv; + + g_return_if_fail (DH_IS_BOOK (book)); + + priv = dh_book_get_instance_private (book); + + enabled = enabled != FALSE; + + /* Create DhCompletion, because if all the DhCompletion objects need to + * be created (synchronously) at the time of the first completion, it + * can make the GUI not responsive (measured time was for example 40ms + * to create the DhCompletion's for 17 books, which is not a lot of + * books). On application startup it is less a problem. + */ + if (enabled) + dh_book_get_completion (book); + + if (priv->enabled != enabled) { + priv->enabled = enabled; + g_signal_emit (book, + enabled ? signals[SIGNAL_ENABLED] : signals[SIGNAL_DISABLED], + 0); + } +} + +/** + * dh_book_cmp_by_id: + * @a: a #DhBook. + * @b: a #DhBook. + * + * Compares the #DhBook's by their IDs, with g_ascii_strcasecmp(). + * + * Returns: an integer less than, equal to, or greater than zero, if @a is <, == + * or > than @b. + */ +gint +dh_book_cmp_by_id (DhBook *a, + DhBook *b) +{ + DhBookPrivate *priv_a; + DhBookPrivate *priv_b; + + if (a == NULL || b == NULL) + return -1; + + priv_a = dh_book_get_instance_private (a); + priv_b = dh_book_get_instance_private (b); + + if (priv_a->id == NULL || priv_b->id == NULL) + return -1; + + return g_ascii_strcasecmp (priv_a->id, priv_b->id); +} + +/** + * dh_book_cmp_by_title: + * @a: a #DhBook. + * @b: a #DhBook. + * + * Compares the #DhBook's by their title. + * + * Returns: an integer less than, equal to, or greater than zero, if @a is <, == + * or > than @b. + */ +gint +dh_book_cmp_by_title (DhBook *a, + DhBook *b) +{ + DhBookPrivate *priv_a; + DhBookPrivate *priv_b; + + if (a == NULL || b == NULL) + return -1; + + priv_a = dh_book_get_instance_private (a); + priv_b = dh_book_get_instance_private (b); + + if (priv_a->title == NULL || priv_b->title == NULL) + return -1; + + return g_utf8_collate (priv_a->title, priv_b->title); +} diff --git a/src/dh-book.h b/src/dh-book.h new file mode 100644 index 0000000..4149f88 --- /dev/null +++ b/src/dh-book.h @@ -0,0 +1,83 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2005-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_BOOK_H +#define DH_BOOK_H + +#include +#include "dh-completion.h" + +G_BEGIN_DECLS + +typedef struct _DhBook DhBook; +typedef struct _DhBookClass DhBookClass; + +#define DH_TYPE_BOOK (dh_book_get_type ()) +#define DH_BOOK(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), DH_TYPE_BOOK, DhBook)) +#define DH_BOOK_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), DH_TYPE_BOOK, DhBookClass)) +#define DH_IS_BOOK(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), DH_TYPE_BOOK)) +#define DH_IS_BOOK_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), DH_TYPE_BOOK)) +#define DH_BOOK_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), DH_TYPE_BOOK, DhBookClass)) + +struct _DhBook { + GObject parent_instance; +}; + +struct _DhBookClass { + GObjectClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_book_get_type (void) G_GNUC_CONST; + +DhBook * dh_book_new (GFile *index_file); + +GFile * dh_book_get_index_file (DhBook *book); + +const gchar *dh_book_get_id (DhBook *book); + +const gchar *dh_book_get_title (DhBook *book); + +const gchar *dh_book_get_language (DhBook *book); + +GList * dh_book_get_links (DhBook *book); + +GNode * dh_book_get_tree (DhBook *book); + +DhCompletion *dh_book_get_completion (DhBook *book); + +gboolean dh_book_get_enabled (DhBook *book); + +void dh_book_set_enabled (DhBook *book, + gboolean enabled); + +gint dh_book_cmp_by_id (DhBook *a, + DhBook *b); + +gint dh_book_cmp_by_title (DhBook *a, + DhBook *b); + +G_END_DECLS + +#endif /* DH_BOOK_H */ diff --git a/src/dh-completion.c b/src/dh-completion.c new file mode 100644 index 0000000..523a8f4 --- /dev/null +++ b/src/dh-completion.c @@ -0,0 +1,382 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-completion.h" +#include + +/** + * SECTION:dh-completion + * @Title: DhCompletion + * @Short_description: Support for automatic string completion + * + * #DhCompletion is a basic replacement for #GCompletion. #GCompletion (part of + * GLib) is deprecated, and doesn't use a great data structure (a simple + * #GList). #DhCompletion uses a #GSequence instead, so once the data is sorted + * it should be faster. #DhCompletion works only with UTF-8 strings, and copies + * the strings. + * + * #DhCompletion is add-only, strings cannot be removed. But with + * dh_completion_aggregate_complete(), a #DhCompletion object can be removed + * from the list. + */ + +struct _DhCompletionPrivate { + /* Element types: gchar*, owned. */ + GSequence *sequence; +}; + +typedef struct { + const gchar *prefix; + gsize prefix_bytes_length; + gchar *longest_prefix; +} CompletionData; + +G_DEFINE_TYPE_WITH_PRIVATE (DhCompletion, dh_completion, G_TYPE_OBJECT) + +static gint +compare_func (gconstpointer a, + gconstpointer b, + gpointer user_data) +{ + const gchar *str_a = a; + const gchar *str_b = b; + + /* We rely on the fact that if str_a is not equal to str_b but one is + * the prefix of the other, the shorter string is sorted before the + * longer one (i.e. the shorter string is "less than" the longer + * string). See do_complete(). + */ + + return g_strcmp0 (str_a, str_b); +} + +static void +completion_data_init (CompletionData *data, + const gchar *prefix) +{ + data->prefix = prefix; + data->prefix_bytes_length = strlen (prefix); + data->longest_prefix = NULL; +} + +static void +dh_completion_finalize (GObject *object) +{ + DhCompletion *completion = DH_COMPLETION (object); + + g_sequence_free (completion->priv->sequence); + + G_OBJECT_CLASS (dh_completion_parent_class)->finalize (object); +} + +static void +dh_completion_class_init (DhCompletionClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->finalize = dh_completion_finalize; +} + +static void +dh_completion_init (DhCompletion *completion) +{ + completion->priv = dh_completion_get_instance_private (completion); + + completion->priv->sequence = g_sequence_new (g_free); +} + +/** + * dh_completion_new: + * + * Returns: a new #DhCompletion object. + * Since: 3.28 + */ +DhCompletion * +dh_completion_new (void) +{ + return g_object_new (DH_TYPE_COMPLETION, NULL); +} + +/** + * dh_completion_add_string: + * @completion: a #DhCompletion. + * @str: a string. + * + * Adds a string to the @completion object. + * + * After adding all the strings you need to call dh_completion_sort(). + * + * Since: 3.28 + */ +void +dh_completion_add_string (DhCompletion *completion, + const gchar *str) +{ + g_return_if_fail (DH_IS_COMPLETION (completion)); + g_return_if_fail (str != NULL); + + g_sequence_append (completion->priv->sequence, g_strdup (str)); +} + +/** + * dh_completion_sort: + * @completion: a #DhCompletion. + * + * Sorts all the strings. It is required to call this function after adding + * strings with dh_completion_add_string(). + * + * Since: 3.28 + */ +void +dh_completion_sort (DhCompletion *completion) +{ + g_return_if_fail (DH_IS_COMPLETION (completion)); + + g_sequence_sort (completion->priv->sequence, + compare_func, + NULL); +} + +static gboolean +bytes_equal (const gchar *str1_start_pos, + const gchar *str1_end_pos, + const gchar *str2_start_pos, + const gchar *str2_end_pos) +{ + const gchar *str1_pos; + const gchar *str2_pos; + + for (str1_pos = str1_start_pos, str2_pos = str2_start_pos; + str1_pos < str1_end_pos && str2_pos < str2_end_pos; + str1_pos++, str2_pos++) { + if (*str1_pos != *str2_pos) + return FALSE; + } + + return str1_pos == str1_end_pos && str2_pos == str2_end_pos; +} + +/* cur_str must have data->prefix as prefix. */ +static void +adjust_longest_prefix (CompletionData *data, + const gchar *cur_str) +{ + const gchar *cur_str_pos; + gchar *longest_prefix_pos; + + /* Skip the first bytes, they are equal. */ + cur_str_pos = cur_str + data->prefix_bytes_length; + longest_prefix_pos = data->longest_prefix + data->prefix_bytes_length; + + while (*cur_str_pos != '\0' && *longest_prefix_pos != '\0') { + const gchar *cur_str_next_pos; + gchar *longest_prefix_next_pos; + + cur_str_next_pos = g_utf8_find_next_char (cur_str_pos, NULL); + longest_prefix_next_pos = g_utf8_find_next_char (longest_prefix_pos, NULL); + + if (!bytes_equal (cur_str_pos, cur_str_next_pos, + longest_prefix_pos, longest_prefix_next_pos)) { + break; + } + + cur_str_pos = cur_str_next_pos; + longest_prefix_pos = longest_prefix_next_pos; + } + + if (*longest_prefix_pos != '\0') { + /* Shrink data->longest_prefix. */ + *longest_prefix_pos = '\0'; + } +} + +/* Returns TRUE to continue the iteration. + * cur_str must have data->prefix as prefix. + */ +static gboolean +next_completion_iteration (CompletionData *data, + const gchar *cur_str) +{ + if (cur_str == NULL) + return TRUE; + + if (data->longest_prefix == NULL) { + data->longest_prefix = g_strdup (cur_str); + /* After this point, data->longest_prefix can only shrink. */ + } else { + adjust_longest_prefix (data, cur_str); + } + + /* Back to data->prefix, stop the iteration, the longest_prefix can no + * longer shrink. + */ + if (g_str_equal (data->longest_prefix, data->prefix)) { + g_free (data->longest_prefix); + data->longest_prefix = NULL; + return FALSE; + } + + return TRUE; +} + +/* Like dh_completion_complete() but with @found_string_with_prefix in + * addition, to differentiate two different cases when %NULL is returned. + * + * Another implementation solution: instead of returning (NULL + + * found_string_with_prefix=TRUE), return a string equal to @prefix. But it + * would be harder to document (because it's less explicit) and less convenient + * to use as a public API (I think for a public API we don't want as a return + * value a string equal to @prefix). + */ +static gchar * +do_complete (DhCompletion *completion, + const gchar *prefix, + gboolean *found_string_with_prefix) +{ + GSequenceIter *iter; + CompletionData data; + + if (found_string_with_prefix != NULL) + *found_string_with_prefix = FALSE; + + g_return_val_if_fail (DH_IS_COMPLETION (completion), NULL); + g_return_val_if_fail (prefix != NULL, NULL); + + iter = g_sequence_search (completion->priv->sequence, + (gpointer) prefix, + compare_func, + NULL); + + /* There can be an exact match just *before* iter, since compare_func + * returns 0 in that case. + */ + if (!g_sequence_iter_is_begin (iter)) { + GSequenceIter *prev_iter; + const gchar *prev_str; + + prev_iter = g_sequence_iter_prev (iter); + prev_str = g_sequence_get (prev_iter); + + /* If there is an exact match, the prefix can not be completed. */ + if (g_str_equal (prev_str, prefix)) { + if (found_string_with_prefix != NULL) + *found_string_with_prefix = TRUE; + return NULL; + } + } + + completion_data_init (&data, prefix); + + /* All the other strings in the GSequence that have @prefix as prefix + * will be *after* iter, see the comment in compare_func(). + */ + while (!g_sequence_iter_is_end (iter)) { + const gchar *cur_str = g_sequence_get (iter); + + if (!g_str_has_prefix (cur_str, prefix)) + break; + + if (found_string_with_prefix != NULL) + *found_string_with_prefix = TRUE; + + if (!next_completion_iteration (&data, cur_str)) + break; + + iter = g_sequence_iter_next (iter); + } + + return data.longest_prefix; +} + +/** + * dh_completion_complete: + * @completion: a #DhCompletion. + * @prefix: the string to complete. + * + * This function does the equivalent of: + * 1. Searches the data structure of @completion to find all strings that have + * @prefix as prefix. + * 2. From the list found at step 1, find the longest prefix that still matches + * all the strings in the list. + * + * This function assumes that @prefix and the strings contained in @completion + * are in UTF-8. If all the strings are valid UTF-8, then the return value will + * also be valid UTF-8 (it won't return a partial multi-byte character). + * + * Returns: (transfer full) (nullable): the completed prefix, or %NULL if a + * longer prefix has not been found. Free with g_free() when no longer needed. + * Since: 3.28 + */ +gchar * +dh_completion_complete (DhCompletion *completion, + const gchar *prefix) +{ + return do_complete (completion, prefix, NULL); +} + +/** + * dh_completion_aggregate_complete: + * @completion_objects: (element-type DhCompletion) (nullable): a #GList of + * #DhCompletion objects. + * @prefix: the string to complete. + * + * The same as dh_completion_complete(), but aggregated for several + * #DhCompletion objects. + * + * Returns: (transfer full) (nullable): the completed prefix, or %NULL if a + * longer prefix has not been found. Free with g_free() when no longer needed. + * Since: 3.28 + */ +gchar * +dh_completion_aggregate_complete (GList *completion_objects, + const gchar *prefix) +{ + CompletionData data; + GList *l; + + g_return_val_if_fail (prefix != NULL, NULL); + + completion_data_init (&data, prefix); + + for (l = completion_objects; l != NULL; l = l->next) { + DhCompletion *cur_completion = DH_COMPLETION (l->data); + gchar *cur_longest_prefix; + gboolean found_string_with_prefix; + + cur_longest_prefix = do_complete (cur_completion, + prefix, + &found_string_with_prefix); + + if (cur_longest_prefix == NULL && found_string_with_prefix) { + /* Stop the completion, it is not possible to complete + * @prefix. + */ + g_free (data.longest_prefix); + return NULL; + } + + if (!next_completion_iteration (&data, cur_longest_prefix)) { + g_free (cur_longest_prefix); + break; + } + + g_free (cur_longest_prefix); + } + + return data.longest_prefix; +} diff --git a/src/dh-completion.h b/src/dh-completion.h new file mode 100644 index 0000000..27c0ddf --- /dev/null +++ b/src/dh-completion.h @@ -0,0 +1,67 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_COMPLETION_H +#define DH_COMPLETION_H + +#include + +G_BEGIN_DECLS + +#define DH_TYPE_COMPLETION (dh_completion_get_type ()) +#define DH_COMPLETION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_COMPLETION, DhCompletion)) +#define DH_COMPLETION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_COMPLETION, DhCompletionClass)) +#define DH_IS_COMPLETION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_COMPLETION)) +#define DH_IS_COMPLETION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_COMPLETION)) +#define DH_COMPLETION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_COMPLETION, DhCompletionClass)) + +typedef struct _DhCompletion DhCompletion; +typedef struct _DhCompletionClass DhCompletionClass; +typedef struct _DhCompletionPrivate DhCompletionPrivate; + +struct _DhCompletion { + GObject parent; + + DhCompletionPrivate *priv; +}; + +struct _DhCompletionClass { + GObjectClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_completion_get_type (void); + +DhCompletion * dh_completion_new (void); + +void dh_completion_add_string (DhCompletion *completion, + const gchar *str); + +void dh_completion_sort (DhCompletion *completion); + +gchar * dh_completion_complete (DhCompletion *completion, + const gchar *prefix); + +gchar * dh_completion_aggregate_complete (GList *completion_objects, + const gchar *prefix); + +G_END_DECLS + +#endif /* DH_COMPLETION_H */ diff --git a/src/dh-enum-types.c.template b/src/dh-enum-types.c.template new file mode 100644 index 0000000..1b5957e --- /dev/null +++ b/src/dh-enum-types.c.template @@ -0,0 +1,39 @@ +/*** BEGIN file-header ***/ +#include "dh-enum-types.h" + +/*** END file-header ***/ + +/*** BEGIN file-production ***/ +/* enumerations from "@filename@" */ +#include "@filename@" + +/*** END file-production ***/ + +/*** BEGIN value-header ***/ +GType +@enum_name@_get_type (void) +{ + static GType the_type = 0; + + if (the_type == 0) + { + static const G@Type@Value values[] = { +/*** END value-header ***/ + +/*** BEGIN value-production ***/ + { @VALUENAME@, + "@VALUENAME@", + "@valuenick@" }, +/*** END value-production ***/ + +/*** BEGIN value-tail ***/ + { 0, NULL, NULL } + }; + the_type = g_@type@_register_static ( + g_intern_static_string ("@EnumName@"), + values); + } + return the_type; +} + +/*** END value-tail ***/ diff --git a/src/dh-enum-types.h.template b/src/dh-enum-types.h.template new file mode 100644 index 0000000..40f6245 --- /dev/null +++ b/src/dh-enum-types.h.template @@ -0,0 +1,27 @@ +/*** BEGIN file-header ***/ +#ifndef DH_ENUM_TYPES_H +#define DH_ENUM_TYPES_H + +#include + +G_BEGIN_DECLS + +/*** END file-header ***/ + +/*** BEGIN file-production ***/ +/* Enumerations from "@filename@" */ + +/*** END file-production ***/ + +/*** BEGIN enumeration-production ***/ +#define DH_TYPE_@ENUMSHORT@ (@enum_name@_get_type()) +GType @enum_name@_get_type (void) G_GNUC_CONST; + +/*** END enumeration-production ***/ + +/*** BEGIN file-tail ***/ +G_END_DECLS + +#endif /* DH_ENUM_TYPES_H */ +/*** END file-tail ***/ + diff --git a/src/dh-error.c b/src/dh-error.c new file mode 100644 index 0000000..a3191b6 --- /dev/null +++ b/src/dh-error.c @@ -0,0 +1,33 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * + * 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, see . + */ + +#include "config.h" +#include "dh-error.h" + +GQuark +dh_error_quark (void) +{ + static GQuark q = 0; + + if (q == 0) { + q = g_quark_from_static_string ("devhelp-error-quark"); + } + + return q; +} diff --git a/src/dh-error.h b/src/dh-error.h new file mode 100644 index 0000000..924a225 --- /dev/null +++ b/src/dh-error.h @@ -0,0 +1,37 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * + * 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, see . + */ + +#ifndef DH_ERROR_H +#define DH_ERROR_H + +#include + +G_BEGIN_DECLS + +#define DH_ERROR dh_error_quark () + +typedef enum { + DH_ERROR_MALFORMED_BOOK +} DhError; + +GQuark dh_error_quark (void) G_GNUC_CONST; + +G_END_DECLS + +#endif /* DH_ERROR_H */ diff --git a/src/dh-init.c b/src/dh-init.c new file mode 100644 index 0000000..57ee8a7 --- /dev/null +++ b/src/dh-init.c @@ -0,0 +1,86 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2012 Aleksander Morgado + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-init.h" +#include +#include "dh-book-manager.h" +#include "dh-settings.h" + +/** + * dh_init: + * + * Initializes the Devhelp library (e.g. for the internationalization). + * + * This function can be called several times, but is meant to be called at the + * beginning of main(), before any other Devhelp function call. + */ +void +dh_init (void) +{ + static gboolean done = FALSE; + + if (!done) { + bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR); + bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8"); + done = TRUE; + } +} + +/** + * dh_finalize: + * + * Free the resources allocated by Devhelp. For example it unrefs the singleton + * objects. + * + * It is not mandatory to call this function, it's just to be friendlier to + * memory debugging tools. This function is meant to be called at the end of + * main(). It can be called several times. + * + * Since: 3.26 + */ + +/* Another way is to use a DSO destructor, see gconstructor.h in GLib. + * + * The advantage of calling dh_finalize() at the end of main() is that + * gobject-list [1] correctly reports that all Dh* objects have been finalized + * when quitting the application. On the other hand a DSO destructor runs after + * the gobject-list's last output, so it's much less convenient, see: + * https://git.gnome.org/browse/gtksourceview/commit/?id=e761de9c2bee90c232875bbc41e6e73e1f63e145 + * + * [1] A tool for debugging the lifetime of GObjects: + * https://github.com/danni/gobject-list + */ +void +dh_finalize (void) +{ + static gboolean done = FALSE; + + /* Unref the singletons only once, even if this function is called + * multiple times, to see if a reference is not released correctly. + * Normally the singletons have a ref count of 1. If for some reason the + * ref count is increased somewhere, it needs to be decreased + * accordingly, at the right place. + */ + if (!done) { + _dh_book_manager_unref_singleton (); + _dh_settings_unref_singleton (); + done = TRUE; + } +} diff --git a/src/dh-init.h b/src/dh-init.h new file mode 100644 index 0000000..6b91bb1 --- /dev/null +++ b/src/dh-init.h @@ -0,0 +1,31 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_INIT_H +#define DH_INIT_H + +#include + +G_BEGIN_DECLS + +void dh_init (void); +void dh_finalize (void); + +G_END_DECLS + +#endif /* DH_INIT_H */ diff --git a/src/dh-keyword-model.c b/src/dh-keyword-model.c new file mode 100644 index 0000000..a0b716f --- /dev/null +++ b/src/dh-keyword-model.c @@ -0,0 +1,736 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2015-2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-keyword-model.h" +#include +#include "dh-book.h" +#include "dh-book-manager.h" +#include "dh-search-context.h" +#include "dh-util.h" + +/** + * SECTION:dh-keyword-model + * @Title: DhKeywordModel + * @Short_description: A custom #GtkTreeModel implementation for searching + * #DhLink's + * + * #DhKeywordModel is a custom #GtkTreeModel implementation (as a list, not a + * tree) for searching #DhLink's. + * + * The dh_keyword_model_filter() function is used to set the search criteria. It + * fills the #GtkTreeModel with the list of #DhLink's that match the search + * criteria (up to a certain maximum number of matches). + * + * How the search works (for end users) is explained in the user documentation + * of the Devhelp application. + * + * # Filter by book and page + * + * As a kind of API for integrating Devhelp with other applications, the search + * string supports additional features. Those features are not intended to be + * used directly by end users when typing the search string in the GUI, because + * it's not really convenient. It is intended to be used with the + * `devhelp --search "search-string"` command line, so that another application + * can launch Devhelp and set a specific search string. + * + * It is possible to filter by book by prefixing the search string with + * “book:the-book-ID”. For example “book:gtk3”. If there are no other search + * terms, it shows the top-level page of that book. If there are other search + * terms, it limits the search to the specified book. See also the + * dh_book_get_id() function (in the `*.devhelp2` index file format it's called + * the book “name”, not ID, but ID is clearer). + * + * Similarly, it is possible to filter by page, by prefixing the search string + * with “page:the-page-ID”. For example “page:GtkWindow”. If there are no other + * search terms, the top of the page is shown and the search matches all the + * symbols part of that page. If there are other search terms, it limits the + * search to the specified page. To know what is the “page ID”, see the + * dh_link_belongs_to_page() function. + * + * “book:” and “page:” can be combined. Normal search terms must be + * after “book:” and “page:”. + * + * The book and page IDs – even if they contain an uppercase letter – don't + * affect the case sensitivity for the other search terms. + */ + +typedef struct { + gchar *current_book_id; + + /* List of owned DhLink*. + * + * Note: GQueue, not GQueue* so we are sure that it always exists, we + * don't need to check if priv->links == NULL. + */ + GQueue links; + + gint stamp; +} DhKeywordModelPrivate; + +typedef struct { + DhSearchContext *search_context; + const gchar *book_id; + const gchar *skip_book_id; + guint prefix : 1; +} SearchSettings; + +#define MAX_HITS 1000 + +static void dh_keyword_model_tree_model_init (GtkTreeModelIface *iface); + +G_DEFINE_TYPE_WITH_CODE (DhKeywordModel, dh_keyword_model, G_TYPE_OBJECT, + G_ADD_PRIVATE (DhKeywordModel) + G_IMPLEMENT_INTERFACE (GTK_TYPE_TREE_MODEL, + dh_keyword_model_tree_model_init)); + +static void +clear_links (DhKeywordModel *model) +{ + DhKeywordModelPrivate *priv = dh_keyword_model_get_instance_private (model); + GList *l; + + for (l = priv->links.head; l != NULL; l = l->next) { + DhLink *cur_link = l->data; + dh_link_unref (cur_link); + } + + g_queue_clear (&priv->links); +} + +static void +dh_keyword_model_finalize (GObject *object) +{ + DhKeywordModel *model = DH_KEYWORD_MODEL (object); + DhKeywordModelPrivate *priv = dh_keyword_model_get_instance_private (model); + + g_free (priv->current_book_id); + clear_links (model); + + G_OBJECT_CLASS (dh_keyword_model_parent_class)->finalize (object); +} + +static void +dh_keyword_model_class_init (DhKeywordModelClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->finalize = dh_keyword_model_finalize; +} + +static void +dh_keyword_model_init (DhKeywordModel *model) +{ + DhKeywordModelPrivate *priv = dh_keyword_model_get_instance_private (model); + + priv->stamp = g_random_int_range (1, G_MAXINT32); +} + +static GtkTreeModelFlags +dh_keyword_model_get_flags (GtkTreeModel *tree_model) +{ + return GTK_TREE_MODEL_LIST_ONLY; +} + +static gint +dh_keyword_model_get_n_columns (GtkTreeModel *tree_model) +{ + return DH_KEYWORD_MODEL_NUM_COLS; +} + +static GType +dh_keyword_model_get_column_type (GtkTreeModel *tree_model, + gint column) +{ + switch (column) { + case DH_KEYWORD_MODEL_COL_NAME: + return G_TYPE_STRING; + + case DH_KEYWORD_MODEL_COL_LINK: + return DH_TYPE_LINK; + + case DH_KEYWORD_MODEL_COL_CURRENT_BOOK_FLAG: + return G_TYPE_BOOLEAN; + + default: + return G_TYPE_INVALID; + } +} + +static gboolean +dh_keyword_model_get_iter (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreePath *path) +{ + DhKeywordModelPrivate *priv; + const gint *indices; + GList *node; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + if (gtk_tree_path_get_depth (path) > 1) { + return FALSE; + } + + indices = gtk_tree_path_get_indices (path); + + if (indices == NULL) { + return FALSE; + } + + node = g_queue_peek_nth_link (&priv->links, indices[0]); + + if (node != NULL) { + iter->stamp = priv->stamp; + iter->user_data = node; + return TRUE; + } + + return FALSE; +} + +static GtkTreePath * +dh_keyword_model_get_path (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + DhKeywordModelPrivate *priv; + GList *node; + GtkTreePath *path; + gint pos; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + g_return_val_if_fail (iter->stamp == priv->stamp, NULL); + + node = iter->user_data; + pos = g_queue_link_index (&priv->links, node); + + if (pos < 0) { + return NULL; + } + + path = gtk_tree_path_new (); + gtk_tree_path_append_index (path, pos); + + return path; +} + +static void +dh_keyword_model_get_value (GtkTreeModel *tree_model, + GtkTreeIter *iter, + gint column, + GValue *value) +{ + DhKeywordModelPrivate *priv; + GList *node; + DhLink *link; + gboolean in_current_book; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + g_return_if_fail (iter->stamp == priv->stamp); + + node = iter->user_data; + link = node->data; + + switch (column) { + case DH_KEYWORD_MODEL_COL_NAME: + g_value_init (value, G_TYPE_STRING); + g_value_set_string (value, dh_link_get_name (link)); + break; + + case DH_KEYWORD_MODEL_COL_LINK: + g_value_init (value, DH_TYPE_LINK); + g_value_set_boxed (value, link); + break; + + case DH_KEYWORD_MODEL_COL_CURRENT_BOOK_FLAG: + in_current_book = g_strcmp0 (dh_link_get_book_id (link), priv->current_book_id) == 0; + g_value_init (value, G_TYPE_BOOLEAN); + g_value_set_boolean (value, in_current_book); + break; + + default: + g_warning ("Bad column %d requested", column); + } +} + +static gboolean +dh_keyword_model_iter_next (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + DhKeywordModelPrivate *priv; + GList *node; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + g_return_val_if_fail (priv->stamp == iter->stamp, FALSE); + + node = iter->user_data; + iter->user_data = node->next; + + return iter->user_data != NULL; +} + +static gboolean +dh_keyword_model_iter_children (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent) +{ + DhKeywordModelPrivate *priv; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + /* This is a list, nodes have no children. */ + if (parent != NULL) { + return FALSE; + } + + /* But if parent == NULL we return the list itself as children of + * the "root". + */ + if (priv->links.head != NULL) { + iter->stamp = priv->stamp; + iter->user_data = priv->links.head; + return TRUE; + } + + return FALSE; +} + +static gboolean +dh_keyword_model_iter_has_child (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + return FALSE; +} + +static gint +dh_keyword_model_iter_n_children (GtkTreeModel *tree_model, + GtkTreeIter *iter) +{ + DhKeywordModelPrivate *priv; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + if (iter == NULL) { + return priv->links.length; + } + + g_return_val_if_fail (priv->stamp == iter->stamp, -1); + + return 0; +} + +static gboolean +dh_keyword_model_iter_nth_child (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *parent, + gint n) +{ + DhKeywordModelPrivate *priv; + GList *child; + + priv = dh_keyword_model_get_instance_private (DH_KEYWORD_MODEL (tree_model)); + + if (parent != NULL) { + return FALSE; + } + + child = g_queue_peek_nth_link (&priv->links, n); + + if (child != NULL) { + iter->stamp = priv->stamp; + iter->user_data = child; + return TRUE; + } + + return FALSE; +} + +static gboolean +dh_keyword_model_iter_parent (GtkTreeModel *tree_model, + GtkTreeIter *iter, + GtkTreeIter *child) +{ + return FALSE; +} + +static void +dh_keyword_model_tree_model_init (GtkTreeModelIface *iface) +{ + iface->get_flags = dh_keyword_model_get_flags; + iface->get_n_columns = dh_keyword_model_get_n_columns; + iface->get_column_type = dh_keyword_model_get_column_type; + iface->get_iter = dh_keyword_model_get_iter; + iface->get_path = dh_keyword_model_get_path; + iface->get_value = dh_keyword_model_get_value; + iface->iter_next = dh_keyword_model_iter_next; + iface->iter_children = dh_keyword_model_iter_children; + iface->iter_has_child = dh_keyword_model_iter_has_child; + iface->iter_n_children = dh_keyword_model_iter_n_children; + iface->iter_nth_child = dh_keyword_model_iter_nth_child; + iface->iter_parent = dh_keyword_model_iter_parent; +} + +/** + * dh_keyword_model_new: + * + * Returns: a new #DhKeywordModel object. + */ +DhKeywordModel * +dh_keyword_model_new (void) +{ + return g_object_new (DH_TYPE_KEYWORD_MODEL, NULL); +} + +static GQueue * +search_single_book (DhBook *book, + SearchSettings *settings, + guint max_hits, + DhLink **exact_link) +{ + GQueue *ret; + GList *l; + + ret = g_queue_new (); + + for (l = dh_book_get_links (book); + l != NULL && ret->length < max_hits; + l = l->next) { + DhLink *link = l->data; + + if (!_dh_search_context_match_link (settings->search_context, + link, + settings->prefix)) { + continue; + } + + g_queue_push_tail (ret, dh_link_ref (link)); + + if (exact_link == NULL || !settings->prefix) + continue; + + /* Look for an exact link match. If the link is a PAGE, we can + * overwrite any previous exact link set. For example, when + * looking for GFile, we want the page, not the struct. + */ + if ((*exact_link == NULL || dh_link_get_link_type (link) == DH_LINK_TYPE_PAGE) && + _dh_search_context_is_exact_link (settings->search_context, link)) { + *exact_link = link; + } + } + + return ret; +} + +static GQueue * +search_books (SearchSettings *settings, + guint max_hits, + DhLink **exact_link) +{ + DhBookManager *book_manager; + GList *books; + GList *l; + GQueue *ret; + + ret = g_queue_new (); + + book_manager = dh_book_manager_get_singleton (); + books = dh_book_manager_get_books (book_manager); + + for (l = books; + l != NULL && ret->length < max_hits; + l = l->next) { + DhBook *book = DH_BOOK (l->data); + GQueue *book_result; + + if (!_dh_search_context_match_book (settings->search_context, book)) + continue; + + /* Filtering by book? */ + if (settings->book_id != NULL && + g_strcmp0 (settings->book_id, dh_book_get_id (book)) != 0) { + continue; + } + + /* Skipping a given book? */ + if (settings->skip_book_id != NULL && + g_strcmp0 (settings->skip_book_id, dh_book_get_id (book)) == 0) { + continue; + } + + book_result = search_single_book (book, + settings, + max_hits - ret->length, + exact_link); + + dh_util_queue_concat (ret, book_result); + } + + g_queue_sort (ret, (GCompareDataFunc) dh_link_compare, NULL); + return ret; +} + +static GQueue * +handle_book_id_only (DhSearchContext *search_context, + DhLink **exact_link) +{ + DhBookManager *book_manager; + GList *books; + GList *l; + GQueue *ret; + + if (_dh_search_context_get_book_id (search_context) == NULL || + _dh_search_context_get_page_id (search_context) != NULL || + _dh_search_context_get_keywords (search_context) != NULL) { + return NULL; + } + + ret = g_queue_new (); + + book_manager = dh_book_manager_get_singleton (); + books = dh_book_manager_get_books (book_manager); + + for (l = books; l != NULL; l = l->next) { + DhBook *book = DH_BOOK (l->data); + GNode *node; + + if (!_dh_search_context_match_book (search_context, book)) + continue; + + /* Return only the top-level book page. */ + node = dh_book_get_tree (book); + if (node != NULL) { + DhLink *link; + + link = node->data; + g_queue_push_tail (ret, dh_link_ref (link)); + + if (exact_link != NULL) + *exact_link = link; + } + + break; + } + + return ret; +} + +/* The Search rationale is as follows: + * + * - If 'book_id' is given, but no 'page_id' or 'keywords', the main page of + * the book will only be shown, giving as exact match this book link. + * - If 'book_id' and 'page_id' are given, but no 'keywords', all the items + * in the given page of the given book will be shown. + * - If 'book_id' and 'keywords' are given, but no 'page_id', up to MAX_HITS + * items matching the keywords in the given book will be shown. + * - If 'book_id' and 'page_id' and 'keywords' are given, all the items + * matching the keywords in the given page of the given book will be shown. + * + * - If 'page_id' is given, but no 'book_id' or 'keywords', all the items + * in the given page will be shown, giving as exact match the page link. + * - If 'page_id' and 'keywords' are given but no 'book_id', all the items + * matching the keywords in the given page will be shown. + * + * - If 'keywords' only are given, up to max_hits items matching the keywords + * will be shown. If keyword matches both a page link and a non-page one, + * the page link is the one given as exact match. + */ +static GQueue * +keyword_model_search (DhKeywordModel *model, + DhSearchContext *search_context, + DhLink **exact_link) +{ + DhKeywordModelPrivate *priv = dh_keyword_model_get_instance_private (model); + SearchSettings settings; + guint max_hits = MAX_HITS; + GQueue *in_book = NULL; + GQueue *other_books = NULL; + DhLink *in_book_exact_link = NULL; + DhLink *other_books_exact_link = NULL; + GQueue *out; + + out = handle_book_id_only (search_context, exact_link); + if (out != NULL) + return out; + + out = g_queue_new (); + + settings.search_context = search_context; + settings.book_id = priv->current_book_id; + settings.skip_book_id = NULL; + settings.prefix = TRUE; + + if (_dh_search_context_get_page_id (search_context) != NULL) { + /* If filtering per page, increase the maximum number of + * hits. This is due to the fact that a page may have + * more than MAX_HITS keywords, and the page link may be + * the last one in the list, but we always want to get it. + */ + max_hits = G_MAXUINT; + } + + /* First look for prefixed items in the given book id. */ + if (priv->current_book_id != NULL) { + in_book = search_books (&settings, + max_hits, + &in_book_exact_link); + } + + /* Next, always check other books as well, as the exact match may be in + * there. + */ + settings.book_id = NULL; + settings.skip_book_id = priv->current_book_id; + other_books = search_books (&settings, + max_hits, + &other_books_exact_link); + + /* Now that we got prefix searches in current and other books, decide + * which the preferred exact link is. If the exact match is in other + * books, prefer those to the current book. + */ + if (in_book_exact_link != NULL) { + *exact_link = in_book_exact_link; + dh_util_queue_concat (out, in_book); + dh_util_queue_concat (out, other_books); + } else if (other_books_exact_link != NULL) { + *exact_link = other_books_exact_link; + dh_util_queue_concat (out, other_books); + dh_util_queue_concat (out, in_book); + } else { + *exact_link = NULL; + dh_util_queue_concat (out, in_book); + dh_util_queue_concat (out, other_books); + } + + if (out->length >= max_hits) + return out; + + /* Look for non-prefixed matches in current book. */ + settings.prefix = FALSE; + + if (priv->current_book_id != NULL) { + settings.book_id = priv->current_book_id; + settings.skip_book_id = NULL; + + in_book = search_books (&settings, + max_hits - out->length, + NULL); + + dh_util_queue_concat (out, in_book); + if (out->length >= max_hits) + return out; + } + + /* If still room for more items, look for non-prefixed items in other + * books. + */ + settings.book_id = NULL; + settings.skip_book_id = priv->current_book_id; + other_books = search_books (&settings, + max_hits - out->length, + NULL); + dh_util_queue_concat (out, other_books); + + return out; +} + +/** + * dh_keyword_model_filter: + * @model: a #DhKeywordModel. + * @search_string: a search query. + * @current_book_id: (nullable): the ID of the book currently shown, or %NULL. + * @language: (nullable): deprecated, must be %NULL. + * + * Searches in the #DhBookManager the list of #DhLink's that correspond to + * @search_string, and fills the @model with that list (erasing the previous + * content). + * + * Attention, when calling this function the @model needs to be disconnected + * from the #GtkTreeView, because the #GtkTreeModel signals are not emitted, to + * improve the performances (sending a lot of signals is slow) and have a + * simpler implementation. The previous row selection is anyway no longer + * relevant. + * + * Note that there is a maximum number of matches (configured internally). When + * the maximum is reached the search is stopped, to avoid blocking the GUI + * (since this function runs synchronously) if the @search_string contains for + * example only one character. (And it is anyway not very useful to show to the + * user tens of thousands search results). + * + * Returns: (nullable) (transfer none): the #DhLink that matches exactly + * @search_string, or %NULL if no such #DhLink was found within the maximum + * number of matches. + */ +DhLink * +dh_keyword_model_filter (DhKeywordModel *model, + const gchar *search_string, + const gchar *current_book_id, + const gchar *language) +{ + DhKeywordModelPrivate *priv; + DhSearchContext *search_context; + GQueue *new_links = NULL; + DhLink *exact_link = NULL; + + g_return_val_if_fail (DH_IS_KEYWORD_MODEL (model), NULL); + g_return_val_if_fail (search_string != NULL, NULL); + g_return_val_if_fail (language == NULL, NULL); + + priv = dh_keyword_model_get_instance_private (model); + + g_free (priv->current_book_id); + priv->current_book_id = NULL; + + search_context = _dh_search_context_new (search_string); + + if (search_context != NULL) { + const gchar *book_id_in_search_string; + + book_id_in_search_string = _dh_search_context_get_book_id (search_context); + + if (book_id_in_search_string != NULL) + priv->current_book_id = g_strdup (book_id_in_search_string); + else + priv->current_book_id = g_strdup (current_book_id); + + new_links = keyword_model_search (model, search_context, &exact_link); + } + + clear_links (model); + dh_util_queue_concat (&priv->links, new_links); + new_links = NULL; + + /* The content has been modified, change the stamp so that older + * GtkTreeIter's become invalid. + */ + priv->stamp++; + + _dh_search_context_free (search_context); + + /* One hit */ + if (priv->links.length == 1) + return g_queue_peek_head (&priv->links); + + return exact_link; +} diff --git a/src/dh-keyword-model.h b/src/dh-keyword-model.h new file mode 100644 index 0000000..8c324a8 --- /dev/null +++ b/src/dh-keyword-model.h @@ -0,0 +1,67 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2002 Mikael Hallendal + * + * 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, see . + */ + +#ifndef DH_KEYWORD_MODEL_H +#define DH_KEYWORD_MODEL_H + +#include +#include "dh-link.h" + +G_BEGIN_DECLS + +#define DH_TYPE_KEYWORD_MODEL (dh_keyword_model_get_type ()) +#define DH_KEYWORD_MODEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_KEYWORD_MODEL, DhKeywordModel)) +#define DH_KEYWORD_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_KEYWORD_MODEL, DhKeywordModelClass)) +#define DH_IS_KEYWORD_MODEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_KEYWORD_MODEL)) +#define DH_IS_KEYWORD_MODEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_KEYWORD_MODEL)) +#define DH_KEYWORD_MODEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_KEYWORD_MODEL, DhKeywordModelClass)) + +typedef struct _DhKeywordModel DhKeywordModel; +typedef struct _DhKeywordModelClass DhKeywordModelClass; + +struct _DhKeywordModel { + GObject parent_instance; +}; + +struct _DhKeywordModelClass { + GObjectClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +enum { + DH_KEYWORD_MODEL_COL_NAME, + DH_KEYWORD_MODEL_COL_LINK, + DH_KEYWORD_MODEL_COL_CURRENT_BOOK_FLAG, + DH_KEYWORD_MODEL_NUM_COLS +}; + +GType dh_keyword_model_get_type (void); + +DhKeywordModel *dh_keyword_model_new (void); + +DhLink * dh_keyword_model_filter (DhKeywordModel *model, + const gchar *search_string, + const gchar *current_book_id, + const gchar *language); + +G_END_DECLS + +#endif /* DH_KEYWORD_MODEL_H */ diff --git a/src/dh-link.c b/src/dh-link.c new file mode 100644 index 0000000..e394adb --- /dev/null +++ b/src/dh-link.c @@ -0,0 +1,607 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2002 Mikael Hallendal + * Copyright (C) 2008 Imendio AB + * Copyright (C) 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-link.h" +#include +#include + +/** + * SECTION:dh-link + * @Title: DhLink + * @Short_description: A link inside a #DhBook + * + * A #DhLink represents a link to an HTML page or somewhere inside a page (with + * an anchor) that is inside a #DhBook. The link can point to a specific symbol, + * or a page, or the top-level page of the #DhBook. + * + * A #DhLink has a type that can be retrieved with dh_link_get_link_type(). + * + * There is exactly one #DhLink of type %DH_LINK_TYPE_BOOK per #DhBook object. + */ + +/* Fields used only by DhLink's of type DH_LINK_TYPE_BOOK. */ +typedef struct { + gchar *base_path; + gchar *book_id; +} BookData; + +struct _DhLink { + /* To avoid some memory padding inside the struct, to use less memory, + * the fields are placed in this order: + * 1. All the pointers. + * 2. Other types. + * 3. Bit fields. + * + * Also, a union is used to use less memory. This struct is allocated a + * lot, so it is worth optimizing it. + */ + + union { + /* @book.data is set only for links of @type DH_LINK_TYPE_BOOK. */ + BookData *data; + + /* @book.link is set only for links of @type != DH_LINK_TYPE_BOOK. */ + DhLink *link; + } book; + + gchar *name; + gchar *name_collation_key; + + gchar *relative_url; + + guint ref_count; + + DhLinkType type : 8; + DhLinkFlags flags : 8; +}; + +/* If the relative_url is empty. */ +#define DEFAULT_PAGE "index.html" + +G_DEFINE_BOXED_TYPE (DhLink, dh_link, + dh_link_ref, dh_link_unref) + +static BookData * +book_data_new (const gchar *base_path, + const gchar *book_id) +{ + BookData *data; + + data = g_slice_new (BookData); + data->base_path = g_strdup (base_path); + data->book_id = g_strdup (book_id); + + return data; +} + +static void +book_data_free (BookData *data) +{ + if (data == NULL) + return; + + g_free (data->base_path); + g_free (data->book_id); + g_slice_free (BookData, data); +} + +static void +link_free (DhLink *link) +{ + if (link->type == DH_LINK_TYPE_BOOK) + book_data_free (link->book.data); + else + dh_link_unref (link->book.link); + + g_free (link->name); + g_free (link->name_collation_key); + g_free (link->relative_url); + + g_slice_free (DhLink, link); +} + +static DhLink * +dh_link_new_common (DhLinkType type, + const gchar *name, + const gchar *relative_url) +{ + DhLink *link; + + link = g_slice_new0 (DhLink); + link->ref_count = 1; + link->type = type; + link->name = g_strdup (name); + link->relative_url = g_strdup (relative_url); + + return link; +} + +/** + * dh_link_new_book: + * @base_path: the base path for the book. + * @book_id: the book ID. + * @book_title: the name of the link. + * @relative_url: the URL relative to the book @base_path. Can contain an + * anchor. Usually the index.html page. + * + * Returns: a new #DhLink of type %DH_LINK_TYPE_BOOK. + * Since: 3.28 + */ +DhLink * +dh_link_new_book (const gchar *base_path, + const gchar *book_id, + const gchar *book_title, + const gchar *relative_url) +{ + DhLink *link; + + g_return_val_if_fail (base_path != NULL, NULL); + g_return_val_if_fail (book_id != NULL, NULL); + g_return_val_if_fail (book_title != NULL, NULL); + g_return_val_if_fail (relative_url != NULL, NULL); + + link = dh_link_new_common (DH_LINK_TYPE_BOOK, book_title, relative_url); + + link->book.data = book_data_new (base_path, book_id); + + return link; +} + +/** + * dh_link_new: + * @type: the #DhLinkType. Must be different than %DH_LINK_TYPE_BOOK. + * @book_link: the #DhLink of type %DH_LINK_TYPE_BOOK for the book that the link + * is contained in. + * @name: the name of the link. + * @relative_url: the URL relative to the book base path. Can contain an anchor. + * + * Returns: a new #DhLink. + */ +DhLink * +dh_link_new (DhLinkType type, + DhLink *book_link, + const gchar *name, + const gchar *relative_url) +{ + DhLink *link; + + g_return_val_if_fail (type != DH_LINK_TYPE_BOOK, NULL); + g_return_val_if_fail (book_link != NULL, NULL); + g_return_val_if_fail (book_link->type == DH_LINK_TYPE_BOOK, NULL); + g_return_val_if_fail (name != NULL, NULL); + g_return_val_if_fail (relative_url != NULL, NULL); + + link = dh_link_new_common (type, name, relative_url); + + link->book.link = dh_link_ref (book_link); + + return link; +} + +/** + * dh_link_ref: + * @link: a #DhLink. + * + * Increases the reference count of @link. + * + * Not thread-safe. + * + * Returns: (transfer full): the @link. + */ +DhLink * +dh_link_ref (DhLink *link) +{ + g_return_val_if_fail (link != NULL, NULL); + + link->ref_count++; + + return link; +} + +/** + * dh_link_unref: + * @link: a #DhLink. + * + * Decreases the reference count of @link. + * + * Not thread-safe. + */ +void +dh_link_unref (DhLink *link) +{ + g_return_if_fail (link != NULL); + + if (link->ref_count == 1) + link_free (link); + else + link->ref_count--; +} + +/** + * dh_link_get_link_type: + * @link: a #DhLink. + * + * Returns: the #DhLinkType of @link. + */ +DhLinkType +dh_link_get_link_type (DhLink *link) +{ + g_return_val_if_fail (link != NULL, 0); + + return link->type; +} + +/** + * dh_link_get_flags: + * @link: a #DhLink. + * + * Returns: the #DhLinkFlags of @link. + */ +DhLinkFlags +dh_link_get_flags (DhLink *link) +{ + g_return_val_if_fail (link != NULL, DH_LINK_FLAGS_NONE); + + return link->flags; +} + +/** + * dh_link_set_flags: + * @link: a #DhLink. + * @flags: the new flags of the link. + * + * Sets the flags of the link. + */ +void +dh_link_set_flags (DhLink *link, + DhLinkFlags flags) +{ + g_return_if_fail (link != NULL); + + link->flags = flags; +} + +/** + * dh_link_get_name: + * @link: a #DhLink. + * + * Returns: the name of the @link. For a link of type %DH_LINK_TYPE_BOOK, + * returns the book title. + */ +const gchar * +dh_link_get_name (DhLink *link) +{ + g_return_val_if_fail (link != NULL, NULL); + + return link->name; +} + +/** + * dh_link_match_relative_url: + * @link: a #DhLink. + * @relative_url: an URL relative to the book base path. Can contain an anchor. + * + * Returns: whether the relative URL of @link matches with @relative_url. There + * is a special case for the index.html page, it can also match the empty + * string. + * Since: 3.28 + */ +gboolean +dh_link_match_relative_url (DhLink *link, + const gchar *relative_url) +{ + g_return_val_if_fail (link != NULL, FALSE); + g_return_val_if_fail (link->relative_url != NULL, FALSE); + g_return_val_if_fail (relative_url != NULL, FALSE); + + if (g_str_equal (link->relative_url, relative_url)) + return TRUE; + + /* Special case for index.html, can also match the empty string. + * Example of full URLs: + * file:///usr/share/gtk-doc/html/glib/ + * file:///usr/share/gtk-doc/html/glib/index.html + * + * This supports only the root index.html page of a DhBook, this doesn't + * support index.html inside a sub-directory, if the relative_url + * contains a sub-directory. But apparently GTK-Doc doesn't create + * sub-directories, all the *.html pages are in the same directory. + */ + if (relative_url[0] == '\0') + return g_str_equal (link->relative_url, DEFAULT_PAGE); + else if (link->relative_url[0] == '\0') + return g_str_equal (relative_url, DEFAULT_PAGE); + + return FALSE; +} + +/** + * dh_link_belongs_to_page: + * @link: a #DhLink. + * @page_id: a page ID, i.e. the filename without its extension. + * + * This function permits to know if @link belongs to a certain page. + * + * @page_id is usually the HTML filename without the `.html` extension. More + * generally, @page_id must be a relative URL (relative to the book base path), + * without the anchor nor the file extension. + * + * For example if @link has the relative URL `"DhLink.html#dh-link-ref"`, then + * this function will return %TRUE if the @page_id is `"DhLink"`. + * + * Returns: whether @link belongs to @page_id. + * Since: 3.28 + */ +gboolean +dh_link_belongs_to_page (DhLink *link, + const gchar *page_id) +{ + const gchar *relative_url; + gsize page_id_len; + + g_return_val_if_fail (link != NULL, FALSE); + g_return_val_if_fail (link->relative_url != NULL, FALSE); + g_return_val_if_fail (page_id != NULL, FALSE); + + relative_url = link->relative_url; + if (relative_url[0] == '\0') + relative_url = DEFAULT_PAGE; + + page_id_len = strlen (page_id); + + /* Check that a file extension follows. */ + return (g_str_has_prefix (relative_url, page_id) && + relative_url[page_id_len] == '.'); +} + +/** + * dh_link_get_uri: + * @link: a #DhLink. + * + * Gets the @link URI, by concateneting the book base path with the @link + * relative URL. + * + * Returns: (nullable): the @link URI, or %NULL if getting the URI failed. Free + * with g_free() when no longer needed. + */ +gchar * +dh_link_get_uri (DhLink *link) +{ + const gchar *base_path; + gchar *filename; + gchar *uri; + gchar *anchor; + GError *error = NULL; + + g_return_val_if_fail (link != NULL, NULL); + + if (link->type == DH_LINK_TYPE_BOOK) + base_path = link->book.data->base_path; + else + base_path = link->book.link->book.data->base_path; + + filename = g_build_filename (base_path, link->relative_url, NULL); + + anchor = strrchr (filename, '#'); + if (anchor != NULL) { + *anchor = '\0'; + anchor++; + } + + uri = g_filename_to_uri (filename, NULL, &error); + if (error != NULL) { + g_warning ("Failed to get DhLink URI: %s", error->message); + g_clear_error (&error); + } + + if (uri != NULL && anchor != NULL) { + gchar *uri_with_anchor; + + uri_with_anchor = g_strconcat (uri, "#", anchor, NULL); + g_free (uri); + uri = uri_with_anchor; + } + + g_free (filename); + return uri; +} + +/** + * dh_link_get_book_title: + * @link: a #DhLink. + * + * Returns: the title of the book that the @link is contained in. + */ +const gchar * +dh_link_get_book_title (DhLink *link) +{ + g_return_val_if_fail (link != NULL, NULL); + + if (link->type == DH_LINK_TYPE_BOOK) + return link->name; + + if (link->book.link != NULL) + return link->book.link->name; + + return ""; +} + +/** + * dh_link_get_book_id: + * @link: a #DhLink. + * + * Returns: the ID of the book that the @link is contained in. + */ +const gchar * +dh_link_get_book_id (DhLink *link) +{ + g_return_val_if_fail (link != NULL, NULL); + + if (link->type == DH_LINK_TYPE_BOOK) + return link->book.data->book_id; + + if (link->book.link != NULL) + return link->book.link->book.data->book_id; + + return ""; +} + +static gint +dh_link_type_compare (DhLinkType a, + DhLinkType b) +{ + if (a == b) + return 0; + + /* Same order as in a tree: first the top-level book node, then pages, + * then keywords (keywords are contained in a page). + */ + + if (a == DH_LINK_TYPE_BOOK) + return -1; + if (b == DH_LINK_TYPE_BOOK) + return 1; + + if (a == DH_LINK_TYPE_PAGE) + return -1; + if (b == DH_LINK_TYPE_PAGE) + return 1; + + return 0; +} + +/** + * dh_link_compare: + * @a: (type DhLink): a #DhLink. + * @b: (type DhLink): a #DhLink. + * + * Compares the links @a and @b. This function is used to determine in which + * order the links should be displayed. + * + * Returns: an integer less than zero if @a should appear before @b; zero if + * there are no preferences; an integer greater than zero if @b should appear + * before @a. + */ +gint +dh_link_compare (gconstpointer a, + gconstpointer b) +{ + DhLink *la = (DhLink *) a; + DhLink *lb = (DhLink *) b; + gint flags_diff; + gint diff; + + g_return_val_if_fail (a != NULL, 0); + g_return_val_if_fail (b != NULL, 0); + + /* Sort deprecated hits last. */ + flags_diff = ((la->flags & DH_LINK_FLAGS_DEPRECATED) - + (lb->flags & DH_LINK_FLAGS_DEPRECATED)); + if (flags_diff != 0) + return flags_diff; + + /* Collation-based sorting */ + if (G_UNLIKELY (la->name_collation_key == NULL)) + la->name_collation_key = g_utf8_collate_key (la->name, -1); + if (G_UNLIKELY (lb->name_collation_key == NULL)) + lb->name_collation_key = g_utf8_collate_key (lb->name, -1); + + diff = strcmp (la->name_collation_key, + lb->name_collation_key); + + if (diff != 0) + return diff; + + return dh_link_type_compare (la->type, lb->type); +} + +/** + * dh_link_type_to_string: + * @link_type: a #DhLinkType. + * + * Returns: a string representation of the #DhLinkType, translated in the + * current language. + */ +const gchar * +dh_link_type_to_string (DhLinkType link_type) +{ + switch (link_type) { + case DH_LINK_TYPE_BOOK: + /* i18n: a documentation book */ + return _("Book"); + + case DH_LINK_TYPE_PAGE: + /* i18n: a "page" in a documentation book */ + return _("Page"); + + case DH_LINK_TYPE_KEYWORD: + /* i18n: a search hit in the documentation, could be a + * function, macro, struct, etc */ + return _("Keyword"); + + case DH_LINK_TYPE_FUNCTION: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Function"); + + case DH_LINK_TYPE_STRUCT: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Struct"); + + case DH_LINK_TYPE_MACRO: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Macro"); + + case DH_LINK_TYPE_ENUM: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Enum"); + + case DH_LINK_TYPE_TYPEDEF: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Type"); + + case DH_LINK_TYPE_PROPERTY: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Property"); + + case DH_LINK_TYPE_SIGNAL: + /* i18n: in the programming language context, if you don't + * have an ESTABLISHED term for it, leave it + * untranslated. */ + return _("Signal"); + + default: + break; + } + + g_return_val_if_reached (""); +} diff --git a/src/dh-link.h b/src/dh-link.h new file mode 100644 index 0000000..802191c --- /dev/null +++ b/src/dh-link.h @@ -0,0 +1,114 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 Mikael Hallendal + * Copyright (C) 2008 Imendio AB + * Copyright (C) 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_LINK_H +#define DH_LINK_H + +#include + +G_BEGIN_DECLS + +/** + * DhLinkType: + * @DH_LINK_TYPE_BOOK: The top-level page of a #DhBook. + * @DH_LINK_TYPE_PAGE: A page. + * @DH_LINK_TYPE_KEYWORD: Another kind of keyword. + * @DH_LINK_TYPE_FUNCTION: A function keyword. + * @DH_LINK_TYPE_STRUCT: A struct keyword. + * @DH_LINK_TYPE_MACRO: A macro keyword. + * @DH_LINK_TYPE_ENUM: An enum keyword. + * @DH_LINK_TYPE_TYPEDEF: A typedef keyword. + * @DH_LINK_TYPE_PROPERTY: A property keyword. + * @DH_LINK_TYPE_SIGNAL: A signal keyword. + * + * The type of the content the link points to. + */ +typedef enum { + DH_LINK_TYPE_BOOK, + DH_LINK_TYPE_PAGE, + DH_LINK_TYPE_KEYWORD, + DH_LINK_TYPE_FUNCTION, + DH_LINK_TYPE_STRUCT, + DH_LINK_TYPE_MACRO, + DH_LINK_TYPE_ENUM, + DH_LINK_TYPE_TYPEDEF, + DH_LINK_TYPE_PROPERTY, + DH_LINK_TYPE_SIGNAL +} DhLinkType; + +/** + * DhLinkFlags: + * @DH_LINK_FLAGS_NONE: No flags set. + * @DH_LINK_FLAGS_DEPRECATED: The symbol that the link points to is deprecated. + */ +typedef enum { + DH_LINK_FLAGS_NONE = 0, + DH_LINK_FLAGS_DEPRECATED = 1 << 0 +} DhLinkFlags; + +typedef struct _DhLink DhLink; + +#define DH_TYPE_LINK (dh_link_get_type ()) + +GType dh_link_get_type (void); + +DhLink * dh_link_new_book (const gchar *base_path, + const gchar *book_id, + const gchar *book_title, + const gchar *relative_url); + +DhLink * dh_link_new (DhLinkType type, + DhLink *book_link, + const gchar *name, + const gchar *relative_url); + +DhLink * dh_link_ref (DhLink *link); + +void dh_link_unref (DhLink *link); + +DhLinkType dh_link_get_link_type (DhLink *link); + +DhLinkFlags dh_link_get_flags (DhLink *link); + +void dh_link_set_flags (DhLink *link, + DhLinkFlags flags); + +const gchar *dh_link_get_name (DhLink *link); + +gboolean dh_link_match_relative_url (DhLink *link, + const gchar *relative_url); + +gboolean dh_link_belongs_to_page (DhLink *link, + const gchar *page_id); + +gchar * dh_link_get_uri (DhLink *link); + +const gchar *dh_link_get_book_title (DhLink *link); + +const gchar *dh_link_get_book_id (DhLink *link); + +gint dh_link_compare (gconstpointer a, + gconstpointer b); + +const gchar *dh_link_type_to_string (DhLinkType link_type); + +G_END_DECLS + +#endif /* DH_LINK_H */ diff --git a/src/dh-main.c b/src/dh-main.c new file mode 100644 index 0000000..5e29c83 --- /dev/null +++ b/src/dh-main.c @@ -0,0 +1,47 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2003 CodeFactory AB + * Copyright (C) 2001-2008 Imendio AB + * + * 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, see . + */ + +#include "config.h" + +#include +#include +#include + +#include "devhelp.h" +#include "dh-app.h" + +int +main (int argc, char **argv) +{ + DhApp *application; + gint status; + + setlocale (LC_ALL, ""); + textdomain (GETTEXT_PACKAGE); + + dh_init (); + + application = dh_app_new (); + status = g_application_run (G_APPLICATION (application), argc, argv); + g_object_unref (application); + + dh_finalize (); + + return status; +} diff --git a/src/dh-parser.c b/src/dh-parser.c new file mode 100644 index 0000000..744cd69 --- /dev/null +++ b/src/dh-parser.c @@ -0,0 +1,665 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002-2003 Mikael Hallendal + * Copyright (C) 2002-2003 CodeFactory AB + * Copyright (C) 2005,2008 Imendio AB + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-parser.h" +#include +#include "dh-error.h" +#include "dh-link.h" +#include "dh-util.h" + +/* Possible things to do for the version 3 of the Devhelp index file format (if + * one day there is a strong desire to create a new version): + * - Replace element by . + * - Maybe have an up-to-date URI for the NAMESPACE. + * - Rename attribute 'name' to 'id', because "book name" can be confused + * with the book title or other 'name' attributes (for and , + * the 'name' attribute has a different meaning). With "book ID" there is no + * ambiguity. + * - Maybe rename attribute 'title' to 'name', to be consistent with + * the and elements. dh_link_get_name() would also have a + * clearer meaning for book top-level links. But "book title" has the + * advantage that there is no ambiguity. + */ + +/* It's the xmlns attribute. It is currently (well, in 2015 at least) used on + * developer.gnome.org to look for elements attached to that + * namespace. + * + * devhelp.net was initially the Devhelp website, but it is now no longer the + * case. But it is not a problem, a namespace qualifies a node name, it doesn't + * have to be a real site. And it is now too late to change it, at least for the + * format version 2. + * + * See: + * https://bugzilla.gnome.org/show_bug.cgi?id=566447 + * https://bugzilla.gnome.org/show_bug.cgi?id=749591#c1 + */ +#define NAMESPACE "http://www.devhelp.net/book" + +#define BYTES_PER_READ 4096 + +typedef enum { + FORMAT_VERSION_1, + + /* The main change is that version 2 uses instead of + * . + */ + FORMAT_VERSION_2 +} FormatVersion; + +typedef struct { + GMarkupParser *markup_parser; + GMarkupParseContext *context; + + GFile *index_file; + + gchar *book_title; + gchar *book_id; + gchar *book_language; + + /* List of all DhLink* */ + GList *all_links; + + /* Tree of DhLink* (not including keywords). + * The top node of the book. + */ + GNode *book_node; + + /* Current sub section node */ + GNode *parent_node; + + FormatVersion version; + + guint parsing_chapters : 1; + guint parsing_keywords : 1; +} DhParser; + +static void +dh_parser_free (DhParser *parser) +{ + g_markup_parse_context_free (parser->context); + g_free (parser->markup_parser); + + g_clear_object (&parser->index_file); + + g_free (parser->book_title); + g_free (parser->book_id); + g_free (parser->book_language); + + g_list_free_full (parser->all_links, (GDestroyNotify)dh_link_unref); + _dh_util_free_book_tree (parser->book_node); + + g_free (parser); +} + +static void +replace_newlines_by_spaces (gchar *str) +{ + gint i; + + if (str == NULL) + return; + + for (i = 0; str[i] != '\0'; i++) { + if (str[i] == '\n' || str[i] == '\r') + str[i] = ' '; + } +} + +static void +parser_start_node_book (DhParser *parser, + GMarkupParseContext *context, + const gchar *node_name, + const gchar **attribute_names, + const gchar **attribute_values, + GError **error) +{ + gint line; + gint col; + gint attr_num; + gchar *base = NULL; + const gchar *name = NULL; + const gchar *title = NULL; + const gchar *uri = NULL; + const gchar *language = NULL; + DhLink *link; + + if (g_ascii_strcasecmp (node_name, "book") != 0) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "Expected element, got <%s> at line %d, column %d.", + node_name, line, col); + return; + } + + for (attr_num = 0; attribute_names[attr_num] != NULL; attr_num++) { + if (g_ascii_strcasecmp (attribute_names[attr_num], "xmlns") == 0) { + const gchar *xmlns; + + xmlns = attribute_values[attr_num]; + if (g_ascii_strcasecmp (xmlns, NAMESPACE) != 0) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "Expected xmlns value “" NAMESPACE "”, " + "got “%s” at line %d, column %d.", + xmlns, line, col); + return; + } + } else if (g_ascii_strcasecmp (attribute_names[attr_num], "name") == 0) { + name = attribute_values[attr_num]; + } else if (g_ascii_strcasecmp (attribute_names[attr_num], "title") == 0) { + title = attribute_values[attr_num]; + } else if (g_ascii_strcasecmp (attribute_names[attr_num], "base") == 0) { + /* Dup this one */ + base = g_strdup (attribute_values[attr_num]); + } else if (g_ascii_strcasecmp (attribute_names[attr_num], "link") == 0) { + uri = attribute_values[attr_num]; + } else if (g_ascii_strcasecmp (attribute_names[attr_num], "language") == 0) { + language = attribute_values[attr_num]; + } + } + + if (name == NULL || title == NULL || uri == NULL) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "“title”, “name” and “link” attributes are required " + "inside the element at line %d, column %d.", + line, col); + return; + } + + /* Store book metadata */ + g_free (parser->book_title); + parser->book_title = g_strdup (title); + replace_newlines_by_spaces (parser->book_title); + + g_free (parser->book_id); + parser->book_id = g_strdup (name); + + g_free (parser->book_language); + parser->book_language = g_strdup (language); + + if (base == NULL) { + GFile *directory; + + directory = g_file_get_parent (parser->index_file); + base = g_file_get_path (directory); + g_object_unref (directory); + } + + link = dh_link_new_book (base, + parser->book_id, + parser->book_title, + uri); + g_free (base); + parser->all_links = g_list_prepend (parser->all_links, link); + + g_assert (parser->book_node == NULL); + g_assert (parser->parent_node == NULL); + + parser->book_node = g_node_new (dh_link_ref (link)); + parser->parent_node = parser->book_node; +} + +static void +parser_start_node_chapter (DhParser *parser, + GMarkupParseContext *context, + const gchar *node_name, + const gchar **attribute_names, + const gchar **attribute_values, + GError **error) +{ + gint line; + gint col; + gint attr_num; + const gchar *name = NULL; + const gchar *uri = NULL; + DhLink *link; + GNode *node; + + if (g_ascii_strcasecmp (node_name, "sub") != 0) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "Expected element, got <%s> at line %d, column %d.", + node_name, line, col); + return; + } + + for (attr_num = 0; attribute_names[attr_num] != NULL; attr_num++) { + if (g_ascii_strcasecmp (attribute_names[attr_num], "name") == 0) + name = attribute_values[attr_num]; + else if (g_ascii_strcasecmp (attribute_names[attr_num], "link") == 0) + uri = attribute_values[attr_num]; + } + + if (name == NULL || uri == NULL) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "“name” and “link” elements are required inside " + "the element at line %d, column %d.", + line, col); + return; + } + + g_assert (parser->book_node != NULL); + + link = dh_link_new (DH_LINK_TYPE_PAGE, + parser->book_node->data, + name, + uri); + + parser->all_links = g_list_prepend (parser->all_links, link); + + g_assert (parser->parent_node != NULL); + + node = g_node_new (dh_link_ref (link)); + g_node_prepend (parser->parent_node, node); + parser->parent_node = node; +} + +static void +parser_start_node_keyword (DhParser *parser, + GMarkupParseContext *context, + const gchar *node_name, + const gchar **attribute_names, + const gchar **attribute_values, + GError **error) +{ + gint line; + gint col; + gint attr_num; + const gchar *type = NULL; + const gchar *name = NULL; + const gchar *uri = NULL; + const gchar *deprecated = NULL; + DhLinkType link_type; + DhLink *link; + gchar *name_to_free = NULL; + + if (parser->version == FORMAT_VERSION_2 && + g_ascii_strcasecmp (node_name, "keyword") != 0) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "Expected element, got <%s> at line %d, column %d.", + node_name, line, col); + return; + } else if (parser->version == FORMAT_VERSION_1 && + g_ascii_strcasecmp (node_name, "function") != 0) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "Expected element, got <%s> at line %d, column %d.", + node_name, line, col); + return; + } + + for (attr_num = 0; attribute_names[attr_num] != NULL; attr_num++) { + if (g_ascii_strcasecmp (attribute_names[attr_num], "type") == 0) + type = attribute_values[attr_num]; + else if (g_ascii_strcasecmp (attribute_names[attr_num], "name") == 0) + name = attribute_values[attr_num]; + else if (g_ascii_strcasecmp (attribute_names[attr_num], "link") == 0) + uri = attribute_values[attr_num]; + else if (g_ascii_strcasecmp (attribute_names[attr_num], "deprecated") == 0) + deprecated = attribute_values[attr_num]; + } + + if (name == NULL || uri == NULL) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "“name” and “link” attributes are required inside " + "the <%s> element at line %d, column %d.", + parser->version == FORMAT_VERSION_2 ? "keyword" : "function", + line, col); + return; + } + + if (parser->version == FORMAT_VERSION_2 && type == NULL) { + g_markup_parse_context_get_position (context, &line, &col); + g_set_error (error, + DH_ERROR, + DH_ERROR_MALFORMED_BOOK, + "“type” attribute is required inside the " + " element at line %d, column %d.", + line, col); + return; + } + + if (parser->version == FORMAT_VERSION_2) { + if (g_str_equal (type, "function")) + link_type = DH_LINK_TYPE_FUNCTION; + else if (g_str_equal (type, "struct")) + link_type = DH_LINK_TYPE_STRUCT; + else if (g_str_equal (type, "macro")) + link_type = DH_LINK_TYPE_MACRO; + else if (g_str_equal (type, "enum")) + link_type = DH_LINK_TYPE_ENUM; + else if (g_str_equal (type, "typedef")) + link_type = DH_LINK_TYPE_TYPEDEF; + else if (g_str_equal (type, "property")) + link_type = DH_LINK_TYPE_PROPERTY; + else if (g_str_equal (type, "signal")) + link_type = DH_LINK_TYPE_SIGNAL; + else + link_type = DH_LINK_TYPE_KEYWORD; + } else { + link_type = DH_LINK_TYPE_KEYWORD; + } + + /* Strip out trailing "() (handling variants with space or non-breaking + * space before the parentheses). + * + * FIXME: gtk-doc still adds those parentheses. I thought that the code + * was needed to support the format version 1. Maybe gtk-doc should no + * longer add those trailing parentheses, since with the format version + * 2 we already know the link type. + */ + if (g_str_has_suffix (name, "\xc2\xa0()")) { + name_to_free = g_strndup (name, strlen (name) - 4); + + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_FUNCTION; + + name = name_to_free; + } else if (g_str_has_suffix (name, " ()")) { + name_to_free = g_strndup (name, strlen (name) - 3); + + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_FUNCTION; + + name = name_to_free; + } else if (g_str_has_suffix (name, "()")) { + name_to_free = g_strndup (name, strlen (name) - 2); + + /* With old devhelp format, take a guess that this is a + * macro. + */ + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_MACRO; + + name = name_to_free; + } + + /* Strip out prefixing "struct", "union", "enum", to make searching + * easier. Also fix up the link type (only applies for old devhelp + * format). + */ + if (g_str_has_prefix (name, "struct ")) { + name = name + 7; + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_STRUCT; + } else if (g_str_has_prefix (name, "union ")) { + name = name + 6; + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_STRUCT; + } else if (g_str_has_prefix (name, "enum ")) { + name = name + 5; + if (link_type == DH_LINK_TYPE_KEYWORD) + link_type = DH_LINK_TYPE_ENUM; + } + + g_assert (parser->book_node != NULL); + + link = dh_link_new (link_type, + parser->book_node->data, + name, + uri); + + g_free (name_to_free); + + if (deprecated != NULL) + dh_link_set_flags (link, dh_link_get_flags (link) | DH_LINK_FLAGS_DEPRECATED); + + parser->all_links = g_list_prepend (parser->all_links, link); +} + +static void +parser_start_node_cb (GMarkupParseContext *context, + const gchar *node_name, + const gchar **attribute_names, + const gchar **attribute_values, + gpointer user_data, + GError **error) +{ + DhParser *parser = user_data; + + if (parser->book_node == NULL) { + parser_start_node_book (parser, + context, + node_name, + attribute_names, + attribute_values, + error); + return; + } + + if (parser->parsing_chapters) { + parser_start_node_chapter (parser, + context, + node_name, + attribute_names, + attribute_values, + error); + return; + } else if (parser->parsing_keywords) { + parser_start_node_keyword (parser, + context, + node_name, + attribute_names, + attribute_values, + error); + return; + } else if (g_ascii_strcasecmp (node_name, "chapters") == 0) { + parser->parsing_chapters = TRUE; + } else if (g_ascii_strcasecmp (node_name, "functions") == 0) { + parser->parsing_keywords = TRUE; + } +} + +static void +parser_end_node_cb (GMarkupParseContext *context, + const gchar *node_name, + gpointer user_data, + GError **error) +{ + DhParser *parser = user_data; + + if (parser->parsing_keywords) { + if (g_ascii_strcasecmp (node_name, "functions") == 0) + parser->parsing_keywords = FALSE; + } else if (parser->parsing_chapters) { + g_assert (parser->parent_node != NULL); + g_node_reverse_children (parser->parent_node); + + if (g_ascii_strcasecmp (node_name, "sub") == 0) { + /* Move up in the tree */ + parser->parent_node = parser->parent_node->parent; + g_assert (parser->parent_node != NULL); + } else if (g_ascii_strcasecmp (node_name, "chapters") == 0) { + parser->parsing_chapters = FALSE; + + /* All elements should be closed, we should have + * come back to the top node (corresponding to the + * element). + * + * It could be a g_assert(), normally GMarkupParser + * already catches malformed XML files (if a + * element is not correctly closed). But just in case + * GMarkupParser is not smart enough, it's safer to have + * a g_return_if_fail() to avoid a crash. + */ + g_return_if_fail (parser->parent_node == parser->book_node); + } + } +} + +gboolean +dh_parser_read_file (GFile *index_file, + gchar **book_title, + gchar **book_id, + gchar **book_language, + GNode **book_tree, + GList **all_links, + GError **error) +{ + DhParser *parser; + gchar *index_file_uri; + gboolean gz; + GFileInputStream *file_input_stream = NULL; + GInputStream *input_stream = NULL; + gboolean ok = TRUE; + + g_return_val_if_fail (G_IS_FILE (index_file), FALSE); + g_return_val_if_fail (book_title != NULL && *book_title == NULL, FALSE); + g_return_val_if_fail (book_id != NULL && *book_id == NULL, FALSE); + g_return_val_if_fail (book_language != NULL && *book_language == NULL, FALSE); + g_return_val_if_fail (book_tree != NULL && *book_tree == NULL, FALSE); + g_return_val_if_fail (all_links != NULL && *all_links == NULL, FALSE); + g_return_val_if_fail (error != NULL && *error == NULL, FALSE); + + parser = g_new0 (DhParser, 1); + + index_file_uri = g_file_get_uri (index_file); + + if (g_str_has_suffix (index_file_uri, ".devhelp2")) { + parser->version = FORMAT_VERSION_2; + gz = FALSE; + } else if (g_str_has_suffix (index_file_uri, ".devhelp")) { + parser->version = FORMAT_VERSION_1; + gz = FALSE; + } else if (g_str_has_suffix (index_file_uri, ".devhelp2.gz")) { + parser->version = FORMAT_VERSION_2; + gz = TRUE; + } else { + parser->version = FORMAT_VERSION_1; + gz = TRUE; + } + + parser->markup_parser = g_new0 (GMarkupParser, 1); + parser->markup_parser->start_element = parser_start_node_cb; + parser->markup_parser->end_element = parser_end_node_cb; + + parser->context = g_markup_parse_context_new (parser->markup_parser, 0, parser, NULL); + + parser->index_file = g_object_ref (index_file); + + file_input_stream = g_file_read (index_file, NULL, error); + if (file_input_stream == NULL) { + ok = FALSE; + goto exit; + } + + /* At this point we know that the file exists, the G_IO_ERROR_NOT_FOUND + * has been catched earlier. So print warning. + */ + if (parser->version == FORMAT_VERSION_1) + g_warning ("The file '%s' uses the Devhelp index file format version 1, " + "which is deprecated. A future version of Devhelp may remove " + "the support for the format version 1. The index file should " + "be ported to the Devhelp index file format version 2.", + index_file_uri); + + if (gz) { + GZlibDecompressor *zlib_decompressor; + + zlib_decompressor = g_zlib_decompressor_new (G_ZLIB_COMPRESSOR_FORMAT_GZIP); + input_stream = g_converter_input_stream_new (G_INPUT_STREAM (file_input_stream), + G_CONVERTER (zlib_decompressor)); + g_object_unref (zlib_decompressor); + } else { + input_stream = G_INPUT_STREAM (g_object_ref (file_input_stream)); + } + + while (TRUE) { + gchar buffer[BYTES_PER_READ]; + gssize bytes_read; + + bytes_read = g_input_stream_read (input_stream, + buffer, + BYTES_PER_READ, + NULL, + error); + + if (bytes_read > 0) { + if (!g_markup_parse_context_parse (parser->context, + buffer, + bytes_read, + error)) { + ok = FALSE; + goto exit; + } + + } else if (bytes_read == 0) { + /* End of file */ + break; + } else { + ok = FALSE; + goto exit; + } + } + + if (!g_markup_parse_context_end_parse (parser->context, error)) { + ok = FALSE; + goto exit; + } + + /* Index file successfully read. Set out parameters. */ + + *book_title = parser->book_title; + parser->book_title = NULL; + + *book_id = parser->book_id; + parser->book_id = NULL; + + *book_language = parser->book_language; + parser->book_language = NULL; + + *book_tree = parser->book_node; + parser->book_node = NULL; + parser->parent_node = NULL; + + *all_links = parser->all_links; + parser->all_links = NULL; + +exit: + g_free (index_file_uri); + g_clear_object (&file_input_stream); + g_clear_object (&input_stream); + dh_parser_free (parser); + + return ok; +} diff --git a/src/dh-parser.h b/src/dh-parser.h new file mode 100644 index 0000000..5721849 --- /dev/null +++ b/src/dh-parser.h @@ -0,0 +1,38 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2003 CodeFactory AB + * Copyright (C) 2003 Mikael Hallendal + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_PARSER_H +#define DH_PARSER_H + +#include + +G_BEGIN_DECLS + +gboolean dh_parser_read_file (GFile *index_file, + gchar **book_title, + gchar **book_id, + gchar **book_language, + GNode **book_tree, + GList **all_links, + GError **error); + +G_END_DECLS + +#endif /* DH_PARSER_H */ diff --git a/src/dh-preferences.c b/src/dh-preferences.c new file mode 100644 index 0000000..0568c50 --- /dev/null +++ b/src/dh-preferences.c @@ -0,0 +1,673 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2004-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2012 Thomas Bechtold + * + * 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, see . + */ + +#include "config.h" +#include "dh-preferences.h" + +#include + +#include "dh-book.h" +#include "dh-book-manager.h" +#include "dh-util.h" +#include "dh-settings.h" + +static GtkWidget *prefs_dialog = NULL; + +enum { + COLUMN_ENABLED = 0, + COLUMN_TITLE, + COLUMN_BOOK, + COLUMN_WEIGHT, + COLUMN_INCONSISTENT, + N_COLUMNS +}; + +typedef struct { + /* Fonts tab */ + GtkCheckButton *system_fonts_button; + GtkGrid *fonts_grid; + GtkFontButton *variable_font_button; + GtkFontButton *fixed_font_button; + guint use_system_fonts_id; + guint system_var_id; + guint system_fixed_id; + guint var_id; + guint fixed_id; + + /* Book Shelf tab */ + GtkCellRendererToggle *bookshelf_enabled_toggle; + GtkListStore *bookshelf_store; + GtkCheckButton *bookshelf_group_by_language_button; +} DhPreferencesPrivate; + +G_DEFINE_TYPE_WITH_PRIVATE (DhPreferences, dh_preferences, GTK_TYPE_DIALOG) + +static void +dh_preferences_response (GtkDialog *dlg, + gint response_id) +{ + gtk_widget_destroy (GTK_WIDGET (dlg)); +} + +static void +dh_preferences_class_init (DhPreferencesClass *klass) +{ + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + GtkDialogClass *dialog_class = GTK_DIALOG_CLASS (klass); + + dialog_class->response = dh_preferences_response; + + /* Bind class to template */ + gtk_widget_class_set_template_from_resource (widget_class, + "/org/gnome/devhelp/dh-preferences.ui"); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, system_fonts_button); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, fonts_grid); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, variable_font_button); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, fixed_font_button); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, bookshelf_store); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, bookshelf_group_by_language_button); + gtk_widget_class_bind_template_child_private (widget_class, DhPreferences, bookshelf_enabled_toggle); +} + +static void +preferences_bookshelf_clean_store (DhPreferences *prefs) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + + gtk_list_store_clear (priv->bookshelf_store); +} + +/* Tries to find, starting at 'first' (if given): + * - An exact match of the book + * - The book which should be just after our given book: + * - If first is set, the next book must be in the same language group + * as the given book. + * - If first is NOT set, we don't care about language groups as we're + * iterating from the beginning of the list. + * - Both. + */ +static void +preferences_bookshelf_find_book (DhPreferences *prefs, + DhBook *book, + const GtkTreeIter *first, + GtkTreeIter *exact_iter, + gboolean *exact_found, + GtkTreeIter *next_iter, + gboolean *next_found) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + GtkTreeIter loop_iter; + + g_assert ((exact_iter && exact_found) || (next_iter && next_found)); + + /* Reset all flags to not found */ + if (exact_found) + *exact_found = FALSE; + if (next_found) + *next_found = FALSE; + + /* Setup iteration start */ + if (!first) { + /* If no first given, start iterating from the start of the model */ + if (!gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->bookshelf_store), &loop_iter)) { + /* Store is empty, not found */ + return; + } + } else { + loop_iter = *first; + } + + do { + DhBook *in_list_book = NULL; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter, + COLUMN_BOOK, &in_list_book, + -1); + + /* We may have reached the start of the next language group here */ + if (first && !in_list_book) { + *next_iter = loop_iter; + *next_found = TRUE; + return; + } + + /* We can compare pointers directly as we're playing with references + * of the same object */ + if (exact_iter && + in_list_book == book) { + *exact_iter = loop_iter; + *exact_found = TRUE; + if (!next_iter) { + /* If we were not requested to look for the next one, end here */ + g_object_unref (in_list_book); + return; + } + } else if (next_iter && + dh_book_cmp_by_title (in_list_book, book) > 0) { + *next_iter = loop_iter; + *next_found = TRUE; + g_object_unref (in_list_book); + return; + } + + if (in_list_book) + g_object_unref (in_list_book); + } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter)); +} + +/* Tries to find: + * - An exact match of the language group + * - The language group which should be just after our given language group. + * - Both. + */ +static void +preferences_bookshelf_find_language_group (DhPreferences *prefs, + const gchar *language, + GtkTreeIter *exact_iter, + gboolean *exact_found, + GtkTreeIter *next_iter, + gboolean *next_found) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + GtkTreeIter loop_iter; + + g_assert ((exact_iter && exact_found) || (next_iter && next_found)); + + /* Reset all flags to not found */ + if (exact_found) + *exact_found = FALSE; + if (next_found) + *next_found = FALSE; + + if (!gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter)) { + /* Store is empty, not found */ + return; + } + + do { + DhBook *book = NULL; + gchar *title = NULL; + + /* Look for language titles, which are those where there + * is no book object associated in the row */ + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter, + COLUMN_TITLE, &title, + COLUMN_BOOK, &book, + -1); + + /* If we got a book, it's not a language row */ + if (book) { + g_free (title); + g_object_unref (book); + continue; + } + + if (exact_iter && + g_ascii_strcasecmp (title, language) == 0) { + /* Exact match found! */ + *exact_iter = loop_iter; + *exact_found = TRUE; + if (!next_iter) { + /* If we were not requested to look for the next one, end here */ + g_free (title); + return; + } + } else if (next_iter && + g_ascii_strcasecmp (title, language) > 0) { + *next_iter = loop_iter; + *next_found = TRUE; + /* There's no way to have an exact match after the next, so end here */ + g_free (title); + return; + } + + g_free (title); + } while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter)); +} + +static void +preferences_bookshelf_add_book_to_store (DhPreferences *prefs, + DhBook *book, + gboolean group_by_language) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + GtkTreeIter book_iter; + + /* If grouping by language we need to add the language categories */ + if (group_by_language) { + gchar *indented_title; + GtkTreeIter language_iter; + gboolean language_iter_found; + GtkTreeIter next_language_iter; + gboolean next_language_iter_found; + const gchar *language_title; + gboolean first_in_language = FALSE; + + language_title = dh_book_get_language (book); + + /* Look for the proper language group */ + preferences_bookshelf_find_language_group (prefs, + language_title, + &language_iter, + &language_iter_found, + &next_language_iter, + &next_language_iter_found); + /* New language group needs to be created? */ + if (!language_iter_found) { + if (!next_language_iter_found) { + gtk_list_store_append (priv->bookshelf_store, + &language_iter); + } else { + gtk_list_store_insert_before (priv->bookshelf_store, + &language_iter, + &next_language_iter); + } + + gtk_list_store_set (priv->bookshelf_store, + &language_iter, + COLUMN_ENABLED, dh_book_get_enabled (book), + COLUMN_TITLE, language_title, + COLUMN_BOOK, NULL, + COLUMN_WEIGHT, PANGO_WEIGHT_BOLD, + COLUMN_INCONSISTENT, FALSE, + -1); + + first_in_language = TRUE; + } + + /* If we got to add first book in a given language group, just append it. */ + if (first_in_language) { + gtk_list_store_insert_after (priv->bookshelf_store, + &book_iter, + &language_iter); + } else { + GtkTreeIter first_book_iter; + GtkTreeIter next_book_iter; + gboolean next_book_iter_found; + gboolean language_inconsistent = FALSE; + gboolean language_enabled = FALSE; + + /* We may need to reset the inconsistent status of the language item */ + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &language_iter, + COLUMN_ENABLED, &language_enabled, + COLUMN_INCONSISTENT, &language_inconsistent, + -1); + /* If inconsistent already, do nothing */ + if (!language_inconsistent) { + if (language_enabled != dh_book_get_enabled (book)) { + gtk_list_store_set (priv->bookshelf_store, + &language_iter, + COLUMN_INCONSISTENT, TRUE, + -1); + } + } + + /* The language will have at least one book, so we move iter to it */ + first_book_iter = language_iter; + gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->bookshelf_store), &first_book_iter); + + /* Find next possible book in language group */ + preferences_bookshelf_find_book (prefs, + book, + &first_book_iter, + NULL, + NULL, + &next_book_iter, + &next_book_iter_found); + if (!next_book_iter_found) { + gtk_list_store_append (priv->bookshelf_store, + &book_iter); + } else { + gtk_list_store_insert_before (priv->bookshelf_store, + &book_iter, + &next_book_iter); + } + } + + /* Add new item with indented title */ + indented_title = g_strdup_printf (" %s", dh_book_get_title (book)); + gtk_list_store_set (priv->bookshelf_store, + &book_iter, + COLUMN_ENABLED, dh_book_get_enabled (book), + COLUMN_TITLE, indented_title, + COLUMN_BOOK, book, + COLUMN_WEIGHT, PANGO_WEIGHT_NORMAL, + COLUMN_INCONSISTENT, FALSE, + -1); + g_free (indented_title); + } else { + /* No language grouping, just order by book title */ + GtkTreeIter next_book_iter; + gboolean next_book_iter_found; + + preferences_bookshelf_find_book (prefs, + book, + NULL, + NULL, + NULL, + &next_book_iter, + &next_book_iter_found); + if (!next_book_iter_found) { + gtk_list_store_append (priv->bookshelf_store, + &book_iter); + } else { + gtk_list_store_insert_before (priv->bookshelf_store, + &book_iter, + &next_book_iter); + } + + gtk_list_store_set (priv->bookshelf_store, + &book_iter, + COLUMN_ENABLED, dh_book_get_enabled (book), + COLUMN_TITLE, dh_book_get_title (book), + COLUMN_BOOK, book, + COLUMN_WEIGHT, PANGO_WEIGHT_NORMAL, + -1); + } +} + +static void +preferences_bookshelf_populate_store (DhPreferences *prefs) +{ + DhBookManager *book_manager; + GList *l; + gboolean group_by_language; + + book_manager = dh_book_manager_get_singleton (); + group_by_language = dh_book_manager_get_group_by_language (book_manager); + + /* This list already comes ordered, but we don't care */ + for (l = dh_book_manager_get_books (book_manager); + l; + l = g_list_next (l)) { + preferences_bookshelf_add_book_to_store (prefs, + DH_BOOK (l->data), + group_by_language); + } +} + +static void +preferences_bookshelf_group_by_language_cb (GObject *object, + GParamSpec *pspec, + DhPreferences *prefs) +{ + preferences_bookshelf_clean_store (prefs); + preferences_bookshelf_populate_store (prefs); +} + +static void +preferences_bookshelf_set_language_inconsistent (DhPreferences *prefs, + const gchar *language) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + GtkTreeIter loop_iter; + GtkTreeIter language_iter; + gboolean language_iter_found; + gboolean one_book_enabled = FALSE; + gboolean one_book_disabled = FALSE; + + preferences_bookshelf_find_language_group (prefs, + language, + &language_iter, + &language_iter_found, + NULL, + NULL); + if (!language_iter_found) { + return; + } + + loop_iter = language_iter; + while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter)) { + DhBook *book; + gboolean enabled; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter, + COLUMN_BOOK, &book, + COLUMN_ENABLED, &enabled, + -1); + if (!book) { + /* Reached next language group */ + break; + } + g_object_unref (book); + + if (enabled) + one_book_enabled = TRUE; + else + one_book_disabled = TRUE; + + if (one_book_enabled == one_book_disabled) + break; + } + + /* If at least one book is enabled AND another book is disabled, + * we need to set inconsistent state */ + if (one_book_enabled == one_book_disabled) { + gtk_list_store_set (priv->bookshelf_store, &language_iter, + COLUMN_INCONSISTENT, TRUE, + -1); + return; + } + + gtk_list_store_set (priv->bookshelf_store, &language_iter, + COLUMN_ENABLED, one_book_enabled, + COLUMN_INCONSISTENT, FALSE, + -1); +} + +static void +preferences_bookshelf_book_deleted_cb (DhBookManager *book_manager, + DhBook *book, + DhPreferences *prefs) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + GtkTreeIter exact_iter; + gboolean exact_iter_found; + + preferences_bookshelf_find_book (prefs, + book, + NULL, + &exact_iter, + &exact_iter_found, + NULL, + NULL); + if (exact_iter_found) { + gtk_list_store_remove (priv->bookshelf_store, &exact_iter); + preferences_bookshelf_set_language_inconsistent (prefs, dh_book_get_language (book)); + } +} + +static void +preferences_bookshelf_book_created_cb (DhBookManager *book_manager, + DhBook *book, + DhPreferences *prefs) +{ + gboolean group_by_language; + + group_by_language = dh_book_manager_get_group_by_language (book_manager); + preferences_bookshelf_add_book_to_store (prefs, book, group_by_language); +} + +static void +preferences_bookshelf_tree_selection_toggled_cb (GtkCellRendererToggle *cell_renderer, + gchar *path, + DhPreferences *prefs) +{ + DhPreferencesPrivate *priv = dh_preferences_get_instance_private (prefs); + DhBookManager *book_manager; + GtkTreeIter iter; + + book_manager = dh_book_manager_get_singleton (); + + if (gtk_tree_model_get_iter_from_string (GTK_TREE_MODEL (priv->bookshelf_store), + &iter, + path)) { + gpointer book = NULL; + gboolean enabled; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &iter, + COLUMN_BOOK, &book, + COLUMN_ENABLED, &enabled, + -1); + + if (book) { + /* Update book conf */ + dh_book_set_enabled (book, !enabled); + + gtk_list_store_set (priv->bookshelf_store, &iter, + COLUMN_ENABLED, !enabled, + -1); + /* Now we need to look for the language group of this item, + * in order to set the inconsistent state if applies */ + if (dh_book_manager_get_group_by_language (book_manager)) { + preferences_bookshelf_set_language_inconsistent (prefs, dh_book_get_language (book)); + } + + } else { + GtkTreeIter loop_iter; + + /* We should only reach this if we are grouping by language */ + g_assert (dh_book_manager_get_group_by_language (book_manager) == TRUE); + + /* Set new status in the language group item */ + gtk_list_store_set (priv->bookshelf_store, &iter, + COLUMN_ENABLED, !enabled, + COLUMN_INCONSISTENT, FALSE, + -1); + + /* And set new status in all books of the same language */ + loop_iter = iter; + while (gtk_tree_model_iter_next (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter)) { + gtk_tree_model_get (GTK_TREE_MODEL (priv->bookshelf_store), + &loop_iter, + COLUMN_BOOK, &book, + -1); + if (!book) { + /* Found next language group, finish */ + return; + } + + /* Update book conf */ + dh_book_set_enabled (book, !enabled); + + gtk_list_store_set (priv->bookshelf_store, + &loop_iter, + COLUMN_ENABLED, !enabled, + -1); + } + } + } +} + +static void +dh_preferences_init (DhPreferences *prefs) +{ + DhPreferencesPrivate *priv; + DhBookManager *book_manager; + DhSettings *settings; + GSettings *settings_fonts; + GSettings *settings_contents; + + priv = dh_preferences_get_instance_private (prefs); + + gtk_widget_init_template (GTK_WIDGET (prefs)); + + book_manager = dh_book_manager_get_singleton (); + + g_signal_connect_object (book_manager, + "book-created", + G_CALLBACK (preferences_bookshelf_book_created_cb), + prefs, + 0); + + g_signal_connect_object (book_manager, + "book-deleted", + G_CALLBACK (preferences_bookshelf_book_deleted_cb), + prefs, + 0); + + g_signal_connect_object (book_manager, + "notify::group-by-language", + G_CALLBACK (preferences_bookshelf_group_by_language_cb), + prefs, + 0); + + /* setup GSettings bindings */ + settings = dh_settings_get_singleton (); + settings_fonts = dh_settings_peek_fonts_settings (settings); + settings_contents = dh_settings_peek_contents_settings (settings); + g_settings_bind (settings_fonts, "use-system-fonts", + priv->system_fonts_button, "active", + G_SETTINGS_BIND_DEFAULT); + g_settings_bind (settings_fonts, "use-system-fonts", + priv->fonts_grid, "sensitive", + G_SETTINGS_BIND_DEFAULT | G_SETTINGS_BIND_INVERT_BOOLEAN); + g_settings_bind (settings_fonts, "fixed-font", + priv->fixed_font_button, "font-name", + G_SETTINGS_BIND_DEFAULT); + g_settings_bind (settings_fonts, "variable-font", + priv->variable_font_button, "font-name", + G_SETTINGS_BIND_DEFAULT); + + g_settings_bind (settings_contents, "group-books-by-language", + priv->bookshelf_group_by_language_button, "active", + G_SETTINGS_BIND_DEFAULT); + + g_signal_connect (priv->bookshelf_enabled_toggle, + "toggled", + G_CALLBACK (preferences_bookshelf_tree_selection_toggled_cb), + prefs); + + preferences_bookshelf_populate_store (prefs); +} + +void +dh_preferences_show_dialog (GtkWindow *parent) +{ + g_return_if_fail (GTK_IS_WINDOW (parent)); + + if (prefs_dialog == NULL) { + prefs_dialog = GTK_WIDGET (g_object_new (DH_TYPE_PREFERENCES, + "use-header-bar", 1, + NULL)); + g_signal_connect (prefs_dialog, + "destroy", + G_CALLBACK (gtk_widget_destroyed), + &prefs_dialog); + } + + if (parent != gtk_window_get_transient_for (GTK_WINDOW (prefs_dialog))) { + gtk_window_set_transient_for (GTK_WINDOW (prefs_dialog), + parent); + gtk_window_set_destroy_with_parent (GTK_WINDOW (prefs_dialog), TRUE); + } + + gtk_window_present (GTK_WINDOW (prefs_dialog)); +} diff --git a/src/dh-preferences.h b/src/dh-preferences.h new file mode 100644 index 0000000..ddf515b --- /dev/null +++ b/src/dh-preferences.h @@ -0,0 +1,54 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2004-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * + * 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, see . + */ + +#ifndef DH_PREFERENCES_H +#define DH_PREFERENCES_H + +#include + +G_BEGIN_DECLS + +#define DH_TYPE_PREFERENCES (dh_preferences_get_type ()) +#define DH_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_PREFERENCES, DhPreferences)) +#define DH_PREFERENCES_CONST(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_PREFERENCES, DhPreferences const)) +#define DH_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_PREFERENCES, DhPreferencesClass)) +#define DH_IS_PREFERENCES(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_PREFERENCES)) +#define DH_IS_PREFERENCES_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_PREFERENCES)) +#define DH_PREFERENCES_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_PREFERENCES, DhPreferencesClass)) + +typedef struct _DhPreferences DhPreferences; +typedef struct _DhPreferencesClass DhPreferencesClass; + +struct _DhPreferences +{ + GtkDialog parent; +}; + +struct _DhPreferencesClass +{ + GtkDialogClass parent_class; +}; + +GType dh_preferences_get_type (void) G_GNUC_CONST; + +void dh_preferences_show_dialog (GtkWindow *parent); + +G_END_DECLS + +#endif /* DH_PREFERENCES_H */ diff --git a/src/dh-preferences.ui b/src/dh-preferences.ui new file mode 100644 index 0000000..e1749b7 --- /dev/null +++ b/src/dh-preferences.ui @@ -0,0 +1,287 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/src/dh-search-context.c b/src/dh-search-context.c new file mode 100644 index 0000000..8212434 --- /dev/null +++ b/src/dh-search-context.c @@ -0,0 +1,522 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-search-context.h" +#include + +/* DhSearchContext is a helper class for a search instance, with the search + * string as data. + */ + +struct _DhSearchContext { + /* The content of the search string: */ + + gchar *book_id; + gchar *page_id; + + // If non-NULL, contains at least one non-empty string. + GStrv keywords; + + /* Derived data: */ + + // Element-type: KeywordData*. + GSList *keywords_data; + + gchar *joined_keywords; + + guint case_sensitive : 1; +}; + +typedef struct _KeywordData { + gchar *keyword; + + /* Created only if has_glob and is_first. */ + GPatternSpec *pattern_spec_prefix; + + /* Created only if has_glob. */ + GPatternSpec *pattern_spec_anywhere; + + guint is_first : 1; + guint has_glob : 1; +} KeywordData; + +/* Process the input search string and extract: + * - If "book:" prefix given, a book_id; + * - If "page:" prefix given, a page_id; + * - All remaining keywords. + * + * "book:" and "page:" must be before the other keywords. + * + * Returns TRUE if the extraction is successfull, FALSE if the @search_string is + * invalid. + */ +static gboolean +process_search_string (DhSearchContext *search, + const gchar *search_string) +{ + gchar *processed = NULL; + GStrv tokens = NULL; + gint token_num; + gint keyword_num; + gboolean ret = TRUE; + + g_assert (search->book_id == NULL); + g_assert (search->page_id == NULL); + g_assert (search->keywords == NULL); + + /* First, remove all leading and trailing whitespaces in the search + * string. + */ + processed = g_strdup (search_string); + g_strstrip (processed); + + /* Also avoid words being separated by more than one whitespace, or + * g_strsplit() will give us empty strings. + */ + { + gchar *aux; + + aux = processed; + while ((aux = strchr (aux, ' ')) != NULL) { + g_strchug (++aux); + } + } + + /* If after all this we get an empty string, nothing else to do. */ + if (processed[0] == '\0') { + ret = FALSE; + goto out; + } + + /* Split the input string into tokens */ + tokens = g_strsplit (processed, " ", 0); + + /* Allocate output keywords */ + search->keywords = g_new0 (gchar *, g_strv_length (tokens) + 1); + keyword_num = 0; + + for (token_num = 0; tokens[token_num] != NULL; token_num++) { + const gchar *cur_token = tokens[token_num]; + const gchar *prefix; + gint prefix_len; + + /* Book prefix? */ + prefix = "book:"; + if (g_str_has_prefix (cur_token, prefix)) { + /* Must be before normal keywords. */ + if (keyword_num > 0) { + ret = FALSE; + goto out; + } + + prefix_len = strlen (prefix); + + /* If keyword given but no content, skip it. */ + if (cur_token[prefix_len] == '\0') { + continue; + } + + /* We got a second request of book, don't allow this. */ + if (search->book_id != NULL) { + ret = FALSE; + goto out; + } + + search->book_id = g_strdup (cur_token + prefix_len); + continue; + } + + /* Page prefix? */ + prefix = "page:"; + if (g_str_has_prefix (cur_token, prefix)) { + /* Must be before normal keywords. */ + if (keyword_num > 0) { + ret = FALSE; + goto out; + } + + prefix_len = strlen (prefix); + + /* If keyword given but no content, skip it. */ + if (cur_token[prefix_len] == '\0') { + continue; + } + + /* We got a second request of page, don't allow this. */ + if (search->page_id != NULL) { + ret = FALSE; + goto out; + } + + search->page_id = g_strdup (cur_token + prefix_len); + continue; + } + + /* Then, a new keyword to look for. */ + search->keywords[keyword_num] = g_strdup (cur_token); + keyword_num++; + } + + if (keyword_num == 0) { + g_free (search->keywords); + search->keywords = NULL; + } + +out: + g_free (processed); + g_strfreev (tokens); + return ret; +} + +static gboolean +contains_uppercase_letter (const gchar *str) +{ + const gchar *p; + + for (p = str; *p != '\0'; p++) { + if (g_ascii_isupper (*p)) + return TRUE; + } + + return FALSE; +} + +static void +set_case_sensitive (DhSearchContext *search) +{ + gint i; + + search->case_sensitive = FALSE; + + if (search->keywords == NULL) + return; + + /* Searches are case sensitive when any uppercase letter is used in the + * search terms, matching Vim smartcase behaviour. + */ + for (i = 0; search->keywords[i] != NULL; i++) { + const gchar *cur_keyword = search->keywords[i]; + + if (contains_uppercase_letter (cur_keyword)) { + search->case_sensitive = TRUE; + break; + } + } +} + +static KeywordData * +keyword_data_new (const gchar *keyword, + gboolean is_first) +{ + KeywordData *data; + + g_assert (keyword != NULL); + + data = g_new0 (KeywordData, 1); + + data->keyword = g_strdup (keyword); + data->is_first = is_first != FALSE; + data->has_glob = (strchr (keyword, '*') != NULL || + strchr (keyword, '?') != NULL); + + if (data->has_glob) { + gchar *pattern; + + if (is_first) { + pattern = g_strdup_printf ("%s*", keyword); + data->pattern_spec_prefix = g_pattern_spec_new (pattern); + g_free (pattern); + } + + pattern = g_strdup_printf ("*%s*", keyword); + data->pattern_spec_anywhere = g_pattern_spec_new (pattern); + g_free (pattern); + } + + return data; +} + +static void +keyword_data_free (gpointer _data) +{ + KeywordData *data = _data; + + if (data == NULL) + return; + + g_free (data->keyword); + + if (data->pattern_spec_prefix != NULL) + g_pattern_spec_free (data->pattern_spec_prefix); + + if (data->pattern_spec_anywhere != NULL) + g_pattern_spec_free (data->pattern_spec_anywhere); + + g_free (data); +} + +static void +create_keywords_data (DhSearchContext *search) +{ + gint keyword_num; + + g_assert (search->keywords_data == NULL); + + if (search->keywords == NULL) + return; + + for (keyword_num = 0; search->keywords[keyword_num] != NULL; keyword_num++) { + const gchar *cur_keyword = search->keywords[keyword_num]; + KeywordData *data; + + data = keyword_data_new (cur_keyword, keyword_num == 0); + search->keywords_data = g_slist_prepend (search->keywords_data, data); + } + + search->keywords_data = g_slist_reverse (search->keywords_data); +} + +static void +join_keywords (DhSearchContext *search) +{ + g_assert (search->joined_keywords == NULL); + + if (search->keywords == NULL) + return; + + search->joined_keywords = g_strjoinv (" ", search->keywords); +} + +/* Returns: (transfer full) (nullable): a new #DhSearchContext, or %NULL if + * @search_string is invalid. + */ +DhSearchContext * +_dh_search_context_new (const gchar *search_string) +{ + DhSearchContext *search; + + g_return_val_if_fail (search_string != NULL, NULL); + + search = g_new0 (DhSearchContext, 1); + + if (!process_search_string (search, search_string)) { + _dh_search_context_free (search); + return NULL; + } + + set_case_sensitive (search); + create_keywords_data (search); + join_keywords (search); + + return search; +} + +void +_dh_search_context_free (DhSearchContext *search) +{ + if (search == NULL) + return; + + g_free (search->book_id); + g_free (search->page_id); + g_strfreev (search->keywords); + g_slist_free_full (search->keywords_data, keyword_data_free); + g_free (search->joined_keywords); + + g_free (search); +} + +const gchar * +_dh_search_context_get_book_id (DhSearchContext *search) +{ + g_return_val_if_fail (search != NULL, NULL); + + return search->book_id; +} + +const gchar * +_dh_search_context_get_page_id (DhSearchContext *search) +{ + g_return_val_if_fail (search != NULL, NULL); + + return search->page_id; +} + +GStrv +_dh_search_context_get_keywords (DhSearchContext *search) +{ + g_return_val_if_fail (search != NULL, NULL); + + return search->keywords; +} + +gboolean +_dh_search_context_get_case_sensitive (DhSearchContext *search) +{ + g_return_val_if_fail (search != NULL, FALSE); + + return search->case_sensitive; +} + +gboolean +_dh_search_context_match_book (DhSearchContext *search, + DhBook *book) +{ + g_return_val_if_fail (search != NULL, FALSE); + g_return_val_if_fail (DH_IS_BOOK (book), FALSE); + + if (!dh_book_get_enabled (book)) + return FALSE; + + if (search->book_id == NULL) + return TRUE; + + return g_strcmp0 (search->book_id, dh_book_get_id (book)) == 0; +} + +/* This function assumes that _dh_search_context_match_book() returns TRUE for + * the DhBook containing @link (to avoid checking the book_id for each DhLink). + */ +gboolean +_dh_search_context_match_link (DhSearchContext *search, + DhLink *link, + gboolean prefix) +{ + gchar *str_to_free = NULL; + const gchar *link_name; + gboolean match = FALSE; + GSList *l; + + g_return_val_if_fail (search != NULL, FALSE); + g_return_val_if_fail (link != NULL, FALSE); + + /* Filter by page? */ + if (search->page_id != NULL) { + if (!dh_link_belongs_to_page (link, search->page_id)) + return FALSE; + + if (search->keywords == NULL) + /* Show all in the page, but only if prefix=TRUE, to not + * match two times the same link. + */ + return prefix; + } + + if (search->keywords == NULL) + return FALSE; + + if (search->case_sensitive) { + link_name = dh_link_get_name (link); + } else { + str_to_free = g_ascii_strdown (dh_link_get_name (link), -1); + link_name = str_to_free; + } + + g_return_val_if_fail (link_name != NULL, FALSE); + + /* Why isn't there only one GPatternSpec (or two variants: + * prefix/anywhere) for all the keywords? For example searching + * "dh_link_ book" (two keywords) would create the GPatternSpec + * "dh_link_*book*". Although the implementation would be simpler, doing + * so would be a regression in functionality. It is explained in details + * in the user documentation of the Devhelp app. + */ + + /* Why matching by prefix only for the first keyword and not the others? + * For several reasons: + * - When prefix=TRUE, if data->pattern_spec_prefix was used for all + * keywords, it would be impossible to match the DhLink name (except + * if all the keywords are equal for example, but it doesn't make + * sense to do such a search). + * - At least with the GTK+/GNOME APIs, normally all the symbols start + * with the namespace of the library. So when we search symbols, if we + * know in which library the symbol(s) is located, we can type the + * namespace as first keyword. With prefix=TRUE, this will match the + * namespace. + */ + + /* Use simple string functions when the keyword doesn't contain globs, + * to improve performances (this function can be called on *every* + * DhLink). + */ + + for (l = search->keywords_data; l != NULL; l = l->next) { + KeywordData *data = l->data; + + if (data->is_first) { + if (data->has_glob) { + if (prefix) { + match = g_pattern_match_string (data->pattern_spec_prefix, link_name); + } else { + match = (!g_pattern_match_string (data->pattern_spec_prefix, link_name) && + g_pattern_match_string (data->pattern_spec_anywhere, link_name)); + } + } else { + if (prefix) { + match = g_str_has_prefix (link_name, data->keyword); + } else { + match = (!g_str_has_prefix (link_name, data->keyword) && + strstr (link_name, data->keyword) != NULL); + } + } + } else { + if (data->has_glob) { + match = g_pattern_match_string (data->pattern_spec_anywhere, link_name); + } else { + match = strstr (link_name, data->keyword) != NULL; + } + } + + if (!match) + break; + } + + g_free (str_to_free); + return match; +} + +/* This function assumes: + * - That _dh_search_context_match_book() returns TRUE for the DhBook containing + * @link (to avoid checking the book_id for each DhLink). + * - That _dh_search_context_match_link(prefix=TRUE) returns TRUE for @link. + */ +gboolean +_dh_search_context_is_exact_link (DhSearchContext *search, + DhLink *link) +{ + const gchar *name; + + g_return_val_if_fail (search != NULL, FALSE); + g_return_val_if_fail (link != NULL, FALSE); + + if (search->page_id != NULL && search->keywords == NULL) { + DhLinkType link_type; + + link_type = dh_link_get_link_type (link); + + /* Can be DH_LINK_TYPE_BOOK for page_id "index". */ + return (link_type == DH_LINK_TYPE_BOOK || + link_type == DH_LINK_TYPE_PAGE); + } + + if (search->keywords == NULL) + return FALSE; + + name = dh_link_get_name (link); + return g_strcmp0 (name, search->joined_keywords) == 0; +} diff --git a/src/dh-search-context.h b/src/dh-search-context.h new file mode 100644 index 0000000..a10fce4 --- /dev/null +++ b/src/dh-search-context.h @@ -0,0 +1,63 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_SEARCH_CONTEXT_H +#define DH_SEARCH_CONTEXT_H + +#include +#include "dh-book.h" +#include "dh-link.h" + +G_BEGIN_DECLS + +typedef struct _DhSearchContext DhSearchContext; + +G_GNUC_INTERNAL +DhSearchContext * _dh_search_context_new (const gchar *search_string); + +G_GNUC_INTERNAL +void _dh_search_context_free (DhSearchContext *search); + +G_GNUC_INTERNAL +const gchar * _dh_search_context_get_book_id (DhSearchContext *search); + +G_GNUC_INTERNAL +const gchar * _dh_search_context_get_page_id (DhSearchContext *search); + +G_GNUC_INTERNAL +GStrv _dh_search_context_get_keywords (DhSearchContext *search); + +G_GNUC_INTERNAL +gboolean _dh_search_context_get_case_sensitive (DhSearchContext *search); + +G_GNUC_INTERNAL +gboolean _dh_search_context_match_book (DhSearchContext *search, + DhBook *book); + +G_GNUC_INTERNAL +gboolean _dh_search_context_match_link (DhSearchContext *search, + DhLink *link, + gboolean prefix); + +G_GNUC_INTERNAL +gboolean _dh_search_context_is_exact_link (DhSearchContext *search, + DhLink *link); + +G_END_DECLS + +#endif /* DH_SEARCH_CONTEXT_H */ diff --git a/src/dh-settings.c b/src/dh-settings.c new file mode 100644 index 0000000..4bc4845 --- /dev/null +++ b/src/dh-settings.c @@ -0,0 +1,228 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2012 Thomas Bechtold + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "config.h" +#include "dh-settings.h" + +/* Devhelp GSettings schema IDs */ +#define SETTINGS_SCHEMA_ID_WINDOW "org.gnome.devhelp.state.main.window" +#define SETTINGS_SCHEMA_ID_PANED "org.gnome.devhelp.state.main.paned" +#define SETTINGS_SCHEMA_ID_CONTENTS "org.gnome.devhelp.state.main.contents" +#define SETTINGS_SCHEMA_ID_ASSISTANT "org.gnome.devhelp.state.assistant.window" +#define SETTINGS_SCHEMA_ID_FONTS "org.gnome.devhelp.fonts" + +/* Provided by the gsettings-desktop-schemas module. */ +#define SETTINGS_SCHEMA_ID_DESKTOP_INTERFACE "org.gnome.desktop.interface" +#define SYSTEM_FIXED_FONT_KEY "monospace-font-name" +#define SYSTEM_VARIABLE_FONT_KEY "font-name" + +struct _DhSettingsPrivate { + GSettings *settings_window; + GSettings *settings_paned; + GSettings *settings_contents; + GSettings *settings_assistant; + GSettings *settings_fonts; + GSettings *settings_desktop_interface; +}; + +enum { + FONTS_CHANGED, + N_SIGNALS +}; + +static guint signals[N_SIGNALS] = { 0 }; + +/* DhSettings is a singleton. */ +static DhSettings *singleton = NULL; + +G_DEFINE_TYPE_WITH_PRIVATE (DhSettings, dh_settings, G_TYPE_OBJECT); + +static void +dh_settings_dispose (GObject *object) +{ + DhSettings *self = DH_SETTINGS (object); + + g_clear_object (&self->priv->settings_window); + g_clear_object (&self->priv->settings_paned); + g_clear_object (&self->priv->settings_contents); + g_clear_object (&self->priv->settings_assistant); + g_clear_object (&self->priv->settings_fonts); + g_clear_object (&self->priv->settings_desktop_interface); + + G_OBJECT_CLASS (dh_settings_parent_class)->dispose (object); +} + +static void +dh_settings_finalize (GObject *object) +{ + if (singleton == DH_SETTINGS (object)) + singleton = NULL; + + G_OBJECT_CLASS (dh_settings_parent_class)->finalize (object); +} + +static void +dh_settings_class_init (DhSettingsClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->dispose = dh_settings_dispose; + object_class->finalize = dh_settings_finalize; + + signals[FONTS_CHANGED] = + g_signal_new ("fonts-changed", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DhSettingsClass, fonts_changed), + NULL, NULL, NULL, + G_TYPE_NONE, + 2, + G_TYPE_STRING, + G_TYPE_STRING); +} + +static void +fonts_changed_cb (GSettings *gsettings, + gchar *key, + gpointer user_data) +{ + DhSettings *self = DH_SETTINGS (user_data); + gchar *fixed_font = NULL; + gchar *variable_font = NULL; + + dh_settings_get_selected_fonts (self, &fixed_font, &variable_font); + + g_signal_emit (self, signals[FONTS_CHANGED], 0, fixed_font, variable_font); + + g_free (fixed_font); + g_free (variable_font); +} + +static void +dh_settings_init (DhSettings *self) +{ + self->priv = dh_settings_get_instance_private (self); + + self->priv->settings_window = g_settings_new (SETTINGS_SCHEMA_ID_WINDOW); + self->priv->settings_paned = g_settings_new (SETTINGS_SCHEMA_ID_PANED); + self->priv->settings_contents = g_settings_new (SETTINGS_SCHEMA_ID_CONTENTS); + self->priv->settings_assistant = g_settings_new (SETTINGS_SCHEMA_ID_ASSISTANT); + self->priv->settings_fonts = g_settings_new (SETTINGS_SCHEMA_ID_FONTS); + self->priv->settings_desktop_interface = g_settings_new (SETTINGS_SCHEMA_ID_DESKTOP_INTERFACE); + + g_signal_connect_object (self->priv->settings_fonts, + "changed", + G_CALLBACK (fonts_changed_cb), + self, + 0); + + g_signal_connect_object (self->priv->settings_desktop_interface, + "changed::" SYSTEM_FIXED_FONT_KEY, + G_CALLBACK (fonts_changed_cb), + self, + 0); + + g_signal_connect_object (self->priv->settings_desktop_interface, + "changed::" SYSTEM_VARIABLE_FONT_KEY, + G_CALLBACK (fonts_changed_cb), + self, + 0); +} + +DhSettings * +dh_settings_get_singleton (void) +{ + if (singleton == NULL) + singleton = g_object_new (DH_TYPE_SETTINGS, NULL); + + return singleton; +} + +void +_dh_settings_unref_singleton (void) +{ + if (singleton != NULL) + g_object_unref (singleton); + + /* singleton is not set to NULL here, it is set to NULL in + * dh_settings_finalize() (i.e. when we are sure that the ref count + * reaches 0). + */ +} + +GSettings * +dh_settings_peek_window_settings (DhSettings *self) +{ + g_return_val_if_fail (DH_IS_SETTINGS (self), NULL); + return self->priv->settings_window; +} + +GSettings * +dh_settings_peek_paned_settings (DhSettings *self) +{ + g_return_val_if_fail (DH_IS_SETTINGS (self), NULL); + return self->priv->settings_paned; +} + +GSettings * +dh_settings_peek_contents_settings (DhSettings *self) +{ + g_return_val_if_fail (DH_IS_SETTINGS (self), NULL); + return self->priv->settings_contents; +} + +GSettings * +dh_settings_peek_assistant_settings (DhSettings *self) +{ + g_return_val_if_fail (DH_IS_SETTINGS (self), NULL); + return self->priv->settings_assistant; +} + +GSettings * +dh_settings_peek_fonts_settings (DhSettings *self) +{ + g_return_val_if_fail (DH_IS_SETTINGS (self), NULL); + return self->priv->settings_fonts; +} + +void +dh_settings_get_selected_fonts (DhSettings *self, + gchar **font_name_fixed, + gchar **font_name_variable) +{ + gboolean use_system_font; + + g_return_if_fail (DH_IS_SETTINGS (self)); + g_return_if_fail (font_name_fixed != NULL && *font_name_fixed == NULL); + g_return_if_fail (font_name_variable != NULL && *font_name_variable == NULL); + + use_system_font = g_settings_get_boolean (self->priv->settings_fonts, "use-system-fonts"); + + if (use_system_font) { + *font_name_fixed = g_settings_get_string (self->priv->settings_desktop_interface, + SYSTEM_FIXED_FONT_KEY); + *font_name_variable = g_settings_get_string (self->priv->settings_desktop_interface, + SYSTEM_VARIABLE_FONT_KEY); + } else { + *font_name_fixed = g_settings_get_string (self->priv->settings_fonts, + "fixed-font"); + *font_name_variable = g_settings_get_string (self->priv->settings_fonts, + "variable-font"); + } +} diff --git a/src/dh-settings.h b/src/dh-settings.h new file mode 100644 index 0000000..c977121 --- /dev/null +++ b/src/dh-settings.h @@ -0,0 +1,75 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2012 Thomas Bechtold + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_SETTINGS_H +#define DH_SETTINGS_H + +#include + +G_BEGIN_DECLS + +#define DH_TYPE_SETTINGS (dh_settings_get_type ()) +#define DH_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_SETTINGS, DhSettings)) +#define DH_IS_SETTINGS(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_SETTINGS)) +#define DH_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_SETTINGS, DhSettingsClass)) +#define DH_IS_SETTINGS_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_SETTINGS)) +#define DH_SETTINGS_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_SETTINGS, DhSettingsClass)) + +typedef struct _DhSettings DhSettings; +typedef struct _DhSettingsClass DhSettingsClass; +typedef struct _DhSettingsPrivate DhSettingsPrivate; + +struct _DhSettings { + GObject parent; + DhSettingsPrivate *priv; +}; + +struct _DhSettingsClass { + GObjectClass parent; + + /* Signals */ + void (*fonts_changed) (DhSettings *settings, + const gchar *font_name_fixed, + const gchar *font_name_variable); +}; + +GType dh_settings_get_type (void) G_GNUC_CONST; + +DhSettings * dh_settings_get_singleton (void); + +G_GNUC_INTERNAL +void _dh_settings_unref_singleton (void); + +GSettings * dh_settings_peek_window_settings (DhSettings *self); + +GSettings * dh_settings_peek_paned_settings (DhSettings *self); + +GSettings * dh_settings_peek_contents_settings (DhSettings *self); + +GSettings * dh_settings_peek_assistant_settings (DhSettings *self); + +GSettings * dh_settings_peek_fonts_settings (DhSettings *self); + +void dh_settings_get_selected_fonts (DhSettings *self, + gchar **font_name_fixed, + gchar **font_name_variable); + +G_END_DECLS + +#endif /* DH_SETTINGS_H */ diff --git a/src/dh-sidebar.c b/src/dh-sidebar.c new file mode 100644 index 0000000..c1656e0 --- /dev/null +++ b/src/dh-sidebar.c @@ -0,0 +1,674 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2003 CodeFactory AB + * Copyright (C) 2001-2003 Mikael Hallendal + * Copyright (C) 2005-2008 Imendio AB + * Copyright (C) 2010 Lanedo GmbH + * Copyright (C) 2013 Aleksander Morgado + * Copyright (C) 2015, 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-sidebar.h" +#include "dh-book.h" +#include "dh-book-tree.h" +#include "dh-keyword-model.h" + +/** + * SECTION:dh-sidebar + * @Title: DhSidebar + * @Short_description: The sidebar + * + * In the Devhelp application, there is one #DhSidebar per main window, + * displayed in the left side panel. + * + * A #DhSidebar contains: + * - a #GtkSearchEntry at the top; + * - a #DhBookTree (a subclass of #GtkTreeView); + * - another #GtkTreeView (displaying a list, not a tree) with a #DhKeywordModel + * as its model. + * + * When the #GtkSearchEntry is empty, the #DhBookTree is shown. When the + * #GtkSearchEntry is not empty, it shows the search results in the other + * #GtkTreeView. The two #GtkTreeView's cannot be both visible at the same time, + * it's either one or the other. + * + * The #DhSidebar::link-selected signal is emitted when one element in one of + * the #GtkTreeView's is selected. When that happens, the Devhelp application + * opens the link in a #WebKitWebView shown at the right side of the main + * window. + */ + +typedef struct { + /* A GtkSearchEntry. */ + GtkEntry *entry; + + DhBookTree *book_tree; + GtkScrolledWindow *sw_book_tree; + + DhKeywordModel *hitlist_model; + GtkTreeView *hitlist_view; + GtkScrolledWindow *sw_hitlist; + + guint idle_complete_id; + guint idle_search_id; +} DhSidebarPrivate; + +enum { + SIGNAL_LINK_SELECTED, + N_SIGNALS +}; + +static guint signals[N_SIGNALS] = { 0 }; + +G_DEFINE_TYPE_WITH_PRIVATE (DhSidebar, dh_sidebar, GTK_TYPE_GRID) + +static void +dh_sidebar_dispose (GObject *object) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (DH_SIDEBAR (object)); + + g_clear_object (&priv->hitlist_model); + + if (priv->idle_complete_id != 0) { + g_source_remove (priv->idle_complete_id); + priv->idle_complete_id = 0; + } + + if (priv->idle_search_id != 0) { + g_source_remove (priv->idle_search_id); + priv->idle_search_id = 0; + } + + G_OBJECT_CLASS (dh_sidebar_parent_class)->dispose (object); +} + +static void +dh_sidebar_class_init (DhSidebarClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->dispose = dh_sidebar_dispose; + + /** + * DhSidebar::link-selected: + * @sidebar: a #DhSidebar. + * @link: the selected #DhLink. + */ + signals[SIGNAL_LINK_SELECTED] = + g_signal_new ("link-selected", + G_TYPE_FROM_CLASS (klass), + G_SIGNAL_RUN_LAST, + G_STRUCT_OFFSET (DhSidebarClass, link_selected), + NULL, NULL, NULL, + G_TYPE_NONE, + 1, DH_TYPE_LINK); +} + +/******************************************************************************/ + +static gboolean +search_idle_cb (gpointer user_data) +{ + DhSidebar *sidebar = DH_SIDEBAR (user_data); + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + const gchar *search_text; + const gchar *book_id; + DhLink *book_link; + DhLink *exact_link; + + priv->idle_search_id = 0; + + search_text = gtk_entry_get_text (priv->entry); + + book_link = dh_book_tree_get_selected_book (priv->book_tree); + book_id = book_link != NULL ? dh_link_get_book_id (book_link) : NULL; + + /* Disconnect the model, see the doc of dh_keyword_model_filter(). */ + gtk_tree_view_set_model (priv->hitlist_view, NULL); + + exact_link = dh_keyword_model_filter (priv->hitlist_model, + search_text, + book_id, + NULL); + + gtk_tree_view_set_model (priv->hitlist_view, + GTK_TREE_MODEL (priv->hitlist_model)); + + if (exact_link != NULL) + g_signal_emit (sidebar, signals[SIGNAL_LINK_SELECTED], 0, exact_link); + + if (book_link != NULL) + dh_link_unref (book_link); + + return G_SOURCE_REMOVE; +} + +static void +setup_search_idle (DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + + if (priv->idle_search_id == 0) + priv->idle_search_id = g_idle_add (search_idle_cb, sidebar); +} + +static void +book_manager_changed_cb (DhSidebar *sidebar) +{ + /* Update current search if any. */ + setup_search_idle (sidebar); +} + +/******************************************************************************/ + +static void +hitlist_selection_changed_cb (GtkTreeSelection *selection, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + GtkTreeIter iter; + + if (gtk_tree_selection_get_selected (selection, NULL, &iter)) { + DhLink *link; + + gtk_tree_model_get (GTK_TREE_MODEL (priv->hitlist_model), &iter, + DH_KEYWORD_MODEL_COL_LINK, &link, + -1); + + g_signal_emit (sidebar, signals[SIGNAL_LINK_SELECTED], 0, link); + dh_link_unref (link); + } +} + +/* Make it possible to jump back to the currently selected item, useful when the + * html view has been scrolled away. + */ +static gboolean +hitlist_button_press_cb (GtkTreeView *hitlist_view, + GdkEventButton *event, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + GtkTreePath *path; + GtkTreeIter iter; + DhLink *link; + + gtk_tree_view_get_path_at_pos (hitlist_view, event->x, event->y, &path, + NULL, NULL, NULL); + if (path == NULL) + return GDK_EVENT_PROPAGATE; + + gtk_tree_model_get_iter (GTK_TREE_MODEL (priv->hitlist_model), &iter, path); + gtk_tree_path_free (path); + + gtk_tree_model_get (GTK_TREE_MODEL (priv->hitlist_model), + &iter, + DH_KEYWORD_MODEL_COL_LINK, &link, + -1); + + g_signal_emit (sidebar, signals[SIGNAL_LINK_SELECTED], 0, link); + dh_link_unref (link); + + /* Always propagate the event so the tree view can update + * the selection etc. + */ + return GDK_EVENT_PROPAGATE; +} + +static gboolean +entry_key_press_event_cb (GtkEntry *entry, + GdkEventKey *event, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + + if (event->keyval == GDK_KEY_Tab) { + if (event->state & GDK_CONTROL_MASK) { + if (gtk_widget_is_visible (GTK_WIDGET (priv->hitlist_view))) + gtk_widget_grab_focus (GTK_WIDGET (priv->hitlist_view)); + } else { + gtk_editable_select_region (GTK_EDITABLE (entry), 0, 0); + gtk_editable_set_position (GTK_EDITABLE (entry), -1); + } + + return GDK_EVENT_STOP; + } + + if (event->keyval == GDK_KEY_Return || + event->keyval == GDK_KEY_KP_Enter) { + GtkTreeIter iter; + DhLink *link; + gchar *name; + + /* Get the first entry found. + * + * FIXME: is it really useful to do that? If there is an exact + * match it already gets selected, so it seems that the feature + * here just selects a random symbol (the one that appears to be + * the first in the list). + * I've never used this feature -- swilmet. + * This has been implemented in + * commit 455440a93d1b55d5a1e53ecabb2ee33093eec965 + * and https://bugzilla.gnome.org/show_bug.cgi?id=114558 + * but maybe at that time the search didn't jump to the exact + * match if there was one. + */ + if (gtk_widget_is_visible (GTK_WIDGET (priv->hitlist_view)) && + gtk_tree_model_get_iter_first (GTK_TREE_MODEL (priv->hitlist_model), &iter)) { + gtk_tree_model_get (GTK_TREE_MODEL (priv->hitlist_model), + &iter, + DH_KEYWORD_MODEL_COL_LINK, &link, + DH_KEYWORD_MODEL_COL_NAME, &name, + -1); + + gtk_entry_set_text (entry, name); + g_free (name); + + gtk_editable_select_region (GTK_EDITABLE (entry), 0, 0); + gtk_editable_set_position (GTK_EDITABLE (entry), -1); + + g_signal_emit (sidebar, signals[SIGNAL_LINK_SELECTED], 0, link); + dh_link_unref (link); + + return GDK_EVENT_STOP; + } + } + + return GDK_EVENT_PROPAGATE; +} + +static void +entry_changed_cb (GtkEntry *entry, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + const gchar *search_text; + + search_text = gtk_entry_get_text (entry); + + /* We don't want a delay when the search text becomes empty, to show the + * book tree. So do it here and not in entry_search_changed_cb(). + */ + if (search_text == NULL || search_text[0] == '\0') { + gtk_widget_hide (GTK_WIDGET (priv->sw_hitlist)); + gtk_widget_show (GTK_WIDGET (priv->sw_book_tree)); + } +} + +static void +entry_search_changed_cb (GtkSearchEntry *search_entry, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + const gchar *search_text; + + search_text = gtk_entry_get_text (GTK_ENTRY (search_entry)); + + if (search_text != NULL && search_text[0] != '\0') { + gtk_widget_hide (GTK_WIDGET (priv->sw_book_tree)); + gtk_widget_show (GTK_WIDGET (priv->sw_hitlist)); + setup_search_idle (sidebar); + } +} + +static gboolean +complete_idle_cb (gpointer user_data) +{ + DhSidebar *sidebar = DH_SIDEBAR (user_data); + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + DhBookManager *book_manager; + GList *books; + GList *l; + GList *completion_objects = NULL; + const gchar *search_text; + gchar *completed; + + book_manager = dh_book_manager_get_singleton (); + books = dh_book_manager_get_books (book_manager); + for (l = books; l != NULL; l = l->next) { + DhBook *cur_book = DH_BOOK (l->data); + + if (dh_book_get_enabled (cur_book)) { + DhCompletion *completion; + + completion = dh_book_get_completion (cur_book); + completion_objects = g_list_prepend (completion_objects, completion); + } + } + + search_text = gtk_entry_get_text (priv->entry); + completed = dh_completion_aggregate_complete (completion_objects, search_text); + + if (completed != NULL) { + guint16 n_chars_before; + + n_chars_before = gtk_entry_get_text_length (priv->entry); + + gtk_entry_set_text (priv->entry, completed); + gtk_editable_set_position (GTK_EDITABLE (priv->entry), n_chars_before); + gtk_editable_select_region (GTK_EDITABLE (priv->entry), + n_chars_before, -1); + } + + g_list_free (completion_objects); + g_free (completed); + + priv->idle_complete_id = 0; + return G_SOURCE_REMOVE; +} + +static void +entry_insert_text_cb (GtkEntry *entry, + const gchar *text, + gint length, + gint *position, + DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + + if (priv->idle_complete_id == 0) + priv->idle_complete_id = g_idle_add (complete_idle_cb, sidebar); +} + +static void +entry_stop_search_cb (GtkSearchEntry *entry, + gpointer user_data) +{ + gtk_entry_set_text (GTK_ENTRY (entry), ""); +} + +static void +hitlist_cell_data_func (GtkTreeViewColumn *tree_column, + GtkCellRenderer *cell, + GtkTreeModel *hitlist_model, + GtkTreeIter *iter, + gpointer data) +{ + DhLink *link; + DhLinkType link_type; + PangoStyle style; + PangoWeight weight; + gboolean current_book_flag; + gchar *name; + + gtk_tree_model_get (hitlist_model, iter, + DH_KEYWORD_MODEL_COL_LINK, &link, + DH_KEYWORD_MODEL_COL_CURRENT_BOOK_FLAG, ¤t_book_flag, + -1); + + if (dh_link_get_flags (link) & DH_LINK_FLAGS_DEPRECATED) + style = PANGO_STYLE_ITALIC; + else + style = PANGO_STYLE_NORMAL; + + /* Matches on the current book are given in bold. Note that we check the + * current book as it was given to the DhKeywordModel. Do *not* rely on + * the current book as given by the DhSidebar, as that will change + * whenever a hit is clicked. + */ + if (current_book_flag) + weight = PANGO_WEIGHT_BOLD; + else + weight = PANGO_WEIGHT_NORMAL; + + link_type = dh_link_get_link_type (link); + + if (link_type == DH_LINK_TYPE_STRUCT || + link_type == DH_LINK_TYPE_PROPERTY || + link_type == DH_LINK_TYPE_SIGNAL) { + name = g_markup_printf_escaped ("%s (%s)", + dh_link_get_name (link), + dh_link_type_to_string (link_type)); + } else { + name = g_markup_printf_escaped ("%s", dh_link_get_name (link)); + } + + g_object_set (cell, + "markup", name, + "style", style, + "weight", weight, + NULL); + + dh_link_unref (link); + g_free (name); +} + +static void +book_tree_link_selected_cb (DhBookTree *book_tree, + DhLink *link, + DhSidebar *sidebar) +{ + g_signal_emit (sidebar, signals[SIGNAL_LINK_SELECTED], 0, link); +} + +static void +dh_sidebar_init (DhSidebar *sidebar) +{ + DhSidebarPrivate *priv = dh_sidebar_get_instance_private (sidebar); + GtkCellRenderer *cell; + DhBookManager *book_manager; + + gtk_orientable_set_orientation (GTK_ORIENTABLE (sidebar), + GTK_ORIENTATION_VERTICAL); + + gtk_widget_set_hexpand (GTK_WIDGET (sidebar), TRUE); + gtk_widget_set_vexpand (GTK_WIDGET (sidebar), TRUE); + + /* Setup the search entry */ + priv->entry = GTK_ENTRY (gtk_search_entry_new ()); + gtk_widget_set_hexpand (GTK_WIDGET (priv->entry), TRUE); + g_object_set (priv->entry, + "margin", 6, + NULL); + gtk_container_add (GTK_CONTAINER (sidebar), GTK_WIDGET (priv->entry)); + + g_signal_connect (priv->entry, + "key-press-event", + G_CALLBACK (entry_key_press_event_cb), + sidebar); + + g_signal_connect (priv->entry, + "changed", + G_CALLBACK (entry_changed_cb), + sidebar); + + g_signal_connect (priv->entry, + "search-changed", + G_CALLBACK (entry_search_changed_cb), + sidebar); + + g_signal_connect (priv->entry, + "insert-text", + G_CALLBACK (entry_insert_text_cb), + sidebar); + + g_signal_connect (priv->entry, + "stop-search", + G_CALLBACK (entry_stop_search_cb), + NULL); + + /* Setup hitlist */ + priv->hitlist_model = dh_keyword_model_new (); + priv->hitlist_view = GTK_TREE_VIEW (gtk_tree_view_new ()); + gtk_tree_view_set_model (priv->hitlist_view, GTK_TREE_MODEL (priv->hitlist_model)); + gtk_tree_view_set_headers_visible (priv->hitlist_view, FALSE); + gtk_tree_view_set_enable_search (priv->hitlist_view, FALSE); + gtk_widget_show (GTK_WIDGET (priv->hitlist_view)); + + g_signal_connect (priv->hitlist_view, + "button-press-event", + G_CALLBACK (hitlist_button_press_cb), + sidebar); + + g_signal_connect (gtk_tree_view_get_selection (priv->hitlist_view), + "changed", + G_CALLBACK (hitlist_selection_changed_cb), + sidebar); + + cell = gtk_cell_renderer_text_new (); + g_object_set (cell, + "ellipsize", PANGO_ELLIPSIZE_END, + NULL); + gtk_tree_view_insert_column_with_data_func (priv->hitlist_view, + -1, + NULL, + cell, + hitlist_cell_data_func, + sidebar, + NULL); + + /* Hitlist packing */ + priv->sw_hitlist = GTK_SCROLLED_WINDOW (gtk_scrolled_window_new (NULL, NULL)); + gtk_widget_set_no_show_all (GTK_WIDGET (priv->sw_hitlist), TRUE); + gtk_scrolled_window_set_policy (priv->sw_hitlist, + GTK_POLICY_NEVER, + GTK_POLICY_AUTOMATIC); + gtk_container_add (GTK_CONTAINER (priv->sw_hitlist), + GTK_WIDGET (priv->hitlist_view)); + gtk_widget_set_hexpand (GTK_WIDGET (priv->sw_hitlist), TRUE); + gtk_widget_set_vexpand (GTK_WIDGET (priv->sw_hitlist), TRUE); + gtk_container_add (GTK_CONTAINER (sidebar), GTK_WIDGET (priv->sw_hitlist)); + + /* Setup book manager */ + book_manager = dh_book_manager_get_singleton (); + + g_signal_connect_object (book_manager, + "book-created", + G_CALLBACK (book_manager_changed_cb), + sidebar, + G_CONNECT_SWAPPED); + + g_signal_connect_object (book_manager, + "book-enabled", + G_CALLBACK (book_manager_changed_cb), + sidebar, + G_CONNECT_SWAPPED); + + g_signal_connect_object (book_manager, + "book-deleted", + G_CALLBACK (book_manager_changed_cb), + sidebar, + G_CONNECT_SWAPPED); + + g_signal_connect_object (book_manager, + "book-disabled", + G_CALLBACK (book_manager_changed_cb), + sidebar, + G_CONNECT_SWAPPED); + + /* Setup the book tree */ + priv->sw_book_tree = GTK_SCROLLED_WINDOW (gtk_scrolled_window_new (NULL, NULL)); + gtk_widget_show (GTK_WIDGET (priv->sw_book_tree)); + gtk_widget_set_no_show_all (GTK_WIDGET (priv->sw_book_tree), TRUE); + gtk_scrolled_window_set_policy (priv->sw_book_tree, + GTK_POLICY_NEVER, + GTK_POLICY_AUTOMATIC); + + priv->book_tree = dh_book_tree_new (); + gtk_widget_show (GTK_WIDGET (priv->book_tree)); + g_signal_connect (priv->book_tree, + "link-selected", + G_CALLBACK (book_tree_link_selected_cb), + sidebar); + gtk_container_add (GTK_CONTAINER (priv->sw_book_tree), GTK_WIDGET (priv->book_tree)); + gtk_widget_set_hexpand (GTK_WIDGET (priv->sw_book_tree), TRUE); + gtk_widget_set_vexpand (GTK_WIDGET (priv->sw_book_tree), TRUE); + gtk_container_add (GTK_CONTAINER (sidebar), GTK_WIDGET (priv->sw_book_tree)); + + gtk_widget_show_all (GTK_WIDGET (sidebar)); +} + +/** + * dh_sidebar_new: + * @book_manager: (nullable): a #DhBookManager. This parameter is deprecated, + * you should just pass %NULL. + * + * Returns: (transfer floating): a new #DhSidebar widget. + */ +GtkWidget * +dh_sidebar_new (DhBookManager *book_manager) +{ + return g_object_new (DH_TYPE_SIDEBAR, NULL); +} + +/** + * dh_sidebar_select_uri: + * @sidebar: a #DhSidebar. + * @uri: the URI to select. + */ +void +dh_sidebar_select_uri (DhSidebar *sidebar, + const gchar *uri) +{ + DhSidebarPrivate *priv; + + g_return_if_fail (DH_IS_SIDEBAR (sidebar)); + g_return_if_fail (uri != NULL); + + priv = dh_sidebar_get_instance_private (sidebar); + + dh_book_tree_select_uri (priv->book_tree, uri); +} + +/** + * dh_sidebar_set_search_string: + * @sidebar: a #DhSidebar. + * @str: the string to search. + */ +void +dh_sidebar_set_search_string (DhSidebar *sidebar, + const gchar *str) +{ + DhSidebarPrivate *priv; + + g_return_if_fail (DH_IS_SIDEBAR (sidebar)); + g_return_if_fail (str != NULL); + + priv = dh_sidebar_get_instance_private (sidebar); + + gtk_entry_set_text (priv->entry, str); + gtk_editable_select_region (GTK_EDITABLE (priv->entry), 0, 0); + gtk_editable_set_position (GTK_EDITABLE (priv->entry), -1); + + /* If the GtkEntry text was already equal to @str, the + * GtkEditable::changed signal was not emitted, so force to emit it to + * call entry_changed_cb() and entry_search_changed_cb(), forcing a new + * search. If an exact match is found, the DhSidebar::link-selected + * signal will be emitted, to re-jump to that symbol (even if the + * GtkEntry text was equal, it doesn't mean that the WebKitWebView was + * showing the exact match). + * https://bugzilla.gnome.org/show_bug.cgi?id=776596 + */ + g_signal_emit_by_name (priv->entry, "changed"); +} + +/** + * dh_sidebar_set_search_focus: + * @sidebar: a #DhSidebar. + * + * Gives the focus to the search entry. + */ +void +dh_sidebar_set_search_focus (DhSidebar *sidebar) +{ + DhSidebarPrivate *priv; + + g_return_if_fail (DH_IS_SIDEBAR (sidebar)); + + priv = dh_sidebar_get_instance_private (sidebar); + + gtk_widget_grab_focus (GTK_WIDGET (priv->entry)); +} diff --git a/src/dh-sidebar.h b/src/dh-sidebar.h new file mode 100644 index 0000000..07282d4 --- /dev/null +++ b/src/dh-sidebar.h @@ -0,0 +1,69 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2002 CodeFactory AB + * Copyright (C) 2001-2002 Mikael Hallendal + * Copyright (C) 2013 Aleksander Morgado + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_SIDEBAR_H +#define DH_SIDEBAR_H + +#include +#include "dh-book-manager.h" +#include "dh-link.h" + +G_BEGIN_DECLS + +#define DH_TYPE_SIDEBAR (dh_sidebar_get_type ()) +#define DH_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_SIDEBAR, DhSidebar)) +#define DH_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_SIDEBAR, DhSidebarClass)) +#define DH_IS_SIDEBAR(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_SIDEBAR)) +#define DH_IS_SIDEBAR_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_SIDEBAR)) + +typedef struct _DhSidebar DhSidebar; +typedef struct _DhSidebarClass DhSidebarClass; + +struct _DhSidebar { + GtkGrid parent_instance; +}; + +struct _DhSidebarClass { + GtkGridClass parent_class; + + /* Signals */ + void (*link_selected) (DhSidebar *sidebar, + DhLink *link); + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_sidebar_get_type (void); + +GtkWidget * dh_sidebar_new (DhBookManager *book_manager); + +void dh_sidebar_select_uri (DhSidebar *sidebar, + const gchar *uri); + +void dh_sidebar_set_search_string (DhSidebar *sidebar, + const gchar *str); + +void dh_sidebar_set_search_focus (DhSidebar *sidebar); + +G_END_DECLS + +#endif /* DH_SIDEBAR_H */ diff --git a/src/dh-tab-label.c b/src/dh-tab-label.c new file mode 100644 index 0000000..894d1c9 --- /dev/null +++ b/src/dh-tab-label.c @@ -0,0 +1,236 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-tab-label.h" +#include "dh-web-view.h" + +struct _DhTabLabelPrivate { + /* Weak ref */ + DhTab *tab; + + GtkLabel *label; +}; + +enum { + PROP_0, + PROP_TAB, + N_PROPERTIES +}; + +static GParamSpec *properties[N_PROPERTIES]; + +G_DEFINE_TYPE_WITH_PRIVATE (DhTabLabel, dh_tab_label, GTK_TYPE_GRID) + +static void +update_label (DhTabLabel *tab_label) +{ + DhWebView *web_view; + const gchar *title; + + if (tab_label->priv->tab == NULL) + return; + + web_view = dh_tab_get_web_view (tab_label->priv->tab); + title = dh_web_view_get_devhelp_title (web_view); + gtk_label_set_text (tab_label->priv->label, title); +} + +static void +web_view_title_notify_cb (DhWebView *web_view, + GParamSpec *pspec, + DhTabLabel *tab_label) +{ + update_label (tab_label); +} + +static void +set_tab (DhTabLabel *tab_label, + DhTab *tab) +{ + DhWebView *web_view; + + if (tab == NULL) + return; + + g_return_if_fail (DH_IS_TAB (tab)); + + g_assert (tab_label->priv->tab == NULL); + tab_label->priv->tab = tab; + g_object_add_weak_pointer (G_OBJECT (tab_label->priv->tab), + (gpointer *) &tab_label->priv->tab); + + web_view = dh_tab_get_web_view (tab); + g_signal_connect_object (web_view, + "notify::title", + G_CALLBACK (web_view_title_notify_cb), + tab_label, + 0); + + update_label (tab_label); +} + +static void +dh_tab_label_get_property (GObject *object, + guint prop_id, + GValue *value, + GParamSpec *pspec) +{ + DhTabLabel *tab_label = DH_TAB_LABEL (object); + + switch (prop_id) { + case PROP_TAB: + g_value_set_object (value, dh_tab_label_get_tab (tab_label)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +dh_tab_label_set_property (GObject *object, + guint prop_id, + const GValue *value, + GParamSpec *pspec) +{ + DhTabLabel *tab_label = DH_TAB_LABEL (object); + + switch (prop_id) { + case PROP_TAB: + set_tab (tab_label, g_value_get_object (value)); + break; + + default: + G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec); + break; + } +} + +static void +dh_tab_label_dispose (GObject *object) +{ + DhTabLabel *tab_label = DH_TAB_LABEL (object); + + if (tab_label->priv->tab != NULL) { + g_object_remove_weak_pointer (G_OBJECT (tab_label->priv->tab), + (gpointer *) &tab_label->priv->tab); + tab_label->priv->tab = NULL; + } + + G_OBJECT_CLASS (dh_tab_label_parent_class)->dispose (object); +} + +static void +dh_tab_label_class_init (DhTabLabelClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->get_property = dh_tab_label_get_property; + object_class->set_property = dh_tab_label_set_property; + object_class->dispose = dh_tab_label_dispose; + + properties[PROP_TAB] = + g_param_spec_object ("tab", + "tab", + "", + DH_TYPE_TAB, + G_PARAM_READWRITE | + G_PARAM_CONSTRUCT_ONLY | + G_PARAM_STATIC_STRINGS); + + g_object_class_install_properties (object_class, N_PROPERTIES, properties); +} + +static GtkWidget * +create_close_button (void) +{ + GtkWidget *close_button; + GtkStyleContext *style_context; + + close_button = gtk_button_new_from_icon_name ("window-close-symbolic", + GTK_ICON_SIZE_BUTTON); + gtk_button_set_relief (GTK_BUTTON (close_button), GTK_RELIEF_NONE); + gtk_widget_set_focus_on_click (close_button, FALSE); + + style_context = gtk_widget_get_style_context (close_button); + gtk_style_context_add_class (style_context, GTK_STYLE_CLASS_FLAT); + + return close_button; +} + +static void +close_button_clicked_cb (GtkButton *close_button, + DhTabLabel *tab_label) +{ + if (tab_label->priv->tab != NULL) + gtk_widget_destroy (GTK_WIDGET (tab_label->priv->tab)); +} + +static void +dh_tab_label_init (DhTabLabel *tab_label) +{ + GtkWidget *close_button; + + tab_label->priv = dh_tab_label_get_instance_private (tab_label); + + gtk_grid_set_column_spacing (GTK_GRID (tab_label), 4); + + /* Label */ + + tab_label->priv->label = GTK_LABEL (gtk_label_new (NULL)); + gtk_widget_set_hexpand (GTK_WIDGET (tab_label->priv->label), TRUE); + gtk_widget_set_vexpand (GTK_WIDGET (tab_label->priv->label), TRUE); + gtk_widget_set_halign (GTK_WIDGET (tab_label->priv->label), GTK_ALIGN_CENTER); + gtk_label_set_ellipsize (tab_label->priv->label, PANGO_ELLIPSIZE_END); + + gtk_widget_show (GTK_WIDGET (tab_label->priv->label)); + gtk_container_add (GTK_CONTAINER (tab_label), + GTK_WIDGET (tab_label->priv->label)); + + /* Close button */ + + close_button = create_close_button (); + + g_signal_connect (close_button, + "clicked", + G_CALLBACK (close_button_clicked_cb), + tab_label); + + gtk_widget_show (close_button); + gtk_container_add (GTK_CONTAINER (tab_label), close_button); +} + +GtkWidget * +dh_tab_label_new (DhTab *tab) +{ + g_return_val_if_fail (DH_IS_TAB (tab), NULL); + + return g_object_new (DH_TYPE_TAB_LABEL, + "tab", tab, + NULL); +} + +/* Returns: (transfer none) (nullable): the #DhTabLabel:tab. */ +DhTab * +dh_tab_label_get_tab (DhTabLabel *tab_label) +{ + g_return_val_if_fail (DH_IS_TAB_LABEL (tab_label), NULL); + + return tab_label->priv->tab; +} diff --git a/src/dh-tab-label.h b/src/dh-tab-label.h new file mode 100644 index 0000000..bf115a0 --- /dev/null +++ b/src/dh-tab-label.h @@ -0,0 +1,59 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_TAB_LABEL_H +#define DH_TAB_LABEL_H + +#include +#include "dh-tab.h" + +G_BEGIN_DECLS + +#define DH_TYPE_TAB_LABEL (dh_tab_label_get_type ()) +#define DH_TAB_LABEL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_TAB_LABEL, DhTabLabel)) +#define DH_TAB_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_TAB_LABEL, DhTabLabelClass)) +#define DH_IS_TAB_LABEL(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_TAB_LABEL)) +#define DH_IS_TAB_LABEL_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_TAB_LABEL)) +#define DH_TAB_LABEL_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_TAB_LABEL, DhTabLabelClass)) + +typedef struct _DhTabLabel DhTabLabel; +typedef struct _DhTabLabelClass DhTabLabelClass; +typedef struct _DhTabLabelPrivate DhTabLabelPrivate; + +struct _DhTabLabel { + GtkGrid parent; + + DhTabLabelPrivate *priv; +}; + +struct _DhTabLabelClass { + GtkGridClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_tab_label_get_type (void); + +GtkWidget * dh_tab_label_new (DhTab *tab); + +DhTab * dh_tab_label_get_tab (DhTabLabel *tab_label); + +G_END_DECLS + +#endif /* DH_TAB_LABEL_H */ diff --git a/src/dh-tab.c b/src/dh-tab.c new file mode 100644 index 0000000..5be80db --- /dev/null +++ b/src/dh-tab.c @@ -0,0 +1,146 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-tab.h" +#include +#include "tepl-info-bar.h" + +/* A DhWebView with a possible TeplInfoBar on top. */ + +struct _DhTabPrivate { + TeplInfoBar *info_bar; + DhWebView *web_view; +}; + +G_DEFINE_TYPE_WITH_PRIVATE (DhTab, dh_tab, GTK_TYPE_GRID) + +static void +dh_tab_dispose (GObject *object) +{ + DhTab *tab = DH_TAB (object); + + tab->priv->info_bar = NULL; + tab->priv->web_view = NULL; + + G_OBJECT_CLASS (dh_tab_parent_class)->dispose (object); +} + +static void +dh_tab_class_init (DhTabClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + + object_class->dispose = dh_tab_dispose; +} + +static gboolean +web_view_load_failed_cb (WebKitWebView *web_view, + WebKitLoadEvent load_event, + const gchar *failing_uri, + GError *error, + DhTab *tab) +{ + /* Ignore cancellation errors, which happen when typing fast in the + * search entry. + */ + if (g_error_matches (error, WEBKIT_NETWORK_ERROR, WEBKIT_NETWORK_ERROR_CANCELLED)) + return GDK_EVENT_STOP; + + if (tab->priv->info_bar != NULL) + gtk_widget_destroy (GTK_WIDGET (tab->priv->info_bar)); + + tab->priv->info_bar = tepl_info_bar_new_simple (GTK_MESSAGE_ERROR, + _("Error opening the requested link."), + error->message); + tepl_info_bar_add_close_button (tab->priv->info_bar); + + g_signal_connect (tab->priv->info_bar, + "destroy", + G_CALLBACK (gtk_widget_destroyed), + &tab->priv->info_bar); + + gtk_grid_attach_next_to (GTK_GRID (tab), + GTK_WIDGET (tab->priv->info_bar), + GTK_WIDGET (tab->priv->web_view), + GTK_POS_TOP, + 1, 1); + + gtk_widget_show (GTK_WIDGET (tab->priv->info_bar)); + + return GDK_EVENT_STOP; +} + +static gboolean +web_view_decide_policy_cb (WebKitWebView *web_view, + WebKitPolicyDecision *decision, + WebKitPolicyDecisionType decision_type, + DhTab *tab) +{ + if (decision_type == WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION && + tab->priv->info_bar != NULL) { + /* The error is no longer relevant. Do it here, not in + * ::load-changed, so that it works when clicking on a link to + * an anchor inside the same page too, not only when loading a + * different page. + */ + gtk_widget_destroy (GTK_WIDGET (tab->priv->info_bar)); + } + + return GDK_EVENT_PROPAGATE; +} + +static void +dh_tab_init (DhTab *tab) +{ + tab->priv = dh_tab_get_instance_private (tab); + + gtk_orientable_set_orientation (GTK_ORIENTABLE (tab), GTK_ORIENTATION_VERTICAL); + + tab->priv->web_view = dh_web_view_new (); + gtk_widget_show (GTK_WIDGET (tab->priv->web_view)); + gtk_container_add (GTK_CONTAINER (tab), GTK_WIDGET (tab->priv->web_view)); + + g_signal_connect (tab->priv->web_view, + "load-failed", + G_CALLBACK (web_view_load_failed_cb), + tab); + + /* Other ::decide-policy signal handlers that return GDK_EVENT_STOP must + * be connected *after* this one. This code relies on the fact that + * GObject executes the handlers in the same order than the connection + * order (for all the handlers belonging to the same emission stage). + */ + g_signal_connect (tab->priv->web_view, + "decide-policy", + G_CALLBACK (web_view_decide_policy_cb), + tab); +} + +DhTab * +dh_tab_new (void) +{ + return g_object_new (DH_TYPE_TAB, NULL); +} + +DhWebView * +dh_tab_get_web_view (DhTab *tab) +{ + g_return_val_if_fail (DH_IS_TAB (tab), NULL); + + return tab->priv->web_view; +} diff --git a/src/dh-tab.h b/src/dh-tab.h new file mode 100644 index 0000000..c9f1009 --- /dev/null +++ b/src/dh-tab.h @@ -0,0 +1,59 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_TAB_H +#define DH_TAB_H + +#include +#include "dh-web-view.h" + +G_BEGIN_DECLS + +#define DH_TYPE_TAB (dh_tab_get_type ()) +#define DH_TAB(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_TAB, DhTab)) +#define DH_TAB_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_TAB, DhTabClass)) +#define DH_IS_TAB(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_TAB)) +#define DH_IS_TAB_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_TAB)) +#define DH_TAB_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_TAB, DhTabClass)) + +typedef struct _DhTab DhTab; +typedef struct _DhTabClass DhTabClass; +typedef struct _DhTabPrivate DhTabPrivate; + +struct _DhTab { + GtkGrid parent; + + DhTabPrivate *priv; +}; + +struct _DhTabClass { + GtkGridClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_tab_get_type (void); + +DhTab * dh_tab_new (void); + +DhWebView * dh_tab_get_web_view (DhTab *tab); + +G_END_DECLS + +#endif /* DH_TAB_H */ diff --git a/src/dh-util.c b/src/dh-util.c new file mode 100644 index 0000000..6d0830c --- /dev/null +++ b/src/dh-util.c @@ -0,0 +1,360 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001 Mikael Hallendal + * Copyright (C) 2004, 2008 Imendio AB + * Copyright (C) 2015, 2017, 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-util.h" +#include "dh-link.h" + +gchar * +dh_util_build_data_filename (const gchar *first_part, + ...) +{ + gchar *datadir = NULL; + va_list args; + const gchar *part; + gchar **strv; + gint i; + gchar *ret; + + va_start (args, first_part); + + if (datadir == NULL) { + datadir = g_strdup (DATADIR); + } + + /* 2 = 1 initial component + terminating NULL element. */ + strv = g_malloc (sizeof (gchar *) * 2); + strv[0] = (gchar *) datadir; + + i = 1; + for (part = first_part; part; part = va_arg (args, char *), i++) { + /* +2 = 1 new element + terminating NULL element. */ + strv = g_realloc (strv, sizeof (gchar*) * (i + 2)); + strv[i] = (gchar *) part; + } + + strv[i] = NULL; + ret = g_build_filenamev (strv); + g_free (strv); + + g_free (datadir); + + va_end (args); + + return ret; +} + +/* We're only going to expect ASCII strings here, so there's no point in + * playing with g_unichar_totitle() and such. + * Note that we modify the string in place. + */ +void +dh_util_ascii_strtitle (gchar *str) +{ + gboolean word_start; + + if (str == NULL) + return; + + word_start = TRUE; + while (*str != '\0') { + if (g_ascii_isalpha (*str)) { + *str = (word_start ? + g_ascii_toupper (*str) : + g_ascii_tolower (*str)); + word_start = FALSE; + } else { + word_start = TRUE; + } + str++; + } +} + +gchar * +dh_util_create_data_uri_for_filename (const gchar *filename, + const gchar *mime_type) +{ + gchar *data; + gsize data_length; + gchar *base64; + gchar *uri; + + if (!g_file_get_contents (filename, &data, &data_length, NULL)) + return NULL; + + base64 = g_base64_encode ((const guchar *)data, data_length); + g_free (data); + + uri = g_strdup_printf ("data:%s;charset=utf8;base64,%s", mime_type, base64); + g_free(base64); + + return uri; +} + +/* Set the given fonts on the given view. */ +void +dh_util_view_set_font (WebKitWebView *view, + const gchar *font_name_fixed, + const gchar *font_name_variable) +{ + PangoFontDescription *font_desc_fixed; + PangoFontDescription *font_desc_variable; + guint font_size_fixed; + guint font_size_variable; + guint font_size_fixed_px; + guint font_size_variable_px; + WebKitSettings *settings; + + g_return_if_fail (WEBKIT_IS_WEB_VIEW (view)); + g_return_if_fail (font_name_fixed != NULL); + g_return_if_fail (font_name_variable != NULL); + + /* Get the font size. */ + font_desc_fixed = pango_font_description_from_string (font_name_fixed); + font_desc_variable = pango_font_description_from_string (font_name_variable); + font_size_fixed = pango_font_description_get_size (font_desc_fixed) / PANGO_SCALE; + font_size_variable = pango_font_description_get_size (font_desc_variable) / PANGO_SCALE; + font_size_fixed_px = webkit_settings_font_size_to_pixels (font_size_fixed); + font_size_variable_px = webkit_settings_font_size_to_pixels (font_size_variable); + + /* Set the fonts. */ + settings = webkit_web_view_get_settings (view); + webkit_settings_set_zoom_text_only (settings, TRUE); + webkit_settings_set_monospace_font_family (settings, font_name_fixed); + webkit_settings_set_default_monospace_font_size (settings, font_size_fixed_px); + webkit_settings_set_serif_font_family (settings, font_name_variable); + webkit_settings_set_default_font_size (settings, font_size_variable_px); + + g_debug ("Set font-fixed to '%s' (%i) and font-variable to '%s' (%i).", + font_name_fixed, font_size_fixed_px, font_name_variable, font_size_variable_px); + + pango_font_description_free (font_desc_fixed); + pango_font_description_free (font_desc_variable); +} + +static void +introspect_window_gsettings (GSettings *window_settings, + gboolean *has_required_keys, + gboolean *has_maximized_key) +{ + GSettingsSchema *schema = NULL; + + g_object_get (window_settings, + "settings-schema", &schema, + NULL); + + *has_required_keys = (g_settings_schema_has_key (schema, "width") && + g_settings_schema_has_key (schema, "height")); + + *has_maximized_key = g_settings_schema_has_key (schema, "maximized"); + + g_settings_schema_unref (schema); +} + +void +dh_util_window_settings_save (GtkWindow *window, + GSettings *settings) +{ + gboolean has_required_keys; + gboolean has_maximized_key; + gint width; + gint height; + + g_return_if_fail (GTK_IS_WINDOW (window)); + g_return_if_fail (G_IS_SETTINGS (settings)); + + introspect_window_gsettings (settings, &has_required_keys, &has_maximized_key); + g_return_if_fail (has_required_keys); + + if (has_maximized_key) { + GdkWindowState state; + gboolean maximized; + + state = gdk_window_get_state (gtk_widget_get_window (GTK_WIDGET (window))); + maximized = (state & GDK_WINDOW_STATE_MAXIMIZED) != 0; + + g_settings_set_boolean (settings, "maximized", maximized); + + /* If maximized don't save the size. */ + if (maximized) + return; + } + + /* Store the dimensions */ + gtk_window_get_size (GTK_WINDOW (window), &width, &height); + g_settings_set_int (settings, "width", width); + g_settings_set_int (settings, "height", height); +} + +/* This should be called when @gtk_window is realized (i.e. its GdkWindow is + * created) but not yet mapped (i.e. gtk_widget_show() has not yet been called, + * so that when it is shown it already has the good size). + */ +void +dh_util_window_settings_restore (GtkWindow *gtk_window, + GSettings *settings) +{ + gboolean has_required_keys; + gboolean has_maximized_key; + gint width; + gint height; + + g_return_if_fail (GTK_IS_WINDOW (gtk_window)); + g_return_if_fail (gtk_widget_get_realized (GTK_WIDGET (gtk_window))); + g_return_if_fail (G_IS_SETTINGS (settings)); + + introspect_window_gsettings (settings, &has_required_keys, &has_maximized_key); + g_return_if_fail (has_required_keys); + + width = g_settings_get_int (settings, "width"); + height = g_settings_get_int (settings, "height"); + + if (width > 1 && height > 1) { + GdkDisplay *display; + GdkWindow *gdk_window; + GdkMonitor *monitor; + GdkRectangle monitor_workarea; + gint max_width; + gint max_height; + + display = gtk_widget_get_display (GTK_WIDGET (gtk_window)); + /* To get the GdkWindow the widget must be realized. */ + gdk_window = gtk_widget_get_window (GTK_WIDGET (gtk_window)); + monitor = gdk_display_get_monitor_at_window (display, gdk_window); + gdk_monitor_get_workarea (monitor, &monitor_workarea); + + max_width = monitor_workarea.width; + max_height = monitor_workarea.height; + + width = CLAMP (width, 0, max_width); + height = CLAMP (height, 0, max_height); + + gtk_window_set_default_size (gtk_window, width, height); + } + + if (has_maximized_key && g_settings_get_boolean (settings, "maximized")) + gtk_window_maximize (gtk_window); +} + +/* Adds q2 onto the end of q1, and frees q2. */ +void +dh_util_queue_concat (GQueue *q1, + GQueue *q2) +{ + g_return_if_fail (q1 != NULL); + + if (q2 == NULL) + return; + + if (q1->head == NULL) { + g_assert_cmpint (q1->length, ==, 0); + g_assert (q1->tail == NULL); + + q1->head = q2->head; + q1->tail = q2->tail; + q1->length = q2->length; + } else if (q2->head != NULL) { + g_assert_cmpint (q1->length, >, 0); + g_assert_cmpint (q2->length, >, 0); + g_assert (q1->tail != NULL); + g_assert (q2->tail != NULL); + + q1->tail->next = q2->head; + q2->head->prev = q1->tail; + + q1->tail = q2->tail; + q1->length += q2->length; + } else { + g_assert_cmpint (q2->length, ==, 0); + g_assert (q2->tail == NULL); + } + + q2->head = NULL; + q2->tail = NULL; + q2->length = 0; + g_queue_free (q2); +} + +static gboolean +unref_node_link (GNode *node, + gpointer data) +{ + dh_link_unref (node->data); + return FALSE; +} + +void +_dh_util_free_book_tree (GNode *book_tree) +{ + if (book_tree == NULL) + return; + + g_node_traverse (book_tree, + G_IN_ORDER, + G_TRAVERSE_ALL, + -1, + unref_node_link, + NULL); + + g_node_destroy (book_tree); +} + +/* Returns: (transfer full) (element-type GFile): the list of possible Devhelp + * index files in @book_directory, in order of preference. + */ +GSList * +_dh_util_get_possible_index_files (GFile *book_directory) +{ + const gchar *extensions[] = { + ".devhelp2", + ".devhelp2.gz", + ".devhelp", + ".devhelp.gz", + NULL + }; + gchar *directory_name; + GSList *list = NULL; + gint i; + + g_return_val_if_fail (G_IS_FILE (book_directory), NULL); + + directory_name = g_file_get_basename (book_directory); + g_return_val_if_fail (directory_name != NULL, NULL); + + for (i = 0; extensions[i] != NULL; i++) { + const gchar *cur_extension = extensions[i]; + gchar *index_file_name; + GFile *index_file; + + /* The name of the directory the index file is in and the name + * of the index file (minus the extension) must match. + */ + index_file_name = g_strconcat (directory_name, cur_extension, NULL); + + index_file = g_file_get_child (book_directory, index_file_name); + list = g_slist_prepend (list, index_file); + + g_free (index_file_name); + } + + list = g_slist_reverse (list); + + g_free (directory_name); + return list; +} diff --git a/src/dh-util.h b/src/dh-util.h new file mode 100644 index 0000000..6e55858 --- /dev/null +++ b/src/dh-util.h @@ -0,0 +1,58 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2002 Mikael Hallendal + * Copyright (C) 2004,2008 Imendio AB + * Copyright (C) 2015, 2017 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_UTIL_H +#define DH_UTIL_H + +#include +#include + +G_BEGIN_DECLS + +gchar * dh_util_build_data_filename (const gchar *first_part, + ...); + +void dh_util_ascii_strtitle (gchar *str); + +gchar *dh_util_create_data_uri_for_filename (const gchar *filename, + const gchar *mime_type); + +void dh_util_view_set_font (WebKitWebView *view, + const gchar *font_name_fixed, + const gchar *font_name_variable); + +void dh_util_window_settings_save (GtkWindow *window, + GSettings *settings); + +void dh_util_window_settings_restore (GtkWindow *gtk_window, + GSettings *settings); + +void dh_util_queue_concat (GQueue *q1, + GQueue *q2); + +G_GNUC_INTERNAL +void _dh_util_free_book_tree (GNode *book_tree); + +G_GNUC_INTERNAL +GSList * _dh_util_get_possible_index_files (GFile *book_directory); + +G_END_DECLS + +#endif /* DH_UTIL_H */ diff --git a/src/dh-web-view.c b/src/dh-web-view.c new file mode 100644 index 0000000..1769dc3 --- /dev/null +++ b/src/dh-web-view.c @@ -0,0 +1,336 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-web-view.h" +#include +#include + +struct _DhWebViewPrivate { + gchar *search_text; + gdouble total_scroll_delta_y; +}; + +static const gdouble zoom_levels[] = { + 0.5, /* 50% */ + 0.8408964152, /* 75% */ + 1.0, /* 100% */ + 1.1892071149, /* 125% */ + 1.4142135623, /* 150% */ + 1.6817928304, /* 175% */ + 2.0, /* 200% */ + 2.8284271247, /* 300% */ + 4.0 /* 400% */ +}; + +static const guint n_zoom_levels = G_N_ELEMENTS (zoom_levels); + +#define ZOOM_DEFAULT (zoom_levels[2]) + +G_DEFINE_TYPE_WITH_PRIVATE (DhWebView, dh_web_view, WEBKIT_TYPE_WEB_VIEW) + +static gint +get_current_zoom_level_index (DhWebView *view) +{ + gdouble zoom_level; + gdouble previous; + guint i; + + zoom_level = webkit_web_view_get_zoom_level (WEBKIT_WEB_VIEW (view)); + + previous = zoom_levels[0]; + for (i = 1; i < n_zoom_levels; i++) { + gdouble current = zoom_levels[i]; + gdouble mean = sqrt (previous * current); + + if (zoom_level <= mean) + return i - 1; + + previous = current; + } + + return n_zoom_levels - 1; +} + +static void +bump_zoom_level (DhWebView *view, + gint bump_amount) +{ + gint zoom_level_index; + gdouble new_zoom_level; + + if (bump_amount == 0) + return; + + zoom_level_index = get_current_zoom_level_index (view) + bump_amount; + zoom_level_index = CLAMP (zoom_level_index, 0, (gint)n_zoom_levels - 1); + new_zoom_level = zoom_levels[zoom_level_index]; + + webkit_web_view_set_zoom_level (WEBKIT_WEB_VIEW (view), new_zoom_level); +} + +static gboolean +dh_web_view_scroll_event (GtkWidget *widget, + GdkEventScroll *scroll_event) +{ + DhWebView *view = DH_WEB_VIEW (widget); + gdouble delta_y; + + if ((scroll_event->state & GDK_CONTROL_MASK) == 0) + goto chain_up; + + switch (scroll_event->direction) { + case GDK_SCROLL_UP: + bump_zoom_level (view, 1); + return GDK_EVENT_STOP; + + case GDK_SCROLL_DOWN: + bump_zoom_level (view, -1); + return GDK_EVENT_STOP; + + case GDK_SCROLL_LEFT: + case GDK_SCROLL_RIGHT: + break; + + case GDK_SCROLL_SMOOTH: + gdk_event_get_scroll_deltas ((GdkEvent *)scroll_event, NULL, &delta_y); + view->priv->total_scroll_delta_y += delta_y; + + /* Avoiding direct float comparison. + * -1 and 1 are the thresholds for bumping the zoom level, + * which can be adjusted for taste. + */ + if ((gint)view->priv->total_scroll_delta_y <= -1) { + view->priv->total_scroll_delta_y = 0.f; + bump_zoom_level (view, 1); + } else if ((gint)view->priv->total_scroll_delta_y >= 1) { + view->priv->total_scroll_delta_y = 0.f; + bump_zoom_level (view, -1); + } + return GDK_EVENT_STOP; + + default: + g_warn_if_reached (); + } + +chain_up: + if (GTK_WIDGET_CLASS (dh_web_view_parent_class)->scroll_event == NULL) + return GDK_EVENT_PROPAGATE; + + return GTK_WIDGET_CLASS (dh_web_view_parent_class)->scroll_event (widget, scroll_event); +} + +static void +dh_web_view_constructed (GObject *object) +{ + WebKitWebView *view = WEBKIT_WEB_VIEW (object); + WebKitSettings *settings; + + if (G_OBJECT_CLASS (dh_web_view_parent_class)->constructed != NULL) + G_OBJECT_CLASS (dh_web_view_parent_class)->constructed (object); + + /* Disable some things we have no need for. */ + settings = webkit_web_view_get_settings (view); + webkit_settings_set_enable_html5_database (settings, FALSE); + webkit_settings_set_enable_html5_local_storage (settings, FALSE); + webkit_settings_set_enable_plugins (settings, FALSE); +} + +static void +dh_web_view_finalize (GObject *object) +{ + DhWebView *view = DH_WEB_VIEW (object); + + g_free (view->priv->search_text); + + G_OBJECT_CLASS (dh_web_view_parent_class)->finalize (object); +} + +static void +dh_web_view_class_init (DhWebViewClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + + object_class->constructed = dh_web_view_constructed; + object_class->finalize = dh_web_view_finalize; + + widget_class->scroll_event = dh_web_view_scroll_event; +} + +static void +dh_web_view_init (DhWebView *view) +{ + view->priv = dh_web_view_get_instance_private (view); + view->priv->total_scroll_delta_y = 0.f; + + gtk_widget_set_hexpand (GTK_WIDGET (view), TRUE); + gtk_widget_set_vexpand (GTK_WIDGET (view), TRUE); +} + +DhWebView * +dh_web_view_new (void) +{ + return g_object_new (DH_TYPE_WEB_VIEW, NULL); +} + +const gchar * +dh_web_view_get_devhelp_title (DhWebView *view) +{ + const gchar *title; + + g_return_val_if_fail (DH_IS_WEB_VIEW (view), NULL); + + title = webkit_web_view_get_title (WEBKIT_WEB_VIEW (view)); + + if (title == NULL || title[0] == '\0') + title = _("Empty Page"); + + return title; +} + +/* + * dh_web_view_set_search_text: + * @view: a #DhWebView. + * @search_text: (nullable): the search string, or %NULL. + * + * A more convenient API (for Devhelp needs) than #WebKitFindController. If + * @search_text is not empty, it calls webkit_find_controller_search() if not + * already done. If @search_text is empty or %NULL, it calls + * webkit_find_controller_search_finish(). + */ +void +dh_web_view_set_search_text (DhWebView *view, + const gchar *search_text) +{ + WebKitFindController *find_controller; + + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + if (g_strcmp0 (view->priv->search_text, search_text) == 0) + return; + + g_free (view->priv->search_text); + view->priv->search_text = g_strdup (search_text); + + find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (view)); + + if (search_text != NULL && search_text[0] != '\0') { + /* If webkit_find_controller_search() is called a second time + * with the same parameters it's not a NOP, it launches a new + * search, apparently, which screws up search_next() and + * search_previous(). So we must call it only once for the same + * search string. + */ + webkit_find_controller_search (find_controller, + search_text, + WEBKIT_FIND_OPTIONS_WRAP_AROUND | + WEBKIT_FIND_OPTIONS_CASE_INSENSITIVE, + G_MAXUINT); + } else { + /* It's fine to call it several times. But unfortunately it + * doesn't change the WebKitFindController:text property. So we + * must store our own search_text. + */ + webkit_find_controller_search_finish (find_controller); + } +} + +void +dh_web_view_search_next (DhWebView *view) +{ + WebKitFindController *find_controller; + + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + if (view->priv->search_text == NULL || view->priv->search_text[0] == '\0') + return; + + find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (view)); + webkit_find_controller_search_next (find_controller); +} + +void +dh_web_view_search_previous (DhWebView *view) +{ + WebKitFindController *find_controller; + + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + if (view->priv->search_text == NULL || view->priv->search_text[0] == '\0') + return; + + find_controller = webkit_web_view_get_find_controller (WEBKIT_WEB_VIEW (view)); + webkit_find_controller_search_previous (find_controller); +} + +gboolean +dh_web_view_can_zoom_in (DhWebView *view) +{ + gint zoom_level_index; + + g_return_val_if_fail (DH_IS_WEB_VIEW (view), FALSE); + + zoom_level_index = get_current_zoom_level_index (view); + return zoom_level_index < ((gint)n_zoom_levels - 1); +} + +gboolean +dh_web_view_can_zoom_out (DhWebView *view) +{ + gint zoom_level_index; + + g_return_val_if_fail (DH_IS_WEB_VIEW (view), FALSE); + + zoom_level_index = get_current_zoom_level_index (view); + return zoom_level_index > 0; +} + +gboolean +dh_web_view_can_reset_zoom (DhWebView *view) +{ + gint zoom_level_index; + + g_return_val_if_fail (DH_IS_WEB_VIEW (view), FALSE); + + zoom_level_index = get_current_zoom_level_index (view); + return zoom_levels[zoom_level_index] != ZOOM_DEFAULT; +} + +void +dh_web_view_zoom_in (DhWebView *view) +{ + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + bump_zoom_level (view, 1); +} + +void +dh_web_view_zoom_out (DhWebView *view) +{ + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + bump_zoom_level (view, -1); +} + +void +dh_web_view_reset_zoom (DhWebView *view) +{ + g_return_if_fail (DH_IS_WEB_VIEW (view)); + + webkit_web_view_set_zoom_level (WEBKIT_WEB_VIEW (view), ZOOM_DEFAULT); +} diff --git a/src/dh-web-view.h b/src/dh-web-view.h new file mode 100644 index 0000000..ae1e9c8 --- /dev/null +++ b/src/dh-web-view.h @@ -0,0 +1,77 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_WEB_VIEW_H +#define DH_WEB_VIEW_H + +#include + +G_BEGIN_DECLS + +#define DH_TYPE_WEB_VIEW (dh_web_view_get_type ()) +#define DH_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), DH_TYPE_WEB_VIEW, DhWebView)) +#define DH_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), DH_TYPE_WEB_VIEW, DhWebViewClass)) +#define DH_IS_WEB_VIEW(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), DH_TYPE_WEB_VIEW)) +#define DH_IS_WEB_VIEW_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), DH_TYPE_WEB_VIEW)) +#define DH_WEB_VIEW_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), DH_TYPE_WEB_VIEW, DhWebViewClass)) + +typedef struct _DhWebView DhWebView; +typedef struct _DhWebViewClass DhWebViewClass; +typedef struct _DhWebViewPrivate DhWebViewPrivate; + +struct _DhWebView { + WebKitWebView parent; + + DhWebViewPrivate *priv; +}; + +struct _DhWebViewClass { + WebKitWebViewClass parent_class; + + /* Padding for future expansion */ + gpointer padding[12]; +}; + +GType dh_web_view_get_type (void); + +DhWebView * dh_web_view_new (void); + +const gchar * dh_web_view_get_devhelp_title (DhWebView *view); + +void dh_web_view_set_search_text (DhWebView *view, + const gchar *search_text); + +void dh_web_view_search_next (DhWebView *view); + +void dh_web_view_search_previous (DhWebView *view); + +gboolean dh_web_view_can_zoom_in (DhWebView *view); + +gboolean dh_web_view_can_zoom_out (DhWebView *view); + +gboolean dh_web_view_can_reset_zoom (DhWebView *view); + +void dh_web_view_zoom_in (DhWebView *view); + +void dh_web_view_zoom_out (DhWebView *view); + +void dh_web_view_reset_zoom (DhWebView *view); + +G_END_DECLS + +#endif /* DH_WEB_VIEW_H */ diff --git a/src/dh-window.c b/src/dh-window.c new file mode 100644 index 0000000..a537bc2 --- /dev/null +++ b/src/dh-window.c @@ -0,0 +1,1080 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2001-2008 Imendio AB + * Copyright (C) 2012 Aleksander Morgado + * Copyright (C) 2012 Thomas Bechtold + * Copyright (C) 2015-2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-window.h" +#include +#include +#include "dh-book.h" +#include "dh-book-manager.h" +#include "dh-settings.h" +#include "dh-sidebar.h" +#include "dh-tab.h" +#include "dh-tab-label.h" +#include "dh-util.h" +#include "dh-web-view.h" + +typedef struct { + GtkHeaderBar *header_bar; + GtkMenuButton *window_menu_button; + GMenuModel *window_menu_plus_app_menu; + + GtkPaned *hpaned; + + /* Left side of the @hpaned. */ + GtkWidget *grid_sidebar; + DhSidebar *sidebar; + + /* Right side of the @hpaned. */ + GtkSearchBar *search_bar; + GtkSearchEntry *search_entry; + GtkButton *search_prev_button; + GtkButton *search_next_button; + GtkNotebook *notebook; + + DhLink *selected_link; +} DhWindowPrivate; + +static void open_new_tab (DhWindow *window, + const gchar *location, + gboolean switch_focus); + +G_DEFINE_TYPE_WITH_PRIVATE (DhWindow, dh_window, GTK_TYPE_APPLICATION_WINDOW); + +static void +dh_window_dispose (GObject *object) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (DH_WINDOW (object)); + + g_clear_pointer (&priv->selected_link, (GDestroyNotify) dh_link_unref); + + G_OBJECT_CLASS (dh_window_parent_class)->dispose (object); +} + +static gboolean +dh_window_delete_event (GtkWidget *widget, + GdkEventAny *event) +{ + DhSettings *settings; + + settings = dh_settings_get_singleton (); + dh_util_window_settings_save (GTK_WINDOW (widget), + dh_settings_peek_window_settings (settings)); + + if (GTK_WIDGET_CLASS (dh_window_parent_class)->delete_event == NULL) + return GDK_EVENT_PROPAGATE; + + return GTK_WIDGET_CLASS (dh_window_parent_class)->delete_event (widget, event); +} + +static void +dh_window_class_init (DhWindowClass *klass) +{ + GObjectClass *object_class = G_OBJECT_CLASS (klass); + GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass); + + object_class->dispose = dh_window_dispose; + + widget_class->delete_event = dh_window_delete_event; + + /* Bind class to template */ + gtk_widget_class_set_template_from_resource (widget_class, "/org/gnome/devhelp/dh-window.ui"); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, header_bar); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, window_menu_button); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, window_menu_plus_app_menu); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, hpaned); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, grid_sidebar); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, search_bar); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, search_entry); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, search_prev_button); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, search_next_button); + gtk_widget_class_bind_template_child_private (widget_class, DhWindow, notebook); +} + +/* Can return NULL during initialization and finalization, so it's better to + * handle the NULL case with the return value of this function. + */ +static DhTab * +get_active_tab (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint page_num; + + page_num = gtk_notebook_get_current_page (priv->notebook); + if (page_num == -1) + return NULL; + + return DH_TAB (gtk_notebook_get_nth_page (priv->notebook, page_num)); +} + +static DhWebView * +get_active_web_view (DhWindow *window) +{ + DhTab *tab; + + tab = get_active_tab (window); + return tab != NULL ? dh_tab_get_web_view (tab) : NULL; +} + +static void +update_window_title (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + DhWebView *web_view; + const gchar *title; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + title = dh_web_view_get_devhelp_title (web_view); + gtk_header_bar_set_title (priv->header_bar, title); +} + +static void +update_zoom_actions_sensitivity (DhWindow *window) +{ + DhWebView *web_view; + GAction *action; + gboolean enabled; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + enabled = dh_web_view_can_zoom_in (web_view); + action = g_action_map_lookup_action (G_ACTION_MAP (window), "zoom-in"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); + + enabled = dh_web_view_can_zoom_out (web_view); + action = g_action_map_lookup_action (G_ACTION_MAP (window), "zoom-out"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); + + enabled = dh_web_view_can_reset_zoom (web_view); + action = g_action_map_lookup_action (G_ACTION_MAP (window), "zoom-default"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); +} + +static void +update_back_forward_actions_sensitivity (DhWindow *window) +{ + DhWebView *web_view; + GAction *action; + gboolean enabled; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + enabled = webkit_web_view_can_go_back (WEBKIT_WEB_VIEW (web_view)); + action = g_action_map_lookup_action (G_ACTION_MAP (window), "go-back"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); + + enabled = webkit_web_view_can_go_forward (WEBKIT_WEB_VIEW (web_view)); + action = g_action_map_lookup_action (G_ACTION_MAP (window), "go-forward"); + g_simple_action_set_enabled (G_SIMPLE_ACTION (action), enabled); +} + +static void +new_tab_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + + open_new_tab (window, NULL, TRUE); +} + +static void +next_tab_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint current_page; + gint n_pages; + + current_page = gtk_notebook_get_current_page (priv->notebook); + n_pages = gtk_notebook_get_n_pages (priv->notebook); + + if (current_page < n_pages - 1) + gtk_notebook_next_page (priv->notebook); + else + /* Wrap around to the first tab. */ + gtk_notebook_set_current_page (priv->notebook, 0); +} + +static void +prev_tab_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint current_page; + + current_page = gtk_notebook_get_current_page (priv->notebook); + + if (current_page > 0) + gtk_notebook_prev_page (priv->notebook); + else + /* Wrap around to the last tab. */ + gtk_notebook_set_current_page (priv->notebook, -1); +} + +static void +go_to_tab_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + guint16 tab_num; + + tab_num = g_variant_get_uint16 (parameter); + gtk_notebook_set_current_page (priv->notebook, tab_num); +} + +static void +print_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + WebKitPrintOperation *print_operation; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + print_operation = webkit_print_operation_new (WEBKIT_WEB_VIEW (web_view)); + webkit_print_operation_run_dialog (print_operation, GTK_WINDOW (window)); + g_object_unref (print_operation); +} + +static void +close_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint page_num; + + /* FIXME: the code here closes the current *tab*, but in help-overlay.ui + * it is documented as "Close the current window". Look for example at + * what gedit does, or other GNOME apps with a GtkNotebook plus Ctrl+W + * shortcut, and do the same. + */ + page_num = gtk_notebook_get_current_page (priv->notebook); + gtk_notebook_remove_page (priv->notebook, page_num); +} + +static void +copy_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + GtkWidget *widget; + + widget = gtk_window_get_focus (GTK_WINDOW (window)); + + if (GTK_IS_EDITABLE (widget)) { + gtk_editable_copy_clipboard (GTK_EDITABLE (widget)); + } else if (GTK_IS_TREE_VIEW (widget) && + gtk_widget_is_ancestor (widget, GTK_WIDGET (priv->sidebar)) && + priv->selected_link != NULL) { + GtkClipboard *clipboard; + clipboard = gtk_widget_get_clipboard (widget, GDK_SELECTION_CLIPBOARD); + gtk_clipboard_set_text (clipboard, + dh_link_get_name (priv->selected_link), + -1); + } else { + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + webkit_web_view_execute_editing_command (WEBKIT_WEB_VIEW (web_view), + WEBKIT_EDITING_COMMAND_COPY); + } +} + +static void +find_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + + gtk_search_bar_set_search_mode (priv->search_bar, TRUE); + gtk_widget_grab_focus (GTK_WIDGET (priv->search_entry)); +} + +static void +zoom_in_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + dh_web_view_zoom_in (web_view); +} + +static void +zoom_out_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + dh_web_view_zoom_out (web_view); +} + +static void +zoom_default_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + dh_web_view_reset_zoom (web_view); +} + +static void +focus_search_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWindowPrivate *priv = dh_window_get_instance_private (window); + + dh_sidebar_set_search_focus (priv->sidebar); +} + +static void +go_back_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + webkit_web_view_go_back (WEBKIT_WEB_VIEW (web_view)); +} + +static void +go_forward_cb (GSimpleAction *action, + GVariant *parameter, + gpointer user_data) +{ + DhWindow *window = DH_WINDOW (user_data); + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + webkit_web_view_go_forward (WEBKIT_WEB_VIEW (web_view)); +} + +static void +add_actions (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + GPropertyAction *property_action; + + const GActionEntry win_entries[] = { + /* Tabs */ + { "new-tab", new_tab_cb }, + { "next-tab", next_tab_cb }, + { "prev-tab", prev_tab_cb }, + { "go-to-tab", go_to_tab_cb, "q" }, + { "print", print_cb }, + { "close", close_cb }, + + /* Edit */ + { "copy", copy_cb }, + { "find", find_cb }, + + /* View */ + { "zoom-in", zoom_in_cb }, + { "zoom-out", zoom_out_cb }, + { "zoom-default", zoom_default_cb }, + { "focus-search", focus_search_cb }, + + /* Go */ + { "go-back", go_back_cb }, + { "go-forward", go_forward_cb }, + }; + + g_action_map_add_action_entries (G_ACTION_MAP (window), + win_entries, + G_N_ELEMENTS (win_entries), + window); + + property_action = g_property_action_new ("show-sidebar", + priv->grid_sidebar, + "visible"); + g_action_map_add_action (G_ACTION_MAP (window), G_ACTION (property_action)); + g_object_unref (property_action); + + property_action = g_property_action_new ("show-window-menu", + priv->window_menu_button, + "active"); + g_action_map_add_action (G_ACTION_MAP (window), G_ACTION (property_action)); + g_object_unref (property_action); +} + +static void +settings_fonts_changed_cb (DhSettings *settings, + const gchar *font_name_fixed, + const gchar *font_name_variable, + DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint n_pages; + gint page_num; + + n_pages = gtk_notebook_get_n_pages (priv->notebook); + + for (page_num = 0; page_num < n_pages; page_num++) { + DhTab *tab; + WebKitWebView *web_view; + + tab = DH_TAB (gtk_notebook_get_nth_page (priv->notebook, page_num)); + web_view = WEBKIT_WEB_VIEW (dh_tab_get_web_view (tab)); + dh_util_view_set_font (web_view, font_name_fixed, font_name_variable); + } +} + +static void +sidebar_link_selected_cb (DhSidebar *sidebar, + DhLink *link, + DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gchar *uri; + DhWebView *web_view; + + g_clear_pointer (&priv->selected_link, (GDestroyNotify) dh_link_unref); + priv->selected_link = dh_link_ref (link); + + uri = dh_link_get_uri (link); + if (uri == NULL) + return; + + web_view = get_active_web_view (window); + if (web_view != NULL) + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), uri); + + g_free (uri); +} + +static void +update_search_in_web_view (DhWindow *window, + DhWebView *view) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + const gchar *search_text = NULL; + + if (gtk_search_bar_get_search_mode (priv->search_bar)) + search_text = gtk_entry_get_text (GTK_ENTRY (priv->search_entry)); + + dh_web_view_set_search_text (view, search_text); +} + +static void +update_search_in_active_web_view (DhWindow *window) +{ + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view != NULL) + update_search_in_web_view (window, web_view); +} + +static void +update_search_in_all_web_views (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint n_pages; + gint page_num; + + n_pages = gtk_notebook_get_n_pages (priv->notebook); + + for (page_num = 0; page_num < n_pages; page_num++) { + DhTab *tab; + + tab = DH_TAB (gtk_notebook_get_nth_page (priv->notebook, page_num)); + update_search_in_web_view (window, dh_tab_get_web_view (tab)); + } +} + +static void +search_previous_in_active_web_view (DhWindow *window) +{ + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + update_search_in_web_view (window, web_view); + dh_web_view_search_previous (web_view); +} + +static void +search_next_in_active_web_view (DhWindow *window) +{ + DhWebView *web_view; + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + update_search_in_web_view (window, web_view); + dh_web_view_search_next (web_view); +} + +static void +search_mode_enabled_notify_cb (GtkSearchBar *search_bar, + GParamSpec *pspec, + DhWindow *window) +{ + if (gtk_search_bar_get_search_mode (search_bar)) + update_search_in_active_web_view (window); + else + update_search_in_all_web_views (window); +} + +static void +search_changed_cb (GtkEntry *entry, + DhWindow *window) +{ + /* Note that this callback is called after a small delay. */ + update_search_in_active_web_view (window); +} + +static void +search_previous_match_cb (GtkSearchEntry *entry, + DhWindow *window) +{ + search_previous_in_active_web_view (window); +} + +static void +search_next_match_cb (GtkSearchEntry *entry, + DhWindow *window) +{ + search_next_in_active_web_view (window); +} + +static void +search_prev_button_clicked_cb (GtkButton *search_prev_button, + DhWindow *window) +{ + search_previous_in_active_web_view (window); +} + +static void +search_next_button_clicked_cb (GtkButton *search_next_button, + DhWindow *window) +{ + search_next_in_active_web_view (window); +} + +static void +show_or_hide_notebook_tabs (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + gint n_pages; + + n_pages = gtk_notebook_get_n_pages (priv->notebook); + gtk_notebook_set_show_tabs (priv->notebook, n_pages > 1); +} + +static void +notebook_page_added_after_cb (GtkNotebook *notebook, + GtkWidget *child, + guint page_num, + DhWindow *window) +{ + show_or_hide_notebook_tabs (window); +} + +static void +notebook_page_removed_after_cb (GtkNotebook *notebook, + GtkWidget *child, + guint page_num, + DhWindow *window) +{ + gint n_pages; + + n_pages = gtk_notebook_get_n_pages (notebook); + + if (n_pages == 0) + gtk_window_close (GTK_WINDOW (window)); + else + show_or_hide_notebook_tabs (window); +} + +static void +notebook_switch_page_after_cb (GtkNotebook *notebook, + GtkWidget *new_page, + guint new_page_num, + DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + + update_window_title (window); + update_zoom_actions_sensitivity (window); + update_back_forward_actions_sensitivity (window); + update_search_in_active_web_view (window); + + if (new_page != NULL) { + DhWebView *web_view; + const gchar *uri; + + web_view = dh_tab_get_web_view (DH_TAB (new_page)); + + /* Sync the book tree */ + uri = webkit_web_view_get_uri (WEBKIT_WEB_VIEW (web_view)); + if (uri != NULL) + dh_sidebar_select_uri (priv->sidebar, uri); + } +} + +static void +dh_window_init (DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + GtkApplication *app; + DhSettings *settings; + GSettings *paned_settings; + + gtk_widget_init_template (GTK_WIDGET (window)); + + add_actions (window); + + app = GTK_APPLICATION (g_application_get_default ()); + if (!gtk_application_prefers_app_menu (app)) { + gtk_menu_button_set_menu_model (priv->window_menu_button, + priv->window_menu_plus_app_menu); + } + + settings = dh_settings_get_singleton (); + g_signal_connect_object (settings, + "fonts-changed", + G_CALLBACK (settings_fonts_changed_cb), + window, + 0); + + paned_settings = dh_settings_peek_paned_settings (settings); + g_settings_bind (paned_settings, "position", + priv->hpaned, "position", + G_SETTINGS_BIND_DEFAULT | + G_SETTINGS_BIND_NO_SENSITIVITY); + + /* Sidebar */ + priv->sidebar = DH_SIDEBAR (dh_sidebar_new (NULL)); + gtk_widget_show (GTK_WIDGET (priv->sidebar)); + gtk_container_add (GTK_CONTAINER (priv->grid_sidebar), + GTK_WIDGET (priv->sidebar)); + + g_signal_connect (priv->sidebar, + "link-selected", + G_CALLBACK (sidebar_link_selected_cb), + window); + + /* Search bar above GtkNotebook */ + gtk_search_bar_connect_entry (priv->search_bar, GTK_ENTRY (priv->search_entry)); + + g_signal_connect (priv->search_bar, + "notify::search-mode-enabled", + G_CALLBACK (search_mode_enabled_notify_cb), + window); + + g_signal_connect (priv->search_entry, + "search-changed", + G_CALLBACK (search_changed_cb), + window); + + g_signal_connect (priv->search_entry, + "previous-match", + G_CALLBACK (search_previous_match_cb), + window); + + g_signal_connect (priv->search_entry, + "next-match", + G_CALLBACK (search_next_match_cb), + window); + + g_signal_connect (priv->search_prev_button, + "clicked", + G_CALLBACK (search_prev_button_clicked_cb), + window); + + g_signal_connect (priv->search_next_button, + "clicked", + G_CALLBACK (search_next_button_clicked_cb), + window); + + /* HTML tabs GtkNotebook */ + g_signal_connect_after (priv->notebook, + "page-added", + G_CALLBACK (notebook_page_added_after_cb), + window); + + g_signal_connect_after (priv->notebook, + "page-removed", + G_CALLBACK (notebook_page_removed_after_cb), + window); + + g_signal_connect_after (priv->notebook, + "switch-page", + G_CALLBACK (notebook_switch_page_after_cb), + window); + + open_new_tab (window, NULL, TRUE); + + /* Focus search in sidebar by default. */ + dh_sidebar_set_search_focus (priv->sidebar); +} + +static void +web_view_title_notify_cb (DhWebView *web_view, + GParamSpec *param_spec, + DhWindow *window) +{ + if (web_view == get_active_web_view (window)) + update_window_title (window); +} + +static void +web_view_zoom_level_notify_cb (DhWebView *web_view, + GParamSpec *pspec, + DhWindow *window) +{ + if (web_view == get_active_web_view (window)) + update_zoom_actions_sensitivity (window); +} + +/* FIXME: connect to this signal on the whole DhWindow widget instead? And call + * webkit_web_view_go_back/forward() on the active web view. Because when the + * WebKitWebView doesn't have the focus, currently this callback is not called. + */ +static gboolean +web_view_button_press_event_cb (WebKitWebView *web_view, + GdkEventButton *event, + DhWindow *window) +{ + switch (event->button) { + /* Some mice emit button presses when the scroll wheel is tilted + * to the side. Web browsers use them to navigate in history. + */ + case 8: + webkit_web_view_go_back (web_view); + return GDK_EVENT_STOP; + case 9: + webkit_web_view_go_forward (web_view); + return GDK_EVENT_STOP; + + default: + break; + } + + return GDK_EVENT_PROPAGATE; +} + +static gchar * +find_equivalent_local_uri (const gchar *uri) +{ + gchar **components; + guint n_components; + const gchar *book_id; + const gchar *relative_url; + DhBookManager *book_manager; + GList *books; + GList *book_node; + gchar *local_uri = NULL; + + g_return_val_if_fail (uri != NULL, NULL); + + components = g_strsplit (uri, "/", 0); + n_components = g_strv_length (components); + + if ((g_str_has_prefix (uri, "http://library.gnome.org/devel/") || + g_str_has_prefix (uri, "https://library.gnome.org/devel/")) && + n_components >= 7) { + book_id = components[4]; + relative_url = components[6]; + } else if ((g_str_has_prefix (uri, "http://developer.gnome.org/") || + g_str_has_prefix (uri, "https://developer.gnome.org/")) && + n_components >= 6) { + /* E.g. http://developer.gnome.org/gio/stable/ch02.html */ + book_id = components[3]; + relative_url = components[5]; + } else { + goto out; + } + + book_manager = dh_book_manager_get_singleton (); + books = dh_book_manager_get_books (book_manager); + + for (book_node = books; book_node != NULL; book_node = book_node->next) { + DhBook *cur_book = DH_BOOK (book_node->data); + GList *links; + GList *link_node; + + if (g_strcmp0 (dh_book_get_id (cur_book), book_id) != 0) + continue; + + links = dh_book_get_links (cur_book); + + for (link_node = links; link_node != NULL; link_node = link_node->next) { + DhLink *cur_link = link_node->data; + + if (dh_link_match_relative_url (cur_link, relative_url)) { + local_uri = dh_link_get_uri (cur_link); + goto out; + } + } + } + +out: + g_strfreev (components); + return local_uri; +} + +static gboolean +web_view_decide_policy_cb (WebKitWebView *web_view, + WebKitPolicyDecision *policy_decision, + WebKitPolicyDecisionType type, + DhWindow *window) +{ + const char *uri; + WebKitNavigationPolicyDecision *navigation_decision; + WebKitNavigationAction *navigation_action; + gchar *local_uri; + gint button; + gint state; + + if (type != WEBKIT_POLICY_DECISION_TYPE_NAVIGATION_ACTION) + return GDK_EVENT_PROPAGATE; + + navigation_decision = WEBKIT_NAVIGATION_POLICY_DECISION (policy_decision); + navigation_action = webkit_navigation_policy_decision_get_navigation_action (navigation_decision); + uri = webkit_uri_request_get_uri (webkit_navigation_action_get_request (navigation_action)); + + /* middle click or ctrl-click -> new tab */ + button = webkit_navigation_action_get_mouse_button (navigation_action); + state = webkit_navigation_action_get_modifiers (navigation_action); + if (button == 2 || (button == 1 && state == GDK_CONTROL_MASK)) { + webkit_policy_decision_ignore (policy_decision); + open_new_tab (window, uri, FALSE); + return GDK_EVENT_STOP; + } + + if (g_str_equal (uri, "about:blank")) { + return GDK_EVENT_PROPAGATE; + } + + local_uri = find_equivalent_local_uri (uri); + if (local_uri != NULL) { + webkit_policy_decision_ignore (policy_decision); + _dh_window_display_uri (window, local_uri); + g_free (local_uri); + return GDK_EVENT_STOP; + } + + if (!g_str_has_prefix (uri, "file://")) { + webkit_policy_decision_ignore (policy_decision); + gtk_show_uri_on_window (GTK_WINDOW (window), uri, GDK_CURRENT_TIME, NULL); + return GDK_EVENT_STOP; + } + + return GDK_EVENT_PROPAGATE; +} + +static void +web_view_load_changed_cb (WebKitWebView *web_view, + WebKitLoadEvent load_event, + DhWindow *window) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + + if (load_event == WEBKIT_LOAD_COMMITTED) { + const gchar *uri; + + uri = webkit_web_view_get_uri (web_view); + dh_sidebar_select_uri (priv->sidebar, uri); + } +} + +static void +open_new_tab (DhWindow *window, + const gchar *location, + gboolean switch_focus) +{ + DhWindowPrivate *priv = dh_window_get_instance_private (window); + DhTab *tab; + DhWebView *web_view; + DhSettings *settings; + gchar *font_fixed = NULL; + gchar *font_variable = NULL; + GtkWidget *label; + gint page_num; + WebKitBackForwardList *back_forward_list; + + tab = dh_tab_new (); + gtk_widget_show (GTK_WIDGET (tab)); + + web_view = dh_tab_get_web_view (tab); + + /* Set font */ + settings = dh_settings_get_singleton (); + dh_settings_get_selected_fonts (settings, &font_fixed, &font_variable); + dh_util_view_set_font (WEBKIT_WEB_VIEW (web_view), font_fixed, font_variable); + g_free (font_fixed); + g_free (font_variable); + + g_signal_connect (web_view, + "notify::title", + G_CALLBACK (web_view_title_notify_cb), + window); + + g_signal_connect (web_view, + "notify::zoom-level", + G_CALLBACK (web_view_zoom_level_notify_cb), + window); + + g_signal_connect (web_view, + "button-press-event", + G_CALLBACK (web_view_button_press_event_cb), + window); + + g_signal_connect (web_view, + "decide-policy", + G_CALLBACK (web_view_decide_policy_cb), + window); + + g_signal_connect (web_view, + "load-changed", + G_CALLBACK (web_view_load_changed_cb), + window); + + back_forward_list = webkit_web_view_get_back_forward_list (WEBKIT_WEB_VIEW (web_view)); + g_signal_connect_object (back_forward_list, + "changed", + G_CALLBACK (update_back_forward_actions_sensitivity), + window, + G_CONNECT_AFTER | G_CONNECT_SWAPPED); + + label = dh_tab_label_new (tab); + gtk_widget_show (label); + + page_num = gtk_notebook_append_page (priv->notebook, + GTK_WIDGET (tab), + label); + + gtk_container_child_set (GTK_CONTAINER (priv->notebook), + GTK_WIDGET (tab), + "tab-expand", TRUE, + "reorderable", TRUE, + NULL); + + if (location != NULL) + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), location); + else + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), "about:blank"); + + if (switch_focus) + gtk_notebook_set_current_page (priv->notebook, page_num); +} + +GtkWidget * +dh_window_new (GtkApplication *application) +{ + DhWindow *window; + DhSettings *settings; + + g_return_val_if_fail (GTK_IS_APPLICATION (application), NULL); + + window = g_object_new (DH_TYPE_WINDOW, + "application", application, + NULL); + + settings = dh_settings_get_singleton (); + gtk_widget_realize (GTK_WIDGET (window)); + dh_util_window_settings_restore (GTK_WINDOW (window), + dh_settings_peek_window_settings (settings)); + + return GTK_WIDGET (window); +} + +void +dh_window_search (DhWindow *window, + const gchar *str) +{ + DhWindowPrivate *priv; + + g_return_if_fail (DH_IS_WINDOW (window)); + + priv = dh_window_get_instance_private (window); + + dh_sidebar_set_search_string (priv->sidebar, str); +} + +/* Only call this with a URI that is known to be in the docs. */ +void +_dh_window_display_uri (DhWindow *window, + const gchar *uri) +{ + DhWindowPrivate *priv; + DhWebView *web_view; + + g_return_if_fail (DH_IS_WINDOW (window)); + g_return_if_fail (uri != NULL); + + priv = dh_window_get_instance_private (window); + + web_view = get_active_web_view (window); + if (web_view == NULL) + return; + + webkit_web_view_load_uri (WEBKIT_WEB_VIEW (web_view), uri); + dh_sidebar_select_uri (priv->sidebar, uri); +} diff --git a/src/dh-window.h b/src/dh-window.h new file mode 100644 index 0000000..8912825 --- /dev/null +++ b/src/dh-window.h @@ -0,0 +1,59 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2002 CodeFactory AB + * Copyright (C) 2001-2002 Mikael Hallendal + * Copyright (C) 2005 Imendio AB + * Copyright (C) 2017-2018 Sébastien Wilmet + * + * 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, see . + */ + +#ifndef DH_WINDOW_H +#define DH_WINDOW_H + +#include + +G_BEGIN_DECLS + +#define DH_TYPE_WINDOW (dh_window_get_type ()) +#define DH_WINDOW(o) (G_TYPE_CHECK_INSTANCE_CAST ((o), DH_TYPE_WINDOW, DhWindow)) +#define DH_WINDOW_CLASS(k) (G_TYPE_CHECK_CLASS_CAST ((k), DH_TYPE_WINDOW, DhWindowClass)) +#define DH_IS_WINDOW(o) (G_TYPE_CHECK_INSTANCE_TYPE ((o), DH_TYPE_WINDOW)) +#define DH_IS_WINDOW_CLASS(k) (G_TYPE_CHECK_CLASS_TYPE ((k), DH_TYPE_WINDOW)) +#define DH_WINDOW_GET_CLASS(o) (G_TYPE_INSTANCE_GET_CLASS ((o), DH_TYPE_WINDOW, DhWindowClass)) + +typedef struct _DhWindow DhWindow; +typedef struct _DhWindowClass DhWindowClass; + +struct _DhWindow { + GtkApplicationWindow parent_instance; +}; + +struct _DhWindowClass { + GtkApplicationWindowClass parent_class; +}; + +GType dh_window_get_type (void) G_GNUC_CONST; + +GtkWidget * dh_window_new (GtkApplication *application); + +void dh_window_search (DhWindow *window, + const gchar *str); + +void _dh_window_display_uri (DhWindow *window, + const gchar *uri); + +G_END_DECLS + +#endif /* DH_WINDOW_H */ diff --git a/src/dh-window.ui b/src/dh-window.ui new file mode 100644 index 0000000..4c8f2e8 --- /dev/null +++ b/src/dh-window.ui @@ -0,0 +1,315 @@ + + + + +
+ + _Side Panel + win.show-sidebar + +
+
+ + _Print + win.print + + + _Find + win.find + +
+
+ + _Larger Text + win.zoom-in + + + S_maller Text + win.zoom-out + + + _Normal Size + win.zoom-default + +
+
+ +
+ + New _Window + app.new-window + +
+
+ + _Side Panel + win.show-sidebar + +
+
+ + _Print + win.print + + + _Find + win.find + +
+
+ + _Larger Text + win.zoom-in + + + S_maller Text + win.zoom-out + + + _Normal Size + win.zoom-default + +
+
+ + _Preferences + app.preferences + +
+
+ + _Keyboard Shortcuts + win.show-help-overlay + + + _Help + app.help + + + _About Devhelp + app.about + + + _Quit + app.quit + +
+
+ +
diff --git a/src/dh.gresource.xml b/src/dh.gresource.xml new file mode 100644 index 0000000..6f58d06 --- /dev/null +++ b/src/dh.gresource.xml @@ -0,0 +1,12 @@ + + + + dh-assistant.ui + dh-preferences.ui + dh-window.ui + + + help-overlay.ui + menus.ui + + diff --git a/src/help-overlay.ui b/src/help-overlay.ui new file mode 100644 index 0000000..80eea36 --- /dev/null +++ b/src/help-overlay.ui @@ -0,0 +1,117 @@ + + + + + 1 + + + 1 + shortcuts + 10 + + + 1 + General + + + 1 + <Control>K + Focus global search + + + + + 1 + <Control>F + Find in current page + + + + + 1 + <Control>N + Open a new window + + + + + 1 + <Control>T + Open a new tab + + + + + 1 + F9 + Toggle side panel visibility + + + + + 1 + <alt>Left + Go back + + + + + 1 + <alt>Right + Go forward + + + + + 1 + <Control>P + Print + + + + + 1 + <Control>W + Close the current window + + + + + 1 + <Control>Q + Close all windows + + + + + + + 1 + Zoom + + + 1 + <ctrl>plus + Zoom in + + + + + 1 + <ctrl>minus + Zoom out + + + + + 1 + <ctrl>0 + Reset Zoom + + + + + + + + diff --git a/src/menus.ui b/src/menus.ui new file mode 100644 index 0000000..3e67f73 --- /dev/null +++ b/src/menus.ui @@ -0,0 +1,59 @@ + + + + + + + + +
+ + New _Window + app.new-window + +
+
+ + _Preferences + app.preferences + +
+
+ + _Keyboard Shortcuts + win.show-help-overlay + + + _Help + app.help + + + _About + app.about + + + _Quit + app.quit + +
+
+
diff --git a/src/tepl-info-bar.c b/src/tepl-info-bar.c new file mode 100644 index 0000000..af09fda --- /dev/null +++ b/src/tepl-info-bar.c @@ -0,0 +1,450 @@ +/* Code copied from Tepl: + * https://wiki.gnome.org/Projects/Tepl + * Do not modify, modify upstream and then copy it back here. + */ + +/* + * This file is part of Tepl, a text editor library. + * + * Copyright 2016, 2017 - Sébastien Wilmet + * + * Tepl is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the + * Free Software Foundation; either version 2.1 of the License, or (at your + * option) any later version. + * + * Tepl 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 Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, see . + */ + +#include "tepl-info-bar.h" + +/* + * SECTION:info-bar + * @Short_description: Subclass of GtkInfoBar + * @Title: TeplInfoBar + * + * #TeplInfoBar is a subclass of #GtkInfoBar with a vertical action area and + * functions to ease the creation of info bars. + */ + +typedef struct _TeplInfoBarPrivate TeplInfoBarPrivate; + +struct _TeplInfoBarPrivate +{ + /* Left: icon. Right: content_vgrid. */ + GtkGrid *content_hgrid; + + /* Contains primary/secondary messages. */ + GtkGrid *content_vgrid; + + guint close_button_added : 1; +}; + +G_DEFINE_TYPE_WITH_PRIVATE (TeplInfoBar, tepl_info_bar, GTK_TYPE_INFO_BAR) + +static void +tepl_info_bar_response (GtkInfoBar *gtk_info_bar, + gint response_id) +{ + TeplInfoBar *info_bar = TEPL_INFO_BAR (gtk_info_bar); + TeplInfoBarPrivate *priv = tepl_info_bar_get_instance_private (info_bar); + + if (response_id == GTK_RESPONSE_CLOSE && + priv->close_button_added) + { + gtk_widget_destroy (GTK_WIDGET (info_bar)); + + /* No need to chain up, the widget is destroyed. */ + return; + } + + if (GTK_INFO_BAR_CLASS (tepl_info_bar_parent_class)->response != NULL) + { + GTK_INFO_BAR_CLASS (tepl_info_bar_parent_class)->response (gtk_info_bar, + response_id); + } +} + +static void +tepl_info_bar_class_init (TeplInfoBarClass *klass) +{ + GtkInfoBarClass *info_bar_class = GTK_INFO_BAR_CLASS (klass); + + info_bar_class->response = tepl_info_bar_response; +} + +static void +tepl_info_bar_init (TeplInfoBar *info_bar) +{ + TeplInfoBarPrivate *priv; + GtkWidget *action_area; + GtkWidget *content_area; + + priv = tepl_info_bar_get_instance_private (info_bar); + + _tepl_info_bar_set_size_request (GTK_INFO_BAR (info_bar)); + + /* Change the buttons orientation to be vertical. + * + * With a small window, if 3 or more buttons are shown horizontally, + * there is a ridiculous amount of space for the text. And it can get + * worse since the button labels are translatable, in other languages it + * can take even more place. If the buttons are packed vertically, there + * is no problem. + * + * The GtkInfoBar implementation comes originally from gedit, and the + * action area was vertical. Then IIRC a GNOME designer decided that the + * action area must be horizontal, making the gedit info bars look + * weird... So, come back to the original design. + */ + action_area = gtk_info_bar_get_action_area (GTK_INFO_BAR (info_bar)); + if (GTK_IS_ORIENTABLE (action_area)) + { + gtk_orientable_set_orientation (GTK_ORIENTABLE (action_area), + GTK_ORIENTATION_VERTICAL); + } + else + { + g_warning ("Failed to set vertical orientation to the GtkInfoBar action area."); + } + + /* hgrid */ + priv->content_hgrid = GTK_GRID (gtk_grid_new ()); + gtk_orientable_set_orientation (GTK_ORIENTABLE (priv->content_hgrid), + GTK_ORIENTATION_HORIZONTAL); + gtk_grid_set_column_spacing (priv->content_hgrid, 16); + gtk_widget_show (GTK_WIDGET (priv->content_hgrid)); + + content_area = gtk_info_bar_get_content_area (GTK_INFO_BAR (info_bar)); + gtk_container_add (GTK_CONTAINER (content_area), + GTK_WIDGET (priv->content_hgrid)); + + /* vgrid */ + priv->content_vgrid = GTK_GRID (gtk_grid_new ()); + gtk_orientable_set_orientation (GTK_ORIENTABLE (priv->content_vgrid), + GTK_ORIENTATION_VERTICAL); + gtk_grid_set_row_spacing (priv->content_vgrid, 6); + gtk_widget_show (GTK_WIDGET (priv->content_vgrid)); + + gtk_container_add (GTK_CONTAINER (priv->content_hgrid), + GTK_WIDGET (priv->content_vgrid)); +} + +/** + * tepl_info_bar_new: + * + * Returns: a new #TeplInfoBar. + * Since: 1.0 + */ +TeplInfoBar * +tepl_info_bar_new (void) +{ + return g_object_new (TEPL_TYPE_INFO_BAR, NULL); +} + +/** + * tepl_info_bar_new_simple: + * @msg_type: the message type. + * @primary_msg: the primary message. + * @secondary_msg: (nullable): the secondary message, or %NULL. + * + * Creates a new #TeplInfoBar with an icon (depending on @msg_type), a primary + * message and a secondary message. + * + * Returns: a new #TeplInfoBar. + * Since: 2.0 + */ +TeplInfoBar * +tepl_info_bar_new_simple (GtkMessageType msg_type, + const gchar *primary_msg, + const gchar *secondary_msg) +{ + TeplInfoBar *info_bar; + + g_return_val_if_fail (primary_msg != NULL, NULL); + + info_bar = tepl_info_bar_new (); + + gtk_info_bar_set_message_type (GTK_INFO_BAR (info_bar), msg_type); + tepl_info_bar_add_icon (info_bar); + tepl_info_bar_add_primary_message (info_bar, primary_msg); + + if (secondary_msg != NULL) + { + tepl_info_bar_add_secondary_message (info_bar, secondary_msg); + } + + return info_bar; +} + +static const gchar * +get_icon_name (TeplInfoBar *info_bar) +{ + GtkMessageType msg_type; + + msg_type = gtk_info_bar_get_message_type (GTK_INFO_BAR (info_bar)); + + switch (msg_type) + { + case GTK_MESSAGE_INFO: + return "dialog-information"; + + case GTK_MESSAGE_WARNING: + return "dialog-warning"; + + case GTK_MESSAGE_QUESTION: + return "dialog-question"; + + case GTK_MESSAGE_ERROR: + return "dialog-error"; + + case GTK_MESSAGE_OTHER: + default: + /* No icon */ + break; + } + + return NULL; +} + +/** + * tepl_info_bar_add_icon: + * @info_bar: a #TeplInfoBar. + * + * Adds an icon on the left, determined by the message type. So before calling + * this function, gtk_info_bar_set_message_type() must have been called. + * + * The icon is not updated when the message type changes. Another #TeplInfoBar + * must be created in that case. + * + * Since: 2.0 + */ +void +tepl_info_bar_add_icon (TeplInfoBar *info_bar) +{ + TeplInfoBarPrivate *priv; + const gchar *icon_name; + GtkWidget *image; + + g_return_if_fail (TEPL_IS_INFO_BAR (info_bar)); + + priv = tepl_info_bar_get_instance_private (info_bar); + + icon_name = get_icon_name (info_bar); + if (icon_name == NULL) + { + return; + } + + image = gtk_image_new_from_icon_name (icon_name, GTK_ICON_SIZE_DIALOG); + gtk_widget_set_valign (image, GTK_ALIGN_START); + gtk_widget_show (image); + + gtk_grid_attach_next_to (priv->content_hgrid, + image, + GTK_WIDGET (priv->content_vgrid), + GTK_POS_LEFT, + 1, + 1); +} + +/** + * tepl_info_bar_add_primary_message: + * @info_bar: a #TeplInfoBar. + * @primary_msg: a primary message. + * + * Adds a primary message. + * Since: 2.0 + */ +void +tepl_info_bar_add_primary_message (TeplInfoBar *info_bar, + const gchar *primary_msg) +{ + TeplInfoBarPrivate *priv; + gchar *primary_msg_escaped; + gchar *primary_markup; + GtkLabel *primary_label; + + g_return_if_fail (TEPL_IS_INFO_BAR (info_bar)); + g_return_if_fail (primary_msg != NULL); + + priv = tepl_info_bar_get_instance_private (info_bar); + + primary_msg_escaped = g_markup_escape_text (primary_msg, -1); + primary_markup = g_strdup_printf ("%s", primary_msg_escaped); + primary_label = tepl_info_bar_create_label (); + gtk_label_set_markup (primary_label, primary_markup); + g_free (primary_markup); + g_free (primary_msg_escaped); + + gtk_widget_show (GTK_WIDGET (primary_label)); + gtk_container_add (GTK_CONTAINER (priv->content_vgrid), + GTK_WIDGET (primary_label)); +} + +/** + * tepl_info_bar_add_secondary_message: + * @info_bar: a #TeplInfoBar. + * @secondary_msg: a secondary message. + * + * Adds a secondary message. + * Since: 2.0 + */ +void +tepl_info_bar_add_secondary_message (TeplInfoBar *info_bar, + const gchar *secondary_msg) +{ + TeplInfoBarPrivate *priv; + gchar *secondary_msg_escaped; + gchar *secondary_markup; + GtkLabel *secondary_label; + + g_return_if_fail (TEPL_IS_INFO_BAR (info_bar)); + g_return_if_fail (secondary_msg != NULL); + + priv = tepl_info_bar_get_instance_private (info_bar); + + secondary_msg_escaped = g_markup_escape_text (secondary_msg, -1); + secondary_markup = g_strdup_printf ("%s", secondary_msg_escaped); + secondary_label = tepl_info_bar_create_label (); + gtk_label_set_markup (secondary_label, secondary_markup); + g_free (secondary_markup); + g_free (secondary_msg_escaped); + + gtk_widget_show (GTK_WIDGET (secondary_label)); + gtk_container_add (GTK_CONTAINER (priv->content_vgrid), + GTK_WIDGET (secondary_label)); +} + +/** + * tepl_info_bar_add_content_widget: + * @info_bar: a #TeplInfoBar. + * @content: a #GtkWidget. + * + * Adds @content to @info_bar. + * + * #TeplInfoBar has an internal container, to be able to add the icon and add + * primary or secondary messages. The internal container is added to the content + * area, as returned by gtk_info_bar_get_content_area(). So if you use a + * #TeplInfoBar and you need to add a custom #GtkWidget, it is better to use + * this function instead of adding the #GtkWidget directly to the content area. + * + * Since: 2.0 + */ +void +tepl_info_bar_add_content_widget (TeplInfoBar *info_bar, + GtkWidget *content) +{ + TeplInfoBarPrivate *priv; + + g_return_if_fail (TEPL_IS_INFO_BAR (info_bar)); + g_return_if_fail (GTK_IS_WIDGET (content)); + + priv = tepl_info_bar_get_instance_private (info_bar); + + gtk_container_add (GTK_CONTAINER (priv->content_vgrid), content); +} + +/** + * tepl_info_bar_add_close_button: + * @info_bar: a #TeplInfoBar. + * + * Calls gtk_info_bar_set_show_close_button(), and additionnally closes the + * @info_bar when the #GtkInfoBar::response signal is received with the + * @response_id %GTK_RESPONSE_CLOSE. + * + * Since: 2.0 + */ +void +tepl_info_bar_add_close_button (TeplInfoBar *info_bar) +{ + TeplInfoBarPrivate *priv; + + g_return_if_fail (TEPL_IS_INFO_BAR (info_bar)); + + priv = tepl_info_bar_get_instance_private (info_bar); + + gtk_info_bar_set_show_close_button (GTK_INFO_BAR (info_bar), TRUE); + + priv->close_button_added = TRUE; +} + +/** + * tepl_info_bar_create_label: + * + * Utility function to create a #GtkLabel suitable for a #GtkInfoBar. The + * wrapping and alignment is configured. The label is also set as selectable, + * for example to copy an error message and search an explanation on the web. + * + * Returns: (transfer floating): a new #GtkLabel suitable for a #GtkInfoBar. + * Since: 1.0 + */ +GtkLabel * +tepl_info_bar_create_label (void) +{ + GtkLabel *label; + + label = GTK_LABEL (gtk_label_new (NULL)); + gtk_widget_set_halign (GTK_WIDGET (label), GTK_ALIGN_START); + gtk_label_set_xalign (label, 0.0); + gtk_label_set_line_wrap (label, TRUE); + gtk_label_set_line_wrap_mode (label, PANGO_WRAP_WORD_CHAR); + gtk_label_set_selectable (label, TRUE); + + /* Since the wrapping is enabled, we need to set a minimum width. + * + * If a minimum width is not set, adding an info bar to a container + * (e.g. a TeplTab) can make the GtkWindow height to grow. Because + * without a minimum width (and without ellipsization), when the user + * resizes the window (e.g. reducing the width) the widgets inside the + * window must be able to be drawn. When the info bar must be drawn with + * a width of e.g. 20 pixels, it takes a huge height because of the text + * wrapping. So by setting a minimum width to the label, the maximum + * height that the info bar can take is limited, so in most cases the + * GtkWindow current height is sufficient to draw the info bar with its + * maximum height. + * + * See: + * https://wiki.gnome.org/HowDoI/Labels + * + * There is also a safety net in tepl_tab_add_info_bar() which calls + * gtk_widget_set_size_request() on the GtkInfoBar, to set a minimum + * width. + */ + gtk_label_set_width_chars (label, 30); + + return label; +} + +void +_tepl_info_bar_set_size_request (GtkInfoBar *info_bar) +{ + gint min_width; + gint min_height; + + g_return_if_fail (GTK_IS_INFO_BAR (info_bar)); + + gtk_widget_get_size_request (GTK_WIDGET (info_bar), &min_width, &min_height); + + /* If min_width != -1, gtk_widget_set_size_request() has already been + * called, so don't change the value. + */ + if (min_width == -1) + { + /* Safety net to avoid in most cases the GtkWindow height to + * grow. + * + * The gtk_label_set_width_chars() call in + * tepl_info_bar_create_label() fixes the problem at the root, + * but we cannot enforce all GtkLabel of @info_bar to be created + * with tepl_info_bar_create_label(), so a safety net is better. + */ + gtk_widget_set_size_request (GTK_WIDGET (info_bar), 300, min_height); + } +} diff --git a/src/tepl-info-bar.h b/src/tepl-info-bar.h new file mode 100644 index 0000000..0ada12d --- /dev/null +++ b/src/tepl-info-bar.h @@ -0,0 +1,70 @@ +/* Code copied from Tepl: + * https://wiki.gnome.org/Projects/Tepl + * Do not modify, modify upstream and then copy it back here. + */ + +/* + * This file is part of Tepl, a text editor library. + * + * Copyright 2016, 2017 - Sébastien Wilmet + * + * Tepl is free software; you can redistribute it and/or modify it under + * the terms of the GNU Lesser General Public License as published by the + * Free Software Foundation; either version 2.1 of the License, or (at your + * option) any later version. + * + * Tepl 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 Lesser General Public + * License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library; if not, see . + */ + +#ifndef TEPL_INFO_BAR_H +#define TEPL_INFO_BAR_H + +#include + +G_BEGIN_DECLS + +#define TEPL_TYPE_INFO_BAR (tepl_info_bar_get_type ()) +G_DECLARE_DERIVABLE_TYPE (TeplInfoBar, tepl_info_bar, + TEPL, INFO_BAR, + GtkInfoBar) + +struct _TeplInfoBarClass +{ + GtkInfoBarClass parent_class; + + gpointer padding[12]; +}; + +TeplInfoBar * tepl_info_bar_new (void); + +TeplInfoBar * tepl_info_bar_new_simple (GtkMessageType msg_type, + const gchar *primary_msg, + const gchar *secondary_msg); + +void tepl_info_bar_add_icon (TeplInfoBar *info_bar); + +void tepl_info_bar_add_primary_message (TeplInfoBar *info_bar, + const gchar *primary_msg); + +void tepl_info_bar_add_secondary_message (TeplInfoBar *info_bar, + const gchar *secondary_msg); + +void tepl_info_bar_add_content_widget (TeplInfoBar *info_bar, + GtkWidget *content); + +void tepl_info_bar_add_close_button (TeplInfoBar *info_bar); + +GtkLabel * tepl_info_bar_create_label (void); + +G_GNUC_INTERNAL +void _tepl_info_bar_set_size_request (GtkInfoBar *info_bar); + +G_END_DECLS + +#endif /* TEPL_INFO_BAR_H */ diff --git a/test-driver b/test-driver new file mode 100755 index 0000000..0218a01 --- /dev/null +++ b/test-driver @@ -0,0 +1,148 @@ +#! /bin/sh +# test-driver - basic testsuite driver script. + +scriptversion=2016-01-11.22; # UTC + +# Copyright (C) 2011-2017 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, see . + +# 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 +# . + +# Make unconditional expansion of undefined variables an error. This +# helps a lot in preventing typo-related bugs. +set -u + +usage_error () +{ + echo "$0: $*" >&2 + print_usage >&2 + exit 2 +} + +print_usage () +{ + cat <$log_file 2>&1 +estatus=$? + +if test $enable_hard_errors = no && test $estatus -eq 99; then + tweaked_estatus=1 +else + tweaked_estatus=$estatus +fi + +case $tweaked_estatus:$expect_failure in + 0:yes) col=$red res=XPASS recheck=yes gcopy=yes;; + 0:*) col=$grn res=PASS recheck=no gcopy=no;; + 77:*) col=$blu res=SKIP recheck=no gcopy=yes;; + 99:*) col=$mgn res=ERROR recheck=yes gcopy=yes;; + *:yes) col=$lgn res=XFAIL recheck=no gcopy=yes;; + *:*) col=$red res=FAIL recheck=yes gcopy=yes;; +esac + +# Report the test outcome and exit status in the logs, so that one can +# know whether the test passed or failed simply by looking at the '.log' +# file, without the need of also peaking into the corresponding '.trs' +# file (automake bug#11814). +echo "$res $test_name (exit status: $estatus)" >>$log_file + +# Report outcome to console. +echo "${col}${res}${std}: $test_name" + +# Register the test result, and other relevant metadata. +echo ":test-result: $res" > $trs_file +echo ":global-test-result: $res" >> $trs_file +echo ":recheck: $recheck" >> $trs_file +echo ":copy-in-global-log: $gcopy" >> $trs_file + +# 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-time-zone: "UTC0" +# time-stamp-end: "; # UTC" +# End: diff --git a/unit-tests/Makefile.am b/unit-tests/Makefile.am new file mode 100644 index 0000000..a5e645b --- /dev/null +++ b/unit-tests/Makefile.am @@ -0,0 +1,30 @@ +AM_CPPFLAGS = \ + -I$(top_srcdir)/src \ + -I$(top_builddir)/src \ + $(WARN_CFLAGS) \ + $(DEVHELP_CFLAGS) + +AM_LDFLAGS = $(WARN_LDFLAGS) + +LDADD = $(top_builddir)/src/libdevhelp-core.la \ + $(DEVHELP_LIBS) \ + $(LIBM) + +UNIT_TEST_PROGS = + +UNIT_TEST_PROGS += test-completion +test_completion_SOURCES = test-completion.c + +UNIT_TEST_PROGS += test-link +test_link_SOURCES = test-link.c + +UNIT_TEST_PROGS += test-search-context +test_search_context_SOURCES = test-search-context.c + +UNIT_TEST_PROGS += test-util +test_util_SOURCES = test-util.c + +noinst_PROGRAMS = $(UNIT_TEST_PROGS) +TESTS = $(UNIT_TEST_PROGS) + +-include $(top_srcdir)/git.mk diff --git a/unit-tests/Makefile.in b/unit-tests/Makefile.in new file mode 100644 index 0000000..b3dc9d1 --- /dev/null +++ b/unit-tests/Makefile.in @@ -0,0 +1,1118 @@ +# Makefile.in generated by automake 1.15.1 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2017 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@ + +VPATH = @srcdir@ +am__is_gnu_make = { \ + if test -z '$(MAKELEVEL)'; then \ + false; \ + elif test -n '$(MAKE_HOST)'; then \ + true; \ + elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \ + true; \ + else \ + false; \ + fi; \ +} +am__make_running_with_option = \ + case $${target_option-} in \ + ?) ;; \ + *) echo "am__make_running_with_option: internal error: invalid" \ + "target option '$${target_option-}' specified" >&2; \ + exit 1;; \ + esac; \ + has_opt=no; \ + sane_makeflags=$$MAKEFLAGS; \ + if $(am__is_gnu_make); then \ + sane_makeflags=$$MFLAGS; \ + else \ + case $$MAKEFLAGS in \ + *\\[\ \ ]*) \ + bs=\\; \ + sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \ + | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \ + esac; \ + fi; \ + skip_next=no; \ + strip_trailopt () \ + { \ + flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \ + }; \ + for flg in $$sane_makeflags; do \ + test $$skip_next = yes && { skip_next=no; continue; }; \ + case $$flg in \ + *=*|--*) continue;; \ + -*I) strip_trailopt 'I'; skip_next=yes;; \ + -*I?*) strip_trailopt 'I';; \ + -*O) strip_trailopt 'O'; skip_next=yes;; \ + -*O?*) strip_trailopt 'O';; \ + -*l) strip_trailopt 'l'; skip_next=yes;; \ + -*l?*) strip_trailopt 'l';; \ + -[dEDm]) skip_next=yes;; \ + -[JT]) skip_next=yes;; \ + esac; \ + case $$flg in \ + *$$target_option*) has_opt=yes; break;; \ + esac; \ + done; \ + test $$has_opt = yes +am__make_dryrun = (target_option=n; $(am__make_running_with_option)) +am__make_keepgoing = (target_option=k; $(am__make_running_with_option)) +pkgdatadir = $(datadir)/@PACKAGE@ +pkgincludedir = $(includedir)/@PACKAGE@ +pkglibdir = $(libdir)/@PACKAGE@ +pkglibexecdir = $(libexecdir)/@PACKAGE@ +am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd +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@ +noinst_PROGRAMS = $(am__EXEEXT_1) +TESTS = $(am__EXEEXT_1) +subdir = unit-tests +ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 +am__aclocal_m4_deps = $(top_srcdir)/m4/appstream-xml.m4 \ + $(top_srcdir)/m4/ax_append_compile_flags.m4 \ + $(top_srcdir)/m4/ax_append_flag.m4 \ + $(top_srcdir)/m4/ax_append_link_flags.m4 \ + $(top_srcdir)/m4/ax_check_compile_flag.m4 \ + $(top_srcdir)/m4/ax_check_link_flag.m4 \ + $(top_srcdir)/m4/ax_compiler_flags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_cflags.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_gir.m4 \ + $(top_srcdir)/m4/ax_compiler_flags_ldflags.m4 \ + $(top_srcdir)/m4/ax_is_release.m4 \ + $(top_srcdir)/m4/ax_pkg_check_modules.m4 \ + $(top_srcdir)/m4/ax_require_defined.m4 \ + $(top_srcdir)/m4/gettext.m4 $(top_srcdir)/m4/gsettings.m4 \ + $(top_srcdir)/m4/gtk-doc.m4 $(top_srcdir)/m4/iconv.m4 \ + $(top_srcdir)/m4/intlmacosx.m4 \ + $(top_srcdir)/m4/introspection.m4 $(top_srcdir)/m4/lib-ld.m4 \ + $(top_srcdir)/m4/lib-link.m4 $(top_srcdir)/m4/lib-prefix.m4 \ + $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \ + $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \ + $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/m4/nls.m4 \ + $(top_srcdir)/m4/pkg.m4 $(top_srcdir)/m4/po.m4 \ + $(top_srcdir)/m4/progtest.m4 $(top_srcdir)/m4/yelp.m4 \ + $(top_srcdir)/configure.ac +am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ + $(ACLOCAL_M4) +DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON) +mkinstalldirs = $(install_sh) -d +CONFIG_HEADER = $(top_builddir)/config.h +CONFIG_CLEAN_FILES = +CONFIG_CLEAN_VPATH_FILES = +am__EXEEXT_1 = test-completion$(EXEEXT) test-link$(EXEEXT) \ + test-search-context$(EXEEXT) test-util$(EXEEXT) +PROGRAMS = $(noinst_PROGRAMS) +am_test_completion_OBJECTS = test-completion.$(OBJEXT) +test_completion_OBJECTS = $(am_test_completion_OBJECTS) +test_completion_LDADD = $(LDADD) +am__DEPENDENCIES_1 = +test_completion_DEPENDENCIES = $(top_builddir)/src/libdevhelp-core.la \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +am_test_link_OBJECTS = test-link.$(OBJEXT) +test_link_OBJECTS = $(am_test_link_OBJECTS) +test_link_LDADD = $(LDADD) +test_link_DEPENDENCIES = $(top_builddir)/src/libdevhelp-core.la \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +am_test_search_context_OBJECTS = test-search-context.$(OBJEXT) +test_search_context_OBJECTS = $(am_test_search_context_OBJECTS) +test_search_context_LDADD = $(LDADD) +test_search_context_DEPENDENCIES = \ + $(top_builddir)/src/libdevhelp-core.la $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +am_test_util_OBJECTS = test-util.$(OBJEXT) +test_util_OBJECTS = $(am_test_util_OBJECTS) +test_util_LDADD = $(LDADD) +test_util_DEPENDENCIES = $(top_builddir)/src/libdevhelp-core.la \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +AM_V_P = $(am__v_P_@AM_V@) +am__v_P_ = $(am__v_P_@AM_DEFAULT_V@) +am__v_P_0 = false +am__v_P_1 = : +AM_V_GEN = $(am__v_GEN_@AM_V@) +am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@) +am__v_GEN_0 = @echo " GEN " $@; +am__v_GEN_1 = +AM_V_at = $(am__v_at_@AM_V@) +am__v_at_ = $(am__v_at_@AM_DEFAULT_V@) +am__v_at_0 = @ +am__v_at_1 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = $(test_completion_SOURCES) $(test_link_SOURCES) \ + $(test_search_context_SOURCES) $(test_util_SOURCES) +DIST_SOURCES = $(test_completion_SOURCES) $(test_link_SOURCES) \ + $(test_search_context_SOURCES) $(test_util_SOURCES) +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__tty_colors_dummy = \ + mgn= red= grn= lgn= blu= brg= std=; \ + am__color_tests=no +am__tty_colors = { \ + $(am__tty_colors_dummy); \ + if test "X$(AM_COLOR_TESTS)" = Xno; then \ + am__color_tests=no; \ + elif test "X$(AM_COLOR_TESTS)" = Xalways; then \ + am__color_tests=yes; \ + elif test "X$$TERM" != Xdumb && { test -t 1; } 2>/dev/null; then \ + am__color_tests=yes; \ + fi; \ + if test $$am__color_tests = yes; then \ + red=''; \ + grn=''; \ + lgn=''; \ + blu=''; \ + mgn=''; \ + brg=''; \ + std=''; \ + fi; \ +} +am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; +am__vpath_adj = case $$p in \ + $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ + *) f=$$p;; \ + esac; +am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`; +am__install_max = 40 +am__nobase_strip_setup = \ + srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'` +am__nobase_strip = \ + for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||" +am__nobase_list = $(am__nobase_strip_setup); \ + for p in $$list; do echo "$$p $$p"; done | \ + sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \ + $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \ + if (++n[$$2] == $(am__install_max)) \ + { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \ + END { for (dir in files) print dir, files[dir] }' +am__base_list = \ + sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \ + sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g' +am__uninstall_files_from_dir = { \ + test -z "$$files" \ + || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \ + || { echo " ( cd '$$dir' && rm -f" $$files ")"; \ + $(am__cd) "$$dir" && rm -f $$files; }; \ + } +am__recheck_rx = ^[ ]*:recheck:[ ]* +am__global_test_result_rx = ^[ ]*:global-test-result:[ ]* +am__copy_in_global_log_rx = ^[ ]*:copy-in-global-log:[ ]* +# A command that, given a newline-separated list of test names on the +# standard input, print the name of the tests that are to be re-run +# upon "make recheck". +am__list_recheck_tests = $(AWK) '{ \ + recheck = 1; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + { \ + if ((getline line2 < ($$0 ".log")) < 0) \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[nN][Oo]/) \ + { \ + recheck = 0; \ + break; \ + } \ + else if (line ~ /$(am__recheck_rx)[yY][eE][sS]/) \ + { \ + break; \ + } \ + }; \ + if (recheck) \ + print $$0; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# A command that, given a newline-separated list of test names on the +# standard input, create the global log from their .trs and .log files. +am__create_global_log = $(AWK) ' \ +function fatal(msg) \ +{ \ + print "fatal: making $@: " msg | "cat >&2"; \ + exit 1; \ +} \ +function rst_section(header) \ +{ \ + print header; \ + len = length(header); \ + for (i = 1; i <= len; i = i + 1) \ + printf "="; \ + printf "\n\n"; \ +} \ +{ \ + copy_in_global_log = 1; \ + global_test_result = "RUN"; \ + while ((rc = (getline line < ($$0 ".trs"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".trs"); \ + if (line ~ /$(am__global_test_result_rx)/) \ + { \ + sub("$(am__global_test_result_rx)", "", line); \ + sub("[ ]*$$", "", line); \ + global_test_result = line; \ + } \ + else if (line ~ /$(am__copy_in_global_log_rx)[nN][oO]/) \ + copy_in_global_log = 0; \ + }; \ + if (copy_in_global_log) \ + { \ + rst_section(global_test_result ": " $$0); \ + while ((rc = (getline line < ($$0 ".log"))) != 0) \ + { \ + if (rc < 0) \ + fatal("failed to read from " $$0 ".log"); \ + print line; \ + }; \ + printf "\n"; \ + }; \ + close ($$0 ".trs"); \ + close ($$0 ".log"); \ +}' +# Restructured Text title. +am__rst_title = { sed 's/.*/ & /;h;s/./=/g;p;x;s/ *$$//;p;g' && echo; } +# Solaris 10 'make', and several other traditional 'make' implementations, +# pass "-e" to $(SHELL), and POSIX 2008 even requires this. Work around it +# by disabling -e (using the XSI extension "set +e") if it's set. +am__sh_e_setup = case $$- in *e*) set +e;; esac +# Default flags passed to test drivers. +am__common_driver_flags = \ + --color-tests "$$am__color_tests" \ + --enable-hard-errors "$$am__enable_hard_errors" \ + --expect-failure "$$am__expect_failure" +# To be inserted before the command running the test. Creates the +# directory for the log if needed. Stores in $dir the directory +# containing $f, in $tst the test, in $log the log. Executes the +# developer- defined test setup AM_TESTS_ENVIRONMENT (if any), and +# passes TESTS_ENVIRONMENT. Set up options for the wrapper that +# will run the test scripts (or their associated LOG_COMPILER, if +# thy have one). +am__check_pre = \ +$(am__sh_e_setup); \ +$(am__vpath_adj_setup) $(am__vpath_adj) \ +$(am__tty_colors); \ +srcdir=$(srcdir); export srcdir; \ +case "$@" in \ + */*) am__odir=`echo "./$@" | sed 's|/[^/]*$$||'`;; \ + *) am__odir=.;; \ +esac; \ +test "x$$am__odir" = x"." || test -d "$$am__odir" \ + || $(MKDIR_P) "$$am__odir" || exit $$?; \ +if test -f "./$$f"; then dir=./; \ +elif test -f "$$f"; then dir=; \ +else dir="$(srcdir)/"; fi; \ +tst=$$dir$$f; log='$@'; \ +if test -n '$(DISABLE_HARD_ERRORS)'; then \ + am__enable_hard_errors=no; \ +else \ + am__enable_hard_errors=yes; \ +fi; \ +case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$f[\ \ ]* | *[\ \ ]$$dir$$f[\ \ ]*) \ + am__expect_failure=yes;; \ + *) \ + am__expect_failure=no;; \ +esac; \ +$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) +# A shell command to get the names of the tests scripts with any registered +# extension removed (i.e., equivalently, the names of the test logs, with +# the '.log' extension removed). The result is saved in the shell variable +# '$bases'. This honors runtime overriding of TESTS and TEST_LOGS. Sadly, +# we cannot use something simpler, involving e.g., "$(TEST_LOGS:.log=)", +# since that might cause problem with VPATH rewrites for suffix-less tests. +# See also 'test-harness-vpath-rewrite.sh' and 'test-trs-basic.sh'. +am__set_TESTS_bases = \ + bases='$(TEST_LOGS)'; \ + bases=`for i in $$bases; do echo $$i; done | sed 's/\.log$$//'`; \ + bases=`echo $$bases` +RECHECK_LOGS = $(TEST_LOGS) +AM_RECURSIVE_TARGETS = check recheck +TEST_SUITE_LOG = test-suite.log +TEST_EXTENSIONS = @EXEEXT@ .test +LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver +LOG_COMPILE = $(LOG_COMPILER) $(AM_LOG_FLAGS) $(LOG_FLAGS) +am__set_b = \ + case '$@' in \ + */*) \ + case '$*' in \ + */*) b='$*';; \ + *) b=`echo '$@' | sed 's/\.log$$//'`; \ + esac;; \ + *) \ + b='$*';; \ + esac +am__test_logs1 = $(TESTS:=.log) +am__test_logs2 = $(am__test_logs1:@EXEEXT@.log=.log) +TEST_LOGS = $(am__test_logs2:.test.log=.log) +TEST_LOG_DRIVER = $(SHELL) $(top_srcdir)/test-driver +TEST_LOG_COMPILE = $(TEST_LOG_COMPILER) $(AM_TEST_LOG_FLAGS) \ + $(TEST_LOG_FLAGS) +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp \ + $(top_srcdir)/test-driver +DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) +ACLOCAL = @ACLOCAL@ +AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ +APPSTREAM_UTIL = @APPSTREAM_UTIL@ +AR = @AR@ +AUTOCONF = @AUTOCONF@ +AUTOHEADER = @AUTOHEADER@ +AUTOMAKE = @AUTOMAKE@ +AWK = @AWK@ +AX_PACKAGE_REQUIRES = @AX_PACKAGE_REQUIRES@ +AX_PACKAGE_REQUIRES_PRIVATE = @AX_PACKAGE_REQUIRES_PRIVATE@ +CC = @CC@ +CCDEPMODE = @CCDEPMODE@ +CFLAGS = @CFLAGS@ +CPP = @CPP@ +CPPFLAGS = @CPPFLAGS@ +CYGPATH_W = @CYGPATH_W@ +DEFS = @DEFS@ +DEPDIR = @DEPDIR@ +DEVHELP_CFLAGS = @DEVHELP_CFLAGS@ +DEVHELP_LIBS = @DEVHELP_LIBS@ +DLLTOOL = @DLLTOOL@ +DSYMUTIL = @DSYMUTIL@ +DUMPBIN = @DUMPBIN@ +ECHO_C = @ECHO_C@ +ECHO_N = @ECHO_N@ +ECHO_T = @ECHO_T@ +EGREP = @EGREP@ +EXEEXT = @EXEEXT@ +FGREP = @FGREP@ +GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@ +GETTEXT_PACKAGE = @GETTEXT_PACKAGE@ +GLIB_COMPILE_RESOURCES = @GLIB_COMPILE_RESOURCES@ +GLIB_COMPILE_SCHEMAS = @GLIB_COMPILE_SCHEMAS@ +GLIB_MKENUMS = @GLIB_MKENUMS@ +GMSGFMT = @GMSGFMT@ +GMSGFMT_015 = @GMSGFMT_015@ +GREP = @GREP@ +GSETTINGS_DISABLE_SCHEMAS_COMPILE = @GSETTINGS_DISABLE_SCHEMAS_COMPILE@ +GTKDOC_CHECK = @GTKDOC_CHECK@ +GTKDOC_CHECK_PATH = @GTKDOC_CHECK_PATH@ +GTKDOC_DEPS_CFLAGS = @GTKDOC_DEPS_CFLAGS@ +GTKDOC_DEPS_LIBS = @GTKDOC_DEPS_LIBS@ +GTKDOC_MKPDF = @GTKDOC_MKPDF@ +GTKDOC_REBASE = @GTKDOC_REBASE@ +HELP_DIR = @HELP_DIR@ +HTML_DIR = @HTML_DIR@ +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ +INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ +INTLLIBS = @INTLLIBS@ +INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@ +INTROSPECTION_CFLAGS = @INTROSPECTION_CFLAGS@ +INTROSPECTION_COMPILER = @INTROSPECTION_COMPILER@ +INTROSPECTION_GENERATE = @INTROSPECTION_GENERATE@ +INTROSPECTION_GIRDIR = @INTROSPECTION_GIRDIR@ +INTROSPECTION_LIBS = @INTROSPECTION_LIBS@ +INTROSPECTION_MAKEFILE = @INTROSPECTION_MAKEFILE@ +INTROSPECTION_SCANNER = @INTROSPECTION_SCANNER@ +INTROSPECTION_TYPELIBDIR = @INTROSPECTION_TYPELIBDIR@ +ITSTOOL = @ITSTOOL@ +LD = @LD@ +LDFLAGS = @LDFLAGS@ +LIBDEVHELP_LT_VERSION = @LIBDEVHELP_LT_VERSION@ +LIBICONV = @LIBICONV@ +LIBINTL = @LIBINTL@ +LIBM = @LIBM@ +LIBOBJS = @LIBOBJS@ +LIBS = @LIBS@ +LIBTOOL = @LIBTOOL@ +LIPO = @LIPO@ +LN_S = @LN_S@ +LTLIBICONV = @LTLIBICONV@ +LTLIBINTL = @LTLIBINTL@ +LTLIBOBJS = @LTLIBOBJS@ +LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@ +MAKEINFO = @MAKEINFO@ +MANIFEST_TOOL = @MANIFEST_TOOL@ +MKDIR_P = @MKDIR_P@ +MSGFMT = @MSGFMT@ +MSGFMT_015 = @MSGFMT_015@ +MSGMERGE = @MSGMERGE@ +NM = @NM@ +NMEDIT = @NMEDIT@ +OBJDUMP = @OBJDUMP@ +OBJEXT = @OBJEXT@ +OTOOL = @OTOOL@ +OTOOL64 = @OTOOL64@ +PACKAGE = @PACKAGE@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ +PACKAGE_NAME = @PACKAGE_NAME@ +PACKAGE_STRING = @PACKAGE_STRING@ +PACKAGE_TARNAME = @PACKAGE_TARNAME@ +PACKAGE_URL = @PACKAGE_URL@ +PACKAGE_VERSION = @PACKAGE_VERSION@ +PATH_SEPARATOR = @PATH_SEPARATOR@ +PKG_CONFIG = @PKG_CONFIG@ +PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@ +PKG_CONFIG_PATH = @PKG_CONFIG_PATH@ +POSUB = @POSUB@ +PYTHON = @PYTHON@ +PYTHON_EXEC_PREFIX = @PYTHON_EXEC_PREFIX@ +PYTHON_PLATFORM = @PYTHON_PLATFORM@ +PYTHON_PREFIX = @PYTHON_PREFIX@ +PYTHON_VERSION = @PYTHON_VERSION@ +RANLIB = @RANLIB@ +SED = @SED@ +SET_MAKE = @SET_MAKE@ +SHELL = @SHELL@ +STRIP = @STRIP@ +USE_NLS = @USE_NLS@ +VERSION = @VERSION@ +WARN_CFLAGS = @WARN_CFLAGS@ +WARN_LDFLAGS = @WARN_LDFLAGS@ +WARN_SCANNERFLAGS = @WARN_SCANNERFLAGS@ +WEBKITGTK_PREFIX = @WEBKITGTK_PREFIX@ +XGETTEXT = @XGETTEXT@ +XGETTEXT_015 = @XGETTEXT_015@ +XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@ +XMLLINT = @XMLLINT@ +YELP_LC_DIST = @YELP_LC_DIST@ +YELP_LC_MEDIA_LINKS = @YELP_LC_MEDIA_LINKS@ +abs_builddir = @abs_builddir@ +abs_srcdir = @abs_srcdir@ +abs_top_builddir = @abs_top_builddir@ +abs_top_srcdir = @abs_top_srcdir@ +ac_ct_AR = @ac_ct_AR@ +ac_ct_CC = @ac_ct_CC@ +ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ +am__include = @am__include@ +am__leading_dot = @am__leading_dot@ +am__quote = @am__quote@ +am__tar = @am__tar@ +am__untar = @am__untar@ +appstreamxmldir = @appstreamxmldir@ +bindir = @bindir@ +build = @build@ +build_alias = @build_alias@ +build_cpu = @build_cpu@ +build_os = @build_os@ +build_vendor = @build_vendor@ +builddir = @builddir@ +datadir = @datadir@ +datarootdir = @datarootdir@ +docdir = @docdir@ +dvidir = @dvidir@ +exec_prefix = @exec_prefix@ +gsettingsschemadir = @gsettingsschemadir@ +host = @host@ +host_alias = @host_alias@ +host_cpu = @host_cpu@ +host_os = @host_os@ +host_vendor = @host_vendor@ +htmldir = @htmldir@ +includedir = @includedir@ +infodir = @infodir@ +install_sh = @install_sh@ +libdir = @libdir@ +libexecdir = @libexecdir@ +localedir = @localedir@ +localstatedir = @localstatedir@ +mandir = @mandir@ +mkdir_p = @mkdir_p@ +oldincludedir = @oldincludedir@ +pdfdir = @pdfdir@ +pkgpyexecdir = @pkgpyexecdir@ +pkgpythondir = @pkgpythondir@ +prefix = @prefix@ +program_transform_name = @program_transform_name@ +psdir = @psdir@ +pyexecdir = @pyexecdir@ +pythondir = @pythondir@ +sbindir = @sbindir@ +sharedstatedir = @sharedstatedir@ +srcdir = @srcdir@ +sysconfdir = @sysconfdir@ +target_alias = @target_alias@ +top_build_prefix = @top_build_prefix@ +top_builddir = @top_builddir@ +top_srcdir = @top_srcdir@ +AM_CPPFLAGS = \ + -I$(top_srcdir)/src \ + -I$(top_builddir)/src \ + $(WARN_CFLAGS) \ + $(DEVHELP_CFLAGS) + +AM_LDFLAGS = $(WARN_LDFLAGS) +LDADD = $(top_builddir)/src/libdevhelp-core.la \ + $(DEVHELP_LIBS) \ + $(LIBM) + +UNIT_TEST_PROGS = test-completion test-link test-search-context \ + test-util +test_completion_SOURCES = test-completion.c +test_link_SOURCES = test-link.c +test_search_context_SOURCES = test-search-context.c +test_util_SOURCES = test-util.c +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .log .o .obj .test .test$(EXEEXT) .trs +$(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 ) \ + && { if test -f $@; then exit 0; else break; fi; }; \ + exit 1;; \ + esac; \ + done; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign unit-tests/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --foreign unit-tests/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 +$(am__aclocal_m4_deps): + +clean-noinstPROGRAMS: + @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +test-completion$(EXEEXT): $(test_completion_OBJECTS) $(test_completion_DEPENDENCIES) $(EXTRA_test_completion_DEPENDENCIES) + @rm -f test-completion$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_completion_OBJECTS) $(test_completion_LDADD) $(LIBS) + +test-link$(EXEEXT): $(test_link_OBJECTS) $(test_link_DEPENDENCIES) $(EXTRA_test_link_DEPENDENCIES) + @rm -f test-link$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_link_OBJECTS) $(test_link_LDADD) $(LIBS) + +test-search-context$(EXEEXT): $(test_search_context_OBJECTS) $(test_search_context_DEPENDENCIES) $(EXTRA_test_search_context_DEPENDENCIES) + @rm -f test-search-context$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_search_context_OBJECTS) $(test_search_context_LDADD) $(LIBS) + +test-util$(EXEEXT): $(test_util_OBJECTS) $(test_util_DEPENDENCIES) $(EXTRA_test_util_DEPENDENCIES) + @rm -f test-util$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(test_util_OBJECTS) $(test_util_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-completion.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-link.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-search-context.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/test-util.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +# Recover from deleted '.trs' file; this should ensure that +# "rm -f foo.log; make foo.trs" re-run 'foo.test', and re-create +# both 'foo.log' and 'foo.trs'. Break the recipe in two subshells +# to avoid problems with "make -n". +.log.trs: + rm -f $< $@ + $(MAKE) $(AM_MAKEFLAGS) $< + +# Leading 'am--fnord' is there to ensure the list of targets does not +# expand to empty, as could happen e.g. with make check TESTS=''. +am--fnord $(TEST_LOGS) $(TEST_LOGS:.log=.trs): $(am__force_recheck) +am--force-recheck: + @: + +$(TEST_SUITE_LOG): $(TEST_LOGS) + @$(am__set_TESTS_bases); \ + am__f_ok () { test -f "$$1" && test -r "$$1"; }; \ + redo_bases=`for i in $$bases; do \ + am__f_ok $$i.trs && am__f_ok $$i.log || echo $$i; \ + done`; \ + if test -n "$$redo_bases"; then \ + redo_logs=`for i in $$redo_bases; do echo $$i.log; done`; \ + redo_results=`for i in $$redo_bases; do echo $$i.trs; done`; \ + if $(am__make_dryrun); then :; else \ + rm -f $$redo_logs && rm -f $$redo_results || exit 1; \ + fi; \ + fi; \ + if test -n "$$am__remaking_logs"; then \ + echo "fatal: making $(TEST_SUITE_LOG): possible infinite" \ + "recursion detected" >&2; \ + elif test -n "$$redo_logs"; then \ + am__remaking_logs=yes $(MAKE) $(AM_MAKEFLAGS) $$redo_logs; \ + fi; \ + if $(am__make_dryrun); then :; else \ + st=0; \ + errmsg="fatal: making $(TEST_SUITE_LOG): failed to create"; \ + for i in $$redo_bases; do \ + test -f $$i.trs && test -r $$i.trs \ + || { echo "$$errmsg $$i.trs" >&2; st=1; }; \ + test -f $$i.log && test -r $$i.log \ + || { echo "$$errmsg $$i.log" >&2; st=1; }; \ + done; \ + test $$st -eq 0 || exit 1; \ + fi + @$(am__sh_e_setup); $(am__tty_colors); $(am__set_TESTS_bases); \ + ws='[ ]'; \ + results=`for b in $$bases; do echo $$b.trs; done`; \ + test -n "$$results" || results=/dev/null; \ + all=` grep "^$$ws*:test-result:" $$results | wc -l`; \ + pass=` grep "^$$ws*:test-result:$$ws*PASS" $$results | wc -l`; \ + fail=` grep "^$$ws*:test-result:$$ws*FAIL" $$results | wc -l`; \ + skip=` grep "^$$ws*:test-result:$$ws*SKIP" $$results | wc -l`; \ + xfail=`grep "^$$ws*:test-result:$$ws*XFAIL" $$results | wc -l`; \ + xpass=`grep "^$$ws*:test-result:$$ws*XPASS" $$results | wc -l`; \ + error=`grep "^$$ws*:test-result:$$ws*ERROR" $$results | wc -l`; \ + if test `expr $$fail + $$xpass + $$error` -eq 0; then \ + success=true; \ + else \ + success=false; \ + fi; \ + br='==================='; br=$$br$$br$$br$$br; \ + result_count () \ + { \ + if test x"$$1" = x"--maybe-color"; then \ + maybe_colorize=yes; \ + elif test x"$$1" = x"--no-color"; then \ + maybe_colorize=no; \ + else \ + echo "$@: invalid 'result_count' usage" >&2; exit 4; \ + fi; \ + shift; \ + desc=$$1 count=$$2; \ + if test $$maybe_colorize = yes && test $$count -gt 0; then \ + color_start=$$3 color_end=$$std; \ + else \ + color_start= color_end=; \ + fi; \ + echo "$${color_start}# $$desc $$count$${color_end}"; \ + }; \ + create_testsuite_report () \ + { \ + result_count $$1 "TOTAL:" $$all "$$brg"; \ + result_count $$1 "PASS: " $$pass "$$grn"; \ + result_count $$1 "SKIP: " $$skip "$$blu"; \ + result_count $$1 "XFAIL:" $$xfail "$$lgn"; \ + result_count $$1 "FAIL: " $$fail "$$red"; \ + result_count $$1 "XPASS:" $$xpass "$$red"; \ + result_count $$1 "ERROR:" $$error "$$mgn"; \ + }; \ + { \ + echo "$(PACKAGE_STRING): $(subdir)/$(TEST_SUITE_LOG)" | \ + $(am__rst_title); \ + create_testsuite_report --no-color; \ + echo; \ + echo ".. contents:: :depth: 2"; \ + echo; \ + for b in $$bases; do echo $$b; done \ + | $(am__create_global_log); \ + } >$(TEST_SUITE_LOG).tmp || exit 1; \ + mv $(TEST_SUITE_LOG).tmp $(TEST_SUITE_LOG); \ + if $$success; then \ + col="$$grn"; \ + else \ + col="$$red"; \ + test x"$$VERBOSE" = x || cat $(TEST_SUITE_LOG); \ + fi; \ + echo "$${col}$$br$${std}"; \ + echo "$${col}Testsuite summary for $(PACKAGE_STRING)$${std}"; \ + echo "$${col}$$br$${std}"; \ + create_testsuite_report --maybe-color; \ + echo "$$col$$br$$std"; \ + if $$success; then :; else \ + echo "$${col}See $(subdir)/$(TEST_SUITE_LOG)$${std}"; \ + if test -n "$(PACKAGE_BUGREPORT)"; then \ + echo "$${col}Please report to $(PACKAGE_BUGREPORT)$${std}"; \ + fi; \ + echo "$$col$$br$$std"; \ + fi; \ + $$success || exit 1 + +check-TESTS: + @list='$(RECHECK_LOGS)'; test -z "$$list" || rm -f $$list + @list='$(RECHECK_LOGS:.log=.trs)'; test -z "$$list" || rm -f $$list + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + trs_list=`for i in $$bases; do echo $$i.trs; done`; \ + log_list=`echo $$log_list`; trs_list=`echo $$trs_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) TEST_LOGS="$$log_list"; \ + exit $$?; +recheck: all + @test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + @set +e; $(am__set_TESTS_bases); \ + bases=`for i in $$bases; do echo $$i; done \ + | $(am__list_recheck_tests)` || exit 1; \ + log_list=`for i in $$bases; do echo $$i.log; done`; \ + log_list=`echo $$log_list`; \ + $(MAKE) $(AM_MAKEFLAGS) $(TEST_SUITE_LOG) \ + am__force_recheck=am--force-recheck \ + TEST_LOGS="$$log_list"; \ + exit $$? +test-completion.log: test-completion$(EXEEXT) + @p='test-completion$(EXEEXT)'; \ + b='test-completion'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-link.log: test-link$(EXEEXT) + @p='test-link$(EXEEXT)'; \ + b='test-link'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-search-context.log: test-search-context$(EXEEXT) + @p='test-search-context$(EXEEXT)'; \ + b='test-search-context'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +test-util.log: test-util$(EXEEXT) + @p='test-util$(EXEEXT)'; \ + b='test-util'; \ + $(am__check_pre) $(LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_LOG_DRIVER_FLAGS) $(LOG_DRIVER_FLAGS) -- $(LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +.test.log: + @p='$<'; \ + $(am__set_b); \ + $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ + --log-file $$b.log --trs-file $$b.trs \ + $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ + "$$tst" $(AM_TESTS_FD_REDIRECT) +@am__EXEEXT_TRUE@.test$(EXEEXT).log: +@am__EXEEXT_TRUE@ @p='$<'; \ +@am__EXEEXT_TRUE@ $(am__set_b); \ +@am__EXEEXT_TRUE@ $(am__check_pre) $(TEST_LOG_DRIVER) --test-name "$$f" \ +@am__EXEEXT_TRUE@ --log-file $$b.log --trs-file $$b.trs \ +@am__EXEEXT_TRUE@ $(am__common_driver_flags) $(AM_TEST_LOG_DRIVER_FLAGS) $(TEST_LOG_DRIVER_FLAGS) -- $(TEST_LOG_COMPILE) \ +@am__EXEEXT_TRUE@ "$$tst" $(AM_TESTS_FD_REDIRECT) + +distdir: $(DISTFILES) + @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ + list='$(DISTFILES)'; \ + dist_files=`for file in $$list; do echo $$file; done | \ + sed -e "s|^$$srcdirstrip/||;t" \ + -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \ + case $$dist_files in \ + */*) $(MKDIR_P) `echo "$$dist_files" | \ + sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \ + sort -u` ;; \ + esac; \ + for file in $$dist_files; do \ + if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ + if test -d $$d/$$file; then \ + dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \ + if test -d "$(distdir)/$$file"; then \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ + cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \ + find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \ + fi; \ + cp -fpR $$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 + $(MAKE) $(AM_MAKEFLAGS) check-TESTS +check: check-am +all-am: Makefile $(PROGRAMS) +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: + if test -z '$(STRIP)'; then \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + install; \ + else \ + $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ + install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ + "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \ + fi +mostlyclean-generic: + -test -z "$(TEST_LOGS)" || rm -f $(TEST_LOGS) + -test -z "$(TEST_LOGS:.log=.trs)" || rm -f $(TEST_LOGS:.log=.trs) + -test -z "$(TEST_SUITE_LOG)" || rm -f $(TEST_SUITE_LOG) + +clean-generic: + +distclean-generic: + -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) + -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_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-libtool clean-noinstPROGRAMS \ + 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 + +html-am: + +info: info-am + +info-am: + +install-data-am: + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +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 \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: + +.MAKE: check-am install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-TESTS check-am clean \ + clean-generic clean-libtool clean-noinstPROGRAMS cscopelist-am \ + ctags ctags-am distclean distclean-compile distclean-generic \ + distclean-libtool distclean-tags distdir dvi dvi-am html \ + html-am info info-am install install-am install-data \ + install-data-am install-dvi install-dvi-am install-exec \ + install-exec-am install-html install-html-am install-info \ + install-info-am install-man install-pdf install-pdf-am \ + install-ps install-ps-am install-strip installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + recheck tags tags-am uninstall uninstall-am + +.PRECIOUS: Makefile + + +-include $(top_srcdir)/git.mk + +# 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: diff --git a/unit-tests/test-completion.c b/unit-tests/test-completion.c new file mode 100644 index 0000000..90d1436 --- /dev/null +++ b/unit-tests/test-completion.c @@ -0,0 +1,244 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "devhelp.h" + +static void +test_empty (void) +{ + DhCompletion *completion; + gchar *result; + + completion = dh_completion_new (); + dh_completion_sort (completion); + + result = dh_completion_complete (completion, "daft"); + g_assert (result == NULL); + + g_object_unref (completion); +} + +static void +test_empty_string (void) +{ + DhCompletion *completion; + gchar *result; + + completion = dh_completion_new (); + dh_completion_add_string (completion, "daft"); + dh_completion_sort (completion); + + /* Complete empty string. */ + result = dh_completion_complete (completion, ""); + g_assert_cmpstr (result, ==, "daft"); + g_free (result); + + g_object_unref (completion); + + /* Empty string in DhCompletion. */ + completion = dh_completion_new (); + dh_completion_add_string (completion, ""); + dh_completion_sort (completion); + + // String not found. + result = dh_completion_complete (completion, "a"); + g_assert (result == NULL); + // String found. + result = dh_completion_complete (completion, ""); + g_assert (result == NULL); + + // String found, cannot complete. + dh_completion_add_string (completion, "daft"); + dh_completion_sort (completion); + result = dh_completion_complete (completion, ""); + g_assert (result == NULL); + + // Empty string doesn't have prefix, can complete. + result = dh_completion_complete (completion, "d"); + g_assert_cmpstr (result, ==, "daft"); + g_free (result); + + g_object_unref (completion); +} + +static void +test_complete_simple (void) +{ + DhCompletion *completion; + gchar *result; + + completion = dh_completion_new (); + + dh_completion_add_string (completion, "a"); + dh_completion_add_string (completion, "ba"); + dh_completion_add_string (completion, "baa"); + dh_completion_add_string (completion, "bab"); + dh_completion_add_string (completion, "c"); + dh_completion_sort (completion); + + /* Completion possible. */ + result = dh_completion_complete (completion, "b"); + g_assert_cmpstr (result, ==, "ba"); + g_free (result); + + /* Exact match found (among other strings with prefix). */ + result = dh_completion_complete (completion, "ba"); + g_assert (result == NULL); + + /* Exact match found (only string with prefix). */ + result = dh_completion_complete (completion, "bab"); + g_assert (result == NULL); + + /* No strings with prefix found. */ + result = dh_completion_complete (completion, "d"); + g_assert (result == NULL); + + /* Strings with prefix found, but cannot complete. */ + dh_completion_add_string (completion, "bb"); + dh_completion_sort (completion); + result = dh_completion_complete (completion, "b"); + g_assert (result == NULL); + + /* Only one string with prefix found. */ + dh_completion_add_string (completion, "dh_book_new"); + dh_completion_sort (completion); + result = dh_completion_complete (completion, "dh"); + g_assert_cmpstr (result, ==, "dh_book_new"); + g_free (result); + + g_object_unref (completion); +} + +static void +test_utf8 (void) +{ + DhCompletion *completion; + gchar *result; + + completion = dh_completion_new (); + + /* \300 in octal is the first byte of a 2-bytes UTF-8 char. */ + dh_completion_add_string (completion, "aa\300\200aa"); + dh_completion_add_string (completion, "aa\300\200ab"); + dh_completion_sort (completion); + + result = dh_completion_complete (completion, "a"); + g_assert_cmpstr (result, ==, "aa\300\200a"); + g_free (result); + + dh_completion_add_string (completion, "aa\300\201aa"); + dh_completion_sort (completion); + + result = dh_completion_complete (completion, "a"); + g_assert_cmpstr (result, ==, "aa"); /* not "aa\300" */ + g_free (result); + + result = dh_completion_complete (completion, "aa\300\200"); + g_assert_cmpstr (result, ==, "aa\300\200a"); + g_free (result); + + result = dh_completion_complete (completion, "aa\300\200a"); + g_assert (result == NULL); + + result = dh_completion_complete (completion, "aa\300\200aa"); + g_assert (result == NULL); + + result = dh_completion_complete (completion, "b"); + g_assert (result == NULL); + + /* 2-bytes char + 3-bytes char. */ + dh_completion_add_string (completion, "zz\300\200zz"); + dh_completion_add_string (completion, "zz\340\200\200zz"); + dh_completion_sort (completion); + + result = dh_completion_complete (completion, "z"); + g_assert_cmpstr (result, ==, "zz"); + g_free (result); + + result = dh_completion_complete (completion, "zz"); + g_assert (result == NULL); + + result = dh_completion_complete (completion, "zz\300\200"); + g_assert_cmpstr (result, ==, "zz\300\200zz"); + g_free (result); + + g_object_unref (completion); +} + +static void +test_aggregate_complete (void) +{ + DhCompletion *completion1; + DhCompletion *completion2; + DhCompletion *completion3; + GList *list = NULL; + gchar *result; + + completion1 = dh_completion_new (); + dh_completion_add_string (completion1, "a"); + dh_completion_add_string (completion1, "baa"); + dh_completion_sort (completion1); + + completion2 = dh_completion_new (); + dh_completion_add_string (completion2, "ba"); + dh_completion_sort (completion2); + + completion3 = dh_completion_new (); + dh_completion_add_string (completion3, "bb"); + dh_completion_sort (completion3); + + /* With only completion1. */ + list = g_list_append (list, completion1); + result = dh_completion_aggregate_complete (list, "b"); + g_assert_cmpstr (result, ==, "baa"); + g_free (result); + + /* With completion1 and completion2. */ + list = g_list_append (list, completion2); + result = dh_completion_aggregate_complete (list, "b"); + g_assert_cmpstr (result, ==, "ba"); + g_free (result); + + /* With the 3 objects. */ + list = g_list_append (list, completion3); + result = dh_completion_aggregate_complete (list, "b"); + g_assert (result == NULL); + + result = dh_completion_aggregate_complete (list, "ba"); + g_assert (result == NULL); + + g_object_unref (completion1); + g_object_unref (completion2); + g_object_unref (completion3); + g_list_free (list); +} + +int +main (int argc, + char **argv) +{ + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/completion/empty", test_empty); + g_test_add_func ("/completion/empty_string", test_empty_string); + g_test_add_func ("/completion/complete_simple", test_complete_simple); + g_test_add_func ("/completion/utf-8", test_utf8); + g_test_add_func ("/completion/aggregate_complete", test_aggregate_complete); + + return g_test_run (); +} diff --git a/unit-tests/test-link.c b/unit-tests/test-link.c new file mode 100644 index 0000000..71d0d61 --- /dev/null +++ b/unit-tests/test-link.c @@ -0,0 +1,76 @@ +/* + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "devhelp.h" + +#define DEVHELP_BOOK_BASE_PATH "/usr/share/gtk-doc/html/devhelp-3" + +static void +check_belongs_to_page_book_link (DhLink *book_link) +{ + g_assert (dh_link_belongs_to_page (book_link, "index")); + g_assert (!dh_link_belongs_to_page (book_link, "Index")); + g_assert (!dh_link_belongs_to_page (book_link, "")); + g_assert (!dh_link_belongs_to_page (book_link, "kiwi")); +} + +static void +test_belongs_to_page (void) +{ + DhLink *book_link; + DhLink *link; + + /* index.html */ + book_link = dh_link_new_book (DEVHELP_BOOK_BASE_PATH, + "devhelp", + "Devhelp Reference Manual", + "index.html"); + check_belongs_to_page_book_link (book_link); + dh_link_unref (book_link); + + /* Empty relative_url */ + book_link = dh_link_new_book (DEVHELP_BOOK_BASE_PATH, + "devhelp", + "Devhelp Reference Manual", + ""); + check_belongs_to_page_book_link (book_link); + + /* A function */ + link = dh_link_new (DH_LINK_TYPE_FUNCTION, + book_link, + "dh_link_ref", + "DhLink.html#dh-link-ref"); + + g_assert (dh_link_belongs_to_page (link, "DhLink")); + g_assert (!dh_link_belongs_to_page (link, "dhlink")); + g_assert (!dh_link_belongs_to_page (link, "")); + g_assert (!dh_link_belongs_to_page (link, "kiwi")); + + dh_link_unref (book_link); + dh_link_unref (link); +} + +int +main (int argc, + char **argv) +{ + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/link/belongs_to_page", test_belongs_to_page); + + return g_test_run (); +} diff --git a/unit-tests/test-search-context.c b/unit-tests/test-search-context.c new file mode 100644 index 0000000..69a15f3 --- /dev/null +++ b/unit-tests/test-search-context.c @@ -0,0 +1,286 @@ +/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */ +/* + * Copyright (C) 2018 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-search-context.h" + +static gboolean +strv_equal (GStrv strv1, + GStrv strv2) +{ + gint i1; + gint i2; + + if (strv1 == NULL || strv2 == NULL) + return strv1 == NULL && strv2 == NULL; + + for (i1 = 0, i2 = 0; + strv1[i1] != NULL && strv2[i2] != NULL; + i1++, i2++) { + const gchar *cur_str1 = strv1[i1]; + const gchar *cur_str2 = strv2[i2]; + + if (!g_str_equal (cur_str1, cur_str2)) + return FALSE; + } + + return strv1[i1] == NULL && strv2[i2] == NULL; +} + +static void +check_process_search_string (const gchar *search_string, + gboolean expected_valid, + const gchar *expected_book_id, + const gchar *expected_page_id, + GStrv expected_keywords) +{ + DhSearchContext *search_context; + + search_context = _dh_search_context_new (search_string); + g_assert_cmpint (expected_valid, ==, (search_context != NULL)); + + if (search_context == NULL) { + g_assert (expected_book_id == NULL); + g_assert (expected_page_id == NULL); + g_assert (expected_keywords == NULL); + return; + } + + g_assert_cmpstr (_dh_search_context_get_book_id (search_context), ==, expected_book_id); + g_assert_cmpstr (_dh_search_context_get_page_id (search_context), ==, expected_page_id); + g_assert (strv_equal (_dh_search_context_get_keywords (search_context), expected_keywords)); + + _dh_search_context_free (search_context); +} + +static void +test_process_search_string (void) +{ + GPtrArray *array; + GStrv keywords1; + GStrv keywords2; + + /* Empty or only whitespace. */ + check_process_search_string ("", FALSE, NULL, NULL, NULL); + check_process_search_string (" ", FALSE, NULL, NULL, NULL); + check_process_search_string (" \t ", FALSE, NULL, NULL, NULL); + check_process_search_string (" \t \n", FALSE, NULL, NULL, NULL); + + /* book_id and page_id without keywords. */ + check_process_search_string ("book:devhelp", TRUE, "devhelp", NULL, NULL); + check_process_search_string ("page:DhBook", TRUE, NULL, "DhBook", NULL); + check_process_search_string ("book:devhelp page:DhBook", TRUE, "devhelp", "DhBook", NULL); + check_process_search_string ("page:DhBook book:devhelp", TRUE, "devhelp", "DhBook", NULL); + check_process_search_string ("book:devhelp page:", TRUE, "devhelp", NULL, NULL); + check_process_search_string ("book: page:DhBook", TRUE, NULL, "DhBook", NULL); + check_process_search_string ("book:devhelp book:gtk3", FALSE, NULL, NULL, NULL); + check_process_search_string ("page:DhBook page:DhCompletion", FALSE, NULL, NULL, NULL); + + /* Normal keywords before book_id or page_id. */ + check_process_search_string ("dh_link_ book:devhelp", FALSE, NULL, NULL, NULL); + check_process_search_string ("dh_link_ get page:DhLink", FALSE, NULL, NULL, NULL); + check_process_search_string ("dh_link_ get book:devhelp page:DhLink", FALSE, NULL, NULL, NULL); + + /* Only normal keywords. */ + + array = g_ptr_array_new (); + g_ptr_array_add (array, (gpointer) "dh_link_"); + g_ptr_array_add (array, NULL); + keywords1 = (GStrv) g_ptr_array_free (array, FALSE); + + array = g_ptr_array_new (); + g_ptr_array_add (array, (gpointer) "dh_link_"); + g_ptr_array_add (array, (gpointer) "get"); + g_ptr_array_add (array, NULL); + keywords2 = (GStrv) g_ptr_array_free (array, FALSE); + + check_process_search_string ("dh_link_", TRUE, NULL, NULL, keywords1); + check_process_search_string (" dh_link_ ", TRUE, NULL, NULL, keywords1); + check_process_search_string ("dh_link_ get", TRUE, NULL, NULL, keywords2); + check_process_search_string ("dh_link_ get ", TRUE, NULL, NULL, keywords2); + + /* book_id, page_id and keywords. */ + check_process_search_string ("book:devhelp dh_link_", TRUE, "devhelp", NULL, keywords1); + check_process_search_string ("book:devhelp dh_link_ get ", TRUE, "devhelp", NULL, keywords2); + check_process_search_string ("page:DhLink dh_link_", TRUE, NULL, "DhLink", keywords1); + check_process_search_string ("page:DhLink dh_link_ get", TRUE, NULL, "DhLink", keywords2); + check_process_search_string ("book:devhelp page:DhLink dh_link_", TRUE, "devhelp", "DhLink", keywords1); + check_process_search_string ("book:devhelp page:DhLink \t dh_link_ ", TRUE, "devhelp", "DhLink", keywords1); + check_process_search_string ("page:DhLink book:devhelp dh_link_", TRUE, "devhelp", "DhLink", keywords1); + check_process_search_string ("book:devhelp page:DhLink dh_link_ get", TRUE, "devhelp", "DhLink", keywords2); + check_process_search_string ("book:devhelp page:DhLink dh_link_ \t get\n", TRUE, "devhelp", "DhLink", keywords2); + + g_free (keywords1); + g_free (keywords2); +} + +static void +check_case_sensitive (const gchar *search_string, + gboolean expected_case_sensitive) +{ + DhSearchContext *search_context; + + search_context = _dh_search_context_new (search_string); + g_assert (search_context != NULL); + g_assert_cmpint (_dh_search_context_get_case_sensitive (search_context), ==, expected_case_sensitive); + _dh_search_context_free (search_context); +} + +static void +test_case_sensitive (void) +{ + /* Only keywords. */ + check_case_sensitive ("dh_link_", FALSE); + check_case_sensitive ("dh_link_ get", FALSE); + check_case_sensitive ("DhLink", TRUE); + check_case_sensitive ("a DhLink", TRUE); + + /* book_id and page_id only. */ + check_case_sensitive ("book:devhelp", FALSE); + check_case_sensitive ("page:DhLink", FALSE); + check_case_sensitive ("book:devhelp page:DhLink", FALSE); + + /* book_id, page_id and keywords. */ + + // Only normal keywords must be taken into account for case sensitivity. + check_case_sensitive ("book:devhelp page:DhLink dh_link_ get", FALSE); + check_case_sensitive ("page:DhLink dh_link_ get", FALSE); + + check_case_sensitive ("book:devhelp dh_link_ get", FALSE); + check_case_sensitive ("book:devhelp page:DhLink DhLink", TRUE); + check_case_sensitive ("book:devhelp DhLink", TRUE); +} + +static void +check_link_simple (const gchar *search_string, + const gchar *link_name, + gboolean prefix, + gboolean expected_match, + gboolean expected_exact) +{ + DhSearchContext *search_context; + DhLink *book_link; + DhLink *link; + gboolean match; + gboolean exact; + + search_context = _dh_search_context_new (search_string); + g_assert (search_context != NULL); + + book_link = dh_link_new_book ("/usr/share/gtk-doc/html/devhelp-3", + "devhelp", + "Devhelp Reference Manual", + "index.html"); + + link = dh_link_new (DH_LINK_TYPE_FUNCTION, + book_link, + link_name, + "ClassName.html#function-name"); + + match = _dh_search_context_match_link (search_context, link, prefix); + g_assert_cmpint (match, ==, expected_match); + + if (match && prefix) { + exact = _dh_search_context_is_exact_link (search_context, link); + g_assert_cmpint (exact, ==, expected_exact); + } else { + g_assert (!expected_exact); + } + + _dh_search_context_free (search_context); + dh_link_unref (book_link); + dh_link_unref (link); +} + +static void +test_link_simple (void) +{ + /* Prefix match but not exact. */ + check_link_simple ("dh_link_", "dh_link_new", TRUE, TRUE, FALSE); + check_link_simple ("dh_link_", "dh_link_new", FALSE, FALSE, FALSE); + + /* Prefix match and exact. */ + check_link_simple ("dh_link_new", "dh_link_new", TRUE, TRUE, TRUE); + check_link_simple ("dh_link_new", "dh_link_new", FALSE, FALSE, FALSE); + + /* Nonprefix match. */ + check_link_simple ("link", "dh_link_new", TRUE, FALSE, FALSE); + check_link_simple ("link", "dh_link_new", FALSE, TRUE, FALSE); + + /* Case insensitive. */ + check_link_simple ("link", "DhLink", TRUE, FALSE, FALSE); + check_link_simple ("link", "DhLink", FALSE, TRUE, FALSE); + + /* Case sensitive. */ + check_link_simple ("Link", "DhLink", TRUE, FALSE, FALSE); + check_link_simple ("Link", "DhLink", FALSE, TRUE, FALSE); + check_link_simple ("Link", "dh_link_new", TRUE, FALSE, FALSE); + check_link_simple ("Link", "dh_link_new", FALSE, FALSE, FALSE); + + /* Several keywords. */ + check_link_simple ("dh_link_ book", "dh_link_new_book", TRUE, TRUE, FALSE); + check_link_simple ("dh_link_ book", "dh_link_new_book", FALSE, FALSE, FALSE); + check_link_simple ("dh_link_ book", "dh_link_new", TRUE, FALSE, FALSE); + check_link_simple ("dh_link_ book", "dh_link_new", FALSE, FALSE, FALSE); + + /* Globs */ + check_link_simple ("dh_link_*book", "dh_link_new_book", TRUE, TRUE, FALSE); + check_link_simple ("dh_link_*book", "dh_link_new_book", FALSE, FALSE, FALSE); + check_link_simple ("dh_link_*book", "dh_link_new", TRUE, FALSE, FALSE); + check_link_simple ("dh_link_*book", "dh_link_new", FALSE, FALSE, FALSE); + + check_link_simple ("??_link_new", "dh_link_new", TRUE, TRUE, FALSE); + check_link_simple ("??_link_new", "dh_link_new", FALSE, FALSE, FALSE); + check_link_simple ("??_link_new", "dh_link_compare", TRUE, FALSE, FALSE); + check_link_simple ("??_link_new", "dh_link_compare", FALSE, FALSE, FALSE); + + /* Several keywords, not necessarily in the same order. */ + check_link_simple ("gtk window application", "gtk_window_get_application", TRUE, TRUE, FALSE); + check_link_simple ("gtk window application", "gtk_window_get_application", FALSE, FALSE, FALSE); + check_link_simple ("gtk window application", "GtkApplicationWindow", TRUE, TRUE, FALSE); + check_link_simple ("gtk window application", "GtkApplicationWindow", FALSE, FALSE, FALSE); + + check_link_simple ("gtk*window*application", "gtk_window_get_application", TRUE, TRUE, FALSE); + check_link_simple ("gtk*window*application", "gtk_window_get_application", FALSE, FALSE, FALSE); + check_link_simple ("gtk*window*application", "GtkApplicationWindow", TRUE, FALSE, FALSE); + check_link_simple ("gtk*window*application", "GtkApplicationWindow", FALSE, FALSE, FALSE); + + /* Prefix appearing several times. + * The DhLink must not appear two times in the search results. + */ + check_link_simple ("GTK CELL_RENDERER_ACCEL_MODE_GTK", "GTK_CELL_RENDERER_ACCEL_MODE_GTK", + TRUE, TRUE, FALSE); + check_link_simple ("GTK CELL_RENDERER_ACCEL_MODE_GTK", "GTK_CELL_RENDERER_ACCEL_MODE_GTK", + FALSE, FALSE, FALSE); + check_link_simple ("GTK* CELL_RENDERER_ACCEL_MODE_GTK", "GTK_CELL_RENDERER_ACCEL_MODE_GTK", + TRUE, TRUE, FALSE); + check_link_simple ("GTK* CELL_RENDERER_ACCEL_MODE_GTK", "GTK_CELL_RENDERER_ACCEL_MODE_GTK", + FALSE, FALSE, FALSE); +} + +int +main (int argc, + char **argv) +{ + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/search_context/process_search_string", test_process_search_string); + g_test_add_func ("/search_context/case_sensitive", test_case_sensitive); + g_test_add_func ("/search_context/link_simple", test_link_simple); + + return g_test_run (); +} diff --git a/unit-tests/test-util.c b/unit-tests/test-util.c new file mode 100644 index 0000000..6060e58 --- /dev/null +++ b/unit-tests/test-util.c @@ -0,0 +1,97 @@ +/* + * Copyright (C) 2017 Sébastien Wilmet + * + * 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, see . + */ + +#include "dh-util.h" + +static void +check_get_possible_index_files (const gchar *book_directory_path, + const gchar *book_basename) +{ + GFile *book_directory; + GSList *list; + GSList *l; + gint i; + + book_directory = g_file_new_for_path (book_directory_path); + list = _dh_util_get_possible_index_files (book_directory); + + g_assert_cmpint (g_slist_length (list), ==, 4); + + for (l = list, i = 0; l != NULL; l = l->next, i++) { + GFile *index_file = G_FILE (l->data); + gchar *expected_basename; + gchar *basename; + gchar *expected_path; + gchar *path; + + switch (i) { + case 0: + expected_basename = g_strconcat (book_basename, ".devhelp2", NULL); + break; + + case 1: + expected_basename = g_strconcat (book_basename, ".devhelp2.gz", NULL); + break; + + case 2: + expected_basename = g_strconcat (book_basename, ".devhelp", NULL); + break; + + case 3: + expected_basename = g_strconcat (book_basename, ".devhelp.gz", NULL); + break; + + default: + g_assert_not_reached (); + } + + basename = g_file_get_basename (index_file); + g_assert_cmpstr (basename, ==, expected_basename); + + expected_path = g_build_filename (book_directory_path, expected_basename, NULL); + path = g_file_get_path (index_file); + g_assert_cmpstr (path, ==, expected_path); + + g_free (expected_basename); + g_free (basename); + g_free (expected_path); + g_free (path); + } + + g_object_unref (book_directory); + g_slist_free_full (list, g_object_unref); +} + +static void +test_get_possible_index_files (void) +{ + check_get_possible_index_files ("/usr/share/gtk-doc/html/glib", "glib"); + check_get_possible_index_files ("/usr/share/gtk-doc/html/glib/", "glib"); + check_get_possible_index_files ("/usr/share/gtk-doc/html/gtk3", "gtk3"); + check_get_possible_index_files ("/usr/share/gtk-doc/html/gtk3/", "gtk3"); +} + +int +main (int argc, + char **argv) +{ + g_test_init (&argc, &argv, NULL); + + g_test_add_func ("/util/get_possible_index_files", test_get_possible_index_files); + + return g_test_run (); +}