blob: 1ebad6af78ca7e0292096855b5f9ea8e09a0d97f [file] [log] [blame]
Jens Axboeebac4652005-12-08 15:25:21 +01001CC = gcc
Jens Axboe3c9b60c2006-11-07 08:36:14 +01002CFLAGS = -W -Wwrite-strings -Wall -O2 -g -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
Jens Axboeebac4652005-12-08 15:25:21 +01003PROGS = fio
4SCRIPTS = fio_generate_plots
Jens Axboe2f9ade32006-10-20 11:25:52 +02005OBJS = fio.o ioengines.o init.o stat.o log.o time.o md5.o crc32.o \
Jens Axboecb2c86f2006-10-26 13:48:34 +02006 filesetup.o eta.o verify.o memory.o io_u.o parse.o
Jens Axboeebac4652005-12-08 15:25:21 +01007
Jens Axboe5f350952006-11-07 15:20:59 +01008OBJS += engines/fio-engine-cpu.o
9OBJS += engines/fio-engine-libaio.o
10OBJS += engines/fio-engine-mmap.o
11OBJS += engines/fio-engine-posixaio.o
12OBJS += engines/fio-engine-sg.o
13OBJS += engines/fio-engine-splice.o
14OBJS += engines/fio-engine-sync.o
15
Jens Axboec1d57252006-10-09 19:56:04 +020016INSTALL = install
17prefix = /usr/local
18bindir = $(prefix)/bin
19libdir = $(prefix)/lib/fio
20
21FIO_INST_DIR = $(subst ','\'',$(prefix))
22
23CFLAGS += '-D_INST_PREFIX="$(FIO_INST_DIR)"'
24
Jens Axboeebac4652005-12-08 15:25:21 +010025all: depend $(PROGS) $(SCRIPTS)
26
Jens Axboe2f9ade32006-10-20 11:25:52 +020027fio: $(OBJS)
Jens Axboe5f350952006-11-07 15:20:59 +010028 $(CC) $(CFLAGS) -o $@ $(filter %.o,$^) -lpthread -lm -ldl -laio -lrt
Jens Axboeebac4652005-12-08 15:25:21 +010029
30clean:
Jens Axboe2866c822006-10-09 15:57:48 +020031 -rm -f *.o .depend cscope.out $(PROGS) engines/*.o
Jens Axboeebac4652005-12-08 15:25:21 +010032
33depend:
34 @$(CC) -MM $(ALL_CFLAGS) *.c 1> .depend
35
Jens Axboe592ef982006-06-06 20:58:57 +020036cscope:
37 @cscope -b
38
Jens Axboeebac4652005-12-08 15:25:21 +010039install: $(PROGS) $(SCRIPTS)
40 $(INSTALL) -m755 -d $(DESTDIR)$(bindir)
41 $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir)
Jens Axboe2866c822006-10-09 15:57:48 +020042 $(INSTALL) -m755 -d $(DESTDIR) $(libdir)
Jens Axboeebac4652005-12-08 15:25:21 +010043
44ifneq ($(wildcard .depend),)
45include .depend
46endif