#
# Library Makefile
#

include ../makeConfig

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 \
match_name.o \
move_tnode.o \
next_name_after_key.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

CFLAGS=$(DEBUG) $(EXTRA_CFLAGS)

MKF= Makefile ../makeConfig

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

tree.a: $(OBJ) tree.h
	$(AR) $(AR_FLAGS) $(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 $(MKF)

child_pos.o : child_pos.c tree.h $(MKF)

construct_tnode.o : construct_tnode.c tree.h $(MKF)

delete_tnode.o : delete_tnode.c tree.h $(MKF)

destroy_tnode.o : destroy_tnode.c tree.h $(MKF)

extract_tnode.o : extract_tnode.c tree.h $(MKF)

insert_tnode.o : insert_tnode.c tree.h $(MKF)

match_key.o : match_key.c tree.h $(MKF)

move_tnode.o : move_tnode.c tree.h $(MKF)

post_walk_tree.o : post_walk_tree.c tree.h $(MKF)

post_walk_children.o : post_walk_children.c tree.h $(MKF)

remove_tnode.o : remove_tnode.c tree.h $(MKF)

tree_path.o : tree_path.c tree.h $(MKF)

walk_tree.o : walk_tree.c tree.h $(MKF)

walk_children.o : walk_children.c tree.h $(MKF)

load_tree.o : load_tree.c tree.h $(MKF)

free_tree.o : free_tree.c tree.h $(MKF)
