Files
perl-Encode-JP-Emoji/perl-Encode-JP-Emoji.spec
2025-08-12 18:13:53 +02:00

171 lines
7.9 KiB
RPMSpec

#
# spec file for package perl-Encode-JP-Emoji
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%define cpan_name Encode-JP-Emoji
Name: perl-Encode-JP-Emoji
Version: 0.600.0
Release: 0
# 0.60 -> normalize -> 0.600.0
%define cpan_version 0.60
License: Apache-2.0
Summary: Emoji encodings and cross-mapping tables in pure Perl
URL: https://metacpan.org/release/%{cpan_name}
Source0: https://cpan.metacpan.org/authors/id/K/KA/KAWASAKI/%{cpan_name}-%{cpan_version}.tar.gz
Source100: README.md
BuildArch: noarch
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: perl(Test::Harness) >= 3.04
Requires: perl(Test::Harness) >= 3.04
Provides: perl(Encode::JP::Emoji) = %{version}
Provides: perl(Encode::JP::Emoji::Encoding) = %{version}
Provides: perl(Encode::JP::Emoji::Encoding::Shift_JIS)
Provides: perl(Encode::JP::Emoji::Encoding::UTF8)
Provides: perl(Encode::JP::Emoji::Encoding::Util)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_DOCOMO_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_KDDIAPP_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_KDDIWEB_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_NONE_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_SOFTBANK2G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_E4U_SOFTBANK3G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_EMOJI_DOCOMO_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_EMOJI_KDDIAPP_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_EMOJI_KDDIWEB_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_EMOJI_SOFTBANK2G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_SJIS_EMOJI_SOFTBANK3G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_DOCOMO_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_KDDIAPP_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_KDDIWEB_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_MIXED_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_NONE_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_SOFTBANK2G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_SOFTBANK3G_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_E4U_UNICODE_PP)
Provides: perl(Encode::JP::Emoji::Encoding::X_UTF8_EMOJI_SOFTBANK2G_PP)
Provides: perl(Encode::JP::Emoji::FB_EMOJI_TEXT) = %{version}
Provides: perl(Encode::JP::Emoji::Mapping) = 0.60.20101024
Provides: perl(Encode::JP::Emoji::PP) = 0.50.0
Provides: perl(Encode::JP::Emoji::Property) = %{version}
%undefine __perllib_provides
%{perl_requires}
%description
This module provides encodings which support emoji picture characters.
The first group of encodings uses carriers' private code points as Perl's
internal string which has UTF-8 flag on.
Name Encoding Octets Emoji String Emoji
--------------------------------------------------------------------
x-sjis-emoji-docomo Shift_JIS DoCoMo DoCoMo
x-sjis-emoji-kddiapp Shift_JIS KDDI KDDI(app)
x-sjis-emoji-kddiweb Shift_JIS KDDI KDDI(web)
x-sjis-emoji-softbank2g Shift_JIS SoftBank(2G) SoftBank
x-sjis-emoji-softbank3g Shift_JIS SoftBank(3G) SoftBank
x-utf8-emoji-docomo UTF-8 DoCoMo DoCoMo
x-utf8-emoji-kddiapp UTF-8 KDDI(app) KDDI(app)
x-utf8-emoji-kddiweb UTF-8 KDDI(web) KDDI(web)
x-utf8-emoji-softbank2g UTF-8 SoftBank(2G) SoftBank
x-utf8-emoji-softbank3g UTF-8 SoftBank(3G) SoftBank
--------------------------------------------------------------------
KDDI has two version of thier private code points. KDDI(app) is official
and documented version used in EZappli and character references. KDDI(web),
on the other hand, is *undocumented version* but used in UTF-8 web pages.
Use KDDI(web) encoding recommended in most cases.
SoftBank also has two version of thier emoji representations. SoftBank(2G)
uses escape sequence style. SoftBank(3G) uses binary representations. Use
SoftBank(3G) encoding recommended in most cases.
The second group uses Googles's private code points internaly. This means
Google's encoding could be the interchange encoding for others.
Name Encoding Octets Emoji String Emoji
--------------------------------------------------------------------
x-sjis-e4u-docomo Shift_JIS DoCoMo Google
x-sjis-e4u-kddiapp Shift_JIS KDDI Google
x-sjis-e4u-kddiweb Shift_JIS KDDI Google
x-sjis-e4u-softbank2g Shift_JIS SoftBank(2G) Google
x-sjis-e4u-softbank3g Shift_JIS SoftBank(3G) Google
x-utf8-e4u-docomo UTF-8 DoCoMo Google
x-utf8-e4u-kddiapp UTF-8 KDDI(app) Google
x-utf8-e4u-kddiweb UTF-8 KDDI(web) Google
x-utf8-e4u-softbank2g UTF-8 SoftBank(2G) Google
x-utf8-e4u-softbank3g UTF-8 SoftBank(3G) Google
--------------------------------------------------------------------
The cross-carriers mapping tables are based on emoji4unicode, Emoji for
Unicode, project on Google Code. See more detail on
http://code.google.com/p/emoji4unicode/ about the project.
The next group also uses Google's.
Name Encoding Octets Emoji String Emoji
--------------------------------------------------------------------
x-utf8-e4u-unicode UTF-8 Unicode Std. Google
x-utf8-e4u-google UTF-8 Google Google
x-utf8-e4u-mixed UTF-8 (mixed) Google
--------------------------------------------------------------------
'x-utf8-e4u-unicode' encodes the Unicode 6.0 emojis.
'x-utf8-e4u-google' does *NO* translations and exists only for useful.
'x-utf8-e4u-mixed' accepts all emojis of three mobile carriers mixed. On
decoding, however, KDDI(app) emojis would be broken as they have conflicts
with SoftBank emojis. So *DO NOT* use KDDI(app) with this. On encoding,
this replaces Google emojis to others definitively. This encoding is
friendly for Encode::JP::Mobile and MySQL 5.4. Note that MySQL before 5.5.3
does not support four bytes UTF-8 including both Google and Unicode
Standard emojis.
Tha last group rejects any emojis above. You would use these encodings with
Encode::JP::Emoji::FB_EMOJI_TEXT fallback functions.
Name Encoding
--------------------------------------------------------------------
x-sjis-emoji-none Shift_JIS
x-utf8-emoji-none UTF-8
x-sjis-e4u-none Shift_JIS
x-utf8-e4u-none UTF-8
--------------------------------------------------------------------
%prep
%autosetup -n %{cpan_name}-%{cpan_version}
find . -type f ! -path "*/t/*" ! -name "*.pl" ! -path "*/bin/*" ! -path "*/script/*" ! -path "*/scripts/*" ! -name "configure" -print0 | xargs -0 chmod 644
%build
perl Makefile.PL INSTALLDIRS=vendor
%make_build
%check
make test
%install
%perl_make_install
%perl_process_packlist
%perl_gen_filelist
%files -f %{name}.files
%doc Changes README
%license COPYING
%changelog