Package: src:bind9
Version: 1:9.9.5.dfsg-12
Tags: patch
* Move libraries to multiarch locations, mark packages as M-A: same.
* Avoid use of libdir in isc-config.sh.in.
* Enable parallel builds.
* Build using dpkg-buildflags.
hardening-wrapper seems to be obsolete, and not wrapping gcc-5, so the package
is built without hardening support. Fixed that by using dpkg-buildflags.
The isc-config.sh script now should be the same on all archs, assuming that the
config options are the same. I didn't explicitly check the header files. If
these turn out to be different, then just remove the M-A: same attribute from
the bind9-dev package.
Also the package could use some package format v3 love.
diff -u bind9-9.9.5.dfsg/debian/changelog bind9-9.9.5.dfsg/debian/changelog
--- bind9-9.9.5.dfsg/debian/changelog
+++ bind9-9.9.5.dfsg/debian/changelog
@@ -1,3 +1,13 @@
+bind9 (1:9.9.5.dfsg-12.1) unstable; urgency=medium
+
+ * Non-maintainer upload.
+ * Move libraries to multiarch locations, mark packages as M-A: same.
+ * Avoid use of libdir in isc-config.sh.in.
+ * Enable parallel builds.
+ * Build using dpkg-buildflags.
+
+ -- Matthias Klose <[email protected]> Wed, 21 Oct 2015 12:50:59 +0200
+
bind9 (1:9.9.5.dfsg-12) unstable; urgency=high
* Fix CVE-2015-5722: maliciously crafted DNSSEC key can cause named to crash.
diff -u bind9-9.9.5.dfsg/debian/control bind9-9.9.5.dfsg/debian/control
--- bind9-9.9.5.dfsg/debian/control
+++ bind9-9.9.5.dfsg/debian/control
@@ -3,7 +3,7 @@
Priority: optional
Maintainer: LaMont Jones <[email protected]>
Uploaders: Michael Gilbert <[email protected]>
-Build-Depends: libkrb5-dev, debhelper (>= 5), libssl-dev, libtool, bison,
libdb-dev (>>4.6), libldap2-dev, libxml2-dev, libcap2-dev [!kfreebsd-i386
!kfreebsd-amd64 !hurd-i386], hardening-wrapper, libgeoip-dev (>= 1.4.6.dfsg-5),
dpkg-dev (>= 1.15.5), python, python-argparse, dh-systemd, autotools-dev,
dh-autoreconf
+Build-Depends: libkrb5-dev, debhelper (>= 5), libssl-dev, libtool, bison,
libdb-dev (>>4.6), libldap2-dev, libxml2-dev, libcap2-dev [!kfreebsd-i386
!kfreebsd-amd64 !hurd-i386], libgeoip-dev (>= 1.4.6.dfsg-5), dpkg-dev (>=
1.15.5), python, python-argparse, dh-systemd, autotools-dev, dh-autoreconf
Build-Conflicts: libdb4.2-dev
Standards-Version: 3.7.3.0
XS-Vcs-Browser: http://git.debian.org/?p=users/lamont/bind9.git
@@ -58,6 +58,7 @@
Package: libbind-dev
Section: libdevel
Architecture: any
+Multi-Arch: same
Conflicts: bind-dev
Replaces: bind-dev
Depends: ${misc:Depends}, libdns100 (=${binary:Version}), libisccfg90
(=${binary:Version}), libisc95 (=${binary:Version}), liblwres90
(=${binary:Version}), libbind9-90 (=${binary:Version})
@@ -71,6 +72,7 @@
Section: libs
Priority: standard
Architecture: any
+Multi-Arch: same
Conflicts: libbind0, libbind9-41
Replaces: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}, libdns100, libisccfg90, libisc95
@@ -84,6 +86,7 @@
Section: libs
Priority: standard
Architecture: any
+Multi-Arch: same
Conflicts: libbind0, libbind9-41
Replaces: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}, libisc95
@@ -97,6 +100,7 @@
Section: libs
Priority: standard
Architecture: any
+Multi-Arch: same
Conflicts: libbind0, libbind9-41
Replaces: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}
@@ -110,6 +114,7 @@
Section: libs
Priority: standard
Architecture: any
+Multi-Arch: same
Replaces: libbind0
Conflicts: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}
@@ -122,6 +127,7 @@
Package: libisccc90
Section: libs
Architecture: any
+Multi-Arch: same
Conflicts: libbind0, libbind9-41
Replaces: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}, libisc95
@@ -134,6 +140,7 @@
Package: libisccfg90
Section: libs
Architecture: any
+Multi-Arch: same
Conflicts: libbind0, libbind9-41
Replaces: libbind0
Depends: ${shlibs:Depends}, ${misc:Depends}, libdns100, libisccc90, libisc95
@@ -175,6 +182,7 @@
Package: libbind-export-dev
Section: libdevel
Architecture: any
+Multi-Arch: same
Conflicts: libbind-dev
Depends: ${misc:Depends}, libdns-export100 (=${binary:Version}),
libisccfg-export90 (=${binary:Version}), libisc-export95 (=${binary:Version}),
libirs-export91 (=${binary:Version})
Description: Development files for the exported BIND libraries
@@ -185,6 +193,7 @@
Package: libdns-export100
Section: libs
Architecture: any
+Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Exported DNS Shared Library
@@ -202,6 +211,7 @@
Package: libisc-export95
Section: libs
Architecture: any
+Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Exported ISC Shared Library
@@ -219,6 +229,7 @@
Package: libisccfg-export90
Section: libs
Architecture: any
+Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Exported ISC CFG Shared Library
@@ -236,6 +247,7 @@
Package: libirs-export91
Section: libs
Architecture: any
+Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: Exported IRS Shared Library
diff -u bind9-9.9.5.dfsg/debian/libbind-dev.install
bind9-9.9.5.dfsg/debian/libbind-dev.install
--- bind9-9.9.5.dfsg/debian/libbind-dev.install
+++ bind9-9.9.5.dfsg/debian/libbind-dev.install
@@ -2,16 +2,16 @@
../../lib/dns/include/dns/dlz_dlopen.h usr/include/dns
-usr/lib/libbind9.a
-usr/lib/libbind9.so
-usr/lib/libdns.a
-usr/lib/libdns.so
-usr/lib/libisc.a
-usr/lib/libisc.so
-usr/lib/liblwres.a
-usr/lib/liblwres.so
-usr/lib/libisccc.a
-usr/lib/libisccc.so
-usr/lib/libisccfg.a
-usr/lib/libisccfg.so
+usr/lib/*/libbind9.a
+usr/lib/*/libbind9.so
+usr/lib/*/libdns.a
+usr/lib/*/libdns.so
+usr/lib/*/libisc.a
+usr/lib/*/libisc.so
+usr/lib/*/liblwres.a
+usr/lib/*/liblwres.so
+usr/lib/*/libisccc.a
+usr/lib/*/libisccc.so
+usr/lib/*/libisccfg.a
+usr/lib/*/libisccfg.so
usr/share/man/man3
usr/bin/isc-config.sh
diff -u bind9-9.9.5.dfsg/debian/libbind9-90.install
bind9-9.9.5.dfsg/debian/libbind9-90.install
--- bind9-9.9.5.dfsg/debian/libbind9-90.install
+++ bind9-9.9.5.dfsg/debian/libbind9-90.install
@@ -1 +1 @@
-usr/lib/libbind9.so.90*
+usr/lib/*/libbind9.so.90*
diff -u bind9-9.9.5.dfsg/debian/libdns100.install
bind9-9.9.5.dfsg/debian/libdns100.install
--- bind9-9.9.5.dfsg/debian/libdns100.install
+++ bind9-9.9.5.dfsg/debian/libdns100.install
@@ -1 +1 @@
-usr/lib/libdns.so.100*
+usr/lib/*/libdns.so.100*
diff -u bind9-9.9.5.dfsg/debian/libirs91.install
bind9-9.9.5.dfsg/debian/libirs91.install
--- bind9-9.9.5.dfsg/debian/libirs91.install
+++ bind9-9.9.5.dfsg/debian/libirs91.install
@@ -1 +1 @@
-usr/lib/libirs.so.91*
+usr/lib/*/libirs.so.91*
diff -u bind9-9.9.5.dfsg/debian/libisc95.install
bind9-9.9.5.dfsg/debian/libisc95.install
--- bind9-9.9.5.dfsg/debian/libisc95.install
+++ bind9-9.9.5.dfsg/debian/libisc95.install
@@ -1 +1 @@
-usr/lib/libisc.so.95*
+usr/lib/*/libisc.so.95*
diff -u bind9-9.9.5.dfsg/debian/libisccc90.install
bind9-9.9.5.dfsg/debian/libisccc90.install
--- bind9-9.9.5.dfsg/debian/libisccc90.install
+++ bind9-9.9.5.dfsg/debian/libisccc90.install
@@ -1 +1 @@
-usr/lib/libisccc.so.90*
+usr/lib/*/libisccc.so.90*
diff -u bind9-9.9.5.dfsg/debian/libisccfg90.install
bind9-9.9.5.dfsg/debian/libisccfg90.install
--- bind9-9.9.5.dfsg/debian/libisccfg90.install
+++ bind9-9.9.5.dfsg/debian/libisccfg90.install
@@ -1 +1 @@
-usr/lib/libisccfg.so.90*
+usr/lib/*/libisccfg.so.90*
diff -u bind9-9.9.5.dfsg/debian/liblwres90.install
bind9-9.9.5.dfsg/debian/liblwres90.install
--- bind9-9.9.5.dfsg/debian/liblwres90.install
+++ bind9-9.9.5.dfsg/debian/liblwres90.install
@@ -1 +1 @@
-usr/lib/liblwres.so.90*
+usr/lib/*/liblwres.so.90*
diff -u bind9-9.9.5.dfsg/debian/rules bind9-9.9.5.dfsg/debian/rules
--- bind9-9.9.5.dfsg/debian/rules
+++ bind9-9.9.5.dfsg/debian/rules
@@ -6,6 +6,11 @@
# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1
+COMMA = ,
+ifneq (,$(filter parallel=%,$(subst $(COMMA), ,$(DEB_BUILD_OPTIONS))))
+ NJOBS := -j $(subst parallel=,,$(filter parallel=%,$(subst $(COMMA),
,$(DEB_BUILD_OPTIONS))))
+endif
+
ifndef DEB_HOST_ARCH
DEB_BUILD_ARCH := $(shell dpkg --print-architecture)
endif
@@ -13,23 +18,20 @@
DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
-ifneq (,$(findstring debug,$(DEB_BUILD_OPTIONS)))
-DEBUG = -g
-endif
+export DEB_BUILD_MAINT_OPTIONS=hardening=+all
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-OPT =
-else
-OPT = -O2
-endif
+CFLAGS := $(shell dpkg-buildflags --get CPPFLAGS; dpkg-buildflags --get
CFLAGS) \
+ -fno-strict-aliasing -fno-delete-null-pointer-checks -DDIG_SIGCHASE
+LDFLAGS := $(shell dpkg-buildflags --get LDFLAGS)
+
+export CFLAGS
+export LDFLAGS
ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS)))
export MAKEFLAGS += -j$(NUMJOBS)
endif
-export CFLAGS=-fno-strict-aliasing -fno-delete-null-pointer-checks
-DDIG_SIGCHASE $(DEBUG) $(OPT)
-
ifeq ($(DEB_HOST_ARCH_OS),kfreebsd)
EXTRA_FEATURES=--disable-linux-caps --disable-threads
endif
@@ -57,6 +59,7 @@
--with-export-libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
--with-export-includedir=\$${prefix}/include/bind-export
./configure --prefix=/usr \
+ --libdir=\$${prefix}/lib/$(DEB_HOST_MULTIARCH) \
--mandir=\$${prefix}/share/man \
--infodir=\$${prefix}/share/info \
--sysconfdir=/etc/bind \
@@ -81,8 +84,8 @@
build: build-stamp
build-stamp: configure-stamp
dh_testdir
- $(MAKE) -C export
-
LD_LIBRARY_PATH=$$(pwd)/lib/isc/.libs:$$(pwd)/lib/isccc/.libs:$$(pwd)/isccfg/.libs:$${LD_LIBRARY_PATH}
$(MAKE)
+ $(MAKE) $(NJOBS) -C export
+
LD_LIBRARY_PATH=$$(pwd)/lib/isc/.libs:$$(pwd)/lib/isccc/.libs:$$(pwd)/isccfg/.libs:$${LD_LIBRARY_PATH}
$(MAKE) $(NJOBS)
touch $@
autofiles:
@@ -125,6 +128,7 @@
dh_clean -k
dh_installdirs
$(MAKE) -C export install DESTDIR=`pwd`/debian/bind9
+ rm -f debian/bind9/usr/lib/lib*.a debian/bind9/usr/lib/lib*.so
debian/bind9/usr/lib/lib*.so.*
$(MAKE) install DESTDIR=`pwd`/debian/bind9
rm -rf debian/bind9/usr/etc
find debian/bind9 -name \*.la -execdir rm -f {} \;
only in patch2:
unchanged:
--- bind9-9.9.5.dfsg.orig/isc-config.sh.in
+++ bind9-9.9.5.dfsg/isc-config.sh.in
@@ -21,7 +21,6 @@
exec_prefix=@exec_prefix@
exec_prefix_set=
includedir=@includedir@
-libdir=@libdir@
usage()
{
@@ -133,7 +132,7 @@
if test x"${exec_prefix_set}" = x"true"; then
includes="-L${exec_prefix}/lib"
else
- libs="-L${libdir}"
+ libs=
fi
if test x"$liblwres" = x"true" ; then
libs="$libs -llwres"