mirror of
https://github.com/gentoo-mirror/gentoo.git
synced 2026-08-24 18:58:08 -07:00
mail-filter/rspamd: drop 3.4-r3
Bug: https://bugs.gentoo.org/905345 Signed-off-by: Andreas Sturmlechner <asturm@gentoo.org>
This commit is contained in:
@@ -1,2 +1 @@
|
||||
DIST rspamd-3.4.tar.gz 5689732 BLAKE2B 8d1b98205f51cfe834db3ed53b8be72ada834980380cba06c4470689d16ef4a6396190ae27044ae76a7b35df6afd3cdf551f9469d878ac69ec61ef6b86b46104 SHA512 fec8cb7b845bf25d02f1c32c82bf35ad9c65f3301a73f3ea611b6fcfa0ac1b75f75561c4c42f142f876ac3a78f96fd91d22d30c5b3600e4001e25f06bc693ccf
|
||||
DIST rspamd-3.5.tar.gz 5806722 BLAKE2B 547cd9bb26942dc584d1f4b164e61bdb15505a56399fa19b358b7d7525ee983acc8d5ae1fdb3de340e3461a03aedbb48266fd81404c1f4a2e8fc5bd6735d9a62 SHA512 39c87d5dfd9ae1fc7709e19967eac5e7c7dc83fa070dfebbb7ab5411d7d50d6e6f10248ada717cf1cb3f6ff6c5bfb4d31fd87e1a7e1b2e5f876f6be7b5705623
|
||||
|
||||
@@ -1,20 +0,0 @@
|
||||
Remove test case which does not work with luajit-2.1 anymore as it
|
||||
depends on internal behavior of lujait-2.0.
|
||||
|
||||
Upstream-PR: https://github.com/rspamd/rspamd/pull/4323
|
||||
|
||||
diff --git a/test/lua/unit/lua_util.extract_specific_urls.lua b/test/lua/unit/lua_util.extract_specific_urls.lua
|
||||
index 05ffeb7b0..a7e2f9f48 100644
|
||||
--- a/test/lua/unit/lua_util.extract_specific_urls.lua
|
||||
+++ b/test/lua/unit/lua_util.extract_specific_urls.lua
|
||||
@@ -108,7 +108,6 @@ context("Lua util - extract_specific_urls plain", function()
|
||||
local cases = {
|
||||
{expect = url_list, filter = nil, limit = 9999, need_emails = true, prefix = 'p'},
|
||||
{expect = {}, filter = (function() return false end), limit = 9999, need_emails = true, prefix = 'p'},
|
||||
- {expect = {"domain4.co.net", "test.com"}, filter = nil, limit = 2, need_emails = true, prefix = 'p'},
|
||||
{expect = {"domain4.co.net", "test.com", "domain3.org"}, filter = nil, limit = 3, need_emails = true, prefix = 'p'},
|
||||
{
|
||||
expect = {"gov.co.net", "tesco.co.net", "domain1.co.net", "domain2.co.net", "domain3.co.net", "domain4.co.net"},
|
||||
--
|
||||
2.37.4
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
https://github.com/rspamd/rspamd/commit/0a916c632e18e6686e1a2256d5ef2fe1a1cc239f
|
||||
|
||||
From 0a916c632e18e6686e1a2256d5ef2fe1a1cc239f Mon Sep 17 00:00:00 2001
|
||||
From: Heiko Becker <heirecka@exherbo.org>
|
||||
Date: Wed, 18 Jan 2023 23:54:24 +0100
|
||||
Subject: [PATCH] Fix build with gcc 13 by including <cstdint>
|
||||
|
||||
Like other versions before, gcc 13 moved some includes around and as a
|
||||
result <cstdint> is no longer transitively included. Explicitly include
|
||||
it for uint8_t.
|
||||
--- a/src/libserver/css/css_tokeniser.hxx
|
||||
+++ b/src/libserver/css/css_tokeniser.hxx
|
||||
@@ -24,6 +24,7 @@
|
||||
#include <variant>
|
||||
#include <list>
|
||||
#include <functional>
|
||||
+#include <cstdint>
|
||||
#include "mem_pool.h"
|
||||
|
||||
namespace rspamd::css {
|
||||
--- a/src/libserver/html/html_tag.hxx
|
||||
+++ b/src/libserver/html/html_tag.hxx
|
||||
@@ -23,6 +23,7 @@
|
||||
#include <variant>
|
||||
#include <vector>
|
||||
#include <optional>
|
||||
+#include <cstdint>
|
||||
|
||||
#include "html_tags.h"
|
||||
|
||||
@@ -1,28 +0,0 @@
|
||||
Fix for hyperscan page alignment issues.
|
||||
|
||||
Upstream-Issue: https://github.com/rspamd/rspamd/issues/4329
|
||||
|
||||
diff --git a/src/libserver/hyperscan_tools.cxx b/src/libserver/hyperscan_tools.cxx
|
||||
index 6187208a9..96366067d 100644
|
||||
--- a/src/libserver/hyperscan_tools.cxx
|
||||
+++ b/src/libserver/hyperscan_tools.cxx
|
||||
@@ -306,7 +306,15 @@ auto load_cached_hs_file(const char *fname, std::int64_t offset = 0) -> tl::expe
|
||||
msg_debug_hyperscan_lambda("multipattern: create new database in %s; %Hz size",
|
||||
tmpfile_pattern.data(), unserialized_size);
|
||||
void *buf;
|
||||
- posix_memalign(&buf, 16, unserialized_size);
|
||||
+#ifdef HAVE_GETPAGESIZE
|
||||
+ auto page_size = getpagesize();
|
||||
+#else
|
||||
+ auto page_size = sysconf(_SC_PAGESIZE);
|
||||
+#endif
|
||||
+ if (page_size == -1) {
|
||||
+ page_size = 4096;
|
||||
+ }
|
||||
+ posix_memalign(&buf, page_size, unserialized_size);
|
||||
if (buf == nullptr) {
|
||||
return tl::make_unexpected(error {"Cannot allocate memory", errno, error_category::CRITICAL });
|
||||
}
|
||||
--
|
||||
2.37.4
|
||||
|
||||
@@ -1,153 +0,0 @@
|
||||
# Copyright 1999-2023 Gentoo Authors
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
|
||||
EAPI=8
|
||||
|
||||
LUA_COMPAT=( lua5-{1..4} luajit )
|
||||
|
||||
inherit cmake lua-single pax-utils systemd tmpfiles
|
||||
|
||||
if [[ ${PV} == *9999 ]] ; then
|
||||
EGIT_REPO_URI="https://github.com/rspamd/rspamd.git"
|
||||
inherit git-r3
|
||||
else
|
||||
SRC_URI="https://github.com/rspamd/rspamd/archive/${PV}.tar.gz -> ${P}.tar.gz"
|
||||
KEYWORDS="amd64 x86"
|
||||
fi
|
||||
|
||||
DESCRIPTION="Rapid spam filtering system"
|
||||
HOMEPAGE="
|
||||
https://rspamd.com
|
||||
https://github.com/rspamd/rspamd
|
||||
"
|
||||
|
||||
LICENSE="Apache-2.0 Boost-1.0 BSD BSD-1 BSD-2 CC0-1.0 LGPL-3 MIT public-domain unicode ZLIB"
|
||||
SLOT="0"
|
||||
IUSE="blas cpu_flags_x86_ssse3 jemalloc +jit selinux test"
|
||||
RESTRICT="!test? ( test )"
|
||||
|
||||
# A part of tests use ffi luajit extension
|
||||
REQUIRED_USE="${LUA_REQUIRED_USE}
|
||||
test? ( lua_single_target_luajit )"
|
||||
|
||||
# for <dev-libs/libfmt-10 see https://github.com/rspamd/rspamd/issues/4482
|
||||
RDEPEND="${LUA_DEPS}
|
||||
$(lua_gen_cond_dep '
|
||||
dev-lua/LuaBitOp[${LUA_USEDEP}]
|
||||
dev-lua/lua-argparse[${LUA_USEDEP}]
|
||||
')
|
||||
acct-group/rspamd
|
||||
acct-user/rspamd
|
||||
app-arch/zstd:=
|
||||
dev-db/sqlite:3
|
||||
dev-libs/glib:2
|
||||
dev-libs/icu:=
|
||||
dev-libs/libev
|
||||
<dev-libs/libfmt-10:=
|
||||
dev-libs/libpcre2:=[jit=]
|
||||
dev-libs/libsodium:=
|
||||
dev-libs/openssl:0=[-bindist(-)]
|
||||
dev-libs/snowball-stemmer:=
|
||||
>=dev-libs/xxhash-0.8.0
|
||||
sys-apps/file
|
||||
sys-libs/zlib
|
||||
blas? (
|
||||
virtual/blas
|
||||
virtual/lapack
|
||||
)
|
||||
cpu_flags_x86_ssse3? ( dev-libs/hyperscan )
|
||||
jemalloc? ( dev-libs/jemalloc:= )
|
||||
selinux? ( sec-policy/selinux-spamassassin )
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
dev-cpp/doctest
|
||||
"
|
||||
BDEPEND="
|
||||
dev-lang/perl
|
||||
dev-util/ragel
|
||||
virtual/pkgconfig
|
||||
"
|
||||
|
||||
PATCHES=(
|
||||
"${FILESDIR}/${PN}-3.0-cmake-lua-version.patch"
|
||||
"${FILESDIR}/${PN}-3.2-unbundle-lua.patch"
|
||||
"${FILESDIR}/${PN}-2.5-unbundle-snowball.patch"
|
||||
"${FILESDIR}/${PN}-3.3-remove-test-case.patch"
|
||||
"${FILESDIR}/${PN}-3.4-hyperscan-page-alignment.patch"
|
||||
"${FILESDIR}/${P}-gcc-13.patch"
|
||||
)
|
||||
|
||||
src_prepare() {
|
||||
cmake_src_prepare
|
||||
|
||||
rm -vrf contrib/{doctest,fmt,lua-{argparse,bit},snowball,xxhash,zstd} || die
|
||||
|
||||
> cmake/Toolset.cmake || die #827550
|
||||
|
||||
sed -i -e 's/User=_rspamd/User=rspamd/g' \
|
||||
rspamd.service \
|
||||
|| die
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local mycmakeargs=(
|
||||
-DCONFDIR=/etc/rspamd
|
||||
-DRUNDIR=/var/run/rspamd
|
||||
-DDBDIR=/var/lib/rspamd
|
||||
-DLOGDIR=/var/log/rspamd
|
||||
-DLIBDIR="/usr/$(get_libdir)/rspamd"
|
||||
|
||||
-DSYSTEM_DOCTEST=ON
|
||||
-DSYSTEM_FMT=ON
|
||||
-DSYSTEM_XXHASH=ON
|
||||
-DSYSTEM_ZSTD=ON
|
||||
|
||||
-DENABLE_BLAS=$(usex blas ON OFF)
|
||||
-DENABLE_HYPERSCAN=$(usex cpu_flags_x86_ssse3 ON OFF)
|
||||
-DENABLE_JEMALLOC=$(usex jemalloc ON OFF)
|
||||
-DENABLE_LUAJIT=$(usex lua_single_target_luajit ON OFF)
|
||||
-DENABLE_PCRE2=ON
|
||||
)
|
||||
cmake_src_configure
|
||||
}
|
||||
|
||||
src_test() {
|
||||
cmake_build run-test
|
||||
}
|
||||
|
||||
src_install() {
|
||||
cmake_src_install
|
||||
|
||||
newconfd "${FILESDIR}"/rspamd.conf rspamd
|
||||
newinitd "${FILESDIR}/rspamd-r7.init" rspamd
|
||||
systemd_newunit rspamd.service rspamd.service
|
||||
|
||||
newtmpfiles "${FILESDIR}"/${PN}.tmpfile ${PN}.conf
|
||||
|
||||
# Remove mprotect for JIT support
|
||||
if use lua_single_target_luajit; then
|
||||
pax-mark m "${ED}"/usr/bin/rspamd-* "${ED}"/usr/bin/rspamadm-*
|
||||
fi
|
||||
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}"/rspamd-r1.logrotate rspamd
|
||||
|
||||
diropts -o rspamd -g rspamd
|
||||
keepdir /var/{lib,log}/rspamd
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
tmpfiles_process "${PN}.conf"
|
||||
|
||||
for ver in ${REPLACING_VERSIONS}; do
|
||||
if ver_test "${ver}" -eq "3.4"; then
|
||||
elog "rspamd-3.4 is known to segfault when it is updated from older version due"
|
||||
elog "to a page-alignment of hyperscan .unser files. The issue was patched in"
|
||||
elog "rspamd-3.4-r1 ebuild revision. All possibly broken .unser files will be"
|
||||
elog "automaticaly removed. See https://github.com/rspamd/rspamd/issues/4329 for"
|
||||
elog "more information."
|
||||
|
||||
find "${EROOT}/var/lib/rspamd" -type f -name '*.unser' -delete
|
||||
fi
|
||||
done
|
||||
}
|
||||
Reference in New Issue
Block a user