#
# Based on the TCT Makefile by 
# Dan Farmer & Wietse Venema
#

TCT_DIR = /usr/local/tct
TCT_FST_DIR = $(TCT_DIR)/src/fstools
TCT_AUX_DIR = $(TCT_DIR)/src/aux
BIN_DIR = ../bin

SHELL	= /bin/sh
CC		= gcc
OPT		= -O 
DEBUG	= -g
INCL	= -I$(TCT_FST_DIR) -I$(TCT_AUX_DIR) 
CFLAGS	= $(DEFS) $(INCL) $(OPT) $(DEBUG)
LIBS	= $(TCT_AUX_DIR)/aux_lib.a $(TCT_FST_DIR)/fs_lib.a 
LIBOBJ	= $(TCT_AUX_DIR)/mymalloc.o
DIROBJ	= ffs_dent.o ext2_dent.o fs_dent.o

PROGS	= $(BIN_DIR)/fls $(BIN_DIR)/bcat $(BIN_DIR)/find_file \
	$(BIN_DIR)/istat $(BIN_DIR)/find_inode

what:
	@sh makedefs

all:	$(PROGS)

$(BIN_DIR)/find_inode: find_inode.o $(LIBS) 
	$(CC) $(CFLAGS) -o $@ find_inode.o $(LIBS) 

$(BIN_DIR)/find_file: find_file.o $(DIROBJ) $(LIBS)
	$(CC) $(CFLAGS) -o $@ find_file.o $(DIROBJ) $(LIBS)

$(BIN_DIR)/fls: fls.o $(DIROBJ) $(LIBS) 
	$(CC) $(CFLAGS) -o $@ fls.o $(DIROBJ) $(LIBS)

$(BIN_DIR)/bcat: bcat.o $(LIBS) $(LIBOBJ)
	$(CC) $(CFLAGS) -o $@ bcat.o $(LIBS) $(LIBOBJ)

$(BIN_DIR)/istat: istat.o $(LIBS) 
	$(CC) $(CFLAGS) -o $@ istat.o $(LIBS) 

clean:
	rm -f $(PROGS) *.o *core

depend: $(MAKES)
	(sed '1,/^# do not edit/!d' Makefile; \
	set -e; for i in [a-z][a-z0-9]*.c; do \
	    $(CC) -E $(DEFS) $(INCL) $$i | sed -n -e '/^# *1 *"\([^"]*\)".*/{' \
	    -e 's//'`echo $$i|sed 's/c$$/o/'`': \1/' -e 'p' -e '}'; \
	done) | grep -v '[.][o][:][ ][/]' >$$$$ && mv $$$$ Makefile

# do not edit - this was generated with make depend
bcat.o: bcat.c
ext2_dent.o: ext2_dent.c
ext2_dent.o: fs_dent.h
ffs_dent.o: ffs_dent.c
find_file.o: find_file.c
find_file.o: fs_dent.h
find_inode.o: find_inode.c
fls.o: fls.c
fls.o: fs_dent.h
fs_dent.o: fs_dent.c
fs_dent.o: fs_dent.h
istat.o: istat.c
