lh | 9ed821d | 2023-04-07 01:36:19 -0700 | [diff] [blame] | 1 | POSIX locale descriptions |
| 2 | and |
| 3 | POSIX character set descriptions |
| 4 | |
| 5 | Ulrich Drepper Time-stamp: <2004/11/27 13:06:54 drepper> |
| 6 | drepper@redhat.com |
| 7 | |
| 8 | |
| 9 | This directory contains the data needed to build the locale data files |
| 10 | to use the internationalization features of the GNU libc. |
| 11 | |
| 12 | POSIX.2 describes the `localedef' utility which is part of the GNU libc. |
| 13 | You need this program to "compile" the locale description in a form |
| 14 | suitable for fast access by the GNU libc functions. Any compilation is |
| 15 | based on a given character set. |
| 16 | |
| 17 | Once you run `make install' for the GNU libc the data files are |
| 18 | automatically installed in the right place, ready for use by the |
| 19 | `localedef' program. |
| 20 | |
| 21 | To compile the locale data files you simply have to decide which locale |
| 22 | (based on the location and the language) and which character set you |
| 23 | use. E.g., French speaking Canadians would use the locale `fr_CA' and |
| 24 | the character set `ISO_8859-1,1987'. Calling `localedef' to get the |
| 25 | desired data should happen like this: |
| 26 | |
| 27 | localedef -i fr_CA -f ISO-8859-1 fr_CA |
| 28 | |
| 29 | This will place the 6 output files in the appropriate directory where |
| 30 | the GNU libc functions can find them. Please note that you need |
| 31 | permission to write to this directory ($(prefix)/share/locale, where |
| 32 | $(prefix) is the value you specified while configuring GNU libc). If |
| 33 | you do not have the necessary permissions, you can write the files into an |
| 34 | arbitrary directory by giving a path including a '/' character instead |
| 35 | of `fr_CA'. E.g., to put the new files in a subdirectory of the |
| 36 | current directory simply use |
| 37 | |
| 38 | localedef -i fr_CA -f ISO-8859-1 ./fr_CA |
| 39 | |
| 40 | How to use these data files is described in the GNU libc manual, |
| 41 | especially in the section describing the `setlocale' function. |
| 42 | |
| 43 | All problems should be reported using |
| 44 | |
| 45 | http://sourceware.org/bugzilla/ |
| 46 | |
| 47 | |
| 48 | One more note: the `POSIX' locale definition is not meant to be used |
| 49 | as an input file for `localedef'. It is rather there to show the |
| 50 | values with are built in the libc binaries as default values when no |
| 51 | legal locale is found or the "C" or "POSIX" locale is selected. |
| 52 | |
| 53 | |
| 54 | The collation test suite |
| 55 | ######################## |
| 56 | |
| 57 | This package also contains a (beginning of a) test suite for the |
| 58 | collation functions in the GNU libc. The files are provided sorted. |
| 59 | The test program shuffles the lines and sort them afterwards. |
| 60 | |
| 61 | Some of the files are provided in 8bit form, i.e., not only ASCII |
| 62 | characters. So the tools you use to process the files should be 8bit |
| 63 | clean. |
| 64 | |
| 65 | To run the test program the appropriate locale information must be |
| 66 | installed. Therefore the localedef program is used to generate this |
| 67 | data used the locale and charmap description files contained here. |
| 68 | Since we cannot run the localedef program in case of cross-compilation |
| 69 | no tests at all are performed. |
| 70 | |
| 71 | |
| 72 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ |
| 73 | Local Variables: |
| 74 | mode:text |
| 75 | eval:(load-library "time-stamp") |
| 76 | eval:(make-local-variable 'write-file-hooks) |
| 77 | eval:(add-hook 'write-file-hooks 'time-stamp) |
| 78 | eval:(setq time-stamp-format '(time-stamp-yyyy/mm/dd time-stamp-hh:mm:ss user-login-name)) |
| 79 | End: |