view gaim.spec.in @ 10787:c932d96a7c69

[gaim-migrate @ 12428] " Autocorrect in gaim... um... sucks. The problem is that the correction only happens AFTER you send a message. This means that you don't actually know what message you are sending until it is sent. Horrible. My new patch works AS YOU TYPE with the following rules: * You must be typing, not pasting in text. If you paste in the and there is a rule to correct the to the, it won't be corrected. This is because it would be impossible to go back and check all the text. * Check whole words ONLY. Partial words don't count. * If the dictionary word has capital letters in it, match only words with that capitalization. (FPT -> FTP doesn't match ftp.) * If the dictionary word doesn't have capital letters, preserve the capitalization the user used. (The code assumes three possible capitalization schemes: ALLCAPS, lowercase, and Proper.) Unless the solution has capital letters. In that case, force the capitalization used in the solution. * A word may have quote characters in it and still be a word. * If the user immediately hits the backspace key after a correction, undo the correction." --xkan " This patch is based off xkahn's work available at: http://sf.net/support/tracker.php?aid=300235 Most of the changes are his. I just changed his formatting to match the rest of Gaim more closely. Also, I made a couple coding style changes. The two biggest changes I made were: 1) I added some hash stuff to load_config. This removes duplicates. 2) I imported my list of text replacement strings as the default list in addition to xkahn's list. My list consisted primarily of the autocorrect entries from my copy of OpenOffice.org Writer. There were a few things I've added by hand. (For those familiar with my comments in #gaim, this list does NOT include anything like a pwn -> own replacement. If people want to talk like that, I'm not going to stop them. This list should be useful to anyone.) I also fixed a memory leak in load_config. A GtkListStore stores its own copy of strings, so there is no need to g_strdup them when appending to the GtkListStore. When I get a chance, I need to make it give an error if you try to set a duplicate "You type" word in the preferences. Otherwise, this patch should take care of everything. I would recommend considering this patch over xkahn's because it's a direct superset of his patches. However, I want to be very clear that most of the changes in this patch are his and he deserves the credit for them. " --rlaager committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Thu, 07 Apr 2005 14:35:25 +0000
parents ee371f31ae96
children 364a2ef907ae
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:   gtk+2.0 >= 2.0.0, libnss3
BuildRequires: libao-devel, libgtk+2.0_0-devel, libtool, audiofile-devel, pkgconfig, libnss3-devel, perl-devel
Provides:   libgaim-remote0
%else
Requires:   gtk2 >= 2.0.0, mozilla-nss, audiofile, libao
BuildRequires: libao-devel, gtk2-devel, libtool, audiofile-devel, pkgconfig, mozilla-nss-devel
%endif
%{?_with_silc:BuildRequires: libsilc-devel}
%{?_with_tcl:BuildRequires: tcl, tk}

%if %{?_with_silc:1}%{!?_with_silc:0}
%package silc
Summary:    SILC (Secure Internet Live Conferencing) plugin for Gaim
Group:      Applications/Internet
Requires:   gaim = %{epoch}:%{version}
%endif

%if %{?_with_tcl:1}%{!?_with_tcl:0}
%package tcl
Summary:    Tcl scripting support for Gaim
Group:      Applications/Internet
Requires:   gaim = %{epoch}:%{version}
%endif

%package devel
Summary:    Development headers, documentation, and libraries for Gaim.
Group:      Applications/Internet
Requires:   gaim = %{epoch}:%{version}

%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.

%if %{?_with_silc:1}%{!?_with_silc:0}
%description silc
SILC (Secure Internet Live Conferencing) plugin for Gaim
%endif

%if %{?_with_tcl:1}%{!?_with_tcl:0}
%description tcl
Tcl plugin loader for Gaim.  This package will allow you to write or
use Gaim plugins written in the Tcl programming language.
%endif

%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} \
                                    %{?_with_silc:--with-silc-includes=%{_includedir}/silc} \
                                    %{?_with_silc:--with-silc-libs=%{_libdir}/silc} \
                                    %{!?_with_tcl:--disable-tcl}

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
rm -f $RPM_BUILD_ROOT%{_libdir}/gaim/*.la

%if %{!?_with_silc:1}%{?_with_silc:0}
rm -f $RPM_BUILD_ROOT%{_libdir}/gaim/libsilcgaim.so
%endif

%if %{!?_with_tcl:1}%{?_with_tcl:0}
rm -f $RPM_BUILD_ROOT%{_libdir}/gaim/tcl.so
%endif

find $RPM_BUILD_ROOT%{_libdir}/gaim -type f -print | \
	sed "s@^$RPM_BUILD_ROOT@@g" | \
	grep -v libsilcgaim.so |
        grep -v tcl.so |
        grep -v ".tcl$" > %{name}-%{version}-coreplugins

%clean
rm -rf %{buildroot}

%files -f %{name}-%{version}-coreplugins
%defattr(-, root, root)

%doc doc/the_penguin.txt doc/CREDITS NEWS COPYING AUTHORS COPYRIGHT
%doc README ChangeLog
%doc %{_mandir}/man1/*
%doc %{_mandir}/man3*/*

%dir %{_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/*

%if %{?_with_silc:1}%{!?_with_silc:0}
%files silc
%defattr(-, root, root)

%{_libdir}/gaim/libsilcgaim.*
%endif

%if %{?_with_tcl:1}%{!?_with_tcl:0}
%files tcl
%defattr(-, root, root)

%{_libdir}/gaim/tcl.so
%endif

%files devel
%defattr(-, root, root)

%doc HACKING PROGRAMMING_NOTES
%doc plugins/HOWTO
%doc plugins/tcl/TCL-HOWTO

%attr(755, root, root) %{_libdir}/libgaim-remote.so
%attr(755, root, root) %{_libdir}/libgaim-remote.la
%dir %{_includedir}/gaim
%{_includedir}/gaim/*.h
%{_libdir}/pkgconfig/gaim.pc

%changelog
* Sat Oct  2 2004 Stu Tomlinson <stu@nosnilmot.com>
- If --with tcl or silc are not specified, make sure the plugins don't
  exist to prevent RPM complaining about unpackaged files

* Tue Jun 29 2004 Ethan Blanton <eblanton@cs.ohiou.edu>
- Change Tcl to use --with tcl, the same as SILC, and build a gaim-tcl
  package if specified.

* Thu Jun 24 2004 Mark Doliner <thekingant@users.sourceforge.net>
- Add --with silc rebuild option for compiling a separate gaim-silc
  RPM containing the silc protocol plugin (Stu Tomlinson).

* Wed Jun 23 2004 Ethan Blanton <eblanton@cs.ohiou.edu>
- Moved gaim headers and a pkgconfig configuration file into the
  gaim-devel RPM (Stu Tomlinson).

* Thu Jan 15 2004 Ethan Blanton <eblanton@cs.ohiou.edu>
- Removed the manual strip command, as it seems to be unwarranted if
  the necessary programs are properly installed.  (For me, this was
  elfutils.)

* 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.