#sccs	"@(#)devcmd:Makefile	1.8"
#	Makefile for Commands 9/25/84

include $(MAKEINC)/Makepre.h

ID = id.o

UNITS = \
	UNITar=ar \
	UNITcflow=cflow \
	UNITcron=cron \
	UNITcxref=cxref \
	UNITdiff3=diff3 \
	UNITdump=dump \
	UNITfsdb=fsdb \
	UNITksh=ksh \
	UNITlex=lex \
	UNITlint=lint \
	UNITlorder=lorder \
	UNITm4=m4 \
	UNITnm=nm \
	UNITsccs=sccs \
	UNITstrip=strip \
	UNITtset=tset \
	UNITunixconv=unixconv \
	UNITyacc=yacc

UBINFILES =\
	cal\
	cb\
	cfont\
	dircmp\
	egrep\
	factor\
	ipcrm\
	ipcs\
	logname\
	prof\
	regcmp\
	sdiff\
	tar\
	tsort\
	units\
	xargs

ETCFILES = bcopy\
	chroot\
	clri\
	ncheck\
	whodo

LIBFILES = unittab

SUBDIRS = ar\
	cflow\
	cron\
	cxref\
	diff3\
	dump\
	fsdb\
	ksh \
	lex\
	lint\
	lorder\
	m4\
	nm\
	sccs\
	strip\
	tset\
	unixconv\
	yacc

DEPENDLIST = bcopy.c \
	cal.c \
	cb.c \
	cfont.c \
	chroot.c \
	clri.c \
	egrep.y \
	factor.c \
	ipcrm.c \
	ipcs.c \
	logname.c \
	ncheck.c \
	prof.c \
	regcmp.c \
	sdiff.c \
	tar.c \
	tsort.c \
	units.c \
	xargs.c

all:	Makeincludes comall $(ID) $(UBINFILES) $(ETCFILES) $(LIBFILES)

Makeincludes: $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes
	$(MAKE)

includes: comincludes $(DEPENDLIST)
	$(INCCMD) $(DEPENDLIST) | $(SORT) | $(FILTER) > Makeincludes

install: cominstall
	for i in $(ETCFILES) $(LIBFILES);do echo installing $$i...; $(INSTALL) -i$(EXITFLAG) $$i $(INSDIR) $(PROTOFILE); done
	for i in $(UBINFILES);do echo installing $$i...; $(INSTALL) -i$(EXITFLAG) $$i%/usr/bin $(INSDIR) $(PROTOFILE); done

clobber: clean comclobber
	rm -f $(UBINFILES) $(ETCFILES) $(LIBFILES)
	rm -f egrep factor regcmp

clean:  comclean
	rm -f *.o

egrep:	egrep.o $(SHAREDLIB) $(ID)
	$(LD) -s $(LDFLAGS) $(SHAREDLIB) -o egrep egrep.o $(ID)

factor:	factor.o $(SHAREDLIB) $(LIBM) $(ID)
	$(LD) -s $(LDFLAGS) $(SHAREDLIB) -o factor factor.o $(ID) -lm

logname: logname.o $(SHAREDLIB) $(LIBPW) $(ID)
	$(LD) -s $(LDFLAGS) $(SHAREDLIB) -o logname logname.o $(ID) -lPW

regcmp:	regcmp.o $(SHAREDLIB) $(LIBPW) $(ID)
	$(LD) -s $(LDFLAGS) $(SHAREDLIB) -o regcmp regcmp.o $(ID) -lPW

unittab: unittab.n
	cp unittab.n unittab

populate: $(SUBDIRS)
	for D in $(SUBDIRS); \
	do \
		( \
		cd $$D; echo "** $$D **:"; getunit ; $(MAKE) populate; \
		) \
	done

$(SUBDIRS):
	@$(UNITS) ;echo "Making Directory for $@"; mkdir $@; echo $$UNIT$@ > $@/.unit

id.c: devcmd.sl
	mkslid > id.c

include Makeincludes
include $(MAKEINC)/Makepost.h

#	For shared libs
.c:
	$(CC) -c $(CFLAGS) $<
	$(LD) -s $(LDFLAGS) $(SHAREDLIB) $*.o $(ID) -o $*
