Makefile.yp revision 1.3
11.3Sthorpej#	$NetBSD: Makefile.yp,v 1.3 1996/08/09 21:04:32 thorpej Exp $
21.1Sthorpej#
31.1Sthorpej# This is the YP Makefile, used to create and push YP maps.
41.1Sthorpej#
51.1Sthorpej
61.1SthorpejYPDBDIR=/var/yp
71.1SthorpejDIR=/etc
81.1SthorpejNOPUSH=""
91.1Sthorpej
101.1SthorpejAWK=/usr/bin/awk
111.1SthorpejCAT=/bin/cat
121.1SthorpejCUT=/usr/bin/cut
131.1SthorpejECHO=/bin/echo
141.1SthorpejMAKEDBM=/usr/sbin/makedbm
151.1SthorpejSED=/usr/bin/sed
161.1SthorpejSTDHOSTS=/usr/sbin/stdhosts
171.1SthorpejSTDETHERS=/usr/sbin/stdethers
181.1SthorpejMKNETID=/usr/sbin/mknetid
191.1SthorpejTOUCH=/usr/bin/touch
201.1SthorpejDOMAIN="`/usr/bin/basename ${.CURDIR}`"
211.1SthorpejYPPUSH=/usr/sbin/yppush
221.1Sthorpej
231.2Sthorpej# We have a rule for ypservers, but we don't build it by default, since
241.2Sthorpej# it seldom changes (only when slaves are added/deleted).
251.2Sthorpej
261.1Sthorpejall: passwd group hosts ethers networks rpc services protocols netid
271.1Sthorpej
281.1Sthorpejpasswd.time: $(DIR)/master.passwd
291.1Sthorpej	-@if [ -f $(>) ]; then \
301.1Sthorpej		$(CAT) $(>) | $(CUT) -d: -f1-4,8-10 | \
311.1Sthorpej		$(AWK) 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ \
321.1Sthorpej		{ print $$1, $$0 }' - | $(MAKEDBM) - passwd.byname; \
331.1Sthorpej		$(CAT) $(>) | $(CUT) -d: -f1-4,8-10 |\
341.1Sthorpej		$(AWK) 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ \
351.1Sthorpej		{ print $$3, $$0 }' - | $(MAKEDBM) - passwd.byuid; \
361.1Sthorpej		$(TOUCH) $(@); \
371.1Sthorpej		$(ECHO) "updated passwd"; \
381.1Sthorpej		if [ ! $(NOPUSH) ]; then \
391.1Sthorpej			$(YPPUSH) -d $(DOMAIN) passwd.byname; \
401.1Sthorpej			$(YPPUSH) -d $(DOMAIN) passwd.byuid; \
411.1Sthorpej			$(ECHO) "pushed passwd"; \
421.1Sthorpej		else \
431.1Sthorpej			: ; \
441.1Sthorpej		fi \
451.1Sthorpej	else \
461.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
471.1Sthorpej	fi
481.1Sthorpej
491.1Sthorpej
501.1Sthorpejgroup.time: $(DIR)/group
511.1Sthorpej	-@if [ -f $(>) ]; then \
521.1Sthorpej		$(AWK) 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ \
531.1Sthorpej		{ print $$1, $$0 }' $(>) | \
541.1Sthorpej		$(MAKEDBM) - group.byname; \
551.1Sthorpej		$(AWK) 'BEGIN { FS=":"; OFS="\t"; } /^[a-zA-Z0-9_]/ \
561.1Sthorpej		{ print $$3, $$0 }' $(>) | \
571.1Sthorpej		$(MAKEDBM) - group.bygid; \
581.1Sthorpej		$(TOUCH) $(@); \
591.1Sthorpej		$(ECHO) "updated group"; \
601.1Sthorpej		if [ ! $(NOPUSH) ]; then \
611.1Sthorpej			$(YPPUSH) -d $(DOMAIN) group.byname; \
621.1Sthorpej			$(YPPUSH) -d $(DOMAIN) group.bygid; \
631.1Sthorpej			$(ECHO) "pushed group"; \
641.1Sthorpej		else \
651.1Sthorpej			: ; \
661.1Sthorpej		fi \
671.1Sthorpej	else \
681.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
691.1Sthorpej	fi
701.1Sthorpej
711.1Sthorpejhosts.time: $(DIR)/hosts
721.1Sthorpej	-@if [ -f $(DIR)/hosts ]; then \
731.1Sthorpej		$(STDHOSTS) $(>) | $(SED) -e s/#.*$$// | \
741.1Sthorpej		$(AWK) '{for (i = 2; i <= NF; i++) print $$i, $$0 }' | \
751.1Sthorpej		$(MAKEDBM) - hosts.byname; \
761.1Sthorpej		$(STDHOSTS) $(>) | \
771.1Sthorpej		$(AWK) 'BEGIN { OFS="\t"; } { print $$1, $$0 }' | \
781.1Sthorpej		$(MAKEDBM) - hosts.byaddr; \
791.1Sthorpej		$(TOUCH) $(@); \
801.1Sthorpej		$(ECHO) "updated hosts"; \
811.1Sthorpej		if [ ! $(NOPUSH) ]; then \
821.1Sthorpej			$(YPPUSH) -d $(DOMAIN) hosts.byname; \
831.1Sthorpej			$(YPPUSH) -d $(DOMAIN) hosts.byaddr; \
841.1Sthorpej			$(ECHO) "pushed hosts"; \
851.1Sthorpej		else \
861.1Sthorpej			: ; \
871.1Sthorpej		fi \
881.1Sthorpej	else \
891.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
901.1Sthorpej	fi
911.1Sthorpej
921.1Sthorpejethers.time: $(DIR)/ethers
931.1Sthorpej	-@if [ -f $(DIR)/ethers ]; then \
941.1Sthorpej		$(STDETHERS) $(>) | $(SED) -e s/#.*$$// | \
951.1Sthorpej		$(AWK) 'BEGIN { FS="\t"; OFS="\t"; } { print $$1, $$0 }' | \
961.1Sthorpej		$(MAKEDBM) - ethers.byaddr; \
971.1Sthorpej		$(STDETHERS) $(>) | \
981.1Sthorpej		$(AWK) 'BEGIN { FS="\t"; OFS="\t"; } { print $$2, $$0 }' | \
991.1Sthorpej		$(MAKEDBM) - ethers.byname; \
1001.1Sthorpej		$(TOUCH) $(@); \
1011.1Sthorpej		$(ECHO) "updated ethers"; \
1021.1Sthorpej		if [ ! $(NOPUSH) ]; then \
1031.1Sthorpej			$(YPPUSH) -d $(DOMAIN) ethers.byaddr; \
1041.1Sthorpej			$(YPPUSH) -d $(DOMAIN) ethers.byname; \
1051.1Sthorpej			$(ECHO) "pushed hosts"; \
1061.1Sthorpej		else \
1071.1Sthorpej			: ; \
1081.1Sthorpej		fi \
1091.1Sthorpej	else \
1101.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
1111.1Sthorpej	fi
1121.1Sthorpej
1131.1Sthorpejnetworks.time: $(DIR)/networks
1141.1Sthorpej	-@if [ -f $(>) ]; then \
1151.1Sthorpej		$(SED) -e "/^#/d" -e s/#.*$$// $(>) | \
1161.1Sthorpej		$(AWK) '{print $$1, $$0; for (i = 3;i <= NF;i++) print $$i,$$0}' | \
1171.1Sthorpej		$(MAKEDBM) - networks.byname; \
1181.1Sthorpej		$(AWK) 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' $(>) | \
1191.1Sthorpej		$(MAKEDBM) - networks.byaddr; \
1201.1Sthorpej		$(TOUCH) $(@); \
1211.1Sthorpej		$(ECHO) "updated networks"; \
1221.1Sthorpej		if [ ! $(NOPUSH) ]; then \
1231.1Sthorpej			$(YPPUSH) -d $(DOMAIN) networks.byname; \
1241.1Sthorpej			$(YPPUSH) -d $(DOMAIN) networks.byaddr; \
1251.1Sthorpej			$(ECHO) "pushed networks"; \
1261.1Sthorpej		else \
1271.1Sthorpej			: ; \
1281.1Sthorpej		fi \
1291.1Sthorpej	else \
1301.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
1311.1Sthorpej	fi
1321.1Sthorpej
1331.1Sthorpejrpc.time: $(DIR)/rpc
1341.1Sthorpej	-@if [ -f $(>) ]; then \
1351.1Sthorpej		$(AWK) 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' $(>) | \
1361.1Sthorpej		$(MAKEDBM) - rpc.bynumber; \
1371.1Sthorpej		$(TOUCH) $(@); \
1381.1Sthorpej		$(ECHO) "updated rpc"; \
1391.1Sthorpej		if [ ! $(NOPUSH) ]; then \
1401.1Sthorpej			$(YPPUSH) -d $(DOMAIN) rpc.bynumber; \
1411.1Sthorpej			$(ECHO) "pushed rpc"; \
1421.1Sthorpej		else \
1431.1Sthorpej			: ; \
1441.1Sthorpej		fi \
1451.1Sthorpej	else \
1461.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
1471.1Sthorpej	fi
1481.1Sthorpej
1491.1Sthorpej
1501.1Sthorpejservices.time: $(DIR)/services
1511.1Sthorpej	-@if [ -f $(>) ]; then \
1521.1Sthorpej		$(AWK) 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' $(>) | \
1531.1Sthorpej		$(MAKEDBM) - services.byname; \
1541.1Sthorpej		$(TOUCH) $(@); \
1551.1Sthorpej		$(ECHO) "updated services"; \
1561.1Sthorpej		if [ ! $(NOPUSH) ]; then \
1571.1Sthorpej			$(YPPUSH) -d $(DOMAIN) services.byname; \
1581.1Sthorpej			$(ECHO) "pushed services"; \
1591.1Sthorpej		else \
1601.1Sthorpej			: ; \
1611.1Sthorpej		fi \
1621.1Sthorpej	else \
1631.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
1641.1Sthorpej	fi
1651.1Sthorpej
1661.1Sthorpej
1671.1Sthorpejprotocols.time: $(DIR)/protocols
1681.1Sthorpej	-@if [ -f $(>) ]; then \
1691.1Sthorpej		$(AWK) 'BEGIN { OFS="\t"; } $$1 !~ /^#/ { print $$2, $$0 }' $(>) | \
1701.1Sthorpej		$(MAKEDBM) - protocols.bynumber; \
1711.1Sthorpej		$(SED) -e "/^#/d" -e s/#.*$$// $(>) | \
1721.1Sthorpej		$(AWK) '{print $$1, $$0; for (i = 3;i <= NF;i++) print $$i,$$0}' | \
1731.1Sthorpej		$(MAKEDBM) - protocols.byname; \
1741.1Sthorpej		$(TOUCH) $(@); \
1751.1Sthorpej		$(ECHO) "updated protocols"; \
1761.1Sthorpej		if [ ! $(NOPUSH) ]; then \
1771.1Sthorpej			$(YPPUSH) -d $(DOMAIN) protocols.bynumber; \
1781.1Sthorpej			$(YPPUSH) -d $(DOMAIN) protocols.byname; \
1791.1Sthorpej			$(ECHO) "pushed protocols"; \
1801.1Sthorpej		else \
1811.1Sthorpej			: ; \
1821.1Sthorpej		fi \
1831.1Sthorpej	else \
1841.1Sthorpej		$(ECHO) "couldn't find $(>)"; \
1851.1Sthorpej	fi
1861.1Sthorpej
1871.1Sthorpej
1881.1Sthorpejnetid.time: $(DIR)/passwd $(DIR)/group $(DIR)/hosts $(DIR)/netid
1891.1Sthorpej	-@$(MKNETID) -q -d $(DOMAIN) -p $(DIR)/passwd -g $(DIR)/group -h \
1901.1Sthorpej	      $(DIR)/hosts -m $(DIR)/netid | \
1911.1Sthorpej	  $(MAKEDBM) - netid.byname; \
1921.1Sthorpej	  $(TOUCH) $(@); \
1931.1Sthorpej	  $(ECHO) "updated netid"; \
1941.1Sthorpej	  if [ ! $(NOPUSH) ]; then \
1951.1Sthorpej		$(YPPUSH) -d $(DOMAIN) netid.byname; \
1961.1Sthorpej		$(ECHO) "pushed netid"; \
1971.1Sthorpej	  else \
1981.1Sthorpej		: ; \
1991.1Sthorpej	  fi
2001.1Sthorpej
2011.3Sthorpejypservers:
2021.3Sthorpej	-@$(TOUCH) ypservers; \
2031.3Sthorpej	$(MAKEDBM) ypservers ypservers; \
2041.2Sthorpej	$(ECHO) "updated ypservers"; \
2051.2Sthorpej	if [ ! $(NOPUSH) ]; then \
2061.2Sthorpej		$(YPPUSH) -d $(DOMAIN) ypservers; \
2071.2Sthorpej		$(ECHO) "pushed ypservers"; \
2081.2Sthorpej	else \
2091.2Sthorpej		: ; \
2101.2Sthorpej	fi
2111.1Sthorpej
2121.1Sthorpejpasswd: passwd.time
2131.1Sthorpejgroup: group.time
2141.1Sthorpejhosts: hosts.time
2151.1Sthorpejethers: ethers.time
2161.1Sthorpejnetworks: networks.time
2171.1Sthorpejrpc: rpc.time
2181.1Sthorpejservices: services.time
2191.1Sthorpejprotocols: protocols.time
2201.1Sthorpejnetid: netid.time
2211.1Sthorpej$(DIR)/passwd:
2221.1Sthorpej$(DIR)/group:
2231.1Sthorpej$(DIR)/hosts:
2241.1Sthorpej$(DIR)/ethers:
2251.1Sthorpej$(DIR)/networks:
2261.1Sthorpej$(DIR)/rpc:
2271.1Sthorpej$(DIR)/services:
2281.1Sthorpej$(DIR)/protocols:
2291.1Sthorpej$(DIR)/netid:
230