opensmtpd-6.6.1_p1.ebuild (2556B)
1 # Copyright 1999-2018 Gentoo Foundation 2 # Copyright 2018-2019 Haelwenn (lanodan) Monnier <contact@hacktivis.me> 3 # Distributed under the terms of the GNU General Public License v2 4 5 EAPI=7 6 7 inherit multilib user flag-o-matic pam toolchain-funcs autotools systemd 8 9 DESCRIPTION="Lightweight but featured SMTP daemon from OpenBSD" 10 HOMEPAGE="https://www.opensmtpd.org" 11 SRC_URI="https://www.opensmtpd.org/archives/${P/_}.tar.gz" 12 13 LICENSE="ISC BSD BSD-1 BSD-2 BSD-4" 14 SLOT="0" 15 KEYWORDS="~amd64" 16 IUSE="libressl pam mdoc +mta" 17 18 DEPEND=" 19 !libressl? ( >=dev-libs/openssl-1.1.0:0 ) 20 libressl? ( >=dev-libs/libressl-3.0.2 ) 21 sys-libs/zlib 22 pam? ( sys-libs/pam ) 23 elibc_musl? ( 24 sys-libs/fts-standalone 25 sys-libs/queue-standalone 26 ) 27 sys-libs/db:= 28 dev-libs/libevent 29 app-misc/ca-certificates 30 net-mail/mailbase 31 net-libs/libasr 32 !mail-mta/courier 33 !mail-mta/esmtp 34 !mail-mta/exim 35 !mail-mta/mini-qmail 36 !mail-mta/msmtp[mta] 37 !mail-mta/netqmail 38 !mail-mta/nullmailer 39 !mail-mta/postfix 40 !mail-mta/qmail-ldap 41 !mail-mta/sendmail 42 !mail-mta/ssmtp[mta] 43 " 44 RDEPEND="${DEPEND}" 45 46 S=${WORKDIR}/${P/_} 47 48 src_prepare() { 49 default 50 51 # Use /run instead of /var/run 52 sed -i -e '/pidfile_path/s:_PATH_VARRUN:"/run/":' openbsd-compat/pidfile.c || die 53 sed -i -e 's;/usr/libexec/;/usr/libexec/opensmtpd/;g' smtpd/parse.y || die 54 55 append-cflags "-ffunction-sections" 56 append-ldflags "-Wl,--gc-sections" 57 58 eautoreconf 59 } 60 61 src_configure() { 62 tc-export AR 63 AR="$(which "$AR")" econf \ 64 --with-table-db \ 65 --with-user-smtpd=smtpd \ 66 --with-user-queue=smtpq \ 67 --with-group-queue=smtpq \ 68 --with-path-socket=/run \ 69 --with-path-CAfile=/etc/ssl/certs/ca-certificates.crt \ 70 --sysconfdir=/etc/opensmtpd \ 71 --with-mantype=$(usex mdoc doc man) \ 72 $(use_with pam auth-pam) 73 } 74 75 src_install() { 76 default 77 78 newinitd "${FILESDIR}"/smtpd.initd smtpd 79 systemd_dounit "${FILESDIR}"/smtpd.{service,socket} 80 81 use pam && newpamd "${FILESDIR}"/smtpd.pam smtpd 82 83 dosym /usr/sbin/smtpctl /usr/sbin/makemap 84 dosym /usr/sbin/smtpctl /usr/sbin/newaliases 85 86 if use mta ; then 87 dodir /usr/sbin 88 dosym /usr/sbin/smtpctl /usr/sbin/sendmail 89 dosym /usr/sbin/smtpctl /usr/bin/sendmail 90 dosym /usr/sbin/smtpctl /usr/$(get_libdir)/sendmail 91 fi 92 } 93 94 pkg_preinst() { 95 enewgroup smtpd 25 96 enewuser smtpd 25 -1 /var/empty smtpd 97 enewgroup smtpq 252 98 enewuser smtpq 252 -1 /var/empty smtpq 99 } 100 101 pkg_postinst() { 102 einfo 103 einfo "Plugins for SQLite, MySQL, PostgreSQL, LDAP, socketmaps," 104 einfo "Redis, and many other useful addons and filters are" 105 einfo "available in the mail-filter/opensmtpd-extras package." 106 einfo 107 }