#
# Conditional build:
%bcond_without perl # without perl support
-%bcond_without ipv6 # without IPv6 support
-%bcond_without ssl # without SSL support
-%bcond_with dynamic # without dynamic libraries
-#
-#define _snap 20050301
-#define _rc rc5
-%define _idea_ver 0.1.46
+%bcond_without dynamic # without dynamic libraries
+%bcond_without xmpp # without plugin
+
+%define no_install_post_check_so 1
+
+%define idea_ver 0.1.46
+%define xmpp_ver 0.53
+%define irssi_perl_version 20170103
%{?with_perl:%include /usr/lib/rpm/macros.perl}
Summary: Irssi is a IRC client
-Summary(fr): Irssi est un client IRC
-Summary(pl): Irssi - wygodny w u¿yciu klient IRC
+Summary(fr.UTF-8): Irssi est un client IRC
+Summary(hu.UTF-8): Irssi egy IRC kliens
+Summary(pl.UTF-8): Irssi - wygodny w użyciu klient IRC
Name: irssi
-Version: 0.8.10
-Release: 0.1
+Version: 1.0.0
+Release: 2
License: GPL
Group: Applications/Communications
-#Source0: http://irssi.org/files/snapshots/%{name}-%{_snap}.tar.gz
-Source0: http://irssi.org/files/%{name}-%{version}.tar.gz
-# Source0-md5: ed29412e86e1d5fbb71d24ae02edd462
+Source0: https://github.com/irssi/irssi/releases/download/%{version}/%{name}-%{version}.tar.gz
+# Source0-md5: 0c702b85dbf8b45df0e618b5f8b06d31
Source1: %{name}.desktop
Source2: %{name}.png
-Source3: http://real.irssi.org/files/plugins/idea/%{name}-idea-%{_idea_ver}.tar.gz
+# NXDOMAIN
+#Source3: http://real.irssi.org/files/plugins/idea/%{name}-idea-%{idea_ver}.tar.gz
+Source3: %{name}-idea-%{idea_ver}.tar.gz
# Source3-md5: c326efe317b8f67593a3cd46d5557280
+Source4: http://cybione.org/~irssi-xmpp/files/irssi-xmpp-%{xmpp_ver}.tar.gz
+# Source4-md5: 8c9906e4efbd6f3c8bd8420f0ac8fd91
Patch0: %{name}-dcc-send-limit.patch
-Patch1: %{name}-tinfo.patch
-Patch2: %{name}-home_etc.patch
-Patch3: %{name}.conf.patch
-Patch4: %{name}-idea-listlen.patch
-Patch5: %{name}-gcc4.patch
-Patch6: %{name}-dynamic.patch
+Patch1: %{name}-home_etc.patch
+Patch2: %{name}-idea-listlen.patch
+Patch3: %{name}-gcc4.patch
+Patch4: %{name}-dynamic.patch
+Patch5: %{name}-invalid_free.patch
+Patch6: %{name}-color_support_for_gui_entry.patch
+Patch7: %{name}-libs-nopoison.patch
+Patch8: am.patch
+Patch9: %{name}-idea-glib.patch
+Patch10: %{name}-xmpp.patch
URL: http://www.irssi.org/
BuildRequires: autoconf
BuildRequires: automake
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
+# for idea only
BuildRequires: glib-devel
-BuildRequires: glib2-devel >= 2.1.0
+BuildRequires: glib2-devel >= 2.24.0
BuildRequires: libtool
+%{?with_xmpp:BuildRequires: loudmouth-devel}
BuildRequires: ncurses-devel >= 5.0
-%{?with_ssl:BuildRequires: openssl-devel >= 0.9.7d}
+BuildRequires: openssl-devel >= 0.9.7d
%{?with_perl:BuildRequires: perl-devel >= 1:5.8.4}
BuildRequires: pkgconfig
-Requires: perl(DynaLoader) = %(%{__perl} -MDynaLoader -e 'print DynaLoader->VERSION')
-Obsoletes: %{name}-speech
-Obsoletes: %{name}-sql
+BuildRequires: popt-devel
+%{?with_perl:BuildRequires: rpm-perlprov}
+BuildRequires: rpmbuild(macros) >= 1.315
+BuildRequires: sed >= 4.0
+Requires: glib2 >= 2.24.0
+Provides: perl(Irssi) = %{irssi_perl_version}
+Obsoletes: irssi-speech
+Obsoletes: irssi-sql
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
+%if %{with dynamic}
+%define filterout_ld -Wl,--as-needed
+%endif
+
%description
Irssi is a textUI IRC client with IPv6 support.
-%description -l fr
+%description -l fr.UTF-8
Irssi est client IRC.
-%description -l pl
+%description -l hu.UTF-8
+Irssi egy szöveges felületű IRC kliens IPv6 támogatással.
+
+%description -l pl.UTF-8
Irssi jest tekstowym klientem IRC ze wsparciem dla IPv6.
%package plugin-idea
Summary: Irssi plugin IDEA crypt
-Summary(pl): Wtyczka do irssi do szyfrowania IDEA
+Summary(hu.UTF-8): Irssi IDEA plugin
+Summary(pl.UTF-8): Wtyczka do irssi do szyfrowania IDEA
Group: Applications/Communications
-Requires: %{name} = %{version}
+Requires: %{name} = %{version}-%{release}
+Requires: glib >= 1:1.2.10-13
%description plugin-idea
This package contains IDEA Crypt plugin for Irssi.
-%description plugin-idea
-Ten pakiet zawiera wtyczkê do Irssi z szyfrowaniem IDEA.
+%description plugin-idea -l hu.UTF-8
+Ez a csomag tartalmazza az IDEA titkosítási plugint Irssi-hez.
+
+%description plugin-idea -l pl.UTF-8
+Ten pakiet zawiera wtyczkę do Irssi z szyfrowaniem IDEA.
+
+%package plugin-xmpp
+Summary: Irssi XMPP support plugin
+Summary(pl.UTF-8): Wtyczka do irssi do obsługi XMPP
+Group: Applications/Communications
+Requires: %{name} = %{version}-%{release}
+
+%description plugin-xmpp
+This package contains XMPP support plugin for Irssi.
+
+%description plugin-xmpp -l pl.UTF-8
+Ten pakiet zawiera wtyczkę do Irssi z obsługą XMPP.
%prep
-%setup -q -a3
+%setup -q -a3 -a4
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
-%patch4 -p1
-%patch5 -p1
%if %{with dynamic}
-%patch6 -p1
+%patch4 -p1
%endif
+%patch5 -p1
+%patch6 -p0
+%patch7 -p1
+
+echo 'AC_DEFUN([AM_PATH_GLIB],[:])' > glib1.m4
+
+mv irssi-idea{-%{idea_ver},}
+mv irssi-xmpp{-%{xmpp_ver},}
+%patch8 -p1
+%patch9 -p0
+%patch10 -p0
+
+# hack
+%{__sed} -i -e 's#\./libtool#%{_bindir}/libtool#g' 'configure.ac'
%build
-rm -f missing
+ver=$(awk '/IRSSI_VERSION_DATE/{print $3}' irssi-version.h)
+if [ "$ver" != "%{irssi_perl_version}" ]; then
+ : update irssi_perl_version to $ver
+ exit 1
+fi
+
%{__libtoolize}
%{__aclocal} -I .
%{__autoconf}
%{__automake}
%configure \
+ --disable-silent-rules \
--without-socks \
--with-bot \
--with-textui \
--with-proxy \
- --with-terminfo \
--with-modules \
%{?with_perl:--with-perl=yes} \
%{?with_perl:--with-perl-lib=vendor} \
%{!?with_perl:--with-perl=no} \
- %{?with_ipv6:--enable-ipv6} \
- --enable-nls \
- --%{?with_ssl:en}%{!?with_ssl:dis}able-ssl
+ --enable-true-color
%{__make}
-cd irssi-idea-%{_idea_ver}
-rm -f missing
+# to fool idea configure script
+touch irssi-config
+cd irssi-idea
%{__libtoolize}
%{__aclocal} -I .
%{__autoconf}
%{__automake}
-%configure
-
+%configure \
+ --disable-silent-rules
%{__make}
+cd ..
+export IRSSI_INCLUDE=`pwd`
+cd irssi-xmpp
+%{__make}
%install
rm -rf $RPM_BUILD_ROOT
install -d $RPM_BUILD_ROOT{%{_pixmapsdir},%{_desktopdir}}
-
%{__make} install \
- DESTDIR=$RPM_BUILD_ROOT \
- docdir=%{_datadir}/%{name}-%{version}
+ docdir=%{_datadir}/%{name}-%{version} \
+ DESTDIR=$RPM_BUILD_ROOT
-install %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
+# scripts packaged by irssi-scripts.spec
+rm -f $RPM_BUILD_ROOT%{_datadir}/%{name}/scripts/*
-%{__make} -C irssi-idea-%{_idea_ver} install \
+cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_desktopdir}
+cp -a %{SOURCE2} $RPM_BUILD_ROOT%{_pixmapsdir}
+
+%{__make} -C irssi-idea install \
+ DESTDIR=$RPM_BUILD_ROOT
+
+%{__make} -C irssi-xmpp install \
+ PREFIX=%{_prefix} \
+ IRSSI_LIB=%{_libdir}/%{name} \
DESTDIR=$RPM_BUILD_ROOT
+# -devel?
+rm $RPM_BUILD_ROOT%{_libdir}/lib*.{so,la,a}
+rm -r $RPM_BUILD_ROOT%{_includedir}/irssi
+# cleanup
+rm $RPM_BUILD_ROOT%{_libdir}/irssi/modules/lib*.{la,a}
+%if %{with perl}
+rm $RPM_BUILD_ROOT%{perl_archlib}/perllocal.pod
+rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Irssi/.packlist
+rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Irssi/Irc/.packlist
+rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Irssi/TextUI/.packlist
+rm $RPM_BUILD_ROOT%{perl_vendorarch}/auto/Irssi/UI/.packlist
+%endif
+rm -r $RPM_BUILD_ROOT%{_datadir}/%{name}-%{version}
+
%clean
rm -rf $RPM_BUILD_ROOT
%files
%defattr(644,root,root,755)
-%doc AUTHORS ChangeLog README TODO NEWS docs/*.{txt,html}
-%attr(755,root,root) %{_bindir}/*
+%doc AUTHORS ChangeLog README.md TODO NEWS docs/*.{txt,html}
+%attr(755,root,root) %{_bindir}/botti
+%attr(755,root,root) %{_bindir}/irssi
%dir %{_libdir}/irssi
%dir %{_libdir}/irssi/modules
%attr(755,root,root) %{_libdir}/irssi/modules/libirc_proxy.so*
%if %{with dynamic}
%attr(755,root,root) %{_libdir}/libirssi*.so.*
%endif
-%{_datadir}/%{name}
+%dir %{_datadir}/%{name}
+%dir %{_datadir}/%{name}/scripts
+%{_datadir}/%{name}/help
+%{_datadir}/%{name}/themes
%{_desktopdir}/irssi.desktop
-%{_pixmapsdir}/*
+%{_pixmapsdir}/irssi.png
%{_sysconfdir}/irssi.conf
-%{_mandir}/man1/*
+%{_mandir}/man1/irssi.1*
%if %{with perl}
%{perl_vendorarch}/*.pm
%{perl_vendorarch}/Irssi/*.pm
%dir %{perl_vendorarch}/auto/Irssi
-%{perl_vendorarch}/auto/Irssi/*.bs
%attr(755,root,root) %{perl_vendorarch}/auto/Irssi/*.so
%dir %{perl_vendorarch}/auto/Irssi/Irc
-%{perl_vendorarch}/auto/Irssi/Irc/*.bs
%attr(755,root,root) %{perl_vendorarch}/auto/Irssi/Irc/*.so
%dir %{perl_vendorarch}/auto/Irssi/TextUI
-%{perl_vendorarch}/auto/Irssi/TextUI/*.bs
%attr(755,root,root) %{perl_vendorarch}/auto/Irssi/TextUI/*.so
%dir %{perl_vendorarch}/auto/Irssi/UI
-%{perl_vendorarch}/auto/Irssi/UI/*.bs
%attr(755,root,root) %{perl_vendorarch}/auto/Irssi/UI/*.so
%endif
%files plugin-idea
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/irssi/modules/libidea.so
+
+%files plugin-xmpp
+%defattr(644,root,root,755)
+%doc irssi-xmpp/{docs/*,NEWS,README,TODO}
+%attr(755,root,root) %{_libdir}/irssi/modules/libfe_xmpp.so
+%attr(755,root,root) %{_libdir}/irssi/modules/libtext_xmpp.so
+%attr(755,root,root) %{_libdir}/irssi/modules/libxmpp_core.so