#! /usr/bin/make -f ###-------------------------------------------------------------------------- ### Preliminary definitions. ## The multiarch triple. DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) a := $(DEB_HOST_MULTIARCH) ## My version number, shorn of the Debian package version if any. DEB_UPSTREAM_VERSION ?= \ $(shell dpkg-parsechangelog | \ sed -n "/^Version: \([^-]*\)\(-.*\)\?/s//\1/p") v := $(DEB_UPSTREAM_VERSION) ## Default Debhelper options. DH_OPTIONS = --parallel ## Default Debhelper actions. %:; dh $@ $(DH_OPTIONS) ###-------------------------------------------------------------------------- ### Multiple flavours. ## The various flavours of the library which we must build. FLAVOURS = noadns adns ## The build actions which we have to override. DH_BUILD_OVERRIDES = configure clean build install test ## How to perform build action for a particular library flavour. define flavour-build-action dh_auto_$1 -Bdebian/build-$2 \ $(addprefix -O, $(DH_OPTIONS)) $(DH_OPTIONS_$2) \ $(DH_$1_OPTIONS) $(DH_$1_OPTIONS_$2) endef ## Override the build actions, and perform the relevant action for each ## flavour in turn. $(foreach t, $(DH_BUILD_OVERRIDES), dh-$t-hook):: %:; @: $(foreach t, $(DH_BUILD_OVERRIDES), override_dh_auto_$t): \ override_dh_auto_%: dh-%-hook $(foreach f, $(FLAVOURS), $(call flavour-build-action,$*,$f)) ## Configuration options. DH_configure_OPTIONS = -- --libexecdir='$${libdir}' DH_configure_OPTIONS_noadns = --without-adns DH_configure_OPTIONS_adns = --with-adns ## Cleaning options. dh-clean-hook:: rm -rf debian/tmp-adns ## Installation options. DH_install_OPTIONS_adns = --destdir=debian/tmp-adns ###-------------------------------------------------------------------------- ### Additional tweaks. ## Don't try to rebuild our configure script. DH_OPTIONS += --without=autoreconf ## Some of the install lists need to be generated. This is a little ## annoying. GEN_INSTALL_PKGS = mlib2-adns GEN_INSTALL_FILES = $(foreach p, $(GEN_INSTALL_PKGS), debian/$p.install) $(GEN_INSTALL_FILES): debian/%.install: \ debian/%.install.in debian/changelog debian/rules sed 's,@ARCH@,$a,g' $< >$@.new && mv $@.new $@ dh-install-hook:: $(GEN_INSTALL_FILES); @: dh-clean-hook:: rm -f $(GEN_INSTALL_FILES) ## Check that the shared-library symbols are plausible. override_dh_makeshlibs: dh_makeshlibs -- -c4 ###----- That's all, folks --------------------------------------------------