Jens Axboe | 2c0ecd2 | 2006-06-08 13:25:41 +0200 | [diff] [blame] | 1 | CC = gcc |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 2 | DEBUGFLAGS = -DFIO_INC_DEBUG |
| 3 | CPPFLAGS= -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \ |
| 4 | -D__EXTENSIONS__ $(DEBUGFLAGS) |
Bruce Cran | c2019d3 | 2011-01-10 19:34:20 +0100 | [diff] [blame] | 5 | OPTFLAGS= -O2 -fno-omit-frame-pointer -g $(EXTFLAGS) |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 6 | CFLAGS = -std=gnu99 -Wall $(OPTFLAGS) |
| 7 | LIBS = -lpthread -lm -ldl -laio -lrt -lnsl -lsocket |
Jens Axboe | 2c0ecd2 | 2006-06-08 13:25:41 +0200 | [diff] [blame] | 8 | PROGS = fio |
| 9 | SCRIPTS = fio_generate_plots |
Jens Axboe | c11883f | 2006-11-23 15:11:53 +0100 | [diff] [blame] | 10 | |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 11 | SOURCE = gettime.c fio.c ioengines.c init.c stat.c log.c time.c filesetup.c \ |
| 12 | eta.c verify.c memory.c io_u.c parse.c mutex.c options.c rbtree.c \ |
| 13 | fifo.c smalloc.c filehash.c lib/strsep.c helpers.c solaris.c \ |
| 14 | profile.c debug.c lib/rand.c lib/flist_sort.c lib/num2str.c \ |
| 15 | $(wildcard crc/*.c) engines/cpu.c engines/mmap.c engines/posixaio.c \ |
| 16 | engines/sync.c engines/null.c engines/net.c engines/solarisaio.c |
Jens Axboe | 1fbbf72 | 2010-03-25 23:03:18 +0100 | [diff] [blame] | 17 | |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 18 | OBJS = $(SOURCE:.c=.o) |
Jens Axboe | a432da1 | 2007-07-30 12:29:37 +0200 | [diff] [blame] | 19 | |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 20 | ifneq ($(findstring $(MAKEFLAGS),s),s) |
| 21 | ifndef V |
| 22 | QUIET_CC = @echo ' ' CC $@; |
| 23 | QUIET_DEP = @echo ' ' DEP $@; |
| 24 | endif |
| 25 | endif |
Jens Axboe | 2c0ecd2 | 2006-06-08 13:25:41 +0200 | [diff] [blame] | 26 | |
Jens Axboe | 2c0ecd2 | 2006-06-08 13:25:41 +0200 | [diff] [blame] | 27 | INSTALL = install |
| 28 | prefix = /usr/local |
| 29 | bindir = $(prefix)/bin |
Jens Axboe | 5921e80 | 2008-05-30 15:02:38 +0200 | [diff] [blame] | 30 | mandir = $(prefix)/man |
| 31 | |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 32 | .c.o: |
| 33 | $(QUIET_CC)$(CC) -o $@ -c $(CFLAGS) $(CPPFLAGS) $< |
| 34 | |
Jens Axboe | 5921e80 | 2008-05-30 15:02:38 +0200 | [diff] [blame] | 35 | fio: $(OBJS) |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 36 | $(QUIET_CC)$(CC) $(CFLAGS) -o $@ $(LIBS) $(OBJS) |
| 37 | |
| 38 | depend: |
| 39 | $(QUIET_DEP)$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SOURCE) 1> .depend |
Jens Axboe | 5921e80 | 2008-05-30 15:02:38 +0200 | [diff] [blame] | 40 | |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 41 | $(PROGS): depend |
| 42 | |
| 43 | all: depend $(PROGS) $(SCRIPTS) |
Jens Axboe | 5921e80 | 2008-05-30 15:02:38 +0200 | [diff] [blame] | 44 | |
| 45 | clean: |
Jens Axboe | 6492b1e | 2008-06-02 15:57:45 +0200 | [diff] [blame] | 46 | -rm -f .depend cscope.out $(OBJS) $(PROGS) core.* core |
Jens Axboe | 5921e80 | 2008-05-30 15:02:38 +0200 | [diff] [blame] | 47 | |
| 48 | cscope: |
| 49 | @cscope -b |
Jens Axboe | 2c0ecd2 | 2006-06-08 13:25:41 +0200 | [diff] [blame] | 50 | |
| 51 | install: $(PROGS) $(SCRIPTS) |
| 52 | $(INSTALL) -m755 -d $(DESTDIR)$(bindir) |
| 53 | $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir) |
Sebastian Kayser | d3624ff | 2010-11-24 13:27:03 +0100 | [diff] [blame] | 54 | $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1 |
| 55 | $(INSTALL) -m 644 fio.1 $(DESTDIR)$(mandir)/man1 |
| 56 | $(INSTALL) -m 644 fio_generate_plots.1 $(DESTDIR)$(mandir)/man1 |
Bruce Cran | 9b83656 | 2011-01-08 19:49:54 +0100 | [diff] [blame] | 57 | |
| 58 | ifneq ($(wildcard .depend),) |
| 59 | include .depend |
| 60 | endif |