mirror of
https://github.com/unicode-org/icu.git
synced 2025-04-15 01:42:37 +00:00
ICU-6332 Updated the readme to reflect the enhancement.
X-SVN-Rev: 26574
This commit is contained in:
parent
d22b1f602e
commit
0fd738a371
1 changed files with 22 additions and 35 deletions
|
@ -209,49 +209,36 @@
|
|||
download page</a>.</p>
|
||||
|
||||
<!-- The following is in regards of Ticket #6894 done by John Huan Vu -->
|
||||
|
||||
<h3><a name="LinuxICCValueSafeOptimization">Linux/ICC (Intel C++ Compiler) value-safe optimization on floating-point data</a></h3>
|
||||
<p>
|
||||
To ensure that the behavior of the Linux/ICC compiler are consistent with other compilers and other platforms, the flag <code>-fp-model precise</code> is added to the file <code>runConfigureICU</code>. According to the <a href="http://www.intel.com/software/products/compilers/docs/clin/main_cls/whnjs.htm">Intel C++ Compiler User and Reference Guides</a>, the flag enables value-safe optimizations on floating-point data. In contrast, the default value of the <code>-fp-model</code> option is <code>-fp-model fast=1</code> which enables a more aggressive optimizations on floating-point data. This is particularly important when all of the bits of a <code>float</code> or a <code>double</code> value are used for ICU.
|
||||
</p>
|
||||
<p>This new functionality fixes <a href="http://bugs.icu-project.org/trac/ticket/6894">Ticket #6894</a>.</p>
|
||||
|
||||
<!--
|
||||
<h3>Cross compilation and 64-bit support</h3>
|
||||
<p>ICU may now be cross compiled, see <a href="#HowToCrossCompileICU">How To Cross Compile ICU</a>.</p>
|
||||
<p>The --enable-64bit-libs and --disable-64bit-libs options are now deprecated. By default, ICU will build binaries using the compiler's default setting. To request 32 or 64 bit libraries, use --with-library-bits=32 or --with-library-bits=64. For the old behavior, of attempting 64 bit libraries if possible, use --with-library-bits=64else32. Intltest now reports the bit width that ICU is currently running under.</p>
|
||||
<!--
|
||||
<h3>u_strToUTF32() and u_strFromUTF32() validate input UTF strings</h3>
|
||||
<!-- The following is in regards of Ticket #6332 done by John Huan Vu -->
|
||||
<h3>Static and shared libraries share the same name in the UNIX environment</h3>
|
||||
<p>
|
||||
Before ICU 4.2, the ustring.h functions u_strToUTF32() and u_strFromUTF32()
|
||||
were not fully validating their input strings.
|
||||
In particular, u_strToUTF32() passed unpaired surrogates through as
|
||||
surrogate code points, and u_strFromUTF32() accepted surrogate code points
|
||||
and passed them through as unpaired surrogates
|
||||
(which may by chance end up in a pair,
|
||||
indistinguishable from a supplementary code point).
|
||||
This is inconsistent with the function names,
|
||||
with the use of "UTF-16" and "UTF-32" in the documentation,
|
||||
and with their sibling UTF-8 functions which do validate fully.
|
||||
Previously, static libraries in a UNIX environment would have an 's' in front of their names (i.e. libsicu*.a versus libicu*.so). However, it has been known customary within a UNIX environment to have the static and shared libaries with the same name (i.e. libicu*.a with libicu*.so). This causes problems to some users because they would have to know of this change of library names when producing a fully static executable. Given this, an enhancement is made that whenever the flag <code>--enable-static</code> is given, the static and shared libraries will now have the same name.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
ICU 4.2 changes the u_strToUTF32() and u_strFromUTF32() implementations
|
||||
to treat malformed UTF input as an error.
|
||||
The API documentation has been clarified.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Background: The implementation of these functions predates
|
||||
Unicode's tightening of the UTF specifications.
|
||||
We adapted the UTF-8 ustring.h functions and the ucnv_ converter functions
|
||||
but not these UTF-32 ustring.h functions.
|
||||
See the Unicode Standard chapter 3
|
||||
<a href="http://www.unicode.org/versions/Unicode5.0.0/ch03.pdf#G7404">section 3.9 Unicode Encoding Forms</a>
|
||||
for details, in particular definitions D79 Unicode encoding form
|
||||
and D80 Unicode string.
|
||||
</p>
|
||||
-->
|
||||
<p>The following platforms are affected by this change:</p>
|
||||
<ul>
|
||||
<li>Debian Linux 5.0.2 PPC using GCC</li>
|
||||
<li>HP/UX 11iv3 (ia64, 64-bit), aCC A.06.15</li>
|
||||
<li>HP/UX 11i (hppa, 64-bit), aCC A.03.85</li>
|
||||
<li>MacOSX 10.5 Leopard (x86, 64-bit), gcc 4.0.1</li>
|
||||
<li>MacOSX 10.5 Leopard (x86, 32-bit), gcc 4.0.1</li>
|
||||
<li>Solaris 9, Sun Studio 12</li>
|
||||
<li>Solaris 10 (sparc, 64-bit), gcc 4.2.1</li>
|
||||
<li>Solaris 10 (sparc, 64-bit), Sun Studio 12</li>
|
||||
<li>Red Hat Enterprise Linux 4.2 (x86, 32-bit), gcc 3.4.6</li>
|
||||
<li>Red Hat Enterprise Linux 4u7 (x86, 32-bit), gcc 4.2.4</li>
|
||||
<li>Red Hat Enterprise Linux 5 (x86, 32-bit), icc 11.0</li>
|
||||
<li>Red Hat Enterprise Linux 5 (x86, 32-bit), gcc 4.1.2</li>
|
||||
<li>Red Hat Enterprise Linux 5 (x86, 64-bit), gcc 4.1.2</li>
|
||||
<li>SuSe Linux 7.2 (x86, 32-bit), icc 9.0</li>
|
||||
<li>SuSE 10 (x86, 64-bit), gcc 4.1.0</li>
|
||||
</ul>
|
||||
<p>This new enhancement refers to <a href="http://bugs.icu-project.org/trac/ticket/6332">Ticket #6332</a>.</p>
|
||||
|
||||
<h2><a name="Download" href="#Download" id="Download">How To Download the
|
||||
Source Code</a></h2>
|
||||
|
|
Loading…
Add table
Reference in a new issue