From ff937e7b5c2f2534e19f3cdddb0a904ca93ebcf7 Mon Sep 17 00:00:00 2001 From: Morten Stevens Date: Mar 02 2015 16:24:14 +0000 Subject: Update to 3.4.3 --- diff --git a/.gitignore b/.gitignore index 95912b9..9eeb533 100644 --- a/.gitignore +++ b/.gitignore @@ -15,3 +15,4 @@ pdns-2.9.22.tar.gz /pdns-3.4.0.tar.bz2 /pdns-3.4.1.tar.bz2 /pdns-3.4.2.tar.bz2 +/pdns-3.4.3.tar.bz2 diff --git a/pdns-boost157.patch b/pdns-boost157.patch deleted file mode 100644 index 410ae84..0000000 --- a/pdns-boost157.patch +++ /dev/null @@ -1,824 +0,0 @@ ---- pdns-3.4.2/m4/boost.m4.orig 2014-12-31 10:38:45.000000000 +0100 -+++ pdns-3.4.2/m4/boost.m4 2015-02-06 13:43:44.319910723 +0100 -@@ -1,5 +1,5 @@ - # boost.m4: Locate Boost headers and libraries for autoconf-based projects. --# Copyright (C) 2007, 2008, 2009, 2010, 2011 Benoit Sigoure -+# Copyright (C) 2007-2011, 2014 Benoit Sigoure - # - # This program is free software: you can redistribute it and/or modify - # it under the terms of the GNU General Public License as published by -@@ -22,7 +22,7 @@ - # along with this program. If not, see . - - m4_define([_BOOST_SERIAL], [m4_translit([ --# serial 18 -+# serial 24 - ], [# - ], [])]) - -@@ -59,7 +59,8 @@ m4_pattern_forbid([^_?(BOOST|Boost)_]) - # It could be useful to turn this into a macro which extracts the - # value of any macro. - m4_define([_BOOST_SED_CPP], --[AC_LANG_PREPROC_REQUIRE()dnl -+[AC_LANG_PUSH([C++])dnl -+AC_LANG_PREPROC_REQUIRE()dnl - AC_REQUIRE([AC_PROG_SED])dnl - AC_LANG_CONFTEST([AC_LANG_SOURCE([[$2]])]) - AS_IF([dnl eval is necessary to expand ac_cpp. -@@ -71,13 +72,31 @@ dnl strip `\n' with backquotes, not the - dnl boost_cv_lib_version='1_37\r' for instance, which breaks - dnl everything else. - dnl Cannot use 'dnl' after [$4] because a trailing dnl may break AC_CACHE_CHECK -+dnl -+dnl Beware that GCC 5, when expanding macros, may embed # line directives -+dnl a within single line: -+dnl -+dnl # 1 "conftest.cc" -+dnl # 1 "" -+dnl # 1 "" -+dnl # 1 "conftest.cc" -+dnl # 1 "/opt/local/include/boost/version.hpp" 1 3 -+dnl # 2 "conftest.cc" 2 -+dnl boost-lib-version = -+dnl # 2 "conftest.cc" 3 -+dnl "1_56" -+dnl -+dnl So get rid of the # lines, and glue the remaining ones together. - (eval "$ac_cpp conftest.$ac_ext") 2>&AS_MESSAGE_LOG_FD | -+ grep -v '#' | - tr -d '\r' | -+ tr -s '\n' ' ' | - $SED -n -e "$1" >conftest.i 2>&1], - [$3], - [$4]) - rm -rf conftest* --])# AC_EGREP_CPP -+AC_LANG_POP([C++])dnl -+])# _BOOST_SED_CPP - - - -@@ -206,7 +225,7 @@ AC_LANG_POP([C++])dnl - AC_CACHE_CHECK([for Boost's header version], - [boost_cv_lib_version], - [m4_pattern_allow([^BOOST_LIB_VERSION$])dnl -- _BOOST_SED_CPP([/^boost-lib-version = /{s///;s/\"//g;p;q;}], -+ _BOOST_SED_CPP([[/^boost-lib-version = /{s///;s/[\" ]//g;p;q;}]], - [#include - boost-lib-version = BOOST_LIB_VERSION], - [boost_cv_lib_version=`cat conftest.i`])]) -@@ -214,13 +233,14 @@ boost-lib-version = BOOST_LIB_VERSION], - boost_major_version=`echo "$boost_cv_lib_version" | sed 's/_//;s/_.*//'` - case $boost_major_version in #( - '' | *[[!0-9]]*) -- AC_MSG_ERROR([invalid value: boost_major_version=$boost_major_version]) -+ AC_MSG_ERROR([invalid value: boost_major_version='$boost_major_version']) - ;; - esac - fi - CPPFLAGS=$boost_save_CPPFLAGS - ])# BOOST_REQUIRE - -+ - # BOOST_STATIC() - # -------------- - # Add the "--enable-static-boost" configure argument. If this argument is given -@@ -232,6 +252,7 @@ AC_DEFUN([BOOST_STATIC], - [enable_static_boost=yes], - [enable_static_boost=no])])# BOOST_STATIC - -+ - # BOOST_FIND_HEADER([HEADER-NAME], [ACTION-IF-NOT-FOUND], [ACTION-IF-FOUND]) - # -------------------------------------------------------------------------- - # Wrapper around AC_CHECK_HEADER for Boost headers. Useful to check for -@@ -264,14 +285,16 @@ fi - ])# BOOST_FIND_HEADER - - --# BOOST_FIND_LIB([LIB-NAME], [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], --# [CXX-PROLOGUE]) --# ------------------------------------------------------------------------- --# Look for the Boost library LIB-NAME (e.g., LIB-NAME = `thread', for --# libboost_thread). Check that HEADER-NAME works and check that --# libboost_LIB-NAME can link with the code CXX-TEST. The optional argument --# CXX-PROLOGUE can be used to include some C++ code before the `main' --# function. -+# BOOST_FIND_LIBS([COMPONENT-NAME], [CANDIDATE-LIB-NAMES], -+# [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], -+# [CXX-PROLOGUE]) -+# -------------------------------------------------------------- -+# Look for the Boost library COMPONENT-NAME (e.g., `thread', for -+# libboost_thread) under the possible CANDIDATE-LIB-NAMES (e.g., -+# "thread_win32 thread"). Check that HEADER-NAME works and check that -+# libboost_LIB-NAME can link with the code CXX-TEST. The optional -+# argument CXX-PROLOGUE can be used to include some C++ code before -+# the `main' function. - # - # Invokes BOOST_FIND_HEADER([HEADER-NAME]) (see above). - # -@@ -285,7 +308,7 @@ fi - # builds. Some sample values for PREFERRED-RT-OPT: (nothing), mt, d, mt-d, gdp - # ... If you want to make sure you have a specific version of Boost - # (eg, >= 1.33) you *must* invoke BOOST_REQUIRE before this macro. --AC_DEFUN([BOOST_FIND_LIB], -+AC_DEFUN([BOOST_FIND_LIBS], - [AC_REQUIRE([BOOST_REQUIRE])dnl - AC_REQUIRE([_BOOST_FIND_COMPILER_TAG])dnl - AC_REQUIRE([BOOST_STATIC])dnl -@@ -299,32 +322,69 @@ AS_VAR_PUSHDEF([Boost_lib], [boost_cv_li - AS_VAR_PUSHDEF([Boost_lib_LDFLAGS], [boost_cv_lib_$1_LDFLAGS])dnl - AS_VAR_PUSHDEF([Boost_lib_LDPATH], [boost_cv_lib_$1_LDPATH])dnl - AS_VAR_PUSHDEF([Boost_lib_LIBS], [boost_cv_lib_$1_LIBS])dnl --BOOST_FIND_HEADER([$3]) -+BOOST_FIND_HEADER([$4]) - boost_save_CPPFLAGS=$CPPFLAGS - CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" --# Now let's try to find the library. The algorithm is as follows: first look --# for a given library name according to the user's PREFERRED-RT-OPT. For each --# library name, we prefer to use the ones that carry the tag (toolset name). --# Each library is searched through the various standard paths were Boost is --# usually installed. If we can't find the standard variants, we try to --# enforce -mt (for instance on MacOSX, libboost_threads.dylib doesn't exist --# but there's -obviously- libboost_threads-mt.dylib). - AC_CACHE_CHECK([for the Boost $1 library], [Boost_lib], -- [Boost_lib=no -- case "$2" in #( -- mt | mt-) boost_mt=-mt; boost_rtopt=;; #( -- mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X$2" : 'Xmt-*\(.*\)'`;; #( -- *) boost_mt=; boost_rtopt=$2;; -+ [_BOOST_FIND_LIBS($@)]) -+case $Boost_lib in #( -+ (no) _AC_MSG_LOG_CONFTEST -+ AC_MSG_ERROR([cannot find the flags to link with Boost $1]) -+ ;; -+esac -+AC_SUBST(AS_TR_CPP([BOOST_$1_LDFLAGS]), [$Boost_lib_LDFLAGS])dnl -+AC_SUBST(AS_TR_CPP([BOOST_$1_LDPATH]), [$Boost_lib_LDPATH])dnl -+AC_SUBST([BOOST_LDPATH], [$Boost_lib_LDPATH])dnl -+AC_SUBST(AS_TR_CPP([BOOST_$1_LIBS]), [$Boost_lib_LIBS])dnl -+CPPFLAGS=$boost_save_CPPFLAGS -+AS_VAR_POPDEF([Boost_lib])dnl -+AS_VAR_POPDEF([Boost_lib_LDFLAGS])dnl -+AS_VAR_POPDEF([Boost_lib_LDPATH])dnl -+AS_VAR_POPDEF([Boost_lib_LIBS])dnl -+AC_LANG_POP([C++])dnl -+fi -+]) -+ -+ -+# BOOST_FIND_LIB([LIB-NAME], -+# [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], -+# [CXX-PROLOGUE]) -+# -------------------------------------------------------------- -+# Backward compatibility wrapper for BOOST_FIND_LIBS. -+AC_DEFUN([BOOST_FIND_LIB], -+[BOOST_FIND_LIBS([$1], $@)]) -+ -+ -+# _BOOST_FIND_LIBS([LIB-NAME], [CANDIDATE-LIB-NAMES], -+# [PREFERRED-RT-OPT], [HEADER-NAME], [CXX-TEST], -+# [CXX-PROLOGUE]) -+# -------------------------------------------------------------- -+# Real implementation of BOOST_FIND_LIBS: rely on these local macros: -+# Boost_lib, Boost_lib_LDFLAGS, Boost_lib_LDPATH, Boost_lib_LIBS -+# -+# The algorithm is as follows: first look for a given library name -+# according to the user's PREFERRED-RT-OPT. For each library name, we -+# prefer to use the ones that carry the tag (toolset name). Each -+# library is searched through the various standard paths were Boost is -+# usually installed. If we can't find the standard variants, we try -+# to enforce -mt (for instance on MacOSX, libboost_thread.dylib -+# doesn't exist but there's -obviously- libboost_thread-mt.dylib). -+AC_DEFUN([_BOOST_FIND_LIBS], -+[Boost_lib=no -+ case "$3" in #( -+ (mt | mt-) boost_mt=-mt; boost_rtopt=;; #( -+ (mt* | mt-*) boost_mt=-mt; boost_rtopt=`expr "X$3" : 'Xmt-*\(.*\)'`;; #( -+ (*) boost_mt=; boost_rtopt=$3;; - esac - if test $enable_static_boost = yes; then - boost_rtopt="s$boost_rtopt" - fi - # Find the proper debug variant depending on what we've been asked to find. - case $boost_rtopt in #( -- *d*) boost_rt_d=$boost_rtopt;; #( -- *[[sgpn]]*) # Insert the `d' at the right place (in between `sg' and `pn') -+ (*d*) boost_rt_d=$boost_rtopt;; #( -+ (*[[sgpn]]*) # Insert the `d' at the right place (in between `sg' and `pn') - boost_rt_d=`echo "$boost_rtopt" | sed 's/\(s*g*\)\(p*n*\)/\1\2/'`;; #( -- *) boost_rt_d='-d';; -+ (*) boost_rt_d='-d';; - esac - # If the PREFERRED-RT-OPT are not empty, prepend a `-'. - test -n "$boost_rtopt" && boost_rtopt="-$boost_rtopt" -@@ -335,8 +395,8 @@ AC_CACHE_CHECK([for the Boost $1 library - AC_MSG_ERROR([the libext variable is empty, did you invoke Libtool?]) - boost_save_ac_objext=$ac_objext - # Generate the test file. -- AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include <$3> --$5], [$4])]) -+ AC_LANG_CONFTEST([AC_LANG_PROGRAM([#include <$4> -+$6], [$5])]) - dnl Optimization hacks: compiling C++ is slow, especially with Boost. What - dnl we're trying to do here is guess the right combination of link flags - dnl (LIBS / LDFLAGS) to use a given library. This can take several -@@ -358,21 +418,22 @@ dnl start the for loops). - [AC_MSG_ERROR([cannot compile a test that uses Boost $1])]) - ac_objext=$boost_save_ac_objext - boost_failed_libs= --# Don't bother to ident the 6 nested for loops, only the 2 innermost ones --# matter. -+# Don't bother to ident the following nested for loops, only the 2 -+# innermost ones matter. -+for boost_lib_ in $2; do - for boost_tag_ in -$boost_cv_lib_tag ''; do - for boost_ver_ in -$boost_cv_lib_version ''; do - for boost_mt_ in $boost_mt -mt ''; do - for boost_rtopt_ in $boost_rtopt '' -d; do - for boost_lib in \ -- boost_$1$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \ -- boost_$1$boost_tag_$boost_rtopt_$boost_ver_ \ -- boost_$1$boost_tag_$boost_mt_$boost_ver_ \ -- boost_$1$boost_tag_$boost_ver_ -+ boost_$boost_lib_$boost_tag_$boost_mt_$boost_rtopt_$boost_ver_ \ -+ boost_$boost_lib_$boost_tag_$boost_rtopt_$boost_ver_ \ -+ boost_$boost_lib_$boost_tag_$boost_mt_$boost_ver_ \ -+ boost_$boost_lib_$boost_tag_$boost_ver_ - do - # Avoid testing twice the same lib - case $boost_failed_libs in #( -- *@$boost_lib@*) continue;; -+ (*@$boost_lib@*) continue;; - esac - # If with_boost is empty, we'll search in /lib first, which is not quite - # right so instead we'll try to a location based on where the headers are. -@@ -382,14 +443,17 @@ for boost_rtopt_ in $boost_rtopt '' -d; - /opt/local/lib* /usr/local/lib* /opt/lib* /usr/lib* \ - "$with_boost" C:/Boost/lib /lib* - do -- test -n "$boost_ldpath" -a ! -e "$boost_ldpath" && continue -+ # Don't waste time with directories that don't exist. -+ if test x"$boost_ldpath" != x && test ! -e "$boost_ldpath"; then -+ continue -+ fi - boost_save_LDFLAGS=$LDFLAGS - # Are we looking for a static library? - case $boost_ldpath:$boost_rtopt_ in #( -- *?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt) -+ (*?*:*s*) # Yes (Non empty boost_ldpath + s in rt opt) - Boost_lib_LIBS="$boost_ldpath/lib$boost_lib.$libext" - test -e "$Boost_lib_LIBS" || continue;; #( -- *) # No: use -lboost_foo to find the shared library. -+ (*) # No: use -lboost_foo to find the shared library. - Boost_lib_LIBS="-l$boost_lib";; - esac - boost_save_LIBS=$LIBS -@@ -403,27 +467,35 @@ dnl generated only once above (before we - LDFLAGS=$boost_save_LDFLAGS - LIBS=$boost_save_LIBS - if test x"$Boost_lib" = xyes; then -- # Check or used cached result of whether or not using -R or -rpath makes sense. -- # Some implementations of ld, such as for Mac OSX, require -rpath but -- # -R is the flag known to work on other systems. -- # https://github.com/tsuna/boost.m4/issues/19 -+ # Check or used cached result of whether or not using -R or -+ # -rpath makes sense. Some implementations of ld, such as for -+ # Mac OSX, require -rpath but -R is the flag known to work on -+ # other systems. https://github.com/tsuna/boost.m4/issues/19 - AC_CACHE_VAL([boost_cv_rpath_link_ldflag], -- [for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do -- test x"$boost_ldpath" != x && LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath" -- LIBS="$boost_save_LIBS $Boost_lib_LIBS" -- _BOOST_AC_LINK_IFELSE([], -- [boost_rpath_link_ldflag_found=yes -- break], -- [boost_rpath_link_ldflag_found=no]) -- done -+ [case $boost_ldpath in -+ '') # Nothing to do. -+ boost_cv_rpath_link_ldflag= -+ boost_rpath_link_ldflag_found=yes;; -+ *) -+ for boost_cv_rpath_link_ldflag in -Wl,-R, -Wl,-rpath,; do -+ LDFLAGS="$boost_save_LDFLAGS -L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath" -+ LIBS="$boost_save_LIBS $Boost_lib_LIBS" -+ _BOOST_AC_LINK_IFELSE([], -+ [boost_rpath_link_ldflag_found=yes -+ break], -+ [boost_rpath_link_ldflag_found=no]) -+ done -+ ;; -+ esac - AS_IF([test "x$boost_rpath_link_ldflag_found" != "xyes"], - [AC_MSG_ERROR([Unable to determine whether to use -R or -rpath])]) - LDFLAGS=$boost_save_LDFLAGS - LIBS=$boost_save_LIBS - ]) -- test x"$boost_ldpath" != x && Boost_lib_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath" -+ test x"$boost_ldpath" != x && -+ Boost_lib_LDFLAGS="-L$boost_ldpath $boost_cv_rpath_link_ldflag$boost_ldpath" - Boost_lib_LDPATH="$boost_ldpath" -- break 6 -+ break 7 - else - boost_failed_libs="$boost_failed_libs@$boost_lib@" - fi -@@ -433,25 +505,10 @@ done - done - done - done -+done # boost_lib_ - rm -f conftest.$ac_objext - ]) --case $Boost_lib in #( -- no) _AC_MSG_LOG_CONFTEST -- AC_MSG_ERROR([cannot find the flags to link with Boost $1]) -- ;; --esac --AC_SUBST(AS_TR_CPP([BOOST_$1_LDFLAGS]), [$Boost_lib_LDFLAGS])dnl --AC_SUBST(AS_TR_CPP([BOOST_$1_LDPATH]), [$Boost_lib_LDPATH])dnl --AC_SUBST([BOOST_LDPATH], [$Boost_lib_LDPATH])dnl --AC_SUBST(AS_TR_CPP([BOOST_$1_LIBS]), [$Boost_lib_LIBS])dnl --CPPFLAGS=$boost_save_CPPFLAGS --AS_VAR_POPDEF([Boost_lib])dnl --AS_VAR_POPDEF([Boost_lib_LDFLAGS])dnl --AS_VAR_POPDEF([Boost_lib_LDPATH])dnl --AS_VAR_POPDEF([Boost_lib_LIBS])dnl --AC_LANG_POP([C++])dnl --fi --])# BOOST_FIND_LIB -+ - - - # --------------------------------------- # -@@ -493,20 +550,20 @@ BOOST_FIND_HEADER([boost/asio.hpp])]) - - # BOOST_BIND() - # ------------ --# Look for Boost.Bind -+# Look for Boost.Bind. - BOOST_DEFUN([Bind], - [BOOST_FIND_HEADER([boost/bind.hpp])]) - - - # BOOST_CHRONO() --# ------------------ --# Look for Boost.Chrono -+# -------------- -+# Look for Boost.Chrono. - BOOST_DEFUN([Chrono], - [# Do we have to check for Boost.System? This link-time dependency was - # added as of 1.35.0. If we have a version <1.35, we must not attempt to - # find Boost.System as it didn't exist by then. - if test $boost_major_version -ge 135; then --BOOST_SYSTEM([$1]) -+ BOOST_SYSTEM([$1]) - fi # end of the Boost.System check. - boost_filesystem_save_LIBS=$LIBS - boost_filesystem_save_LDFLAGS=$LDFLAGS -@@ -517,14 +574,40 @@ BOOST_FIND_LIB([chrono], [$1], - [boost/chrono.hpp], - [boost::chrono::thread_clock d;]) - if test $enable_static_boost = yes && test $boost_major_version -ge 135; then -- AC_SUBST([BOOST_FILESYSTEM_LIBS], ["$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS"]) -+ BOOST_FILESYSTEM_LIBS="$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS" - fi - LIBS=$boost_filesystem_save_LIBS - LDFLAGS=$boost_filesystem_save_LDFLAGS -- - ])# BOOST_CHRONO - - -+# BOOST_CONTEXT([PREFERRED-RT-OPT]) -+# ----------------------------------- -+# Look for Boost.Context. For the documentation of PREFERRED-RT-OPT, see the -+# documentation of BOOST_FIND_LIB above. This library was introduced in Boost -+# 1.51.0 -+BOOST_DEFUN([Context], -+[BOOST_FIND_LIB([context], [$1], -+ [boost/context/all.hpp],[[ -+// creates a stack -+void * stack_pointer = new void*[4096]; -+std::size_t const size = sizeof(void*[4096]); -+ -+// context fc uses f() as context function -+// fcontext_t is placed on top of context stack -+// a pointer to fcontext_t is returned -+fc = ctx::make_fcontext(stack_pointer, size, f); -+return ctx::jump_fcontext(&fcm, fc, 3) == 6;]],[dnl -+namespace ctx = boost::context; -+// context -+static ctx::fcontext_t fcm, *fc; -+// context-function -+static void f(intptr_t i) { -+ ctx::jump_fcontext(fc, &fcm, i * 2); -+}]) -+])# BOOST_CONTEXT -+ -+ - # BOOST_CONVERSION() - # ------------------ - # Look for Boost.Conversion (cast / lexical_cast) -@@ -534,6 +617,44 @@ BOOST_FIND_HEADER([boost/lexical_cast.hp - ])# BOOST_CONVERSION - - -+# BOOST_COROUTINE([PREFERRED-RT-OPT]) -+# ----------------------------------- -+# Look for Boost.Coroutine. For the documentation of PREFERRED-RT-OPT, see the -+# documentation of BOOST_FIND_LIB above. This library was introduced in Boost -+# 1.53.0 -+BOOST_DEFUN([Coroutine], -+[ -+boost_coroutine_save_LIBS=$LIBS -+boost_coroutine_save_LDFLAGS=$LDFLAGS -+# Link-time dependency from coroutine to context -+BOOST_CONTEXT([$1]) -+# Starting from Boost 1.55 a dependency on Boost.System is added -+if test $boost_major_version -ge 155; then -+ BOOST_SYSTEM([$1]) -+fi -+m4_pattern_allow([^BOOST_(CONTEXT|SYSTEM)_(LIBS|LDFLAGS)]) -+LIBS="$LIBS $BOOST_CONTEXT_LIBS $BOOST_SYSTEM_LIBS" -+LDFLAGS="$LDFLAGS $BOOST_CONTEXT_LDFLAGS" -+ -+BOOST_FIND_LIB([coroutine], [$1], -+ [boost/coroutine/coroutine.hpp], -+ [boost::coroutines::coroutine< int(int) > coro; coro.empty();]) -+ -+# Link-time dependency from coroutine to context, existed only in 1.53, in 1.54 -+# coroutine doesn't use context from its headers but from its library. -+if test $boost_major_version -eq 153 || test $enable_static_boost = yes && test $boost_major_version -ge 154; then -+ BOOST_COROUTINE_LIBS="$BOOST_COROUTINE_LIBS $BOOST_CONTEXT_LIBS" -+ BOOST_COROUTINE_LDFLAGS="$BOOST_COROUTINE_LDFLAGS $BOOST_CONTEXT_LDFLAGS" -+fi -+if test $enable_static_boost = yes && test $boost_major_version -ge 155; then -+ BOOST_COROUTINE_LIBS="$BOOST_COROUTINE_LIBS $BOOST_SYSTEM_LIBS" -+ BOOST_COROUTINE_LDFLAGS="$BOOST_COROUTINE_LDFLAGS $BOOST_SYSTEM_LDFLAGS" -+fi -+LIBS=$boost_coroutine_save_LIBS -+LDFLAGS=$boost_coroutine_save_LDFLAGS -+])# BOOST_COROUTINE -+ -+ - # BOOST_CRC() - # ----------- - # Look for Boost.CRC -@@ -564,7 +685,7 @@ BOOST_DEFUN([Filesystem], - # added as of 1.35.0. If we have a version <1.35, we must not attempt to - # find Boost.System as it didn't exist by then. - if test $boost_major_version -ge 135; then --BOOST_SYSTEM([$1]) -+ BOOST_SYSTEM([$1]) - fi # end of the Boost.System check. - boost_filesystem_save_LIBS=$LIBS - boost_filesystem_save_LDFLAGS=$LDFLAGS -@@ -574,23 +695,34 @@ LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS" - BOOST_FIND_LIB([filesystem], [$1], - [boost/filesystem/path.hpp], [boost::filesystem::path p;]) - if test $enable_static_boost = yes && test $boost_major_version -ge 135; then -- AC_SUBST([BOOST_FILESYSTEM_LIBS], ["$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS"]) -+ BOOST_FILESYSTEM_LIBS="$BOOST_FILESYSTEM_LIBS $BOOST_SYSTEM_LIBS" - fi - LIBS=$boost_filesystem_save_LIBS - LDFLAGS=$boost_filesystem_save_LDFLAGS - ])# BOOST_FILESYSTEM - - -+# BOOST_FLYWEIGHT() -+# ----------------- -+# Look for Boost.Flyweight. -+BOOST_DEFUN([Flyweight], -+[dnl There's a hidden dependency on pthreads. -+AC_REQUIRE([_BOOST_PTHREAD_FLAG])dnl -+BOOST_FIND_HEADER([boost/flyweight.hpp]) -+AC_SUBST([BOOST_FLYWEIGHT_LIBS], [$boost_cv_pthread_flag]) -+]) -+ -+ - # BOOST_FOREACH() - # --------------- --# Look for Boost.Foreach -+# Look for Boost.Foreach. - BOOST_DEFUN([Foreach], - [BOOST_FIND_HEADER([boost/foreach.hpp])]) - - - # BOOST_FORMAT() - # -------------- --# Look for Boost.Format -+# Look for Boost.Format. - # Note: we can't check for boost/format/format_fwd.hpp because the header isn't - # standalone. It can't be compiled because it triggers the following error: - # boost/format/detail/config_macros.hpp:88: error: 'locale' in namespace 'std' -@@ -649,9 +781,18 @@ BOOST_DEFUN([Lambda], - [BOOST_FIND_HEADER([boost/lambda/lambda.hpp])]) - - -+# BOOST_LOCALE() -+# -------------- -+# Look for Boost.Locale -+BOOST_DEFUN([Locale], -+[BOOST_FIND_LIB([locale], [$1], -+ [boost/locale.hpp], -+ [[boost::locale::generator gen; std::locale::global(gen(""));]]) -+])# BOOST_LOCALE -+ - # BOOST_LOG([PREFERRED-RT-OPT]) - # ----------------------------- --# Look for Boost.Log For the documentation of PREFERRED-RT-OPT, see the -+# Look for Boost.Log. For the documentation of PREFERRED-RT-OPT, see the - # documentation of BOOST_FIND_LIB above. - BOOST_DEFUN([Log], - [BOOST_FIND_LIB([log], [$1], -@@ -662,12 +803,12 @@ BOOST_DEFUN([Log], - - # BOOST_LOG_SETUP([PREFERRED-RT-OPT]) - # ----------------------------------- --# Look for Boost.Log For the documentation of PREFERRED-RT-OPT, see the -+# Look for Boost.Log. For the documentation of PREFERRED-RT-OPT, see the - # documentation of BOOST_FIND_LIB above. - BOOST_DEFUN([Log_Setup], - [AC_REQUIRE([BOOST_LOG])dnl - BOOST_FIND_LIB([log_setup], [$1], -- [boost/log/utility/init/from_settings.hpp], -+ [boost/log/utility/setup/from_settings.hpp], - [boost::log::basic_settings bs; bs.empty();]) - ])# BOOST_LOG_SETUP - -@@ -684,6 +825,29 @@ BOOST_DEFUN([Math], - [BOOST_FIND_HEADER([boost/math/special_functions.hpp])]) - - -+# BOOST_MPI([PREFERRED-RT-OPT]) -+# ------------------------------- -+# Look for Boost MPI. For the documentation of PREFERRED-RT-OPT, see the -+# documentation of BOOST_FIND_LIB above. Uses MPICXX variable if it is -+# set, otherwise tries CXX -+# -+BOOST_DEFUN([MPI], -+[boost_save_CXX=${CXX} -+boost_save_CXXCPP=${CXXCPP} -+if test x"${MPICXX}" != x; then -+ CXX=${MPICXX} -+ CXXCPP="${MPICXX} -E" -+fi -+BOOST_FIND_LIB([mpi], [$1], -+ [boost/mpi.hpp], -+ [int argc = 0; -+ char **argv = 0; -+ boost::mpi::environment env(argc,argv);]) -+CXX=${boost_save_CXX} -+CXXCPP=${boost_save_CXXCPP} -+])# BOOST_MPI -+ -+ - # BOOST_MULTIARRAY() - # ------------------ - # Look for Boost.MultiArray -@@ -691,6 +855,14 @@ BOOST_DEFUN([MultiArray], - [BOOST_FIND_HEADER([boost/multi_array.hpp])]) - - -+# BOOST_NUMERIC_UBLAS() -+# -------------------------- -+# Look for Boost.NumericUblas (Basic Linear Algebra) -+BOOST_DEFUN([Numeric_Ublas], -+[BOOST_FIND_HEADER([boost/numeric/ublas/vector.hpp]) -+])# BOOST_NUMERIC_UBLAS -+ -+ - # BOOST_NUMERIC_CONVERSION() - # -------------------------- - # Look for Boost.NumericConversion (policy-based numeric conversion) -@@ -713,6 +885,12 @@ BOOST_DEFUN([Preprocessor], - [BOOST_FIND_HEADER([boost/preprocessor/repeat.hpp])]) - - -+# BOOST_RANGE() -+# -------------------- -+# Look for Boost.Range -+BOOST_DEFUN([Range], -+[BOOST_FIND_HEADER([boost/range/adaptors.hpp])]) -+ - # BOOST_UNORDERED() - # ----------------- - # Look for Boost.Unordered -@@ -759,9 +937,9 @@ BOOST_DEFUN([Python], - _BOOST_PYTHON_CONFIG([LDFLAGS], [ldflags]) - _BOOST_PYTHON_CONFIG([LIBS], [libs]) - m4_pattern_allow([^BOOST_PYTHON_MODULE$])dnl --BOOST_FIND_LIB([python], [$1], -- [boost/python.hpp], -- [], [BOOST_PYTHON_MODULE(empty) {}]) -+BOOST_FIND_LIBS([python], [python python3], [$1], -+ [boost/python.hpp], -+ [], [BOOST_PYTHON_MODULE(empty) {}]) - CPPFLAGS=$boost_python_save_CPPFLAGS - LDFLAGS=$boost_python_save_LDFLAGS - LIBS=$boost_python_save_LIBS -@@ -867,19 +1045,18 @@ BOOST_FIND_LIB([unit_test_framework], [$ - ])# BOOST_TEST - - --# BOOST_THREADS([PREFERRED-RT-OPT]) -+# BOOST_THREAD([PREFERRED-RT-OPT]) - # --------------------------------- - # Look for Boost.Thread. For the documentation of PREFERRED-RT-OPT, see the - # documentation of BOOST_FIND_LIB above. --# FIXME: Provide an alias "BOOST_THREAD". --BOOST_DEFUN([Threads], -+BOOST_DEFUN([Thread], - [dnl Having the pthread flag is required at least on GCC3 where - dnl boost/thread.hpp would complain if we try to compile without - dnl -pthread on GNU/Linux. - AC_REQUIRE([_BOOST_PTHREAD_FLAG])dnl --boost_threads_save_LIBS=$LIBS --boost_threads_save_LDFLAGS=$LDFLAGS --boost_threads_save_CPPFLAGS=$CPPFLAGS -+boost_thread_save_LIBS=$LIBS -+boost_thread_save_LDFLAGS=$LDFLAGS -+boost_thread_save_CPPFLAGS=$CPPFLAGS - # Link-time dependency from thread to system was added as of 1.49.0. - if test $boost_major_version -ge 149; then - BOOST_SYSTEM([$1]) -@@ -887,36 +1064,26 @@ fi # end of the Boost.System check. - m4_pattern_allow([^BOOST_SYSTEM_(LIBS|LDFLAGS)$])dnl - LIBS="$LIBS $BOOST_SYSTEM_LIBS $boost_cv_pthread_flag" - LDFLAGS="$LDFLAGS $BOOST_SYSTEM_LDFLAGS" --# Yes, we *need* to put the -pthread thing in CPPFLAGS because with GCC3, --# boost/thread.hpp will trigger a #error if -pthread isn't used: --# boost/config/requires_threads.hpp:47:5: #error "Compiler threading support --# is not turned on. Please set the correct command line options for --# threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)" - CPPFLAGS="$CPPFLAGS $boost_cv_pthread_flag" - - # When compiling for the Windows platform, the threads library is named - # differently. - case $host_os in -- (*mingw*) -- BOOST_FIND_LIB([thread_win32], [$1], -- [boost/thread.hpp], [boost::thread t; boost::mutex m;]) -- BOOST_THREAD_LDFLAGS=$BOOST_THREAD_WIN32_LDFLAGS -- BOOST_THREAD_LDPATH=$BOOST_THREAD_WIN32_LDPATH -- BOOST_THREAD_LIBS=$BOOST_THREAD_WIN32_LIBS -- ;; -- (*) -- BOOST_FIND_LIB([thread], [$1], -- [boost/thread.hpp], [boost::thread t; boost::mutex m;]) -- ;; -+ (*mingw*) boost_thread_lib_ext=_win32;; - esac -+BOOST_FIND_LIBS([thread], [thread$boost_thread_lib_ext], -+ [$1], -+ [boost/thread.hpp], [boost::thread t; boost::mutex m;]) - - BOOST_THREAD_LIBS="$BOOST_THREAD_LIBS $BOOST_SYSTEM_LIBS $boost_cv_pthread_flag" - BOOST_THREAD_LDFLAGS="$BOOST_SYSTEM_LDFLAGS" - BOOST_CPPFLAGS="$BOOST_CPPFLAGS $boost_cv_pthread_flag" --LIBS=$boost_threads_save_LIBS --LDFLAGS=$boost_threads_save_LDFLAGS --CPPFLAGS=$boost_threads_save_CPPFLAGS --])# BOOST_THREADS -+LIBS=$boost_thread_save_LIBS -+LDFLAGS=$boost_thread_save_LDFLAGS -+CPPFLAGS=$boost_thread_save_CPPFLAGS -+])# BOOST_THREAD -+ -+AU_ALIAS([BOOST_THREADS], [BOOST_THREAD]) - - - # BOOST_TOKENIZER() -@@ -964,7 +1131,8 @@ BOOST_DEFUN([Variant], - [BOOST_FIND_HEADER([boost/variant/variant_fwd.hpp]) - BOOST_FIND_HEADER([boost/variant.hpp])]) - --# BOOST_POINTERCONTAINER() -+ -+# BOOST_POINTER_CONTAINER() - # ------------------------ - # Look for Boost.PointerContainer - BOOST_DEFUN([Pointer_Container], -@@ -974,12 +1142,13 @@ BOOST_FIND_HEADER([boost/ptr_container/p - BOOST_FIND_HEADER([boost/ptr_container/ptr_array.hpp]) - BOOST_FIND_HEADER([boost/ptr_container/ptr_set.hpp]) - BOOST_FIND_HEADER([boost/ptr_container/ptr_map.hpp]) --])# BOOST_POINTERCONTAINER -+])# BOOST_POINTER_CONTAINER -+ - - # BOOST_WAVE([PREFERRED-RT-OPT]) - # ------------------------------ - # NOTE: If you intend to use Wave/Spirit with thread support, make sure you --# call BOOST_THREADS first. -+# call BOOST_THREAD first. - # Look for Boost.Wave. For the documentation of PREFERRED-RT-OPT, see the - # documentation of BOOST_FIND_LIB above. - BOOST_DEFUN([Wave], -@@ -1014,8 +1183,16 @@ BOOST_DEFUN([Xpressive], - - # _BOOST_PTHREAD_FLAG() - # --------------------- --# Internal helper for BOOST_THREADS. Based on ACX_PTHREAD: --# http://autoconf-archive.cryp.to/acx_pthread.html -+# Internal helper for BOOST_THREAD. Computes boost_cv_pthread_flag -+# which must be used in CPPFLAGS and LIBS. -+# -+# Yes, we *need* to put the -pthread thing in CPPFLAGS because with GCC3, -+# boost/thread.hpp will trigger a #error if -pthread isn't used: -+# boost/config/requires_threads.hpp:47:5: #error "Compiler threading support -+# is not turned on. Please set the correct command line options for -+# threading: -pthread (Linux), -pthreads (Solaris) or -mthreads (Mingw32)" -+# -+# Based on ACX_PTHREAD: http://autoconf-archive.cryp.to/acx_pthread.html - AC_DEFUN([_BOOST_PTHREAD_FLAG], - [AC_REQUIRE([AC_PROG_CXX])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl -@@ -1083,6 +1260,14 @@ AC_LANG_POP([C++])dnl - m4_define([_BOOST_gcc_test], - ["defined __GNUC__ && __GNUC__ == $1 && __GNUC_MINOR__ == $2 && !defined __ICC @ gcc$1$2"])dnl - -+# _BOOST_mingw_test(MAJOR, MINOR) -+# ----------------------------- -+# Internal helper for _BOOST_FIND_COMPILER_TAG. -+m4_define([_BOOST_mingw_test], -+["defined __GNUC__ && __GNUC__ == $1 && __GNUC_MINOR__ == $2 && !defined __ICC && \ -+ (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \ -+ || defined __WIN32__ || defined __WINNT || defined __WINNT__) @ mgw$1$2"])dnl -+ - - # _BOOST_FIND_COMPILER_TAG() - # -------------------------- -@@ -1092,7 +1277,8 @@ m4_define([_BOOST_gcc_test], - AC_DEFUN([_BOOST_FIND_COMPILER_TAG], - [AC_REQUIRE([AC_PROG_CXX])dnl - AC_REQUIRE([AC_CANONICAL_HOST])dnl --AC_CACHE_CHECK([for the toolset name used by Boost for $CXX], [boost_cv_lib_tag], -+AC_CACHE_CHECK([for the toolset name used by Boost for $CXX], -+ [boost_cv_lib_tag], - [boost_cv_lib_tag=unknown - if test x$boost_cv_inc_path != xno; then - AC_LANG_PUSH([C++])dnl -@@ -1110,15 +1296,29 @@ if test x$boost_cv_inc_path != xno; then - # I'm not sure about my test for `il' (be careful: Intel's ICC pre-defines - # the same defines as GCC's). - for i in \ -+ _BOOST_mingw_test(5, 0) \ -+ _BOOST_gcc_test(5, 0) \ -+ _BOOST_mingw_test(4, 10) \ -+ _BOOST_gcc_test(4, 10) \ -+ _BOOST_mingw_test(4, 9) \ - _BOOST_gcc_test(4, 9) \ -+ _BOOST_mingw_test(4, 8) \ - _BOOST_gcc_test(4, 8) \ -+ _BOOST_mingw_test(4, 7) \ - _BOOST_gcc_test(4, 7) \ -+ _BOOST_mingw_test(4, 6) \ - _BOOST_gcc_test(4, 6) \ -+ _BOOST_mingw_test(4, 5) \ - _BOOST_gcc_test(4, 5) \ -+ _BOOST_mingw_test(4, 4) \ - _BOOST_gcc_test(4, 4) \ -+ _BOOST_mingw_test(4, 3) \ - _BOOST_gcc_test(4, 3) \ -+ _BOOST_mingw_test(4, 2) \ - _BOOST_gcc_test(4, 2) \ -+ _BOOST_mingw_test(4, 1) \ - _BOOST_gcc_test(4, 1) \ -+ _BOOST_mingw_test(4, 0) \ - _BOOST_gcc_test(4, 0) \ - "defined __GNUC__ && __GNUC__ == 3 && !defined __ICC \ - && (defined WIN32 || defined WINNT || defined _WIN32 || defined __WIN32 \ -@@ -1184,6 +1384,7 @@ fi])dnl end of AC_CACHE_CHECK - # Thread) flavors of Boost. Sets boost_guess_use_mt accordingly. - AC_DEFUN([_BOOST_GUESS_WHETHER_TO_USE_MT], - [# Check whether we do better use `mt' even though we weren't ask to. -+AC_LANG_PUSH([C++])dnl - AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - #if defined _REENTRANT || defined _MT || defined __MT__ - /* use -mt */ -@@ -1191,6 +1392,7 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ - # error MT not needed - #endif - ]])], [boost_guess_use_mt=:], [boost_guess_use_mt=false]) -+AC_LANG_POP([C++])dnl - ]) - - # _BOOST_AC_LINK_IFELSE(PROGRAM, [ACTION-IF-TRUE], [ACTION-IF-FALSE]) -@@ -1214,11 +1416,11 @@ boost_use_source=: - test -f conftest.$ac_objext && ac_ext=$ac_objext && boost_use_source=false && - _AS_ECHO_LOG([re-using the existing conftest.$ac_objext]) - AS_IF([_AC_DO_STDERR($ac_link) && { -- test -z "$ac_[]_AC_LANG_ABBREV[]_werror_flag" || -- test ! -s conftest.err -+ test -z "$ac_[]_AC_LANG_ABBREV[]_werror_flag" || -+ test ! -s conftest.err - } && test -s conftest$ac_exeext && { -- test "$cross_compiling" = yes || -- $as_executable_p conftest$ac_exeext -+ test "$cross_compiling" = yes || -+ $as_executable_p conftest$ac_exeext - dnl FIXME: use AS_TEST_X instead when 2.61 is widespread enough. - }], - [$2], diff --git a/pdns.spec b/pdns.spec index fd1a60f..5fce19e 100644 --- a/pdns.spec +++ b/pdns.spec @@ -2,8 +2,8 @@ %global backends %{nil} Name: pdns -Version: 3.4.2 -Release: 2%{?dist} +Version: 3.4.3 +Release: 1%{?dist} Summary: A modern, advanced and high performance authoritative-only nameserver Group: System Environment/Daemons License: GPLv2 @@ -12,7 +12,6 @@ Source0: http://downloads.powerdns.com/releases/%{name}-%{version}.tar.bz2 Patch0: pdns-default-config.patch Patch1: pdns-systemd.patch Patch2: pdns-disable-secpoll.patch -Patch3: pdns-boost157.patch Requires(pre): shadow-utils Requires(post): systemd-sysv @@ -23,9 +22,6 @@ Requires(postun): systemd-units BuildRequires: systemd-units BuildRequires: boost-devel BuildRequires: lua-devel -BuildRequires: autoconf -BuildRequires: automake -BuildRequires: libtool BuildRequires: cryptopp-devel BuildRequires: bison BuildRequires: polarssl-devel @@ -179,10 +175,8 @@ This package contains the LMDB backend for %{name} %patch0 -p1 -b .default-config-patch %patch1 -p1 -b .systemd-patch %patch2 -p1 -b .disable-secpoll -%patch3 -p1 -b .boost157 %build -autoreconf -v -f -i export CPPFLAGS="-DLDAP_DEPRECATED" %configure \ @@ -217,7 +211,7 @@ chmod 600 %{buildroot}%{_sysconfdir}/%{name}/pdns.conf %{__install} -D -p -m 644 contrib/systemd-pdns.service %{buildroot}%{_unitdir}/%{name}.service %check -make -C pdns check +make %{?_smp_mflags} -C pdns check %pre getent group pdns >/dev/null || groupadd -r pdns @@ -332,6 +326,9 @@ exit 0 %{_libdir}/%{name}/liblmdbbackend.so %changelog +* Mon Mar 02 2015 Morten Stevens - 3.4.3-1 +- Update to 3.4.3 + * Tue Feb 17 2015 Morten Stevens - 3.4.2-2 - Rename zone2ldap to pdns-zone2ldap (#1193116) - Remove rpath workaround diff --git a/sources b/sources index d33e13a..e754342 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -3f79de4d0bc845fb3d4b492234daf1a4 pdns-3.4.2.tar.bz2 +c570495b556eccbecb12136c72f04240 pdns-3.4.3.tar.bz2