irssi/irssi.spec
Ailin Nemui 910c0df5a3 Accepting request 535789 from home:ailin_nemui:branches:server:irc
- update to 1.0.5
  - Fix missing -sasl_method '' in /NETWORK (#718, #719).
  - Fix incorrect restoration of term state when hitting SUSP
    inside screen (#737, #733).
  - Fix out of bounds read when compressing colour
    sequences. Found by Hanno Böck (GL#12, GL!18). CVE-2017-15228
  - Fix use after free condition during a race condition when
    waiting on channel sync during a rejoin (GL#13, GL!19).
    CVE-2017-15227
  - Fix null pointer dereference when parsing certain malformed
    CTCP DCC messages (GL#14, GL!20).
    CVE-2017-15721
  - Fix crash due to null pointer dereference when failing to
    split messages due to overlong nick or target (GL#15, GL!21).
    CVE-2017-15723
  - Fix out of bounds read when trying to skip a safe channel ID
    without verifying that the ID is long enough (GL#16, GL!22).
    CVE-2017-15722
  - Fix return of random memory when inet_ntop failed (#769).
  - Minor statusbar help update. By Robert Bisewski (#758,
    #763).

OBS-URL: https://build.opensuse.org/request/show/535789
OBS-URL: https://build.opensuse.org/package/show/server:irc/irssi?expand=0&rev=93
2017-10-22 14:36:47 +00:00

149 lines
4.5 KiB
RPMSpec

#
# spec file for package irssi
#
# Copyright (c) 2017 SUSE LINUX 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/
#
%bcond_with socks
Name: irssi
Version: 1.0.5
Release: 0
#
Summary: Modular, Secure, and Well Designed IRC Client
License: GPL-2.0+
Group: Productivity/Networking/IRC
#
Url: http://www.irssi.org
Source: https://github.com/irssi/irssi/releases/download/%{version}/irssi-%{version}.tar.xz
Source1: irssi.desktop
Source2: irssi.png
Source3: https://github.com/irssi/irssi/releases/download/%{version}/irssi-%{version}.tar.xz.asc
# https://sks-keyservers.net/pks/lookup?op=get&search=0x00CCB587DDBEF0E1
Source4: %{name}.keyring
Source99: irssi-rpmlintrc
# PATCH-FIX-OPENSUSE irssi-0.8.16_missing_prototype_warnings.patch
Patch1: irssi-0.8.16_missing_prototype_warnings.patch
# PATCH-FEATURE-UPSTREAM regex-patch-653.patch github#653 ailin.nemui@gmail.com -- one of proposed regex utf8 workarounds
Patch2: regex-patch-653.patch
BuildRequires: glib2-devel
BuildRequires: ncurses-devel
BuildRequires: openssl-devel
BuildRequires: perl
BuildRequires: perl-macros
BuildRequires: pkgconfig
BuildRequires: xz
Conflicts: %{name}-snapshot
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%{perl_requires}
%{?libperl_requires}
%if %{with socks}
BuildRequires: dante-devel
%endif
%if 0%{?suse_version}
BuildRequires: update-desktop-files
%endif
%description
Irssi is a modular IRC client for UNIX that currently only has a text
mode user interface. However, 80-90% of the code is not text mode
specific, so other UIs could be created easily. Also, Irssi is not
really even IRC specific anymore. There are already working SILC and
ICB modules available. Support for other protocols, like ICQ and
Jabber, could be added some day, too.
It is the code that separates Irssi from ircII, BitchX, epic, and the
rest of the text clients. It is not using the ircII code.
%package devel
#
Summary: Development package for irssi
Group: Development/Languages/C and C++
Requires: %{name} = %{version}
Requires: dante-devel
%description devel
This package contains the development files for irssi. It allows to
compile plugins for the irssi package.
%prep
%setup -q
%patch1
%patch2
%build
export CFLAGS="%{optflags} -fno-strict-aliasing -DGLIB_DISABLE_DEPRECATION_WARNINGS"
export CFLAGS="$CFLAGS -fPIE"
export LDFLAGS="-pie"
%configure \
--disable-silent-rules \
--enable-ipv6 \
--with-bot \
--with-proxy \
%if %{with socks}
--with-socks \
%endif
--enable-dane \
--enable-ssl \
--with-ncurses \
--with-terminfo \
--enable-true-color \
--with-perl=yes \
--with-perl-lib=vendor
make %{?_smp_mflags} all V=1
%install
make %{?_smp_mflags} DESTDIR=%{buildroot} install docdir=%{_docdir}/%{name} V=1
%perl_process_packlist
rm %{buildroot}%{_libdir}/irssi/modules/libirc_proxy.{a,la}
install -D -m0644 "%{SOURCE1}" "%{buildroot}%{_datadir}/applications/%{name}.desktop"
install -D -m0644 "%{SOURCE2}" "%{buildroot}%{_datadir}/pixmaps/irssi.png"
%if 0%{?suse_version}
%suse_update_desktop_file -r "%{name}" Network IRCClient
%endif
%files
%defattr(-,root,root)
%config(noreplace) %{_sysconfdir}/irssi.conf
%{_bindir}/botti
%{_bindir}/irssi
# modules
%dir %{_libdir}/irssi
%dir %{_libdir}/irssi/modules
%{_libdir}/irssi/modules/*.so*
# scripts & themes
%dir %{_datadir}/%{name}
%{_datadir}/%{name}/*
#perl
%dir %{perl_vendorarch}/Irssi
%{perl_vendorarch}/Irssi.pm
%{perl_vendorarch}/Irssi/*
%{perl_vendorarch}/auto/Irssi
# docs
%dir %{_defaultdocdir}/irssi
%docdir %{_defaultdocdir}/irssi/
%doc %{_defaultdocdir}/irssi/*
%{_mandir}/man1/*.1%{ext_man}
%{_datadir}/applications/%{name}.desktop
%{_datadir}/pixmaps/irssi.png
%files devel
%defattr(-,root,root)
%{_includedir}/irssi/
%changelog