blob: 8662f8c9b94d8c8633b68ca1f05a14297516c40d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
PATCHSET=4
WANT_AUTOMAKE=none
inherit autotools
DESCRIPTION="Extremely simple MTA to get mail off the system to a Mailhub"
HOMEPAGE="ftp://ftp.debian.org/debian/pool/main/s/ssmtp/"
SRC_URI="
mirror://debian/pool/main/s/ssmtp/${P/-/_}.orig.tar.bz2
https://dev.gentoo.org/~pinkbyte/distfiles/patches/${P}-patches-${PATCHSET}.tar.xz
"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
IUSE="ipv6 +ssl gnutls +mta"
DEPEND="
!prefix? ( acct-group/ssmtp )
ssl? (
gnutls? ( net-libs/gnutls[openssl] )
!gnutls? (
dev-libs/openssl:0=
)
)
"
RDEPEND="
${DEPEND}
net-mail/mailbase
mta? (
!mail-mta/courier
!mail-mta/esmtp
!mail-mta/exim
!mail-mta/mini-qmail
!mail-mta/msmtp[mta]
!mail-mta/netqmail
!mail-mta/nullmailer
!mail-mta/postfix
!mail-mta/qmail-ldap
!mail-mta/sendmail
!mail-mta/opensmtpd
)
"
REQUIRED_USE="gnutls? ( ssl )"
src_prepare() {
default
eapply "${WORKDIR}"/patches/0010_all_maxsysuid.patch
eapply "${WORKDIR}"/patches/0020_all_from-format-fix.patch
eapply "${WORKDIR}"/patches/0030_all_authpass.patch
eapply "${WORKDIR}"/patches/0040_all_darwin7.patch
eapply "${WORKDIR}"/patches/0050_all_strndup.patch
eapply "${WORKDIR}"/patches/0060_all_opessl_crypto.patch
eapply "${WORKDIR}"/patches/0070_all_solaris-basename.patch
eapply "${WORKDIR}"/patches/0080_all_gnutls.patch
eapply "${WORKDIR}"/patches/0090_all_debian-remote-addr.patch
eapply "${WORKDIR}"/patches/0100_all_ldflags.patch
eapply "${WORKDIR}"/patches/0110_all_stdint.patch
eapply "${WORKDIR}"/patches/0120_all_aliases.patch
eapply -p0 "${WORKDIR}"/patches/0130_all_garbage-writes.patch
# let's start by not using configure.in anymore as future autoconf
# versions will not support it.
mv configure.in configure.ac || die
eautoconf
}
src_configure() {
local myeconfargs=(
--sysconfdir="${EPREFIX}"/etc/ssmtp
$(use_enable ssl) $(use_with gnutls)
$(use_enable ipv6 inet6)
--enable-md5auth
)
econf "${myeconfargs[@]}"
}
src_compile() {
emake etcdir="${EPREFIX}"/etc
}
src_install() {
dosbin ssmtp
doman ssmtp.8 ssmtp.conf.5
dodoc ChangeLog CHANGELOG_OLD INSTALL README TLS
newdoc ssmtp.lsm DESC
insinto /etc/ssmtp
doins ssmtp.conf revaliases
local conffile="${ED}/etc/ssmtp/ssmtp.conf"
# Sorry about the weird indentation, I couldn't figure out a cleverer way
# to do this without having horribly >80 char lines.
sed -i -e "s:^hostname=:\n# Gentoo bug #47562\\
# Commenting the following line will force ssmtp to figure\\
# out the hostname itself.\n\\
# hostname=:" \
"${conffile}" || die "sed failed"
# Comment rewriteDomain (bug #243364)
sed -i -e "s:^rewriteDomain=:#rewriteDomain=:" "${conffile}"
# Set restrictive perms on ssmtp.conf as per #187841, #239197
# Protect the ssmtp configfile from being readable by regular users as it
# may contain login/password data to auth against a the mailhub used.
if ! use prefix; then
fowners root:ssmtp /etc/ssmtp/ssmtp.conf
fperms 640 /etc/ssmtp/ssmtp.conf
fowners root:ssmtp /usr/sbin/ssmtp
fperms 2711 /usr/sbin/ssmtp
fi
if use mta; then
dosym ../sbin/ssmtp /usr/lib/sendmail
dosym ssmtp /usr/sbin/sendmail
dosym ../sbin/ssmtp /usr/bin/mailq
dosym ../sbin/ssmtp /usr/bin/newaliases
fi
}
|