#!/usr/bin/make -f # Made with the aid of debmake, by Christoph Lameter, # based on the sample debian/rules file for GNU hello by Ian Jackson. package=ivy-c SED_COMMAND='s/.*(\([^)]*\)).*/\1/p' MAJOR := $(shell sed -n $(SED_COMMAND) debian/changelog | head -1 | sed -n 's/\([0-9]*\)\..*/\1/p') MINOR := $(shell sed -n $(SED_COMMAND) debian/changelog | head -1 | sed -n 's/[0-9]*\.\([0-9\.]*\).*/\1/p') VERSION = $(MAJOR).$(MINOR) CVS_TAG := $(shell echo -n $(VERSION) | sed -n 's/\./_/gp') build: $(checkdir) $(checkversion) cd src && make all MAJOR=$(MAJOR) MINOR=$(MINOR) touch build clean: $(checkdir) $(checkversion) -rm -f build -rm -rf debian/tmp `find debian/* -type d ! -name CVS` debian/files* core -rm -f debian/*substvars binary-indep: checkroot build $(checkdir) $(checkversion) # There are no architecture-independent files to be uploaded # generated by this package. If there were any they would be # made here. binary-arch: checkroot build $(checkdir) $(checkversion) -rm -rf debian/tmp `find debian/* -type d ! -name CVS` install -d debian/tmp cd debian/tmp && install -d `cat ../dirs` cd src && make install PREFIX=`pwd`/../debian/tmp MAJOR=$(MAJOR) MINOR=$(MINOR) debstd -p -rmdir debian/tmp/usr/include dpkg-gencontrol -p$(package) chown -R root.root debian/tmp chmod -R go=rX debian/tmp dpkg --build debian/tmp .. define checkdir test -f debian/rules endef # Below here is fairly generic really binary: binary-indep binary-arch checkroot: $(checkdir) test root = "`whoami`" define checkversion -@echo $(VERSION) -@echo $(CVS_TAG) -@if (test -d CVS); then \ if (cvs status -v debian/changelog | grep --silent $(CVS_TAG)); then \ echo "cvs tag $(CVS_TAG) matches package version $(VERSION)"; \ else \ echo "debian/rules: *** Warning : No cvs tag $(CVS_TAG) matches package version $(VERSION) for file changelog. You can tag your cvs module by doing debian/rules tag"; \ echo -n "debian/rules: *** Existing tags are : "; \ cvs status -v debian/changelog | sed -n 's/.*\(V.*_[0-9]\).*/\1/p'; \ fi \ fi endef tag: -@if (test -x cvs); then cvs tag $(CVS_TAG) .; fi .PHONY: binary binary-arch binary-indep clean checkroot