
#
# A simple Makefile to make the SEQIO package and its programs
#

#
# The settings to use for the gcc compiler.  If you don't have gcc,
# just set the CC value to your compiler and make sure optimization
# is turned on (it significantly affects the running time).
#
CC=gcc
CFLAGS= -g -O2 -Wall -Wshadow


all: grepseq fmtseq idxseq typeseq wcseq examples

grepseq: grepseq.o seqio.o
	$(CC) $(CFLAGS) -o grepseq grepseq.o seqio.o

fmtseq: fmtseq.o seqio.o
	$(CC) $(CFLAGS) -o fmtseq fmtseq.o seqio.o

idxseq: idxseq.o seqio.o
	$(CC) $(CFLAGS) -o idxseq idxseq.o seqio.o

typeseq: typeseq.o seqio.o
	$(CC) $(CFLAGS) -o typeseq typeseq.o seqio.o

wcseq: wcseq.o seqio.o
	$(CC) $(CFLAGS) -o wcseq wcseq.o seqio.o


seqio.o: seqio.h
grepseq.o: seqio.h
fmtseq.o: seqio.h
idxseq.o:  seqio.h
typeseq.o: seqio.h
wcseq.o: seqio.h


#
# Since these examples are useful more as examples than as
# applications, I've put them down here (and not included them
# in the "all" dependency).
#

examples: example1 example2 example3 example4

example1: example1.o seqio.o
	$(CC) $(CFLAGS) -o example1 example1.o seqio.o

example2: example2.o seqio.o
	$(CC) $(CFLAGS) -o example2 example2.o seqio.o

example3: example3.o seqio.o
	$(CC) $(CFLAGS) -o example3 example3.o seqio.o

example4: example4.o seqio.o
	$(CC) $(CFLAGS) -o example4 example4.o seqio.o

example1.o: seqio.h
example2.o: seqio.h
example3.o: seqio.h
example4.o: seqio.h
