Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 4 May 2005 17:38:00 GMT
From:      FUJISHIMA Satsuki <sf@FreeBSD.org>
To:        freebsd-ports@FreeBSD.org
Subject:   compatibility locale data for legacy binaries
Message-ID:  <200505041738.j44Hc0LP036893@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
In recent -CURRENT on-disk format of locale data files have been
changed. This means legacy binaries which are aware of non-ASCII
locales no longer work properly(setlocale() fails unconditionally.)

To fix this issue(Thanks to Ruslan), we should install legacy locale
data files to somewhere, and point environment variable PATH_LOCALE
there.

To achieve this just like misc/compat4x port, I made a port
compat4x-localedata which installs locale data files taken from
4.11-RELEASE into /usr/local/share/compat/locale. When you want a
locale-aware legacy binary  working properly, just set environment
like this:

env PATH_LOCALE=/usr/local/share/compat/locale COMMAND

and COMMAND runs fine. Setting this variable in COMMAND's startup
script is also fine. Don't set it in your login shell or it break
non-legacy, 6.0 binaries.

Any comments are appreciated.

port tarball:
http://people.freebsd.org/~sf/compat4x-localedata.tar.gz
distfiles:
http://people.freebsd.org/~sf/compat4x-localedata-alpha-4.11.tar.bz2
http://people.freebsd.org/~sf/compat4x-localedata-i386-4.11.tar.bz2



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505041738.j44Hc0LP036893>