Date: Wednesday, January 11, 2023 @ 01:54:24
  Author: archange
Revision: 1382904

archrelease: copy trunk to community-testing-x86_64

Added:
  cyrus-imapd/repos/community-testing-x86_64/
  cyrus-imapd/repos/community-testing-x86_64/PKGBUILD
    (from rev 1382903, cyrus-imapd/trunk/PKGBUILD)
  cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.service
    (from rev 1382903, cyrus-imapd/trunk/cyrus-imapd.service)
  cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.sysusers
    (from rev 1382903, cyrus-imapd/trunk/cyrus-imapd.sysusers)
  cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.tmpfiles
    (from rev 1382903, cyrus-imapd/trunk/cyrus-imapd.tmpfiles)
  cyrus-imapd/repos/community-testing-x86_64/imapd.conf.patch
    (from rev 1382903, cyrus-imapd/trunk/imapd.conf.patch)
  cyrus-imapd/repos/community-testing-x86_64/keys/
  cyrus-imapd/repos/community-testing-x86_64/pcre2.patch
    (from rev 1382903, cyrus-imapd/trunk/pcre2.patch)

----------------------+
 PKGBUILD             |  133 +++++++++++++++++++++++++++++++++++++++++++
 cyrus-imapd.service  |   12 +++
 cyrus-imapd.sysusers |    1 
 cyrus-imapd.tmpfiles |    7 ++
 imapd.conf.patch     |   13 ++++
 pcre2.patch          |  150 +++++++++++++++++++++++++++++++++++++++++++++++++
 6 files changed, 316 insertions(+)

