mirror of
https://github.com/yann64/haikuports.git
synced 2026-04-18 09:40:05 +02:00
70 lines
2.7 KiB
Bash
70 lines
2.7 KiB
Bash
SUMMARY="Determine the locale encoding"
|
|
DESCRIPTION="In many applications it's wise to let Perl use Unicode for the strings it processes. \
|
|
Most of the interfaces Perl has to the outside world are still byte based. Programs therefore \
|
|
need to decode byte strings that enter the program from the outside and encode them again on the \
|
|
way out.
|
|
The POSIX locale system is used to specify both the language conventions requested by the user \
|
|
and the preferred character set to consume and output. The Encode::Locale module looks up the \
|
|
charset and encoding (called a CODESET in the locale jargon) and arranges for the Encode module \
|
|
to know this encoding under the name \"locale\". It means bytes obtained from the environment can \
|
|
be converted to Unicode strings by calling Encode::encode(locale => $bytes) and converted back \
|
|
again with Encode::decode(locale => $string).
|
|
Where file systems interfaces pass file names in and out of the program we also need care. The \
|
|
trend is for operating systems to use a fixed file encoding that don't actually depend on the \
|
|
locale; and this module determines the most appropriate encoding for file names. The Encode \
|
|
module will know this encoding under the name \"locale_fs\". For traditional Unix systems this \
|
|
will be an alias to the same encoding as \"locale\".
|
|
For programs running in a terminal window (called a \"Console\" on some systems) the \"locale\" \
|
|
encoding is usually a good choice for what to expect as input and output. Some systems allows us \
|
|
to query the encoding set for the terminal and Encode::Locale will do that if available and make \
|
|
these encodings known under the Encode aliases \"console_in\" and \"console_out\". For systems \
|
|
where we can't determine the terminal encoding these will be aliased as the same encoding as \
|
|
\"locale\". The advice is to use \"console_in\" for input known to come from the terminal and \
|
|
\"console_out\" for output to the terminal."
|
|
HOMEPAGE="https://metacpan.org/pod/Encode::Locale"
|
|
COPYRIGHT="2010 Gisle Aas"
|
|
LICENSE="Artistic"
|
|
REVISION="1"
|
|
SOURCE_URI="https://cpan.metacpan.org/authors/id/G/GA/GAAS/Encode-Locale-$portVersion.tar.gz"
|
|
CHECKSUM_SHA256="176fa02771f542a4efb1dbc2a4c928e8f4391bf4078473bd6040d8f11adb0ec1"
|
|
SOURCE_DIR="Encode-Locale-$portVersion"
|
|
|
|
ARCHITECTURES="any"
|
|
|
|
PROVIDES="
|
|
encode_locale = $portVersion
|
|
"
|
|
REQUIRES="
|
|
haiku
|
|
vendor_perl
|
|
"
|
|
|
|
BUILD_REQUIRES="
|
|
haiku_devel
|
|
"
|
|
BUILD_PREREQUIRES="
|
|
cmd:make
|
|
cmd:perl
|
|
"
|
|
|
|
BUILD()
|
|
{
|
|
perl Makefile.PL PREFIX=$prefix
|
|
make
|
|
}
|
|
|
|
INSTALL()
|
|
{
|
|
make pure_install
|
|
|
|
# remove architecture-specific files
|
|
cd $prefix
|
|
rm -r $(perl -V:vendorarch | cut -d\' -f2 | cut -d/ -f5-)
|
|
# cut extracts the quoted string and strips the prefix (which is perl's and not ours)
|
|
}
|
|
|
|
TEST()
|
|
{
|
|
make test
|
|
}
|