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.

rspamd.spec 3.9KB

10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135
  1. Name: rspamd
  2. Version: 3.2
  3. Release: 1
  4. Summary: Rapid spam filtering system
  5. Group: System Environment/Daemons
  6. License: Apache-2.0
  7. URL: https://rspamd.com
  8. Source0: https://github.com/rspamd/rspamd/archive/%{version}/%{name}-%{version}.tar.gz
  9. Source1: %{name}.logrotate
  10. Source2: 80-rspamd.preset
  11. BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}
  12. %if 0%{?el7}
  13. BuildRequires: cmake3
  14. BuildRequires: devtoolset-8-gcc-c++
  15. %else
  16. BuildRequires: cmake
  17. BuildRequires: gcc-c++
  18. %endif
  19. BuildRequires: file-devel
  20. BuildRequires: glib2-devel
  21. BuildRequires: hyperscan-devel
  22. BuildRequires: jemalloc-devel
  23. BuildRequires: lapack-devel
  24. BuildRequires: libevent-devel
  25. BuildRequires: libicu-devel
  26. BuildRequires: libsodium-devel
  27. BuildRequires: libunwind-devel
  28. BuildRequires: luajit-devel
  29. BuildRequires: openblas-devel
  30. BuildRequires: openssl-devel
  31. BuildRequires: pcre2-devel
  32. BuildRequires: ragel
  33. BuildRequires: sqlite-devel
  34. BuildRequires: systemd
  35. Requires(pre): shadow-utils
  36. Requires(post): systemd
  37. Requires(preun): systemd
  38. Requires(postun): systemd
  39. %description
  40. Rspamd is a rapid, modular and lightweight spam filter. It is designed to work
  41. with big amount of mail and can be easily extended with own filters written in
  42. lua.
  43. %prep
  44. %setup -q
  45. %build
  46. %if 0%{?el7}
  47. %{__cmake3} \
  48. %else
  49. %{__cmake} \
  50. %endif
  51. -DCMAKE_BUILD_TYPE="Release" \
  52. -DCMAKE_C_FLAGS_RELEASE="%{optflags}" \
  53. -DCMAKE_CXX_FLAGS_RELEASE="%{optflags}" \
  54. -DCMAKE_INSTALL_PREFIX=%{_prefix} \
  55. -DCONFDIR=%{_sysconfdir}/rspamd \
  56. -DMANDIR=%{_mandir} \
  57. -DDBDIR=%{_localstatedir}/lib/rspamd \
  58. -DRUNDIR=%{_localstatedir}/run/rspamd \
  59. -DLOGDIR=%{_localstatedir}/log/rspamd \
  60. -DEXAMPLESDIR=%{_datadir}/examples/rspamd \
  61. -DSHAREDIR=%{_datadir}/rspamd \
  62. -DLIBDIR=%{_libdir}/rspamd/ \
  63. -DINCLUDEDIR=%{_includedir} \
  64. -DRSPAMD_GROUP=_rspamd \
  65. -DRSPAMD_USER=_rspamd \
  66. -DSYSTEMDDIR=%{_unitdir} \
  67. -DWANT_SYSTEMD_UNITS=ON \
  68. -DNO_SHARED=ON \
  69. -DDEBIAN_BUILD=1 \
  70. -DENABLE_LIBUNWIND=ON \
  71. -DENABLE_HYPERSCAN=ON \
  72. -DENABLE_JEMALLOC=ON \
  73. -DENABLE_LUAJIT=ON \
  74. -DENABLE_BLAS=ON
  75. %{__make} %{?jobs:-j%jobs}
  76. %install
  77. %{__make} install DESTDIR=%{buildroot} INSTALLDIRS=vendor
  78. %{__install} -p -D -m 0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
  79. %{__install} -p -D -m 0644 %{SOURCE2} %{buildroot}%{_presetdir}/80-rspamd.preset
  80. %{__install} -d -p -m 0755 %{buildroot}%{_localstatedir}/log/rspamd
  81. %{__install} -d -p -m 0755 %{buildroot}%{_localstatedir}/lib/rspamd
  82. %{__install} -p -D -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/local.d/
  83. %{__install} -p -D -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/override.d/
  84. %clean
  85. rm -rf %{buildroot}
  86. %pre
  87. %{_sbindir}/groupadd -r _rspamd 2>/dev/null || :
  88. %{_sbindir}/useradd -g _rspamd -c "Rspamd user" -s /bin/false -r -d %{_localstatedir}/lib/rspamd _rspamd 2>/dev/null || :
  89. %post
  90. %{__chown} -R _rspamd:_rspamd %{_localstatedir}/lib/rspamd
  91. %{__chown} _rspamd:_rspamd %{_localstatedir}/log/rspamd
  92. systemctl --no-reload preset %{name}.service >/dev/null 2>&1 || :
  93. %preun
  94. %systemd_preun %{name}.service
  95. %postun
  96. %systemd_postun_with_restart %{name}.service
  97. %files
  98. %defattr(-,root,root,-)
  99. %dir %{_sysconfdir}/rspamd
  100. %config(noreplace) %{_sysconfdir}/rspamd/*
  101. %{_bindir}/rspamd
  102. %{_bindir}/rspamd_stats
  103. %{_bindir}/rspamc
  104. %{_bindir}/rspamadm
  105. %{_unitdir}/%{name}.service
  106. %{_presetdir}/80-rspamd.preset
  107. %dir %{_libdir}/rspamd
  108. %{_libdir}/rspamd/*
  109. %{_mandir}/man8/%{name}.*
  110. %{_mandir}/man1/rspamc.*
  111. %{_mandir}/man1/rspamadm.*
  112. %dir %{_datadir}/rspamd
  113. %{_datadir}/rspamd/*
  114. %config(noreplace) %{_sysconfdir}/logrotate.d/%{name}
  115. %attr(-, _rspamd, _rspamd) %dir %{_localstatedir}/lib/rspamd
  116. %dir %{_localstatedir}/log/rspamd