Copied: cyrus-imapd/repos/community-testing-x86_64/PKGBUILD (from rev 1382903, 
cyrus-imapd/trunk/PKGBUILD)
===================================================================
--- community-testing-x86_64/PKGBUILD                           (rev 0)
+++ community-testing-x86_64/PKGBUILD   2023-01-11 01:54:24 UTC (rev 1382904)
@@ -0,0 +1,133 @@
+# Maintainer: Bruno Pagani <[email protected]>
+# Contributor: Jakob Gahde <[email protected]>
+# Contributor: Carsten Feuls <[email protected]>
+# Contributor: John Lane <archlinux at jelmail dot com>
+# Contributor: Fisher Duan <[email protected]>
+# Contributor: Ryan Corder <[email protected]>
+
+pkgbase=cyrus-imapd
+pkgname=(cyrus-imapd cyrus-imapd-docs)
+pkgver=3.6.0
+pkgrel=2
+pkgdesc="An email, contacts and calendar server"
+arch=(x86_64)
+url="https://www.cyrusimap.org/";
+license=(BSD)
+makedepends=(libsasl jansson libbsd icu util-linux openssl sqlite
+             krb5 mariadb-libs postgresql-libs brotli libchardet libical
+             libxml2 libnghttp2 shapelib libwslay zlib zstd libcap
+             clamav libldap pcre2 perl xapian-core rsync)
+checkdepends=(cunit)
+source=(https://github.com/cyrusimap/cyrus-imapd/releases/download/${pkgbase}-${pkgver}/${pkgbase}-${pkgver}.tar.gz{,.sig}
+        pcre2.patch
+        imapd.conf.patch
+        ${pkgname}.service
+        ${pkgname}.sysusers
+        ${pkgname}.tmpfiles)
+sha512sums=('d2b21117e7d0dd93212a43ca42098dc8b59613cb45ed2287d381c8c363026ac29386dfd90f07fa2ce8a77f56dddd19f2cc5b80d9c60c400d65cbb1d52a8db93c'
+            'SKIP'
+            
'ee40b72a52125ee9f59a26a99ab1c75116929644b05ade339aa921d6c4173d80d9d48ec5d9ad71a95f5adc025337d1d13ad8e23184b60f3c11e397c6e9746cd5'
+            
'0862ffc8c05208efd4d2fb50a6e3719ebc65fc2d72f8e6404235aa32cc44d8227056a17b78f2726e15ff8e38d473795f837c34bfbe89b694b2298c9baab9d5db'
+            
'738242e80cec2c25ae6a85a889cc8d35d7c2f43b2b4d64d74f99a230b21024f168a885f1e319aec1aab0e0599e41211478b99dc608a4ba036be90f8d7e23fd96'
+            
'148f20fc018196bc54078dbd63469542617aebde80937866282b0811acd90065529cfc6b5f4cf34d0095f5052b31e4bbaf877424f575753a09912a8b40a66f4b'
+            
'6cb3b4d0c0c8e301d0fa9c4bf38dd971aa8309eb538c86fb95480768223e8b29f7f7f4da8a9afd8693169830418f92a6f2ddb60661b455b5ca678248ad9a8a41')
+validpgpkeys=(5B55619A9D7040A9DEE2A2CB554F04FEB36378E0)
+
+prepare() {
+  cd ${pkgbase}-${pkgver}
+  patch -p1 < ../pcre2.patch
+  rm sieve/sieve.c
+  autoreconf -vfi
+}
+
+build() {
+  cd ${pkgbase}-${pkgver}
+
+  export PERL_MM_OPT="NO_PACKLIST=true NO_PERLLOCAL=true"
+  # Work around Cyrus bug #3562, #3588
+  export CFLAGS="${CFLAGS} -fno-toplevel-reorder"
+
+  ./configure \
+    --prefix=/usr \
+    --libexecdir=/usr/lib/cyrus \
+    --sysconfdir=/etc/cyrus \
+    --sbindir=/usr/bin \
+    --enable-xapian \
+    --enable-autocreate \
+    --enable-idled \
+    --enable-nntp \
+    --enable-murder \
+    --enable-http \
+    --enable-calalarmd \
+    --enable-jmap \
+    --enable-replication \
+    --enable-backup \
+    --enable-unit-tests \
+    --with-mysql=yes \
+    --with-pgsql=yes \
+    --with-sqlite=yes \
+    --with-ldap \
+    --with-libcap \
+    --with-pidfile=/run/cyrus-master.pid \
+    --with-syslogfacility=MAIL
+
+  sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+  make
+}
+
+check() {
+  cd ${pkgbase}-${pkgver}
+  make check
+}
+
+package_cyrus-imapd() {
+  depends=(libsasl jansson icu util-linux-libs openssl sqlite
+           krb5 mariadb-libs postgresql-libs brotli libchardet libical
+           libxml2 libnghttp2 shapelib libwslay zlib zstd libcap
+           libldap pcre2 perl xapian-core e2fsprogs)
+  optdepends=('cyrus-imapd-docs: documentation'
+              'clamav: for cyr_virusscan'
+              'rsync: for compacting Xapian databases')
+  provides=(imap-server pop3-server)
+  backup=(etc/cyrus/cyrus.conf etc/cyrus/imapd.conf)
+
+  # Install system configuration
+  install -Dm644 ${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/
+  install -Dm644 ${pkgname}.sysusers 
"${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
+  install -Dm644 ${pkgname}.tmpfiles 
"${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
+
+  cd ${pkgbase}-${pkgver}
+
+  make install INSTALLDIRS=vendor DESTDIR="${pkgdir}"
+
+  # Rename httpd.8 and master.8 so they don’t conflict with the identically
+  # named manpages from postfix and apache
+  mv "${pkgdir}"/usr/share/man/man8/httpd.8{,cyrus}
+  mv "${pkgdir}"/usr/share/man/man8/master.8{,cyrus}
+
+  # Install additional utilities
+  for i in arbitronsort.pl masssievec mkimap mknewsgroups rehash 
translatesieve; do
+    install -Dm755 tools/${i} -t "${pkgdir}"/usr/bin/
+  done
+
+  # Install configuration files
+  install -Dm644 doc/examples/cyrus_conf/normal.conf 
"${pkgdir}"/etc/cyrus/cyrus.conf
+  install -Dm644 doc/examples/imapd_conf/normal.conf 
"${pkgdir}"/etc/cyrus/imapd.conf
+  patch "${pkgdir}"/etc/cyrus/imapd.conf "${srcdir}"/imapd.conf.patch
+
+  # Install basic documentation
+  install -Dm644 -t "${pkgdir}"/usr/share/doc/cyrus-imapd/ README.md 
doc/README.*
+  cp -r doc/examples "${pkgdir}"/usr/share/doc/cyrus-imapd/
+
+  install -Dm644 COPYING -t "${pkgdir}"/usr/share/licenses/${pkgname}/
+}
+
+package_cyrus-imapd-docs() {
+  pkgdesc="Documentation for the Cyrus IMAP server"
+#  arch=(any)
+  cd ${pkgbase}-${pkgver}
+  install -dm755 "${pkgdir}"/usr/share/doc/cyrus-imapd
+  cp -r doc/html doc/internal doc/legacy doc/text 
"${pkgdir}"/usr/share/doc/cyrus-imapd
+  install -Dm644 COPYING -t "${pkgdir}"/usr/share/licenses/${pkgname}/
+}

Copied: cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.service (from 
rev 1382903, cyrus-imapd/trunk/cyrus-imapd.service)
===================================================================
--- community-testing-x86_64/cyrus-imapd.service                                
(rev 0)
+++ community-testing-x86_64/cyrus-imapd.service        2023-01-11 01:54:24 UTC 
(rev 1382904)
@@ -0,0 +1,12 @@
+[Unit]
+Description=Cyrus IMAP mail server
+After=network.target
+
+[Service]
+Type=simple
+Restart=on-failure
+ExecStart=/usr/lib/cyrus/master
+ExecReload=/usr/bin/kill -HUP $MAINPID
+
+[Install]
+WantedBy=multi-user.target

Copied: cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.sysusers (from 
rev 1382903, cyrus-imapd/trunk/cyrus-imapd.sysusers)
===================================================================
--- community-testing-x86_64/cyrus-imapd.sysusers                               
(rev 0)
+++ community-testing-x86_64/cyrus-imapd.sysusers       2023-01-11 01:54:24 UTC 
(rev 1382904)
@@ -0,0 +1 @@
+u cyrus 70:12 "Cyrus IMAP server" /var/lib/cyrus

Copied: cyrus-imapd/repos/community-testing-x86_64/cyrus-imapd.tmpfiles (from 
rev 1382903, cyrus-imapd/trunk/cyrus-imapd.tmpfiles)
===================================================================
--- community-testing-x86_64/cyrus-imapd.tmpfiles                               
(rev 0)
+++ community-testing-x86_64/cyrus-imapd.tmpfiles       2023-01-11 01:54:24 UTC 
(rev 1382904)
@@ -0,0 +1,7 @@
+d /run/cyrus        0750 cyrus mail
+d /run/cyrus/lock   0700 cyrus mail
+d /run/cyrus/proc   0700 cyrus mail
+d /run/cyrus/socket 0750 cyrus mail
+d /var/lib/cyrus    0750 cyrus mail
+d /var/spool/cyrus  0750 cyrus mail
+d /var/spool/sieve  0750 cyrus mail

Copied: cyrus-imapd/repos/community-testing-x86_64/imapd.conf.patch (from rev 
1382903, cyrus-imapd/trunk/imapd.conf.patch)
===================================================================
--- community-testing-x86_64/imapd.conf.patch                           (rev 0)
+++ community-testing-x86_64/imapd.conf.patch   2023-01-11 01:54:24 UTC (rev 
1382904)
@@ -0,0 +1,13 @@
+--- imapd.conf.pristine        2019-02-18 22:47:57.002057198 +0100
++++ imapd.conf.new     2019-02-18 22:48:44.138434755 +0100
+@@ -65,6 +65,10 @@
+ virtdomains: yes
+ defaultdomain: localhost
+ 
++# Use these credentials to run services
++cyrus_user: cyrus
++cyrus_group: mail
++
+ ###################################################################
+ ## User experience settings
+ ###################################################################

Copied: cyrus-imapd/repos/community-testing-x86_64/pcre2.patch (from rev 
1382903, cyrus-imapd/trunk/pcre2.patch)
===================================================================
--- community-testing-x86_64/pcre2.patch                                (rev 0)
+++ community-testing-x86_64/pcre2.patch        2023-01-11 01:54:24 UTC (rev 
1382904)
@@ -0,0 +1,150 @@
+diff --git a/configure.ac b/configure.ac
+index 8fe7d78..ac601a3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -666,7 +666,7 @@ AM_CONDITIONAL([SQUATTER],
+ AC_ARG_ENABLE(sieve,
+         [AS_HELP_STRING([--disable-sieve], [disable Sieve 
support])],,[enable_sieve="yes";])
+ AC_ARG_ENABLE(pcre,
+-        [AS_HELP_STRING([--disable-pcre], [disable PCRE 
library])],[cyrus_cv_pcre_utf8="$enableval"])
++        [AS_HELP_STRING([--disable-pcre2], [disable PCRE 
library])],[cyrus_cv_pcre_utf8="$enableval"])
+ 
+ if test "$enable_sieve" != "no"; then
+         AC_DEFINE(USE_SIEVE,[],[Build in Sieve support?])
+@@ -692,25 +692,25 @@ fi
+ 
+ AM_CONDITIONAL([SIEVE], [test "${enable_sieve}" != "no"])
+ 
+-if test "$enable_pcre" != "no"; then
+-        AC_CHECK_HEADER(pcreposix.h)
+-        if test "$ac_cv_header_pcreposix_h" = "yes"; then
+-            AC_MSG_CHECKING(for utf8 enabled pcre)
+-            AC_CACHE_VAL(cyrus_cv_pcre_utf8, AC_TRY_CPP([#include 
<pcreposix.h>
+-#ifndef REG_UTF8
++if test "$enable_pcre2" != "no"; then
++        AC_CHECK_HEADER(pcre2posix.h)
++        if test "$ac_cv_header_pcre2posix_h" = "yes"; then
++            AC_MSG_CHECKING(for utf8 enabled pcre2)
++            AC_CACHE_VAL(cyrus_cv_pcre_utf8, AC_TRY_CPP([#include 
<pcre2posix.h>
++#ifndef REG_UTF
+ #include </nonexistent>
+-#endif],cyrus_cv_pcre_utf8=yes,cyrus_cv_pcre_utf8=no))
+-            AC_MSG_RESULT($cyrus_cv_pcre_utf8)
++#endif],cyrus_cv_pcre2_utf8=yes,cyrus_cv_pcre2_utf8=no))
++            AC_MSG_RESULT($cyrus_cv_pcre2_utf8)
+         else
+-            cyrus_cv_pcre_utf8="no"
++            cyrus_cv_pcre2_utf8="no"
+         fi
+ fi
+ 
+ LIB_REGEX=
+-if test "$cyrus_cv_pcre_utf8" = "yes"; then
+-        LIB_REGEX="-lpcre -lpcreposix";
++if test "$cyrus_cv_pcre2_utf8" = "yes"; then
++        LIB_REGEX="-lpcre2-posix";
+         AC_DEFINE(ENABLE_REGEX, [], [Do we have a regex library?])
+-        AC_DEFINE(HAVE_PCREPOSIX_H, [], [Do we have usable pcre library?])
++        AC_DEFINE(HAVE_PCRE2POSIX_H, [], [Do we have usable pcre2 library?])
+ else
+         AC_CHECK_HEADERS(rxposix.h)
+         if test "$ac_cv_header_rxposix_h" = "yes"; then
+diff --git a/imap/cyr_buildinfo.c b/imap/cyr_buildinfo.c
+index d8c4a96..c2db3b0 100644
+--- a/imap/cyr_buildinfo.c
++++ b/imap/cyr_buildinfo.c
+@@ -181,7 +181,7 @@ static json_t *buildinfo()
+ #else
+     json_object_set_new(dependency, "jansson", json_false());
+ #endif
+-#if defined(ENABLE_REGEX) && defined(HAVE_PCREPOSIX_H)
++#if defined(ENABLE_REGEX) && defined(HAVE_PCRE2POSIX_H)
+     json_object_set_new(dependency, "pcre", json_true());
+ #else
+     json_object_set_new(dependency, "pcre", json_false());
+diff --git a/lib/util.h b/lib/util.h
+index 6ac085c..dbeef25 100644
+--- a/lib/util.h
++++ b/lib/util.h
+@@ -71,16 +71,17 @@
+ extern const char CYRUS_VERSION[];
+ 
+ #ifdef ENABLE_REGEX
+-# ifdef HAVE_PCREPOSIX_H
+-#  include <pcre.h>
+-#  include <pcreposix.h>
+-# else /* !HAVE_PCREPOSIX_H */
++# if defined(HAVE_PCRE2POSIX_H) && !defined(PCRE2_CODE_UNIT_WIDTH)
++#  define PCRE2_CODE_UNIT_WIDTH 8
++#  include <pcre2.h>
++#  include <pcre2posix.h>
++# elif !defined(HAVE_PCRE2POSIX_H) /* !HAVE_PCRE2POSIX_H */
+ #  ifdef HAVE_RXPOSIX_H
+ #   include <rxposix.h>
+ #  else /* !HAVE_RXPOSIX_H */
+ #   include <regex.h>
+ #  endif /* HAVE_RXPOSIX_H */
+-# endif /* HAVE_PCREPOSIX_H */
++# endif /* HAVE_PCRE2POSIX_H */
+ #endif /* ENABLE_REGEX */
+ 
+ #ifdef HAVE_LIBUUID
+diff --git a/sieve/bc_eval.c b/sieve/bc_eval.c
+index f14a5d7..9c3d67c 100644
+--- a/sieve/bc_eval.c
++++ b/sieve/bc_eval.c
+@@ -316,9 +316,9 @@ static int regcomp_flags(int comparator, int requires)
+ {
+     int cflags = REG_EXTENDED;
+ 
+-#ifdef HAVE_PCREPOSIX_H
++#ifdef HAVE_PCRE2POSIX_H
+     /* support UTF8 comparisons */
+-    cflags |= REG_UTF8;
++    cflags |= REG_UTF;
+ #endif
+ 
+     if (comparator == B_ASCIICASEMAP) {
+diff --git a/sieve/comparator.h b/sieve/comparator.h
+index b043bc2..8ff05b0 100644
+--- a/sieve/comparator.h
++++ b/sieve/comparator.h
+@@ -47,16 +47,17 @@
+ #include <sys/types.h>
+ 
+ #ifdef ENABLE_REGEX
+-# ifdef HAVE_PCREPOSIX_H
+-#  include <pcre.h>
+-#  include <pcreposix.h>
+-# else /* !HAVE_PCREPOSIX_H */
++# if defined(HAVE_PCRE2POSIX_H) && !defined(PCRE2_CODE_UNIT_WIDTH)
++#  define PCRE2_CODE_UNIT_WIDTH 8
++#  include <pcre2.h>
++#  include <pcre2posix.h>
++# elif !defined(HAVE_PCRE2POSIX_H) /* !HAVE_PCRE2POSIX_H */
+ #  ifdef HAVE_RXPOSIX_H
+ #   include <rxposix.h>
+ #  else /* !HAVE_RXPOSIX_H */
+ #   include <regex.h>
+ #  endif /* HAVE_RXPOSIX_H */
+-# endif /* HAVE_PCREPOSIX_H */
++# endif /* HAVE_PCRE2POSIX_H */
+ #endif /* ENABLE_REGEX */
+ 
+ #include "sieve_interface.h"
+diff --git a/sieve/sieve.y b/sieve/sieve.y
+index b080c26..8692fc1 100644
+--- a/sieve/sieve.y
++++ b/sieve/sieve.y
+@@ -2215,9 +2215,9 @@ static int verify_regexlist(sieve_script_t *sscript,
+     regex_t reg;
+     int cflags = REG_EXTENDED | REG_NOSUB;
+ 
+-#ifdef HAVE_PCREPOSIX_H
++#ifdef HAVE_PCRE2POSIX_H
+     /* support UTF8 comparisons */
+-    cflags |= REG_UTF8;
++    cflags |= REG_UTF;
+ #endif
+ 
+     if (collation == B_ASCIICASEMAP) {

Reply via email to