From 5e41a38157bb40e8513e8e34426e85faba672fe7 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 14 Jun 2024 00:09:04 +0100 Subject: gentoo auto-resync : 14:06:2024 - 00:09:04 --- mail-mta/Manifest.gz | Bin 2384 -> 2383 bytes mail-mta/postfix/Manifest | 4 +- mail-mta/postfix/postfix-3.10_pre20240603.ebuild | 311 ----------------------- mail-mta/postfix/postfix-3.10_pre20240612.ebuild | 311 +++++++++++++++++++++++ 4 files changed, 313 insertions(+), 313 deletions(-) delete mode 100644 mail-mta/postfix/postfix-3.10_pre20240603.ebuild create mode 100644 mail-mta/postfix/postfix-3.10_pre20240612.ebuild (limited to 'mail-mta') diff --git a/mail-mta/Manifest.gz b/mail-mta/Manifest.gz index 509b7288e42c..31a6a6936aa2 100644 Binary files a/mail-mta/Manifest.gz and b/mail-mta/Manifest.gz differ diff --git a/mail-mta/postfix/Manifest b/mail-mta/postfix/Manifest index 29856e6c8bcd..38d2e0611ef1 100644 --- a/mail-mta/postfix/Manifest +++ b/mail-mta/postfix/Manifest @@ -2,11 +2,11 @@ AUX postfix.rc6.2.7 2107 BLAKE2B 4ea7006a381b76d5926a7d1794ab45e30d4829a17acfa0f AUX postfix.service 709 BLAKE2B 83fec03e622e3eb1e4b66021b94972b63ace3e368dbf6148aa4fc7832652ba3d452c074e51d19e99b78286c8f84e48557940dcef4656c766f5ff9c4b8078049c SHA512 cb6d04e28d19ccb3c0b33058bae033baaa2976d4d75adc1b28f9aaff928dd1da77292dd16c7f0ca2d68af0a3aa6d74c74db0d550eb95516ae041ebdb9493e32a AUX smtp.pass 29 BLAKE2B 589915bd2856fa64e22caa12fca54ef342eb07606de38d3879c13ac395413c84de6c3b733c83cc0625a4433167efcc7d504b2f87fa26c05b2facde9c3d103021 SHA512 a8a940099a77ea0547004daf5392a6efc0cd643f10072803d65e37763012464ad25b1b925ae9e32bffb3c3e8a5d4b2d3bb5619a174d58fdc4ea5d4090db0d365 AUX smtp.sasl 42 BLAKE2B 67e9108101779b6027fa1e5cc7c9256a606d440e15bb037a0da186e6b4983ab26e88ede2f0604737c78144c03e182f66005062f1d49e10443d1ddb9757461d1f SHA512 a48e2bd173c4443dd2c389f6973a541dbcba4223b52b42b409a68d934a7fc82a98d4027267befcd5db6ec628cce6a9dffdf044e6fbd774b6e748f07f4106db47 -DIST postfix-3.10-20240603.tar.gz 4958205 BLAKE2B bee8fec155af571fe92efb31bc6e1c9e78ea74171d3e164126a6a3191e35a7228c6f57e14d07d55007013f332598770ae26a5e5da385d4b92148a13df4969075 SHA512 2bab64958acfe37d303f009ceab907ba146bf8c92e67486138fabbaec98227dd89e6150566183578eaf6aa7d57f19fc87acadd632661460a665b302617279f4b +DIST postfix-3.10-20240612.tar.gz 4958739 BLAKE2B 16ac253c97ad2696e408cb015bd5d9a969dac29a1f87598a2f726fa64bf3a6b63fb16605b29bbbb56b62310d8758f9c3ceabe6faf471e854ad33150a9ba220c4 SHA512 ad59ade2d822848e6a3829c87c1486aeab152caf7600ac761167adcd0bad0a7eb94272237f31c92c2a16e00c0ff2ba4ee74b57b69bac7b342e74bc61918c3d9a DIST postfix-3.8.5.tar.gz 4871284 BLAKE2B 0de999c47a4130eb3418ec60b23c10be405b9bc4b2a6022671f9dc4713256d2b81d3b43f01d89e02d2593f87109dcde366b0265eb0cb13cb3118d0e60e36b48b SHA512 26005da5750e7af742f4fc7596ae8320467176e069546c3487418c663b54f56734b4a6541665b8d72d94df2e0fd4f68a2bcc44c50a6d950334d5a5fb2293dff4 DIST postfix-3.8.6.tar.gz 4873054 BLAKE2B eda349dbf7fe45636fbd68991dba9f099a41dd402f7d58eb71ae881b5889889e5fd29e42e2492ab2af4d7febae1922cb3513b740b21e97f12deb44b5927a3c3d SHA512 2b227bb6b57e4cf2d727a23762b161f2328959faa4683d63b35543701c3e954be552537eaa14a899c65ec4856d9f91b0398337088a6e2b48c0446fd406be8de4 DIST postfix-3.9.0.tar.gz 4953133 BLAKE2B e07a525d9cbea43d3ed11f3d672452cf94f88ca7bbaf3c3254bf5be4ef675a1797a5fff2444c0db60c6eb53e43734a388a91faed72bb2fb4e3e5a353535602b0 SHA512 46faaf529a6d2edc5ea747ee0d73a028f7061a923da0ea4b1e1828d935b15f5782d83f7a8472e7c74b45ea0e96666c871efd352934bead28a88ddd3561ade324 -EBUILD postfix-3.10_pre20240603.ebuild 8411 BLAKE2B bde0cd29c70ae795fe8696726ae5c67716f68fa6e1e5d838c684034496d60a33abf012a66f01bd3772ddc41cc0c3523e2892846817c34f4be28327320e1de020 SHA512 c2237053b348f57a7ef84981dd5cf0dbd6864d4ad19e83802d7b311601775bf355ef880f5bbc9a11599fd49b4e50c6cec3f59ed6098080354f8588817a12f404 +EBUILD postfix-3.10_pre20240612.ebuild 8411 BLAKE2B bde0cd29c70ae795fe8696726ae5c67716f68fa6e1e5d838c684034496d60a33abf012a66f01bd3772ddc41cc0c3523e2892846817c34f4be28327320e1de020 SHA512 c2237053b348f57a7ef84981dd5cf0dbd6864d4ad19e83802d7b311601775bf355ef880f5bbc9a11599fd49b4e50c6cec3f59ed6098080354f8588817a12f404 EBUILD postfix-3.8.5.ebuild 8361 BLAKE2B b82838527efcecd8d3342646d8ee2e71dc6afc19269db4dffe787e489d28569c51dc3c39bf955578c962f701c8ad7ad88602440421f8278720b2e8442465da74 SHA512 28e8aeca4d63c549a1550347c880c337c2ba72a399b26cc295d4ac82ec5efcad7cc362349d3fc6d3d37a3b77bfcb9dc4b58f919f598186778aa4f2e39a2bae67 EBUILD postfix-3.8.6.ebuild 8367 BLAKE2B 516c2e76bd01f99a1c70d9bf3e286e41b4fc20245e4689f3f3df614919a55858b5ec9d2f0802f763c9d476afd2c2ed7537cc1c07a1b52f35cda65b3f804672cc SHA512 87ad08edd945f52bbd2b21767973cb3ee1e9aabfd561f78d852816af703dcedd675d0f165fb77dc4d6fa4b2436b8f04d155f0e83a9dbc9fcada02aac5ea186c5 EBUILD postfix-3.9.0.ebuild 8407 BLAKE2B a18012df0732456aa6dc88e21f30bd1d943f035f92596ad92ec2c3e60b5f77819b8c9a9fdc2f1278f1334273f76ca075c3f8b3932c5ce9b8ff404f8306aad12c SHA512 7ed62658dcfa3ce2ee0c2e8c92c2a8e0b7728c262b78384f526e14e828f72320042884e9bfcd7ca6021a84e06c8a56b878253096947fb1559a35477b431164bb diff --git a/mail-mta/postfix/postfix-3.10_pre20240603.ebuild b/mail-mta/postfix/postfix-3.10_pre20240603.ebuild deleted file mode 100644 index 5956c9b9539b..000000000000 --- a/mail-mta/postfix/postfix-3.10_pre20240603.ebuild +++ /dev/null @@ -1,311 +0,0 @@ -# Copyright 1999-2024 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=8 -inherit pam systemd toolchain-funcs - -MY_PV="${PV/_pre/-}" -MY_SRC="${PN}-${MY_PV}" -MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental" -RC_VER="2.7" - -DESCRIPTION="A fast and secure drop-in replacement for sendmail" -HOMEPAGE="http://www.postfix.org/" -SRC_URI="${MY_URI}/${MY_SRC}.tar.gz" -S="${WORKDIR}/${MY_SRC}" - -LICENSE="|| ( IBM EPL-2.0 )" -SLOT="0" -KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" - -IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind lmdb mbox memcached mongodb mysql nis pam postgres sasl selinux sqlite ssl" - -DEPEND=" - acct-group/postfix - acct-group/postdrop - acct-user/postfix - dev-libs/libpcre2:0 - dev-lang/perl - berkdb? ( >=sys-libs/db-3.2:* ) - cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r4 ) ) - eai? ( dev-libs/icu:= ) - ldap? ( net-nds/openldap:= ) - ldap-bind? ( net-nds/openldap:=[sasl] ) - lmdb? ( >=dev-db/lmdb-0.9.11:= ) - mongodb? ( dev-libs/mongo-c-driver dev-libs/libbson ) - mysql? ( dev-db/mysql-connector-c:0= ) - nis? ( net-libs/libnsl:= ) - pam? ( sys-libs/pam ) - postgres? ( dev-db/postgresql:* ) - sasl? ( >=dev-libs/cyrus-sasl-2 ) - sqlite? ( dev-db/sqlite:3 ) - ssl? ( >=dev-libs/openssl-1.1.1:0= ) - " - -RDEPEND="${DEPEND} - memcached? ( net-misc/memcached ) - net-mail/mailbase - !mail-mta/courier - !mail-mta/esmtp - !mail-mta/exim - !mail-mta/msmtp[mta] - !mail-mta/netqmail - !mail-mta/nullmailer - !mail-mta/sendmail - !mail-mta/opensmtpd - !mail-mta/ssmtp[mta] - selinux? ( sec-policy/selinux-postfix )" - -# require at least one db implementation for newalias (and postmap) -# command to function properly -REQUIRED_USE=" - || ( berkdb cdb lmdb ) - ldap-bind? ( ldap sasl ) - " - -src_prepare() { - default - sed -i -e "/^#define ALIAS_DB_MAP/s|:/etc/aliases|:/etc/mail/aliases|" \ - src/util/sys_defs.h || die "sed failed" - # change default paths to better comply with portage standard paths - sed -i -e "s:/usr/local/:/usr/:g" conf/master.cf || die "sed failed" -} - -src_configure() { - # bug #915670 - unset LD_LIBRARY_PATH - - for name in CDB LDAP LMDB MONGODB MYSQL PCRE PGSQL SDBM SQLITE - do - local AUXLIBS_${name}="" - done - - # Make sure LDFLAGS get passed down to the executables. - local mycc="" mylibs="${LDFLAGS} -ldl" - - # libpcre is EOL. prefer libpcre2 - mycc=" -DHAS_PCRE=2" - AUXLIBS_PCRE="$(pcre2-config --libs8)" - - use pam && mylibs="${mylibs} -lpam" - - if use ssl; then - mycc="${mycc} -DUSE_TLS" - mylibs="${mylibs} -lssl -lcrypto" - fi - - if ! use eai; then - mycc="${mycc} -DNO_EAI" - fi - - if use ldap; then - mycc="${mycc} -DHAS_LDAP" - AUXLIBS_LDAP="-lldap -llber" - fi - - if use lmdb; then - mycc="${mycc} -DHAS_LMDB" - AUXLIBS_LMDB="-llmdb -lpthread" - fi - - if use mongodb; then - mycc="${mycc} -DHAS_MONGODB $(pkg-config --cflags libmongoc-1.0)" - AUXLIBS_MONGODB="-lmongoc-1.0 -lbson-1.0" - fi - - if use mysql; then - mycc="${mycc} -DHAS_MYSQL $(mysql_config --include)" - AUXLIBS_MYSQL="$(mysql_config --libs)" - fi - - if use postgres; then - mycc="${mycc} -DHAS_PGSQL -I$(pg_config --includedir)" - AUXLIBS_PGSQL="-L$(pg_config --libdir) -lpq" - fi - - if use sqlite; then - mycc="${mycc} -DHAS_SQLITE" - AUXLIBS_SQLITE="-lsqlite3 -lpthread" - fi - - if use sasl; then - if use dovecot-sasl; then - # Set dovecot as default. - mycc="${mycc} -DDEF_SASL_SERVER=\\\"dovecot\\\"" - fi - if use ldap-bind; then - mycc="${mycc} -DUSE_LDAP_SASL" - fi - mycc="${mycc} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" - mylibs="${mylibs} -lsasl2" - elif use dovecot-sasl; then - mycc="${mycc} -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\"" - fi - - if ! use nis; then - mycc="${mycc} -DNO_NIS" - fi - - if ! use berkdb; then - mycc="${mycc} -DNO_DB" - # change default database type - if use lmdb; then - mycc="${mycc} -DDEF_DB_TYPE=\\\"lmdb\\\"" - elif use cdb; then - mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\"" - fi - fi - - if use cdb; then - mycc="${mycc} -DHAS_CDB -I/usr/include/cdb" - # Tinycdb is preferred. - if has_version dev-db/tinycdb ; then - AUXLIBS_CDB="-lcdb" - else - CDB_PATH="/usr/$(get_libdir)" - for i in cdb.a alloc.a buffer.a unix.a byte.a ; do - AUXLIBS_CDB="${AUXLIBS_CDB} ${CDB_PATH}/${i}" - done - fi - fi - - sed -i -e "/^RANLIB/s/ranlib/$(tc-getRANLIB)/g" "${S}"/makedefs - sed -i -e "/^AR/s/ar/$(tc-getAR)/g" "${S}"/makedefs - - emake makefiles \ - shared=yes \ - dynamicmaps=no \ - pie=yes \ - shlib_directory="/usr/$(get_libdir)/postfix/MAIL_VERSION" \ - DEBUG="" \ - CC="$(tc-getCC)" \ - OPT="${CFLAGS}" \ - CCARGS="${mycc}" \ - AUXLIBS="${mylibs}" \ - AUXLIBS_CDB="${AUXLIBS_CDB}" \ - AUXLIBS_LDAP="${AUXLIBS_LDAP}" \ - AUXLIBS_LMDB="${AUXLIBS_LMDB}" \ - AUXLIBS_MONGODB="${AUXLIBS_MONGODB}" \ - AUXLIBS_MYSQL="${AUXLIBS_MYSQL}" \ - AUXLIBS_PCRE="${AUXLIBS_PCRE}" \ - AUXLIBS_PGSQL="${AUXLIBS_PGSQL}" \ - AUXLIBS_SDBM="${AUXLIBS_SDBM}" \ - AUXLIBS_SQLITE="${AUXLIBS_SQLITE}" -} - -src_install() { - LD_LIBRARY_PATH="${S}/lib" \ - /bin/sh postfix-install \ - -non-interactive \ - install_root="${D}" \ - config_directory="/etc/postfix" \ - manpage_directory="/usr/share/man" \ - command_directory="/usr/sbin" \ - mailq_path="/usr/bin/mailq" \ - newaliases_path="/usr/bin/newaliases" \ - sendmail_path="/usr/sbin/sendmail" \ - || die "postfix-install failed" - - # Fix spool removal on upgrade - rm -Rf "${D}"/var - keepdir /var/spool/postfix - - # Install rmail for UUCP, closes bug #19127 - dobin auxiliary/rmail/rmail - - # Provide another link for legacy FSH - dosym ../sbin/sendmail /usr/$(get_libdir)/sendmail - - # Install qshape, posttls-finger, collate and tlstype - dobin auxiliary/qshape/qshape.pl - doman man/man1/qshape.1 - dobin bin/posttls-finger - doman man/man1/posttls-finger.1 - dobin auxiliary/collate/collate.pl - newdoc auxiliary/collate/README README.collate - dobin auxiliary/collate/tlstype.pl - dodoc auxiliary/collate/README.tlstype - - # Performance tuning tools and their manuals - dosbin bin/smtp-{source,sink} bin/qmqp-{source,sink} - doman man/man1/smtp-{source,sink}.1 man/man1/qmqp-{source,sink}.1 - - # Set proper permissions on required files/directories - keepdir /var/lib/postfix - fowners -R postfix:postfix /var/lib/postfix - fperms 0750 /var/lib/postfix - fowners root:postdrop /usr/sbin/post{drop,queue,log} - fperms 02755 /usr/sbin/post{drop,queue,log} - - keepdir /etc/postfix - keepdir /etc/postfix/postfix-files.d - if use mbox; then - mypostconf="mail_spool_directory=/var/mail" - else - mypostconf="home_mailbox=.maildir/" - fi - LD_LIBRARY_PATH="${S}/lib" \ - "${D}"/usr/sbin/postconf -c "${D}"/etc/postfix \ - -e ${mypostconf} || die "postconf failed" - - insinto /etc/postfix - newins "${FILESDIR}"/smtp.pass saslpass - fperms 600 /etc/postfix/saslpass - - newinitd "${FILESDIR}"/postfix.rc6.${RC_VER} postfix - # do not start mysql/postgres unnecessarily - bug #359913 - use mysql || sed -i -e "s/mysql //" "${D}/etc/init.d/postfix" - use postgres || sed -i -e "s/postgresql //" "${D}/etc/init.d/postfix" - - dodoc *README COMPATIBILITY HISTORY PORTING RELEASE_NOTES* - dodoc -r README_FILES/ examples/ - # postfix set-permissions expects uncompressed man files - docompress -x /usr/share/man - - if use pam; then - pamd_mimic_system smtp auth account - fi - - if use sasl; then - insinto /etc/sasl2 - newins "${FILESDIR}"/smtp.sasl smtpd.conf - fi - - # header files - insinto /usr/include/postfix - doins include/*.h - - systemd_dounit "${FILESDIR}/${PN}.service" -} - -pkg_postinst() { - # warn if no aliases database - # do not assume berkdb - if [[ ! -e /etc/mail/aliases.db \ - && ! -e /etc/mail/aliases.cdb \ - && ! -e /etc/mail/aliases.lmdb ]] ; then - ewarn - ewarn "You must edit /etc/mail/aliases to suit your needs" - ewarn "and then run /usr/bin/newaliases. Postfix will not" - ewarn "work correctly without it." - ewarn - fi - # run newaliases anyway. otherwise, we might break when switching - # default database implementation - from berkdb to cdb for example - "${EROOT}"/usr/bin/newaliases - - # check and fix file permissions - "${EROOT}"/usr/sbin/postfix set-permissions - - # hint for configuring tls - if use ssl ; then - if "${EROOT}"/usr/sbin/postfix tls all-default-client; then - elog "To configure client side TLS settings, please run:" - elog "${EROOT}"/usr/sbin/postfix tls enable-client - fi - if "${EROOT}"/usr/sbin/postfix tls all-default-server; then - elog "To configure server side TLS settings, please run:" - elog "${EROOT}"/usr/sbin/postfix tls enable-server - fi - fi -} diff --git a/mail-mta/postfix/postfix-3.10_pre20240612.ebuild b/mail-mta/postfix/postfix-3.10_pre20240612.ebuild new file mode 100644 index 000000000000..5956c9b9539b --- /dev/null +++ b/mail-mta/postfix/postfix-3.10_pre20240612.ebuild @@ -0,0 +1,311 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +inherit pam systemd toolchain-funcs + +MY_PV="${PV/_pre/-}" +MY_SRC="${PN}-${MY_PV}" +MY_URI="ftp://ftp.porcupine.org/mirrors/postfix-release/experimental" +RC_VER="2.7" + +DESCRIPTION="A fast and secure drop-in replacement for sendmail" +HOMEPAGE="http://www.postfix.org/" +SRC_URI="${MY_URI}/${MY_SRC}.tar.gz" +S="${WORKDIR}/${MY_SRC}" + +LICENSE="|| ( IBM EPL-2.0 )" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" + +IUSE="+berkdb cdb dovecot-sasl +eai ldap ldap-bind lmdb mbox memcached mongodb mysql nis pam postgres sasl selinux sqlite ssl" + +DEPEND=" + acct-group/postfix + acct-group/postdrop + acct-user/postfix + dev-libs/libpcre2:0 + dev-lang/perl + berkdb? ( >=sys-libs/db-3.2:* ) + cdb? ( || ( >=dev-db/tinycdb-0.76 >=dev-db/cdb-0.75-r4 ) ) + eai? ( dev-libs/icu:= ) + ldap? ( net-nds/openldap:= ) + ldap-bind? ( net-nds/openldap:=[sasl] ) + lmdb? ( >=dev-db/lmdb-0.9.11:= ) + mongodb? ( dev-libs/mongo-c-driver dev-libs/libbson ) + mysql? ( dev-db/mysql-connector-c:0= ) + nis? ( net-libs/libnsl:= ) + pam? ( sys-libs/pam ) + postgres? ( dev-db/postgresql:* ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + sqlite? ( dev-db/sqlite:3 ) + ssl? ( >=dev-libs/openssl-1.1.1:0= ) + " + +RDEPEND="${DEPEND} + memcached? ( net-misc/memcached ) + net-mail/mailbase + !mail-mta/courier + !mail-mta/esmtp + !mail-mta/exim + !mail-mta/msmtp[mta] + !mail-mta/netqmail + !mail-mta/nullmailer + !mail-mta/sendmail + !mail-mta/opensmtpd + !mail-mta/ssmtp[mta] + selinux? ( sec-policy/selinux-postfix )" + +# require at least one db implementation for newalias (and postmap) +# command to function properly +REQUIRED_USE=" + || ( berkdb cdb lmdb ) + ldap-bind? ( ldap sasl ) + " + +src_prepare() { + default + sed -i -e "/^#define ALIAS_DB_MAP/s|:/etc/aliases|:/etc/mail/aliases|" \ + src/util/sys_defs.h || die "sed failed" + # change default paths to better comply with portage standard paths + sed -i -e "s:/usr/local/:/usr/:g" conf/master.cf || die "sed failed" +} + +src_configure() { + # bug #915670 + unset LD_LIBRARY_PATH + + for name in CDB LDAP LMDB MONGODB MYSQL PCRE PGSQL SDBM SQLITE + do + local AUXLIBS_${name}="" + done + + # Make sure LDFLAGS get passed down to the executables. + local mycc="" mylibs="${LDFLAGS} -ldl" + + # libpcre is EOL. prefer libpcre2 + mycc=" -DHAS_PCRE=2" + AUXLIBS_PCRE="$(pcre2-config --libs8)" + + use pam && mylibs="${mylibs} -lpam" + + if use ssl; then + mycc="${mycc} -DUSE_TLS" + mylibs="${mylibs} -lssl -lcrypto" + fi + + if ! use eai; then + mycc="${mycc} -DNO_EAI" + fi + + if use ldap; then + mycc="${mycc} -DHAS_LDAP" + AUXLIBS_LDAP="-lldap -llber" + fi + + if use lmdb; then + mycc="${mycc} -DHAS_LMDB" + AUXLIBS_LMDB="-llmdb -lpthread" + fi + + if use mongodb; then + mycc="${mycc} -DHAS_MONGODB $(pkg-config --cflags libmongoc-1.0)" + AUXLIBS_MONGODB="-lmongoc-1.0 -lbson-1.0" + fi + + if use mysql; then + mycc="${mycc} -DHAS_MYSQL $(mysql_config --include)" + AUXLIBS_MYSQL="$(mysql_config --libs)" + fi + + if use postgres; then + mycc="${mycc} -DHAS_PGSQL -I$(pg_config --includedir)" + AUXLIBS_PGSQL="-L$(pg_config --libdir) -lpq" + fi + + if use sqlite; then + mycc="${mycc} -DHAS_SQLITE" + AUXLIBS_SQLITE="-lsqlite3 -lpthread" + fi + + if use sasl; then + if use dovecot-sasl; then + # Set dovecot as default. + mycc="${mycc} -DDEF_SASL_SERVER=\\\"dovecot\\\"" + fi + if use ldap-bind; then + mycc="${mycc} -DUSE_LDAP_SASL" + fi + mycc="${mycc} -DUSE_SASL_AUTH -DUSE_CYRUS_SASL -I/usr/include/sasl" + mylibs="${mylibs} -lsasl2" + elif use dovecot-sasl; then + mycc="${mycc} -DUSE_SASL_AUTH -DDEF_SERVER_SASL_TYPE=\\\"dovecot\\\"" + fi + + if ! use nis; then + mycc="${mycc} -DNO_NIS" + fi + + if ! use berkdb; then + mycc="${mycc} -DNO_DB" + # change default database type + if use lmdb; then + mycc="${mycc} -DDEF_DB_TYPE=\\\"lmdb\\\"" + elif use cdb; then + mycc="${mycc} -DDEF_DB_TYPE=\\\"cdb\\\"" + fi + fi + + if use cdb; then + mycc="${mycc} -DHAS_CDB -I/usr/include/cdb" + # Tinycdb is preferred. + if has_version dev-db/tinycdb ; then + AUXLIBS_CDB="-lcdb" + else + CDB_PATH="/usr/$(get_libdir)" + for i in cdb.a alloc.a buffer.a unix.a byte.a ; do + AUXLIBS_CDB="${AUXLIBS_CDB} ${CDB_PATH}/${i}" + done + fi + fi + + sed -i -e "/^RANLIB/s/ranlib/$(tc-getRANLIB)/g" "${S}"/makedefs + sed -i -e "/^AR/s/ar/$(tc-getAR)/g" "${S}"/makedefs + + emake makefiles \ + shared=yes \ + dynamicmaps=no \ + pie=yes \ + shlib_directory="/usr/$(get_libdir)/postfix/MAIL_VERSION" \ + DEBUG="" \ + CC="$(tc-getCC)" \ + OPT="${CFLAGS}" \ + CCARGS="${mycc}" \ + AUXLIBS="${mylibs}" \ + AUXLIBS_CDB="${AUXLIBS_CDB}" \ + AUXLIBS_LDAP="${AUXLIBS_LDAP}" \ + AUXLIBS_LMDB="${AUXLIBS_LMDB}" \ + AUXLIBS_MONGODB="${AUXLIBS_MONGODB}" \ + AUXLIBS_MYSQL="${AUXLIBS_MYSQL}" \ + AUXLIBS_PCRE="${AUXLIBS_PCRE}" \ + AUXLIBS_PGSQL="${AUXLIBS_PGSQL}" \ + AUXLIBS_SDBM="${AUXLIBS_SDBM}" \ + AUXLIBS_SQLITE="${AUXLIBS_SQLITE}" +} + +src_install() { + LD_LIBRARY_PATH="${S}/lib" \ + /bin/sh postfix-install \ + -non-interactive \ + install_root="${D}" \ + config_directory="/etc/postfix" \ + manpage_directory="/usr/share/man" \ + command_directory="/usr/sbin" \ + mailq_path="/usr/bin/mailq" \ + newaliases_path="/usr/bin/newaliases" \ + sendmail_path="/usr/sbin/sendmail" \ + || die "postfix-install failed" + + # Fix spool removal on upgrade + rm -Rf "${D}"/var + keepdir /var/spool/postfix + + # Install rmail for UUCP, closes bug #19127 + dobin auxiliary/rmail/rmail + + # Provide another link for legacy FSH + dosym ../sbin/sendmail /usr/$(get_libdir)/sendmail + + # Install qshape, posttls-finger, collate and tlstype + dobin auxiliary/qshape/qshape.pl + doman man/man1/qshape.1 + dobin bin/posttls-finger + doman man/man1/posttls-finger.1 + dobin auxiliary/collate/collate.pl + newdoc auxiliary/collate/README README.collate + dobin auxiliary/collate/tlstype.pl + dodoc auxiliary/collate/README.tlstype + + # Performance tuning tools and their manuals + dosbin bin/smtp-{source,sink} bin/qmqp-{source,sink} + doman man/man1/smtp-{source,sink}.1 man/man1/qmqp-{source,sink}.1 + + # Set proper permissions on required files/directories + keepdir /var/lib/postfix + fowners -R postfix:postfix /var/lib/postfix + fperms 0750 /var/lib/postfix + fowners root:postdrop /usr/sbin/post{drop,queue,log} + fperms 02755 /usr/sbin/post{drop,queue,log} + + keepdir /etc/postfix + keepdir /etc/postfix/postfix-files.d + if use mbox; then + mypostconf="mail_spool_directory=/var/mail" + else + mypostconf="home_mailbox=.maildir/" + fi + LD_LIBRARY_PATH="${S}/lib" \ + "${D}"/usr/sbin/postconf -c "${D}"/etc/postfix \ + -e ${mypostconf} || die "postconf failed" + + insinto /etc/postfix + newins "${FILESDIR}"/smtp.pass saslpass + fperms 600 /etc/postfix/saslpass + + newinitd "${FILESDIR}"/postfix.rc6.${RC_VER} postfix + # do not start mysql/postgres unnecessarily - bug #359913 + use mysql || sed -i -e "s/mysql //" "${D}/etc/init.d/postfix" + use postgres || sed -i -e "s/postgresql //" "${D}/etc/init.d/postfix" + + dodoc *README COMPATIBILITY HISTORY PORTING RELEASE_NOTES* + dodoc -r README_FILES/ examples/ + # postfix set-permissions expects uncompressed man files + docompress -x /usr/share/man + + if use pam; then + pamd_mimic_system smtp auth account + fi + + if use sasl; then + insinto /etc/sasl2 + newins "${FILESDIR}"/smtp.sasl smtpd.conf + fi + + # header files + insinto /usr/include/postfix + doins include/*.h + + systemd_dounit "${FILESDIR}/${PN}.service" +} + +pkg_postinst() { + # warn if no aliases database + # do not assume berkdb + if [[ ! -e /etc/mail/aliases.db \ + && ! -e /etc/mail/aliases.cdb \ + && ! -e /etc/mail/aliases.lmdb ]] ; then + ewarn + ewarn "You must edit /etc/mail/aliases to suit your needs" + ewarn "and then run /usr/bin/newaliases. Postfix will not" + ewarn "work correctly without it." + ewarn + fi + # run newaliases anyway. otherwise, we might break when switching + # default database implementation - from berkdb to cdb for example + "${EROOT}"/usr/bin/newaliases + + # check and fix file permissions + "${EROOT}"/usr/sbin/postfix set-permissions + + # hint for configuring tls + if use ssl ; then + if "${EROOT}"/usr/sbin/postfix tls all-default-client; then + elog "To configure client side TLS settings, please run:" + elog "${EROOT}"/usr/sbin/postfix tls enable-client + fi + if "${EROOT}"/usr/sbin/postfix tls all-default-server; then + elog "To configure server side TLS settings, please run:" + elog "${EROOT}"/usr/sbin/postfix tls enable-server + fi + fi +} -- cgit v1.2.3