CC=			g++
NOWARN=     -Wno-unused-result -Wno-unused-function
CFLAGS=		#-g -Wall $(NOWARN) #-O2
CPPFLAGS=   -g -Wall $(NOWARN) -O2
WRAP_MALLOC=-DUSE_MALLOC_WRAPPERS
SHOW_PERF=  -DSHOW_PERF
AR=			ar
DFLAGS=		-DHAVE_PTHREAD $(WRAP_MALLOC) $(SHOW_PERF)
AOBJS=		util.o sa.o fmt_index.o bwt.o
PROG=		fmtidx
INCLUDES=	
LIBS=		-lm -lz -lpthread
SUBDIRS=	.

ifeq ($(shell uname -s),Linux)
	LIBS += -lrt
endif

.SUFFIXES:.c .o .cc .cpp

.c.o:
		$(CC) -c $(CFLAGS) $(DFLAGS) $(INCLUDES) $(CPPFLAGS) $< -o $@

all:$(PROG)

fmtidx:$(AOBJS) main.o
		$(CC) $(CFLAGS) $(LDFLAGS) $(AOBJS) main.o -o $@ -L. $(LIBS)

clean:
		rm -f gmon.out *.o a.out $(PROG) *~ *.a

depend:
	( LC_ALL=C ; export LC_ALL; makedepend -Y -- $(CFLAGS) $(DFLAGS) $(CPPFLAGS) -- *.cpp )