# Makefile for load measuring daemon c/s

CC=g++

HFILES = loadd.h
SERVERFILES = loadd.cc
CLIENTFILES = loadc.cc
CCFILES = $(SERVERFILES) $(CLIENTFILES)
ALLFILES = $(CCFILES) $(HFILES) Makefile

###########################################################

config: $(ALLFILES)
	if uname -a | grep [Ll]inux >/dev/null; then \
	make linux; \
	elif uname -a | grep [Ss]un >/dev/null; then \
	make sun; \
	elif uname -a | grep HP-UX >/dev/null; then \
	make hp-ux; \
	fi 	

all: 	$(ALLFILES)
	make config

fresh: 
	touch $(ALLFILES)
	make config

linux:	
	CFLAGS="-lnsl -DLINUX"; \
	export CFLAGS; \
	make loadd loadc

sun:	
	CFLAGS="-lsocket -lnsl -lresolv -DSUN"; \
	export CFLAGS; \
	make loadd loadc

hp-ux:	
	CFLAGS="-lnsl -lresolv -DHPUX"; \
	export CFLAGS; \
	make loadd loadc

loadd: $(SERVERFILES) $(HFILES)
	$(CC) $(CFLAGS) $(DFLAGS) -o loadd $(SERVERFILES)
	
loadc: $(CLIENTFILES) $(HFILES)
	$(CC) $(CFLAGS) $(DFLAGS) -o loadc $(CLIENTFILES)
	
debug:	
	DFLAGS="-g -DDEBUG"; \
	export DFLAGS; \
	make fresh;

hdebug:	
	DFLAGS="-g -DHDEBUG -DDEBUG"; \
	export DFLAGS; \
	make fresh;

clean:
	rm -f *.o core 
	
	
install:
	if uname -a | grep [Ll]inux >/dev/null; then \
	make installlinux; \
	elif uname -a | grep [Ss]un >/dev/null; then \
	make installsun; \
	elif uname -a | grep HP-UX >/dev/null; then \
	make installhp-ux; \
	fi 	

installlinux:
	if [ ! -d /usr/local/bin ] \
		then \
		mkdir -p /usr/local/bin \
	fi \
	cp -f loadd /usr/local/bin/loadd \
	cp -f loadc /usr/local/bin/loadc \
	cp -f loadd.conf /etc/loadd.conf \
	cp -f loadd_rc /etc/rc.d/loadd_rc \
	ln -s /etc/rc.d/loadd_rc /etc/rc.d/rc2.d/S80loadd \
	ln -s /etc/rc.d/loadd_rc /etc/rc.d/rc2.d/K80loadd \
	ln -s /etc/rc.d/loadd_rc /etc/rc.d/rc3.d/S80loadd \
	ln -s /etc/rc.d/loadd_rc /etc/rc.d/rc3.d/K80loadd \
	
