SHA256
1
0
forked from pool/pidgin
pidgin/pidgin.spec
OBS User autobuild b1c61312ae Accepting request 36229 from GNOME:Apps
Copy from GNOME:Apps/pidgin based on submit request 36229 from user vuntz

OBS-URL: https://build.opensuse.org/request/show/36229
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/pidgin?expand=0&rev=52
2010-04-01 01:31:23 +00:00

540 lines
17 KiB
RPMSpec
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#
# spec file for package pidgin (Version 2.6.6)
#
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# 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 http://bugs.opensuse.org/
#
# norootforbuild
Name: pidgin
Summary: GTK+-Based Multiprotocol Instant Messaging Client
Version: 2.6.6
Release: 2
License: GPLv2+
Group: Productivity/Networking/Instant Messenger
Url: http://www.pidgin.im/
Source: http://downloads.sourceforge.net/pidgin/%{name}-%{version}.tar.bz2
Source1: pidgin-NLD-smiley-theme.tar.bz2
Source2: pidgin-Tango-smiley-theme.tar.bz2
Patch1: pidgin-gnome-keyring.patch
# PATCH-NEEDS-REBASE
Patch2: pidgin-nonblock-aim.patch
Patch3: pidgin-nonblock-common.patch
Patch4: pidgin-nonblock-gwim.patch
Patch5: pidgin-nonblock-common2.patch
Patch9: includes.patch
# PATCH-FIX-UPSTREAM: pidgin-directconn-argfix.patch
Patch11: pidgin-directconn-argfix.patch
Patch12: pidgin-dbus-invalid-gpointer.patch
# PATCH-FIX-OPENSUSE pidgin-browser-default.patch bnc472219 sbrabec@suse.cz - Use xdg-open as default browser.
Patch13: pidgin-browser-default.patch
Patch15: pidgin-bnc550170-qq-2008only.patch
# PATCH-FIX-UPSTREAM pidgin-oscar-portability.patch dimstar@opensuse.org -- Fix portability issue to x86_64
Patch16: pidgin-oscar-portability.patch
# PATCH-FIX-UPSTREAM pidgin-oscar-clientlogin.patch deb#571413 -- Fix connections to Oscar network.
Patch17: pidgin-oscar-clientlogin.patch
# Can use external libzephyr
BuildRequires: cyrus-sasl-devel
BuildRequires: dbus-1-devel
BuildRequires: doxygen
BuildRequires: evolution-data-server-devel
%if %suse_version > 1110 || 0%{?opensuse_bs_prj_GNOME_Factory}
BuildRequires: farsight2-devel
%endif
%if %suse_version < 1020
BuildRequires: gnome-icon-theme
%endif
BuildRequires: graphviz
BuildRequires: gtk-doc
BuildRequires: gtkspell-devel
BuildRequires: intltool
BuildRequires: libidn-devel
%if %suse_version > 1030 || 0%{?opensuse_bs_prj_GNOME_Factory}
BuildRequires: libgadu-devel
%endif
# There is no way to discriminate openSUSE 11.1 and SLE11. That is why we recognize openSUSE 11.1 as SLE.
# Ugly, but there is no other way. (bnc#566286#c17).
%if %suse_version == 1110
%define building_for_sle_ge_11 1
%else
%define building_for_sle_ge_11 0
%endif
# gnome-keyring support summary (bnc#566286):
# SLE10, 11.0, 11.1: patch present and broken (does nothing)
# SLE11: patch present and active (bnc#569025)
# 11.2: patch was present and active removed by an opdate
# 11.3 and above: patch not applied
# For openSUSE, it's better to avoid this patch:
# + does not work well outside GNOME
# - passwords are stored in readable form
%if 0%{?suse_version} > 1120
%if 0%{?building_for_sle_ge_11}
BuildRequires: libgnome-keyring-devel
%endif
%else
%if 0%{?building_for_sle_ge_11}
BuildRequires: gnome-keyring-devel
%endif
%endif
BuildRequires: libstdc++-devel
BuildRequires: libxml2-devel
BuildRequires: libxslt
%if %suse_version >= 1030
# Versions in older SUSE products are too old:
BuildRequires: meanwhile-devel
%endif
BuildRequires: mono-devel
BuildRequires: mozilla-nspr-devel
BuildRequires: mozilla-nss-devel
BuildRequires: ncurses-devel
%if %suse_version > 1020
BuildRequires: openssl-certs
%endif
%if %suse_version > 1030
%if %suse_version < 1120
# missing in silc-toolkit-devel:
BuildRequires: pam-devel
%endif
%endif
BuildRequires: python
BuildRequires: startup-notification-devel
BuildRequires: tk-devel
%if %suse_version > 1110
BuildRequires: translation-update-upstream
%endif
BuildRequires: update-desktop-files
BuildRequires: NetworkManager-devel
%if %suse_version > 1030 || 0%{?opensuse_bs_prj_GNOME_Factory}
BuildRequires: gstreamer-0_10-devel
BuildRequires: gstreamer-0_10-plugins-base-devel
%else
BuildRequires: gstreamer010-devel
BuildRequires: gstreamer010-plugins-base-devel
%endif
%if %suse_version > 1020
BuildRequires: dbus-1-glib-devel
BuildRequires: silc-toolkit-devel
%else
BuildRequires: dbus-1-devel dbus-1-glib
%endif
%if %suse_version > 1020
BuildRequires: fdupes
%endif
BuildRequires: libnotify-devel
%if %suse_version > 1030 || 0%{?opensuse_bs_prj_GNOME_Factory}
BuildRequires: libavahi-glib-devel
%else
BuildRequires: avahi-devel avahi-glib
%endif
%if %suse_version > 1030
Requires: libpurple-lang = %{version}
%endif
%if %suse_version > 1020
Requires: openssl-certs
%endif
Requires: perl-base = %{perl_version}
BuildRoot: %{_tmppath}/%{name}-%{version}-build
# Existed before 10.3 and SLED10 before SP2:
Obsoletes: gaim <= 1.5.0
# Has never been in SuSE:
Obsoletes: gaim-applet
# Was only in the Build Service after 10.2:
Obsoletes: gaim-unstable < 2.0.0
Provides: gaim
%if %suse_version <= 1021
%define _prefix /opt/gnome
%define _libdir %{_prefix}/%{_lib}
%define _datadir %{_prefix}/share
%define _sysconfdir /etc%_prefix
BuildRequires: gconf2-rpm-macros
%endif
%gconf_schemas_prereq
%description
Pidgin allows you to talk to anyone using a variety of messaging
protocols including AIM, MSN, Yahoo!, Jabber, Bonjour, Gadu-Gadu, ICQ,
IRC, Novell Groupwise, QQ, Lotus Sametime, SILC, Simple 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.
Pidgin supports many common features of other clients, as well as many
unique features, such as Perl scripting, TCL scripting and C plugins.
Pidgin is not affiliated with or endorsed by America Online, Inc.,
Microsoft Corporation, Yahoo! Inc., or ICQ Inc.
%package devel
License: GPLv2+
#'
Summary: Development Headers, Documentation, and Libraries for Pidgin
Group: Productivity/Networking/Instant Messenger
Requires: %{name} = %{version} glib2-devel gtk2-devel libpurple-devel = %{version}
%package -n libpurple
License: GPLv2+
Summary: Library for IM Clients Like Pidgin and Finch
Group: Productivity/Networking/Instant Messenger
# Not really required, but standard Jabber accounts require it, if compiled with SASL support.
Requires: cyrus-sasl-digestmd5 cyrus-sasl-plain
%if %suse_version > 1030
Requires: libpurple-lang = %{version}
%endif
# Needed for purple-url-handler:
Requires: dbus-1-python
Requires: perl = %{perl_version}
%if %suse_version > 1020
Requires: openssl-certs
%endif
%package -n libpurple-devel
License: GPLv2+
Summary: Development Headers, Documentation, and Libraries for libpurple
Group: Productivity/Networking/Instant Messenger
Requires: libpurple = %{version} NetworkManager-devel NetworkManager-glib glib2-devel libxml2-devel
%if 0%{?suse_version} > 1120
%if 0%{?building_for_sle_ge_11}
Requires: libgnome-keyring-devel
%endif
%else
%if 0%{?building_for_sle_ge_11}
Requires: gnome-keyring-devel
%endif
%endif
Requires: pkg-config
Provides: gaim-devel = %{version}
Obsoletes: gaim-devel <= 1.5.0
Provides: gaim-unstable-devel = %{version}
Obsoletes: gaim-unstable-devel < 2.0.0
%if %suse_version >= 1030
%package -n libpurple-meanwhile
License: GPLv2+
Summary: Lotus Sametime Plugin for Pidgin Using the Meanwhile Library
Group: Productivity/Networking/Instant Messenger
Requires: libpurple = %{version}
%endif
%package -n libpurple-mono
License: GPLv2+
Summary: Mono .NET Plugin Support for Pidgin
Group: Productivity/Networking/Instant Messenger
Requires: libpurple = %{version}
%package -n libpurple-tcl
License: GPLv2+
Summary: TCL Plugin Support for Pidgin
Group: Productivity/Networking/Instant Messenger
Requires: libpurple = %{version}
Supplements: packageand(libpurple:tcl)
%package -n finch
License: GPLv2+
Summary: Text-Based User Interface for Pidgin Instant Messaging Client
Group: Productivity/Networking/Instant Messenger
Requires: libpurple = %{version}
Obsoletes: gaim-unstable-text < 2.0.0
Provides: gaim-unstable-text
%package -n finch-devel
License: GPLv2+
Summary: Headers etc. for finch Stuffs
Group: Productivity/Networking/Instant Messenger
Requires: finch = %{version} glib2-devel glibc-devel libpurple-devel = %{version} ncurses-devel
Requires: pkg-config
Obsoletes: gaim-unstable-text-devel
%description devel
The pidgin-devel package contains the header files, developer
documentation, and libraries required for development of Pidgin scripts
and plugins.
%description -n libpurple
libpurple contains the core IM support for IM clients such as Pidgin
and Finch.
libpurple supports a variety of messaging protocols including AIM, MSN,
Yahoo!, Jabber, Bonjour, Gadu-Gadu, ICQ, IRC, Novell Groupwise, QQ,
Lotus Sametime, SILC, Simple and Zephyr.
%description -n libpurple-devel
The libpurple-devel package contains the header files, developer
documentation, and libraries required for development of libpurple
based instant messaging clients or plugins for any libpurple based
client.
%if %suse_version >= 1030
%description -n libpurple-meanwhile
Lotus Sametime plugin for Pidgin using the Meanwhile library.
%endif
%description -n libpurple-mono
Mono plugin loader for Pidgin. This package will allow you to write or
use Pidgin plugins written in the .NET programming language.
%description -n libpurple-tcl
TCL plugin loader for Pidgin. This package will allow you to write or
use Pidgin plugins written in the TCL programming language.
%description -n finch
A text-based user interface for using libpurple. This can be run from
a standard text console or from a terminal within X Windows. It uses
ncurses and our homegrown gnt library for drawing windows and text.
%description -n finch-devel
The finch-devel package contains the header files, developer
documentation, and libraries required for development of Finch scripts
and plugins.
%if %suse_version > 1030
%lang_package -n libpurple
%endif
%prep
%setup -q -a1 -a2
%if %suse_version > 1110
translation-update-upstream
%endif
%if 0%{?building_for_sle_ge_11}
%patch1 -p1
%endif
# FIXME: Port this patch:
#%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch9 -p1
%patch11 -p1
%patch12
%patch13
%patch15 -p0
%patch16 -p1
%patch17 -p1
# Change Myanmar/Myanmar to Myanmar:
rename my_MM my po/my_MM.*
%{__sed} -i "/^ALL_LINGUAS/s/ my_MM / my /" configure.ac
%build
export CFLAGS="$RPM_OPT_FLAGS -fstack-protector -fPIC"
export CXXFLAGS="$RPM_OPT_FLAGS -fstack-protector -fPIC"
export FFLAGS="$RPM_OPT_FLAGS -fstack-protector -fPIC"
export LDFLAGS="-pie"
ACLOCAL="aclocal -I m4macros" autoreconf -f -i
intltoolize --force
%configure\
--disable-static\
%if %suse_version < 1120
--disable-vv\
%endif
--enable-plugins\
--enable-cyrus-sasl\
--enable-dbus\
%if %suse_version > 1010
--enable-mono\
%else
--disable-mono\
%endif
--enable-gstreamer\
%if 0%{?building_for_sle_ge_11}
--enable-gnome-keyring\
%endif
--enable-nm\
--enable-dbus\
--enable-devhelp\
%if %suse_version < 1030
--disable-meanwhile \
%endif
--with-tclconfig=%{_libdir}\
--with-tkconfig=%{_libdir}\
--with-system-ssl-certs=/etc/ssl/certs
# Mono bindings sometimes fail with parallel build enabled in pidgin-2.5.5:
#%{__make} %{?jobs:-j%jobs}
%{__make}
%install
%{makeinstall}
%{perl_process_packlist}
%suse_update_desktop_file -N Pidgin -G "Instant Messenger" %{name}
# Provide only upstream emotes in openSUSE >= 11.2 and SLE > 11 (see bnc#569271#c1):
%if %suse_version < 1120
cp -a NLD $RPM_BUILD_ROOT%{_prefix}/share/pixmaps/pidgin/emotes
cp -a Tango $RPM_BUILD_ROOT%{_prefix}/share/pixmaps/pidgin/emotes
%endif
%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la $RPM_BUILD_ROOT%{_libdir}/*/*.la
%{__rm} -f $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
%{__rm} -f $RPM_BUILD_ROOT%{_prefix}/lib/perl*/*/perllocal.pod
# FIXME: Should be nonversioned name:
test -L $RPM_BUILD_ROOT%{_libdir}/purple-2/liboscar.so && %{__rm} $RPM_BUILD_ROOT%{_libdir}/purple-2/liboscar.so
test -L $RPM_BUILD_ROOT%{_libdir}/purple-2/libjabber.so && %{__rm} $RPM_BUILD_ROOT%{_libdir}/purple-2/libjabber.so
test -L $RPM_BUILD_ROOT%{_libdir}/purple-2/libymsg.so && %{__rm} $RPM_BUILD_ROOT%{_libdir}/purple-2/libymsg.so
find $RPM_BUILD_ROOT -type f -name .packlist -exec %{__rm} {} ';'
find $RPM_BUILD_ROOT -type f -name '*.bs' -empty -exec %{__rm} {} ';'
%find_lang %{name}
find $RPM_BUILD_ROOT%{_libdir}/purple-2 -xtype f -print | \
%{__sed} "s@^$RPM_BUILD_ROOT@@g" | \
%{__grep} -v /libsametime.so | \
%{__grep} -v /mono.so | \
%{__grep} -v /tcl.so | \
%{__grep} -v ".dll$" > %{name}-%{version}-purpleplugins
find $RPM_BUILD_ROOT%{_libdir}/pidgin -maxdepth 1 -xtype f -print | \
%{__sed} "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-pidginplugins
find $RPM_BUILD_ROOT%{_libdir}/finch -maxdepth 1 -xtype f -print | \
%{__sed} "s@^$RPM_BUILD_ROOT@@g" > %{name}-%{version}-finchplugins
%find_gconf_schemas
%{__cat} %{name}.schemas_list %{name}-%{version}-pidginplugins >%{name}.lst
%if %suse_version <= 1030
%{__cat} %{name}.lang >>%{name}-%{version}-purpleplugins
%endif
%if %suse_version > 1020
%fdupes $RPM_BUILD_ROOT
%endif
%clean
%{__rm} -rf $RPM_BUILD_ROOT
%pre -f %{name}.schemas_pre
%posttrans -f %{name}.schemas_posttrans
%preun -f %{name}.schemas_preun
%post -n libpurple -p /sbin/ldconfig
%postun -n libpurple -p /sbin/ldconfig
%post -n finch -p /sbin/ldconfig
%postun -n finch -p /sbin/ldconfig
%files -f %{name}.lst
%defattr(-,root,root)
%doc AUTHORS COPYING COPYRIGHT ChangeLog NEWS README README.MTN doc/the_penguin.txt
%dir %{_libdir}/pidgin
%{_libdir}/pidgin/perl
%{_bindir}/pidgin
%{_datadir}/pixmaps/pidgin
%{_datadir}/icons/hicolor/*/apps/pidgin.*
%{_datadir}/applications/*.desktop
%{_datadir}/sounds/purple
%doc %{_mandir}/man1/pidgin.*
%if %suse_version < 1020
/var/adm/perl-modules/pidgin
# man3 is not part of gnome-filesystem
%doc %dir %{_mandir}/man3
%endif
%files devel
%defattr(-,root,root)
%{_includedir}/pidgin
%{_libdir}/pkgconfig/pidgin.pc
%doc %{_mandir}/man3/Pidgin.*
%files -n libpurple -f %{name}-%{version}-purpleplugins
%defattr(-, root, root)
%doc libpurple/purple-notifications-example
%{_bindir}/purple-client-example
%{_bindir}/purple-remote
%{_bindir}/purple-send
%{_bindir}/purple-send-async
%{_bindir}/purple-url-handler
%{_datadir}/purple
%{_libdir}/libpurple.so.*
%{_libdir}/libpurple-client.so.*
%dir %{_libdir}/purple-2
%{_libdir}/purple-2/perl
%if %suse_version > 1030
%files -n libpurple-lang -f %{name}.lang
%endif
%defattr(-, root, root)
# These locales are not yet included in respective products:
%if %suse_version <= 1120
%dir %{_datadir}/locale/ms_MY
%dir %{_datadir}/locale/ms_MY/LC_MESSAGES
%endif
%if %suse_version < 1110
%dir %{_datadir}/locale/sr@latin
%dir %{_datadir}/locale/sr@latin/LC_MESSAGES
%endif
%if %suse_version < 1020
%dir %{_datadir}/locale/be@latin
%dir %{_datadir}/locale/be@latin/LC_MESSAGES
%dir %{_datadir}/locale/ca@valencia
%dir %{_datadir}/locale/ca@valencia/LC_MESSAGES
%dir %{_datadir}/locale/my
%dir %{_datadir}/locale/my/LC_MESSAGES
%dir %{_datadir}/locale/oc
%dir %{_datadir}/locale/oc/LC_MESSAGES
%dir %{_datadir}/locale/ps
%dir %{_datadir}/locale/ps/LC_MESSAGES
%dir %{_datadir}/locale/si
%dir %{_datadir}/locale/si/LC_MESSAGES
%dir %{_datadir}/locale/sw
%dir %{_datadir}/locale/sw/LC_MESSAGES
%dir %{_datadir}/locale/ur
%dir %{_datadir}/locale/ur/LC_MESSAGES
%endif
%if %suse_version >= 1030
%files -n libpurple-meanwhile
%defattr(-, root, root)
%{_libdir}/purple-2/libsametime.*
%endif
%ifnarch ppc64
%if %suse_version > 1010
%files -n libpurple-mono
%defattr(-, root, root)
%{_libdir}/purple-2/mono.so
%{_libdir}/purple-2/*.dll
%endif
%endif
%files -n libpurple-tcl
%defattr(-, root, root)
%{_libdir}/purple-2/tcl.so
%files -n libpurple-devel
%defattr(-, root, root)
%doc ChangeLog.API HACKING PLUGIN_HOWTO
%{_includedir}/libpurple
%{_datadir}/aclocal/purple.m4
%{_libdir}/libpurple.so
%{_libdir}/libpurple-client.so
%{_libdir}/pkgconfig/purple.pc
%doc %{_mandir}/man3/Purple.*
%if %suse_version < 1020
# man3 is not part of gnome-filesystem
%doc %dir %{_mandir}/man3
%endif
%files -n finch -f %{name}-%{version}-finchplugins
%defattr(-, root, root)
%{_bindir}/finch
%{_libdir}/libgnt.so.*
%{_libdir}/gnt
%dir %{_libdir}/finch
%doc %{_mandir}/man1/finch.*
%files -n finch-devel
%defattr(-, root, root)
%{_includedir}/finch
%{_includedir}/gnt
%{_libdir}/libgnt.so
%{_libdir}/pkgconfig/finch.pc
%{_libdir}/pkgconfig/gnt.pc
%changelog