# Set CC to your favorite compiler
CC	= gcc
CFLAGS	= -g -O $(IDIRS) $(DEFINES)

MLOBJ	= mlread.o mlwrite.o mlcvt.o mlmisc.o mlver.o
MLLIB	= libml.a

MISCLIB	= libmisc.a
MISCOBJ	= error.o ivcvt.o


# If using GNU REGEX, include the location of regex.o here, and
# set the HAVE_GNU_REGEX variable.
#REGEX	= /usr/gnu/lib/regex.o
#DEFINES= -DHAVE_GNU_REGEX

# Add the directory that has pgm.h to IDIRS.
# If using GNU REGEX, include the directory that has regex.h here.
#IDIRS	= -I. -I/usr/gnu/include -I/usr/local/include

all: libml libmisc matls mat2mat pgm2mat

$(MLLIB) libml: $(MLOBJ)
	rm -f $(MLLIB)
	ar cru $(MLLIB) $(MLOBJ)
	ranlib $(MLLIB)

$(MISCLIB) libmisc: $(MISCOBJ)
	rm -f $(MISCLIB)
	ar cr $(MISCLIB) $(MISCOBJ)
	ranlib $(MISCLIB)

matls: matls.o $(MLLIB) $(MISCLIB)
	$(CC) $(LDFLAGS) -o $@ matls.o $(MLLIB) $(MISCLIB)

mat2mat: mat2mat.o $(MLLIB) $(MISCLIB) $(REGEX)
	$(CC) $(LDFLAGS) -o $@ mat2mat.o $(MLLIB) $(MISCLIB) $(REGEX)

pgm2mat: pgm2mat.o $(MLLIB) $(MISCLIB)
	$(CC) $(LDFLAGS) -o $@ pgm2mat.o $(MLLIB) $(MISCLIB) -lpgm -lpbm

clean:
	rm -f *.o $(MLLIB) $(MISCLIB) matls mat2mat pgm2mat
