1*8460358cSPatrick WilliamsSUMMARY = "Dovecot is an open source IMAP and POP3 email server" 2*8460358cSPatrick WilliamsHOMEPAGE = "https://www.dovecot.org/" 3*8460358cSPatrick WilliamsDESCRIPTION = "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." 4*8460358cSPatrick WilliamsSECTION = "mail" 5*8460358cSPatrick WilliamsLICENSE = "LGPL-2.1-only & MIT" 6*8460358cSPatrick WilliamsLIC_FILES_CHKSUM = "file://COPYING;md5=2956560272e5b31d9d64f03111732048" 7*8460358cSPatrick Williams 8*8460358cSPatrick WilliamsSRC_URI = "http://dovecot.org/releases/2.3/dovecot-${PV}.tar.gz \ 9*8460358cSPatrick Williams file://0001-configure.ac-convert-AC_TRY_RUN-to-AC_TRY_LINK-state.patch \ 10*8460358cSPatrick Williams file://dovecot.service \ 11*8460358cSPatrick Williams file://dovecot.socket \ 12*8460358cSPatrick Williams file://0001-not-check-pandoc.patch \ 13*8460358cSPatrick Williams file://0001-m4-Check-for-libunwind-instead-of-libunwind-generic.patch \ 14*8460358cSPatrick Williams file://1ccd5b54a408d12fce0c94ab0bbaedbb5ef69830.patch \ 15*8460358cSPatrick Williams " 16*8460358cSPatrick WilliamsSRC_URI[sha256sum] = "2d90a178c4297611088bf7daae5492a3bc3d5ab6328c3a032eb425d2c249097e" 17*8460358cSPatrick Williams 18*8460358cSPatrick WilliamsDEPENDS = "openssl xz zlib bzip2 libcap icu libtirpc bison-native" 19*8460358cSPatrick WilliamsCFLAGS += "-I${STAGING_INCDIR}/tirpc" 20*8460358cSPatrick WilliamsLDFLAGS += "-ltirpc" 21*8460358cSPatrick Williams 22*8460358cSPatrick Williamsinherit autotools pkgconfig systemd useradd gettext multilib_header 23*8460358cSPatrick Williams 24*8460358cSPatrick WilliamsPACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'ldap pam systemd', d)}" 25*8460358cSPatrick Williams 26*8460358cSPatrick WilliamsPACKAGECONFIG[pam] = "--with-pam,--without-pam,libpam," 27*8460358cSPatrick WilliamsPACKAGECONFIG[systemd] = "--with-systemd,--without-systemd,systemd," 28*8460358cSPatrick WilliamsPACKAGECONFIG[ldap] = "--with-ldap=plugin,--without-ldap,openldap," 29*8460358cSPatrick WilliamsPACKAGECONFIG[lz4] = "--with-lz4,--without-lz4,lz4," 30*8460358cSPatrick Williams 31*8460358cSPatrick Williams# From native build in armv7a-hf/eglibc 32*8460358cSPatrick WilliamsCACHED_CONFIGUREVARS += "i_cv_signed_size_t=no \ 33*8460358cSPatrick Williams i_cv_gmtime_max_time_t=32 \ 34*8460358cSPatrick Williams i_cv_signed_time_t=yes \ 35*8460358cSPatrick Williams i_cv_mmap_plays_with_write=yes \ 36*8460358cSPatrick Williams i_cv_fd_passing=yes \ 37*8460358cSPatrick Williams i_cv_c99_vsnprintf=yes \ 38*8460358cSPatrick Williams lib_cv___va_copy=yes \ 39*8460358cSPatrick Williams lib_cv_va_copy=yes \ 40*8460358cSPatrick Williams lib_cv_va_val_copy=yes \ 41*8460358cSPatrick Williams " 42*8460358cSPatrick Williams 43*8460358cSPatrick Williams# hardcode epoll() to avoid running unsafe tests 44*8460358cSPatrick Williams# BSD needs kqueue and uclibc poll() 45*8460358cSPatrick WilliamsEXTRA_OECONF = " --with-ioloop=epoll" 46*8460358cSPatrick Williams 47*8460358cSPatrick WilliamsSYSTEMD_PACKAGES = "${PN}" 48*8460358cSPatrick WilliamsSYSTEMD_SERVICE:${PN} = "dovecot.service dovecot.socket" 49*8460358cSPatrick WilliamsSYSTEMD_AUTO_ENABLE = "disable" 50*8460358cSPatrick Williams 51*8460358cSPatrick Williamsdo_install:append () { 52*8460358cSPatrick Williams rm -rf ${D}${libdir}/dovecot/dovecot-config 53*8460358cSPatrick Williams install -d 755 ${D}/etc/dovecot 54*8460358cSPatrick Williams touch ${D}/etc/dovecot/dovecot.conf 55*8460358cSPatrick Williams chmod 644 ${D}/etc/dovecot/dovecot.conf 56*8460358cSPatrick Williams if [ "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}" ]; then 57*8460358cSPatrick Williams install -m 0644 ${UNPACKDIR}/dovecot.service ${D}${systemd_unitdir}/system 58*8460358cSPatrick Williams sed -i -e 's#@SYSCONFDIR@#${sysconfdir}#g' ${D}${systemd_unitdir}/system/dovecot.service 59*8460358cSPatrick Williams sed -i -e 's#@SBINDIR@#${sbindir}#g' ${D}${systemd_unitdir}/system/dovecot.service 60*8460358cSPatrick Williams fi 61*8460358cSPatrick Williams oe_multilib_header dovecot/config.h 62*8460358cSPatrick Williams} 63*8460358cSPatrick Williams 64*8460358cSPatrick WilliamsUSERADD_PACKAGES = "${PN}" 65*8460358cSPatrick WilliamsUSERADD_PARAM:${PN} = "-r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovecot dovecot; \ 66*8460358cSPatrick Williams -r -d ${libexecdir} -M -s ${base_sbindir}/nologin -g dovenull dovenull" 67*8460358cSPatrick WilliamsGROUPADD_PARAM:${PN} = "-f -r dovecot;-f -r dovenull" 68*8460358cSPatrick Williams 69*8460358cSPatrick WilliamsFILES:${PN} += "${libdir}/dovecot/*plugin.so \ 70*8460358cSPatrick Williams ${libdir}/dovecot/libfs_compress.so \ 71*8460358cSPatrick Williams ${libdir}/dovecot/libssl_iostream_openssl.so" 72*8460358cSPatrick WilliamsFILES:${PN}-staticdev += "${libdir}/dovecot/*/*.a" 73*8460358cSPatrick WilliamsFILES:${PN}-dev += "${libdir}/dovecot/libdovecot*.so" 74*8460358cSPatrick WilliamsFILES:${PN}-dbg += "${libdir}/dovecot/*/.debug" 75*8460358cSPatrick Williams 76*8460358cSPatrick WilliamsCVE_STATUS[CVE-2016-4983] = "not-applicable-platform: Affects only postinstall script on specific distribution." 77