Ticket #496 (new enhancement)

Opened 11 months ago

Last modified 8 months ago

out-of-tree building doesn't work, needed for clean Debian pdns-static

Reported by: anon Owned by: ahu
Priority: normal Milestone:
Component: auth Version: 3.2
Severity: minor Keywords:
Cc:

Description

Hi,

PowerDNS 3.1 won't build in an out-of-tree setting:

[146/635]mh@salida[schroot sid_build64]:~/packages/pdns/altes/pdns-3.1/buildtree $ ../configure --with-modules="" --with-dynmodules="" checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes <snip> config.status: creating modules/luabackend/Makefile config.status: creating modules/tinydnsbackend/Makefile config.status: creating config.h config.status: executing depfiles commands config.status: executing libtool commands [147/636]mh@salida[schroot sid_build64]:~/packages/pdns/altes/pdns-3.1/buildtree $ make make all-recursive make[1]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree' Making all in modules make[2]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/modules' make[3]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/modules' make[3]: Nothing to be done for `all-am'. make[3]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/modules' make[2]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/modules' Making all in codedocs make[2]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/codedocs' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/codedocs' Making all in pdns make[2]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/pdns' make all-recursive make[3]: Entering directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/pdns' Making all in ext/polarssl-1.1.2 /bin/bash: line 17: cd: ext/polarssl-1.1.2: No such file or directory make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/pdns' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree/pdns' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/mh/packages/pdns/altes/pdns-3.1/buildtree' make: *** [all] Error 2 [148/637]mh@salida[schroot sid_build64]:~/packages/pdns/altes/pdns-3.1/buildtree $

Having PowerDNS support out-of-tree-builds will make it much easier to build a pdns-static package from the Debian source tree. I would love to see tht work in PowerDNS.

When inquiring about out-of-tree-builds, I was pointed towards  http://www.gnu.org/savannah-checkouts/gnu/automake/manual/html_node/VPATH-Builds.html

Maybe these docs will help to find out how to make PowerDNS support out-of-tree builds. They surely didn't help me ;-)

I'm going to postpone additional work on the Debian PowerDNS package regarding pdns-static.deb until it has been determined whether this proposed change to upstream PowerDNS is worth implementing.

Greetings Marc

Change History

Changed 9 months ago by anon

[30/526]mh@scratchsid1:~/pdns/pdns-3.1/pdns-3.1/build$ ../configure --with-modules="" --with-dynmodules=""
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
config.status: creating modules/tinydnsbackend/Makefile
config.status: creating config.h
config.status: executing depfiles commands
config.status: executing libtool commands
[31/527]mh@scratchsid1:~/pdns/pdns-3.1/pdns-3.1/build$ make
make  all-recursive
make[1]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build'
Making all in modules
make[2]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/modules'
make[3]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/modules'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/modules'
make[2]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/modules'
Making all in codedocs
make[2]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/codedocs'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/codedocs'
Making all in pdns
make[2]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns'
make  all-recursive
make[3]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns'
Making all in ext/polarssl-1.1.2
/bin/bash: line 17: cd: ext/polarssl-1.1.2: No such file or directory
make[3]: *** [all-recursive] Error 1
make[3]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build'
make: *** [all] Error 2
[32/528]mh@scratchsid1:~/pdns/pdns-3.1/pdns-3.1/build$ ls
codedocs/  config.h  config.log  config.status*  libtool*  Makefile  modules/  pdns/  stamp-h1
[33/529]mh@scratchsid1:~/pdns/pdns-3.1/pdns-3.1/build$ 

here is the build log in a better readable state. Looks like the VPATH settings do not hold for the local PolarSSL copy. When I copy pdns/ext/polarssl to the build tree, the build fails a bit later when building bindbackend2.cc:

make[5]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns/backends/bind'
make  all-am
make[6]: Entering directory `/home/mh/pdns/pdns-3.1/pdns-3.1/build/pdns/backends/bind'
/bin/bash ../../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -I. -I../../../../pdns/backends/bind -I../../.. -I../..   -pthread   -D_GNU_SOURCE -Wall -O2 -MT libbind2backend_la-bindbackend2.lo -MD -MP -MF .deps/libbind2backend_la-bindbackend2.Tpo -c -o libbind2backend_la-bindbackend2.lo `test -f 'bindbackend2.cc' || echo '../../../../pdns/backends/bind/'`bindbackend2.cc
libtool: compile:  g++ -DHAVE_CONFIG_H -I. -I../../../../pdns/backends/bind -I../../.. -I../.. -pthread -D_GNU_SOURCE -Wall -O2 -MT libbind2backend_la-bindbackend2.lo -MD -MP -MF .deps/libbind2backend_la-bindbackend2.Tpo -c ../../../../pdns/backends/bind/bindbackend2.cc  -fPIC -DPIC -o .libs/libbind2backend_la-bindbackend2.o
../../../../pdns/backends/bind/bindbackend2.cc:32:27: fatal error: dnsseckeeper.hh: No such file or directory
compilation terminated.

Changed 8 months ago by peter

  • version set to 3.1

Changed 8 months ago by ahu

  • version changed from 3.1 to 3.2

Changed 8 months ago by ahu

This will be post 3.2.

Note: See TracTickets for help on using tickets.