# Makefile for FAP, FIT and FBF software
# Author: Jrgen Ahlberg (ahlberg@isy.liu.se)
# Date: 98-01-14

CC = gcc
CCC = g++
CFLAG = -O

LAPACKLIB = \
	lapack/lapack_alpha.a \
	lapack/blas_alpha.a \
	lapack/tmglib_alpha.a \
	lapack/libF77.a \
	lapack/libI77.a

LEASTSQUARE = \
	matrix/matrix_ls.o \
	lapack/sgelss.o \
	${LAPACKLIB}

DCT = \
	dct/dct.o

BITSTREAM = \
	stream/ibstream.o \
	stream/obstream.o \
	huffman/huffman.o \
	sequence/fbfs_stream.o \
	sequence/mask_stream.o

MATRIX = \
	matrix/matrix.o \
	matrix/matrix_io.o

SEQUENCE = \
	sequence/sequence.o \
	sequence/fileinfo.o \
	sequence/mask.o \
	${MATRIX} \
	${DCT}

FAPS = \
	sequence/faps.o \
	${SEQUENCE}

FBFS = 	\
	sequence/fbfs.o \
	${FAPS}

FIT = \
	fit/fit.o \
	fit/fit_io.o \
	fit/fit_eval.o \
	${FAPS}

CODECOBJS =  ${FBFS} ${LEASTSQUARE} ${BITSTREAM}

fit:	ip cut
codec:	encode decode

ip:	ip.o ${FIT}
	$(CCC) $(CFLAG) -o ip ip.o ${FIT} -lm

cut:	cut.o ${FAPS}
	$(CCC) $(CFLAG) -o cut cut.o ${FIT}

lapack/%.o: lapack/%.c
	$(CC) $(CFLAG) -c -o $@ $<

%.o:	%.cc codec.hh
	$(CCC) $(CFLAG) -c -o $@ $<

%:	%.o ${FBFS} ${LEASTSQUARE} ${BITSTREAM}
	$(CCC) $(CFLAG) -o $@ $< ${FBFS} ${LEASTSQUARE} ${BITSTREAM} -lm

clean:
	\rm sequence/*.o matrix/*.o fit/*.o *.o







