#	March 5, 1997
#	Makefile for Combinatorial Algorithms
#

MAKEFILE = Makefile
SOURCES = nexsub_2.f lexsub_2.f ransub_2.f nexksb_2.f nxksrd_2.f ranksb_2.f nexcom_2.f rancom_2.f nexper_2.f ranper_2.f nexpar_2.f ranpar_2.f nexequ_2.f ranequ_2.f select_2.f nexytb_2.f ranytb_2.f hpsort_2.f exheap.f cycles_2.f renumb_2.f spanfo_2.f poly_2.f chromp_2.f powser_2.f netflo_2.f perman_2.f invert_2.f triang_2.f mobius_2.f backtr_2.f lbltre_2.f ranrut_2.f minspt_2.f
OBJECTS = nexsub_2.o lexsub_2.o ransub_2.o nexksb_2.o nxksrd_2.o ranksb_2.o nexcom_2.o rancom_2.o nexper_2.o ranper_2.o nexpar_2.o ranpar_2.o nexequ_2.o ranequ_2.o select_2.o nexytb_2.o ranytb_2.o hpsort_2.f exheap.f cycles_2.f renumb_2.f spanfo_2.o poly_2.f chromp_2.f powser_2.f netflo_2.f perman_2.f invert_2.f triang_2.f mobius_2.f backtr_2.f lbltre_2.f ranrut_2.f minspt_2.f 
BINARIES = nexsub lexsub ransub nexksb nxksrd ranksb nexcom rancom nexper ranper nexpar ranpar nexequ ranequ select nexytb ranytb hpsort exheap cycles renumb spanfo poly chromp powser netflo perman invert triang mobius backtr lbltre ranrut minspt

CC = f77
CFLAGS = -g -DNDEBUG
LFLAGS = -g -lm

make:	$(BINARIES)
	
$(OBJECTS):     $(INCLUDES)
 
$(OBJECTS):     $(MAKEFILE)


all:	$(BINARIES)
	

nexsub:	nexsub_2.o 
	$(CC) -o $@ nexsub_2.o 

lexsub:	lexsub_2.o
	$(CC) -o $@ lexsub_2.o

ransub:	ransub_2.o
	$(CC) -o $@ ransub_2.o

nxksrd: nxksrd_2.o
	$(CC) -o $@ nxksrd_2.o

nexksb: nexksb_2.o
	$(CC) -o $@ nexksb_2.o

ranksb: ranksb_2.o
	$(CC) -o $@ ranksb_2.o

nexcom: nexcom_2.o
	$(CC) -o $@ nexcom_2.o

rancom: rancom_2.o 
	$(CC) -o $@ rancom_2.o ranksb.f

nexper: nexper_2.o
	$(CC) -o $@ nexper_2.o

ranper: ranper_2.o
	$(CC) -o $@ ranper_2.o

nexpar: nexpar_2.o
	$(CC) -o $@ nexpar_2.o

ranpar: ranpar_2.o
	$(CC) -o $@ ranpar_2.o

nexequ: nexequ_2.o
	$(CC) -o $@ nexequ_2.o

ranequ: ranequ_2.o
	$(CC) -o $@ ranequ_2.o ranper.f

select: select_2.o
	$(CC) -o $@ select_2.o

nexytb: nexytb_2.o
	$(CC) -o $@ nexytb_2.o

ranytb: ranytb_2.o
	$(CC) -o $@ ranytb_2.o

hpsort: hpsort_2.o
	$(CC) -o $@ hpsort_2.o

cycles: cycles_2.o
	$(CC) -o $@ cycles_2.o

renumb: renumb_2.o
	$(CC) -o $@ renumb_2.o cycles.f

spanfo: spanfo_2.o
	$(CC) -o $@ spanfo_2.o

poly: poly_2.o
	$(CC) -o $@ poly_2.o

chromp: chromp_2.o
	$(CC) -o $@ chromp_2.o poly.f spanfo.f

powser: powser_2.o
	$(CC) -o $@ powser_2.o

netflo: netflo_2.o
	$(CC) -o $@ netflo_2.o exheap.f

perman: perman_2.o
	$(CC) -o $@ perman_2.o nexsub.f

invert: invert_2.o
	$(CC) -o $@ invert_2.o

triang: triang_2.o
	$(CC) -o $@ triang_2.o

mobius: mobius_2.o
	$(CC) -o $@ mobius_2.o invert.f cycles.f triang.f renumb.f

backtr: backtr_2.o
	$(CC) -o $@ backtr_2.o

lbltre: lbltre_2.o
	$(CC) -o $@ lbltre_2.o

ranrut: ranrut_2.o
	$(CC) -o $@ ranrut_2.o

minspt: minspt_2.o
	$(CC) -o $@ minspt_2.o

clean: 	
	rm -f core *.o a.out $(BINARIES)


