You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

213 lines
4.9 KiB

%global _hardened_build 1
%global with_modperl 1
%global __python %{__python3}
%global with_modpython 1
Name: znc
Version: 1.8.0
Release: 1%{?dist}
Summary: An advanced IRC bouncer
Group: System Environment/Daemons
License: ASL 2.0
URL: http://znc.in
Source0: %{url}/releases/%{name}-%{version}.tar.gz
BuildRequires: automake
BuildRequires: c-ares-devel
BuildRequires: cyrus-sasl-devel
BuildRequires: gcc-c++
BuildRequires: gettext-devel
BuildRequires: libicu-devel
BuildRequires: openssl-devel >= 0.9.8
BuildRequires: perl(ExtUtils::Embed)
Obsoletes: znc-extra <= %{version}-%{release}
Requires(pre): shadow-utils
BuildRequires: systemd
%{?systemd_requires}
%description
ZNC is an IRC bouncer with many advanced features like detaching,
multiple users, per channel playback buffer, SSL, IPv6, transparent
DCC bouncing, Perl and C++ module support to name a few.
%package devel
Summary: Development files needed to compile ZNC modules
Group: Development/Libraries
Requires: %{name} = %{version}-%{release} pkgconfig
Requires: openssl-devel c-ares-devel glibc-devel libicu-devel%{?_isa}
BuildRequires: pkgconfig
%description devel
All includes and program files you need to compile your own znc
modules.
%package modtcl
Summary: TCL module for ZNC
Group: Development/Libraries
BuildRequires: tcl-devel
Requires: %{name} = %{version}-%{release}
Requires: tcl
%description modtcl
TCL module for ZNC
%package modperl
Summary: perl module for ZNC
Group: Development/Libraries
BuildRequires: perl-devel
#BuildRequires: perl-generators
BuildRequires: swig
Requires: %{name} = %{version}-%{release}
Requires: perl-interpreter
Provides: perl(ZNC::Module) = %{version}-%{release}
%description modperl
perl module for ZNC
%package modpython
Summary: python3 module for ZNC
Group: Development/Libraries
BuildRequires: python3-devel
BuildRequires: swig
Requires: %{name} = %{version}-%{release}
Requires: python3
%description modpython
python3 module for ZNC
%prep
%setup -q
#%__perl -pi.add_release -e 's|(?<="ZNC \%1\.3f)|-%{release}|' znc.cpp
#chmod -x modules/q.cpp
%build
%configure \
--with-module-prefix=%{_libdir}/znc \
--with-systemdsystemunitdir=%{_unitdir} \
--enable-perl \
--enable-python \
--enable-ipv6 --enable-cyrus --enable-tcl
%__make %{?_smp_mflags}
%install
%__make install DESTDIR="%{buildroot}"
mkdir -p %buildroot%{_unitdir}
install -d "%{buildroot}%{_sharedstatedir}/znc"
%clean
%__rm -Rf "%{buildroot}"
%pre
getent group znc >/dev/null || groupadd -r znc
getent passwd znc >/dev/null || \
useradd -r -g znc -d /var/lib/znc -s /sbin/nologin \
-c "Account for ZNC to run as" znc
%post
%systemd_post znc.service
%postun
%systemd_postun_with_restart znc.service
%preun
%systemd_preun znc.service
%files
%doc LICENSE README.md
%{_bindir}/znc
%{_mandir}/man1/*
%dir %{_libdir}/znc
%{_libdir}/znc/admindebug.so
%{_libdir}/znc/adminlog.so
%{_libdir}/znc/alias.so
%{_libdir}/znc/autoattach.so
%{_libdir}/znc/autocycle.so
%{_libdir}/znc/autoop.so
%{_libdir}/znc/autoreply.so
%{_libdir}/znc/autovoice.so
%{_libdir}/znc/awaynick.so
%{_libdir}/znc/awaystore.so
%{_libdir}/znc/block_motd.so
%{_libdir}/znc/blockuser.so
%{_libdir}/znc/bouncedcc.so
%{_libdir}/znc/buffextras.so
%{_libdir}/znc/cert.so
%{_libdir}/znc/certauth.so
%{_libdir}/znc/chansaver.so
%{_libdir}/znc/clearbufferonmsg.so
%{_libdir}/znc/clientnotify.so
%{_libdir}/znc/controlpanel.so
%{_libdir}/znc/crypt.so
%{_libdir}/znc/ctcpflood.so
%{_libdir}/znc/cyrusauth.so
%{_libdir}/znc/dcc.so
%{_libdir}/znc/disconkick.so
%{_libdir}/znc/fail2ban.so
%{_libdir}/znc/flooddetach.so
%{_libdir}/znc/identfile.so
%{_libdir}/znc/imapauth.so
%{_libdir}/znc/keepnick.so
%{_libdir}/znc/kickrejoin.so
%{_libdir}/znc/lastseen.so
%{_libdir}/znc/listsockets.so
%{_libdir}/znc/log.so
%{_libdir}/znc/missingmotd.so
%{_libdir}/znc/modules_online.so
%{_libdir}/znc/nickserv.so
%{_libdir}/znc/notes.so
%{_libdir}/znc/notify_connect.so
#%{_libdir}/znc/partyline.so
%{_libdir}/znc/perform.so
#%{_libdir}/znc/q.so
%{_libdir}/znc/raw.so
%{_libdir}/znc/route_replies.so
%{_libdir}/znc/sample.so
%{_libdir}/znc/samplewebapi.so
%{_libdir}/znc/sasl.so
%{_libdir}/znc/savebuff.so
%{_libdir}/znc/schat.so
%{_libdir}/znc/send_raw.so
%{_libdir}/znc/shell.so
%{_libdir}/znc/simple_away.so
%{_libdir}/znc/stickychan.so
%{_libdir}/znc/stripcontrols.so
%{_libdir}/znc/watch.so
%{_libdir}/znc/webadmin.so
%{_datadir}/znc/
%{_unitdir}/znc.service
%attr(-,znc,znc) %{_sharedstatedir}/znc/
%files devel
%{_bindir}/znc-buildmod
%{_libdir}/pkgconfig/%{name}.pc
%{_includedir}/znc/
%files modtcl
%{_libdir}/znc/modtcl.so
%files modperl
%{_libdir}/znc/modperl/
%{_libdir}/znc/modperl.so
%{_libdir}/znc/perleval.pm
%files modpython
%{_libdir}/znc/modpython/
%{_libdir}/znc/modpython.so
%{_libdir}/znc/pyeval.py
%{_libdir}/znc/__pycache__/
%changelog