#!/usr/bin/make -f # Sample debian/rules that uses debhelper. # GNU copyright 1997 to 1999 by Joey Hess. # Uncomment this to turn on verbose mode. #export DH_VERBOSE=1 VERS = $(shell sed -ne '1s/.*(\(.*\)).*/\1/p' debian/changelog) # KSRC is the location of the kernel source. This is the default value, # when make-kpkg is used it will supply to real value KSRC = /usr/src/linux # KDREV is the package-revision, as given to make-kpkg by the user. # Just put a simply default value in here which we use when we test # the packagebuilding without make-kpkg KDREV = "Custom.1.00" # Separate the epoch from the normal revision number in KDREV # for use with dh_gencontrol KDREV_EPOCH = $(shell echo $(KDREV) | sed -ne '1s/\([^:]*:\)\?\(.*\)/\1/p') KDREV_REV = $(shell echo $(KDREV) | sed -ne '1s/\([^:]*:\)\?\(.*\)/\2/p') # Now we need to get the kernel-version somehow if test -d $(KSRC); then \ KVERS=`sed -n -e '/UTS_RELEASE/s/^[^"]*"\([^"]*\)".*$$/\1/p' $(KSRC)/include/linux/version.h`; \ fi # KMAINT and KEMAIL should be set but in case they are not we specify # sane default values ifeq ($(KMAINT),) KMAINT = Rene Mayrhofer endif ifeq ($(KEMAIL),) KEMAIL = rmayr@debian.org endif SED_SCRIPT=s!\$$KVERS!$(KVERS)!g; \ s!\$$KEMAIL!$(KEMAIL)!; \ s!\$$KMAINT!$(KMAINT)!; \ s!\$$KDREV!$(KDREV)! ifeq ($(DEB_DEST),) DEB_DEST=$(KSRC)/.. endif # Clear root command if already root ifeq ($(shell id -u),0) ROOT_CMD= endif # export these variables as they are necessary for building export KERNELSRC=${KSRC} export LIBRESWANSRCDIR=$(CURDIR) # this primarily sets ARCH, we may be able to do that in another way # but it also defines IPSECVERSION, which is needed below include Makefile.inc debian/control: debian/control.in if ! test -f $@; then \ sed -e "$(SED_SCRIPT)" debian/control.in > $@; \ fi .PHONY: debian/control debian/docs: cp debian/docs.in debian/libreswan-modules-$(KVERS).docs debian/lintian-overrides: sed -e "$(SED_SCRIPT)" debian/lintian-overrides.in > debian/libreswan-modules-$(KVERS).lintian-overrides configure: configure-stamp configure-stamp: dh_testdir # Add here commands to configure the package. touch configure-stamp build: debian/control debian/docs debian/lintian-overrides configure-stamp build-stamp build-stamp: dh_testdir $(MAKE) module touch build-stamp clean: dh_testdir dh_testroot rm -f build-stamp configure-stamp $(MAKE) moduleclean rm -rf OBJ.* || true dh_clean rm -f debian/control || true rm -f debian/libreswan-modules-*.docs || true rm -f debian/libreswan-modules-*.lintian-overrides || true MODDESTDIR=$(CURDIR)/debian/libreswan-modules-$(KVERS)/lib/modules/$(KVERS)/kernel/net/ipsec install: install: build dh_testdir dh_testroot dh_prep dh_installdirs mkdir -p $(MODDESTDIR) cp modobj/ipsec.ko $(MODDESTDIR) # Build architecture-independent files here. binary-indep: build install # We have nothing to do by default. # Build architecture-dependent files here. binary-arch: build install dh_testdir dh_testroot dh_installdocs dh_installmodules dh_installchangelogs CHANGES dh_compress dh_fixperms dh_lintian dh_installdeb dh_gencontrol -- -v$(KDREV_EPOCH)$(VERS)+$(KDREV_REV) dh_md5sums dh_builddeb --destdir=$(DEB_DEST) binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install configure binary-modules: binary kdist_image: $(ROOT_CMD) $(MAKE) -f debian/rules binary-modules $(ROOT_CMD) $(MAKE) -f debian/rules clean kdist_clean: debian/control clean kdist: $(ROOT_CMD) $(MAKE) -f debian/rules binary-modules kdist_configure: configure-stamp .PHONY: binary-modules kdist_image