Makefile revision a3c86fc452d1c5e6ec78c6c2617540c34b7d9035
179e48f72dea1639bcbee310c354938287b6d5790Jens Axboeifneq ($(wildcard config-host.mak),)
29b8365618309572d8fd2579c8ea3132db89f843fBruce Cranall:
39b8365618309572d8fd2579c8ea3132db89f843fBruce Craninclude config-host.mak
4b14c9ed70440eb16b984ea89f8f5342c9b1bac4fJens Axboeconfig-host-mak: configure
5d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran	@echo $@ is out-of-date, running configure
6b6cf38f0aed8b12db1c8fd520c09e5a74066ebc9Yufei Ren	@sed -n "/.*Configured with/s/[^:]*: //p" $@ | sh
7ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboeelse
8ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboeconfig-host.mak:
9d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifneq ($(MAKECMDGOALS),clean)
10d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran	@echo "Running configure for you..."
1167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe	@./configure
1267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
1367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeall:
1467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeinclude config-host.mak
1567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
1667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
1767bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeDEBUGFLAGS = -D_FORTIFY_SOURCE=2 -DFIO_INC_DEBUG
1867bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeCPPFLAGS= -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 $(DEBUGFLAGS)
1967bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeOPTFLAGS= -O3 -g -ffast-math
2067bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeCFLAGS	= -std=gnu99 -Wwrite-strings -Wall -Wdeclaration-after-statement $(OPTFLAGS) $(EXTFLAGS) $(BUILD_CFLAGS)
2167bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeLIBS	+= -lm $(EXTLIBS)
2267bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboePROGS	= fio
2367bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeSCRIPTS = tools/fio_generate_plots tools/plot/fio2gnuplot tools/genfio
2467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
2593bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cranifdef CONFIG_GFIO
26d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran  PROGS += gfio
27d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif
28c7c6cb4cb3114ec4ce3107e15c184e161b50122eJens Axboe
29d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens AxboeSOURCE := gettime.c ioengines.c init.c stat.c log.c time.c filesetup.c \
3062cb17de316e5aa755228fef8ce19b5f5353a3cfJens Axboe		eta.c verify.c memory.c io_u.c parse.c mutex.c options.c \
3167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		lib/rbtree.c smalloc.c filehash.c profile.c debug.c lib/rand.c \
3267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		lib/num2str.c lib/ieee754.c $(wildcard crc/*.c) engines/cpu.c \
3367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		engines/mmap.c engines/sync.c engines/null.c engines/net.c \
3467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		memalign.c server.c client.c iolog.c backend.c libfio.c flow.c \
3567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		cconv.c lib/prio_tree.c json.c lib/zipf.c lib/axmap.c \
3667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		lib/lfsr.c gettime-thread.c helpers.c lib/flist_sort.c \
3767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		lib/hweight.c lib/getrusage.c idletime.c td_error.c \
3867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		profiles/tiobench.c profiles/act.c io_u_queue.c
3967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
4067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_64BIT_LLP64
4167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CFLAGS += -DBITS_PER_LONG=32
4267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
4367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_64BIT
4467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CFLAGS += -DBITS_PER_LONG=64
4567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
4667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_32BIT
4767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CFLAGS += -DBITS_PER_LONG=32
4867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
4967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_LIBAIO
5067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/libaio.c
5167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
5267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_RDMA
5367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/rdma.c
5467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
5567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_POSIXAIO
5667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/posixaio.c
5767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
5867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_LINUX_FALLOCATE
5967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/falloc.c
6067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
6167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_LINUX_EXT4_MOVE_EXTENT
6267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/e4defrag.c
6367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
6467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_LINUX_SPLICE
6567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/splice.c
6667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
6767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_GUASI
6867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/guasi.c
6967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
7067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_FUSION_AW
7167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/fusion-aw.c
7267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
7367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_SOLARISAIO
7467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/solarisaio.c
7567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
7667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifdef CONFIG_WINDOWSAIO
7767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += engines/windowsaio.c
7867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
7967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifndef CONFIG_STRSEP
8067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += lib/strsep.c
8167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
8267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifndef CONFIG_STRCASESTR
8367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += lib/strcasestr.c
8467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
8567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifndef CONFIG_GETOPT_LONG_ONLY
8667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += lib/getopt_long.c
8767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
8867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifndef CONFIG_INET_ATON
8967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += lib/inet_aton.c
9067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
9167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
9267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), Linux)
9367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += diskutil.c fifo.c blktrace.c cgroup.c trim.c engines/sg.c \
9467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe		engines/binject.c
9567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS += -lpthread -ldl
9667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LDFLAGS += -rdynamic
9767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
9867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), Android)
9967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += diskutil.c fifo.c blktrace.c trim.c profiles/tiobench.c
10067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS += -ldl
10167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LDFLAGS += -rdynamic
10267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
10367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), SunOS)
10467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -ldl
10567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CPPFLAGS += -D__EXTENSIONS__
10667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
10767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), FreeBSD)
10867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -lrt
10967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LDFLAGS += -rdynamic
11067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
11167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), NetBSD)
11267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -lrt
11367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LDFLAGS += -rdynamic
11467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
11567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), AIX)
11667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -ldl -lrt
11767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CPPFLAGS += -D_LARGE_FILES -D__ppc__
11867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LDFLAGS += -L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000
11967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
12067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), HP-UX)
12167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS   += -lpthread -ldl -lrt
12267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  CFLAGS += -D_LARGEFILE64_SOURCE -D_XOPEN_SOURCE_EXTENDED
12367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
12467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(CONFIG_TARGET_OS), Darwin)
12567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -ldl
12667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif
12767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifneq (,$(findstring CYGWIN,$(CONFIG_TARGET_OS)))
12867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE := $(filter-out engines/mmap.c,$(SOURCE))
12967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  SOURCE += os/windows/posix.c
13067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe  LIBS	 += -lpthread -lpsapi -lws2_32
131d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran  CFLAGS += -DPSAPI_VERSION=1 -Ios/windows/posix/include -Wno-format
132d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif
13367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
13467bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeOBJS = $(SOURCE:.c=.o)
13567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
136213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens AxboeFIO_OBJS = $(OBJS) fio.o
137d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranGFIO_OBJS = $(OBJS) gfio.o graph.o tickmarks.o ghelpers.o goptions.o gerror.o \
138ec5c6b125c1eab992882602158bab54957aa733dAaron Carroll			gclient.o gcompat.o cairo_text_helpers.o printing.o
13967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe
140ec5c6b125c1eab992882602158bab54957aa733dAaron Carroll-include $(OBJS:.o=.d)
141ec5c6b125c1eab992882602158bab54957aa733dAaron Carroll
142ec5c6b125c1eab992882602158bab54957aa733dAaron CarrollT_SMALLOC_OBJS = t/stest.o
143ec5c6b125c1eab992882602158bab54957aa733dAaron CarrollT_SMALLOC_OBJS += gettime.o mutex.o smalloc.o t/log.o
144d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_SMALLOC_PROGS = t/stest
145d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
146d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_IEEE_OBJS = t/ieee754.o
147d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_IEEE_OBJS += lib/ieee754.o
148d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_IEEE_PROGS = t/ieee754
149d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
150213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens AxboeT_ZIPF_OBS = t/genzipf.o
151d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_ZIPF_OBJS += t/log.o lib/ieee754.o lib/rand.o lib/zipf.o t/genzipf.o
152d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_ZIPF_PROGS = t/genzipf
153d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
154213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens AxboeT_AXMAP_OBJS = t/axmap.o
155d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_AXMAP_OBJS += lib/lfsr.o lib/axmap.o
156d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_AXMAP_PROGS = t/axmap
157d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
158d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_LFSR_TEST_OBJS = t/lfsr-test.o
15948b35be009138ddca8d341f7767a1364400b6c06Michael PerzlT_LFSR_TEST_OBJS += lib/lfsr.o
160d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_LFSR_TEST_PROGS = t/lfsr-test
161c00a22894b82ff53b42c1e741a7b4828199a1388Jens Axboe
162b5ffb752790d4c88a18e27aaf970b065b3e4a56cJens AxboeT_OBJS = $(T_SMALLOC_OBJS)
16367bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_OBJS += $(T_IEEE_OBJS)
164c00a22894b82ff53b42c1e741a7b4828199a1388Jens AxboeT_OBJS += $(T_ZIPF_OBJS)
165d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_OBJS += $(T_AXMAP_OBJS)
166d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_OBJS += $(T_LFSR_TEST_OBJS)
167d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
168d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranT_PROGS = $(T_SMALLOC_PROGS)
16993bcfd20e37cef8cec350fe06d3a086724c9f257Bruce CranT_PROGS += $(T_IEEE_PROGS)
17093bcfd20e37cef8cec350fe06d3a086724c9f257Bruce CranT_PROGS += $(T_ZIPF_PROGS)
17193bcfd20e37cef8cec350fe06d3a086724c9f257Bruce CranT_PROGS += $(T_AXMAP_PROGS)
17293bcfd20e37cef8cec350fe06d3a086724c9f257Bruce CranT_PROGS += $(T_LFSR_TEST_PROGS)
173d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran
174d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifneq ($(findstring $(MAKEFLAGS),s),s)
1759b8365618309572d8fd2579c8ea3132db89f843fBruce Cranifndef V
17679d16311c8d0c7188d73df77838fb1b4b6ff58dbJens Axboe	QUIET_CC	= @echo '   ' CC $@;
17761f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe	QUIET_LINK	= @echo '   ' LINK $@;
17839ab7da23768081db50b0026e0c2a8e38752e7a4Jens Axboe	QUIET_DEP	= @echo '   ' DEP $@;
17961f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboeendif
18061f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboeendif
18161f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe
182f98f3d076502dfd18a2d1b63443288cab356a983Jens Axboeifeq ($(CONFIG_TARGET_OS), SunOS)
18361f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe	INSTALL = ginstall
18461f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboeelse
1856ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe	INSTALL = install
18624baa4c70c850d4c1703ae8f4e2b35fc5c5a57eaJens Axboeendif
187eed3f51876dd2bc50558eec29e0078557f2e3a25Jens Axboeprefix = /usr/local
1886ff3885617d8281bde48a9a19d34302add3fd017Jens Axboebindir = $(prefix)/bin
189ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboe
190ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboeifeq ($(CONFIG_TARGET_OS), Darwin)
191ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboemandir = /usr/share/man
192ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboesharedir = /usr/share/fio
19361f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboeelse
19461f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboemandir = $(prefix)/man
1956ff3885617d8281bde48a9a19d34302add3fd017Jens Axboesharedir = $(prefix)/share/fio
196ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboeendif
1976ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe
1986ff3885617d8281bde48a9a19d34302add3fd017Jens Axboeall: $(PROGS) $(SCRIPTS) FORCE
1996ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe
2006ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe.PHONY: all install clean
201ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboe.PHONY: FORCE cscope
2023427207d9d638a6c4bd4ca8e9b3634733fd2c780Jens Axboe
2034c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens AxboeFIO-VERSION-FILE: FORCE
2044c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe	@$(SHELL) ./FIO-VERSION-GEN
2054c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe-include FIO-VERSION-FILE
2060b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboe
2074c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeoverride CFLAGS += -DFIO_VERSION='"$(FIO_VERSION)"'
2084c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe
2094c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe.c.o: FORCE FIO-VERSION-FILE
210c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe	$(QUIET_CC)$(CC) -o $@ $(CFLAGS) $(CPPFLAGS) -c $<
211c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe	@$(CC) -MM $(CFLAGS) $(CPPFLAGS) $*.c > $*.d
212c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe	@mv -f $*.d $*.d.tmp
213bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboe	@sed -e 's|.*:|$*.o:|' < $*.d.tmp > $*.d
214bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboe	@sed -e 's/.*://' -e 's/\\$$//' < $*.d.tmp | fmt -1 | \
215bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboe		sed -e 's/^ *//' -e 's/$$/:/' >> $*.d
216bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboe	@rm -f $*.d.tmp
217d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll
218bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboeinit.o: FIO-VERSION-FILE init.c
219c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe	$(QUIET_CC)$(CC) -o init.o $(CFLAGS) $(CPPFLAGS) -c init.c
220692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe
221f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappegcompat.o: gcompat.c gcompat.h
222692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c gcompat.c
223692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe
224692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboegoptions.o: goptions.c goptions.h
225692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c goptions.c
22684306c1d9ecd94e93436da62b41ef61ac6e281acBruce Cran
227692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboeghelpers.o: ghelpers.c ghelpers.h
228692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c ghelpers.c
229692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe
230692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboegerror.o: gerror.c gerror.h
231692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c gerror.c
2329b8365618309572d8fd2579c8ea3132db89f843fBruce Cran
233e52947d15cf0d7d31c30ccdc43450a10081976daDiego Elio Pettenògclient.o: gclient.c gclient.h
234a6204b6818e0b5bf7c7aae0bd8fd840f71e2c4a3Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c gclient.c
235a6204b6818e0b5bf7c7aae0bd8fd840f71e2c4a3Jens Axboe
236a6204b6818e0b5bf7c7aae0bd8fd840f71e2c4a3Jens Axboegfio.o: gfio.c ghelpers.c
23761f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c gfio.c
23861f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe
23961f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboegraph.o: graph.c graph.h
24061f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c graph.c
24161f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe
242fbc2792b20276f7fa14c44f7b235ca448b383b50Jens Axboecairo_text_helpers.o: cairo_text_helpers.c cairo_text_helpers.h
2436ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c cairo_text_helpers.c
2446ff3885617d8281bde48a9a19d34302add3fd017Jens Axboe
2456ff3885617d8281bde48a9a19d34302add3fd017Jens Axboeprinting.o: printing.c printing.h
246ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboe	$(QUIET_CC)$(CC) $(CFLAGS) $(GTK_CFLAGS) $(CPPFLAGS) -c printing.c
247ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboe
248ad1f90aa84ba96916d02043958ee416a499f3f25Jens Axboet/stest: $(T_SMALLOC_OBJS)
2492f9ade3cb72218eb260f4f5e6914218bdcaa2bccJens Axboe	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_SMALLOC_OBJS) $(LIBS)
25048b35be009138ddca8d341f7767a1364400b6c06Michael Perzl
2514c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboet/ieee754: $(T_IEEE_OBJS)
252f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_IEEE_OBJS) $(LIBS)
2539b8365618309572d8fd2579c8ea3132db89f843fBruce Cran
2540b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboefio: $(FIO_OBJS)
2558541f32c232661758908cf2d1c388c8ca3bbaa4bJens Axboe	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(FIO_OBJS) $(LIBS)
256ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe
257692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboegfio: $(GFIO_OBJS)
25867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe	$(QUIET_LINK)$(CC) $(LDFLAGS) -o gfio $(GFIO_OBJS) $(LIBS) $(GTK_LDFLAGS)
259ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe
260592ef98a623407437c1807bc29deaa87726de5b4Jens Axboet/genzipf: $(T_ZIPF_OBJS)
261366badd3f5c92433b1972ac85e2b4ef46b441011Jens Axboe	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_ZIPF_OBJS) $(LIBS)
262592ef98a623407437c1807bc29deaa87726de5b4Jens Axboe
263692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboet/axmap: $(T_AXMAP_OBJS)
264513ba3f7d4eef309d2307cf9787d7d980a29164dJens Axboe	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_AXMAP_OBJS) $(LIBS)
265ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe
266d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carrollt/lfsr-test: $(T_LFSR_TEST_OBJS)
267d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll	$(QUIET_LINK)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_LFSR_TEST_OBJS) $(LIBS)
268ccd4f41bbee00837601693dd58589320cb3fa497Jens Axboe
269ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboeclean: FORCE
27006fecb4e2679b9783940721f78ea7201451ca55cJens Axboe	-rm -f .depend $(FIO_OBJS) $(GFIO_OBJS) $(OBJS) $(T_OBJS) $(PROGS) $(T_PROGS) core.* core gfio FIO-VERSION-FILE *.d config-host.mak config-host.h
27106fecb4e2679b9783940721f78ea7201451ca55cJens Axboe
27206fecb4e2679b9783940721f78ea7201451ca55cJens Axboedistclean: clean FORCE
273	@rm -f cscope.out
274
275cscope:
276	@cscope -b -R
277
278tools/plot/fio2gnuplot.1:
279	@cat tools/plot/fio2gnuplot.manpage | txt2man -t fio2gnuplot >  tools/plot/fio2gnuplot.1
280
281install: $(PROGS) $(SCRIPTS) tools/plot/fio2gnuplot.1 FORCE
282	$(INSTALL) -m 755 -d $(DESTDIR)$(bindir)
283	$(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir)
284	$(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1
285	$(INSTALL) -m 644 fio.1 $(DESTDIR)$(mandir)/man1
286	$(INSTALL) -m 644 tools/fio_generate_plots.1 $(DESTDIR)$(mandir)/man1
287	$(INSTALL) -m 644 tools/plot/fio2gnuplot.1 $(DESTDIR)$(mandir)/man1
288	$(INSTALL) -m 755 -d $(DESTDIR)$(sharedir)
289	$(INSTALL) -m 644 tools/plot/*gpm $(DESTDIR)$(sharedir)/
290