INCLUDE = -I. -I/usr/include
LIBDIR  = -L. -L../cudd-2.4.1/cudd -L../cudd-2.4.1/util -L../cudd-2.4.1/st -L../cudd-2.4.1/mtr -L../cudd-2.4.1/epd
LIBRARIES = -lcudd -lutil -lmtr -lst -lepd -lm
HDRS = misc.h pla_elem.h import.h export.h function.h UMStr.h pupik.h util.h cudd.h epd.h mtr.h
COMPILERFLAGS = -Wall -O3 -malign-double -DHAVE_IEEE_754 -DBSD
CC = g++
CFLAGS = $(COMPILERFLAGS) $(INCLUDE)
OBJS =  collapse.o import.o function.o export.o UMStr.o lexan.o pla_elem.o pupik.o

collapse : $(OBJS)
	$(CC) $(CFLAGS) -o collapse $(LIBDIR) $(OBJS) $(LIBRARIES)

collapse.o:	collapse.cpp $(HDRS)
	$(CC) $(CFLAGS) -c collapse.cpp

UMStr.o: UMStr.cpp UMStr.h
	$(CC) $(CFLAGS) -c UMStr.cpp

lexan.o: lexan.cpp UMStr.h
	$(CC) $(CFLAGS) -c lexan.cpp

import.o: import.cpp import.h misc.h
	$(CC) $(CFLAGS) -c import.cpp

function.o: function.cpp function.h misc.h
	$(CC) $(CFLAGS) -c function.cpp

pupik.o: pupik.cpp pupik.h misc.h
	$(CC) $(CFLAGS) -c pupik.cpp

export.o: export.cpp export.h misc.h
	$(CC) $(CFLAGS) -c export.cpp

pla_elem.o: pla_elem.cpp pla_elem.h
	$(CC) $(CFLAGS) -c pla_elem.cpp

clean:
	rm -f *.o *~ collapse

mrproper:
	rm -f *.o *~ collapse *.pla

