diff options
Diffstat (limited to 'share/misc')
-rw-r--r-- | share/misc/hexchat.spec | 141 |
1 files changed, 141 insertions, 0 deletions
diff --git a/share/misc/hexchat.spec b/share/misc/hexchat.spec new file mode 100644 index 00000000..f66719d2 --- /dev/null +++ b/share/misc/hexchat.spec @@ -0,0 +1,141 @@ +%define _default_patch_fuzz 2 +%define gconf_version 2.14 + +Summary: A popular and easy to use graphical IRC (chat) client +Name: hexchat +Version: 2.8.8 +Release: 0%{?dist} +Epoch: 1 +Group: Applications/Internet +License: GPLv2+ +URL: http://www.hexchat.org +Source: https://github.com/downloads/hexchat/hexchat/hexchat-%{version}.tar.xz +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) + +# Patches 0-9 reserved for official xchat.org patches + +BuildRequires: perl perl(ExtUtils::Embed) python-devel openssl-devel pkgconfig, tcl-devel +BuildRequires: GConf2-devel +BuildRequires: dbus-devel >= 0.60, dbus-glib-devel >= 0.60 +BuildRequires: glib2-devel >= 2.10.0, gtk2-devel >= 2.10.0, bison >= 1.35 +BuildRequires: gettext /bin/sed +BuildRequires: libtool +BuildRequires: libsexy-devel +BuildRequires: desktop-file-utils >= 0.10 +# For gconftool-2: +Requires(post): GConf2 >= %{gconf_version} +Requires(preun): GConf2 >= %{gconf_version} + +# Ensure that a compatible libperl is installed +Requires: perl(:MODULE_COMPAT_%(eval "`%{__perl} -V:version`"; echo $version)) + +Provides: hexchat-perl = %{epoch}:%{version}-%{release} +Obsoletes: hexchat-perl < %{epoch}:%{version}-%{release} +Provides: hexchat-python = %{epoch}:%{version}-%{release} +Obsoletes: hexchat-python < %{epoch}:%{version}-%{release} + +%description +HexChat is an easy to use graphical IRC chat client for the X Window System. +It allows you to join multiple IRC channels (chat rooms) at the same time, +talk publicly, private one-on-one conversations etc. Even file transfers +are possible. + +This includes the plugins to run the Perl and Python scripts. + +%package tcl +Summary: Tcl script plugin for HexChat +Group: Applications/Internet +Requires: %{name} = %{epoch}:%{version}-%{release} +%description tcl +This package contains the HexChat plugin providing the Tcl scripting interface. + +%prep +%setup -q + +%build +# Remove CVS files from source dirs so they're not installed into doc dirs. +find . -name CVS -type d | xargs rm -rf + +export CFLAGS="$RPM_OPT_FLAGS $(perl -MExtUtils::Embed -e ccopts)" +export LDFLAGS=$(perl -MExtUtils::Embed -e ldopts) + +%configure --disable-textfe \ + --enable-gtkfe \ + --enable-openssl \ + --enable-python \ + --enable-tcl=%{_libdir} \ + --enable-ipv6 \ + --enable-spell=libsexy \ + --enable-shm + +# gtkspell breaks Input Method commit with ENTER + +make %{?_smp_mflags} + + +%install +%{__rm} -rf $RPM_BUILD_ROOT +%{__make} install DESTDIR=$RPM_BUILD_ROOT GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=1 + +# Get rid of libtool archives +%{__rm} -f $RPM_BUILD_ROOT%{_libdir}/hexchat/plugins/*.la + +# Install the .desktop file properly +%{__rm} -f $RPM_BUILD_ROOT%{_datadir}/applications/hexchat.desktop +desktop-file-install --vendor="" \ + --dir $RPM_BUILD_ROOT%{_datadir}/applications \ + --add-category=IRCClient \ + --add-category=GTK hexchat.desktop + +%find_lang %{name} + +# do not Provide plugins .so +%define _use_internal_dependency_generator 0 +%{__cat} << \EOF > %{name}.prov +#!%{_buildshell} +%{__grep} -v %{_docdir} - | %{__find_provides} $* \ + | %{__sed} '/\.so\(()(64bit)\)\?$/d' +EOF +%define __find_provides %{_builddir}/%{name}-%{version}/%{name}.prov +%{__chmod} +x %{__find_provides} + + +%post +# Install schema +export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` +gconftool-2 --makefile-install-rule /etc/gconf/schemas/apps_hexchat_url_handler.schemas >& /dev/null || : + + +%pre +if [ "$1" -gt 1 ]; then + export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` + gconftool-2 --makefile-uninstall-rule /etc/gconf/schemas/apps_hexchat_url_handler.schemas >& /dev/null || : +fi + +%preun +if [ "$1" -eq 0 ]; then + export GCONF_CONFIG_SOURCE=`gconftool-2 --get-default-source` + gconftool-2 --makefile-uninstall-rule /etc/gconf/schemas/apps_hexchat_url_handler.schemas >& /dev/null || : +fi + +%clean +%{__rm} -rf $RPM_BUILD_ROOT + +%files -f %{name}.lang +%defattr(-,root,root) +%doc README ChangeLog +%doc plugins/plugin20.html plugins/perl/hexchat-perl.html +%{_bindir}/hexchat +%dir %{_libdir}/hexchat +%dir %{_libdir}/hexchat/plugins +%{_libdir}/hexchat/plugins/perl.so +%{_libdir}/hexchat/plugins/python.so +%{_datadir}/applications/hexchat.desktop +%{_datadir}/pixmaps/* +%{_sysconfdir}/gconf/schemas/apps_hexchat_url_handler.schemas +%{_datadir}/dbus-1/services/org.hexchat.service.service + +%files tcl +%defattr(-,root,root) +%{_libdir}/hexchat/plugins/tcl.so + |