From e0c85bdc33b7df06a03607c1df704a402630592e Mon Sep 17 00:00:00 2001 From: Khem Raj Date: Fri, 22 Nov 2024 18:10:28 -0800 Subject: dovecot: Upgrade to 2.3.21.1 Fix build with icu-76.x while here Signed-off-by: Khem Raj --- .../1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch | 24 +++++++ .../recipes-support/dovecot/dovecot_2.3.21.1.bb | 76 ++++++++++++++++++++++ .../recipes-support/dovecot/dovecot_2.3.21.bb | 75 --------------------- 3 files changed, 100 insertions(+), 75 deletions(-) create mode 100644 meta-networking/recipes-support/dovecot/dovecot/1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch create mode 100644 meta-networking/recipes-support/dovecot/dovecot_2.3.21.1.bb delete mode 100644 meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb (limited to 'meta-networking') diff --git a/meta-networking/recipes-support/dovecot/dovecot/1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch b/meta-networking/recipes-support/dovecot/dovecot/1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch new file mode 100644 index 0000000000..0765d963c1 --- /dev/null +++ b/meta-networking/recipes-support/dovecot/dovecot/1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch @@ -0,0 +1,24 @@ +From 1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830 Mon Sep 17 00:00:00 2001 +From: fundawang +Date: Sun, 27 Oct 2024 22:11:21 +0800 +Subject: [PATCH] configure: Explicitly check for icu-uc + +Ensure we link against libicu-uc when it's split in v76. + +Upstream-Status: Backport [https://github.com/dovecot/core/commit/1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830] +Signed-off-by: Khem Raj +--- + m4/want_icu.m4 | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/m4/want_icu.m4 ++++ b/m4/want_icu.m4 +@@ -1,7 +1,7 @@ + AC_DEFUN([DOVECOT_WANT_ICU], [ + if test "$want_icu" != "no"; then + if test "$PKG_CONFIG" != "" && $PKG_CONFIG --exists icu-i18n 2>/dev/null; then +- PKG_CHECK_MODULES(LIBICU, icu-i18n) ++ PKG_CHECK_MODULES(LIBICU, [icu-i18n icu-uc]) + have_icu=yes + AC_DEFINE(HAVE_LIBICU,, [Define if you want ICU normalization support for FTS]) + elif test "$want_icu" = "yes"; then diff --git a/meta-networking/recipes-support/dovecot/dovecot_2.3.21.1.bb b/meta-networking/recipes-support/dovecot/dovecot_2.3.21.1.bb new file mode 100644 index 0000000000..3177cdb1d7 --- /dev/null +++ b/meta-networking/recipes-support/dovecot/dovecot_2.3.21.1.bb @@ -0,0 +1,76 @@ +SUMMARY = "Dovecot is an open source IMAP and POP3 email server" +HOMEPAGE = "https://www.dovecot.org/" +DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory." +SECTION = "mail" +LICENSE = "LGPL-2.1-only & MIT" +LIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048" + +SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \ + file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \ + file://dovecot.service \ + file://dovecot.socket \ + file://0001-not-check-pandoc.patch \ + file://0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch \ + file://1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch \ + " +SRC_URI[sha256sum] = "2d90a178c4297611088bf7daae5492a3bc3d5ab6328c3a032eb425d2c249097e" + +DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native" +CFLAGS += "-I${STAGING_INCDIR}/tirpc" +LDFLAGS += "-ltirpc" + +inherit autotools pkgconfig systemd useradd gettext multilib_header + +PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam systemd', d)}" + +PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam," +PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd," +PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap," +PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," + +# From native build in armv7a-hf/eglibc +CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \ + i_cv_gmtime_max_time_t=32 \ + i_cv_signed_time_t=yes \ + i_cv_mmap_plays_with_write=yes \ + i_cv_fd_passing=yes \ + i_cv_c99_vsnprintf=yes \ + lib_cv___va_copy=yes \ + lib_cv_va_copy=yes \ + lib_cv_va_val_copy=yes \ + " + +# hardcode epoll() to avoid running unsafe tests +# BSD needs kqueue and uclibc poll() +EXTRA_OECONF = " --with-ioloop=epoll" + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE:${PN} = "dovecot.service dovecot.socket" +SYSTEMD_AUTO_ENABLE = "disable" + +do_install:append () { + rm -rf ${D}${libdir}/dovecot/dovecot-config + install -d 755 ${D}/etc/dovecot + touch ${D}/etc/dovecot/dovecot.conf + chmod 644 ${D}/etc/dovecot/dovecot.conf + if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then + install -m 0644 ${UNPACKDIR}/dovecot.service ${D}${systemd_unitdir}/system + sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service + sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service + fi + oe_multilib_header dovecot/config.h +} + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM:${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \ + -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull" +GROUPADD_PARAM:${PN} = "-f -r dovecot;-f -r dovenull" + +FILES:${PN} += "${libdir}/dovecot/*plugin.so \ + ${libdir}/dovecot/libfs_compress.so \ + ${libdir}/dovecot/libssl_iostream_openssl.so" +FILES:${PN}-staticdev += "${libdir}/dovecot/*/*.a" +FILES:${PN}-dev += "${libdir}/dovecot/libdovecot*.so" +FILES:${PN}-dbg += "${libdir}/dovecot/*/.debug" + +CVE_STATUS[CVE-2016-4983] = "not-applicable-platform: Affects only postinstall script on specific distribution." diff --git a/meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb b/meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb deleted file mode 100644 index 4e76d24526..0000000000 --- a/meta-networking/recipes-support/dovecot/dovecot_2.3.21.bb +++ /dev/null @@ -1,75 +0,0 @@ -SUMMARY = "Dovecot is an open source IMAP and POP3 email server" -HOMEPAGE = "https://www.dovecot.org/" -DESCRIPTION = "Dovecot is an open source IMAP and POP3 email server for Linux/UNIX-like systems, written with security primarily in mind. Dovecot is an excellent choice for both small and large installations. It's fast, simple to set up, requires no special administration and it uses very little memory." -SECTION = "mail" -LICENSE = "LGPL-2.1-only & MIT" -LIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048" - -SRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \ - file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \ - file://dovecot.service \ - file://dovecot.socket \ - file://0001-not-check-pandoc.patch \ - file://0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch \ - " -SRC_URI[sha256sum] = "05b11093a71c237c2ef309ad587510721cc93bbee6828251549fc1586c36502d" - -DEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native" -CFLAGS += "-I${STAGING_INCDIR}/tirpc" -LDFLAGS += "-ltirpc" - -inherit autotools pkgconfig systemd useradd gettext multilib_header - -PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam systemd', d)}" - -PACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam," -PACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd," -PACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap," -PACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," - -# From native build in armv7a-hf/eglibc -CACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \ - i_cv_gmtime_max_time_t=32 \ - i_cv_signed_time_t=yes \ - i_cv_mmap_plays_with_write=yes \ - i_cv_fd_passing=yes \ - i_cv_c99_vsnprintf=yes \ - lib_cv___va_copy=yes \ - lib_cv_va_copy=yes \ - lib_cv_va_val_copy=yes \ - " - -# hardcode epoll() to avoid running unsafe tests -# BSD needs kqueue and uclibc poll() -EXTRA_OECONF = " --with-ioloop=epoll" - -SYSTEMD_PACKAGES = "${PN}" -SYSTEMD_SERVICE:${PN} = "dovecot.service dovecot.socket" -SYSTEMD_AUTO_ENABLE = "disable" - -do_install:append () { - rm -rf ${D}${libdir}/dovecot/dovecot-config - install -d 755 ${D}/etc/dovecot - touch ${D}/etc/dovecot/dovecot.conf - chmod 644 ${D}/etc/dovecot/dovecot.conf - if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then - install -m 0644 ${UNPACKDIR}/dovecot.service ${D}${systemd_unitdir}/system - sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service - sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service - fi - oe_multilib_header dovecot/config.h -} - -USERADD_PACKAGES = "${PN}" -USERADD_PARAM:${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \ - -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull" -GROUPADD_PARAM:${PN} = "-f -r dovecot;-f -r dovenull" - -FILES:${PN} += "${libdir}/dovecot/*plugin.so \ - ${libdir}/dovecot/libfs_compress.so \ - ${libdir}/dovecot/libssl_iostream_openssl.so" -FILES:${PN}-staticdev += "${libdir}/dovecot/*/*.a" -FILES:${PN}-dev += "${libdir}/dovecot/libdovecot*.so" -FILES:${PN}-dbg += "${libdir}/dovecot/*/.debug" - -CVE_STATUS[CVE-2016-4983] = "not-applicable-platform: Affects only postinstall script on specific distribution." -- cgit v1.2.3-54-g00ecf