1 |
commit: fc55387362b98251f1b04a8253439fe6653bb86d |
2 |
Author: Petr Vaněk <arkamar <AT> atlas <DOT> cz> |
3 |
AuthorDate: Sun Mar 19 17:16:26 2023 +0000 |
4 |
Commit: Sam James <sam <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Mar 19 21:20:51 2023 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fc553873 |
7 |
|
8 |
mail-filter/rspamd: add 3.5 |
9 |
|
10 |
Closes: https://bugs.gentoo.org/902137 |
11 |
Signed-off-by: Petr Vaněk <arkamar <AT> atlas.cz> |
12 |
Signed-off-by: Sam James <sam <AT> gentoo.org> |
13 |
|
14 |
mail-filter/rspamd/Manifest | 1 + |
15 |
mail-filter/rspamd/rspamd-3.5.ebuild | 149 +++++++++++++++++++++++++++++++++++ |
16 |
2 files changed, 150 insertions(+) |
17 |
|
18 |
diff --git a/mail-filter/rspamd/Manifest b/mail-filter/rspamd/Manifest |
19 |
index d10d234b142a..bcee383412e4 100644 |
20 |
--- a/mail-filter/rspamd/Manifest |
21 |
+++ b/mail-filter/rspamd/Manifest |
22 |
@@ -1 +1,2 @@ |
23 |
DIST rspamd-3.4.tar.gz 5689732 BLAKE2B 8d1b98205f51cfe834db3ed53b8be72ada834980380cba06c4470689d16ef4a6396190ae27044ae76a7b35df6afd3cdf551f9469d878ac69ec61ef6b86b46104 SHA512 fec8cb7b845bf25d02f1c32c82bf35ad9c65f3301a73f3ea611b6fcfa0ac1b75f75561c4c42f142f876ac3a78f96fd91d22d30c5b3600e4001e25f06bc693ccf |
24 |
+DIST rspamd-3.5.tar.gz 5806722 BLAKE2B 547cd9bb26942dc584d1f4b164e61bdb15505a56399fa19b358b7d7525ee983acc8d5ae1fdb3de340e3461a03aedbb48266fd81404c1f4a2e8fc5bd6735d9a62 SHA512 39c87d5dfd9ae1fc7709e19967eac5e7c7dc83fa070dfebbb7ab5411d7d50d6e6f10248ada717cf1cb3f6ff6c5bfb4d31fd87e1a7e1b2e5f876f6be7b5705623 |
25 |
|
26 |
diff --git a/mail-filter/rspamd/rspamd-3.5.ebuild b/mail-filter/rspamd/rspamd-3.5.ebuild |
27 |
new file mode 100644 |
28 |
index 000000000000..bf4fc1bf5f86 |
29 |
--- /dev/null |
30 |
+++ b/mail-filter/rspamd/rspamd-3.5.ebuild |
31 |
@@ -0,0 +1,149 @@ |
32 |
+# Copyright 1999-2023 Gentoo Authors |
33 |
+# Distributed under the terms of the GNU General Public License v2 |
34 |
+ |
35 |
+EAPI=8 |
36 |
+ |
37 |
+LUA_COMPAT=( lua5-{1..4} luajit ) |
38 |
+ |
39 |
+inherit cmake lua-single pax-utils systemd tmpfiles |
40 |
+ |
41 |
+if [[ ${PV} == *9999 ]] ; then |
42 |
+ EGIT_REPO_URI="https://github.com/rspamd/rspamd.git" |
43 |
+ inherit git-r3 |
44 |
+else |
45 |
+ SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz" |
46 |
+ KEYWORDS="~amd64 ~x86" |
47 |
+fi |
48 |
+ |
49 |
+DESCRIPTION="Rapid spam filtering system" |
50 |
+HOMEPAGE=" |
51 |
+ https://rspamd.com |
52 |
+ https://github.com/rspamd/rspamd |
53 |
+" |
54 |
+ |
55 |
+LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB" |
56 |
+SLOT="0" |
57 |
+IUSE="blas cpu_flags_x86_ssse3 jemalloc +jit selinux test" |
58 |
+RESTRICT="!test? ( test )" |
59 |
+ |
60 |
+# A part of tests use ffi luajit extension |
61 |
+REQUIRED_USE="${LUA_REQUIRED_USE} |
62 |
+ test? ( lua_single_target_luajit )" |
63 |
+ |
64 |
+RDEPEND="${LUA_DEPS} |
65 |
+ $(lua_gen_cond_dep ' |
66 |
+ dev-lua/LuaBitOp[${LUA_USEDEP}] |
67 |
+ dev-lua/lua-argparse[${LUA_USEDEP}] |
68 |
+ ') |
69 |
+ acct-group/rspamd |
70 |
+ acct-user/rspamd |
71 |
+ app-arch/zstd:= |
72 |
+ dev-db/sqlite:3 |
73 |
+ dev-libs/glib:2 |
74 |
+ dev-libs/icu:= |
75 |
+ dev-libs/libev |
76 |
+ dev-libs/libfmt:= |
77 |
+ dev-libs/libpcre2:=[jit=] |
78 |
+ dev-libs/libsodium:= |
79 |
+ dev-libs/openssl:0=[-bindist(-)] |
80 |
+ dev-libs/snowball-stemmer:= |
81 |
+ >=dev-libs/xxhash-0.8.0 |
82 |
+ sys-apps/file |
83 |
+ sys-libs/zlib |
84 |
+ blas? ( |
85 |
+ virtual/blas |
86 |
+ virtual/lapack |
87 |
+ ) |
88 |
+ cpu_flags_x86_ssse3? ( dev-libs/hyperscan ) |
89 |
+ jemalloc? ( dev-libs/jemalloc:= ) |
90 |
+ selinux? ( sec-policy/selinux-spamassassin ) |
91 |
+" |
92 |
+DEPEND="${RDEPEND} |
93 |
+ dev-cpp/doctest |
94 |
+" |
95 |
+BDEPEND=" |
96 |
+ dev-lang/perl |
97 |
+ dev-util/ragel |
98 |
+ virtual/pkgconfig |
99 |
+" |
100 |
+ |
101 |
+PATCHES=( |
102 |
+ "${FILESDIR}/rspamd-3.0-cmake-lua-version.patch" |
103 |
+ "${FILESDIR}/rspamd-3.2-unbundle-lua.patch" |
104 |
+ "${FILESDIR}/rspamd-2.5-unbundle-snowball.patch" |
105 |
+) |
106 |
+ |
107 |
+src_prepare() { |
108 |
+ cmake_src_prepare |
109 |
+ |
110 |
+ rm -vrf contrib/{doctest,fmt,lua-{argparse,bit},snowball,xxhash,zstd} || die |
111 |
+ |
112 |
+ > cmake/Toolset.cmake || die #827550 |
113 |
+ |
114 |
+ sed -i -e 's/User=_rspamd/User=rspamd/g' \ |
115 |
+ rspamd.service \ |
116 |
+ || die |
117 |
+} |
118 |
+ |
119 |
+src_configure() { |
120 |
+ local mycmakeargs=( |
121 |
+ -DCONFDIR=/etc/rspamd |
122 |
+ -DRUNDIR=/var/run/rspamd |
123 |
+ -DDBDIR=/var/lib/rspamd |
124 |
+ -DLOGDIR=/var/log/rspamd |
125 |
+ -DLIBDIR="/usr/$(get_libdir)/rspamd" |
126 |
+ |
127 |
+ -DSYSTEM_DOCTEST=ON |
128 |
+ -DSYSTEM_FMT=ON |
129 |
+ -DSYSTEM_XXHASH=ON |
130 |
+ -DSYSTEM_ZSTD=ON |
131 |
+ |
132 |
+ -DENABLE_BLAS=$(usex blas ON OFF) |
133 |
+ -DENABLE_HYPERSCAN=$(usex cpu_flags_x86_ssse3 ON OFF) |
134 |
+ -DENABLE_JEMALLOC=$(usex jemalloc ON OFF) |
135 |
+ -DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF) |
136 |
+ -DENABLE_PCRE2=ON |
137 |
+ ) |
138 |
+ cmake_src_configure |
139 |
+} |
140 |
+ |
141 |
+src_test() { |
142 |
+ cmake_build run-test |
143 |
+} |
144 |
+ |
145 |
+src_install() { |
146 |
+ cmake_src_install |
147 |
+ |
148 |
+ newconfd "${FILESDIR}"/rspamd.conf rspamd |
149 |
+ newinitd "${FILESDIR}/rspamd-r7.init" rspamd |
150 |
+ systemd_newunit rspamd.service rspamd.service |
151 |
+ |
152 |
+ newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf |
153 |
+ |
154 |
+ # Remove mprotect for JIT support |
155 |
+ if use lua_single_target_luajit; then |
156 |
+ pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-* |
157 |
+ fi |
158 |
+ |
159 |
+ insinto /etc/logrotate.d |
160 |
+ newins "${FILESDIR}"/rspamd-r1.logrotate rspamd |
161 |
+ |
162 |
+ diropts -o rspamd -g rspamd |
163 |
+ keepdir /var/{lib,log}/rspamd |
164 |
+} |
165 |
+ |
166 |
+pkg_postinst() { |
167 |
+ tmpfiles_process "${PN}.conf" |
168 |
+ |
169 |
+ for ver in ${REPLACING_VERSIONS}; do |
170 |
+ if ver_test "${ver}" -eq "3.4"; then |
171 |
+ elog "rspamd-3.4 is known to segfault when it is updated from older version due" |
172 |
+ elog "to a page-alignment of hyperscan .unser files. The issue was patched in" |
173 |
+ elog "rspamd-3.4-r1 ebuild revision. All possibly broken .unser files will be" |
174 |
+ elog "automaticaly removed. See https://github.com/rspamd/rspamd/issues/4329 for" |
175 |
+ elog "more information." |
176 |
+ |
177 |
+ find "${EROOT}/var/lib/rspamd" -type f -name '*.unser' -delete |
178 |
+ fi |
179 |
+ done |
180 |
+} |