Makefile revision 61f78f3ada575804c6d4ba0936cf64c17728eaba
167bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeCC = gcc 267bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeDEBUGFLAGS = -D_FORTIFY_SOURCE=2 -DFIO_INC_DEBUG 367bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeCPPFLAGS= -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 \ 467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe $(DEBUGFLAGS) 567bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeOPTFLAGS= -O2 -fno-omit-frame-pointer -g $(EXTFLAGS) 667bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeCFLAGS = -std=gnu99 -Wwrite-strings -Wall $(OPTFLAGS) 767bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeLIBS = -lm $(EXTLIBS) 867bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboePROGS = fio 9d443abcfe076b9316bc8165366b36eb5e02a77aaJens AxboeSCRIPTS = fio_generate_plots 1067bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeUNAME := $(shell uname) 1167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 12d443abcfe076b9316bc8165366b36eb5e02a77aaJens AxboeSOURCE = gettime.c fio.c ioengines.c init.c stat.c log.c time.c filesetup.c \ 1367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe eta.c verify.c memory.c io_u.c parse.c mutex.c options.c \ 1467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe rbtree.c smalloc.c filehash.c profile.c debug.c lib/rand.c \ 1567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe lib/num2str.c $(wildcard crc/*.c) engines/cpu.c \ 1667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe engines/mmap.c engines/sync.c engines/null.c engines/net.c \ 17af4862b3447e35d038b6c117631d9c03777ab79eJens Axboe memalign.c server.c client.c iolog.c ieee754.c 189195552e8fca86b682a86fc7ab0fb6eacb433f16Daniel Gollub 19af4862b3447e35d038b6c117631d9c03777ab79eJens Axboeifeq ($(UNAME), Linux) 201be2ed936f415a1d0a30078cf1aca3f4c9d8cf6aJens Axboe SOURCE += diskutil.c fifo.c blktrace.c helpers.c cgroup.c trim.c \ 21af4862b3447e35d038b6c117631d9c03777ab79eJens Axboe engines/libaio.c engines/posixaio.c engines/sg.c \ 22af4862b3447e35d038b6c117631d9c03777ab79eJens Axboe engines/splice.c engines/syslet-rw.c engines/guasi.c \ 23265a202706aaa538297599f4c683b781a3ecaedbErwan Velu engines/binject.c engines/rdma.c profiles/tiobench.c 24af4862b3447e35d038b6c117631d9c03777ab79eJens Axboe LIBS += -lpthread -ldl -lrt -laio 2591f94d5b88b72c300be4f27ef6630e16af890db6Jens Axboe CFLAGS += -rdynamic 2691f94d5b88b72c300be4f27ef6630e16af890db6Jens Axboeendif 2791f94d5b88b72c300be4f27ef6630e16af890db6Jens Axboeifeq ($(UNAME), SunOS) 2891f94d5b88b72c300be4f27ef6630e16af890db6Jens Axboe SOURCE += fifo.c lib/strsep.c helpers.c engines/posixaio.c \ 29ea783f87082e59a511c4d720d287e0de9fccb1b5Jens Axboe engines/solarisaio.c 30d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran LIBS += -lpthread -ldl -laio -lrt -lnsl -lsocket 31057754389863aa18cbf36b1f2a556a422ea2f4b5Jens Axboe CPPFLAGS += -D__EXTENSIONS__ 32c7c6cb4cb3114ec4ce3107e15c184e161b50122eJens Axboeendif 33d48a9799a3d3cbe3c41658d6e41d6791b33e926cJens Axboeifeq ($(UNAME), FreeBSD) 342dc1cbb52f73303d479a72e99930a2838c4b0fa4Jens Axboe SOURCE += helpers.c engines/posixaio.c 359a0db1e22a016bcdd91646b2e275051ff21c3038Jens Axboe LIBS += -lpthread -lrt 36836fcc0fceb233ebcc41ee63b4ea5cae20b678a4Jens Axboe CFLAGS += -rdynamic 37d4afedfd152cea890ffa7d45bf1664fb70218c45Jens Axboeendif 3838a812d7fa79a673855efb6324c8fc68b92b89c1Jens Axboeifeq ($(UNAME), NetBSD) 39b0e1bb93060a19560bc28718f622e16ac17c5c67Jens Axboe SOURCE += helpers.c engines/posixaio.c 4067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe LIBS += -lpthread -lrt 41d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlik CFLAGS += -rdynamic 42d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlikendif 43468a18c9486935283b96f1ed0fb64a6a35da5548Fabrice Bacchellaifeq ($(UNAME), AIX) 44d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlik SOURCE += fifo.c helpers.c lib/getopt_long.c engines/posixaio.c 45d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlik LIBS += -lpthread -ldl -lrt 46d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlik CPPFLAGS += -D_LARGE_FILES -D__ppc__ 47d60aa36e65b46320bc8db7b2f6a07e84f96ac86aManish Mandlik LDFLAGS += -L/opt/freeware/lib -Wl,-blibpath:/opt/freeware/lib:/usr/lib:/lib -Wl,-bmaxdata:0x80000000 48c81f9347e5849a6b97a02f215f1c474e27c79f1aBruce Cranendif 49c81f9347e5849a6b97a02f215f1c474e27c79f1aBruce Cranifeq ($(UNAME), HP-UX) 50c81f9347e5849a6b97a02f215f1c474e27c79f1aBruce Cran SOURCE += fifo.c helpers.c lib/getopt_long.c lib/strsep.c engines/posixaio.c 5167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe LIBS += -lpthread -ldl -lrt 5267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe CFLAGS += -D_LARGEFILE64_SOURCE 5367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif 5467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifeq ($(UNAME), Darwin) 5567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe SOURCE += helpers.c engines/posixaio.c 5667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe LIBS += -lpthread -ldl 5767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif 5867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifneq (,$(findstring CYGWIN,$(UNAME))) 5967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe SOURCE += engines/windowsaio.c 6067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe LIBS += -lpthread -lrt -lpsapi 6167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe CFLAGS += -DPSAPI_VERSION=1 6267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif 6367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 6467bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeOBJS = $(SOURCE:.c=.o) 6567bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 6667bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_SMALLOC_OBJS = t/stest.o 6767bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_SMALLOC_OBJS += mutex.o smalloc.o t/log.o 6867bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_SMALLOC_PROGS = t/stest 6967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 7067bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_IEEE_OBJS = t/ieee754.o 7167bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_IEEE_OBJS += ieee754.o 7267bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_IEEE_PROGS = t/ieee754 7367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 7467bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_OBJS = $(T_SMALLOC_OBJS) 7567bf982340d95ca98098ea050b54b4c7adb116c0Jens AxboeT_OBJS += $(T_IEEE_OBJS) 7667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 7767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifneq ($(findstring $(MAKEFLAGS),s),s) 7867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeifndef V 7967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe QUIET_CC = @echo ' ' CC $@; 8067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe QUIET_DEP = @echo ' ' DEP $@; 8167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif 8267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeendif 8367bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 844700b23465687c7d3de7820341fa96e506e967b2Jens AxboeINSTALL = install 854700b23465687c7d3de7820341fa96e506e967b2Jens Axboeprefix = /usr/local 864700b23465687c7d3de7820341fa96e506e967b2Jens Axboebindir = $(prefix)/bin 87fc5c03455598ecb3250506e741c74bade0dae6d8Daniel Gollubmandir = $(prefix)/man 88fc5c03455598ecb3250506e741c74bade0dae6d8Daniel Gollub 89fc5c03455598ecb3250506e741c74bade0dae6d8Daniel Golluball: .depend $(PROGS) $(SCRIPTS) 9067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 9167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe.c.o: .depend 9267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe $(QUIET_CC)$(CC) -o $@ -c $(CFLAGS) $(CPPFLAGS) $< 939ad8da8217db155d2b48fe7bed91da794a71d071Jens Axboe 949ad8da8217db155d2b48fe7bed91da794a71d071Jens Axboet/stest: $(T_SMALLOC_OBJS) 959ad8da8217db155d2b48fe7bed91da794a71d071Jens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_SMALLOC_OBJS) $(LIBS) $(LDFLAGS) 9667bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 9767bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboet/ieee754: $(T_IEEE_OBJS) 9867bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(T_IEEE_OBJS) $(LIBS) $(LDFLAGS) 9967bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe 10067bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboefio: $(OBJS) 10167bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe $(QUIET_CC)$(CC) $(LDFLAGS) $(CFLAGS) -o $@ $(OBJS) $(LIBS) $(LDFLAGS) 1020e55d6b0b86bc0fe49cea1ecfec80518a988dc51chenh 1030e55d6b0b86bc0fe49cea1ecfec80518a988dc51chenh.depend: $(SOURCE) 104cb92c7fe546d7da2b982a13e2ad97fa991e16149chenh $(QUIET_DEP)$(CC) -MM $(CFLAGS) $(CPPFLAGS) $(SOURCE) 1> .depend 105cb92c7fe546d7da2b982a13e2ad97fa991e16149chenh 10654fe20ff2633b399e6965b6c5649166764ff546cchenh$(PROGS): .depend 10754fe20ff2633b399e6965b6c5649166764ff546cchenh 10854fe20ff2633b399e6965b6c5649166764ff546cchenhclean: 1090e55d6b0b86bc0fe49cea1ecfec80518a988dc51chenh -rm -f .depend $(OBJS) $(T_OBJS) $(PROGS) $(T_PROGS) core.* core 110d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran 11153cd4eee737f5d9a37d71ef23b42f74c016fcd2eAaron Carrollcscope: 11267bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboe @cscope -b -R 11342a80e374660c1cd108342bab7158670b6e3b7dcJens Axboe 11467bf982340d95ca98098ea050b54b4c7adb116c0Jens Axboeinstall: $(PROGS) $(SCRIPTS) 115213a01b0699d88b20dfb9ed78db1f293a85d2bdcJens Axboe $(INSTALL) -m 755 -d $(DESTDIR)$(bindir) 116d015e398e49f1c8d425906b8c1a3861ecc4d851aBruce Cran $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir) 11753cd4eee737f5d9a37d71ef23b42f74c016fcd2eAaron Carroll $(INSTALL) -m 755 -d $(DESTDIR)$(mandir)/man1 11842a80e374660c1cd108342bab7158670b6e3b7dcJens Axboe $(INSTALL) -m 644 fio.1 $(DESTDIR)$(mandir)/man1 11942a80e374660c1cd108342bab7158670b6e3b7dcJens Axboe $(INSTALL) -m 644 fio_generate_plots.1 $(DESTDIR)$(mandir)/man1 120ec5c6b125c1eab992882602158bab54957aa733dAaron Carroll 121ec5c6b125c1eab992882602158bab54957aa733dAaron Carrollifneq ($(wildcard .depend),) 122ec5c6b125c1eab992882602158bab54957aa733dAaron Carrollinclude .depend 12353cd4eee737f5d9a37d71ef23b42f74c016fcd2eAaron Carrollendif 1247366ad05740d4cbbe5b43daa3b9b9efe74df34b3Jens Axboe