# $Header: makefile,v 78.1 95/12/13 11:27:40 ssa Exp $
# @(#) $Revision: 78.1 $
#
# This is the makefile for all of the accounting commands.
# Uses utilities in the subdirectory "lib" (which has its own makefile)
#
LIBS = lib/a.a -lPW -lfs
REL = hpux_rel.o
CMDS_SRCS = acctcms.c acctcom.c acctcon1.c acctcon2.c acctdisk.c \
	    acctdusg.c acctmerg.c accton.c acctprc1.c acctprc2.c \
	    acctwtmp.c diskusg.c fwtmp.c wtmpfix.c
CMDS_OBJS = $(CMDS_SRCS:.c=.o)
CMDS      =  $(CMDS_SRCS:.c=)
CMDS_M    =  $(CMDS_SRCS:.c=.M)
SCRIPTS   = chargefee ckpacct dodisk lastlogin monacct nulladm prctmp \
	    prdaily prtacct remove runacct shutacct startup turnacct
#  Large Files flags used to build cmds that required changed for LF.
LFFLAGS	  = -D_FILE_OFFSET_BITS=64

default: all

all: library $(REL) $(CMDS) $(SCRIPTS)

metrics: $(CMDS_M)

acctcms.M : acctcms.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctcms.M acctcms.c
acctcom.M : acctcom.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctcom.M acctcom.c
acctcon1.M : acctcon1.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctcon1.M acctcon1.c
acctcon2.M : acctcon2.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctcon2.M acctcon2.c
acctdisk.M : acctdisk.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctdisk.M acctdisk.c
acctdusg.M : acctdusg.c
	$(METRICS) $(LFFLAGS) $(CFLAGS) $(LDFLAGS) -o acctdusg.M acctdusg.c
acctmerg.M : acctmerg.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctmerg.M acctmerg.c
accton.M : accton.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o accton.M accton.c
acctprc1.M : acctprc1.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctprc1.M acctprc1.c
acctprc2.M : acctprc2.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctprc2.M acctprc2.c
acctwtmp.M : acctwtmp.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o acctwtmp.M acctwtmp.c
diskusg.M : diskusg.c
	$(METRICS) $(LFFLAGS) $(CFLAGS) $(LDFLAGS) -o diskusg.M diskusg.c
fwtmp.M : fwtmp.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o fwtmp.M fwtmp.c
wtmpfix.M : wtmpfix.c
	$(METRICS) $(CFLAGS) $(LDFLAGS) -o wtmpfix.M wtmpfix.c

library:
	cd lib; $(MAKE)

clean:
	rm -f *.o
	cd lib; make clean

clobber: clean
	rm -f $(CMDS) $(SCRIPTS)
	cd lib; make clobber

#
# New default rule for creating a program from a C source file
#
$(CMDS): $(CMDS_OBJS)
	libs="$(LIBS)";						\
	if ifdef SecureWare || ifdef B1 || ifdef TRUSTED; then	\
	    libs="$$libs -lscmd -lsec -lcurses";		\
	fi;							\
	$(CC) $(CFLAGS) $(LDFLAGS) $(REL) $@.o -o $@ $$libs

#
# The following two cmds are built with the large file offset flags
# enabled (LFFLAGS).  No other acct cmds need these flags
#
acctdusg.o:
	$(CC) -c $(LFFLAGS) $(CFLAGS) $(LDFLAGS) $<

diskusg.o:
	$(CC) -c $(LFFLAGS) $(CFLAGS) $(LDFLAGS) $<

.c.o:
	$(CC) -c $(CFLAGS) $(LDFLAGS) $<

.c.M:

#
# New default rule for creating a script from a .sh file
#
.sh:
	cp $< $@
