From ed96b2b9d7b70699823a8594319468a51fc19a6c Mon Sep 17 00:00:00 2001
From: Ryan Jackson <rdjackso@cs.utah.edu>
Date: Thu, 15 Apr 2010 13:49:40 -0600
Subject: [PATCH] Build support for subboss stuff

---
 GNUmakefile.in       | 6 ++++++
 db/GNUmakefile.in    | 3 ++-
 dhcpd/GNUmakefile.in | 5 +++--
 rc.d/GNUmakefile.in  | 3 +++
 utils/GNUmakefile.in | 4 ++++
 5 files changed, 18 insertions(+), 3 deletions(-)

diff --git a/GNUmakefile.in b/GNUmakefile.in
index 36aa2d9c4f..986bff7940 100644
--- a/GNUmakefile.in
+++ b/GNUmakefile.in
@@ -200,6 +200,12 @@ endif
 	@$(MAKE) -C sensors client-install
 	@$(MAKE) -C tmcd client-install
 
+subboss: client
+	@$(MAKE) -C utils subboss
+
+subboss-install: subboss client-install
+	@$(MAKE) -C utils subboss-install
+
 TARBALLDESTDIR = /var/tmp/emulab-client
 
 client-tarball:
diff --git a/db/GNUmakefile.in b/db/GNUmakefile.in
index 056e320028..ef9be40f50 100644
--- a/db/GNUmakefile.in
+++ b/db/GNUmakefile.in
@@ -11,7 +11,7 @@ UNIFIED         = @UNIFIED_BOSS_AND_OPS@
 
 include $(OBJDIR)/Makeconf
 
-BIN_SCRIPTS	= nalloc nfree nodeip readycount 
+BIN_SCRIPTS	= nalloc nfree nodeip readycount subboss_dhcpd_makeconf
 SBIN_SCRIPTS	= avail inuse showgraph if2port backup webcontrol node_status \
                   genelists genelists.proxy dhcpd_makeconf nodelog unixgroups \
 		  dbcheck interswitch dbboot grabron stategraph newwanode \
@@ -72,6 +72,7 @@ boss-install: $(addprefix $(INSTALL_BINDIR)/, $(BIN_SCRIPTS)) \
         $(addprefix $(INSTALL_DIR)/opsdir/lib/, $(USERLIBS))
 
 post-install: 
+	chown root $(INSTALL_BINDIR)/subboss_dhcpd_makeconf
 	chown root $(INSTALL_SBINDIR)/genelists
 	chmod u+s $(INSTALL_SBINDIR)/genelists
 	chown root $(INSTALL_SBINDIR)/dhcpd_makeconf
diff --git a/dhcpd/GNUmakefile.in b/dhcpd/GNUmakefile.in
index 2773689fa3..8d8ce2d6b9 100644
--- a/dhcpd/GNUmakefile.in
+++ b/dhcpd/GNUmakefile.in
@@ -11,7 +11,7 @@ SUBDIR		= dhcpd
 
 ETCDIR          = /usr/local/etc
 
-DHCPD_FILES	= dhcpd.conf.template
+DHCPD_FILES	= dhcpd.conf.template dhcpd.conf.subboss.template
 
 include $(OBJDIR)/Makeconf
 
@@ -23,8 +23,9 @@ all: $(DHCPD_FILES)
 
 include $(TESTBED_SRCDIR)/GNUmakerules
 
-install:	$(ETCDIR)/dhcpd.conf.template
+install:	$(ETCDIR)/dhcpd.conf.template $(ETCDIR)/dhcpd.conf.subboss.template
 	-chmod 664 $(ETCDIR)/dhcpd.conf.template
+	-chmod 664 $(ETCDIR)/dhcpd.conf.subboss.template
 
 clean: 
 	rm -f $(DHCPD_FILES)
diff --git a/rc.d/GNUmakefile.in b/rc.d/GNUmakefile.in
index 868a6cb9f9..09c0dc1818 100644
--- a/rc.d/GNUmakefile.in
+++ b/rc.d/GNUmakefile.in
@@ -19,6 +19,7 @@ include $(OBJDIR)/Makeconf
 
 RC_SCRIPTS	= 2.mysql-server.sh 3.testbed.sh \
 		  2.dhcpd.sh 1.mysql-client.sh
+SUBBOSS_SCRIPTS	= 2.dhcpd.sh
 OPS_SCRIPTS     = 3.and.sh 1.mysql-client.sh 1.mysql-server.sh
 ifeq ($(ELVINCOMPAT),1)
 OPS_SCRIPTS    += 2.elvind.sh 3.elvin_gateway.sh
@@ -67,6 +68,8 @@ install: $(addprefix $(INSTALL_RCDIR)/, $(RC_SCRIPTS))
 
 control-install:	$(addprefix $(INSTALL_RCDIR)/, $(OPS_SCRIPTS))
 
+subboss-install:	$(addprefix $(INSTALL_RCDIR)/, $(SUBBOSS_SCRIPTS))
+
 clrhouse-install:	$(INSTALL_RCDIR)/2.mysql-server.sh \
 			$(INSTALL_RCDIR)/1.mysql-client.sh
 
diff --git a/utils/GNUmakefile.in b/utils/GNUmakefile.in
index 22b5c1e2ea..2492e4abd5 100644
--- a/utils/GNUmakefile.in
+++ b/utils/GNUmakefile.in
@@ -49,6 +49,8 @@ SETUID_LIBX_SCRIPTS  = xlogin
 all:	$(BIN_SCRIPTS) $(SBIN_SCRIPTS) $(LIBEXEC_SCRIPTS) $(CTRLSBIN_SCRIPTS) \
 	$(SUBDIRS) firstuser setbuildinfo
 
+subboss: daemon_wrapper
+
 include $(TESTBED_SRCDIR)/GNUmakerules
 
 install: $(addprefix $(INSTALL_BINDIR)/, $(BIN_SCRIPTS)) \
@@ -68,6 +70,8 @@ install: $(addprefix $(INSTALL_BINDIR)/, $(BIN_SCRIPTS)) \
 
 boss-install: install
 
+subboss-install: $(INSTALL_SBINDIR)/daemon_wrapper
+
 post-install: 
 	chown root $(INSTALL_SBINDIR)/grabwebcams
 	chmod u+s $(INSTALL_SBINDIR)/grabwebcams
-- 
GitLab