On Sat, Dec 09 2017, Florian Obser <flor...@openbsd.org> wrote: > jca pointed out that I send an update for an older version (4.0.5) > before, so please disregard that. This jumps directly to the 4.1.x > series. > > - our local patch to json11.cpp is no longer needed, upstream > picked it up > - two more local patches are needed, mplexer.hh is already fixed by > upstream and nproxy.cc is reported so they should go away with > the next update > - jca pointed out that the master side does https now, so switched it, > same for the home page > - otto@ pointed out that we install the man pages for the tools but > don't build tools. This is enabled now as per his request. > - enabling the ldap module introduces a hard dependency on kerberos, > (configure aborts) since I have no experience with kerberos, > don't use ldap and never heard of anyone using ldap I chose to > drop ldap support. It is hard enough to get OKs - let alone > tests for powerdns, so I will focus on the things *I* need. > If you need other things, please step up. > > I assume the ldap removal needs some black magic somewhere in quirks? > Cluebats?
You'd need to add "powerdns-ldap" to $obsolete_reason in devel/quirks/files/Quirks.pm. None of the existing reasons (see @msg) really match here, though. > This runs in production and works for me[tm] > Tests, OKs? Looks good ports-wise except that ''make port-lib-depends-check'' says that WANTLIB-main is outdated, some libs aren't used any more. Do you see the same? > diff --git Makefile Makefile > index c96c9a9b108..1a323cde121 100644 > --- Makefile > +++ Makefile > @@ -5,25 +5,19 @@ BROKEN-hppa = undefined reference to > '__sync_fetch_and_add_4' > COMMENT-main= modular authoritative nameserver (with database > support) > COMMENT-mysql= MySQL database access module for PowerDNS > COMMENT-pgsql= PGSQL database access module for PowerDNS > -COMMENT-ldap= LDAP module for PowerDNS > > -V= 4.0.4 > +V= 4.1.0 > DISTNAME= pdns-${V} > EXTRACT_SUFX = .tar.bz2 > PKGNAME= powerdns-${V} > PKGNAME-main= powerdns-${V} > PKGNAME-mysql= powerdns-mysql-${V} > PKGNAME-pgsql= powerdns-pgsql-${V} > -PKGNAME-ldap= powerdns-ldap-${V} > CATEGORIES= net > -HOMEPAGE= http://www.powerdns.com/ > +HOMEPAGE= https://www.powerdns.com/ > MAINTAINER= Florian Obser <florian+po...@narrans.de> > -REVISION-ldap= 0 > -REVISION-main= 0 > -REVISION-mysql= 0 > -REVISION-pgsql= 0 > > -MULTI_PACKAGES= -main -mysql -pgsql -ldap > +MULTI_PACKAGES= -main -mysql -pgsql > > # GPLv2 > PERMIT_PACKAGE_CDROM= Yes > @@ -37,7 +31,7 @@ WANTLIB-main += ${WANTLIB} > WANTLIB-main += boost_program_options-mt boost_serialization-mt > WANTLIB-main += bz2 c crypto gmp sqlite3 z > > -MASTER_SITES= http://downloads.powerdns.com/releases/ > +MASTER_SITES= https://downloads.powerdns.com/releases/ > > NO_TEST= Yes > > @@ -46,7 +40,7 @@ LIB_DEPENDS-main= ${LIB_DEPENDS} \ > devel/boost \ > devel/gmp > > -PSEUDO_FLAVORS+= no_mysql no_pgsql no_ldap > +PSEUDO_FLAVORS+= no_mysql no_pgsql > FLAVOR?= > > BACKENDS= gsqlite3 > @@ -60,7 +54,9 @@ CONFIGURE_ARGS+= --disable-shared \ > --with-dynmodules="${BACKENDS}" \ > --without-lua \ > --disable-hardening \ > - --without-protobuf > + --without-protobuf \ > + --enable-tools > +CONFIGURE_ARGS+= --without-ldap > > CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include" \ > LDFLAGS="-L${LOCALBASE}/lib" > @@ -93,17 +89,6 @@ LIB_DEPENDS-pgsql= ${LIB_DEPENDS} \ > RUN_DEPENDS-pgsql= ${FULLPKGNAME-main}:net/powerdns > WANTLIB-pgsql= crypto pq>=2 ssl ${WANTLIB} > > -# LDAP > -.if ${BUILD_PACKAGES:M-ldap} > -BACKENDS+= ldap > -.else > -CONFIGURE_ARGS+= --without-ldap > -.endif > -LIB_DEPENDS-ldap= ${LIB_DEPENDS} \ > - databases/openldap > -RUN_DEPENDS-ldap= ${FULLPKGNAME-main}:net/powerdns > -WANTLIB-ldap+= ${WANTLIB} crypto lber-2.4 ldap_r-2.4 sasl2 ssl > - > EXAMPLE_DIR= ${PREFIX}/share/examples/pdns/ > post-install: > rm -f ${PREFIX}/lib/pdns/*.la > diff --git distinfo distinfo > index 0b14f5ac821..7ba47e175d1 100644 > --- distinfo > +++ distinfo > @@ -1,2 +1,2 @@ > -SHA256 (pdns-4.0.4.tar.bz2) = 2XSrid5pR3x/WBoyM7xzHqy7Q9R5KR5HKyxTHIO212M= > -SIZE (pdns-4.0.4.tar.bz2) = 1320327 > +SHA256 (pdns-4.1.0.tar.bz2) = 25GTsPAlXCTfv8Mez/i9OeIf7AX/dSblrqljq8UX8PM= > +SIZE (pdns-4.1.0.tar.bz2) = 1116905 > diff --git patches/patch-ext_json11_json11_cpp > patches/patch-ext_json11_json11_cpp > deleted file mode 100644 > index caf69e13d07..00000000000 > --- patches/patch-ext_json11_json11_cpp > +++ /dev/null > @@ -1,42 +0,0 @@ > -$OpenBSD: patch-ext_json11_json11_cpp,v 1.1 2017/05/27 06:21:43 espie Exp $ > -nullptrs are non-comparable. > -patch from freebsd > - > -Index: ext/json11/json11.cpp > ---- ext/json11/json11.cpp.orig > -+++ ext/json11/json11.cpp > -@@ -37,11 +37,21 @@ using std::make_shared; > - using std::initializer_list; > - using std::move; > - > -+/* Helper for representing null - just a do-nothing struct, plus comparison > -+ * operators so the helpers in JsonValue work. We can't use nullptr_t > because > -+ * it may not be orderable. > -+*/ > -+ > -+struct NullStruct { > -+ bool operator==(NullStruct) const { return true; } > -+ bool operator<(NullStruct) const { return false; } > -+}; > -+ > - /* * * * * * * * * * * * * * * * * * * * > - * Serialization > - */ > - > --static void dump(std::nullptr_t, string &out) { > -+static void dump(NullStruct, string &out) { > - out += "null"; > - } > - > -@@ -204,9 +214,9 @@ class JsonObject final : public Value<Json::OBJECT, Js > - explicit JsonObject(Json::object &&value) : Value(move(value)) {} > - }; > - > --class JsonNull final : public Value<Json::NUL, std::nullptr_t> { > -+class JsonNull final : public Value<Json::NUL, NullStruct> { > - public: > -- JsonNull() : Value(nullptr) {} > -+ JsonNull() : Value({}) {} > - }; > - > - /* * * * * * * * * * * * * * * * * * * * > diff --git patches/patch-pdns_mplexer_hh patches/patch-pdns_mplexer_hh > new file mode 100644 > index 00000000000..bd5842787e2 > --- /dev/null > +++ patches/patch-pdns_mplexer_hh > @@ -0,0 +1,14 @@ > +$OpenBSD$ > +needed for timeval > + > +Index: pdns/mplexer.hh > +--- pdns/mplexer.hh.orig > ++++ pdns/mplexer.hh > +@@ -21,6 +21,7 @@ > + */ > + #ifndef PDNS_MPLEXER_HH > + #define PDNS_MPLEXER_HH > ++#include <sys/time.h> > + #include <boost/function.hpp> > + #include <boost/any.hpp> > + #include <boost/shared_array.hpp> > diff --git patches/patch-pdns_nproxy_cc patches/patch-pdns_nproxy_cc > new file mode 100644 > index 00000000000..db102950e03 > --- /dev/null > +++ patches/patch-pdns_nproxy_cc > @@ -0,0 +1,15 @@ > +$OpenBSD$ > + > +needed for chroot et al > + > +Index: pdns/nproxy.cc > +--- pdns/nproxy.cc.orig > ++++ pdns/nproxy.cc > +@@ -38,6 +38,7 @@ > + #include <sys/stat.h> > + #include <fcntl.h> > + #include <grp.h> > ++#include <unistd.h> > + #include "dnsrecords.hh" > + #include "mplexer.hh" > + #include "statbag.hh" > diff --git pkg/PLIST-main pkg/PLIST-main > index d57f7c64a56..10401d1b415 100644 > --- pkg/PLIST-main > +++ pkg/PLIST-main > @@ -5,10 +5,24 @@ > @pkgpath net/powerdns,-sqlite3 > @newgroup _powerdns:609 > @newuser _powerdns:609:_powerdns:daemon:PowerDNS > Server:/nonexistent:/sbin/nologin > +@bin bin/dnsbulktest > +@bin bin/dnsgram > +@bin bin/dnsreplay > +@bin bin/dnsscan > +@bin bin/dnsscope > +@bin bin/dnstcpbench > +@bin bin/dnswasher > +@bin bin/dumresp > +@bin bin/ixplore > +@bin bin/nproxy > +@bin bin/nsec3dig > @bin bin/pdns_control > +@bin bin/pdns_notify > @bin bin/pdnsutil > +@bin bin/saxfr > +@bin bin/sdig > +@bin bin/stubquery > @bin bin/zone2json > -@bin bin/zone2ldap > @bin bin/zone2sql > lib/pdns/ > lib/pdns/libbindbackend.so > @@ -36,6 +50,8 @@ lib/pdns/libgsqlite3backend.so > @man man/man1/zone2sql.1 > @bin sbin/pdns_server > share/doc/pdns/ > +share/doc/pdns/3.4.0_to_4.1.0_schema.mysql.sql > +share/doc/pdns/3.4.0_to_4.1.0_schema.pgsql.sql > share/doc/pdns/dnssec-3.x_to_3.4.0_schema.sqlite3.sql > share/doc/pdns/nodnssec-3.x_to_3.4.0_schema.sqlite3.sql > share/doc/pdns/schema.sqlite3.sql -- jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE