#
# Library Makefile
#

LIB= tree.a

all:  $(LIB)

OBJ= add_tnode.o \
child_pos.o \
construct_tnode.o \
delete_tnode.o \
destroy_tnode.o \
extract_tnode.o \
insert_tnode.o \
match_key.o \
move_tnode.o \
post_walk_tree.o \
post_walk_children.o \
remove_tnode.o \
tree_path.o \
walk_tree.o \
walk_children.o \
load_tree.o \
free_tree.o

SRC=$(OBJ:.o=.c)

tree.a: $(OBJ) tree.h
	ar ruv $(LIB) $(OBJ)

clean:
	rm -f $(OBJ)

clobber:
	rm -f $(OBJ)
	rm -f $(LIB)


lint::
	lint -u -x -m $(CFLAGS) $(SRC) >lint.out

add_tnode.o : add_tnode.c tree.h Makefile

child_pos.o : child_pos.c tree.h Makefile

construct_tnode.o : construct_tnode.c tree.h Makefile

delete_tnode.o : delete_tnode.c tree.h Makefile

destroy_tnode.o : destroy_tnode.c tree.h Makefile

extract_tnode.o : extract_tnode.c tree.h Makefile

insert_tnode.o : insert_tnode.c tree.h Makefile

match_key.o : match_key.c tree.h Makefile

move_tnode.o : move_tnode.c tree.h Makefile

post_walk_tree.o : post_walk_tree.c tree.h Makefile

post_walk_children.o : post_walk_children.c tree.h Makefile

remove_tnode.o : remove_tnode.c tree.h Makefile

tree_path.o : tree_path.c tree.h Makefile

walk_tree.o : walk_tree.c tree.h Makefile

walk_children.o : walk_children.c tree.h Makefile

load_tree.o : load_tree.c tree.h Makefile

free_tree.o : free_tree.c tree.h Makefile
