From 629c081bdb7c98326dbb7cacbb3a2c9fb0e7bb33 Mon Sep 17 00:00:00 2001 From: David Beauchamp Date: Sat, 24 Jul 2021 14:33:51 -0400 Subject: [PATCH] community/unbound to 1.13.1-2 --- community/unbound/PKGBUILD | 59 ++++++++++--------- .../unbound-fix-libpython-linking.patch | 44 ++++++++++++++ 2 files changed, 74 insertions(+), 29 deletions(-) create mode 100644 community/unbound/unbound-fix-libpython-linking.patch diff --git a/community/unbound/PKGBUILD b/community/unbound/PKGBUILD index 3d3e33284..a2bf28a52 100644 --- a/community/unbound/PKGBUILD +++ b/community/unbound/PKGBUILD @@ -1,4 +1,5 @@ # Maintainer: David Runge +# Maintainer: Bruno Pagani # Contributor: Gaetan Bisson # Contributor: Hisato Tatekura # Contributor: Massimiliano Torromeo @@ -8,47 +9,52 @@ pkgname=unbound pkgver=1.13.1 -pkgrel=1 +pkgrel=2 pkgdesc="Validating, recursive, and caching DNS resolver" +arch=(x86_64) url="https://unbound.net/" -license=('BSD') -arch=('x86_64') -depends=('dnssec-anchors' 'fstrm' 'hiredis' 'openssl' 'ldns' 'libevent' -'libnghttp2' 'libsodium') -makedepends=('expat' 'protobuf-c' 'systemd') +license=(BSD) +depends=(dnssec-anchors fstrm hiredis openssl ldns libevent libnghttp2 libsodium) +makedepends=(expat protobuf-c systemd python swig) optdepends=( 'expat: for unbound-anchor' 'sh: for unbound-control-setup' + 'python: python-bindings' ) -provides=('libunbound.so') -backup=("etc/${pkgname}/${pkgname}.conf") +provides=(libunbound.so) +backup=(etc/${pkgname}/${pkgname}.conf) source=("https://unbound.net/downloads/${pkgname}-${pkgver}.tar.gz"{,.asc} - "${pkgname}-sysusers.conf" - "${pkgname}-tmpfiles.conf" - "${pkgname}-trusted-key.hook") + unbound-fix-libpython-linking.patch + ${pkgname}-sysusers.conf + ${pkgname}-tmpfiles.conf + ${pkgname}-trusted-key.hook) sha512sums=('f4d26dca28dbcc33a5e65a55147fa01077c331292e88b6a87798cb6c3d4edb0515015d131fd893c92b74d22d9998a640f0adce404e6192d61ebe69a6a599287c' 'SKIP' + 'e810992fbf645bb804edd218881809cf894fccffcae0668ee40d053354ea6bbab5f3abf2e82fadc0c47877fcfe13263b6423f8ebd2a27e38aedb9c512085eb63' 'ef71d4e9b0eb0cc602d66bd0573d9424578fe33ef28a852c582d56f0fd34fdd63046c365ef7aed8b84a461b81254240af7ad3fd539da72f9587817d21bd6c585' '6b1849ae9d7cf427f6fa6cd0590e8f8c3f06210d2d6795e543b0f325a9e866db0f5db2275a29fa90f688783c0dd16f19c8a49a9817d5f5444e13f8f2df3ff712' '613826cdf5ab6e77f2805fa2aa65272508dcd11090add1961b3df6dfac3b67db016bc9f45fbcf0ef0de82b2d602c153d5263a488027a6cf13a72680b581b266d') b2sums=('5fabb9205773a1983842e41cf7a4d6c3878fa8beb7c8ccc71ae1edf7738cb9506c3d7bb32cf887b305317ca695bf876d9f5bf9aeb0129b0e9e926d437b3e6eb3' 'SKIP' + 'e80e46e841e5ebcf261c2e1a5f4bb61d6f182afd95b3ce6609ac9c466a94a48eefe11adfb8d57a670896ea78dd71394ff75d2233d8efc6a03d621b049ab991bb' '292a3c2e5fde292a03b6c9b2ddabd5089f52e73b50a404c3d9f54c1a43184924b661a21eea61cc521c594c1005a3b40b630fa585a38195c61298f9b24b248b92' 'd3951006b43068be904c6b91a9e0563d56228225854e12b40abbdd4ba9b47338e97265837297a6de879acbc8051bb749163f9457683f5e12fc29ac2e7b687fd3' 'd28785390eb6c125bd26ca11f097fe8864b080482157deeb7c70e9bee47ff2844abaed574db59a7c152ed3ec0acba05cfee4c3751f7a9f553320b064578f86c7') -validpgpkeys=('EDFAA3F2CA4E6EB05681AF8E9F6F1C2D7E045F8D') # W.C.A. Wijngaards +validpgpkeys=(EDFAA3F2CA4E6EB05681AF8E9F6F1C2D7E045F8D) # W.C.A. Wijngaards prepare() { - cd "${pkgname}-${pkgver}" + 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 -p1 < ../unbound-fix-libpython-linking.patch autoreconf -vfi } build() { - cd "${pkgname}-${pkgver}" + cd ${pkgname}-${pkgver} ./configure --prefix=/usr \ --sysconfdir=/etc \ --localstatedir=/var \ @@ -69,30 +75,25 @@ build() { --with-rootkey-file=/etc/trusted-key.key \ --with-libevent \ --with-libnghttp2 \ + --with-pyunbound \ --disable-flto make } check() { - cd "${pkgname}-${pkgver}" + cd ${pkgname}-${pkgver} make -k check } package() { - depends+=('libprotobuf-c.so' 'libsystemd.so') - - cd "${pkgname}-${pkgver}" + 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}/" - # sysusers.d - install -vDm 644 "../${pkgname}-sysusers.conf" \ - "${pkgdir}/usr/lib/sysusers.d/${pkgname}.conf" - # tmpfiles.d - install -vDm 644 "../${pkgname}-tmpfiles.conf" \ - "${pkgdir}/usr/lib/tmpfiles.d/${pkgname}.conf" + 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 # libalpm hook to copy the dnssec-anchors provided key to /etc/unbound - install -vDm 644 ../${pkgname}-trusted-key.hook \ - -t "${pkgdir}/usr/share/libalpm/hooks/" + install -vDm 644 unbound-trusted-key.hook -t "${pkgdir}"/usr/share/libalpm/hooks/ } diff --git a/community/unbound/unbound-fix-libpython-linking.patch b/community/unbound/unbound-fix-libpython-linking.patch new file mode 100644 index 000000000..eaac55cdf --- /dev/null +++ b/community/unbound/unbound-fix-libpython-linking.patch @@ -0,0 +1,44 @@ +diff --git a/Makefile.in b/Makefile.in +--- 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@ +@@ -474,7 +475,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 -lunbound ++ $(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 -lunbound $(LIBS) $(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 +--- a/configure.ac ++++ b/configure.ac +@@ -699,11 +699,17 @@ 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" ++ if test x_$ub_with_pythonmod != x_no; then ++ if test -n "$LIBS"; then ++ LIBS="$PYTHON_LDFLAGS $LIBS" ++ else ++ LIBS="$PYTHON_LDFLAGS" ++ fi ++ PYTHON_LIBS="" + else +- LIBS="$PYTHON_LDFLAGS" ++ PYTHON_LIBS="$PYTHON_LDFLAGS" + fi ++ AC_SUBST(PYTHON_LIBS) + if test -n "$CPPFLAGS"; then + CPPFLAGS="$CPPFLAGS $PYTHON_CPPFLAGS" + else