You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/mail-mta/opensmtpd/opensmtpd-7.4.0_p1.ebuild

114 lines
2.7 KiB

# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
VERIFY_SIG_METHOD="signify"
inherit pam systemd verify-sig
DESCRIPTION="Lightweight but featured SMTP daemon from OpenBSD"
HOMEPAGE="https://www.opensmtpd.org"
SRC_URI="
https://www.opensmtpd.org/archives/${P/_}.tar.gz
verify-sig? ( https://www.opensmtpd.org/archives/${P/_}.sum.sig )
"
S="${WORKDIR}/${P/_}"
LICENSE="ISC BSD BSD-1 BSD-2 BSD-4"
SLOT="0"
KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
IUSE="berkdb +mta pam split-usr"
DEPEND="
dev-libs/libbsd
dev-libs/libevent:=
dev-libs/openssl:=
sys-libs/zlib:=
virtual/libcrypt:=
berkdb? ( sys-libs/db:= )
elibc_musl? ( sys-libs/fts-standalone )
pam? ( sys-libs/pam )
"
RDEPEND="${DEPEND}
acct-user/smtpd
acct-user/smtpq
app-misc/ca-certificates
net-mail/mailbase
!mail-client/mailx-support
!mail-mta/courier
!mail-mta/esmtp
!mail-mta/exim
!mail-mta/msmtp[mta]
!mail-mta/netqmail
!mail-mta/nullmailer
!mail-mta/postfix
!mail-mta/sendmail
!mail-mta/ssmtp[mta]
"
BDEPEND="
app-alternatives/yacc
virtual/pkgconfig
verify-sig? ( sec-keys/signify-keys-opensmtpd )
"
VERIFY_SIG_OPENPGP_KEY_PATH="/usr/share/signify-keys/${PN}.pub"
QA_CONFIG_IMPL_DECL_SKIP=( closefrom )
DOCS=( {CHANGES,README}.md )
PATCHES=( "${FILESDIR}/${PN}-7.4.0-missing-include.patch" )
src_unpack() {
if use verify-sig; then
# Too many levels of symbolic links
cp "${DISTDIR}"/${P/_}.{sum.sig,tar.gz} "${WORKDIR}" || die
verify-sig_verify_signed_checksums \
${P/_}.sum.sig sha256 ${P/_}.tar.gz
fi
default
}
src_configure() {
local myeconfargs=(
--sysconfdir="${EPREFIX}"/etc/smtpd
--with-path-CAfile="${EPREFIX}"/etc/ssl/certs/ca-certificates.crt
--with-path-empty="${EPREFIX}"/var/empty
--with-path-mbox="${EPREFIX}"/var/spool/mail
--with-path-queue="${EPREFIX}"/var/spool/smtpd
--with-path-pidfile=/run
--with-path-socket=/run
--with-user-smtpd=smtpd
--with-user-queue=smtpq
--with-group-queue=smtpq
--with-libevent="${EPREFIX}"/usr/$(get_libdir)
--with-libssl="${EPREFIX}"/usr/$(get_libdir)
$(use_with berkdb table-db)
$(use_with pam auth-pam)
)
econf "${myeconfargs[@]}"
}
src_install() {
default
newinitd "${FILESDIR}"/smtpd.initd smtpd
systemd_newunit "${FILESDIR}"/smtpd-r1.service smtpd.service
use pam && newpamd "${FILESDIR}"/smtpd.pam smtpd
dosym smtpctl /usr/sbin/makemap
dosym smtpctl /usr/sbin/newaliases
if use mta; then
dodir /usr/sbin
dosym smtpctl /usr/sbin/sendmail
# on USE="-split-usr" system sbin and bin are merged
# so symlink made above will collide with one below
use split-usr && dosym ../sbin/smtpctl /usr/bin/sendmail
dodir /usr/$(get_libdir)
dosym -r /usr/sbin/smtpctl /usr/$(get_libdir)/sendmail
fi
}