Jump to content United States-English
HP.com Home Products and Services Support and Drivers Solutions How to Buy
» Contact HP
More options
HP.com home
HP-UX 11i Version 3 Release Notes: HP 9000 and HP Integrity Servers > Chapter 11 Internationalization

New Locale Versioning: localedef/libc UNIX 2003-related I18N changes

» 

Technical documentation

Complete book in PDF
» Feedback
Content starts here

 » Table of Contents

With the 11i v3 release, a new locale version “locales.3” has been generated for all system supported locale binaries. This has been provided to protect older PA-RISC-based archived applications from unexpected systems behavior necessitated in order to fully support the UNIX 2003 standard. In addition, localedef and libc have been extended to support up to 255 ctype character classes defined within a locale and several new UNIX 2003 defined LC_MONETARY international currency locale keyword elements.

Summary of Change

What’s New for Customers Migrating from HP-UX 11i v1 September 2005?

Several changes have been made within the standard header file /usr/include/locale.h to conform to the UNIX 2003 standard. These changes impact the locale’s internal data structure generated by the localedef command and associated libc routines that access those locales.

Users will find a new locale version “locales.3” under:

  • /usr/lib/nls/loc/locales.3 (for 32-bit PA-RISC)

  • /usr/lib/nls/loc/pa20_64/locales.3 (for 64-bit PA-RISC)

  • /usr/lib/nls/loc/hpux32/locales.3 (for 32-bit Itanium®-based)

  • /usr/lib/nls/loc/hpux64/locales.3 (for 64-bit Itanium®-based)

As part of the new locales.3 version, several other changes have been made to the locale internals resulting in a smaller, more optimized locales, requiring less disk space while also offering better runtime performance (especially when processing larger character sets, such as Unicode) than in previous locale versions.

The localedef utility now allows the definition of up to 255 character type classes within a locale. Previous releases allowed a maximum of 32 ctype classes.

Locales now support new UNIX 2003 LC_MONETARY keywords that are used by strfmon() and localeconv(). Refer to the manpages for localeconv and strfmon for more information.

What’s New for Customers Migrating from HP-UX 11i v2 June 2006?

See “What’s New for Customers Migrating from HP-UX 11i v1 September 2005?”

Impact

No additional memory requirements are needed when using these new locale binary versions.

Compatibility

Older PA-RISC archived applications will not be able to use these new locales.3 locales unless they are statically re-linked on an 11i v3 system. To maintain compatibility, older locale binaries (locales.1 and locales.2) continue to be provided for use by archived applications. Customers who provide their own set of customized locale binaries will need to rebuild them on 11i v3 systems using the localedef command to generate correct v3 “locales.3” binaries. Locale binaries built on previous releases such as those installed in “locales.1” or “locales.2” subdirectories may not be installed into the locales.3 area. This has been documented as not being permitted in the “Note” section of the localedef(1M) manpage for the past several releases.

Performance

With the new locale binary restructuring, some collation/sorting and string handling intensive applications may observe performance improvements when compared to past releases.

Documentation

Not applicable.

Obsolescence

10.20-based locales.1 binaries are considered to be deprecated and will no longer be provided in a future release. 11i-based locales.2 binaries will be moved from being part of the Base-OS file set to an optional file set that may be only installed if requested by users.

Printable version
Privacy statement Using this site means you accept its terms Feedback to webmaster
© 2006-2007 Hewlett-Packard Development Company, L.P.