Use dpkg-buildflags in build process
authorAdam Dickmeiss <adam@indexdata.dk>
Mon, 3 Dec 2012 14:35:32 +0000 (15:35 +0100)
committerAdam Dickmeiss <adam@indexdata.dk>
Mon, 3 Dec 2012 14:35:32 +0000 (15:35 +0100)
This is to use hardening options for the libraries and programs.
Refer to http://wiki.debian.org/Hardening for more information.

debian/rules

index 6f98f3e..e833251 100755 (executable)
 DEB_HOST_GNU_TYPE   ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
 DEB_BUILD_GNU_TYPE  ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
 
-
-CFLAGS = -Wall -g
-
-ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
-       CFLAGS += -O0
-else
-       CFLAGS += -O2
-endif
-ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS)))
-       INSTALL_PROGRAM += -s
-endif
+CPPFLAGS:=$(shell dpkg-buildflags --get CPPFLAGS)
+CFLAGS:=$(shell dpkg-buildflags --get CFLAGS) $(CPPFLAGS)
+CXXFLAGS:=$(shell dpkg-buildflags --get CXXFLAGS) $(CPPFLAGS)
+LDFLAGS:=$(shell dpkg-buildflags --get LDFLAGS)
 
 config.status: configure
        dh_testdir
        # Add here commands to configure the package.
-       CFLAGS="$(CFLAGS)" ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) --prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info --enable-shared --with-yaz=/usr/bin --with-tclconfig=/usr/lib/tcl8.4
+       CPPFLAGS="$(CPPFLAGS)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" \
+               LDFLAGS="$(LDFLAGS)" \
+               ./configure --host=$(DEB_HOST_GNU_TYPE) \
+               --build=$(DEB_BUILD_GNU_TYPE) \
+               --mandir=\$${prefix}/share/man \
+               --infodir=\$${prefix}/share/info \
+               --enable-shared --enable-static \
+               --with-yaz=/usr/bin \
+               --with-tclconfig=/usr/lib/tcl8.4 \
+               --prefix=/usr
 
 build: build-stamp
 build-stamp:  config.status