#! /usr/bin/make -f # # debian/rules file for nis # # Package name. p = nis DEBDIR=$(shell pwd)/debian/tmp YPSERV=ypserv-2.19 YPTOOLS=yp-tools-2.9 YPBIND=ypbind-mt-1.38 SHELL=/bin/bash DEB_BUILD_GNU_TYPE := $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) DEB_HOST_GNU_TYPE := $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) ifeq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) CFLAGS = "-O2 -Wall -g" else CFLAGS = "-O0 -Wall -g" endif #ifeq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) # INSTALL_PROGRAM += -s #endif define checkdir test -f $(YPBIND)/README endef all: build build: # Builds the binary package. dh_autoreconf -(cd $(YPTOOLS) && [ ! -f config.status ] && \ CFLAGS=$(CFLAGS) ./configure \ --prefix=/usr --mandir=/usr/share/man \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_HOST_GNU_TYPE) ) (cd $(YPTOOLS) && make) -(cd $(YPBIND) && [ ! -f config.status ] && \ CFLAGS=$(CFLAGS) ./configure \ --prefix=/usr --mandir=/usr/share/man \ --sysconfdir=/etc --libexecdir=/usr/lib/yp \ --disable-dbus-nm \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_HOST_GNU_TYPE) ) (cd $(YPBIND) && make ) rm -f $(YPSERV)/sedscript -(cd $(YPSERV) && [ ! -f config.status ] && \ AWK=/usr/bin/awk CFLAGS=$(CFLAGS) ./configure \ --prefix=/usr --mandir=/usr/share/man \ --sysconfdir=/etc \ --libexecdir=/usr/lib/yp --enable-checkroot \ --build=$(DEB_BUILD_GNU_TYPE) \ --host=$(DEB_HOST_GNU_TYPE) ) (cd $(YPSERV) && \ make CPPFLAGS='-DSECURENETS=\"/etc/ypserv.securenets\"' ) po2debconf -o debian/templates.gen debian/templates touch build # Undoes the effect of `make -f debian/rules build'. clean: -(cd $(YPTOOLS) && [ -f Makefile ] && make distclean) -(cd $(YPBIND) && [ -f Makefile ] && make distclean) -(cd $(YPSERV) && [ -f Makefile ] && make distclean) rm -rf $(YPBIND)/rpcsvc -rm -rf $(DEBDIR) rm -rf $(YPSERV)/autom4te.cache rm -f build debian/{files,substvars,templates.gen} find . -name '*.bak' -o -name '*~' | xargs -r rm -- rm -f */config.cache dh_autoreconf_clean rm -f debian/nis.debhelper.log # Architecture independant files. binary-indep: build $(checkdir) # Make a binary package. binary-arch: build checkroot -rm -rf $(DEBDIR) install -d -g root -m 755 $(DEBDIR) install -d -g root -m 755 $(DEBDIR)/DEBIAN install -d -g root -m 755 $(DEBDIR)/bin install -d -g root -m 755 $(DEBDIR)/etc/init.d install -d -g root -m 755 $(DEBDIR)/usr/{bin,sbin} install -d -g root -m 755 $(DEBDIR)/usr/lib/yp install -d -g root -m 755 $(DEBDIR)/usr/share/bug/nis install -d -g root -m 755 $(DEBDIR)/usr/share/lintian/overrides install -d -g root -m 755 $(DEBDIR)/var/yp install -d -g root -m 755 -o root $(DEBDIR)/usr/share/doc/nis install -d -g root -m 755 -o root $(DEBDIR)/usr/share/doc/nis/examples install -d -g root -m 755 -o root $(DEBDIR)/usr/share/nis install -d -g root -m 755 -o root $(DEBDIR)/usr/share/man/man{1,5,8} # (cd $(YPSERV) && make install DESTDIR=$(DEBDIR)) rm -rf $(DEBDIR)/usr/include rm -f $(DEBDIR)/var/yp/securenets rm -f $(DEBDIR)/etc/{locale,netmasks,timezone} chown -R root:root $(DEBDIR) # (umask 022; cd $(YPTOOLS) && make install DESTDIR=$(DEBDIR)) (umask 022; cd $(YPBIND) && make install DESTDIR=$(DEBDIR)) (cd $(DEBDIR)/bin && rm domainname ypdomainname nisdomainname) (cd $(DEBDIR)/usr/bin && ln -sf yppasswd ypchsh) (cd $(DEBDIR)/usr/bin && ln -sf yppasswd ypchfn) strip $(DEBDIR)/usr/lib/yp/ypxfr strip $(DEBDIR)/usr/sbin/ypbind # #install -g root -m 755 $(YPBIND)/ypbind $(DEBDIR)/usr/sbin #install -g root -m 644 $(YPBIND)/ypbind.8 $(DEBDIR)/usr/share/man/man8 install -g root -m 644 debian/yp.conf $(DEBDIR)/etc/yp.conf # chown -R root:root $(DEBDIR) chmod -R u+rw,o=u-w $(DEBDIR) # install -g root -m 755 debian/ypxfr_1perhour $(DEBDIR)/usr/lib/yp install -g root -m 755 debian/ypxfr_1perday $(DEBDIR)/usr/lib/yp install -g root -m 755 debian/ypxfr_2perday $(DEBDIR)/usr/lib/yp install -g root -m 755 debian/convert-ypserv-conf $(DEBDIR)/usr/lib/yp install -g root -m 755 debian/rc.nis $(DEBDIR)/etc/init.d/nis install -g root -m 644 debian/netgroup.sample $(DEBDIR)/etc/netgroup install -g root -m 644 debian/ypserv.securenets $(DEBDIR)/etc install -g root -m 644 debian/ypserv.conf.debian $(DEBDIR)/etc/ypserv.conf install -g root -m 644 debian/lintian-overrides $(DEBDIR)/usr/share/lintian/overrides/nis install -g root -m 755 debian/reportbug-script $(DEBDIR)/usr/share/bug/nis/script # Documentation. gzip -9f $(DEBDIR)/usr/share/man/man*/* install -g root -m 644 debian/nis.debian.howto $(DEBDIR)/usr/share/doc/nis install -g root -m 644 debian/changelog \ $(DEBDIR)/usr/share/doc/nis/changelog.Debian install -g root -m 644 $(YPSERV)/ChangeLog \ $(DEBDIR)/usr/share/doc/nis/changelog gzip -9f $(DEBDIR)/usr/share/doc/nis/* || true install -g root -m 644 debian/COPYRIGHT \ $(DEBDIR)/usr/share/doc/$(p)/copyright install -g root -m 644 debian/nis.default \ $(DEBDIR)/usr/share/$(p) (cd $(DEBDIR)/usr/share/doc/$(p)/examples && ln -s ../../../$(p)/nis.default ) install -g root -m 644 $(YPSERV)/etc/ypserv.conf \ $(DEBDIR)/usr/share/doc/$(p)/examples # install -g root -m 644 debian/conffiles $(DEBDIR)/DEBIAN/conffiles install -g root -m 755 debian/preinst $(DEBDIR)/DEBIAN/preinst install -g root -m 755 debian/prerm $(DEBDIR)/DEBIAN/prerm install -g root -m 755 debian/postinst $(DEBDIR)/DEBIAN/postinst install -g root -m 755 debian/postrm $(DEBDIR)/DEBIAN/postrm install -g root -m 755 debian/config $(DEBDIR)/DEBIAN/config install -g root -m 644 debian/templates.gen $(DEBDIR)/DEBIAN/templates # Use some binaries to generate the dependencies. dpkg-shlibdeps `find $(DEBDIR) -type f -exec file '{}' ';' | grep ELF | awk -F: '{print $$1}'` dpkg-gencontrol -isp dpkg --build $(DEBDIR) .. rm -rf $(DEBDIR) binary: binary-indep binary-arch checkroot: $(checkdir) test root = "`whoami`" dist: dpkg-source -b