PATH :=$(CURDIR)/bin:$(PATH):/sbin:/usr/sbin:/usr/local/bin:/usr/local/sbin SHELL :=$(shell which bash 2> /dev/null || echo /usr/local/bin/bash) -O extglob HOST :=$(shell hostname -f 2> /dev/null || uname -n) ifeq ($(HOST),slowhand.douglasthrift.net) ALL_LOGS := all-logs CLEAN_LOGS := clean-logs IEEE := yes else ifeq ($(HOST),wireless.ccs.ucsb.edu) WIRELESS := yes IEEE := yes INSTALL := install -pSv DIRECTORY := install -dv WWW := www DHCPD_LEASES := /var/db/dhcpd.leases ADDRESS := 192.168.42.1 EXTERNAL := vr0 INTERNAL := bridge0 RANGE := 192.168.42.5-192.168.42.254 endif endif .PHONY: all all-data all-logs all-wsgi archive cleanup ieee install stats \ update clean clean-data clean-logs clean-wsgi all: all-data $(ALL_LOGS) all-wsgi all-data: $(MAKE) -C data ifdef ALL_LOGS all-logs: $(MAKE) -C logs endif all-wsgi: $(MAKE) -C wsgi ifdef ALL_LOGS archive: $(MAKE) -C logs $@ endif cleanup: -manage cleanup ifdef ALL_LOGS -publication endif ifdef ALL_LOGS stats: $(MAKE) -C data $@ update: -status -people -delicious endif ifdef IEEE ieee: $(MAKE) -C data $@ endif ifeq ($(HOST),slowhand.douglasthrift.net) install: sed -e 's|\$$(realpath `dirname \$$0`/../bin/ssh)|$(shell realpath bin/ssh)|' rc.d/CCSanytermd > /usr/local/etc/rc.d/CCSanytermd chmod 0755 /usr/local/etc/rc.d/CCSanytermd endif ifdef WIRELESS install: $(DIRECTORY) -g 0 -o 0 /ccs/etc /ccs/ssl /ccs/web $(INSTALL) -g 0 -o 0 -m 0644 ssl/cacert.pem /ccs/ssl/cacert.pem $(INSTALL) -g 0 -o 0 -m 0644 ssl/ccscert.pem /ccs/ssl/ccscert.pem ln -sfv ../ssl /ccs/web rsync -ClPprtv --delete --exclude=data/iab.txt --exclude=data/oui.txt \ --exclude=lib/ --exclude=logs --exclude=ssl . /ccs/web rsync -CLPprtv --delete lib/ /ccs/web/lib/ chgrp -v $(WWW) /ccs/web/ccscslab/settings/.*_@(id|key) $(MAKE) -C /ccs/web wireless -D -s update: -laptops -d $(DHCPD_LEASES) -i $(INTERNAL) -r $(RANGE) -s -requests -s -people sync: -sync -s -firewall -a $(ADDRESS) -e $(EXTERNAL) -i $(INTERNAL) endif clean: clean-data $(CLEAN_LOGS) clean-wsgi clean-data: $(MAKE) -C data clean ifdef CLEAN_LOGS clean-logs: $(MAKE) -C logs clean endif clean-wsgi: $(MAKE) -C wsgi clean