tUpdate to latest gettext - vaccinewars - be a doctor and try to vaccinate the … | |
git clone git://src.adamsgaard.dk/vaccinewars | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 14aa7ba409d163d22fc1c58aa798d1f1539dfc9c | |
parent a5655b61d8f909d6e39939577b0dbd0347edb06d | |
Author: Ben Webb <[email protected]> | |
Date: Fri, 6 Nov 2020 01:21:21 -0800 | |
Update to latest gettext | |
Diffstat: | |
M ABOUT-NLS | 1283 +----------------------------… | |
M config.rpath | 18 ++++++------------ | |
M m4/gettext.m4 | 107 +++++++++++++----------------… | |
A m4/host-cpu-c-abi.m4 | 675 +++++++++++++++++++++++++++++… | |
M m4/iconv.m4 | 116 ++++++++++++++++++-----------… | |
A m4/intlmacosx.m4 | 65 +++++++++++++++++++++++++++++… | |
M m4/lib-ld.m4 | 163 ++++++++++++++++++++---------… | |
M m4/lib-link.m4 | 169 ++++++++++++++++++-----------… | |
M m4/lib-prefix.m4 | 238 ++++++++++++++++++++++-------… | |
M m4/nls.m4 | 14 +++++++------- | |
M m4/po.m4 | 68 +++++++++++++++--------------… | |
M m4/progtest.m4 | 12 ++++++------ | |
M po/ChangeLog | 9 +++++++++ | |
M po/Makefile.in.in | 183 ++++++++++++++++++++---------… | |
M po/Makevars | 29 +++++++++++++++++++++++++++++ | |
M po/Rules-quot | 19 +++++++++++++++++-- | |
M po/[email protected] | 2 +- | |
M po/[email protected] | 2 +- | |
M po/insert-header.sin | 5 +++++ | |
M po/remove-potcdate.sin | 8 +++++++- | |
20 files changed, 1465 insertions(+), 1720 deletions(-) | |
--- | |
diff --git a/ABOUT-NLS b/ABOUT-NLS | |
t@@ -1,1282 +1 @@ | |
-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 `[email protected]', 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 `[email protected]' 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 June | |
-2010. 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 be@latin bg bn_IN bs ca | |
- +--------------------------------------------------+ | |
- a2ps | [] [] | | |
- aegis | | | |
- ant-phone | | | |
- anubis | | | |
- aspell | [] [] | | |
- bash | | | |
- bfd | | | |
- bibshelf | [] | | |
- binutils | | | |
- bison | | | |
- bison-runtime | [] | | |
- bluez-pin | [] [] | | |
- bombono-dvd | | | |
- buzztard | | | |
- cflow | | | |
- clisp | | | |
- coreutils | [] [] | | |
- cpio | | | |
- cppi | | | |
- cpplib | [] | | |
- cryptsetup | | | |
- dfarc | | | |
- dialog | [] [] | | |
- dico | | | |
- diffutils | [] | | |
- dink | | | |
- doodle | | | |
- e2fsprogs | [] | | |
- enscript | [] | | |
- exif | | | |
- fetchmail | [] | | |
- findutils | [] | | |
- flex | [] | | |
- freedink | | | |
- gas | | | |
- gawk | [] [] | | |
- gcal | [] | | |
- gcc | | | |
- gettext-examples | [] [] [] [] | | |
- gettext-runtime | [] [] | | |
- gettext-tools | [] [] | | |
- gip | [] | | |
- gjay | | | |
- gliv | [] | | |
- glunarclock | [] [] | | |
- gnubiff | | | |
- gnucash | [] | | |
- gnuedu | | | |
- gnulib | | | |
- gnunet | | | |
- gnunet-gtk | | | |
- gnutls | | | |
- gold | | | |
- gpe-aerial | | | |
- gpe-beam | | | |
- gpe-bluetooth | | | |
- gpe-calendar | | | |
- gpe-clock | [] | | |
- gpe-conf | | | |
- gpe-contacts | | | |
- gpe-edit | | | |
- gpe-filemanager | | | |
- gpe-go | | | |
- gpe-login | | | |
- gpe-ownerinfo | [] | | |
- gpe-package | | | |
- gpe-sketchbook | | | |
- gpe-su | [] | | |
- gpe-taskmanager | [] | | |
- gpe-timesheet | [] | | |
- gpe-today | [] | | |
- gpe-todo | | | |
- gphoto2 | | | |
- gprof | [] | | |
- gpsdrive | | | |
- gramadoir | | | |
- grep | | | |
- grub | [] [] | | |
- gsasl | | | |
- gss | | | |
- gst-plugins-bad | [] | | |
- gst-plugins-base | [] | | |
- gst-plugins-good | [] | | |
- gst-plugins-ugly | [] | | |
- gstreamer | [] [] [] | | |
- gtick | | | |
- gtkam | [] | | |
- gtkorphan | [] | | |
- gtkspell | [] [] [] | | |
- gutenprint | | | |
- hello | [] | | |
- help2man | | | |
- hylafax | | | |
- idutils | | | |
- indent | [] [] | | |
- iso_15924 | | | |
- iso_3166 | [] [] [] [] [] [] [] | | |
- iso_3166_2 | | | |
- iso_4217 | | | |
- iso_639 | [] [] [] [] | | |
- iso_639_3 | | | |
- jwhois | | | |
- kbd | | | |
- keytouch | [] | | |
- keytouch-editor | | | |
- keytouch-keyboa... | [] | | |
- klavaro | [] | | |
- latrine | | | |
- ld | [] | | |
- leafpad | [] [] | | |
- libc | [] [] | | |
- libexif | () | | |
- libextractor | | | |
- libgnutls | | | |
- libgpewidget | | | |
- libgpg-error | | | |
- libgphoto2 | | | |
- libgphoto2_port | | | |
- libgsasl | | | |
- libiconv | [] | | |
- libidn | | | |
- lifelines | | | |
- liferea | [] [] | | |
- lilypond | | | |
- linkdr | [] | | |
- lordsawar | | | |
- lprng | | | |
- lynx | [] | | |
- m4 | | | |
- mailfromd | | | |
- mailutils | | | |
- make | | | |
- man-db | | | |
- man-db-manpages | | | |
- minicom | | | |
- mkisofs | | | |
- myserver | | | |
- nano | [] [] | | |
- opcodes | | | |
- parted | | | |
- pies | | | |
- popt | | | |
- psmisc | | | |
- pspp | [] | | |
- pwdutils | | | |
- radius | [] | | |
- recode | [] [] | | |
- rosegarden | | | |
- rpm | | | |
- rush | | | |
- sarg | | | |
- screem | | | |
- scrollkeeper | [] [] [] | | |
- sed | [] [] | | |
- sharutils | [] [] | | |
- shishi | | | |
- skencil | | | |
- solfege | | | |
- solfege-manual | | | |
- soundtracker | | | |
- sp | | | |
- sysstat | | | |
- tar | [] | | |
- texinfo | | | |
- tin | | | |
- unicode-han-tra... | | | |
- unicode-transla... | | | |
- util-linux-ng | [] | | |
- vice | | | |
- vmm | | | |
- vorbis-tools | | | |
- wastesedge | | | |
- wdiff | | | |
- wget | [] [] | | |
- wyslij-po | | | |
- xchat | [] [] [] [] | | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] | | |
- xkeyboard-config | [] [] | | |
- +--------------------------------------------------+ | |
- af am an ar as ast az be be@latin bg bn_IN bs ca | |
- 6 0 1 2 3 19 1 10 3 28 3 1 38 | |
- | |
- crh cs da de el en en_GB en_ZA eo es et eu fa | |
- +-------------------------------------------------+ | |
- a2ps | [] [] [] [] [] [] [] | | |
- aegis | [] [] [] | | |
- ant-phone | [] () | | |
- anubis | [] [] | | |
- aspell | [] [] [] [] [] | | |
- bash | [] [] [] | | |
- bfd | [] | | |
- bibshelf | [] [] [] | | |
- binutils | [] | | |
- bison | [] [] | | |
- bison-runtime | [] [] [] [] | | |
- bluez-pin | [] [] [] [] [] [] | | |
- bombono-dvd | [] | | |
- buzztard | [] [] [] | | |
- cflow | [] [] | | |
- clisp | [] [] [] [] | | |
- coreutils | [] [] [] [] | | |
- cpio | | | |
- cppi | | | |
- cpplib | [] [] [] | | |
- cryptsetup | [] | | |
- dfarc | [] [] [] | | |
- dialog | [] [] [] [] [] | | |
- dico | | | |
- diffutils | [] [] [] [] [] [] | | |
- dink | [] [] [] | | |
- doodle | [] | | |
- e2fsprogs | [] [] [] | | |
- enscript | [] [] [] | | |
- exif | () [] [] | | |
- fetchmail | [] [] () [] [] [] | | |
- findutils | [] [] [] | | |
- flex | [] [] | | |
- freedink | [] [] [] | | |
- gas | [] | | |
- gawk | [] [] [] | | |
- gcal | [] | | |
- gcc | [] [] | | |
- gettext-examples | [] [] [] [] | | |
- gettext-runtime | [] [] [] [] | | |
- gettext-tools | [] [] [] | | |
- gip | [] [] [] [] | | |
- gjay | [] | | |
- gliv | [] [] [] | | |
- glunarclock | [] [] | | |
- gnubiff | () | | |
- gnucash | [] () () () () | | |
- gnuedu | [] [] | | |
- gnulib | [] [] | | |
- gnunet | | | |
- gnunet-gtk | [] | | |
- gnutls | [] [] | | |
- gold | [] | | |
- gpe-aerial | [] [] [] [] | | |
- gpe-beam | [] [] [] [] | | |
- gpe-bluetooth | [] [] | | |
- gpe-calendar | [] | | |
- gpe-clock | [] [] [] [] | | |
- gpe-conf | [] [] [] | | |
- gpe-contacts | [] [] [] | | |
- gpe-edit | [] [] | | |
- gpe-filemanager | [] [] [] | | |
- gpe-go | [] [] [] [] | | |
- gpe-login | [] [] | | |
- gpe-ownerinfo | [] [] [] [] | | |
- gpe-package | [] [] [] | | |
- gpe-sketchbook | [] [] [] [] | | |
- gpe-su | [] [] [] [] | | |
- gpe-taskmanager | [] [] [] [] | | |
- gpe-timesheet | [] [] [] [] | | |
- gpe-today | [] [] [] [] | | |
- gpe-todo | [] [] [] | | |
- gphoto2 | [] [] () [] [] [] | | |
- gprof | [] [] [] | | |
- gpsdrive | [] [] [] | | |
- gramadoir | [] [] [] | | |
- grep | [] | | |
- grub | [] [] | | |
- gsasl | [] | | |
- gss | | | |
- gst-plugins-bad | [] [] [] [] [] | | |
- gst-plugins-base | [] [] [] [] [] | | |
- gst-plugins-good | [] [] [] [] [] [] | | |
- gst-plugins-ugly | [] [] [] [] [] [] | | |
- gstreamer | [] [] [] [] [] | | |
- gtick | [] () [] | | |
- gtkam | [] [] () [] [] | | |
- gtkorphan | [] [] [] [] | | |
- gtkspell | [] [] [] [] [] [] [] | | |
- gutenprint | [] [] [] | | |
- hello | [] [] [] [] | | |
- help2man | [] | | |
- hylafax | [] [] | | |
- idutils | [] [] | | |
- indent | [] [] [] [] [] [] [] | | |
- iso_15924 | [] () [] [] | | |
- iso_3166 | [] [] [] [] () [] [] [] () | | |
- iso_3166_2 | () | | |
- iso_4217 | [] [] [] () [] [] | | |
- iso_639 | [] [] [] [] () [] [] | | |
- iso_639_3 | [] | | |
- jwhois | [] | | |
- kbd | [] [] [] [] [] | | |
- keytouch | [] [] | | |
- keytouch-editor | [] [] | | |
- keytouch-keyboa... | [] | | |
- klavaro | [] [] [] [] | | |
- latrine | [] () | | |
- ld | [] [] | | |
- leafpad | [] [] [] [] [] [] | | |
- libc | [] [] [] [] | | |
- libexif | [] [] () | | |
- libextractor | | | |
- libgnutls | [] | | |
- libgpewidget | [] [] | | |
- libgpg-error | [] [] | | |
- libgphoto2 | [] () | | |
- libgphoto2_port | [] () [] | | |
- libgsasl | | | |
- libiconv | [] [] [] [] [] | | |
- libidn | [] [] [] | | |
- lifelines | [] () | | |
- liferea | [] [] [] [] [] | | |
- lilypond | [] [] [] | | |
- linkdr | [] [] [] | | |
- lordsawar | [] | | |
- lprng | | | |
- lynx | [] [] [] [] | | |
- m4 | [] [] [] [] | | |
- mailfromd | | | |
- mailutils | [] | | |
- make | [] [] [] | | |
- man-db | | | |
- man-db-manpages | | | |
- minicom | [] [] [] [] | | |
- mkisofs | | | |
- myserver | | | |
- nano | [] [] [] | | |
- opcodes | [] [] | | |
- parted | [] [] | | |
- pies | | | |
- popt | [] [] [] [] [] | | |
- psmisc | [] [] [] | | |
- pspp | [] | | |
- pwdutils | [] | | |
- radius | [] | | |
- recode | [] [] [] [] [] [] | | |
- rosegarden | () () () | | |
- rpm | [] [] [] | | |
- rush | | | |
- sarg | | | |
- screem | | | |
- scrollkeeper | [] [] [] [] [] | | |
- sed | [] [] [] [] [] [] | | |
- sharutils | [] [] [] [] | | |
- shishi | | | |
- skencil | [] () [] | | |
- solfege | [] [] [] | | |
- solfege-manual | [] [] | | |
- soundtracker | [] [] [] | | |
- sp | [] | | |
- sysstat | [] [] [] | | |
- tar | [] [] [] [] | | |
- texinfo | [] [] [] | | |
- tin | [] [] | | |
- unicode-han-tra... | | | |
- unicode-transla... | | | |
- util-linux-ng | [] [] [] [] | | |
- vice | () () | | |
- vmm | [] | | |
- vorbis-tools | [] [] | | |
- wastesedge | [] | | |
- wdiff | [] [] | | |
- wget | [] [] [] | | |
- wyslij-po | | | |
- xchat | [] [] [] [] [] | | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] | | |
- xkeyboard-config | [] [] [] [] [] [] | | |
- +-------------------------------------------------+ | |
- crh cs da de el en en_GB en_ZA eo es et eu fa | |
- 5 64 105 117 18 1 8 0 28 89 18 19 0 | |
- | |
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn | |
- +----------------------------------------------------+ | |
- a2ps | [] [] [] [] | | |
- aegis | [] [] | | |
- ant-phone | [] [] | | |
- anubis | [] [] [] [] | | |
- aspell | [] [] [] [] | | |
- bash | [] [] [] [] | | |
- bfd | [] [] [] | | |
- bibshelf | [] [] [] [] [] | | |
- binutils | [] [] [] | | |
- bison | [] [] [] [] | | |
- bison-runtime | [] [] [] [] [] [] | | |
- bluez-pin | [] [] [] [] [] [] [] [] | | |
- bombono-dvd | [] | | |
- buzztard | [] | | |
- cflow | [] [] [] | | |
- clisp | [] | | |
- coreutils | [] [] [] [] [] | | |
- cpio | [] [] [] [] | | |
- cppi | [] [] | | |
- cpplib | [] [] [] | | |
- cryptsetup | [] [] [] | | |
- dfarc | [] [] [] | | |
- dialog | [] [] [] [] [] [] [] | | |
- dico | | | |
- diffutils | [] [] [] [] [] [] [] [] [] | | |
- dink | [] | | |
- doodle | [] [] | | |
- e2fsprogs | [] [] | | |
- enscript | [] [] [] [] | | |
- exif | [] [] [] [] [] [] | | |
- fetchmail | [] [] [] [] | | |
- findutils | [] [] [] [] [] [] | | |
- flex | [] [] [] | | |
- freedink | [] [] [] | | |
- gas | [] [] | | |
- gawk | [] [] [] [] () [] | | |
- gcal | [] | | |
- gcc | [] | | |
- gettext-examples | [] [] [] [] [] [] [] | | |
- gettext-runtime | [] [] [] [] [] [] | | |
- gettext-tools | [] [] [] [] | | |
- gip | [] [] [] [] [] [] | | |
- gjay | [] | | |
- gliv | [] () | | |
- glunarclock | [] [] [] [] | | |
- gnubiff | () [] () | | |
- gnucash | () () () () () [] | | |
- gnuedu | [] [] | | |
- gnulib | [] [] [] [] [] [] | | |
- gnunet | | | |
- gnunet-gtk | [] | | |
- gnutls | [] [] | | |
- gold | [] [] | | |
- gpe-aerial | [] [] [] | | |
- gpe-beam | [] [] [] [] | | |
- gpe-bluetooth | [] [] [] [] | | |
- gpe-calendar | [] [] | | |
- gpe-clock | [] [] [] [] [] | | |
- gpe-conf | [] [] [] [] | | |
- gpe-contacts | [] [] [] [] | | |
- gpe-edit | [] [] [] | | |
- gpe-filemanager | [] [] [] [] | | |
- gpe-go | [] [] [] [] [] | | |
- gpe-login | [] [] [] | | |
- gpe-ownerinfo | [] [] [] [] [] | | |
- gpe-package | [] [] [] | | |
- gpe-sketchbook | [] [] [] [] | | |
- gpe-su | [] [] [] [] [] [] | | |
- gpe-taskmanager | [] [] [] [] [] | | |
- gpe-timesheet | [] [] [] [] [] | | |
- gpe-today | [] [] [] [] [] [] [] | | |
- gpe-todo | [] [] [] | | |
- gphoto2 | [] [] [] [] [] [] | | |
- gprof | [] [] [] [] | | |
- gpsdrive | [] [] [] | | |
- gramadoir | [] [] [] | | |
- grep | [] [] | | |
- grub | [] [] [] [] | | |
- gsasl | [] [] [] [] [] | | |
- gss | [] [] [] [] [] | | |
- gst-plugins-bad | [] [] [] [] [] [] | | |
- gst-plugins-base | [] [] [] [] [] [] | | |
- gst-plugins-good | [] [] [] [] [] [] | | |
- gst-plugins-ugly | [] [] [] [] [] [] | | |
- gstreamer | [] [] [] [] [] | | |
- gtick | [] [] [] [] [] | | |
- gtkam | [] [] [] [] [] | | |
- gtkorphan | [] [] [] | | |
- gtkspell | [] [] [] [] [] [] [] [] [] | | |
- gutenprint | [] [] [] [] | | |
- hello | [] [] [] | | |
- help2man | [] [] | | |
- hylafax | [] | | |
- idutils | [] [] [] [] [] [] | | |
- indent | [] [] [] [] [] [] [] [] | | |
- iso_15924 | [] () [] [] | | |
- iso_3166 | [] () [] [] [] [] [] [] [] [] [] [] | | |
- iso_3166_2 | () [] [] [] | | |
- iso_4217 | [] () [] [] [] [] | | |
- iso_639 | [] () [] [] [] [] [] [] [] | | |
- iso_639_3 | () [] [] | | |
- jwhois | [] [] [] [] [] | | |
- kbd | [] [] | | |
- keytouch | [] [] [] [] [] [] | | |
- keytouch-editor | [] [] [] [] [] | | |
- keytouch-keyboa... | [] [] [] [] [] | | |
- klavaro | [] [] | | |
- latrine | [] [] [] | | |
- ld | [] [] [] [] | | |
- leafpad | [] [] [] [] [] [] [] () | | |
- libc | [] [] [] [] [] | | |
- libexif | [] | | |
- libextractor | | | |
- libgnutls | [] [] | | |
- libgpewidget | [] [] [] [] | | |
- libgpg-error | [] [] | | |
- libgphoto2 | [] [] [] | | |
- libgphoto2_port | [] [] [] | | |
- libgsasl | [] [] [] [] [] | | |
- libiconv | [] [] [] [] [] [] | | |
- libidn | [] [] [] [] | | |
- lifelines | () | | |
- liferea | [] [] [] [] | | |
- lilypond | [] [] | | |
- linkdr | [] [] [] [] [] | | |
- lordsawar | | | |
- lprng | [] | | |
- lynx | [] [] [] [] [] | | |
- m4 | [] [] [] [] [] [] | | |
- mailfromd | | | |
- mailutils | [] [] | | |
- make | [] [] [] [] [] [] [] [] [] | | |
- man-db | [] [] | | |
- man-db-manpages | [] | | |
- minicom | [] [] [] [] [] | | |
- mkisofs | [] [] [] [] | | |
- myserver | | | |
- nano | [] [] [] [] [] [] | | |
- opcodes | [] [] [] [] | | |
- parted | [] [] [] [] | | |
- pies | | | |
- popt | [] [] [] [] [] [] [] [] [] | | |
- psmisc | [] [] [] | | |
- pspp | | | |
- pwdutils | [] [] | | |
- radius | [] [] | | |
- recode | [] [] [] [] [] [] [] [] | | |
- rosegarden | () () () () () | | |
- rpm | [] [] | | |
- rush | | | |
- sarg | [] | | |
- screem | [] [] | | |
- scrollkeeper | [] [] [] [] | | |
- sed | [] [] [] [] [] [] [] [] | | |
- sharutils | [] [] [] [] [] [] [] | | |
- shishi | [] | | |
- skencil | [] | | |
- solfege | [] [] [] [] | | |
- solfege-manual | [] [] | | |
- soundtracker | [] [] | | |
- sp | [] () | | |
- sysstat | [] [] [] [] [] | | |
- tar | [] [] [] [] [] [] [] | | |
- texinfo | [] [] [] [] | | |
- tin | [] | | |
- unicode-han-tra... | | | |
- unicode-transla... | [] [] | | |
- util-linux-ng | [] [] [] [] [] [] | | |
- vice | () () () | | |
- vmm | [] | | |
- vorbis-tools | [] | | |
- wastesedge | () () | | |
- wdiff | [] | | |
- wget | [] [] [] [] [] [] [] [] | | |
- wyslij-po | [] [] [] | | |
- xchat | [] [] [] [] [] [] [] [] [] | | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] | | |
- xkeyboard-config | [] [] [] [] [] | | |
- +----------------------------------------------------+ | |
- fi fr ga gl gu he hi hr hu hy id is it ja ka kn | |
- 105 121 53 20 4 8 3 5 53 2 120 5 84 67 0 4 | |
- | |
- ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne | |
- +-----------------------------------------------+ | |
- a2ps | [] | | |
- aegis | | | |
- ant-phone | | | |
- anubis | [] [] | | |
- aspell | [] | | |
- bash | | | |
- bfd | | | |
- bibshelf | [] [] | | |
- binutils | | | |
- bison | [] | | |
- bison-runtime | [] [] [] [] [] | | |
- bluez-pin | [] [] [] [] [] | | |
- bombono-dvd | | | |
- buzztard | | | |
- cflow | | | |
- clisp | | | |
- coreutils | [] | | |
- cpio | | | |
- cppi | | | |
- cpplib | | | |
- cryptsetup | | | |
- dfarc | [] | | |
- dialog | [] [] [] [] [] | | |
- dico | | | |
- diffutils | [] [] | | |
- dink | | | |
- doodle | | | |
- e2fsprogs | | | |
- enscript | | | |
- exif | [] | | |
- fetchmail | | | |
- findutils | | | |
- flex | | | |
- freedink | [] | | |
- gas | | | |
- gawk | | | |
- gcal | | | |
- gcc | | | |
- gettext-examples | [] [] [] [] | | |
- gettext-runtime | [] | | |
- gettext-tools | [] | | |
- gip | [] [] | | |
- gjay | | | |
- gliv | | | |
- glunarclock | [] | | |
- gnubiff | | | |
- gnucash | () () () () | | |
- gnuedu | | | |
- gnulib | | | |
- gnunet | | | |
- gnunet-gtk | | | |
- gnutls | [] | | |
- gold | | | |
- gpe-aerial | [] | | |
- gpe-beam | [] | | |
- gpe-bluetooth | [] [] | | |
- gpe-calendar | [] | | |
- gpe-clock | [] [] [] [] [] | | |
- gpe-conf | [] [] | | |
- gpe-contacts | [] [] | | |
- gpe-edit | [] | | |
- gpe-filemanager | [] [] | | |
- gpe-go | [] [] [] | | |
- gpe-login | [] | | |
- gpe-ownerinfo | [] [] | | |
- gpe-package | [] [] | | |
- gpe-sketchbook | [] [] | | |
- gpe-su | [] [] [] [] [] [] | | |
- gpe-taskmanager | [] [] [] [] [] [] | | |
- gpe-timesheet | [] [] | | |
- gpe-today | [] [] [] [] | | |
- gpe-todo | [] [] | | |
- gphoto2 | | | |
- gprof | [] | | |
- gpsdrive | | | |
- gramadoir | | | |
- grep | | | |
- grub | | | |
- gsasl | | | |
- gss | | | |
- gst-plugins-bad | [] [] [] [] | | |
- gst-plugins-base | [] [] | | |
- gst-plugins-good | [] [] | | |
- gst-plugins-ugly | [] [] [] [] [] | | |
- gstreamer | | | |
- gtick | | | |
- gtkam | [] | | |
- gtkorphan | [] [] | | |
- gtkspell | [] [] [] [] [] [] [] | | |
- gutenprint | | | |
- hello | [] [] [] | | |
- help2man | | | |
- hylafax | | | |
- idutils | | | |
- indent | | | |
- iso_15924 | [] [] | | |
- iso_3166 | [] [] () [] [] [] [] [] | | |
- iso_3166_2 | | | |
- iso_4217 | [] [] | | |
- iso_639 | [] [] | | |
- iso_639_3 | [] | | |
- jwhois | [] | | |
- kbd | | | |
- keytouch | [] | | |
- keytouch-editor | [] | | |
- keytouch-keyboa... | [] | | |
- klavaro | [] | | |
- latrine | [] | | |
- ld | | | |
- leafpad | [] [] [] | | |
- libc | [] | | |
- libexif | | | |
- libextractor | | | |
- libgnutls | [] | | |
- libgpewidget | [] [] | | |
- libgpg-error | | | |
- libgphoto2 | | | |
- libgphoto2_port | | | |
- libgsasl | | | |
- libiconv | | | |
- libidn | | | |
- lifelines | | | |
- liferea | | | |
- lilypond | | | |
- linkdr | | | |
- lordsawar | | | |
- lprng | | | |
- lynx | | | |
- m4 | | | |
- mailfromd | | | |
- mailutils | | | |
- make | [] | | |
- man-db | | | |
- man-db-manpages | | | |
- minicom | [] | | |
- mkisofs | | | |
- myserver | | | |
- nano | [] [] | | |
- opcodes | | | |
- parted | | | |
- pies | | | |
- popt | [] [] [] | | |
- psmisc | | | |
- pspp | | | |
- pwdutils | | | |
- radius | | | |
- recode | | | |
- rosegarden | | | |
- rpm | | | |
- rush | | | |
- sarg | | | |
- screem | | | |
- scrollkeeper | [] [] | | |
- sed | | | |
- sharutils | | | |
- shishi | | | |
- skencil | | | |
- solfege | [] | | |
- solfege-manual | | | |
- soundtracker | | | |
- sp | | | |
- sysstat | [] | | |
- tar | [] | | |
- texinfo | [] | | |
- tin | | | |
- unicode-han-tra... | | | |
- unicode-transla... | | | |
- util-linux-ng | | | |
- vice | | | |
- vmm | | | |
- vorbis-tools | | | |
- wastesedge | | | |
- wdiff | | | |
- wget | [] | | |
- wyslij-po | | | |
- xchat | [] [] [] | | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] | | |
- xkeyboard-config | [] [] [] | | |
- +-----------------------------------------------+ | |
- ko ku ky lg lt lv mk ml mn mr ms mt nb nds ne | |
- 20 5 10 1 13 48 4 2 2 4 24 10 20 3 1 | |
- | |
- nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr | |
- +---------------------------------------------------+ | |
- a2ps | [] [] [] [] [] [] [] [] | | |
- aegis | [] [] [] | | |
- ant-phone | [] [] | | |
- anubis | [] [] [] | | |
- aspell | [] [] [] [] [] | | |
- bash | [] [] | | |
- bfd | [] | | |
- bibshelf | [] [] | | |
- binutils | [] [] | | |
- bison | [] [] [] | | |
- bison-runtime | [] [] [] [] [] [] [] | | |
- bluez-pin | [] [] [] [] [] [] [] [] | | |
- bombono-dvd | [] () | | |
- buzztard | [] [] | | |
- cflow | [] | | |
- clisp | [] [] | | |
- coreutils | [] [] [] [] [] [] | | |
- cpio | [] [] [] | | |
- cppi | [] | | |
- cpplib | [] | | |
- cryptsetup | [] | | |
- dfarc | [] | | |
- dialog | [] [] [] [] | | |
- dico | [] | | |
- diffutils | [] [] [] [] [] [] | | |
- dink | () | | |
- doodle | [] [] | | |
- e2fsprogs | [] [] | | |
- enscript | [] [] [] [] [] | | |
- exif | [] [] [] () [] | | |
- fetchmail | [] [] [] [] | | |
- findutils | [] [] [] [] [] | | |
- flex | [] [] [] [] [] | | |
- freedink | [] [] | | |
- gas | | | |
- gawk | [] [] [] [] | | |
- gcal | | | |
- gcc | [] | | |
- gettext-examples | [] [] [] [] [] [] [] [] | | |
- gettext-runtime | [] [] [] [] [] [] [] [] [] | | |
- gettext-tools | [] [] [] [] [] [] | | |
- gip | [] [] [] [] [] | | |
- gjay | | | |
- gliv | [] [] [] [] [] [] | | |
- glunarclock | [] [] [] [] [] | | |
- gnubiff | [] () | | |
- gnucash | [] () () () | | |
- gnuedu | [] | | |
- gnulib | [] [] [] [] | | |
- gnunet | | | |
- gnunet-gtk | | | |
- gnutls | [] [] | | |
- gold | | | |
- gpe-aerial | [] [] [] [] [] [] [] | | |
- gpe-beam | [] [] [] [] [] [] [] | | |
- gpe-bluetooth | [] [] | | |
- gpe-calendar | [] [] [] [] | | |
- gpe-clock | [] [] [] [] [] [] [] [] | | |
- gpe-conf | [] [] [] [] [] [] [] | | |
- gpe-contacts | [] [] [] [] [] | | |
- gpe-edit | [] [] [] | | |
- gpe-filemanager | [] [] [] | | |
- gpe-go | [] [] [] [] [] [] [] [] | | |
- gpe-login | [] [] | | |
- gpe-ownerinfo | [] [] [] [] [] [] [] [] | | |
- gpe-package | [] [] | | |
- gpe-sketchbook | [] [] [] [] [] [] [] | | |
- gpe-su | [] [] [] [] [] [] [] [] | | |
- gpe-taskmanager | [] [] [] [] [] [] [] [] | | |
- gpe-timesheet | [] [] [] [] [] [] [] [] | | |
- gpe-today | [] [] [] [] [] [] [] [] | | |
- gpe-todo | [] [] [] [] [] | | |
- gphoto2 | [] [] [] [] [] [] [] [] | | |
- gprof | [] [] [] | | |
- gpsdrive | [] [] | | |
- gramadoir | [] [] | | |
- grep | [] [] [] [] | | |
- grub | [] [] [] | | |
- gsasl | [] [] [] [] | | |
- gss | [] [] [] | | |
- gst-plugins-bad | [] [] [] [] [] [] | | |
- gst-plugins-base | [] [] [] [] [] | | |
- gst-plugins-good | [] [] [] [] [] | | |
- gst-plugins-ugly | [] [] [] [] [] [] | | |
- gstreamer | [] [] [] [] [] | | |
- gtick | [] [] [] | | |
- gtkam | [] [] [] [] [] [] | | |
- gtkorphan | [] | | |
- gtkspell | [] [] [] [] [] [] [] [] [] [] | | |
- gutenprint | [] [] | | |
- hello | [] [] [] [] | | |
- help2man | [] [] | | |
- hylafax | [] | | |
- idutils | [] [] [] [] [] | | |
- indent | [] [] [] [] [] [] [] | | |
- iso_15924 | [] [] [] [] | | |
- iso_3166 | [] [] [] [] [] () [] [] [] [] [] [] [] [] | | |
- iso_3166_2 | [] [] [] | | |
- iso_4217 | [] [] [] [] [] [] [] [] | | |
- iso_639 | [] [] [] [] [] [] [] [] [] | | |
- iso_639_3 | [] [] | | |
- jwhois | [] [] [] [] | | |
- kbd | [] [] [] | | |
- keytouch | [] [] [] | | |
- keytouch-editor | [] [] [] | | |
- keytouch-keyboa... | [] [] [] | | |
- klavaro | [] [] | | |
- latrine | [] [] | | |
- ld | | | |
- leafpad | [] [] [] [] [] [] [] [] [] | | |
- libc | [] [] [] [] | | |
- libexif | [] [] () [] | | |
- libextractor | | | |
- libgnutls | [] [] | | |
- libgpewidget | [] [] [] | | |
- libgpg-error | [] [] | | |
- libgphoto2 | [] [] | | |
- libgphoto2_port | [] [] [] [] [] | | |
- libgsasl | [] [] [] [] [] | | |
- libiconv | [] [] [] [] [] | | |
- libidn | [] [] | | |
- lifelines | [] [] | | |
- liferea | [] [] [] [] [] () () [] | | |
- lilypond | [] | | |
- linkdr | [] [] [] | | |
- lordsawar | | | |
- lprng | [] | | |
- lynx | [] [] [] | | |
- m4 | [] [] [] [] [] | | |
- mailfromd | [] | | |
- mailutils | [] | | |
- make | [] [] [] [] | | |
- man-db | [] [] [] | | |
- man-db-manpages | [] [] [] | | |
- minicom | [] [] [] [] | | |
- mkisofs | [] [] [] | | |
- myserver | | | |
- nano | [] [] [] [] | | |
- opcodes | [] [] | | |
- parted | [] [] [] [] | | |
- pies | [] | | |
- popt | [] [] [] [] | | |
- psmisc | [] [] [] | | |
- pspp | [] [] | | |
- pwdutils | [] | | |
- radius | [] [] [] | | |
- recode | [] [] [] [] [] [] [] [] | | |
- rosegarden | () () | | |
- rpm | [] [] [] | | |
- rush | [] [] | | |
- sarg | | | |
- screem | | | |
- scrollkeeper | [] [] [] [] [] [] [] [] | | |
- sed | [] [] [] [] [] [] [] [] [] | | |
- sharutils | [] [] [] [] | | |
- shishi | [] | | |
- skencil | [] [] | | |
- solfege | [] [] [] [] | | |
- solfege-manual | [] [] [] | | |
- soundtracker | [] | | |
- sp | | | |
- sysstat | [] [] [] [] | | |
- tar | [] [] [] [] | | |
- texinfo | [] [] [] [] | | |
- tin | [] | | |
- unicode-han-tra... | | | |
- unicode-transla... | | | |
- util-linux-ng | [] [] [] [] [] | | |
- vice | [] | | |
- vmm | [] | | |
- vorbis-tools | [] [] | | |
- wastesedge | [] | | |
- wdiff | [] [] | | |
- wget | [] [] [] [] [] [] [] | | |
- wyslij-po | [] [] [] | | |
- xchat | [] [] [] [] [] [] [] [] [] | | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] [] [] [] [] | | |
- xkeyboard-config | [] [] [] | | |
- +---------------------------------------------------+ | |
- nl nn or pa pl ps pt pt_BR ro ru rw sk sl sq sr | |
- 135 10 4 7 105 1 29 62 47 91 3 54 46 9 37 | |
- | |
- sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW | |
- +---------------------------------------------------+ | |
- a2ps | [] [] [] [] [] | … | |
- aegis | [] | … | |
- ant-phone | [] [] [] [] | … | |
- anubis | [] [] [] [] | … | |
- aspell | [] [] [] | … | |
- bash | [] [] [] | … | |
- bfd | [] | … | |
- bibshelf | [] [] [] | … | |
- binutils | [] [] | … | |
- bison | [] [] | … | |
- bison-runtime | [] [] [] [] [] [] | … | |
- bluez-pin | [] [] [] [] [] [] [] [] | … | |
- bombono-dvd | [] | … | |
- buzztard | [] | … | |
- cflow | [] [] [] | … | |
- clisp | | … | |
- coreutils | [] [] [] [] | … | |
- cpio | [] [] [] [] [] [] | … | |
- cppi | [] [] | … | |
- cpplib | [] [] [] [] [] [] | … | |
- cryptsetup | [] [] | … | |
- dfarc | [] | … | |
- dialog | [] [] [] [] [] [] [] | … | |
- dico | [] | … | |
- diffutils | [] [] [] [] [] [] | … | |
- dink | | … | |
- doodle | [] [] | … | |
- e2fsprogs | [] [] [] | … | |
- enscript | [] [] [] [] | … | |
- exif | [] [] [] | … | |
- fetchmail | [] [] [] | … | |
- findutils | [] [] [] [] [] | … | |
- flex | [] [] [] [] | … | |
- freedink | [] | … | |
- gas | [] | … | |
- gawk | [] [] [] [] | … | |
- gcal | [] [] | … | |
- gcc | [] [] [] | … | |
- gettext-examples | [] [] [] [] [] [] [] | … | |
- gettext-runtime | [] [] [] [] [] [] [] | … | |
- gettext-tools | [] [] [] [] [] [] | … | |
- gip | [] [] [] [] | … | |
- gjay | [] | … | |
- gliv | [] [] [] | … | |
- glunarclock | [] [] [] [] [] | … | |
- gnubiff | [] [] | … | |
- gnucash | () [] () [] () | … | |
- gnuedu | [] [] | … | |
- gnulib | [] [] [] [] | … | |
- gnunet | [] | … | |
- gnunet-gtk | [] [] [] | … | |
- gnutls | [] [] [] | … | |
- gold | [] | … | |
- gpe-aerial | [] [] [] | … | |
- gpe-beam | [] [] [] | … | |
- gpe-bluetooth | [] [] [] | … | |
- gpe-calendar | [] [] [] [] | … | |
- gpe-clock | [] [] [] [] [] | … | |
- gpe-conf | [] [] [] [] | … | |
- gpe-contacts | [] [] [] | … | |
- gpe-edit | [] [] [] | … | |
- gpe-filemanager | [] [] [] [] | … | |
- gpe-go | [] [] [] [] [] | … | |
- gpe-login | [] [] [] | … | |
- gpe-ownerinfo | [] [] [] [] [] | … | |
- gpe-package | [] [] [] | … | |
- gpe-sketchbook | [] [] [] | … | |
- gpe-su | [] [] [] [] [] | … | |
- gpe-taskmanager | [] [] [] [] [] | … | |
- gpe-timesheet | [] [] [] [] [] | … | |
- gpe-today | [] [] [] [] [] [] | … | |
- gpe-todo | [] [] [] [] | … | |
- gphoto2 | [] [] [] [] [] | … | |
- gprof | [] [] [] | … | |
- gpsdrive | [] [] [] | … | |
- gramadoir | [] [] [] | … | |
- grep | [] [] [] | … | |
- grub | [] [] [] | … | |
- gsasl | [] [] [] [] | … | |
- gss | [] [] [] | … | |
- gst-plugins-bad | [] [] [] [] | … | |
- gst-plugins-base | [] [] [] [] [] | … | |
- gst-plugins-good | [] [] [] [] | … | |
- gst-plugins-ugly | [] [] [] [] [] | … | |
- gstreamer | [] [] [] [] | … | |
- gtick | [] [] [] | … | |
- gtkam | [] [] [] | … | |
- gtkorphan | [] [] [] | … | |
- gtkspell | [] [] [] [] [] [] [] [] [] | … | |
- gutenprint | [] | … | |
- hello | [] [] [] [] [] [] | … | |
- help2man | [] [] | … | |
- hylafax | [] | … | |
- idutils | [] [] [] [] | … | |
- indent | [] [] [] [] [] [] | … | |
- iso_15924 | () [] () [] [] | … | |
- iso_3166 | [] [] () [] [] () [] [] [] () | … | |
- iso_3166_2 | () [] () [] | … | |
- iso_4217 | [] () [] [] () [] [] | … | |
- iso_639 | [] [] [] () [] () [] [] [] [] | … | |
- iso_639_3 | [] () | … | |
- jwhois | [] [] [] [] [] | … | |
- kbd | [] [] [] [] [] | … | |
- keytouch | [] [] [] | … | |
- keytouch-editor | [] [] [] | … | |
- keytouch-keyboa... | [] [] [] | … | |
- klavaro | [] | … | |
- latrine | [] [] [] | … | |
- ld | [] [] [] [] | … | |
- leafpad | [] [] [] [] [] [] | … | |
- libc | [] [] [] [] [] | … | |
- libexif | [] () | … | |
- libextractor | [] | … | |
- libgnutls | [] [] [] | … | |
- libgpewidget | [] [] [] | … | |
- libgpg-error | [] [] [] | … | |
- libgphoto2 | [] [] | … | |
- libgphoto2_port | [] [] [] [] | … | |
- libgsasl | [] [] [] | … | |
- libiconv | [] [] [] [] | … | |
- libidn | () [] [] | … | |
- lifelines | [] | … | |
- liferea | [] [] [] | … | |
- lilypond | [] | … | |
- linkdr | [] [] [] [] [] | … | |
- lordsawar | | … | |
- lprng | [] | … | |
- lynx | [] [] [] [] | … | |
- m4 | [] [] [] [] | … | |
- mailfromd | [] [] | … | |
- mailutils | [] | … | |
- make | [] [] [] [] | … | |
- man-db | [] [] [] | … | |
- man-db-manpages | | … | |
- minicom | [] [] | … | |
- mkisofs | [] [] | … | |
- myserver | | … | |
- nano | [] [] [] [] | … | |
- opcodes | [] [] [] | … | |
- parted | [] [] [] [] [] | … | |
- pies | [] [] | … | |
- popt | [] [] [] [] [] [] | … | |
- psmisc | [] [] | … | |
- pspp | | … | |
- pwdutils | [] [] | … | |
- radius | [] [] | … | |
- recode | [] [] [] [] | … | |
- rosegarden | () | … | |
- rpm | [] [] [] | … | |
- rush | [] [] | … | |
- sarg | | … | |
- screem | [] | … | |
- scrollkeeper | [] [] [] [] [] | … | |
- sed | [] [] [] [] [] | … | |
- sharutils | [] [] [] [] [] | … | |
- shishi | [] | … | |
- skencil | [] [] | … | |
- solfege | [] [] [] [] | … | |
- solfege-manual | [] | … | |
- soundtracker | [] [] [] | … | |
- sp | [] | … | |
- sysstat | [] [] | … | |
- tar | [] [] [] [] [] [] | … | |
- texinfo | [] [] [] [] [] | … | |
- tin | | … | |
- unicode-han-tra... | | … | |
- unicode-transla... | | … | |
- util-linux-ng | [] [] [] [] | … | |
- vice | () () | … | |
- vmm | [] | … | |
- vorbis-tools | [] | … | |
- wastesedge | | … | |
- wdiff | [] [] | … | |
- wget | [] [] [] [] [] | … | |
- wyslij-po | [] [] | … | |
- xchat | [] [] [] [] [] [] | … | |
- xdg-user-dirs | [] [] [] [] [] [] [] [] [] [] | … | |
- xkeyboard-config | [] [] [] | … | |
- +---------------------------------------------------+ | |
- 85 teams sv sw ta te tg th tr uk vi wa zh_CN zh_HK zh_TW | |
- 178 domains 119 1 3 3 0 10 65 51 155 17 98 7 41 2… | |
- | |
- 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 June 2010 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 Library General Public | |
-License which covers the use of the GNU `gettext' library. This means | |
-in particular that even non-free programs can use `libintl' as a shared | |
-library, whereas only free software can use `libintl' as a static | |
-library or use modified versions of `libintl'. | |
- | |
- Once the sources are changed appropriately and the setup can handle | |
-the use of `gettext' the only thing missing are the translations. The | |
-Free Translation Project is also available for packages which are not | |
-developed inside the GNU project. Therefore the information given above | |
-applies also for every other Free Software Project. Contact | |
-`[email protected]' to make the `.pot' files available | |
-to the translation teams. | |
- | |
+<https://www.gnu.org/software/gettext/manual/html_node/Users.html> | |
diff --git a/config.rpath b/config.rpath | |
t@@ -2,7 +2,7 @@ | |
# Output a system dependent set of variables, describing how to set the | |
# run time search path of shared libraries in an executable. | |
# | |
-# Copyright 1996-2013 Free Software Foundation, Inc. | |
+# Copyright 1996-2020 Free Software Foundation, Inc. | |
# Taken from GNU libtool, 2001 | |
# Originally by Gordon Matzigkeit <[email protected]>, 1996 | |
# | |
t@@ -367,11 +367,7 @@ else | |
dgux*) | |
hardcode_libdir_flag_spec='-L$libdir' | |
;; | |
- freebsd2.2*) | |
- hardcode_libdir_flag_spec='-R$libdir' | |
- hardcode_direct=yes | |
- ;; | |
- freebsd2*) | |
+ freebsd2.[01]*) | |
hardcode_direct=yes | |
hardcode_minus_L=yes | |
;; | |
t@@ -548,13 +544,11 @@ case "$host_os" in | |
dgux*) | |
library_names_spec='$libname$shrext' | |
;; | |
+ freebsd[23].*) | |
+ library_names_spec='$libname$shrext$versuffix' | |
+ ;; | |
freebsd* | dragonfly*) | |
- case "$host_os" in | |
- freebsd[123]*) | |
- library_names_spec='$libname$shrext$versuffix' ;; | |
- *) | |
- library_names_spec='$libname$shrext' ;; | |
- esac | |
+ library_names_spec='$libname$shrext' | |
;; | |
gnu*) | |
library_names_spec='$libname$shrext' | |
diff --git a/m4/gettext.m4 b/m4/gettext.m4 | |
t@@ -1,16 +1,16 @@ | |
-# gettext.m4 serial 66 (gettext-0.18.2) | |
-dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. | |
+# gettext.m4 serial 71 (gettext-0.20.2) | |
+dnl Copyright (C) 1995-2014, 2016, 2018-2020 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 can be used in projects which are not available under | |
-dnl the GNU General Public License or the GNU Library General Public | |
+dnl This file can be used in projects which are not available under | |
+dnl the GNU General Public License or the GNU Lesser General Public | |
dnl License but which still want to provide support for the GNU gettext | |
dnl functionality. | |
dnl Please note that the actual code of the GNU gettext library is covered | |
-dnl by the GNU Library General Public License, and the rest of the GNU | |
-dnl gettext package package is covered by the GNU General Public License. | |
+dnl by the GNU Lesser 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: | |
t@@ -20,15 +20,13 @@ dnl Bruno Haible <[email protected]>, 2000-2006, 200… | |
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 INTLSYMBOL must be one of 'external', 'use-libtool'. | |
+dnl INTLSYMBOL should be 'external' for packages other than GNU gettext, and | |
+dnl 'use-libtool' for the packages 'gettext-runtime' and 'gettext-tools'. | |
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 AM-DISABLE-SHARED). | |
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 | |
t@@ -57,19 +55,17 @@ dnl | |
AC_DEFUN([AM_GNU_GETTEXT], | |
[ | |
dnl Argument checking. | |
- ifelse([$1], [], , [ifelse([$1], [external], , [ifelse([$1], [no-libtool], ,… | |
+ ifelse([$1], [], , [ifelse([$1], [external], , [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] argumen… | |
+ [errprint([ERROR: Use of AM_GNU_GETTEXT without [external] argument is no … | |
+])]) | |
ifelse([$2], [], , [ifelse([$2], [need-ngettext], , [ifelse([$2], [need-form… | |
[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], [])) | |
+ ifelse([$1], [external], [no], [yes])) | |
gt_NEEDS_INIT | |
AM_GNU_GETTEXT_NEED([$2]) | |
t@@ -91,8 +87,7 @@ AC_DEFUN([AM_GNU_GETTEXT], | |
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. | |
+ dnl Since AC_PROVIDE_IFELSE is not documented, we avoid it. | |
ifelse(gt_included_intl, yes, , [ | |
AC_REQUIRE([AM_ICONV_LINKFLAGS_BODY]) | |
]) | |
t@@ -161,13 +156,18 @@ changequote([,])dnl | |
[AC_LANG_PROGRAM( | |
[[ | |
#include <libintl.h> | |
-$gt_revision_test_code | |
+#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_bindin… | |
+#else | |
+#define __GNU_GETTEXT_SYMBOL_EXPRESSION 0 | |
+#endif | |
+$gt_revision_test_code | |
]], | |
[[ | |
bindtextdomain ("", ""); | |
-return * gettext ("")$gt_expression_test_code + _nl_msg_cat_cntr + *_nl_domain… | |
+return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION | |
]])], | |
[eval "$gt_func_gnugettext_libc=yes"], | |
[eval "$gt_func_gnugettext_libc=no"])]) | |
t@@ -193,17 +193,22 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_… | |
[AC_LANG_PROGRAM( | |
[[ | |
#include <libintl.h> | |
-$gt_revision_test_code | |
+#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 + _nl_msg_cat_cntr + *_nl_expand… | |
+return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION | |
]])], | |
[eval "$gt_func_gnugettext_libintl=yes"], | |
[eval "$gt_func_gnugettext_libintl=no"]) | |
t@@ -214,17 +219,22 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_… | |
[AC_LANG_PROGRAM( | |
[[ | |
#include <libintl.h> | |
-$gt_revision_test_code | |
+#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 + _nl_msg_cat_cntr + *_nl_expand… | |
+return * gettext ("")$gt_expression_test_code + __GNU_GETTEXT_SYMBOL_EXPRESSION | |
]])], | |
[LIBINTL="$LIBINTL $LIBICONV" | |
LTLIBINTL="$LTLIBINTL $LTLIBICONV" | |
t@@ -263,8 +273,8 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_ca… | |
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_libto… | |
- LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.[]gt_lib… | |
+ LIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LIBICO… | |
+ LTLIBINTL="ifelse([$3],[],\${top_builddir}/intl,[$3])/libintl.la $LTLI… | |
LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` | |
fi | |
t@@ -332,43 +342,14 @@ return * gettext ("")$gt_expression_test_code + _nl_msg_… | |
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; t… | |
- BUILD_INCLUDED_LIBINTL=yes | |
- fi | |
+ dnl In GNU gettext we have to set BUILD_INCLUDED_LIBINTL to 'yes' | |
+ dnl because some of the testsuite requires it. | |
+ BUILD_INCLUDED_LIBINTL=yes | |
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. | |
t@@ -399,3 +380,7 @@ AC_DEFUN([AM_GNU_GETTEXT_NEED], | |
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/host-cpu-c-abi.m4 b/m4/host-cpu-c-abi.m4 | |
t@@ -0,0 +1,675 @@ | |
+# host-cpu-c-abi.m4 serial 13 | |
+dnl Copyright (C) 2002-2020 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 and Sam Steingold. | |
+ | |
+dnl Sets the HOST_CPU variable to the canonical name of the CPU. | |
+dnl Sets the HOST_CPU_C_ABI variable to the canonical name of the CPU with its | |
+dnl C language ABI (application binary interface). | |
+dnl Also defines __${HOST_CPU}__ and __${HOST_CPU_C_ABI}__ as C macros in | |
+dnl config.h. | |
+dnl | |
+dnl This canonical name can be used to select a particular assembly language | |
+dnl source file that will interoperate with C code on the given host. | |
+dnl | |
+dnl For example: | |
+dnl * 'i386' and 'sparc' are different canonical names, because code for i386 | |
+dnl will not run on SPARC CPUs and vice versa. They have different | |
+dnl instruction sets. | |
+dnl * 'sparc' and 'sparc64' are different canonical names, because code for | |
+dnl 'sparc' and code for 'sparc64' cannot be linked together: 'sparc' code | |
+dnl contains 32-bit instructions, whereas 'sparc64' code contains 64-bit | |
+dnl instructions. A process on a SPARC CPU can be in 32-bit mode or in 64-bit | |
+dnl mode, but not both. | |
+dnl * 'mips' and 'mipsn32' are different canonical names, because they use | |
+dnl different argument passing and return conventions for C functions, and | |
+dnl although the instruction set of 'mips' is a large subset of the | |
+dnl instruction set of 'mipsn32'. | |
+dnl * 'mipsn32' and 'mips64' are different canonical names, because they use | |
+dnl different sizes for the C types like 'int' and 'void *', and although | |
+dnl the instruction sets of 'mipsn32' and 'mips64' are the same. | |
+dnl * The same canonical name is used for different endiannesses. You can | |
+dnl determine the endianness through preprocessor symbols: | |
+dnl - 'arm': test __ARMEL__. | |
+dnl - 'mips', 'mipsn32', 'mips64': test _MIPSEB vs. _MIPSEL. | |
+dnl - 'powerpc64': test _BIG_ENDIAN vs. _LITTLE_ENDIAN. | |
+dnl * The same name 'i386' is used for CPUs of type i386, i486, i586 | |
+dnl (Pentium), AMD K7, Pentium II, Pentium IV, etc., because | |
+dnl - Instructions that do not exist on all of these CPUs (cmpxchg, | |
+dnl MMX, SSE, SSE2, 3DNow! etc.) are not frequently used. If your | |
+dnl assembly language source files use such instructions, you will | |
+dnl need to make the distinction. | |
+dnl - Speed of execution of the common instruction set is reasonable across | |
+dnl the entire family of CPUs. If you have assembly language source files | |
+dnl that are optimized for particular CPU types (like GNU gmp has), you | |
+dnl will need to make the distinction. | |
+dnl See <https://en.wikipedia.org/wiki/X86_instruction_listings>. | |
+AC_DEFUN([gl_HOST_CPU_C_ABI], | |
+[ | |
+ AC_REQUIRE([AC_CANONICAL_HOST]) | |
+ AC_REQUIRE([gl_C_ASM]) | |
+ AC_CACHE_CHECK([host CPU and C ABI], [gl_cv_host_cpu_c_abi], | |
+ [case "$host_cpu" in | |
+ | |
+changequote(,)dnl | |
+ i[34567]86 ) | |
+changequote([,])dnl | |
+ gl_cv_host_cpu_c_abi=i386 | |
+ ;; | |
+ | |
+ x86_64 ) | |
+ # On x86_64 systems, the C compiler may be generating code in one of | |
+ # these ABIs: | |
+ # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64. | |
+ # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64 | |
+ # with native Windows (mingw, MSVC). | |
+ # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-x3… | |
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if (defined __x86_64__ || defined __amd64__ \ | |
+ || defined _M_X64 || defined _M_AMD64) | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __ILP32__ || defined _ILP32 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=x86_64-x32], | |
+ [gl_cv_host_cpu_c_abi=x86_64])], | |
+ [gl_cv_host_cpu_c_abi=i386]) | |
+ ;; | |
+ | |
+changequote(,)dnl | |
+ alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] ) | |
+changequote([,])dnl | |
+ gl_cv_host_cpu_c_abi=alpha | |
+ ;; | |
+ | |
+ arm* | aarch64 ) | |
+ # Assume arm with EABI. | |
+ # On arm64 systems, the C compiler may be generating code in one of | |
+ # these ABIs: | |
+ # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64. | |
+ # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-il… | |
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or ar… | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#ifdef __aarch64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __ILP32__ || defined _ILP32 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=arm64-ilp32], | |
+ [gl_cv_host_cpu_c_abi=arm64])], | |
+ [# Don't distinguish little-endian and big-endian arm, since they | |
+ # don't require different machine code for simple operations and | |
+ # since the user can distinguish them through the preprocessor | |
+ # defines __ARMEL__ vs. __ARMEB__. | |
+ # But distinguish arm which passes floating-point arguments and | |
+ # return values in integer registers (r0, r1, ...) - this is | |
+ # gcc -mfloat-abi=soft or gcc -mfloat-abi=softfp - from arm which | |
+ # passes them in float registers (s0, s1, ...) and double registers | |
+ # (d0, d1, ...) - this is gcc -mfloat-abi=hard. GCC 4.6 or newer | |
+ # sets the preprocessor defines __ARM_PCS (for the first case) and | |
+ # __ARM_PCS_VFP (for the second case), but older GCC does not. | |
+ echo 'double ddd; void func (double dd) { ddd = dd; }' > conftest.c | |
+ # Look for a reference to the register d0 in the .s file. | |
+ AC_TRY_COMMAND(${CC-cc} $CFLAGS $CPPFLAGS $gl_c_asm_opt conftest.c… | |
+ if LC_ALL=C grep 'd0,' conftest.$gl_asmext >/dev/null; then | |
+ gl_cv_host_cpu_c_abi=armhf | |
+ else | |
+ gl_cv_host_cpu_c_abi=arm | |
+ fi | |
+ rm -f conftest* | |
+ ]) | |
+ ;; | |
+ | |
+ hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) | |
+ # On hppa, the C compiler may be generating 32-bit code or 64-bit | |
+ # code. In the latter case, it defines _LP64 and __LP64__. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#ifdef __LP64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=hppa64], | |
+ [gl_cv_host_cpu_c_abi=hppa]) | |
+ ;; | |
+ | |
+ ia64* ) | |
+ # On ia64 on HP-UX, the C compiler may be generating 64-bit code or | |
+ # 32-bit code. In the latter case, it defines _ILP32. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#ifdef _ILP32 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=ia64-ilp32], | |
+ [gl_cv_host_cpu_c_abi=ia64]) | |
+ ;; | |
+ | |
+ mips* ) | |
+ # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this | |
+ # at 32. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64) | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=mips64], | |
+ [# In the n32 ABI, _ABIN32 is defined, _ABIO32 is not defined (but | |
+ # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIN32. | |
+ # In the 32 ABI, _ABIO32 is defined, _ABIN32 is not defined (but | |
+ # may later get defined by <sgidefs.h>), and _MIPS_SIM == _ABIO32. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if (_MIPS_SIM == _ABIN32) | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=mipsn32], | |
+ [gl_cv_host_cpu_c_abi=mips])]) | |
+ ;; | |
+ | |
+ powerpc* ) | |
+ # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD. | |
+ # No need to distinguish them here; the caller may distinguish | |
+ # them based on the OS. | |
+ # On powerpc64 systems, the C compiler may still be generating | |
+ # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may | |
+ # be generating 64-bit code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [# On powerpc64, there are two ABIs on Linux: The AIX compatible | |
+ # one and the ELFv2 one. The latter defines _CALL_ELF=2. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined _CALL_ELF && _CALL_ELF == 2 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=powerpc64-elfv2], | |
+ [gl_cv_host_cpu_c_abi=powerpc64]) | |
+ ], | |
+ [gl_cv_host_cpu_c_abi=powerpc]) | |
+ ;; | |
+ | |
+ rs6000 ) | |
+ gl_cv_host_cpu_c_abi=powerpc | |
+ ;; | |
+ | |
+ riscv32 | riscv64 ) | |
+ # There are 2 architectures (with variants): rv32* and rv64*. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if __riscv_xlen == 64 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [cpu=riscv64], | |
+ [cpu=riscv32]) | |
+ # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. | |
+ # Size of 'long' and 'void *': | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __LP64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [main_abi=lp64], | |
+ [main_abi=ilp32]) | |
+ # Float ABIs: | |
+ # __riscv_float_abi_double: | |
+ # 'float' and 'double' are passed in floating-point registers. | |
+ # __riscv_float_abi_single: | |
+ # 'float' are passed in floating-point registers. | |
+ # __riscv_float_abi_soft: | |
+ # No values are passed in floating-point registers. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __riscv_float_abi_double | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [float_abi=d], | |
+ [AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __riscv_float_abi_single | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [float_abi=f], | |
+ [float_abi='']) | |
+ ]) | |
+ gl_cv_host_cpu_c_abi="${cpu}-${main_abi}${float_abi}" | |
+ ;; | |
+ | |
+ s390* ) | |
+ # On s390x, the C compiler may be generating 64-bit (= s390x) code | |
+ # or 31-bit (= s390) code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __LP64__ || defined __s390x__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=s390x], | |
+ [gl_cv_host_cpu_c_abi=s390]) | |
+ ;; | |
+ | |
+ sparc | sparc64 ) | |
+ # UltraSPARCs running Linux have `uname -m` = "sparc64", but the | |
+ # C compiler still generates 32-bit code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __sparcv9 || defined __arch64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi=sparc64], | |
+ [gl_cv_host_cpu_c_abi=sparc]) | |
+ ;; | |
+ | |
+ *) | |
+ gl_cv_host_cpu_c_abi="$host_cpu" | |
+ ;; | |
+ esac | |
+ ]) | |
+ | |
+ dnl In most cases, $HOST_CPU and $HOST_CPU_C_ABI are the same. | |
+ HOST_CPU=`echo "$gl_cv_host_cpu_c_abi" | sed -e 's/-.*//'` | |
+ HOST_CPU_C_ABI="$gl_cv_host_cpu_c_abi" | |
+ AC_SUBST([HOST_CPU]) | |
+ AC_SUBST([HOST_CPU_C_ABI]) | |
+ | |
+ # This was | |
+ # AC_DEFINE_UNQUOTED([__${HOST_CPU}__]) | |
+ # AC_DEFINE_UNQUOTED([__${HOST_CPU_C_ABI}__]) | |
+ # earlier, but KAI C++ 3.2d doesn't like this. | |
+ sed -e 's/-/_/g' >> confdefs.h <<EOF | |
+#ifndef __${HOST_CPU}__ | |
+#define __${HOST_CPU}__ 1 | |
+#endif | |
+#ifndef __${HOST_CPU_C_ABI}__ | |
+#define __${HOST_CPU_C_ABI}__ 1 | |
+#endif | |
+EOF | |
+ AH_TOP([/* CPU and C ABI indicator */ | |
+#ifndef __i386__ | |
+#undef __i386__ | |
+#endif | |
+#ifndef __x86_64_x32__ | |
+#undef __x86_64_x32__ | |
+#endif | |
+#ifndef __x86_64__ | |
+#undef __x86_64__ | |
+#endif | |
+#ifndef __alpha__ | |
+#undef __alpha__ | |
+#endif | |
+#ifndef __arm__ | |
+#undef __arm__ | |
+#endif | |
+#ifndef __armhf__ | |
+#undef __armhf__ | |
+#endif | |
+#ifndef __arm64_ilp32__ | |
+#undef __arm64_ilp32__ | |
+#endif | |
+#ifndef __arm64__ | |
+#undef __arm64__ | |
+#endif | |
+#ifndef __hppa__ | |
+#undef __hppa__ | |
+#endif | |
+#ifndef __hppa64__ | |
+#undef __hppa64__ | |
+#endif | |
+#ifndef __ia64_ilp32__ | |
+#undef __ia64_ilp32__ | |
+#endif | |
+#ifndef __ia64__ | |
+#undef __ia64__ | |
+#endif | |
+#ifndef __m68k__ | |
+#undef __m68k__ | |
+#endif | |
+#ifndef __mips__ | |
+#undef __mips__ | |
+#endif | |
+#ifndef __mipsn32__ | |
+#undef __mipsn32__ | |
+#endif | |
+#ifndef __mips64__ | |
+#undef __mips64__ | |
+#endif | |
+#ifndef __powerpc__ | |
+#undef __powerpc__ | |
+#endif | |
+#ifndef __powerpc64__ | |
+#undef __powerpc64__ | |
+#endif | |
+#ifndef __powerpc64_elfv2__ | |
+#undef __powerpc64_elfv2__ | |
+#endif | |
+#ifndef __riscv32__ | |
+#undef __riscv32__ | |
+#endif | |
+#ifndef __riscv64__ | |
+#undef __riscv64__ | |
+#endif | |
+#ifndef __riscv32_ilp32__ | |
+#undef __riscv32_ilp32__ | |
+#endif | |
+#ifndef __riscv32_ilp32f__ | |
+#undef __riscv32_ilp32f__ | |
+#endif | |
+#ifndef __riscv32_ilp32d__ | |
+#undef __riscv32_ilp32d__ | |
+#endif | |
+#ifndef __riscv64_ilp32__ | |
+#undef __riscv64_ilp32__ | |
+#endif | |
+#ifndef __riscv64_ilp32f__ | |
+#undef __riscv64_ilp32f__ | |
+#endif | |
+#ifndef __riscv64_ilp32d__ | |
+#undef __riscv64_ilp32d__ | |
+#endif | |
+#ifndef __riscv64_lp64__ | |
+#undef __riscv64_lp64__ | |
+#endif | |
+#ifndef __riscv64_lp64f__ | |
+#undef __riscv64_lp64f__ | |
+#endif | |
+#ifndef __riscv64_lp64d__ | |
+#undef __riscv64_lp64d__ | |
+#endif | |
+#ifndef __s390__ | |
+#undef __s390__ | |
+#endif | |
+#ifndef __s390x__ | |
+#undef __s390x__ | |
+#endif | |
+#ifndef __sh__ | |
+#undef __sh__ | |
+#endif | |
+#ifndef __sparc__ | |
+#undef __sparc__ | |
+#endif | |
+#ifndef __sparc64__ | |
+#undef __sparc64__ | |
+#endif | |
+]) | |
+ | |
+]) | |
+ | |
+ | |
+dnl Sets the HOST_CPU_C_ABI_32BIT variable to 'yes' if the C language ABI | |
+dnl (application binary interface) is a 32-bit one, to 'no' if it is a 64-bit | |
+dnl one, or to 'unknown' if unknown. | |
+dnl This is a simplified variant of gl_HOST_CPU_C_ABI. | |
+AC_DEFUN([gl_HOST_CPU_C_ABI_32BIT], | |
+[ | |
+ AC_REQUIRE([AC_CANONICAL_HOST]) | |
+ AC_CACHE_CHECK([32-bit host C ABI], [gl_cv_host_cpu_c_abi_32bit], | |
+ [if test -n "$gl_cv_host_cpu_c_abi"; then | |
+ case "$gl_cv_host_cpu_c_abi" in | |
+ i386 | x86_64-x32 | arm | armhf | arm64-ilp32 | hppa | ia64-ilp32 | m… | |
+ gl_cv_host_cpu_c_abi_32bit=yes ;; | |
+ x86_64 | alpha | arm64 | hppa64 | ia64 | mips64 | powerpc64 | powerpc… | |
+ gl_cv_host_cpu_c_abi_32bit=no ;; | |
+ *) | |
+ gl_cv_host_cpu_c_abi_32bit=unknown ;; | |
+ esac | |
+ else | |
+ case "$host_cpu" in | |
+ | |
+ # CPUs that only support a 32-bit ABI. | |
+ arc \ | |
+ | bfin \ | |
+ | cris* \ | |
+ | csky \ | |
+ | epiphany \ | |
+ | ft32 \ | |
+ | h8300 \ | |
+ | m68k \ | |
+ | microblaze | microblazeel \ | |
+ | nds32 | nds32le | nds32be \ | |
+ | nios2 | nios2eb | nios2el \ | |
+ | or1k* \ | |
+ | or32 \ | |
+ | sh | sh[1234] | sh[1234]e[lb] \ | |
+ | tic6x \ | |
+ | xtensa* ) | |
+ gl_cv_host_cpu_c_abi_32bit=yes | |
+ ;; | |
+ | |
+ # CPUs that only support a 64-bit ABI. | |
+changequote(,)dnl | |
+ alpha | alphaev[4-8] | alphaev56 | alphapca5[67] | alphaev6[78] \ | |
+ | mmix ) | |
+changequote([,])dnl | |
+ gl_cv_host_cpu_c_abi_32bit=no | |
+ ;; | |
+ | |
+changequote(,)dnl | |
+ i[34567]86 ) | |
+changequote([,])dnl | |
+ gl_cv_host_cpu_c_abi_32bit=yes | |
+ ;; | |
+ | |
+ x86_64 ) | |
+ # On x86_64 systems, the C compiler may be generating code in one of | |
+ # these ABIs: | |
+ # - 64-bit instruction set, 64-bit pointers, 64-bit 'long': x86_64. | |
+ # - 64-bit instruction set, 64-bit pointers, 32-bit 'long': x86_64 | |
+ # with native Windows (mingw, MSVC). | |
+ # - 64-bit instruction set, 32-bit pointers, 32-bit 'long': x86_64-… | |
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': i386. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if (defined __x86_64__ || defined __amd64__ \ | |
+ || defined _M_X64 || defined _M_AMD64) \ | |
+ && !(defined __ILP32__ || defined _ILP32) | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ arm* | aarch64 ) | |
+ # Assume arm with EABI. | |
+ # On arm64 systems, the C compiler may be generating code in one of | |
+ # these ABIs: | |
+ # - aarch64 instruction set, 64-bit pointers, 64-bit 'long': arm64. | |
+ # - aarch64 instruction set, 32-bit pointers, 32-bit 'long': arm64-… | |
+ # - 32-bit instruction set, 32-bit pointers, 32-bit 'long': arm or … | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __aarch64__ && !(defined __ILP32__ || defined _I… | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ hppa1.0 | hppa1.1 | hppa2.0* | hppa64 ) | |
+ # On hppa, the C compiler may be generating 32-bit code or 64-bit | |
+ # code. In the latter case, it defines _LP64 and __LP64__. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#ifdef __LP64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ ia64* ) | |
+ # On ia64 on HP-UX, the C compiler may be generating 64-bit code or | |
+ # 32-bit code. In the latter case, it defines _ILP32. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#ifdef _ILP32 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes], | |
+ [gl_cv_host_cpu_c_abi_32bit=no]) | |
+ ;; | |
+ | |
+ mips* ) | |
+ # We should also check for (_MIPS_SZPTR == 64), but gcc keeps this | |
+ # at 32. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined _MIPS_SZLONG && (_MIPS_SZLONG == 64) | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ powerpc* ) | |
+ # Different ABIs are in use on AIX vs. Mac OS X vs. Linux,*BSD. | |
+ # No need to distinguish them here; the caller may distinguish | |
+ # them based on the OS. | |
+ # On powerpc64 systems, the C compiler may still be generating | |
+ # 32-bit code. And on powerpc-ibm-aix systems, the C compiler may | |
+ # be generating 64-bit code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ rs6000 ) | |
+ gl_cv_host_cpu_c_abi_32bit=yes | |
+ ;; | |
+ | |
+ riscv32 | riscv64 ) | |
+ # There are 6 ABIs: ilp32, ilp32f, ilp32d, lp64, lp64f, lp64d. | |
+ # Size of 'long' and 'void *': | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __LP64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ s390* ) | |
+ # On s390x, the C compiler may be generating 64-bit (= s390x) code | |
+ # or 31-bit (= s390) code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __LP64__ || defined __s390x__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ sparc | sparc64 ) | |
+ # UltraSPARCs running Linux have `uname -m` = "sparc64", but the | |
+ # C compiler still generates 32-bit code. | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __sparcv9 || defined __arch64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [gl_cv_host_cpu_c_abi_32bit=no], | |
+ [gl_cv_host_cpu_c_abi_32bit=yes]) | |
+ ;; | |
+ | |
+ *) | |
+ gl_cv_host_cpu_c_abi_32bit=unknown | |
+ ;; | |
+ esac | |
+ fi | |
+ ]) | |
+ | |
+ HOST_CPU_C_ABI_32BIT="$gl_cv_host_cpu_c_abi_32bit" | |
+]) | |
diff --git a/m4/iconv.m4 b/m4/iconv.m4 | |
t@@ -1,5 +1,6 @@ | |
-# iconv.m4 serial 18 (gettext-0.18.2) | |
-dnl Copyright (C) 2000-2002, 2007-2013 Free Software Foundation, Inc. | |
+# iconv.m4 serial 21 | |
+dnl Copyright (C) 2000-2002, 2007-2014, 2016-2020 Free Software Foundation, | |
+dnl 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. | |
t@@ -72,27 +73,33 @@ AC_DEFUN([AM_ICONV_LINK], | |
if test $am_cv_lib_iconv = yes; then | |
LIBS="$LIBS $LIBICONV" | |
fi | |
- AC_RUN_IFELSE( | |
- [AC_LANG_SOURCE([[ | |
+ am_cv_func_iconv_works=no | |
+ for ac_iconv_const in '' 'const'; do | |
+ AC_RUN_IFELSE( | |
+ [AC_LANG_PROGRAM( | |
+ [[ | |
#include <iconv.h> | |
#include <string.h> | |
-int main () | |
-{ | |
- int result = 0; | |
+ | |
+#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 const char input[] = "\342\202\254"; /* EURO SIGN */ | |
+ static ICONV_CONST char input[] = "\342\202\254"; /* EURO SIGN */ | |
char buf[10]; | |
- const char *inptr = input; | |
+ 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, | |
- (char **) &inptr, &inbytesleft, | |
+ &inptr, &inbytesleft, | |
&outptr, &outbytesleft); | |
if (res == 0) | |
result |= 1; | |
t@@ -105,14 +112,14 @@ int main () | |
iconv_t cd_ascii_to_88591 = iconv_open ("ISO8859-1", "646"); | |
if (cd_ascii_to_88591 != (iconv_t)(-1)) | |
{ | |
- static const char input[] = "\263"; | |
+ static ICONV_CONST char input[] = "\263"; | |
char buf[10]; | |
- const char *inptr = input; | |
+ 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, | |
- (char **) &inptr, &inbytesleft, | |
+ &inptr, &inbytesleft, | |
&outptr, &outbytesleft); | |
if (res == 0) | |
result |= 2; | |
t@@ -124,14 +131,14 @@ int main () | |
iconv_t cd_88591_to_utf8 = iconv_open ("UTF-8", "ISO-8859-1"); | |
if (cd_88591_to_utf8 != (iconv_t)(-1)) | |
{ | |
- static const char input[] = "\304"; | |
+ static ICONV_CONST char input[] = "\304"; | |
static char buf[2] = { (char)0xDE, (char)0xAD }; | |
- const char *inptr = input; | |
+ ICONV_CONST char *inptr = input; | |
size_t inbytesleft = 1; | |
char *outptr = buf; | |
size_t outbytesleft = 1; | |
size_t res = iconv (cd_88591_to_utf8, | |
- (char **) &inptr, &inbytesleft, | |
+ &inptr, &inbytesleft, | |
&outptr, &outbytesleft); | |
if (res != (size_t)(-1) || outptr - buf > 1 || buf[1] != (char)0xAD) | |
result |= 4; | |
t@@ -144,14 +151,14 @@ int main () | |
iconv_t cd_88591_to_utf8 = iconv_open ("utf8", "iso88591"); | |
if (cd_88591_to_utf8 != (iconv_t)(-1)) | |
{ | |
- static const char input[] = "\304rger mit b\366sen B\374bchen ohne Aug… | |
+ static ICONV_CONST char input[] = "\304rger mit b\366sen B\374bchen oh… | |
char buf[50]; | |
- const char *inptr = input; | |
+ 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, | |
- (char **) &inptr, &inbytesleft, | |
+ &inptr, &inbytesleft, | |
&outptr, &outbytesleft); | |
if ((int)res > 0) | |
result |= 8; | |
t@@ -161,27 +168,36 @@ int main () | |
#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; | |
+ { | |
+ /* Try standardized names. */ | |
+ iconv_t cd1 = iconv_open ("UTF-8", "EUC-JP"); | |
+ /* Try IRIX, OSF/1 names. */ | |
+ iconv_t cd2 = iconv_open ("UTF-8", "eucJP"); | |
+ /* Try AIX names. */ | |
+ iconv_t cd3 = iconv_open ("UTF-8", "IBM-eucJP"); | |
+ /* Try HP-UX names. */ | |
+ iconv_t cd4 = iconv_open ("utf8", "eucJP"); | |
+ if (cd1 == (iconv_t)(-1) && cd2 == (iconv_t)(-1) | |
+ && cd3 == (iconv_t)(-1) && cd4 == (iconv_t)(-1)) | |
+ result |= 16; | |
+ if (cd1 != (iconv_t)(-1)) | |
+ iconv_close (cd1); | |
+ if (cd2 != (iconv_t)(-1)) | |
+ iconv_close (cd2); | |
+ if (cd3 != (iconv_t)(-1)) | |
+ iconv_close (cd3); | |
+ if (cd4 != (iconv_t)(-1)) | |
+ iconv_close (cd4); | |
+ } | |
return result; | |
-}]])], | |
- [am_cv_func_iconv_works=yes], | |
- [am_cv_func_iconv_works=no], | |
- [ | |
-changequote(,)dnl | |
- case "$host_os" in | |
- aix* | hpux*) am_cv_func_iconv_works="guessing no" ;; | |
- *) am_cv_func_iconv_works="guessing yes" ;; | |
- esac | |
-changequote([,])dnl | |
- ]) | |
+]])], | |
+ [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 | |
t@@ -255,14 +271,18 @@ size_t iconv(); | |
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 <iconv.h>. | |
- 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 | |
- ]) | |
+ else | |
+ dnl When compiling GNU libiconv on a system that does not have iconv yet, | |
+ dnl pick the POSIX compliant declaration without 'const'. | |
+ am_cv_proto_iconv_arg1="" | |
fi | |
+ 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 <iconv.h>. | |
+ 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 | |
+ ]) | |
]) | |
diff --git a/m4/intlmacosx.m4 b/m4/intlmacosx.m4 | |
t@@ -0,0 +1,65 @@ | |
+# intlmacosx.m4 serial 8 (gettext-0.20.2) | |
+dnl Copyright (C) 2004-2014, 2016, 2019-2020 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 Lesser 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 Lesser 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.4. | |
+ 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 <CoreFoundation/CFPreferences.h>]], | |
+ [[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… | |
+ fi | |
+ dnl Don't check for the API introduced in Mac OS X 10.5, CFLocaleCopyCurrent, | |
+ dnl because in macOS 10.13.4 it has the following behaviour: | |
+ dnl When two or more languages are specified in the | |
+ dnl "System Preferences > Language & Region > Preferred Languages" panel, | |
+ dnl it returns en_CC where CC is the territory (even when English is not amo… | |
+ dnl the preferred languages!). What we want instead is what | |
+ dnl CFLocaleCopyCurrent returned in earlier macOS releases and what | |
+ dnl CFPreferencesCopyAppValue still returns, namely ll_CC where ll is the | |
+ dnl first among the preferred languages and CC is the territory. | |
+ AC_CACHE_CHECK([for CFLocaleCopyPreferredLanguages], [gt_cv_func_CFLocaleCop… | |
+ [gt_save_LIBS="$LIBS" | |
+ LIBS="$LIBS -Wl,-framework -Wl,CoreFoundation" | |
+ AC_LINK_IFELSE( | |
+ [AC_LANG_PROGRAM( | |
+ [[#include <CoreFoundation/CFLocale.h>]], | |
+ [[CFLocaleCopyPreferredLanguages();]])], | |
+ [gt_cv_func_CFLocaleCopyPreferredLanguages=yes], | |
+ [gt_cv_func_CFLocaleCopyPreferredLanguages=no]) | |
+ LIBS="$gt_save_LIBS"]) | |
+ if test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then | |
+ AC_DEFINE([HAVE_CFLOCALECOPYPREFERREDLANGUAGES], [1], | |
+ [Define to 1 if you have the Mac OS X function CFLocaleCopyPreferredLang… | |
+ fi | |
+ INTL_MACOSX_LIBS= | |
+ if test $gt_cv_func_CFPreferencesCopyAppValue = yes \ | |
+ || test $gt_cv_func_CFLocaleCopyPreferredLanguages = yes; then | |
+ INTL_MACOSX_LIBS="-Wl,-framework -Wl,CoreFoundation" | |
+ fi | |
+ AC_SUBST([INTL_MACOSX_LIBS]) | |
+]) | |
diff --git a/m4/lib-ld.m4 b/m4/lib-ld.m4 | |
t@@ -1,5 +1,5 @@ | |
-# lib-ld.m4 serial 6 | |
-dnl Copyright (C) 1996-2003, 2009-2013 Free Software Foundation, Inc. | |
+# lib-ld.m4 serial 9 | |
+dnl Copyright (C) 1996-2003, 2009-2020 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. | |
t@@ -47,73 +47,122 @@ if test "${PATH_SEPARATOR+set}" != set; then | |
} | |
fi | |
-ac_prog=ld | |
-if test "$GCC" = yes; then | |
- # Check if gcc -print-prog-name=ld gives a path. | |
+if test -n "$LD"; then | |
+ AC_MSG_CHECKING([for ld]) | |
+elif test "$GCC" = yes; then | |
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 </dev/null` in | |
- *GNU* | *'with BFD'*) | |
- test "$with_gnu_ld" != no && break | |
- ;; | |
- *) | |
- test "$with_gnu_ld" != yes && break | |
- ;; | |
+if test -n "$LD"; then | |
+ # Let the user override the test with a path. | |
+ : | |
+else | |
+ AC_CACHE_VAL([acl_cv_path_LD], | |
+ [ | |
+ acl_cv_path_LD= # Final result of this test | |
+ ac_prog=ld # Program to search in $PATH | |
+ if test "$GCC" = yes; then | |
+ # Check if gcc -print-prog-name=ld gives a path. | |
+ case $host in | |
+ *-*-mingw*) | |
+ # gcc leaves a trailing carriage return which upsets mingw | |
+ acl_output=`($CC -print-prog-name=ld) 2>&5 | tr -d '\015'` ;; | |
+ *) | |
+ acl_output=`($CC -print-prog-name=ld) 2>&5` ;; | |
+ esac | |
+ case $acl_output in | |
+ # Accept absolute paths. | |
+ [[\\/]]* | ?:[[\\/]]*) | |
+ re_direlt='/[[^/]][[^/]]*/\.\./' | |
+ # Canonicalize the pathname of ld | |
+ acl_output=`echo "$acl_output" | sed 's%\\\\%/%g'` | |
+ while echo "$acl_output" | grep "$re_direlt" > /dev/null 2>&1; do | |
+ acl_output=`echo $acl_output | sed "s%$re_direlt%/%"` | |
+ done | |
+ # Got the pathname. No search in PATH is needed. | |
+ acl_cv_path_LD="$acl_output" | |
+ ac_prog= | |
+ ;; | |
+ "") | |
+ # If it fails, then pretend we aren't using GCC. | |
+ ;; | |
+ *) | |
+ # If it is relative, then search for the first ld in PATH. | |
+ with_gnu_ld=unknown | |
+ ;; | |
esac | |
fi | |
- done | |
- IFS="$acl_save_ifs" | |
-else | |
- acl_cv_path_LD="$LD" # Let the user override the test with a path. | |
-fi]) | |
-LD="$acl_cv_path_LD" | |
+ if test -n "$ac_prog"; then | |
+ # Search for $ac_prog in $PATH. | |
+ 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";… | |
+ 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 </dev/null` in | |
+ *GNU* | *'with BFD'*) | |
+ test "$with_gnu_ld" != no && break | |
+ ;; | |
+ *) | |
+ test "$with_gnu_ld" != yes && break | |
+ ;; | |
+ esac | |
+ fi | |
+ done | |
+ IFS="$acl_save_ifs" | |
+ fi | |
+ case $host in | |
+ *-*-aix*) | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __powerpc64__ || defined _ARCH_PPC64 | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [# The compiler produces 64-bit code. Add option '-b64' so that the | |
+ # linker groks 64-bit object files. | |
+ case "$acl_cv_path_LD " in | |
+ *" -b64 "*) ;; | |
+ *) acl_cv_path_LD="$acl_cv_path_LD -b64" ;; | |
+ esac | |
+ ], []) | |
+ ;; | |
+ sparc64-*-netbsd*) | |
+ AC_COMPILE_IFELSE( | |
+ [AC_LANG_SOURCE( | |
+ [[#if defined __sparcv9 || defined __arch64__ | |
+ int ok; | |
+ #else | |
+ error fail | |
+ #endif | |
+ ]])], | |
+ [], | |
+ [# The compiler produces 32-bit code. Add option '-m elf32_sparc' | |
+ # so that the linker groks 32-bit object files. | |
+ case "$acl_cv_path_LD " in | |
+ *" -m elf32_sparc "*) ;; | |
+ *) acl_cv_path_LD="$acl_cv_path_LD -m elf32_sparc" ;; | |
+ esac | |
+ ]) | |
+ ;; | |
+ esac | |
+ ]) | |
+ LD="$acl_cv_path_LD" | |
+fi | |
if test -n "$LD"; then | |
AC_MSG_RESULT([$LD]) | |
else | |
AC_MSG_RESULT([no]) | |
+ AC_MSG_ERROR([no acceptable ld found in \$PATH]) | |
fi | |
-test -z "$LD" && AC_MSG_ERROR([no acceptable ld found in \$PATH]) | |
AC_LIB_PROG_LD_GNU | |
]) | |
diff --git a/m4/lib-link.m4 b/m4/lib-link.m4 | |
t@@ -1,12 +1,12 @@ | |
-# lib-link.m4 serial 26 (gettext-0.18.2) | |
-dnl Copyright (C) 2001-2013 Free Software Foundation, Inc. | |
+# lib-link.m4 serial 31 | |
+dnl Copyright (C) 2001-2020 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_PREREQ([2.54]) | |
+AC_PREREQ([2.61]) | |
dnl AC_LIB_LINKFLAGS(name [, dependencies]) searches for libname and | |
dnl the libraries corresponding to explicit and implicit dependencies. | |
t@@ -124,8 +124,8 @@ dnl acl_hardcode_direct, | |
dnl acl_hardcode_minus_L. | |
AC_DEFUN([AC_LIB_RPATH], | |
[ | |
- dnl Tell automake >= 1.10 to complain if config.rpath is missing. | |
- m4_ifdef([AC_REQUIRE_AUX_FILE], [AC_REQUIRE_AUX_FILE([config.rpath])]) | |
+ dnl Complain if config.rpath is missing. | |
+ 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 | |
t@@ -187,17 +187,17 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
pushdef([PACKUP],[m4_translit(PACK,[abcdefghijklmnopqrstuvwxyz./+-], | |
[ABCDEFGHIJKLMNOPQRSTUVWXYZ____])]) | |
pushdef([PACKLIBS],[m4_ifdef([acl_frompackage_]NAME, [acl_libsinpackage_]PAC… | |
- 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… | |
dnl By default, look in $includedir and $libdir. | |
use_additional=yes | |
AC_LIB_WITH_FINAL_PREFIX([ | |
eval additional_includedir=\"$includedir\" | |
eval additional_libdir=\"$libdir\" | |
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" | |
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" | |
]) | |
- AC_ARG_WITH(P_A_C_K[-prefix], | |
-[[ --with-]]P_A_C_K[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and … | |
- --without-]]P_A_C_K[[-prefix don't search for ]PACKLIBS[ in includedir a… | |
+ AC_ARG_WITH(PACK[-prefix], | |
+[[ --with-]]PACK[[-prefix[=DIR] search for ]PACKLIBS[ in DIR/include and DIR… | |
+ --without-]]PACK[[-prefix don't search for ]PACKLIBS[ in includedir and … | |
[ | |
if test "X$withval" = "Xno"; then | |
use_additional=no | |
t@@ -206,17 +206,23 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
AC_LIB_WITH_FINAL_PREFIX([ | |
eval additional_includedir=\"$includedir\" | |
eval additional_libdir=\"$libdir\" | |
+ eval additional_libdir2=\"$exec_prefix/$acl_libdirstem2\" | |
+ eval additional_libdir3=\"$exec_prefix/$acl_libdirstem3\" | |
]) | |
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 | |
+ additional_libdir2="$withval/$acl_libdirstem2" | |
+ additional_libdir3="$withval/$acl_libdirstem3" | |
fi | |
fi | |
]) | |
+ if test "X$additional_libdir2" = "X$additional_libdir"; then | |
+ additional_libdir2= | |
+ fi | |
+ if test "X$additional_libdir3" = "X$additional_libdir"; then | |
+ additional_libdir3= | |
+ fi | |
dnl Search the library and its dependencies in $additional_libdir and | |
dnl $LDFLAGS. Using breadth-first-seach. | |
LIB[]NAME= | |
t@@ -272,48 +278,54 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
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… | |
- 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"; th… | |
- found_dir="$dir" | |
- found_so="$dir/$libname$shrext.$ver" | |
+ for additional_libdir_variable in additional_libdir additional_lib… | |
+ if test "X$found_dir" = "X"; then | |
+ eval dir=\$$additional_libdir_variable | |
+ if test -n "$dir"; then | |
+ 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" && acl_is_expected_elfcl… | |
+ found_dir="$dir" | |
+ found_so="$dir/$libname$shrext" | |
+ else | |
+ if test "$acl_library_names_spec" = '$libname$shrext$ver… | |
+ 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,… | |
+ | sed 1q ) 2>/dev/null` | |
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ve… | |
+ 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" && acl_is_expected_elfclass < "… | |
+ found_dir="$dir" | |
+ found_so="$dir/$f" | |
+ break | |
+ fi | |
+ done | |
+ fi | |
+ fi | |
fi | |
- else | |
- eval library_names=\"$acl_library_names_spec\" | |
- for f in $library_names; do | |
- if test -f "$dir/$f"; then | |
+ dnl Then look for a static library. | |
+ if test "X$found_dir" = "X"; then | |
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$di… | |
found_dir="$dir" | |
- found_so="$dir/$f" | |
- break | |
+ found_a="$dir/$libname.$acl_libext" | |
fi | |
- done | |
+ fi | |
+ if test "X$found_dir" != "X"; then | |
+ if test -f "$dir/$libname.la"; then | |
+ found_la="$dir/$libname.la" | |
+ fi | |
+ fi | |
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 | |
+ done | |
fi | |
if test "X$found_dir" = "X"; then | |
for x in $LDFLAGS $LTLIB[]NAME; do | |
t@@ -323,7 +335,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
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 | |
+ if test -f "$dir/$libname$shrext" && acl_is_expected_elfcl… | |
found_dir="$dir" | |
found_so="$dir/$libname$shrext" | |
else | |
t@@ -333,14 +345,14 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
| sed -e "s,^$libname$shrext\\\\.,," \ | |
| sort -t '.' -n -r -k1,1 -k2,2 -k3,3 -k4,4 -k5,… | |
| sed 1q ) 2>/dev/null` | |
- if test -n "$ver" && test -f "$dir/$libname$shrext.$ve… | |
+ if test -n "$ver" && test -f "$dir/$libname$shrext.$ve… | |
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 | |
+ if test -f "$dir/$f" && acl_is_expected_elfclass < "… | |
found_dir="$dir" | |
found_so="$dir/$f" | |
break | |
t@@ -351,7 +363,7 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
fi | |
dnl Then look for a static library. | |
if test "X$found_dir" = "X"; then | |
- if test -f "$dir/$libname.$acl_libext"; then | |
+ if test -f "$dir/$libname.$acl_libext" && ${AR-ar} -p "$di… | |
found_dir="$dir" | |
found_a="$dir/$libname.$acl_libext" | |
fi | |
t@@ -377,7 +389,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
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 | |
+ || test "X$found_dir" = "X/usr/$acl_libdirstem2" \ | |
+ || test "X$found_dir" = "X/usr/$acl_libdirstem3"; then | |
dnl No hardcoding is needed. | |
LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }$found_so" | |
else | |
t@@ -477,6 +490,13 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
fi | |
additional_includedir="$basedir/include" | |
;; | |
+ */$acl_libdirstem3 | */$acl_libdirstem3/) | |
+ basedir=`echo "X$found_dir" | sed -e 's,^X,,' -e "s,/$acl_libd… | |
+ 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. | |
t@@ -527,19 +547,21 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
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 $LT… | |
+ dependency_libdir=`echo "X$dep" | sed -e 's/^X-L//'` | |
+ dnl Potentially add $dependency_libdir to $LIBNAME and $LT… | |
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 Li… | |
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_libdirstem… | |
+ if test "X$dependency_libdir" != "X/usr/$acl_libdirstem" \ | |
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem… | |
+ && test "X$dependency_libdir" != "X/usr/$acl_libdirstem… | |
haveit= | |
- if test "X$additional_libdir" = "X/usr/local/$acl_libdir… | |
- || test "X$additional_libdir" = "X/usr/local/$acl_lib… | |
+ if test "X$dependency_libdir" = "X/usr/local/$acl_libdir… | |
+ || test "X$dependency_libdir" = "X/usr/local/$acl_lib… | |
+ || test "X$dependency_libdir" = "X/usr/local/$acl_lib… | |
if test -n "$GCC"; then | |
case $host_os in | |
linux* | gnu* | k*bsd*-gnu) haveit=yes;; | |
t@@ -550,29 +572,29 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
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 | |
+ if test "X$x" = "X-L$dependency_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$additiona… | |
+ if test -d "$dependency_libdir"; then | |
+ dnl Really add $dependency_libdir to $LIBNAME. | |
+ LIB[]NAME="${LIB[]NAME}${LIB[]NAME:+ }-L$dependenc… | |
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 | |
+ if test "X$x" = "X-L$dependency_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$add… | |
+ if test -d "$dependency_libdir"; then | |
+ dnl Really add $dependency_libdir to $LTLIBNAME. | |
+ LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-L$dep… | |
fi | |
fi | |
fi | |
t@@ -670,7 +692,6 @@ AC_DEFUN([AC_LIB_LINKFLAGS_BODY], | |
LTLIB[]NAME="${LTLIB[]NAME}${LTLIB[]NAME:+ }-R$found_dir" | |
done | |
fi | |
- popdef([P_A_C_K]) | |
popdef([PACKLIBS]) | |
popdef([PACKUP]) | |
popdef([PACK]) | |
t@@ -721,7 +742,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], | |
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 | |
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \ | |
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then | |
rpathdirs="$rpathdirs $dir" | |
fi | |
next= | |
t@@ -731,7 +753,8 @@ AC_DEFUN([AC_LIB_LINKFLAGS_FROM_LIBS], | |
-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 | |
+ && test "X$dir" != "X/usr/$acl_libdirstem2" \ | |
+ && test "X$dir" != "X/usr/$acl_libdirstem3"; then | |
rpathdirs="$rpathdirs $dir" | |
fi | |
next= ;; | |
diff --git a/m4/lib-prefix.m4 b/m4/lib-prefix.m4 | |
t@@ -1,18 +1,11 @@ | |
-# lib-prefix.m4 serial 7 (gettext-0.18) | |
-dnl Copyright (C) 2001-2005, 2008-2013 Free Software Foundation, Inc. | |
+# lib-prefix.m4 serial 17 | |
+dnl Copyright (C) 2001-2005, 2008-2020 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 | |
t@@ -32,9 +25,9 @@ AC_DEFUN([AC_LIB_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], | |
+ AC_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 | |
t@@ -154,71 +147,174 @@ AC_DEFUN([AC_LIB_WITH_FINAL_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". | |
+dnl - a function acl_is_expected_elfclass, that tests whether standard input | |
+dn; has a 32-bit or 64-bit ELF header, depending on the host CPU ABI, | |
+dnl - 3 variables acl_libdirstem, acl_libdirstem2, acl_libdirstem3, containing | |
+dnl the basename of the libdir to try in turn, either "lib" or "lib64" or | |
+dnl "lib/64" or "lib32" or "lib/sparcv9" or "lib/amd64" or similar. | |
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 There is no formal standard regarding lib, lib32, and lib64. | |
+ dnl On most glibc systems, the current practice is that on a system supporti… | |
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 $prefix/lib64 and 32-bit libraries go under $prefix/lib. However, on | |
+ dnl Arch Linux based distributions, it's the opposite: 32-bit libraries go | |
+ dnl under $prefix/lib32 and 64-bit libraries go under $prefix/lib. | |
+ dnl We determine the compiler's default mode by looking at the compiler's | |
+ dnl library search path. If at least one of its elements ends in /lib64 or | |
+ dnl points to a directory whose absolute pathname ends in /lib64, we use that | |
+ dnl for 64-bit ABIs. Similarly for 32-bit ABIs. Otherwise we use the default, | |
+ dnl 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 Develo… | |
- dnl <http://docs.sun.com/app/docs/doc/816-5138/dev-env?l=en&a=view>. | |
- dnl "Portable Makefiles should refer to any library directories using th… | |
- dnl But we want to recognize the sparcv9 or amd64 subdirectory also if t… | |
- 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… | |
- 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" | |
+ AC_REQUIRE([gl_HOST_CPU_C_ABI_32BIT]) | |
+ | |
+ AC_CACHE_CHECK([for ELF binary format], [gl_cv_elf], | |
+ [AC_EGREP_CPP([Extensible Linking Format], | |
+ [#ifdef __ELF__ | |
+ Extensible Linking Format | |
+ #endif | |
+ ], | |
+ [gl_cv_elf=yes], | |
+ [gl_cv_elf=no]) | |
+ ]) | |
+ if test $gl_cv_elf; then | |
+ # Extract the ELF class of a file (5th byte) in decimal. | |
+ # Cf. https://en.wikipedia.org/wiki/Executable_and_Linkable_Format#File_he… | |
+ if od -A x < /dev/null >/dev/null 2>/dev/null; then | |
+ # Use POSIX od. | |
+ func_elfclass () | |
+ { | |
+ od -A n -t d1 -j 4 -N 1 | |
+ } | |
+ else | |
+ # Use BSD hexdump. | |
+ func_elfclass () | |
+ { | |
+ dd bs=1 count=1 skip=4 2>/dev/null | hexdump -e '1/1 "%3d "' | |
+ echo | |
+ } | |
+ fi | |
+changequote(,)dnl | |
+ case $HOST_CPU_C_ABI_32BIT in | |
+ yes) | |
+ # 32-bit ABI. | |
+ acl_is_expected_elfclass () | |
+ { | |
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 1 | |
+ } | |
+ ;; | |
+ no) | |
+ # 64-bit ABI. | |
+ acl_is_expected_elfclass () | |
+ { | |
+ test "`func_elfclass | sed -e 's/[ ]//g'`" = 2 | |
+ } | |
+ ;; | |
+ *) | |
+ # Unknown. | |
+ acl_is_expected_elfclass () | |
+ { | |
+ : | |
+ } | |
+ ;; | |
+ esac | |
+changequote([,])dnl | |
+ else | |
+ acl_is_expected_elfclass () | |
+ { | |
+ : | |
+ } | |
+ fi | |
+ | |
+ dnl Allow the user to override the result by setting acl_cv_libdirstems. | |
+ AC_CACHE_CHECK([for the common suffixes of directories in the library search… | |
+ [acl_cv_libdirstems], | |
+ [dnl Try 'lib' first, because that's the default for libdir in GNU, see | |
+ dnl <https://www.gnu.org/prep/standards/html_node/Directory-Variables.htm… | |
+ acl_libdirstem=lib | |
+ acl_libdirstem2= | |
+ acl_libdirstem3= | |
+ case "$host_os" in | |
+ solaris*) | |
+ dnl See Solaris 10 Software Developer Collection > Solaris 64-bit Dev… | |
+ dnl <https://docs.oracle.com/cd/E19253-01/816-5138/dev-env/index.html… | |
+ dnl "Portable Makefiles should refer to any library directories using… | |
+ dnl But we want to recognize the sparcv9 or amd64 subdirectory also i… | |
+ dnl symlink is missing, so we set acl_libdirstem2 too. | |
+ if test $HOST_CPU_C_ABI_32BIT = no; then | |
+ acl_libdirstem2=lib/64 | |
+ case "$host_cpu" in | |
+ sparc*) acl_libdirstem3=lib/sparcv9 ;; | |
+ i*86 | x86_64) acl_libdirstem3=lib/amd64 ;; | |
+ esac | |
+ fi | |
+ ;; | |
+ *) | |
+ dnl If $CC generates code for a 32-bit ABI, the libraries are | |
+ dnl surely under $prefix/lib or $prefix/lib32, not $prefix/lib64. | |
+ dnl Similarly, if $CC generates code for a 64-bit ABI, the libraries | |
+ dnl are surely under $prefix/lib or $prefix/lib64, not $prefix/lib32. | |
+ dnl Find the compiler's search path. However, non-system compilers | |
+ dnl sometimes have odd library search paths. But we can't simply invo… | |
+ dnl '/usr/bin/gcc -print-search-dirs' because that would not take into | |
+ dnl account the -m32/-m31 or -m64 options from the $CC or $CFLAGS. | |
+ searchpath=`(LC_ALL=C $CC $CPPFLAGS $CFLAGS -print-search-dirs) 2>/de… | |
+ | sed -n -e 's,^libraries: ,,p' | sed -e 's,^=,,'` | |
+ if test $HOST_CPU_C_ABI_32BIT != no; then | |
+ # 32-bit or unknown ABI. | |
+ if test -d /usr/lib32; then | |
+ acl_libdirstem2=lib32 | |
+ fi | |
+ fi | |
+ if test $HOST_CPU_C_ABI_32BIT != yes; then | |
+ # 64-bit or unknown ABI. | |
+ if test -d /usr/lib64; then | |
+ acl_libdirstem3=lib64 | |
+ fi | |
+ fi | |
+ if test -n "$searchpath"; then | |
+ acl_save_IFS="${IFS= }"; IFS=":" | |
+ for searchdir in $searchpath; do | |
+ if test -d "$searchdir"; then | |
+ case "$searchdir" in | |
+ */lib32/ | */lib32 ) acl_libdirstem2=lib32 ;; | |
+ */lib64/ | */lib64 ) acl_libdirstem3=lib64 ;; | |
+ */../ | */.. ) | |
+ # Better ignore directories of this form. They are misleadi… | |
+ ;; | |
+ *) searchdir=`cd "$searchdir" && pwd` | |
+ case "$searchdir" in | |
+ */lib32 ) acl_libdirstem2=lib32 ;; | |
+ */lib64 ) acl_libdirstem3=lib64 ;; | |
+ esac ;; | |
+ esac | |
+ fi | |
+ done | |
+ IFS="$acl_save_IFS" | |
+ if test $HOST_CPU_C_ABI_32BIT = yes; then | |
+ # 32-bit ABI. | |
+ acl_libdirstem3= | |
+ fi | |
+ if test $HOST_CPU_C_ABI_32BIT = no; then | |
+ # 64-bit ABI. | |
+ acl_libdirstem2= | |
+ fi | |
+ fi | |
+ ;; | |
+ esac | |
+ test -n "$acl_libdirstem2" || acl_libdirstem2="$acl_libdirstem" | |
+ test -n "$acl_libdirstem3" || acl_libdirstem3="$acl_libdirstem" | |
+ acl_cv_libdirstems="$acl_libdirstem,$acl_libdirstem2,$acl_libdirstem3" | |
+ ]) | |
+ dnl Decompose acl_cv_libdirstems into acl_libdirstem, acl_libdirstem2, and | |
+ dnl acl_libdirstem3. | |
+changequote(,)dnl | |
+ acl_libdirstem=`echo "$acl_cv_libdirstems" | sed -e 's/,.*//'` | |
+ acl_libdirstem2=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,//' -e 's/,.*… | |
+ acl_libdirstem3=`echo "$acl_cv_libdirstems" | sed -e 's/^[^,]*,[^,]*,//' -e … | |
+changequote([,])dnl | |
]) | |
diff --git a/m4/nls.m4 b/m4/nls.m4 | |
t@@ -1,17 +1,17 @@ | |
-# nls.m4 serial 5 (gettext-0.18) | |
-dnl Copyright (C) 1995-2003, 2005-2006, 2008-2013 Free Software Foundation, | |
-dnl Inc. | |
+# nls.m4 serial 6 (gettext-0.20.2) | |
+dnl Copyright (C) 1995-2003, 2005-2006, 2008-2014, 2016, 2019-2020 Free | |
+dnl 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 can be used in projects which are not available under | |
-dnl the GNU General Public License or the GNU Library General Public | |
+dnl This file can be used in projects which are not available under | |
+dnl the GNU General Public License or the GNU Lesser General Public | |
dnl License but which still want to provide support for the GNU gettext | |
dnl functionality. | |
dnl Please note that the actual code of the GNU gettext library is covered | |
-dnl by the GNU Library General Public License, and the rest of the GNU | |
-dnl gettext package package is covered by the GNU General Public License. | |
+dnl by the GNU Lesser 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: | |
diff --git a/m4/po.m4 b/m4/po.m4 | |
t@@ -1,16 +1,16 @@ | |
-# po.m4 serial 20 (gettext-0.18.2) | |
-dnl Copyright (C) 1995-2013 Free Software Foundation, Inc. | |
+# po.m4 serial 31 (gettext-0.20.2) | |
+dnl Copyright (C) 1995-2014, 2016, 2018-2020 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 can be used in projects which are not available under | |
-dnl the GNU General Public License or the GNU Library General Public | |
+dnl This file can be used in projects which are not available under | |
+dnl the GNU General Public License or the GNU Lesser General Public | |
dnl License but which still want to provide support for the GNU gettext | |
dnl functionality. | |
dnl Please note that the actual code of the GNU gettext library is covered | |
-dnl by the GNU Library General Public License, and the rest of the GNU | |
-dnl gettext package package is covered by the GNU General Public License. | |
+dnl by the GNU Lesser 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: | |
t@@ -25,11 +25,12 @@ 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.18]) | |
+ AC_SUBST([GETTEXT_MACRO_VERSION], [0.20]) | |
dnl Perform the following tests also if --disable-nls has been given, | |
dnl because they are needed for "make dist" to work. | |
t@@ -45,13 +46,6 @@ AC_DEFUN([AM_PO_SUBDIRS], | |
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 ;; | |
t@@ -82,11 +76,21 @@ changequote([,])dnl | |
AM_PATH_PROG_WITH_TEST(MSGMERGE, msgmerge, | |
[$ac_dir/$ac_word --update -q /dev/null /dev/null >&]AS_MESSAGE_LOG_FD[ 2>… | |
- 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 Test whether it is GNU msgmerge >= 0.20. | |
+ if LC_ALL=C $MSGMERGE --help | grep ' --for-msgfmt ' >/dev/null; then | |
+ MSGMERGE_FOR_MSGFMT_OPTION='--for-msgfmt' | |
+ else | |
+ dnl Test whether it is GNU msgmerge >= 0.12. | |
+ if LC_ALL=C $MSGMERGE --help | grep ' --no-fuzzy-matching ' >/dev/null; th… | |
+ MSGMERGE_FOR_MSGFMT_OPTION='--no-fuzzy-matching --no-location --quiet' | |
+ else | |
+ dnl With these old versions, $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) is | |
+ dnl slow. But this is not a big problem, as such old gettext versions are | |
+ dnl hardly in use any more. | |
+ MSGMERGE_FOR_MSGFMT_OPTION='--no-location --quiet' | |
+ fi | |
+ fi | |
+ AC_SUBST([MSGMERGE_FOR_MSGFMT_OPTION]) | |
dnl Support for AM_XGETTEXT_OPTION. | |
test -n "${XGETTEXT_EXTRA_OPTIONS+set}" || XGETTEXT_EXTRA_OPTIONS= | |
t@@ -129,14 +133,11 @@ changequote([,])dnl | |
if test -n "$OBSOLETE_ALL_LINGUAS"; then | |
test -n "$as_me" && echo "$as_me: setting ALL_LINGUAS in configu… | |
fi | |
- ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_di… | |
- # Hide the ALL_LINGUAS assignment from automake < 1.5. | |
- eval 'ALL_LINGUAS''=$ALL_LINGUAS_' | |
+ ALL_LINGUAS=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir… | |
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' | |
+ ALL_LINGUAS=$OBSOLETE_ALL_LINGUAS | |
fi | |
# Compute POFILES | |
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) | |
t@@ -207,9 +208,8 @@ changequote([,])dnl | |
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"' | |
+ # POFILES, UPDATEPOFILES, DUMMYPOFILES, GMOFILES, CATALOGS. | |
+ OBSOLETE_ALL_LINGUAS="$ALL_LINGUAS" | |
# Capture the value of LINGUAS because we need it to compute CATALOGS. | |
LINGUAS="${LINGUAS-%UNSET%}" | |
]) | |
t@@ -310,15 +310,13 @@ changequote([,])dnl | |
fi | |
if test -f "$ac_given_srcdir/$ac_dir/LINGUAS"; then | |
# The LINGUAS file contains the set of available languages. | |
- ALL_LINGUAS_=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUA… | |
+ ALL_LINGUAS=`sed -e "/^#/d" -e "s/#.*//" "$ac_given_srcdir/$ac_dir/LINGUAS… | |
POMAKEFILEDEPS="$POMAKEFILEDEPS LINGUAS" | |
else | |
# Set ALL_LINGUAS to the value of the Makefile variable LINGUAS. | |
sed_x_LINGUAS=`$gt_echo "$sed_x_variable" | sed -e '/^ *#/d' -e 's/VARIABL… | |
- ALL_LINGUAS_=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"` | |
+ ALL_LINGUAS=`sed -n -e "$sed_x_LINGUAS" < "$ac_file"` | |
fi | |
- # Hide the ALL_LINGUAS assignment from automake < 1.5. | |
- eval 'ALL_LINGUAS''=$ALL_LINGUAS_' | |
# Compute POFILES | |
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).po) | |
# Compute UPDATEPOFILES | |
t@@ -328,9 +326,9 @@ changequote([,])dnl | |
# Compute GMOFILES | |
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).gmo) | |
# Compute PROPERTIESFILES | |
- # as $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).pr… | |
+ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(DOMAIN)_$(lang).proper… | |
# Compute CLASSFILES | |
- # as $(foreach lang, $(ALL_LINGUAS), $(top_srcdir)/$(DOMAIN)_$(lang).cl… | |
+ # as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(DOMAIN)_$(lang).class) | |
# Compute QMFILES | |
# as $(foreach lang, $(ALL_LINGUAS), $(srcdir)/$(lang).qm) | |
# Compute MSGFILES | |
t@@ -355,8 +353,8 @@ changequote([,])dnl | |
UPDATEPOFILES="$UPDATEPOFILES $lang.po-update" | |
DUMMYPOFILES="$DUMMYPOFILES $lang.nop" | |
GMOFILES="$GMOFILES $srcdirpre$lang.gmo" | |
- PROPERTIESFILES="$PROPERTIESFILES \$(top_srcdir)/\$(DOMAIN)_$lang.properti… | |
- CLASSFILES="$CLASSFILES \$(top_srcdir)/\$(DOMAIN)_$lang.class" | |
+ PROPERTIESFILES="$PROPERTIESFILES \$(srcdir)/\$(DOMAIN)_$lang.properties" | |
+ CLASSFILES="$CLASSFILES \$(srcdir)/\$(DOMAIN)_$lang.class" | |
QMFILES="$QMFILES $srcdirpre$lang.qm" | |
frobbedlang=`echo $lang | sed -e 's/\..*$//' -e 'y/ABCDEFGHIJKLMNOPQRSTUVW… | |
MSGFILES="$MSGFILES $srcdirpre$frobbedlang.msg" | |
diff --git a/m4/progtest.m4 b/m4/progtest.m4 | |
t@@ -1,16 +1,16 @@ | |
-# progtest.m4 serial 7 (gettext-0.18.2) | |
-dnl Copyright (C) 1996-2003, 2005, 2008-2013 Free Software Foundation, Inc. | |
+# progtest.m4 serial 8 (gettext-0.20.2) | |
+dnl Copyright (C) 1996-2003, 2005, 2008-2020 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 can be used in projects which are not available under | |
-dnl the GNU General Public License or the GNU Library General Public | |
+dnl This file can be used in projects which are not available under | |
+dnl the GNU General Public License or the GNU Lesser General Public | |
dnl License but which still want to provide support for the GNU gettext | |
dnl functionality. | |
dnl Please note that the actual code of the GNU gettext library is covered | |
-dnl by the GNU Library General Public License, and the rest of the GNU | |
-dnl gettext package package is covered by the GNU General Public License. | |
+dnl by the GNU Lesser 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: | |
diff --git a/po/ChangeLog b/po/ChangeLog | |
t@@ -1,3 +1,12 @@ | |
+2020-11-06 gettextize <[email protected]> | |
+ | |
+ * Makefile.in.in: Upgrade to gettext-0.21. | |
+ * Rules-quot: Upgrade to gettext-0.21. | |
+ * [email protected]: Upgrade to gettext-0.21. | |
+ * [email protected]: Upgrade to gettext-0.21. | |
+ * insert-header.sin: Upgrade to gettext-0.21. | |
+ * remove-potcdate.sin: Upgrade to gettext-0.21. | |
+ | |
2013-07-08 gettextize <[email protected]> | |
* Makefile.in.in: Upgrade to gettext-0.18.2. | |
diff --git a/po/Makefile.in.in b/po/Makefile.in.in | |
t@@ -1,20 +1,20 @@ | |
# Makefile for PO directory in any package using GNU gettext. | |
-# Copyright (C) 1995-1997, 2000-2007, 2009-2010 by Ulrich Drepper <drepper@gnu… | |
+# Copyright (C) 1995-2000 Ulrich Drepper <[email protected]> | |
+# Copyright (C) 2000-2020 Free Software Foundation, Inc. | |
# | |
-# This file can be copied and used freely without restrictions. It can | |
-# be used in projects which are not available under the GNU General Public | |
-# License but which still want to provide support for the GNU gettext | |
-# functionality. | |
-# Please note that the actual code of GNU gettext is covered by the GNU | |
-# General Public License and is *not* in the public domain. | |
+# 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.18.2 | |
-GETTEXT_MACRO_VERSION = 0.18 | |
+# Origin: gettext-0.21 | |
+GETTEXT_MACRO_VERSION = 0.20 | |
PACKAGE = @PACKAGE@ | |
VERSION = @VERSION@ | |
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ | |
+SED = @SED@ | |
SHELL = /bin/sh | |
@SET_MAKE@ | |
t@@ -44,20 +44,22 @@ 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 = @MSGMERGE@ | |
MSGMERGE_UPDATE = @MSGMERGE@ --update | |
+MSGMERGE_FOR_MSGFMT_OPTION = @MSGMERGE_FOR_MSGFMT_OPTION@ | |
MSGINIT = msginit | |
MSGCONV = msgconv | |
MSGFILTER = msgfilter | |
t@@ -76,29 +78,56 @@ 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 | |
+all: all-@USE_NLS@ | |
-.po.mo: | |
- @echo "$(MSGFMT) -c -o $@ $<"; \ | |
- $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ | |
+.SUFFIXES: | |
+.SUFFIXES: .po .gmo .sed .sin .nop .po-create .po-update | |
+ | |
+# The .pot file, stamp-po, .po files, and .gmo files appear in release tarball… | |
+# The GNU Coding Standards say in | |
+# <https://www.gnu.org/prep/standards/html_node/Makefile-Basics.html>: | |
+# "GNU distributions usually contain some files which are not source files | |
+# ... . Since these files normally appear in the source directory, they | |
+# should always appear in the source directory, not in the build directory. | |
+# So Makefile rules to update them should put the updated files in the | |
+# source directory." | |
+# Therefore we put these files in the source directory, not the build director… | |
+ | |
+# During .po -> .gmo conversion, take into account the most recent changes to | |
+# the .pot file. This eliminates the need to update the .po files when the | |
+# .pot file has changed, which would be troublesome if the .po files are put | |
+# under version control. | |
+$(GMOFILES): $(srcdir)/$(DOMAIN).pot | |
.po.gmo: | |
@lang=`echo $* | sed -e 's,.*/,,'`; \ | |
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
- echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) --check-header --check… | |
- cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) --check-header --chec… | |
+ echo "$${cdcmd}rm -f $${lang}.gmo && $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT… | |
+ cd $(srcdir) && \ | |
+ rm -f $${lang}.gmo && \ | |
+ $(MSGMERGE) $(MSGMERGE_FOR_MSGFMT_OPTION) -o $${lang}.1po $${lang}.po … | |
+ $(GMSGFMT) -c --statistics --verbose -o t-$${lang}.gmo $${lang}.1po &&… | |
+ mv t-$${lang}.gmo $${lang}.gmo && \ | |
+ rm -f $${lang}.1po | |
.sin.sed: | |
sed -e '/^#/d' $< > t-$@ | |
mv t-$@ $@ | |
-all: all-@USE_NLS@ | |
- | |
-all-yes: stamp-po | |
+all-yes: $(srcdir)/stamp-po | |
all-no: | |
# Ensure that the gettext macros and this Makefile.in.in are in sync. | |
t@@ -112,24 +141,24 @@ CHECK_MACRO_VERSION = \ | |
# 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 | |
+# In this case, $(srcdir)/stamp-po is a nop (i.e. a phony target). | |
+ | |
+# $(srcdir)/stamp-po is a timestamp denoting the last time at which the CATALO… | |
+# have been loosely updated. Its purpose is that when a developer or translator | |
+# checks out the package from a version control system, and the $(DOMAIN).pot | |
+# file is not under version control, "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. | |
+$(srcdir)/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; \ | |
+ echo "touch $(srcdir)/stamp-po" && \ | |
+ echo timestamp > $(srcdir)/stamp-poT && \ | |
+ mv $(srcdir)/stamp-poT $(srcdir)/stamp-po; \ | |
} | |
# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', | |
t@@ -142,15 +171,23 @@ stamp-po: $(srcdir)/$(DOMAIN).pot | |
# 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 | |
- if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null; t… | |
- LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -10000… | |
- else \ | |
- LC_ALL=C grep 'GNU @PACKAGE@' $(top_srcdir)/* 2>/dev/null; \ | |
- fi; \ | |
- } | grep -v 'libtool:' >/dev/null; then \ | |
- package_gnu='GNU '; \ | |
+ package_gnu="$(PACKAGE_GNU)"; \ | |
+ test -n "$$package_gnu" || { \ | |
+ if { if (LC_ALL=C find --version) 2>/dev/null | grep GNU >/dev/null;… | |
+ LC_ALL=C find -L $(top_srcdir) -maxdepth 1 -type f -size -100… | |
+ else \ | |
+ LC_ALL=C grep -i '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_gnu=''; \ | |
+ package_prefix=''; \ | |
fi; \ | |
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@… | |
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ | |
t@@ -160,22 +197,30 @@ $(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in … | |
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_… | |
+ --add-comments=TRANSLATORS: \ | |
--files-from=$(srcdir)/POTFILES.in \ | |
--copyright-holder='$(COPYRIGHT_HOLDER)' \ | |
--msgid-bugs-address="$$msgid_bugs_address" \ | |
+ $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ | |
;; \ | |
*) \ | |
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ | |
- --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_… | |
+ --add-comments=TRANSLATORS: \ | |
--files-from=$(srcdir)/POTFILES.in \ | |
--copyright-holder='$(COPYRIGHT_HOLDER)' \ | |
- --package-name="$${package_gnu}@PACKAGE@" \ | |
+ --package-name="$${package_prefix}@PACKAGE@" \ | |
--package-version='@VERSION@' \ | |
--msgid-bugs-address="$$msgid_bugs_address" \ | |
+ $(XGETTEXT_OPTIONS) @XGETTEXT_EXTRA_OPTIONS@ \ | |
;; \ | |
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 \ | |
+ || exit 1; \ | |
+ fi; \ | |
if test -f $(srcdir)/$(DOMAIN).pot; then \ | |
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1… | |
sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ | |
t@@ -198,17 +243,20 @@ $(srcdir)/$(DOMAIN).pot: | |
# This target rebuilds a PO file if $(DOMAIN).pot has changed. | |
# Note that a PO file is not touched if it doesn't need to be changed. | |
-$(POFILES): $(srcdir)/$(DOMAIN).pot | |
+$(POFILES): $(POFILESDEPS) | |
+ @test -f $(srcdir)/$(DOMAIN).pot || $(MAKE) $(srcdir)/$(DOMAIN).pot | |
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ | |
if test -f "$(srcdir)/$${lang}.po"; then \ | |
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
- echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang… | |
+ echo "$${cdcmd}$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang… | |
cd $(srcdir) \ | |
&& { case `$(MSGMERGE_UPDATE) --version | sed 1q | sed -e 's,^[^0-… | |
- '' | 0.[0-9] | 0.[0-9].* | 0.1[0-7] | 0.1[0-7].*) \ | |
+ '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ | |
$(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) $${lang}.po $(DOMA… | |
+ 0.1[6-7] | 0.1[6-7].*) \ | |
+ $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --previous $${lang… | |
*) \ | |
- $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} $$… | |
+ $(MSGMERGE_UPDATE) $(MSGMERGE_OPTIONS) --lang=$${lang} --… | |
esac; \ | |
}; \ | |
else \ | |
t@@ -343,34 +391,41 @@ check: all | |
info dvi ps pdf html tags TAGS ctags CTAGS ID: | |
+install-dvi install-ps install-pdf install-html: | |
+ | |
mostlyclean: | |
rm -f remove-potcdate.sed | |
- rm -f stamp-poT | |
+ rm -f $(srcdir)/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 | |
+ rm -f Makefile Makefile.in POTFILES | |
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) | |
+ rm -f $(srcdir)/$(DOMAIN).pot $(srcdir)/stamp-po $(GMOFILES) | |
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) | |
dist distdir: | |
- $(MAKE) update-po | |
+ 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)"; \ | |
+dist2: $(srcdir)/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"; \ | |
+ else \ | |
+ case $(XGETTEXT) in \ | |
+ :) echo "Warning: Creating a tarball without '$(DOMAIN).pot', beca… | |
+ *) echo "Warning: Creating a tarball without '$(DOMAIN).pot', beca… | |
+ esac; \ | |
fi; \ | |
if test -f $(srcdir)/ChangeLog; then \ | |
dists="$$dists ChangeLog"; \ | |
t@@ -405,17 +460,19 @@ update-po: Makefile | |
.nop.po-update: | |
@lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ | |
- if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH;… | |
+ if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" !=… | |
tmpdir=`pwd`; \ | |
echo "$$lang:"; \ | |
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ | |
- echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang $$lang.po… | |
+ echo "$${cdcmd}$(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previou… | |
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].*) \ | |
+ '' | 0.[0-9] | 0.[0-9].* | 0.1[0-5] | 0.1[0-5].*) \ | |
$(MSGMERGE) $(MSGMERGE_OPTIONS) -o $$tmpdir/$$lang.new.po $$l… | |
+ 0.1[6-7] | 0.1[6-7].*) \ | |
+ $(MSGMERGE) $(MSGMERGE_OPTIONS) --previous -o $$tmpdir/$$lang… | |
*) \ | |
- $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang -o $$tmpdir/$$l… | |
+ $(MSGMERGE) $(MSGMERGE_OPTIONS) --lang=$$lang --previous -o $… | |
esac; \ | |
}; then \ | |
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ | |
diff --git a/po/Makevars b/po/Makevars | |
t@@ -1,4 +1,8 @@ | |
# Makefile variables for PO directory in any package using GNU gettext. | |
+# | |
+# Copyright (C) 2003-2019 Free Software Foundation, Inc. | |
+# This file is free software; the Free Software Foundation gives | |
+# unlimited permission to use, copy, distribute, and modify it. | |
# Usually the message domain is the same as the package name. | |
DOMAIN = $(PACKAGE) | |
t@@ -20,6 +24,13 @@ XGETTEXT_OPTIONS = --keyword=_ --keyword=N_ | |
# their copyright. | |
COPYRIGHT_HOLDER = Ben Webb | |
+# 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 = | |
+ | |
# 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 | |
t@@ -51,3 +62,21 @@ USE_MSGCTXT = no | |
# --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 = yes | |
+ | |
+# 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 = yes | |
diff --git a/po/Rules-quot b/po/Rules-quot | |
t@@ -1,4 +1,9 @@ | |
# Special Makefile rules for English message catalogs with quotation marks. | |
+# | |
+# Copyright (C) 2001-2017 Free Software Foundation, Inc. | |
+# This file, Rules-quot, and its auxiliary files (listed under | |
+# DISTFILES.common.extra1) are free software; the Free Software Foundation | |
+# gives unlimited permission to use, copy, distribute, and modify them. | |
DISTFILES.common.extra1 = quot.sed boldquot.sed [email protected] [email protected]… | |
t@@ -14,13 +19,23 @@ [email protected]: [email protected] | |
.insert-header.po-update-en: | |
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ | |
- if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH;… | |
+ if test "$(PACKAGE)" = "gettext-tools" && test "$(CROSS_COMPILING)" !=… | |
tmpdir=`pwd`; \ | |
echo "$$lang:"; \ | |
ll=`echo $$lang | sed -e 's/@.*//'`; \ | |
LC_ALL=C; export LC_ALL; \ | |
cd $(srcdir); \ | |
- if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$lang -o - 2>/dev/n… | |
+ if $(MSGINIT) $(MSGINIT_OPTIONS) -i $(DOMAIN).pot --no-translator -l $… | |
+ | $(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 \ | |
diff --git a/po/[email protected] b/po/[email protected] | |
t@@ -2,7 +2,7 @@ | |
# 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 | |
+# https://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). | |
diff --git a/po/[email protected] b/po/[email protected] | |
t@@ -2,7 +2,7 @@ | |
# 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 | |
+# https://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). | |
diff --git a/po/insert-header.sin b/po/insert-header.sin | |
t@@ -1,5 +1,10 @@ | |
# Sed script that inserts the file called HEADER before the header entry. | |
# | |
+# Copyright (C) 2001 Free Software Foundation, Inc. | |
+# Written by Bruno Haible <[email protected]>, 2001. | |
+# This file is free software; the Free Software Foundation gives | |
+# unlimited permission to use, copy, distribute, and modify it. | |
+# | |
# 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 | |
diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin | |
t@@ -1,6 +1,12 @@ | |
-# Sed script that remove the POT-Creation-Date line in the header entry | |
+# Sed script that removes the POT-Creation-Date line in the header entry | |
# from a POT file. | |
# | |
+# Copyright (C) 2002 Free Software Foundation, Inc. | |
+# 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. | |
+# | |
# The distinction between the first and the following occurrences of the | |
# pattern is achieved by looking at the hold space. | |
/^"POT-Creation-Date: .*"$/{ |