]> git.ipfire.org Git - thirdparty/pdns.git/blob - builder-support/debian/recursor/debian-buster/rules
6f44c616cb3e15c42a08bbfdf4a15c2cce365d4c
[thirdparty/pdns.git] / builder-support / debian / recursor / debian-buster / rules
1 #!/usr/bin/make -f
2 DEB_HOST_ARCH_OS ?= $(shell dpkg-architecture -qDEB_HOST_ARCH_OS)
3
4 # Enable hardening features for daemons
5 # Note: blhc (build log hardening check) will find these false positives: CPPFLAGS 2 missing, LDFLAGS 1 missing
6 export DEB_BUILD_MAINT_OPTIONS=hardening=+bindnow,+pie
7 DPKG_EXPORT_BUILDFLAGS = 1
8 # Include buildflags.mk so we can append to the vars it sets.
9 include /usr/share/dpkg/buildflags.mk
10
11 # Disable systemd integration on non-linux archs
12 ifeq ($(DEB_HOST_ARCH_OS),linux)
13 CONFIGURE_ARGS += --enable-systemd --with-systemd=/lib/systemd/system
14 DH_ARGS += --with systemd
15 else
16 CONFIGURE_ARGS += --disable-systemd
17 endif
18
19
20 # Use new build system
21 %:
22 dh $@ \
23 --with autoreconf \
24 $(DH_ARGS)
25
26 override_dh_auto_configure:
27 dh_auto_configure -- \
28 --sysconfdir=/etc/powerdns \
29 --enable-unit-tests \
30 --with-lua=luajit \
31 --with-libcap \
32 --with-libsodium \
33 --with-protobuf=yes \
34 --enable-dnstap \
35 --without-net-snmp \
36 --disable-silent-rules \
37 --with-service-user=pdns \
38 --with-service-group=pdns \
39 $(CONFIGURE_ARGS)
40
41 override_dh_auto_install:
42 dh_auto_install
43 install -d debian/pdns-recursor/usr/share/pdns-recursor/lua-config
44 install -m 644 -t debian/pdns-recursor/usr/share/pdns-recursor/lua-config debian/lua-config/rootkeys.lua
45 install -m 644 -t debian/pdns-recursor/etc/powerdns debian/recursor.lua
46 rm -f debian/pdns-recursor/etc/powerdns/recursor.conf-dist
47 ./pdns_recursor --no-config --config=default | sed \
48 -e 's!# config-dir=.*!config-dir=/etc/powerdns!' \
49 -e 's!# include-dir=.*!&\ninclude-dir=/etc/powerdns/recursor.d!' \
50 -e 's!# local-address=.*!local-address=127.0.0.1!' \
51 -e 's!# lua-config-file=.*!lua-config-file=/etc/powerdns/recursor.lua!' \
52 -e 's!# quiet=.*!quiet=yes!' \
53 -e 's!# setgid=.*!setgid=pdns!' \
54 -e 's!# setuid=.*!setuid=pdns!' \
55 -e 's!# hint-file=.*!&\nhint-file=/usr/share/dns/root.hints!' \
56 > debian/pdns-recursor/etc/powerdns/recursor.conf
57
58 override_dh_strip:
59 dh_strip --ddeb-migration='pdns-recursor-dbg'
60
61 override_dh_installinit:
62 dh_installinit --error-handler=initscript_error
63
64 override_dh_gencontrol:
65 dh_gencontrol -- $(SUBSTVARS)
66
67 override_dh_fixperms:
68 dh_fixperms
69 # these files often contain passwords. 640 as it is chowned to root:pdns
70 chmod 0640 debian/pdns-recursor/etc/powerdns/recursor.conf