Makefile revision c7c6cb4cb3114ec4ce3107e15c184e161b50122e
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) 5d10fba4a16206d672c902012a55df2691bfa6801Jens 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 129b8365618309572d8fd2579c8ea3132db89f843fBruce 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 \ 15d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 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 \ 1790f326d04602d0df35ca32f251dd6cc353d26a25Jens Axboe memalign.c server.c client.c iolog.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 25d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 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 36d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LDFLAGS += -rdynamic 37d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 38d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranifeq ($(UNAME), NetBSD) 39d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += helpers.c engines/posixaio.c 40d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -lrt 41d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 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))) 59d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboe SOURCE += engines/windowsaio.c 600f7ac781d5355aefe95e84cde5a80026ca7c501eBruce Cran LIBS += -lpthread -lrt -lpsapi 610f7ac781d5355aefe95e84cde5a80026ca7c501eBruce Cran CFLAGS += -DPSAPI_VERSION=1 62d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cranendif 63d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 649b8365618309572d8fd2579c8ea3132db89f843fBruce CranOBJS = $(SOURCE:.c=.o) 6579d16311c8d0c7188d73df77838fb1b4b6ff58dbJens Axboe 6661f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_OBJS = t/stest.o 6761f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_OBJS += mutex.o smalloc.o t/log.o 6861f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_SMALLOC_PROGS = t/stest 6961f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 7061f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_OBJS = t/ieee754.o 7161f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_OBJS += ieee754.o 7261f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_IEEE_PROGS = t/ieee754 7361f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 7461f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_OBJS = $(T_SMALLOC_OBJS) 7561f78f3ada575804c6d4ba0936cf64c17728eabaJens AxboeT_OBJS += $(T_IEEE_OBJS) 763427207d9d638a6c4bd4ca8e9b3634733fd2c780Jens Axboe 774c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeifneq ($(findstring $(MAKEFLAGS),s),s) 784c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeifndef V 794c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe QUIET_CC = @echo ' ' CC $@; 800b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboe QUIET_DEP = @echo ' ' DEP $@; 814c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeendif 824c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboeendif 834c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe 84c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens AxboeINSTALL = install 85c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboeprefix = /usr/local 86c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboebindir = $(prefix)/bin 87d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carrollmandir = $(prefix)/man 88c1d5725eaad49dbf5b3a05c27b0b3677af69f64cJens Axboe 89f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappeall: .depend $(PROGS) $(SCRIPTS) 90f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe 91f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe.c.o: .depend 929b8365618309572d8fd2579c8ea3132db89f843fBruce Cran $(QUIET_CC)$(CC) -o $@ -c $(CFLAGS) $(CPPFLAGS) $< 93e52947d15cf0d7d31c30ccdc43450a10081976daDiego Elio Pettenò 9461f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboet/stest: $(T_SMALLOC_OBJS) 9561f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_SMALLOC_OBJS) $(LIBS) $(LDFLAGS) 9661f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe 9761f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboet/ieee754: $(T_IEEE_OBJS) 9861f78f3ada575804c6d4ba0936cf64c17728eabaJens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_IEEE_OBJS) $(LIBS) $(LDFLAGS) 99fbc2792b20276f7fa14c44f7b235ca448b383b50Jens Axboe 1002f9ade3cb72218eb260f4f5e6914218bdcaa2bccJens Axboefio: $(OBJS) 10148b35be009138ddca8d341f7767a1364400b6c06Michael Perzl $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJS) $(LIBS) $(LDFLAGS) 1024c3ecec4160909d7eba4acf1a07a8a0cd36a6365Jens Axboe 103f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe.depend: $(SOURCE) 1049b8365618309572d8fd2579c8ea3132db89f843fBruce Cran $(QUIET_DEP)$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SOURCE) 1> .depend 1050b2d6a7a2bf9f49502b9c1161f376fff53727089Jens Axboe 106f84622e9c5f4eba6802bcfc6432493ea8c44d740Michael Zappe$(PROGS): .depend 107ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 108ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboeclean: 1093427207d9d638a6c4bd4ca8e9b3634733fd2c780Jens Axboe -rm -f .depend $(OBJS) $(T_OBJS) $(PROGS) $(T_PROGS) core.* core 110ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 111592ef98a623407437c1807bc29deaa87726de5b4Jens Axboecscope: 112366badd3f5c92433b1972ac85e2b4ef46b441011Jens Axboe @cscope -b -R 113592ef98a623407437c1807bc29deaa87726de5b4Jens Axboe 114ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboeinstall: $(PROGS) $(SCRIPTS) 115513ba3f7d4eef309d2307cf9787d7d980a29164dJens Axboe $(INSTALL) -m 755 -d $(DESTDIR)$(bindir) 116ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir) 117d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1 118d60e92d13e969b08dcdad940499ef081b07ac6f7Aaron Carroll $(INSTALL) -m 644 fio.1 $(DESTDIR)$(mandir)/man1 119ccd4f41bbee00837601693dd58589320cb3fa497Jens Axboe $(INSTALL) -m 644 fio_generate_plots.1 $(DESTDIR)$(mandir)/man1 120ebac4655dd3624f3296ff83be48e0cdc02852f1Jens Axboe 12106fecb4e2679b9783940721f78ea7201451ca55cJens Axboeifneq ($(wildcard .depend),) 12206fecb4e2679b9783940721f78ea7201451ca55cJens Axboeinclude .depend 12306fecb4e2679b9783940721f78ea7201451ca55cJens Axboeendif 124