community/unbound to 1.14.0-1

This commit is contained in:
David Beauchamp 2021-12-11 19:44:02 -05:00
parent 9a0258b199
commit 25f1753b73
3 changed files with 34 additions and 92 deletions

View file

@ -8,35 +8,37 @@
# - disable LTO (--disable-flto)
pkgname=unbound
pkgver=1.13.2
pkgver=1.14.0
pkgrel=1
pkgdesc="Validating, recursive, and caching DNS resolver"
arch=(x86_64)
url="https://unbound.net/"
license=(BSD)
depends=(dnssec-anchors fstrm hiredis openssl ldns libevent libnghttp2 libsodium)
makedepends=(expat protobuf-c systemd python swig)
depends=(dnssec-anchors fstrm hiredis ldns libevent libnghttp2 libsodium openssl)
makedepends=(expat protobuf-c python swig systemd)
optdepends=(
'expat: for unbound-anchor'
'sh: for unbound-control-setup'
'python: python-bindings'
'python: for python-bindings'
)
provides=(libunbound.so)
backup=(etc/${pkgname}/${pkgname}.conf)
source=("https://unbound.net/downloads/${pkgname}-${pkgver}.tar.gz"{,.asc}
"${pkgname}-1.13.2-fix_libpython_linking.patch"
${pkgname}-sysusers.conf
${pkgname}-tmpfiles.conf
${pkgname}-trusted-key.hook)
sha512sums=('1e89441446e7a25c6a49bded645f8b348c1758c3be54e3a986041cb1f00c45d152fd469dc52666fb820574db9d51b16f1627dc8afcb9519508d4833ca358191a'
source=(
"https://unbound.net/downloads/${pkgname}-${pkgver}.tar.gz"{,.asc}
"${pkgname}-1.14.0-trust_anchor_file.patch"
${pkgname}-sysusers.conf
${pkgname}-tmpfiles.conf
${pkgname}-trusted-key.hook
)
sha512sums=('57f91d898b0a5d42e6a2ff1ccaec474f04dd5ad3c98e7eb7aa8d5eaa23b587f3077cf7eddf4df38f537c6d387028f12c2518ff13b7249aa7a1155cd6532a46b5'
'SKIP'
'836ec61c79f91e429feed7fca7b8df64c0233aa621b3c49011ad39854b231bbc7ab73408785278b0b8b7d1038bd2c9c57548d973ce796cccdb575307ff5318c6'
'9590d3d459d96f99cbc7482fae0f5318dd22a034e45cff18079e4f3c9f9c3c1d7af90cdd5353fb469eac08c535555fd164097b496286b807b2117e8a3a6cd304'
'ef71d4e9b0eb0cc602d66bd0573d9424578fe33ef28a852c582d56f0fd34fdd63046c365ef7aed8b84a461b81254240af7ad3fd539da72f9587817d21bd6c585'
'6b1849ae9d7cf427f6fa6cd0590e8f8c3f06210d2d6795e543b0f325a9e866db0f5db2275a29fa90f688783c0dd16f19c8a49a9817d5f5444e13f8f2df3ff712'
'613826cdf5ab6e77f2805fa2aa65272508dcd11090add1961b3df6dfac3b67db016bc9f45fbcf0ef0de82b2d602c153d5263a488027a6cf13a72680b581b266d')
b2sums=('71806edc86b323ff1f9f2d7bd3f699b15da2cd1cfefe9ca6008d74915dd6c7b45690026fb0244531ae563a3ca1b142f21fc8aed97ba4bb0015d8ab9196ff045a'
b2sums=('ceccfbcbc16370153005f32d19be44bd41a4ac935cb7b9a90128d604c9874b06cc7de8b92dc34585d7957f0ad90ce2f441c2ed092c9307bcf4335f8d99eb8bd3'
'SKIP'
'b2b7f27f1d339ea8ded8733cb71cbdb0d4b11c925a412fe78a0848c80fa401fc381a1c041b85879999a2c3f273021e6ff0bd748af479d914df2eb4b94614b821'
'0978ab5c0474ed29de9c0904a46d114413e094dafeadaac4f10cdbc19e4152fcc064d7cdb8c331da7c2531075aa699326b84e21da1a8218a6f00a10f0e107b3d'
'292a3c2e5fde292a03b6c9b2ddabd5089f52e73b50a404c3d9f54c1a43184924b661a21eea61cc521c594c1005a3b40b630fa585a38195c61298f9b24b248b92'
'd3951006b43068be904c6b91a9e0563d56228225854e12b40abbdd4ba9b47338e97265837297a6de879acbc8051bb749163f9457683f5e12fc29ac2e7b687fd3'
'd28785390eb6c125bd26ca11f097fe8864b080482157deeb7c70e9bee47ff2844abaed574db59a7c152ed3ec0acba05cfee4c3751f7a9f553320b064578f86c7')
@ -44,13 +46,9 @@ validpgpkeys=(EDFAA3F2CA4E6EB05681AF8E9F6F1C2D7E045F8D) # W.C.A. Wijngaards <wou
prepare() {
cd ${pkgname}-${pkgver}
# set default location of trusted-key.key
sed '/# trust-anchor-file:/c\\ttrust-anchor-file: /etc/unbound/trusted-key.key' \
-i doc/example.conf.in
# backport https://github.com/NLnetLabs/unbound/pull/511
patch -Np1 -i ../"${pkgname}-1.13.2-fix_libpython_linking.patch"
autoreconf -vfi
# enable trusted-anchor-file and set it to an unbound specific location
patch -Np1 -i ../"${pkgname}-1.14.0-trust_anchor_file.patch"
autoreconf -fiv
}
build() {
@ -87,13 +85,13 @@ check() {
package() {
depends+=(libprotobuf-c.so libsystemd.so)
cd ${pkgname}-${pkgver}
make DESTDIR="${pkgdir}" install
install -vDm 644 contrib/${pkgname}.service -t "${pkgdir}"/usr/lib/systemd/system/
install -vDm 644 LICENSE -t "${pkgdir}"/usr/share/licenses/${pkgname}/
cd ..
install -vDm 644 ${pkgname}-sysusers.conf "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
install -vDm 644 ${pkgname}-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
install -vDm 644 ../${pkgname}-sysusers.conf "${pkgdir}"/usr/lib/sysusers.d/${pkgname}.conf
install -vDm 644 ../${pkgname}-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/${pkgname}.conf
# libalpm hook to copy the dnssec-anchors provided key to /etc/unbound
install -vDm 644 unbound-trusted-key.hook -t "${pkgdir}"/usr/share/libalpm/hooks/
install -vDm 644 ../unbound-trusted-key.hook -t "${pkgdir}"/usr/share/libalpm/hooks/
}

View file

@ -1,68 +0,0 @@
From 98087a051e657c4604050c3d1e6735950b9ea76f Mon Sep 17 00:00:00 2001
From: Chih-Hsuan Yen <yan12125@gmail.com>
Date: Fri, 23 Jul 2021 13:23:05 +0800
Subject: [PATCH] - Reduce unnecessary linking
- Link to libpython only when needed, fixes #242
When pyunbound is enabled while pythonmodule is not (i.e., ./configure
--without-pythonmodule --with-pyunbound), only the Python library
_unbound.so uses Python functions, and main programs (unbound,
unbound-anchor, ...) and libunbound.so do not. This patch removes
unneeded linking.
- Link the Python library _unbound.so to Python only. _unbound.so does
not directly use libraries used by libunbound. This patch removes
unneeded linking mentioned in [1]
[1] https://github.com/NLnetLabs/unbound/pull/511#issuecomment-886072003
---
Makefile.in | 3 ++-
configure.ac | 12 ++++++++----
2 files changed, 10 insertions(+), 5 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index ff5dc8fae..58413d7a5 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -61,6 +61,7 @@ PYTHON_CPPFLAGS=-I. @PYTHON_CPPFLAGS@
CFLAGS=-DSRCDIR=$(srcdir) @CFLAGS@
LDFLAGS=@LDFLAGS@
LIBS=@LIBS@
+PYTHON_LIBS=@PYTHON_LIBS@
LIBOBJS=@LIBOBJS@
# filter out ctime_r from compat obj.
LIBOBJ_WITHOUT_CTIME=@LIBOBJ_WITHOUT_CTIME@
@@ -476,7 +477,7 @@ libunbound/python/libunbound_wrap.c: $(srcdir)/libunbound/python/libunbound.i un
# Pyunbound python unbound wrapper
_unbound.la: libunbound_wrap.lo libunbound.la
- $(LIBTOOL) --tag=CC --mode=link $(CC) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -module -avoid-version -no-undefined -shared -o $@ libunbound_wrap.lo -rpath $(PYTHON_SITE_PKG) -L. -L.libs libunbound.la $(LIBS)
+ $(LIBTOOL) --tag=CC --mode=link $(CC) $(RUNTIME_PATH) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) -module -avoid-version -no-undefined -shared -o $@ libunbound_wrap.lo -rpath $(PYTHON_SITE_PKG) -L. -L.libs libunbound.la $(PYTHON_LIBS)
util/config_file.c: util/configparser.h
util/configlexer.c: $(srcdir)/util/configlexer.lex util/configparser.h
diff --git a/configure.ac b/configure.ac
index fe911723c..0fc1e00a4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -699,11 +699,15 @@ if test x_$ub_test_python != x_no; then
AC_SUBST(PY_MAJOR_VERSION)
# Have Python
AC_DEFINE(HAVE_PYTHON,1,[Define if you have Python libraries and header files.])
- if test -n "$LIBS"; then
- LIBS="$PYTHON_LDFLAGS $LIBS"
- else
- LIBS="$PYTHON_LDFLAGS"
+ if test x_$ub_with_pythonmod != x_no; then
+ if test -n "$LIBS"; then
+ LIBS="$PYTHON_LDFLAGS $LIBS"
+ else
+ LIBS="$PYTHON_LDFLAGS"
+ fi
fi
+ PYTHON_LIBS="$PYTHON_LDFLAGS"
+ AC_SUBST(PYTHON_LIBS)
if test -n "$CPPFLAGS"; then
CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS"
else

View file

@ -0,0 +1,12 @@
diff -ruN a/doc/example.conf.in b/doc/example.conf.in
--- a/doc/example.conf.in 2021-12-09 08:55:44.000000000 +0100
+++ b/doc/example.conf.in 2021-12-11 23:42:13.542310886 +0100
@@ -533,7 +533,7 @@
# with several entries, one file per entry.
# Zone file format, with DS and DNSKEY entries.
# Note this gets out of date, use auto-trust-anchor-file please.
- # trust-anchor-file: ""
+ trust-anchor-file: "/etc/unbound/trusted-key.key"
# Trusted key for validation. DS or DNSKEY. specify the RR on a
# single line, surrounded by "". TTL is ignored. class is IN default.