mail-filter/opendmarc: [QA] fix glibc upgrade issue without hacks

Closes: https://bugs.gentoo.org/839951
Closes: https://github.com/gentoo/gentoo/pull/25173
Signed-off-by: David Seifert <soap@gentoo.org>
This commit is contained in:
David Seifert
2022-04-24 01:46:21 +02:00
parent 880ccdfab7
commit a62fc3b9e3
3 changed files with 24 additions and 79 deletions

View File

@@ -0,0 +1,17 @@
libopendmarc.so.2.0.3 uses
* __dn_expand
* __dn_skipname
* __res_nquery
which are defined in libresolv in glibc 2.33 and older.
See: https://bugs.gentoo.org/839951
--- a/libopendmarc/Makefile.am
+++ b/libopendmarc/Makefile.am
@@ -15,5 +15,6 @@
opendmarc_spf_dns.c \
opendmarc_internal.h
libopendmarc_la_LDFLAGS = -version-info $(LIBOPENDMARC_VERSION_INFO)
+libopendmarc_la_LIBADD = $(LIBRESOLV)
libopendmarc_includedir = $(includedir)/opendmarc
libopendmarc_include_HEADERS = dmarc.h

View File

@@ -1,71 +0,0 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit autotools systemd
DESCRIPTION="Open source DMARC implementation"
HOMEPAGE="http://www.trusteddomain.org/opendmarc/"
SRC_URI="https://github.com/trusteddomainproject/OpenDMARC/archive/rel-${PN}-${PV//./-}.tar.gz -> ${P}.tar.gz"
LICENSE="BSD"
SLOT="0/3" # 1.4 has API breakage with 1.3, yet uses same soname
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
IUSE="spf +reports static-libs"
DEPEND="reports? ( dev-perl/DBI )
|| ( mail-filter/libmilter mail-mta/sendmail )
elibc_glibc? ( >=sys-libs/glibc-2.34 )" #839951
RDEPEND="${DEPEND}
acct-user/opendmarc
reports? (
dev-perl/DBD-mysql
dev-perl/HTTP-Message
dev-perl/Switch
)
spf? ( mail-filter/libspf2 )"
S=${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}
PATCHES=(
"${FILESDIR}"/${PN}-1.4.1.1-CVE-2021-34555.patch
)
src_prepare() {
default
eautoreconf
if use !reports ; then
sed -i -e '/^SUBDIRS =/s/reports//' Makefile.in || die
fi
}
src_configure() {
econf \
$(use_with spf) \
$(use_with spf spf2-include "${EPREFIX}"/usr/include/spf2) \
$(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir)) \
$(use_enable static-libs static)
}
src_install() {
default
use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la
newinitd "${FILESDIR}"/opendmarc.initd opendmarc
newconfd "${FILESDIR}"/opendmarc.confd opendmarc
systemd_dounit "${FILESDIR}/${PN}.service"
dodir /etc/opendmarc
# create config file
sed \
-e 's:^# UserID .*$:UserID opendmarc:' \
-e "s:^# PidFile .*:PidFile ${EPREFIX}/var/run/opendmarc/opendmarc.pid:" \
-e '/^# Socket /s:^# ::' \
"${S}"/opendmarc/opendmarc.conf.sample \
> "${ED}"/etc/opendmarc/opendmarc.conf \
|| die
}

View File

@@ -8,15 +8,15 @@ inherit autotools systemd
DESCRIPTION="Open source DMARC implementation"
HOMEPAGE="http://www.trusteddomain.org/opendmarc/"
SRC_URI="https://github.com/trusteddomainproject/OpenDMARC/archive/rel-${PN}-${PV//./-}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}"
LICENSE="BSD"
SLOT="0/3" # 1.4 has API breakage with 1.3, yet uses same soname
KEYWORDS="~alpha amd64 arm ~arm64 ~hppa ~ia64 ppc ppc64 sparc x86"
IUSE="spf +reports static-libs"
IUSE="spf +reports"
DEPEND="reports? ( dev-perl/DBI )
|| ( mail-filter/libmilter mail-mta/sendmail )
elibc_glibc? ( <sys-libs/glibc-2.34 )" #839951
|| ( mail-filter/libmilter mail-mta/sendmail )"
RDEPEND="${DEPEND}
acct-user/opendmarc
reports? (
@@ -26,10 +26,9 @@ RDEPEND="${DEPEND}
)
spf? ( mail-filter/libspf2 )"
S=${WORKDIR}/OpenDMARC-rel-${PN}-${PV//./-}
PATCHES=(
"${FILESDIR}"/${PN}-1.4.1.1-CVE-2021-34555.patch
"${FILESDIR}"/${PN}-1.4.1.1-underlinking.patch
)
src_prepare() {
@@ -43,16 +42,16 @@ src_prepare() {
src_configure() {
econf \
--disable-static \
$(use_with spf) \
$(use_with spf spf2-include "${EPREFIX}"/usr/include/spf2) \
$(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir)) \
$(use_enable static-libs static)
$(use_with spf spf2-lib "${EPREFIX}"/usr/$(get_libdir))
}
src_install() {
default
use static-libs || rm -f "${ED}"/usr/$(get_libdir)/*.la
find "${ED}" -name '*.la' -delete || die
newinitd "${FILESDIR}"/opendmarc.initd opendmarc
newconfd "${FILESDIR}"/opendmarc.confd opendmarc