commit:     eba72b66f579b6cf5b96e0b1b04184305a9ab987
Author:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
AuthorDate: Mon Oct 24 20:52:34 2022 +0000
Commit:     Patrick McLean <chutzpah <AT> gentoo <DOT> org>
CommitDate: Mon Oct 24 20:52:34 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=eba72b66

net-dns/dnsmasq: add 2.87

Signed-off-by: Patrick McLean <chutzpah <AT> gentoo.org>

 net-dns/dnsmasq/Manifest            |   1 +
 net-dns/dnsmasq/dnsmasq-2.87.ebuild | 224 ++++++++++++++++++++++++++++++++++++
 2 files changed, 225 insertions(+)

diff --git a/net-dns/dnsmasq/Manifest b/net-dns/dnsmasq/Manifest
index 5e894e467011..ea96d6ca7e06 100644
--- a/net-dns/dnsmasq/Manifest
+++ b/net-dns/dnsmasq/Manifest
@@ -1,2 +1,3 @@
 DIST dnsmasq-2.85.tar.xz 518316 BLAKE2B 
b7c081132c65d67b65f797bdbc603930c1509717bc1b5209b12f72fa3f01b4bae2f26a5387f95ef20317cd3d60e097c0b8bef5e019a35013f3ed2acce9fe9e89
 SHA512 
8beefe76b46f7d561f40d0900ba68b260a199cb62ab5b653746e3a1104c04fb8899b9e7a160a1be4fe8782bfb1607b556e9ffb9c25c4e99653e4bc74fcc03b09
 DIST dnsmasq-2.86.tar.xz 531404 BLAKE2B 
27307c70cc90d6e27dbf8e87589b8c72622e93f402c3a431e06facc58a62af46a478d1fdbfb9808a91ff3d2f5da88a8d12de9755009b558d685903e4d2a34de3
 SHA512 
487eae0afbc8bb3d5282a729ffb0cb2c9bdc7d8e46e2e8aa114cd7c5d82e0fd66f49926e7fa4028577548d6f57e8a865aca17f33963a589874584d608ab2deaf
+DIST dnsmasq-2.87.tar.xz 540528 BLAKE2B 
9d348f1746f819ea5da90ac341bd82254ec83acd8193732f99312d5c56073c8f3f374bf89cecec4fe58632c9e9f84e312a5474c561420dfd8537e221ecf68e2f
 SHA512 
965071ff35aed558a661e7f57ff82de170f4ad7fcdd6a4070ce7915c9f5e41450d8d86b2a0c2c30bf52ddc3aaeb22af18bb6da71a1cccb3c409429ef0ef308f3

