Makefile revision 692a5d228de8215634182d0c459ac7c0b0fda961
112cbb469ea5e559b241f6c31693554829e8b8400Jens AxboeCC = gcc 279e48f72dea1639bcbee310c354938287b6d5790Jens AxboeDEBUGFLAGS = -D_FORTIFY_SOURCE=2 -DFIO_INC_DEBUG 39b8365618309572d8fd2579c8ea3132db89f843fBruce CranCPPFLAGS= -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \ 49b8365618309572d8fd2579c8ea3132db89f843fBruce Cran $(DEBUGFLAGS) 5b7eec5046cec8fb7e5c948034c0367b5bfbf50a8Jens AxboeOPTFLAGS= -O3 -fno-omit-frame-pointer -g $(EXTFLAGS) 6d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranCFLAGS = -std=gnu99 -Wwrite-strings -Wall $(OPTFLAGS) 7b6cf38f0aed8b12db1c8fd520c09e5a74066ebc9Yufei RenLIBS = -lm $(EXTLIBS) 8ebac4655dd3624f3296ff83be48e0cdc02852f1Jens AxboePROGS = fio 9ebac4655dd3624f3296ff83be48e0cdc02852f1Jens AxboeSCRIPTS = fio_generate_plots 10d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce CranUNAME := $(shell uname) 11d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 1293bcfd20e37cef8cec350fe06d3a086724c9f257Bruce CranSOURCE := gettime.c fio.c ioengines.c init.c stat.c log.c time.c filesetup.c \ 13d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran eta.c verify.c memory.c io_u.c parse.c mutex.c options.c \ 14d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran rbtree.c smalloc.c filehash.c profile.c debug.c lib/rand.c \ 15c7c6cb4cb3114ec4ce3107e15c184e161b50122eJens Axboe lib/num2str.c lib/ieee754.c $(wildcard crc/*.c) engines/cpu.c \ 16d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe engines/mmap.c engines/sync.c engines/null.c engines/net.c \ 179e684a4976b7934f5ce011ea281dfef3352e5738Dan Ehrenberg memalign.c server.c client.c iolog.c backend.c libfio.c flow.c 18d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 19d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), Linux) 20d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran SOURCE += diskutil.c fifo.c blktrace.c helpers.c cgroup.c trim.c \ 21d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran engines/libaio.c engines/posixaio.c engines/sg.c \ 22d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran engines/splice.c engines/syslet-rw.c engines/guasi.c \ 2321b8aee865f0d3960687ce6ba7385e5977f45061ren yufei engines/binject.c engines/rdma.c profiles/tiobench.c 24d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -ldl -lrt -laio 25213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens Axboe LDFLAGS += -rdynamic 26d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 27d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), SunOS) 2833c142be80a031dfd9ad4f8237b73f4741648fa1Jens Axboe SOURCE += fifo.c lib/strsep.c helpers.c engines/posixaio.c \ 29d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe engines/solarisaio.c 30d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -ldl -laio -lrt -lnsl -lsocket 31d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran CPPFLAGS += -D__EXTENSIONS__ 32d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 33d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), FreeBSD) 34d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += helpers.c engines/posixaio.c 35d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -lrt 36213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens Axboe LDFLAGS += -rdynamic 37d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 38d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), NetBSD) 39d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += helpers.c engines/posixaio.c 40d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -lrt 41213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens Axboe LDFLAGS += -rdynamic 42d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 43d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), AIX) 44d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += fifo.c helpers.c lib/getopt_long.c engines/posixaio.c 45d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -ldl -lrt 46d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran CPPFLAGS += -D_LARGE_FILES -D__ppc__ 4748b35be009138ddca8d341f7767a1364400b6c06Michael Perzl LDFLAGS += -L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000 48d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 49c00a22894b82ff53b42c1e741a7b4828199a1388Jens Axboeifeq ($(UNAME), HP-UX) 50d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += fifo.c helpers.c lib/getopt_long.c lib/strsep.c engines/posixaio.c 51b5ffb752790d4c88a18e27aaf970b065b3e4a56cJens Axboe LIBS += -lpthread -ldl -lrt 52d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe CFLAGS += -D_LARGEFILE64_SOURCE 53c00a22894b82ff53b42c1e741a7b4828199a1388Jens Axboeendif 54d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), Darwin) 55d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += helpers.c engines/posixaio.c 56d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -ldl 57d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 58d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifneq (,$(findstring CYGWIN,$(UNAME))) 5993bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cran SOURCE := $(filter-out engines/mmap.c,$(SOURCE)) 6093bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cran SOURCE += engines/windowsaio.c os/windows/posix.c 6193bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cran LIBS += -lpthread -lpsapi -lws2_32 6293bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cran CFLAGS += -DPSAPI_VERSION=1 -Ios/windows/posix/include -Wno-format 6393bcfd20e37cef8cec350fe06d3a086724c9f257Bruce Cran CC = x86_64-w64-mingw32-gcc 64d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 65d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 669b8365618309572d8fd2579c8ea3132db89f843fBruce CranOBJS = $(SOURCE:.c=.o) 6779d16311c8d0c7188d73df77838fb1b4b6ff58dbJens Axboe 6861f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_OBJS = t/stest.o 6961f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_OBJS += mutex.o smalloc.o t/log.o 7061f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_PROGS = t/stest 7161f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 7261f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_OBJS = t/ieee754.o 7361f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_OBJS += ieee754.o 7461f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_PROGS = t/ieee754 7561f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 7661f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_OBJS = $(T_SMALLOC_OBJS) 7761f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_OBJS += $(T_IEEE_OBJS) 783427207d9d638a6c4bd4ca8e9b3634733fd2c780Jens Axboe 794c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeifneq ($(findstring $(MAKEFLAGS),s),s) 804c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeifndef V 814c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe QUIET_CC = @echo ' ' CC $@; 820b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboe QUIET_DEP = @echo ' ' DEP $@; 834c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeendif 844c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeendif 854c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe 86c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens AxboeINSTALL = install 87c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboeprefix = /usr/local 88c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboebindir = $(prefix)/bin 89bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboe 90bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboeifeq ($(UNAME), Darwin) 91bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboemandir = /usr/share/man 92bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboeelse 93d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carrollmandir = $(prefix)/man 94bcdf7c586610734ad617ffd4efeb0e56fe9ac440Jens Axboeendif 95c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe 96692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboeall: .depend $(PROGS) $(SCRIPTS) FORCE 97f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe 98692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe.PHONY: all install clean 99692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe.PHONY: FORCE cscope 100692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe 101692a5d228de8215634182d0c459ac7c0b0fda961Jens AxboeFIO-VERSION-FILE: FORCE 102692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe @$(SHELL_PATH) ./FIO-VERSION-GEN 103692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe-include FIO-VERSION-FILE 104692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe 105692a5d228de8215634182d0c459ac7c0b0fda961Jens AxboeCFLAGS += -DFIO_VERSION='"$(FIO_VERSION)"' 106692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe 107692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe.c.o: .depend FORCE 1089b8365618309572d8fd2579c8ea3132db89f843fBruce Cran $(QUIET_CC)$(CC) -o $@ -c $(CFLAGS) $(CPPFLAGS) $< 109e52947d15cf0d7d31c30ccdc43450a10081976daDiego Elio Pettenò 11061f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboet/stest: $(T_SMALLOC_OBJS) 11161f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_SMALLOC_OBJS) $(LIBS) $(LDFLAGS) 11261f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 11361f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboet/ieee754: $(T_IEEE_OBJS) 11461f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_IEEE_OBJS) $(LIBS) $(LDFLAGS) 115fbc2792b20276f7fa14c44f7b235ca448b383b50Jens Axboe 1162f9ade3cb72218eb260f4f5e6914218bdcaa2bccJens Axboefio: $(OBJS) 11748b35be009138ddca8d341f7767a1364400b6c06Michael Perzl $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJS) $(LIBS) $(LDFLAGS) 1184c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe 119f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe.depend: $(SOURCE) 1209b8365618309572d8fd2579c8ea3132db89f843fBruce Cran $(QUIET_DEP)$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SOURCE) 1> .depend 1210b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboe 122692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe$(PROGS): .depend FORCE 123ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 124692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboeclean: FORCE 125692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboe -rm -f .depend $(OBJS) $(T_OBJS) $(PROGS) $(T_PROGS) core.* core FIO-VERSION-FILE 126ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 127592ef98a623407437c1807bc29deaa87726de5b4Jens Axboecscope: 128366badd3f5c92433b1972ac85e2b4ef46b441011Jens Axboe @cscope -b -R 129592ef98a623407437c1807bc29deaa87726de5b4Jens Axboe 130692a5d228de8215634182d0c459ac7c0b0fda961Jens Axboeinstall: $(PROGS) $(SCRIPTS) FORCE 131513ba3f7d4eef309d2307cf9787d7d980a29164dJens Axboe $(INSTALL) -m 755 -d $(DESTDIR)$(bindir) 132ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir) 133d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1 134d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll $(INSTALL) -m 644 fio.1 $(DESTDIR)$(mandir)/man1 135ccd4f41bbee00837601693dd58589320cb3fa497Jens Axboe $(INSTALL) -m 644 fio_generate_plots.1 $(DESTDIR)$(mandir)/man1 136ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 13706fecb4e2679b9783940721f78ea7201451ca55cJens Axboeifneq ($(wildcard .depend),) 13806fecb4e2679b9783940721f78ea7201451ca55cJens Axboeinclude .depend 13906fecb4e2679b9783940721f78ea7201451ca55cJens Axboeendif 140