Mercurial > pidgin.yaz
view gaim.spec.in @ 7724:613b20c69d2c
[gaim-migrate @ 8369]
this didn't cause me any problems yesterday, and it compiles, and bug fixing is a good thing.
"Some month ago I introduced translatable texts for "gaim --help" and
"gaim-remote --help".
Unfortunately the output of the translated text is often unreadable.
The problem is, that Gaim's *.po files have the UTF-8 locale (because
this is the default charset for GTK+ 2.0). But the users may have
configured other locales. For instance my SuSE Linux 9.0 system is
configured with LANG=de_DE@euro. "euro" is ISO-8859-1 (Western
character set, 8 Bit, with the Euro currency symbol). Lots of UTF-8
characters are unreadable if they are displayed in a 8 Bit charset
without conversion. Only the 7 Bit chars are displayed right.
There are two possible solutions:
1) Make the console texts untranslatable. This isn't very clever.
2) Convert the texts from UTF-8 to user's locale.
I choose the second solution.
The conversion cannot be made during the translation, because gettext
does not allow a mix of different character sets in one po-file.
My patch converts the console strings from UTF-8 to users locale.
Normally this works right, because most users have a locale which is
compatible with their language.
The case where a user uses a language (for instance German:
LANG=de_DE) with an incompatible character set (for instance the 7Bit
charset LC_CTYPE=C) is also handled. The user then sees a warning and
the original UTF-8 message.
At first I tried to make a new UTF-8 function in src/util.c. But the
function is needed 5 times in src/gaim-remote.c and 2 times in
src/main.c. gaim-remote is not linked against util.o. Also there are a
lot of dependencies from util.o to other files, so I will introduce a
lot of trouble to link gaim-remote against util.o.
So I only wrote a function in src/gaim-remote.c and used the UTF-8
conversion inline in src/main.c." --Bjoern Voigt
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Wed, 03 Dec 2003 13:21:55 +0000 |
parents | 4995ad0ada66 |
children | 69b9e1d4f9e2 |
line wrap: on
line source
Summary: A Gtk+ based multiprotocol instant messaging client Name: @PACKAGE@ Version: @VERSION@ Release: 0 Epoch: 1 License: GPL Group: Applications/Internet URL: http://gaim.sourceforge.net/ Packager: %{packager} Source: %{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-root %if "%{_vendor}" != "MandrakeSoft" Requires: gtk2 >= 2.0.0, mozilla-nss, gtkspell, audiofile, libao BuildRequires: libao-devel, gtk2-devel, gtkspell-devel, libtool, audiofile-devel, pkgconfig, mozilla-nss-devel %else Requires: gtk+2.0 >= 2.0.0, libnss3 BuildRequires: libao-devel, libgtk+2.0_0-devel, gtkspell-devel, libtool, audiofile-devel, pkgconfig, libnss3-devel, perl-devel %endif %package devel Summary: Development headers, documentation, and libraries for Gaim. Group: Applications/Internet %description Gaim allows you to talk to anyone using a variety of messaging protocols, including AIM (Oscar and TOC), ICQ, IRC, Yahoo!, MSN Messenger, Jabber, Gadu-Gadu, Napster, and Zephyr. These protocols are implemented using a modular, easy to use design. To use a protocol, just add an account using the account editor. Gaim supports many common features of other clients, as well as many unique features, such as perl scripting, TCL scripting and C plugins. Gaim is NOT affiliated with or endorsed by America Online, Inc., Microsoft Corporation, Yahoo! Inc., or ICQ Inc. %description devel The gaim-devel package contains the header files, developer documentation, and libraries required for development of gaim scripts and plugins. %prep %setup %build CFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=%{_prefix} \ --bindir=%{_bindir} \ --datadir=%{_datadir} \ --includedir=%{_includedir} \ --libdir=%{_libdir} \ --mandir=%{_mandir} \ --sysconfdir=%{_sysconfdir} \ --with-perl-lib=%{buildroot}%{_prefix} make %{?_smp_mflags} %install rm -rf %{buildroot} make prefix=%{buildroot}%{_prefix} bindir=%{buildroot}%{_bindir} \ datadir=%{buildroot}%{_datadir} includedir=%{buildroot}%{_includedir} \ libdir=%{buildroot}%{_libdir} mandir=%{buildroot}%{_mandir} \ sysconfdir=%{buildroot}%{_sysconfdir} \ install rm -f $RPM_BUILD_ROOT/%{_libdir}/perl5/*/*/perllocal.pod strip %{buildroot}%{_libdir}/{*.so*,%{name}/*.so} || : %clean rm -rf %{buildroot} %files %defattr(-, root, root) %doc doc/the_penguin.txt doc/CREDITS doc/FAQ NEWS COPYING AUTHORS %doc README ChangeLog %doc %{_mandir}/man1/* %doc %{_mandir}/man3*/* %dir %{_libdir}/gaim %attr(755, root, root) %{_libdir}/gaim/* %attr(755, root, root) %{_libdir}/libgaim-remote.so.* %attr(755, root, root) %{_libdir}/perl5 %{_bindir}/* %{_datadir}/locale/*/*/* %{_datadir}/pixmaps/* %dir %{_datadir}/sounds/gaim %{_datadir}/sounds/gaim/* %{_datadir}/applications/* %files devel %doc plugins/HOWTO %doc HACKING PROGRAMMING_NOTES %attr(755, root, root) %{_libdir}/libgaim-remote.la %dir %{_includedir}/gaim-remote %{_includedir}/gaim-remote/*.h %changelog * Sun Jul 20 2003 Bjoern Voigt <bjoern@cs.tu-berlin.de> - Added pkgconfig build dependency. - if "%{_vendor}" != "MandrakeSoft" now also works with rpm 3.x. - Added Gaim-specific directories to list of Gaim's files. * Wed Jul 16 2003 Ethan Blanton <eblanton@cs.ohiou.edu> - Complete spec file rewrite to take advantage of "new" RPM features and make things prettier. - Use system-supplied %%{_prefix}, %%{_datadir}, etc. rather than attempt to define our own.