diff options
Diffstat (limited to 'debian/rules')
-rwxr-xr-x | debian/rules | 181 |
1 files changed, 181 insertions, 0 deletions
diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..6958031 --- /dev/null +++ b/debian/rules @@ -0,0 +1,181 @@ +#!/usr/bin/make -f +# Sample debian/rules that uses debhelper. +# GNU copyright 1997 by Joey Hess. +# +# This version is for a hypothetical package that builds an +# architecture-dependant package, as well as an architecture-independent +# package. + +# Uncomment this to turn on verbose mode. +#export DH_VERBOSE=1 +VARIETALS=krb5 +#VARIETALS=krb krb45 krb5 + +PACKAGES:=-plibzephyr4 -pzephyr-clients -pzephyr-server -plibzephyr-dev $(foreach i,$(VARIETALS),-plibzephyr4-$(i) -pzephyr-server-$(i)) + +# This has to be exported to make some magic below work. +export DH_OPTIONS +CONFIGURE_ROOT=--prefix=/usr --mandir=\$${prefix}/share/man \ + --infodir=\$${prefix}/share/info --sysconfdir=/etc --datadir=/etc \ + --with-ares=/usr --with-hesiod=/usr --enable-cmu-zwgcplus +CONFIGURE_krb5=--with-krb5=/usr +CONFIGURE_krb45=--with-krb4=/usr --with-krb5=/usr +CONFIGURE_krb=--with-krb4=/usr + +# see /usr/share/doc/autotools-dev/README.Debian.gz +export DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) +export DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) + +# FOR AUTOCONF 2.52 AND NEWER ONLY +ifeq ($(DEB_BUILD_GNU_TYPE), $(DEB_HOST_GNU_TYPE)) + confflags += --build $(DEB_HOST_GNU_TYPE) +else + confflags += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE) +endif + + +# The autotools target adds forced build-time dependencies on +# autotools-dev (for /usr/share/misc/config.*) and devscripts (for dch) +# It's also a .PHONY make target. +autotools: + chmod u+x config.sub + chmod u+x config.guess + OLDDATESUB=`./config.sub -t | tr -d -` ;\ + OLDDATEGUESS=`./config.guess -t | tr -d -` ;\ + NEWDATESUB=`/usr/share/misc/config.sub -t | tr -d -` ;\ + NEWDATEGUESS=`/usr/share/misc/config.guess -t | tr -d -` ;\ + if [ $$OLDDATESUB -lt $$NEWDATESUB -o \ + $$OLDDATEGUESS -lt $$NEWDATEGUESS ]; then \ + dch -a -p "GNU config automated update: config.sub\ + ($$OLDDATESUB to $$NEWDATESUB), config.guess\ + ($$OLDDATEGUESS to $$NEWDATEGUESS)" ;\ + cp -f /usr/share/misc/config.sub config.sub ;\ + cp -f /usr/share/misc/config.guess config.guess ;\ + echo WARNING: GNU config scripts updated from master copies 1>&2 ;\ + fi + +configure: configure-stamp autotools +configure-stamp: + dh_testdir + # Add here commands to configure the package. + for i in $(foreach i,$(VARIETALS),"$i:$(CONFIGURE_$i)"); do \ + IFS=: ; set $$i ; \ + mkdir $$1 || true; \ + (cd $$1 && CFLAGS="-g -O" ../configure $$2 $(CONFIGURE_ROOT)); \ + done + -mkdir no-krb + cd no-krb && CFLAGS="-g -O" ../configure $(CONFIGURE_ROOT) + touch configure-stamp + +build: configure-stamp build-stamp +build-stamp: + dh_testdir + + # Add here commands to compile the package. + set -e; \ + for dir in $(VARIETALS) ; do \ + $(MAKE) -C $$dir/lib; $(MAKE) -C $$dir/server; \ + done + $(MAKE) -C no-krb + + touch build-stamp + +clean: + dh_testdir + dh_testroot + -rm -f build-stamp configure-stamp + + # Add here commands to clean up after the build process. + -rm -rf $(VARIETALS) no-krb debian/tmp-krb* + -rm debian/zephyr-server-krb.files + -rm debian/zephyr-server-krb.templates + -rm debian/zephyr-server-krb.config + -rm debian/zephyr-server-krb.postinst + -rm debian/zephyr-server-krb5.* + -rm debian/zephyr-server-krb45.* + -rm debian/libzephyr4-krb.files debian/libzephyr4-krb5.files debian/libzephyr4-krb45.files + + dh_clean + +install: DH_OPTIONS= +install: build + dh_testdir + dh_testroot + dh_clean -k + -rm -rf debian/tmp-krb* + dh_installdirs + + # Add here commands to install the package into debian/tmp. + $(MAKE) -C no-krb DESTDIR=$(CURDIR)/debian/tmp install + for dir in $(VARIETALS); do \ + $(MAKE) -C $$dir SUBDIRS="lib server" DESTDIR=$(CURDIR)/debian/tmp-$$dir install; \ + done + mkdir -p debian/tmp/etc/zephyr/acl + set -x; for i in debian/acl/*; do install -c -m 644 -o root $$i debian/tmp/etc/zephyr/acl; done; set +x + install -c -m 644 debian/zephyr.vars debian/tmp/etc/zephyr + install -c -m 644 debian/default.subscriptions debian/tmp/etc/zephyr + for dir in $(VARIETALS); do \ + cp -rp debian/tmp/etc/zephyr/acl debian/tmp-$$dir/etc/zephyr; \ + done + +# Build architecture-independent files here. +# Pass -i to all debhelper commands in this target to reduce clutter. +binary-indep: build install + +# Build architecture-dependent files here. +# Pass -a to all debhelper commands in this target to reduce clutter. +binary-arch: build install + dh_testdir + dh_testroot + set -e; \ + for file in files templates postinst docs; do \ + for dir in $(VARIETALS); do \ + cp debian/zephyr-server.$$file debian/zephyr-server-$$dir.$$file; \ + done; \ + done + for file in config; do \ + for dir in $(filter-out krb5,$(VARIETALS)); do \ + cp debian/zephyr-server.$$file debian/zephyr-server-$$dir.$$file; \ + done; \ + done + for file in README.Debian docs init postrm; do \ + for dir in $(filter-out krb,$(VARIETALS)); do \ + cp debian/zephyr-server-krb.$$file debian/zephyr-server-$$dir.$$file; \ + done; \ + done + for dir in $(VARIETALS); do \ + cp debian/libzephyr4.files debian/libzephyr4-$$dir.files; \ + done + dh_movefiles -plibzephyr4 -pzephyr-clients -pzephyr-server -plibzephyr-dev + for dir in $(VARIETALS); do \ + dh_movefiles --sourcedir=debian/tmp-$$dir -plibzephyr4-$$dir -pzephyr-server-$$dir; \ + done + dh_installdebconf + dh_installdocs + dh_installinit -pzephyr-clients --init-script=zhm --no-start + dh_installinit -pzephyr-server --init-script=zephyrd + for dir in $(VARIETALS); do \ + dh_installinit -pzephyr-server-$$dir --init-script=zephyrd; \ + done + dh_installchangelogs + dh_strip + dh_compress + dh_fixperms + dh_makeshlibs + # sigh + for dir in $(VARIETALS); do \ + cp debian/libzephyr4/DEBIAN/shlibs debian/libzephyr4-$$dir/DEBIAN/shlibs; \ + done + dh_shlibdeps $(PACKAGES) + dh_installdeb $(PACKAGES) + dh_gencontrol $(PACKAGES) + dh_md5sums $(PACKAGES) + dh_builddeb $(PACKAGES) + for dir in $(VARIETALS); do \ + dh_builddeb --sourcedir=debian/tmp-$$dir -plibzephyr4-$$dir -pzephyr-server-$$dir; \ + done + + +binary: binary-indep binary-arch + +.PHONY: autotools build clean binary-indep binary-arch binary install |