# @(#) $Revision: 72.1 $
#
# makefile -- makefile for the disklock utilities
#

PROGS=switchdiskl disklock convert_label switch_convert
PROGS_M=switchdiskl.M disklock.M convert_label.M switch_convert.M
LIB=../lib
INC=-I$(LIB)

DISKLOCK_C = disklock.c lifopen.c lfindfile.c unitread.c unitwrite.c \
	     lifvol.c findvsize.c volsize.c dev_to_hdw.c

CONVERT_LABEL_C = convert_label.c lifopen.c lfindfile.c unitread.c unitwrite.c \
	     lifvol.c findvsize.c volsize.c dev_to_hdw.c

default: all

all: $(PROGS)

metrics: $(PROGS_M)

switchdiskl: switchdiskl.o $(LIB)/getinfo.o
	$(CC) $(LDFLAGS) -o switchdiskl switchdiskl.o $(LIB)/getinfo.o

switchdiskl.M: switchdiskl.c $(LIB)/getinfo.c
	$(METRICS) $(CFLAGS) $(INC) -o switchdiskl.M switchdiskl.c $(LIB)/getinfo.c

switchdiskl.o: $(LIB)/getinfo.h
	$(CC) $(CFLAGS) $(INC) -c switchdiskl.c

switch_convert: switch_convert.o $(LIB)/getinfo.o
	$(CC) $(LDFLAGS) -Wl,-a,archive -o switch_convert switch_convert.o $(LIB)/getinfo.o

switch_convert.M: switch_convert.c $(LIB)/getinfo.c
	$(METRICS) $(CFLAGS) $(INC) -Wl,-a,archive -o switch_convert.M switch_convert.c $(LIB)/getinfo.c

switch_convert.o: $(LIB)/getinfo.h
	$(CC) $(CFLAGS) $(INC) -c switch_convert.c

disklock: $(DISKLOCK_C:.c=.o)
	$(CC) $(LDFLAGS) -o disklock $(DISKLOCK_C:.c=.o) -lIO

disklock.M: $(DISKLOCK_C)
	$(METRICS) $(CFLAGS) $(INC) -o disklock.M $(DISKLOCK_C) -lIO

convert_label: $(CONVERT_LABEL_C:.c=.o)
	$(CC) $(LDFLAGS) -Wl,-a,archive -o convert_label $(CONVERT_LABEL_C:.c=.o) -lIO
convert_label.M: $(CONVERT_LABEL_C)
	$(METRICS) $(CFLAGS) $(INC) -Wl,-a,archive -o convert_label.M $(CONVERT_LABEL_C) -lIO

disklock.o convert_label.o findvsize.o lfindfile.o lifopen.o lifvol.o \
unitread.o unitwrite.o volsize.o: lifdef.h

disklock.o convert_label.o findvsize.o lfindfile.o lifopen.o lifvol.o \
unitread.o unitwrite.o: global.h

clean:
	rm -f *.o *.lint

clobber: clean
	rm -f $(PROGS) $(PROGS_M)

lint:
	lint $(INC) switchdiskl.c >switchdiskl.lint
	lint $(INC) switch_convert.c >switch_convert.lint
	lint $(INC) $(DISKLOCK_C) >disklock.lint
	lint $(INC) $(CONVERT_LABEL_C) >convert_label.lint
