diff --git a/mail/dovecot-fts-xapian/Makefile b/mail/dovecot-fts-xapian/Makefile index 01a6bec1aae3..b0d071cacd35 100644 --- a/mail/dovecot-fts-xapian/Makefile +++ b/mail/dovecot-fts-xapian/Makefile @@ -1,31 +1,30 @@ PORTNAME= fts-xapian -DISTVERSION= 1.4.14 +DISTVERSION= 1.5.0 CATEGORIES= mail MASTER_SITES= https://github.com/grosjo/fts-xapian/releases/download/${DISTVERSION}/ PKGNAMEPREFIX= dovecot- DISTNAME= ${PKGNAMEPREFIX}${PORTNAME}-${DISTVERSION} MAINTAINER= otis@FreeBSD.org COMMENT= Dovecot FTS plugin based on Xapian LICENSE= LGPL21 BUILD_DEPENDS= dovecot>=2.3.7:mail/dovecot LIB_DEPENDS= libicuuc.so:devel/icu \ libxapian.so:databases/xapian-core RUN_DEPENDS= dovecot>=2.3.7:mail/dovecot USES= autoreconf compiler:c++11-lang libtool pkgconfig -USE_LDCONFIG= yes GNU_CONFIGURE= yes WRKSRC= ${WRKDIR}/${PORTNAME}-${DISTVERSION} PLIST_FILES= lib/dovecot/lib21_fts_xapian_plugin.a \ lib/dovecot/lib21_fts_xapian_plugin.so post-install: ${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/dovecot/lib21_fts_xapian_plugin.so .include diff --git a/mail/dovecot-fts-xapian/distinfo b/mail/dovecot-fts-xapian/distinfo index 364773719647..ee27abe8bab2 100644 --- a/mail/dovecot-fts-xapian/distinfo +++ b/mail/dovecot-fts-xapian/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1636548959 -SHA256 (dovecot-fts-xapian-1.4.14.tar.gz) = 1f46f319f5b1c59f6359d1c1a55a7fa0988bfb3c3e8cdacec792961331ddb780 -SIZE (dovecot-fts-xapian-1.4.14.tar.gz) = 2563251 +TIMESTAMP = 1636622688 +SHA256 (dovecot-fts-xapian-1.5.0.tar.gz) = 75190c23af045bdc5afc5854e851b445e8581c36101affe422da22827dcaf78b +SIZE (dovecot-fts-xapian-1.5.0.tar.gz) = 2809933 diff --git a/mail/dovecot-fts-xapian/files/patch-src_fts-backend-xapian-functions.cpp b/mail/dovecot-fts-xapian/files/patch-src_fts-backend-xapian-functions.cpp deleted file mode 100644 index 74bb89dd8c95..000000000000 --- a/mail/dovecot-fts-xapian/files/patch-src_fts-backend-xapian-functions.cpp +++ /dev/null @@ -1,30 +0,0 @@ ---- src/fts-backend-xapian-functions.cpp.orig 2021-11-10 13:09:44 UTC -+++ src/fts-backend-xapian-functions.cpp -@@ -505,7 +505,17 @@ static long fts_backend_xapian_current_time() - - static long fts_backend_xapian_get_free_memory() // KB - { -- return long(sysconf(_SC_AVPHYS_PAGES)*sysconf(_SC_PAGE_SIZE) / 1024.0); -+#ifdef __FreeBSD__ -+ uint32_t m; -+ size_t len = sizeof(m); -+ sysctlbyname("vm.stats.vm.v_free_count", &m, &len, NULL, 0); -+ if(fts_xapian_settings.verbose>1) i_info("FTS Xapian: (BSD) Free pages %ld",long(m)); -+ m = m * fts_xapian_settings.pagesize / 1024.0; -+ if(fts_xapian_settings.verbose>1) i_info("FTS Xapian: (BSD) Free memory %ld kB",long(m)); -+ return long(m); -+#else -+ return long(sysconf(_SC_AVPHYS_PAGES) * fts_xapian_settings.pagesize / 1024.0); -+#endif - } - - static bool fts_backend_xapian_test_memory() -@@ -1100,7 +1110,7 @@ bool fts_backend_xapian_index_text(struct xapian_fts_b - - XResultSet * result=fts_backend_xapian_query(dbx,xq,1); - -- Xapian::docid docid; -+ Xapian::docid docid = 0; - Xapian::Document * doc = NULL; - - try diff --git a/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.c b/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.c deleted file mode 100644 index 24d3a718d46c..000000000000 --- a/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.c +++ /dev/null @@ -1,26 +0,0 @@ ---- src/fts-xapian-plugin.c.orig 2021-11-10 13:11:59 UTC -+++ src/fts-xapian-plugin.c -@@ -30,7 +30,14 @@ static void fts_xapian_mail_user_created(struct mail_u - fuser->set.lowmemory = XAPIAN_MIN_RAM; - fuser->set.partial = XAPIAN_DEFAULT_PARTIAL; - fuser->set.full = XAPIAN_DEFAULT_FULL; -- -+ -+#ifdef __FreeBSD__ -+ size_t len = sizeof(fuser->set.pagesize); -+ sysctlbyname("hw.pagesize", &(fuser->set.pagesize), &len, NULL, 0); -+#else -+ fuser->set.pagesize = sysconf(_SC_PAGE_SIZE); -+#endif -+ - const char * env = mail_user_plugin_getenv(user, "fts_xapian"); - if (env == NULL) - { -@@ -93,7 +100,6 @@ static void fts_xapian_mail_user_created(struct mail_u - fuser->set.partial = XAPIAN_DEFAULT_PARTIAL; - fuser->set.full = XAPIAN_DEFAULT_FULL; - } -- - - if (fts_mail_user_init(user, FALSE, &error) < 0) i_error("FTS Xapian: %s", error); - diff --git a/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.h b/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.h deleted file mode 100644 index e6788f3145a5..000000000000 --- a/mail/dovecot-fts-xapian/files/patch-src_fts-xapian-plugin.h +++ /dev/null @@ -1,29 +0,0 @@ ---- src/fts-xapian-plugin.h.orig 2021-11-10 13:06:54 UTC -+++ src/fts-xapian-plugin.h -@@ -15,6 +15,12 @@ - #include "module-context.h" - #include "fts-api-private.h" - -+#ifdef __FreeBSD__ -+#include -+#include -+#include -+#endif -+ - #define XAPIAN_FILE_PREFIX "xapian-indexes" - #define XAPIAN_TERM_SIZELIMIT 245L - #define XAPIAN_COMMIT_ENTRIES 1000000L -@@ -27,9 +33,10 @@ - - struct fts_xapian_settings - { -- int verbose; -- long lowmemory; -- long partial,full; -+ int verbose; -+ unsigned long pagesize; -+ long lowmemory; -+ long partial,full; - }; - - struct fts_xapian_user {