diff options
author | Bruno Haible <bruno@clisp.org> | 2016-01-13 09:31:48 +0100 |
---|---|---|
committer | Bruno Haible <bruno@clisp.org> | 2016-01-15 10:18:25 +0100 |
commit | 4d475fa2986e089b22ce63d42fdccdd1ea337afd (patch) | |
tree | 937e8f82acf387e4012f894c7040bafaa87c287f | |
parent | ba5d34e523327eacef499fd73ce50da371f104f2 (diff) | |
download | external_gettext-4d475fa2986e089b22ce63d42fdccdd1ea337afd.zip external_gettext-4d475fa2986e089b22ce63d42fdccdd1ea337afd.tar.gz external_gettext-4d475fa2986e089b22ce63d42fdccdd1ea337afd.tar.bz2 |
Change msgfmt to produce little-endian .mo files by default.
* gettext-tools/src/msgfmt.c (main): Initialize 'byteswap' so as to
produce little-endian .mo files by default.
* gettext-tools/doc/gettext.texi: Update documentation.
* gettext-tools/doc/msgfmt.texi (--endianness): Likewise.
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | gettext-tools/doc/gettext.texi | 4 | ||||
-rw-r--r-- | gettext-tools/doc/msgfmt.texi | 5 | ||||
-rw-r--r-- | gettext-tools/src/msgfmt.c | 1 |
4 files changed, 8 insertions, 5 deletions
@@ -1,3 +1,6 @@ +* Support for reproducible builds: + - msgfmt now produces little-endian .mo files by default. + Version 0.19.7 - December 2015 * Programming languages support: diff --git a/gettext-tools/doc/gettext.texi b/gettext-tools/doc/gettext.texi index 204ab38..c87fb72 100644 --- a/gettext-tools/doc/gettext.texi +++ b/gettext-tools/doc/gettext.texi @@ -5325,8 +5325,8 @@ which appears below. @cindex magic signature of MO files The first two words serve the identification of the file. The magic number will always signal GNU MO files. The number is stored in the -byte order of the generating machine, so the magic number really is -two numbers: @code{0x950412de} and @code{0xde120495}. +byte order used when the MO file was generated, so the magic number +really is two numbers: @code{0x950412de} and @code{0xde120495}. The second word describes the current revision of the file format, composed of a major and a minor revision number. The revision numbers diff --git a/gettext-tools/doc/msgfmt.texi b/gettext-tools/doc/msgfmt.texi index a6fefcd..90350cb 100644 --- a/gettext-tools/doc/msgfmt.texi +++ b/gettext-tools/doc/msgfmt.texi @@ -382,14 +382,13 @@ Align strings to @var{number} bytes (default: 1). @item --endianness=@var{byteorder} @opindex --endianness@r{, @code{msgfmt} option} Write out 32-bit numbers in the given byte order. The possible values are -@code{big} and @code{little}. The default depends on the platform, namely -on the endianness of the CPU. +@code{big} and @code{little}. The default is @code{little}. MO files of any endianness can be used on any platform. When a MO file has an endianness other than the platform's one, the 32-bit numbers from the MO file are swapped at runtime. The performance impact is negligible. -This option can be useful to produce MO files that are independent of the +This option can be useful to produce MO files that are optimized for one platform. @item --no-hash diff --git a/gettext-tools/src/msgfmt.c b/gettext-tools/src/msgfmt.c index 7b48d21..7055fa0 100644 --- a/gettext-tools/src/msgfmt.c +++ b/gettext-tools/src/msgfmt.c @@ -251,6 +251,7 @@ main (int argc, char *argv[]) /* Set default value for global variables. */ alignment = DEFAULT_OUTPUT_ALIGNMENT; + byteswap = 0 ^ ENDIANNESS; /* Set program name for messages. */ set_program_name (argv[0]); |