LIB = ../salem.a
$(LIB) : $(ALL) ../TimeStamp

CC = cc
INC_DIR = ../include
INCL = $(INC_DIR)/sl_constants.h $(INC_DIR)/sl_globals.h \
	$(INC_DIR)/salem.h $(INC_DIR)/sl_macros.h \
	$(INC_DIR)/sl_procedures.h $(INC_DIR)/sl_structs.h \
	$(INC_DIR)/sli.h
CFLAGS = -I. -I$(INC_DIR) -g -DIRIS

2D-DT_OBJ = 2D-DT_connect.o 2D-DT_del.o 2D-DT_edge.o 2D-DT_geom.o \
	2D-DT_manip.o 2D-DT_merge.o 2D-DT_output.o 2D-DT_sort.o \
	2D-DT_vor.o 2D-DT_voronoi.o
$(2D-DT_OBJ) : 2D-DT_defines.h $(INCL)

3DHULL_OBJ = 3DHull_driver.o 3DHull_degen.o 3DHull_make.o \
	3DHull_hull.o 3DHull_clean.o 3DHull_data.o 3DHull_init.o
3DHULL_INCF = 3DHull_structs.h 3DHull_macros.h 
$(3DHULL_OBJ): $(3DHULL_INCF) $(INCL)

Default_OBJ  = Default_utils.o register_cl.o
Genus_OBJ  = Genus_main.o
Hershey_OBJ  = Hershey_main.o Hershey_show.o
Htdag3_OBJ  = Htdag3_htdag3.o Htdag3_solve.o Htdag3_hsvrgb.o
Polygons_OBJ  = Polygons_main.o 
Polyhedra_OBJ  = Polyh_poly.o Polyh_read.o Polyh_field.o Polyh_get.o 
Tknot_OBJ  = Tknot_main.o
Axes_OBJ = Axes.o
Hier_OBJ = Hier_hier.o Hier_ind_set.o
Util_OBJ = Util_pr_obj.o Util_col_obj.o Util_s_to_l.o

ALL = $(Default_OBJ) $(2D-DT_OBJ) $(3DHULL_OBJ) $(Editor_OBJ) $(Genus_OBJ) $(Hershey_OBJ) $(Polygons_OBJ) $(Polyhedra_OBJ) $(Tknot_OBJ) $(Htdag3_OBJ) $(Axes_OBJ) $(Decomp_OBJ) $(Hier_OBJ) $(Util_OBJ)

$(ALL)	:$(INCL)

$(LIB)	: $(ALL) ../TimeStamp
	ar us $(LIB) $(ALL)
	touch ../TimeStamp

clean:
	rm -f *.o
