#define optflags_lto %nil
# TODO: add .pc-file to libhiredis-devel (to build with one)
Name: rspamd
Version: 3.8.4
Release: alt1
Summary: Fast and modular antispam system written in C
License: BSD
Group: Networking/Other
Url: https://rspamd.com/
# Source-url: https://github.com/rspamd/rspamd/archive/%version.tar.gz
Source: %name-%version.tar
Source1: %name.init
Source3: %name.service
Source4: %name.sysconfig
Source5: %name.logrotate
Patch1: rspamd-fix-error.patch
Patch3500: rspamd-loongarch.patch
BuildRequires: gcc-c++
BuildRequires: cmake libdb4-devel libevent-devel libgmime-devel liblua5-devel
BuildRequires: libpcre2-devel libsqlite3-devel libunwind-devel libicu-devel
BuildRequires: libssl-devel libmagic-devel zlib-devel libluajit-devel libsodium-devel
BuildRequires: libxxhash-devel libzstd-devel doctest-devel libfmt-devel
BuildRequires: perl-XML-Parser perl-Term-Cap perl-Pod-Usage
BuildRequires: ragel
BuildRequires(pre): rpm-build-intro
#add_verify_elf_skiplist %_libdir/rspamd/lib*.so
#./usr/lib64/librspamd-actrie.so
AutoReq: yes,nolua
%description
Rspamd filtering system is created as a replacement of popular
spamassassin spamd and is designed to be fast, modular and easily
extendable system. Rspamd core is written in C language using event
driven paradigma. Plugins for rspamd can be written in lua. Rspamd is
designed to process connections completely asynchronous and do not block
anywhere in code.
%prep
%setup
%patch1 -p2
%patch3500 -p1
%build
%cmake_insource -DSYSTEMDDIR=%{_unitdir} \
-DENABLE_LUAJIT=ON \
-DLIBDIR=%{_libdir}/rspamd/ \
-DRUNDIR=/run \
-DNO_SHARED=ON \
-DENABLE_LIBUNWIND=ON \
-DENABLE_PCRE2=ON \
-DCONFDIR=%{_sysconfdir}/rspamd \
-DCMAKE_SKIP_INSTALL_RPATH:BOOL=OFF -DCMAKE_SKIP_RPATH:BOOL=OFF \
-DSYSTEM_ZSTD=ON \
-DSYSTEM_FMT=ON \
-DSYSTEM_DOCTEST=ON \
-DSYSTEM_XXHASH=ON
%make_build
%install
%makeinstall_std
mkdir -p %buildroot/%_datadir/
# TODO
rm -f %buildroot%_includedir/librspamdclient.h
rm -f %buildroot%_libdir/librspamdclient_static.a
rm -rf %buildroot/etc/init.d/
install -d -m 0750 %buildroot%_sysconfdir/%name/local.d/
install -d -m 0750 %buildroot%_sysconfdir/%name/override.d/
install -d -m 0770 %buildroot%_localstatedir/%name
install -d -m 0770 %buildroot%_logdir/%name
install -pD -m 0755 %SOURCE1 %buildroot%_initddir/%name
install -pD -m 0644 %SOURCE3 %buildroot%_unitdir/%name.service
install -pD -m 0644 %SOURCE4 %buildroot%_sysconfigdir/%name
install -pD -m 0644 %SOURCE5 %buildroot%_logrotatedir/%name
%pre
%_sbindir/groupadd -r -f %name 2>/dev/null ||:
%_sbindir/useradd -r -N -M -g %name -d /dev/null -s /dev/null %name 2>/dev/null ||:
%files
%dir %_sysconfdir/%name/
%dir %_sysconfdir/%name/maps.d/
%dir %_sysconfdir/%name/modules.d/
%dir %_sysconfdir/%name/scores.d/
%dir %_libdir/%name/
%dir %attr(0750,root,rspamd) %_sysconfdir/%name/local.d/
%dir %attr(0750,root,rspamd) %_sysconfdir/%name/override.d/
%config(noreplace) %_sysconfdir/%name/*.conf
%config(noreplace) %_sysconfdir/%name/maps.d/*.inc
%config(noreplace) %_sysconfdir/%name/modules.d/*.conf
%config(noreplace) %_sysconfdir/%name/scores.d/*.conf
%config(noreplace) %_sysconfdir/%name/*.inc
%config(noreplace) %_sysconfigdir/%name
%config(noreplace) %_logrotatedir/%name
%_bindir/rspamc*
%_bindir/rspamd*
%_bindir/rspamadm*
%_libdir/%name/*.so
%_initddir/%name
%_datadir/rspamd/
%_unitdir/*
%_man1dir/*
%_man8dir/*
%dir %attr(0770,root,rspamd) %_localstatedir/rspamd
%dir %attr(0770,root,rspamd) %_logdir/rspamd
%changelog
* Sun Mar 17 2024 Vitaly Lipatov <lav@altlinux.ru> 3.8.4-alt1
- new version 3.8.4 (with rpmrb script)
* Wed Feb 28 2024 Vitaly Lipatov <lav@altlinux.ru> 3.8.2-alt1
- new version 3.8.2 (with rpmrb script)
* Sun Feb 18 2024 Vitaly Lipatov <lav@altlinux.ru> 3.8.1-alt1
- new version 3.8.1 (with rpmrb script)
* Mon Dec 25 2023 Vitaly Lipatov <lav@altlinux.ru> 3.7.5-alt1
- new version 3.7.5 (with rpmrb script)
* Mon Nov 06 2023 Alexey Sheplyakov <asheplyakov@altlinux.org> 3.7.3-alt2
- NMU: fixed FTBFS on LoongArch
* Mon Nov 06 2023 Vitaly Lipatov <lav@altlinux.ru> 3.7.3-alt1
- new version 3.7.3 (with rpmrb script)
* Sun Apr 23 2023 Vitaly Lipatov <lav@altlinux.ru> 3.5-alt1
- new version 3.5 (with rpmrb script)
- build with system libxxhash-devel libzstd-devel doctest-devel libfmt-devel
- add AutoReq: yes,nolua (all lua requires are internal: rspamd/lualib)
* Sun Apr 23 2023 Vitaly Lipatov <lav@altlinux.ru> 3.4-alt1
- new version 3.4 (with rpmrb script)
* Tue Apr 05 2022 Vitaly Lipatov <lav@altlinux.ru> 3.2-alt1
- new version 3.2 (with rpmrb script)
* Sat Jul 17 2021 Dmitriy D. Shadrinov <shadrinov@altlinux.org> 2.7-alt1
- 2.7 release
* Tue Jul 13 2021 Vitaly Lipatov <lav@altlinux.ru> 2.6-alt2
- drop unneeded BR: python-module-paste
* Tue Oct 06 2020 Dmitriy D. Shadrinov <shadrinov@altlinux.org> 2.6-alt1
- 2.6 release
- logrotate post-rotate script systemd/sysvinit detection
* Wed Apr 22 2020 Dmitriy D. Shadrinov <shadrinov@altlinux.org> 2.5-alt1
- 2.5 release
* Fri Mar 27 2020 Dmitriy D. Shadrinov <shadrinov@altlinux.org> 2.4-alt1
- 2.4 release
* Thu Feb 06 2020 Dmitriy D. Shadrinov <shadrinov@altlinux.org> 2.3-alt1
- 2.3 release
* Thu Feb 21 2019 Vitaly Lipatov <lav@altlinux.ru> 1.8.3-alt1
- build new version
* Tue Feb 07 2017 Igor Vlasenko <viy@altlinux.ru> 0.4.7-alt1.1
- NMU: rebuild with new lua 5.1
* Sat May 05 2012 Vitaly Lipatov <lav@altlinux.ru> 0.4.7-alt1
- new build 0.4.7
- ALT specific init script
* Wed Jun 15 2011 Vitaly Lipatov <lav@altlinux.ru> 0.3.14-alt1
- new build 0.3.14
* Sun Nov 07 2010 Vladimir Lettiev <crux@altlinux.ru> 0.3.2-alt1.1
- rebuilt with perl 5.12
* Sun Oct 17 2010 Vitaly Lipatov <lav@altlinux.ru> 0.3.2-alt1
- initial build for ALT Linux Sisyphus