diff --git a/net-dns/dnsmasq/dnsmasq-2.87.ebuild 
b/net-dns/dnsmasq/dnsmasq-2.87.ebuild
new file mode 100644
index 000000000000..5aa821ad8ac8
--- /dev/null
+++ b/net-dns/dnsmasq/dnsmasq-2.87.ebuild
@@ -0,0 +1,224 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+LUA_COMPAT=( lua5-{1..4} luajit )
+
+inherit toolchain-funcs lua-single systemd
+
+DESCRIPTION="Small forwarding DNS server"
+HOMEPAGE="https://thekelleys.org.uk/dnsmasq/doc.html";
+SRC_URI="https://thekelleys.org.uk/dnsmasq/${P}.tar.xz";
+
+LICENSE="|| ( GPL-2 GPL-3 )"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv ~s390 
~sparc ~x86"
+
+IUSE="auth-dns conntrack dbus +dhcp dhcp-tools dnssec +dumpfile id idn libidn2"
+IUSE+=" +loop +inotify ipv6 lua nettlehash nls script selinux static tftp"
+
+DM_LINGUAS=(de es fi fr id it no pl pt_BR ro)
+
+BDEPEND="
+       app-arch/xz-utils
+       virtual/pkgconfig
+       nls? ( sys-devel/gettext )
+"
+
+COMMON_DEPEND="
+       acct-group/dnsmasq
+       acct-user/dnsmasq
+       dbus? ( sys-apps/dbus:= )
+       idn? (
+               !libidn2? ( net-dns/libidn:0= )
+               libidn2? ( >=net-dns/libidn2-2.0:= )
+       )
+       lua? ( ${LUA_DEPS} )
+       conntrack? ( net-libs/libnetfilter_conntrack:= )
+       nls? ( sys-devel/gettext )
+"
+
+DEPEND="${COMMON_DEPEND}
+       dnssec? (
+               dev-libs/nettle:=[gmp]
+               static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
+       )
+       nettlehash? (
+               static? ( >=dev-libs/nettle-3.4[static-libs(+)] )
+       )
+"
+
+RDEPEND="${COMMON_DEPEND}
+       dnssec? (
+               !static? ( >=dev-libs/nettle-3.4:=[gmp] )
+       )
+       nettlehash? (
+               !static? ( dev-libs/nettle:=[gmp] )
+       )
+       selinux? ( sec-policy/selinux-dnsmasq )
+"
+
+REQUIRED_USE="
+       dhcp-tools? ( dhcp )
+       dnssec? ( !nettlehash )
+       lua? (
+               script
+               ${LUA_REQUIRED_USE}
+       )
+       libidn2? ( idn )
+"
+
+use_have() {
+       local no_only
+       if [[ ${1} == '-n' ]]; then
+               no_only=1
+               shift
+       fi
+       local useflag="${1}"
+       shift
+
+       local uword="${1:-${useflag}}"
+       shift
+
+       while [[ ${uword} ]]; do
+               uword="${uword^^}"
+
+               if ! use "${useflag}"; then
+                       printf -- " -DNO_%s" "${uword}"
+               elif [[ -z "${no_only}" ]]; then
+                       printf -- " -DHAVE_%s" "${uword}"
+               fi
+               uword="${1}"
+               shift
+       done
+}
+
+pkg_setup() {
+       use lua && lua-single_pkg_setup
+}
+
+pkg_pretend() {
+       if use static; then
+               einfo "Only sys-libs/gmp and dev-libs/nettle are statically 
linked."
+               use dnssec || einfo "Thus, ${P}[!dnssec,static] makes no 
sense;" \
+                       "in this case the static USE flag does nothing."
+       fi
+}
+
+src_prepare() {
+       default
+
+       sed -i -r 's:lua5.[0-9]+:lua:' Makefile || die
+       sed -i "s:%%PREFIX%%:${EPREFIX}/usr:" \
+               dnsmasq.conf.example || die
+}
+
+src_configure() {
+       COPTS=(
+               $(use_have -n auth-dns auth)
+               $(use_have conntrack)
+               $(use_have dbus)
+               $(use libidn2 || use_have idn)
+               $(use_have libidn2)
+               $(use_have -n inotify)
+               $(use_have -n dhcp dhcp dhcp6)
+               $(use_have -n ipv6 ipv6 dhcp6)
+               $(use_have -n id id)
+               $(use_have -n loop)
+               $(use_have lua luascript)
+               $(use_have -n script)
+               $(use_have -n tftp)
+               $(use_have dnssec)
+               $(use_have nettlehash)
+               $(use_have static dnssec_static)
+               $(use_have -n dumpfile)
+       )
+}
+
+src_compile() {
+       emake \
+               PREFIX=/usr \
+               MANDIR=/usr/share/man \
+               CC="$(tc-getCC)" \
+               PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+               CFLAGS="${CFLAGS}" \
+               LDFLAGS="${LDFLAGS}" \
+               COPTS="${COPTS[*]}" \
+               CONFFILE="/etc/${PN}.conf" \
+               all$(use nls && printf -- "-i18n\n")
+
+       use dhcp-tools && emake -C contrib/lease-tools \
+               PREFIX=/usr \
+               MANDIR=/usr/share/man \
+               CC="$(tc-getCC)" \
+               PKG_CONFIG="$(tc-getPKG_CONFIG)" \
+               CFLAGS="${CFLAGS}" \
+               LDFLAGS="${LDFLAGS}" \
+               all
+}
+
+src_install() {
+       local lingua puid
+       emake \
+               PREFIX=/usr \
+               MANDIR=/usr/share/man \
+               COPTS="${COPTS[*]}" \
+               DESTDIR="${ED}" \
+               install$(use nls && printf -- "-i18n\n")
+
+       for lingua in "${DM_LINGUAS[@]}"; do
+               has ${lingua} ${LINGUAS-${lingua}} \
+                       || rm -rf "${ED}"/usr/share/locale/${lingua}
+       done
+       [[ -d "${D}"/usr/share/locale/ ]] && \
+               rmdir --ignore-fail-on-non-empty "${ED}"/usr/share/locale/
+
+       dodoc CHANGELOG CHANGELOG.archive FAQ dnsmasq.conf.example
+       dodoc -r logo
+
+       docinto html/
+       dodoc *.html
+
+       newinitd "${FILESDIR}"/dnsmasq-init-r4 ${PN}
+       newconfd "${FILESDIR}"/dnsmasq.confd-r1 ${PN}
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/dnsmasq.logrotate ${PN}
+
+       insinto /etc
+       newins dnsmasq.conf.example dnsmasq.conf
+
+       insinto /usr/share/dnsmasq
+       doins trust-anchors.conf
+
+       if use dhcp; then
+               keepdir /var/lib/misc
+               newinitd "${FILESDIR}"/dnsmasq-init-dhcp-r3 ${PN}
+       fi
+       if use dbus; then
+               insinto /etc/dbus-1/system.d
+               doins dbus/dnsmasq.conf
+       fi
+
+       if use dhcp-tools; then
+               dosbin contrib/lease-tools/{dhcp_release,dhcp_lease_time}
+               doman contrib/lease-tools/{dhcp_release,dhcp_lease_time}.1
+               if use ipv6; then
+                       dosbin contrib/lease-tools/dhcp_release6
+                       doman contrib/lease-tools/dhcp_release6.1
+               fi
+       fi
+
+       systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
+}
+
+pkg_preinst() {
+       [[ -f /var/lib/misc/dnsmasq.leases ]] && \
+               cp /var/lib/misc/dnsmasq.leases "${T}"
+}
+
+pkg_postinst() {
+       [[ -f "${T}"/dnsmasq.leases ]] && \
+               cp "${T}"/dnsmasq.leases /var/lib/misc/dnsmasq.leases
+}

Reply via email to