178 lines
5.7 KiB
Makefile
Executable File

#!/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 -plibzephyr-python $(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-cares=/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
CONFIGURE_no-krb=
CFLAGS=-g -O
CHECK=
# 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))
CONFIGURE_ROOT += --build $(DEB_HOST_GNU_TYPE)
else
CONFIGURE_ROOT += --build $(DEB_BUILD_GNU_TYPE) --host $(DEB_HOST_GNU_TYPE)
endif
BUILD_VARIETALS=$(VARIETALS) no-krb
configure: configure-stamp
configure-stamp:
dh_testdir
# Add here commands to configure the package.
libtoolize
aclocal
automake -a || true # we only want this for install-sh
autoreconf
mkdir -p $(BUILD_VARIETALS)
$(foreach VARIETY,$(BUILD_VARIETALS),(cd $(VARIETY) && CFLAGS="$(CFLAGS)" ../configure $(CONFIGURE_$(VARIETY)) $(CONFIGURE_ROOT));)
touch configure-stamp
build-arch: build-stamp
build-indep: build-stamp
build: build-stamp
build-stamp: configure-stamp
dh_testdir
# Add here commands to compile the package.
set -e; \
for dir in $(VARIETALS) ; do \
$(MAKE) -C $$dir h/zephyr_version.h; $(MAKE) -C $$dir/lib all $(CHECK); $(MAKE) -C $$dir/server; \
done
$(MAKE) -C no-krb all $(CHECK)
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 autom4te.cache m4
-rm aclocal.m4 config.guess config.sub configure h/config.h.in \
install-sh ltmain.sh
-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.README.Debian \
debian/zephyr-server-krb5.docs debian/zephyr-server-krb5.files \
debian/zephyr-server-krb5.postinst debian/zephyr-server-krb5.postrm \
debian/zephyr-server-krb5.templates
-rm debian/zephyr-server-krb45.*
-rm debian/libzephyr4-krb.files debian/libzephyr4-krb5.files \
debian/libzephyr4-krb45.files
dh_clean -XTAGS
install: DH_OPTIONS=
install: build
dh_testdir
dh_testroot
dh_prep -XTAGS
-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
mkdir -p debian/tmp/usr/lib/python2.5/site-packages
install -c -m 644 python/zephyr_ctypes.py debian/tmp/usr/lib/python2.5/site-packages
# 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 init; 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 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 -plibzephyr-python
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_pycentral -plibzephyr-python
dh_python -plibzephyr-python
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: build clean binary-indep binary-arch binary install