# $Source: /hpux/shared/supp//usr/src/cmd/fbackup/./makefile,v $
# $Revision: 78.4 $

#----------------------------------------------------------------------------#
#									     #
#			    Fbackup Makefile.				     #
#									     #
#----------------------------------------------------------------------------#

# CFLAGS  = -DDEBUG -DDEBUG_T -DDEBUG_D
# CFLAGS  = -DDEBUG -DDEBUG_VDI -DLOFS_DEBUG 
FLAGS   = -DLOFS -D_LARGE_UIDS -D_FILE_OFFSET_BITS=64 -D__STDC_EXT__ -Dhpux -Ae
#LDFLAGS = -Wl,-E
LIBS = -lmalloc -lIO

GENCAT  = gencat
FINDMSG = findmsg -a

MAINSRCS = main.c main2.c main3.c reset.c parse.c search.c inex.c pwgr.c flist.c
RDRSRCS  = reader.c
WRTRSRCS = writer.c writer2.c tape.c rmt.c vdi.c
MSGS     = main.msg rdr.msg wrtr.msg util.msg

#
# Same as *SRCS but with .o extensions
#

MAINOBJS = $(MAINSRCS:.c=.o)
RDROBJS  = $(RDRSRCS:.c=.o)
WRTROBJS = $(WRTRSRCS:.c=.o)


OBJS     = hpux_rel.o util.o $(MAINOBJS) $(RDROBJS) $(WRTROBJS)

EXECUTS  = fbackup fbackuprdr fbackupwrtr
EXECUTS_M =  fbackup.M fbackuprdr.M fbackupwrtr.M

default: $(EXECUTS) fbackup.cat

metrics: $(EXECUTS_M)

fbackup: hpux_rel.o util.o $(MAINOBJS)
	$(CC) $(CFLAGS) $(FLAGS) $(LDFLAGS) -o fbackup hpux_rel.o util.o $(MAINOBJS) $(LIBS)

fbackup.M: hpux_rel.c util.c $(MAINSRCS)
	$(METRICS) $(CFLAGS) $(FLAGS) -o fbackup.M hpux_rel.c util.c $(MAINSRCS) $(LIBS)

	
#				NOTE: util.o is not needed for fbackuprdr
fbackuprdr: hpux_rel.o $(RDROBJS)
	$(CC) $(CFLAGS) $(FLAGS) $(LDFLAGS) -o fbackuprdr hpux_rel.o $(RDROBJS) $(LIBS)

fbackuprdr.M: hpux_rel.c $(RDRSRCS)
	$(METRICS) $(CFLAGS) $(FLAGS) -o fbackuprdr.M hpux_rel.c $(RDRSRCS) $(LIBS)

fbackupwrtr: hpux_rel.o util.o $(WRTROBJS)
	$(CC) $(CFLAGS) $(FLAGS) $(LDFLAGS) -o fbackupwrtr hpux_rel.o util.o $(WRTROBJS) $(LIBS)

fbackupwrtr.M: hpux_rel.c util.c $(WRTRSRCS)
	$(METRICS) $(CFLAGS) $(FLAGS) -o fbackupwrtr.M hpux_rel.c util.c $(WRTRSRCS) $(LIBS)

rmt.o: rmt.c
	$(CC) $(CFLAGS) $(FLAGS) $(INCLUDES) -c rmt.c $(LIBS)

$(OBJS): head.h 

clean: 
	rm -f $(OBJS) $(MSGS)

clobber: clean
	rm -f $(EXECUTS) $(EXECUTS_M) fbackup.cat

#
# Targets for creating the fbackup.cat file and necessary .msg files
#

fbackup.cat: $(MSGS)
	$(GENCAT) fbackup.cat main.msg rdr.msg wrtr.msg util.msg

main.msg: $(MAINSRCS)
	$(FINDMSG) $(MAINSRCS) > main.msg

rdr.msg:  $(RDRSRCS)
	$(FINDMSG) $(RDRSRCS) > rdr.msg

wrtr.msg: $(WRTRSRCS)
	$(FINDMSG) $(WRTRSRCS) > wrtr.msg

util.msg:  util.c
	$(FINDMSG) util.c > util.msg

.c.o:
	$(CC) $(CLFAGS) $(FLAGS) -c $<
