#
# Version $Revision: 1.141 $
#
# The makefile for building all versions of iozone for all supported
# platforms
#
# Supports:	hpux, hpux_no_ansi, hpux-10.1, hpux_no_ansi-10.1,
#		sppux, sppux-10.1, ghpux, sppux, 
#		convex, FreeBSD, OpenBSD, OSFV3, OSFV4, OSFV5, SCO
#		SCO_Unixware_gcc,NetBSD,TRU64, Mac OS X

CC	= cc
C89	= c89
GCC	= gcc
CCS	= /usr/ccs/bin/cc
NACC	= /opt/ansic/bin/cc
CFLAGS	=
S10GCCFLAGS    = -m64
S10CCFLAGS     = -m64
FLAG64BIT      = -m64

# If your Linux kernel supports preadv and pwritev system calls 
# and you want iozone to use them, add -DHAVE_PREADV -DHAVE_PWRITEV
# to CFLAGS

all:  
	@echo ""
	@echo "You must specify the target.        "
	@echo "        ->   AIX                  (32bit)   <-"
	@echo "        ->   AIX-LF               (32bit)   <-"
	@echo "        ->   AIX64                (32bit)   <-"
	@echo "        ->   AIX64-LF             (32bit)   <-"
	@echo "        ->   bsdi                 (32bit)   <-" 
	@echo "        ->   convex               (32bit)   <-" 
	@echo "        ->   CrayX1               (32bit)   <-"
	@echo "        ->   dragonfly            (32bit)   <-"
	@echo "        ->   freebsd              (32bit)   <-"
	@echo "        ->   generic              (32bit)   <-"
	@echo "        ->   ghpux                (32bit)   <-"
	@echo "        ->   hpuxs-11.0 (simple)  (32bit)   <-"
	@echo "        ->   hpux-11.0w           (64bit)   <-"
	@echo "        ->   hpuxs-11.0w          (64bit)   <-"
	@echo "        ->   hpux-11.0            (32bit)   <-"
	@echo "        ->   hpux-10.1            (32bit)   <-"
	@echo "        ->   hpux-10.20           (32bit)   <-"
	@echo "        ->   hpux                 (32bit)   <-" 
	@echo "        ->   hpux_no_ansi         (32bit)   <-"
	@echo "        ->   hpux_no_ansi-10.1    (32bit)   <-"
	@echo "        ->   IRIX                 (32bit)   <-"
	@echo "        ->   IRIX64               (64bit)   <-"
	@echo "        ->   linux                (32bit)   <-"
	@echo "        ->   linux-arm            (32bit)   <-"
	@echo "        ->   linux-AMD64          (64bit)   <-"
	@echo "        ->   linux-ia64           (64bit)   <-"
	@echo "        ->   linux-powerpc        (32bit)   <-"
	@echo "        ->   linux-powerpc64      (64bit)   <-"
	@echo "        ->   linux-sparc          (32bit)   <-"
	@echo "        ->   macosx               (32bit)   <-"
	@echo "        ->   netbsd               (32bit)   <-"
	@echo "        ->   openbsd              (32bit)   <-"
	@echo "        ->   openbsd-threads      (32bit)   <-"
	@echo "        ->   OSFV3                (64bit)   <-"
	@echo "        ->   OSFV4                (64bit)   <-"
	@echo "        ->   OSFV5                (64bit)   <-"
	@echo "        ->   linux-S390           (32bit)   <-"
	@echo "        ->   linux-S390X          (64bit)   <-"
	@echo "        ->   SCO                  (32bit)   <-"
	@echo "        ->   SCO_Unixware_gcc     (32bit)   <-"
	@echo "        ->   Solaris              (32bit)   <-"
	@echo "        ->   Solaris-2.6          (32bit)   <-"
	@echo "        ->   Solaris7gcc          (32bit)   <-"
	@echo "        ->   Solaris8-64          (64bit)   <-"
	@echo "        ->   Solaris8-64-VXFS     (64bit)   <-"
	@echo "        ->   Solaris10            (32bit)   <-"
	@echo "        ->   Solaris10cc          (64bit)   <-"
	@echo "        ->   Solaris10gcc         (32bit)   <-"
	@echo "        ->   Solaris10gcc-64      (64bit)   <-"
	@echo "        ->   sppux                (32bit)   <-"
	@echo "        ->   sppux-10.1           (32bit)   <-"
	@echo "        ->   sppux_no_ansi-10.1   (32bit)   <-"
	@echo "        ->   SUA                  (32bit)   <-"
	@echo "        ->   TRU64                (64bit)   <-"
	@echo "        ->   UWIN                 (32bit)   <-"
	@echo "        ->   Windows (95/98/NT)   (32bit)   <-"
	@echo ""

clean:
	rm -f *.o iozone fileop pit_server

rpm:
	cp ../../iozone*.tar /usr/src/red*/SO*
	rpmbuild -ba spec.in


#
# Turn on the optimizer, largefiles, Posix async I/O and threads.
#
hpux-11.0:	iozone_hpux-11.0.o libasync.o libbif.o
	 $(CC) +O3 +Oparallel $(LDFLAGS) iozone_hpux-11.0.o libasync.o \
		libbif.o -lpthread -lrt -o iozone

#
# Turn on wide-mode, the optimizer, largefiles, Posix async I/O and threads.
#
hpux-11.0w:	iozone_hpux-11.0w.o libasyncw.o libbif.o
	 $(CC) +DD64 +O3 $(LDFLAGS) iozone_hpux-11.0w.o libasyncw.o \
		libbif.o -lpthread -lrt -o iozone


#
# Simple build with largefiles, Posix threads and Posix async I/O
#
hpuxs-11.0:	iozone_hpuxs-11.0.o libasync.o libbif.o fileop_hpuxs-11.0.o pit_server.o
	 $(CC) -O $(LDFLAGS)  iozone_hpuxs-11.0.o \
		libasync.o libbif.o -lpthread -lrt -o iozone
	 $(CC) -O $(LDFLAGS) fileop_hpuxs-11.0.o -o fileop
	 $(CC) -O $(LDFLAGS) pit_server.o -o pit_server

#
# Simple build with wide-mode, largefiles, Posix threads and Posix async I/O
#
hpuxs-11.0w:	iozone_hpuxs-11.0w.o libasyncw.o libbif.o
	 $(CC) -O +DD64 $(LDFLAGS) iozone_hpuxs-11.0w.o \
		libasyncw.o libbif.o -lpthread -lrt -o iozone

#
# Simple 10.1 build with no threads, no largefiles, no async I/O 
#
hpux-10.1:	iozone_hpux-10.1.o  libbif.o
	 $(C89) +e -O $(LDFLAGS) iozone_hpux-10.1.o libbif.o -o iozone

hpux-10.20:	iozone_hpux-10.20.o  libbif.o
	 $(C89) +e -O $(LDFLAGS) iozone_hpux-10.20.o libbif.o -o iozone

#
# Simple generic HP build with no threads, no largefiles, no async I/O 
#
hpux:	iozone_hpux.o 
	$(C89) +e -O $(LDFLAGS) iozone_hpux.o libbif.o -o iozone

#
# GNU HP build with no threads, no largefiles, no async I/O 
#
ghpux:	iozone_ghpux.o  libbif.o
	$(GCC) -O $(LDFLAGS) iozone_ghpux.o libbif.o -static -o iozone

#
# GNU Generic build with no threads, no largefiles, no async I/O 
#
generic:	iozone_generic.o  libbif.o
	$(CC)  -O $(LDFLAGS) iozone_generic.o libbif.o -o iozone

#
# No ansii 'C' compiler HP build with no threads, no largefiles, no async I/O 
#
hpux_no_ansi-10.1:	iozone_hpux_no-10.1.o  libbif.o 
	$(NACC)  -O $(LDFLAGS) iozone_hpux_no-10.1.o libbif.o -o iozone

#
# No ansii 'C' compiler HP build with no threads, no largefiles, no async I/O 
#
hpux_no_ansi:	iozone_hpux_no.o  libbif.o
	$(C89)  -O $(LDFLAGS) iozone_hpux_no.o libbif.o -o iozone

#
# GNU 'C' compiler Linux build with threads, largefiles, async I/O 
#
linux:	iozone_linux.o libasync.o libbif.o fileop_linux.o pit_server.o
	$(CC)  -O3 $(LDFLAGS) iozone_linux.o libasync.o libbif.o -lpthread \
		-lrt -o iozone
	$(CC)  -O3 -Dlinux fileop_linux.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O 
#
linux-powerpc: iozone_linux-powerpc.o  libbif.o libasync.o fileop_linux-ppc.o pit_server.o
	$(CC) -O3 $(LDFLAGS) iozone_linux-powerpc.o libasync.o \
		libbif.o -lpthread  -lrt -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-ppc.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server
#
# GNU 'C' compiler Linux build for sparc chip with threads, largefiles, async I/O 
#
linux-sparc: iozone_linux-sparc.o  libbif.o libasync.o fileop_linux.o pit_server.o
	$(CC) -O3 $(LDFLAGS) iozone_linux-sparc.o libasync.o libbif.o \
		-lpthread -lrt -o iozone
	$(CC) -O3 -Dlinux fileop_linux.o -o fileop
	$(CC) -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build with threads, largefiles, async I/O 
#
linux-ia64:	iozone_linux-ia64.o  libbif.o libasync.o fileop_linux-ia64.o pit_server.o
	$(CC) -O3 $(LDFLAGS) iozone_linux-ia64.o libbif.o libasync.o \
		-lrt -lpthread -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-ia64.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build for powerpc chip with threads, largefiles, async I/O 
#
linux-powerpc64: iozone_linux-powerpc64.o  libbif.o libasync.o fileop_linux-ppc64.o pit_server-linux-powerpc64.o
	$(CC) -O3 -Dunix -DHAVE_ANSIC_C -DSHARED_MEM -DASYNC_IO \
		-D_LARGEFILE64_SOURCE -Dlinux \
		iozone_linux-powerpc64.o libasync.o libbif.o -lpthread \
		-lrt $(FLAG64BIT) -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-ppc64.o $(FLAG64BIT) -o fileop
	$(CC)  -O3 -Dlinux pit_server-linux-powerpc64.o $(FLAG64BIT) -o pit_server
		
#
# GNU 'C' compiler Linux build with threads, largefiles, async I/O
#
linux-arm:	iozone_linux-arm.o  libbif.o libasync.o fileop_linux-arm.o pit_server.o
	$(CC) -O3 $(LDFLAGS) iozone_linux-arm.o libbif.o libasync.o \
		-lrt -lpthread -o iozone
	$(CC) -O3 -Dlinux fileop_linux-arm.o -o fileop
	$(CC) -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build with threads, largefiles, async I/O 
#
linux-AMD64:	iozone_linux-AMD64.o  libbif.o libasync.o fileop_linux-AMD64.o pit_server.o
	$(CC)  -O3 $(LDFLAGS) iozone_linux-AMD64.o libbif.o libasync.o \
		-lrt -lpthread -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-AMD64.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O
#
linux-S390:	iozone_linux-s390.o libbif.o libasync.o fileop_linux-s390.o pit_server.o
	$(CC)  -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390.o \
		libbif.o libasync.o -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-s390.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server

#
# GNU 'C' compiler Linux build with S/390, threads, largfiles, async I/O
#
linux-S390X:	iozone_linux-s390x.o libbif.o libasync.o fileop_linux-s390x.o pit_server.o
	$(CC)  -O2 $(LDFLAGS) -lpthread -lrt iozone_linux-s390x.o \
		libbif.o libasync.o -o iozone
	$(CC)  -O3 -Dlinux fileop_linux-s390x.o -o fileop
	$(CC)  -O3 -Dlinux pit_server.o -o pit_server


# 
# AIX
# I would have built with ASYNC_IO but the AIX machine does not have 
# POSIX 1003.1b compliant async I/O header files.  Has threads, no
# largefile support.
# 
AIX:	iozone_AIX.o  libbif.o  fileop_AIX.o
	$(CC)  -O $(LDFLAGS) iozone_AIX.o libbif.o \
		-lpthreads -o iozone
	$(CC)  -O -Dlinux fileop_AIX.o -o fileop

# 
# AIX-LF
# I would have built with ASYNC_IO but the AIX machine does not have 
# POSIX 1003.1b compliant async I/O header files.  Has threads, and
# largefile support.
# 
AIX-LF:	iozone_AIX-LF.o  libbif.o   fileop_AIX-LF.o pit_server.o
	$(CC)  -O $(LDFLAGS) iozone_AIX-LF.o libbif.o \
		-lpthreads -o iozone
	$(CC)  -O fileop_AIX-LF.o -o fileop
	$(CC)  -O pit_server.o -o pit_server

# AIX64
# This version uses the 64 bit interfaces and is compiled as 64 bit code.
# Has threads, async I/O but no largefile support.
#
AIX64:        iozone_AIX64.o libbif.o fileop_AIX64.o libasync.o pit_server.o
	$(GCC) -maix64 -O3 $(LDFLAGS) iozone_AIX64.o libasync.o \
              libbif.o -lpthreads -o iozone
	$(GCC) -maix64 -O3 $(LDFLAGS) -Dlinux fileop_AIX64.o -o fileop
	$(GCC) -maix32 -O3 $(LDFLAGS) pit_server.o -o pit_server

#
# AIX64-LF
# This version uses the 64 bit interfaces and is compiled as 64 bit code.
# Has threads, async I/O and largefile support.
#
AIX64-LF:     iozone_AIX64-LF.o libbif.o fileop_AIX64-LF.o libasync.o pit_server.o
	$(GCC) -maix64 -O3 $(LDFLAGS) iozone_AIX64-LF.o libasync.o \
              libbif.o -lpthreads -o iozone
	$(GCC) -maix64 -O3 $(LDFLAGS) -Dlinux fileop_AIX64-LF.o -o fileop
	$(GCC) -maix32 -O3 $(LDFLAGS) pit_server.o -o pit_server

#
# IRIX 32 bit build with threads, largefiles, async I/O 
# This would like to be in 64 bit mode but it hangs whenever in 64 bit mode.
# This version uses the 64 bit interfaces but is compiled as 32 bit code
#
IRIX64:	iozone_IRIX64.o libasyncw.o libbif.o 
	$(CC)   -32 -O $(LDFLAGS) iozone_IRIX64.o libbif.o \
		-lpthread libasyncw.o -o iozone

#
# IRIX 32 bit build with threads, No largefiles, and async I/O 
# This version uses the 32 bit interfaces and is compiled as 32 bit code
#
IRIX:	iozone_IRIX.o libasync.o libbif.o
	$(CC)  -O  -32 $(LDFLAGS) iozone_IRIX.o libbif.o -lpthread \
		libasync.o -o iozone

#
# CrayX1: 32 bit build with threads, No largefiles, and async I/O 
# This version uses the 32 bit interfaces and is compiled as 32 bit code
#
CrayX1:	iozone_CrayX1.o libasync.o libbif.o
	$(CC)  -O  $(LDFLAGS) iozone_CrayX1.o libbif.o \
		-lpthread libasyncw.o -o iozone

#
# SPP-UX 32 bit build with threads, No largefiles, and No async I/O, 
# pread extensions
# For older SPP-UX machines with 9.05 compatibility
#
sppux:	iozone_sppux.o  libbif.o
	$(NACC)  -O $(LDFLAGS) iozone_sppux.o  libbif.o \
	-Wl,+parallel -lcnx_syscall -lpthread -lail -o iozone

#
# SPP-UX 32 bit build with threads, No largefiles, and No async I/O, pread 
# extensions
# For Newer SPP-UX machines with 10.01 compatibility
#
sppux-10.1:	iozone_sppux-10.1.o libbif.o
	$(NACC) -O $(LDFLAGS) iozone_sppux-10.1.o libbif.o \
	 -lcnx_syscall  -Wl,+parallel -lpthread -lail -o iozone

#
# SPP-UX 32 bit build with threads, No largefiles, and No async I/O, pread 
# extensions
# For Newer SPP-UX machines with 10.01 compatibility, and no ansi 'C' compiler.
#
sppux_no_ansi-10.1:	iozone_sppux_no-10.1.o libbif.o
	$(CCS)  -O $(LDFLAGS) iozone_sppux_no-10.1.o libbif.o \
		-Wl,+parallel -lcnx_syscall  \
		-lpthread -lail -o iozone

#
# Convex 'C' series 32 bit build with No threads, No largefiles, and No async I/O
#
convex:	iozone_convex.o libbif.o
	$(CC) -O $(LDFLAGS)iozone_convex.o libbif.o -o iozone

#
# Solaris 32 bit build with threads, largefiles, and async I/O
#
Solaris:	iozone_solaris.o libasync.o libbif.o fileop_Solaris.o pit_server.o
	$(CC)  -O $(LDFLAGS) iozone_solaris.o libasync.o libbif.o \
		-lthread -lpthread -lposix4 -lnsl -laio -lsocket \
		-o iozone
	$(CC)  -O fileop_Solaris.o -o fileop
	$(CC)  -O pit_server.o -lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o pit_server

#
# Solaris 32 bit build with threads, largefiles, and async I/O
#
Solaris7gcc:	iozone_solaris7gcc.o libasync7.o libbif7.o 
	$(GCC)  -O $(LDFLAGS) iozone_solaris7gcc.o libasync7.o libbif7.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone
#
# Solaris 32 bit build with threads, largefiles, and async I/O
#
Solaris10:	iozone_solaris10.o libasync10.o libbif10.o fileop_Solaris10.o pit_server.o
	$(CC)  -O $(LDFLAGS) iozone_solaris10.o libasync10.o libbif10.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone
	$(CC)  -O fileop_Solaris10.o -o fileop
	$(CC)  -O pit_server.o -lthread -lpthread -lposix4 -lnsl -laio \
                -lsocket -o pit_server

#
# Solaris 32 bit build with threads, largefiles, and async I/O
#
Solaris10cc:	iozone_solaris10cc.o libasync10cc.o libbif10cc.o fileop_Solaris10cc.o pit_server.o
	$(CC)  -O $(LDFLAGS) iozone_solaris10cc.o libasync10cc.o libbif10cc.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone
	$(CC)  -O fileop_Solaris10cc.o -o fileop
	$(CC)  -O pit_server.o -lthread -lpthread -lposix4 -lnsl -laio \
                -lsocket -o pit_server

#
# Solaris 32 bit build with threads, largefiles, and async I/O
#
Solaris10gcc:	iozone_solaris10gcc.o libasync10.o libbif10.o fileop_Solaris10gcc.o pit_server_solaris10gcc.o
	$(GCC)  -O $(LDFLAGS) iozone_solaris10gcc.o libasync10.o libbif10.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone
	$(GCC)  -O fileop_Solaris10gcc.o -o fileop
	$(GCC)  -O pit_server_solaris10gcc.o -lthread -lpthread -lposix4 -lnsl -laio \
                -lsocket -o pit_server

#
# Solaris 64 bit build with threads, largefiles, and async I/O
#
Solaris10gcc-64:	iozone_solaris10gcc-64.o libasync10-64.o libbif10-64.o fileop_Solaris10gcc-64.o pit_server_solaris10gcc-64.o
	$(GCC)  -O $(LDFLAGS) $(S10GCCFLAGS) iozone_solaris10gcc-64.o libasync10-64.o libbif10-64.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone
	$(GCC)  -O $(S10GCCFLAGS) fileop_Solaris10gcc-64.o -o fileop
	$(GCC)  -O $(S10GCCFLAGS) pit_server_solaris10gcc-64.o -lthread -lpthread -lposix4 \
		-lnsl -laio -lsocket -o pit_server


#
# Solaris 64 bit build with threads, largefiles, and async I/O
#
Solaris10cc-64:	iozone_solaris10cc-64.o libasync10-64.o libbif10-64.o fileop_Solaris10cc-64.o pit_server.o
	$(CC)  -O $(LDFLAGS) $(S10CCFLAGS) iozone_solaris10cc-64.o libasync10-64.o libbif10-64.o \
              -lthread -lpthread -lposix4 -lnsl -laio \
              -lsocket -o iozone
	$(CC)  -O $(S10CCFLAGS) fileop_Solaris10cc-64.o -o fileop
	$(CC)  -O $(S10CCFLAGS) pit_server.o -lthread -lpthread -lposix4 \
		-lnsl -laio -lsocket -o pit_server



#
# Solaris 2.6 (32 bit) build with no threads, no largefiles, and no async I/O
#
Solaris-2.6:	iozone_solaris-2.6.o libbif.o 
	$(CC)  -O $(LDFLAGS) iozone_solaris-2.6.o libbif.o \
		-lnsl -laio -lsocket -o iozone

#
# Solaris 64 bit build with threads, largefiles, and async I/O
#
Solaris8-64: iozone_solaris8-64.o libasync.o libbif.o
	$(CC) $(LDFLAGS) -fast -xtarget=generic64 -v iozone_solaris8-64.o \
		libasync.o libbif.o -lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone

#
# Solaris 64 bit build with threads, largefiles, async I/O, and Vxfs
#
Solaris8-64-VXFS: iozone_solaris8-64-VXFS.o libasync.o libbif.o
	$(CC) $(LDFLAGS) -fast -xtarget=generic64 -v -I/opt/VRTSvxfs/include/ 
		iozone_solaris8-64-VXFS.o libasync.o libbif.o \
		-lthread -lpthread -lposix4 -lnsl -laio \
		-lsocket -o iozone

#
# Windows build requires Cygwin development environment. You
# can get this from www.cygwin.com
# No largefiles, No async I/O
#
Windows:	iozone_windows.o libbif.o fileop_windows.o pit_server_win.o
	$(GCC) -O $(LDFLAGS) iozone_windows.o libbif.o -o iozone
	$(GCC) -O $(LDFLAGS) fileop_windows.o -o fileop
	$(GCC) -O $(LDFLAGS) pit_server_win.o -o pit_server

#
# Windows build requires SUA development environment. You
# can get this from Microsoft
# No largefiles, No async I/O
#
SUA:	iozone_sua.o libbif.o fileop_sua.o pit_server_sua.o
	$(GCC) -O $(LDFLAGS) iozone_sua.o libbif.o -o iozone
	$(GCC) -O $(LDFLAGS) fileop_sua.o -o fileop
	$(GCC) -O $(LDFLAGS) pit_server_sua.o -o pit_server

#
# Uwin build requires UWIN development environment. 
# No threads, No largefiles, No async I/O
#
UWIN:	iozone_uwin.o libbif.o
	$(GCC) -O $(LDFLAGS) iozone_uwin.o libbif.o -o iozone

#
# GNU C compiler BSD/OS build with threads, largefiles, no async I/O
#

bsdi:	iozone_bsdi.o libbif.o fileop_bsdi.o pit_server.o
	$(CC) -O $(LDFLAGS) iozone_bsdi.o libbif.o -o iozone
	$(CC) -O fileop_bsdi.o -o fileop
	$(CC) -O pit_server.o -o pit_server

#
# GNU C compiler FreeBSD build with no threads, no largefiles, no async I/O
#

freebsd:	iozone_freebsd.o libbif.o fileop_freebsd.o libasync.o pit_server.o
	$(CC) $(LDFLAGS) iozone_freebsd.o libbif.o -lpthread libasync.o \
		-o iozone
	$(CC)  -O fileop_freebsd.o -o fileop
	$(CC)  -O pit_server.o -o pit_server

#
# GNU C compiler DragonFly build with no threads, no largefiles
#
dragonfly:	iozone_dragonfly.o libbif.o fileop_dragonfly.o pit_server.o
	$(CC) $(LDFLAGS) iozone_dragonfly.o libbif.o -o iozone
	$(CC)  -O fileop_dragonfly.o -o fileop
	$(CC)  -O pit_server.o -o pit_server

#
# GNU C compiler MacosX build with no threads, no largefiles, no async I/O
#

macosx:	iozone_macosx.o fileop_macosx.o pit_server.o
	$(CC) -O $(LDFLAGS) iozone_macosx.o libbif.o -o iozone
	$(CC) -O $(LDFLAGS) fileop_macosx.o -o fileop
	$(CC) -O $(LDFLAGS) pit_server.o -o pit_server
#
#
# GNU C compiler OpenBSD build with no threads, no largefiles, no async I/O
#

openbsd:	iozone_openbsd.o libbif.o fileop_openbsd.o pit_server.o
	$(CC) -O $(LDFLAGS) iozone_openbsd.o libbif.o -o iozone
	$(CC)  -O fileop_openbsd.o -o fileop
	$(CC)  -O pit_server.o -o pit_server

#
# GNU C compiler OpenBSD build with threads, no largefiles, no async I/O
#

openbsd-threads:	iozone_openbsd-threads.o libbif.o
	$(CC) -O $(LDFLAGS) -pthread iozone_openbsd-threads.o \
		libbif.o -o iozone

#
# GNU C compiler OSFV3 build 
# Has threads and async I/O but no largefiles.
#

OSFV3:	iozone_OSFV3.o libbif.o libasync.o
	$(CC) -O $(LDFLAGS) iozone_OSFV3.o libbif.o \
		-lpthreads libasync.o -laio -o iozone

#
# GNU C compiler OSFV4 build 
# Has threads and async I/O but no largefiles.
#

OSFV4:	iozone_OSFV4.o libbif.o libasync.o
	$(CC) -O $(LDFLAGS) iozone_OSFV4.o libbif.o -lpthread \
		libasync.o -laio -o iozone

#
# GNU C compiler OSFV5 build 
# Has threads and async I/O but no largefiles.
#

OSFV5:	iozone_OSFV5.o libbif.o libasync.o
	$(CC) -O $(LDFLAGS) iozone_OSFV5.o libbif.o -lpthread \
		libasync.o -laio -o iozone

#
# GNU C compiler TRU64 build 
# Has threads and async I/O but no largefiles.
#

TRU64:	iozone_TRU64.o libbif.o libasync.o
	$(CC) -O $(LDFLAGS) iozone_TRU64.o libbif.o -lpthread \
		libasync.o -laio -o iozone

#
# GNU Generic build with no threads, no largefiles, no async I/O
# for SCO
# Note:	Be sure you have the latest patches for SCO's Openserver
# or you will get warnings about timer problems.
#

SCO:	iozone_SCO.o  libbif.o
	$(GCC) -O $(LDFLAGS) iozone_SCO.o -lsocket -s libbif.o -o iozone


#
# GNU build with threads, largefiles, async I/O
# for SCO Unixware 5 7.1.1 i386 x86at SCO UNIX SVR5
# Note: Be sure you have the latest patches for SCO's Openserver
# or you will get warnings about timer problems.
#

SCO_Unixware_gcc:	iozone_SCO_Unixware_gcc.o  libbif.o libasync.o
	$(GCC) -O $(LDFLAGS) iozone_SCO_Unixware_gcc.o libbif.o libasync.o \
		-lsocket -lthread -o iozone

#
# GNU C compiler NetBSD build with no threads, no largefiles, no async I/O
#

netbsd:	iozone_netbsd.o  libbif.o fileop_netbsd.o pit_server.o
	$(CC) -O $(LDFLAGS) iozone_netbsd.o libbif.o -o iozone
	$(CC) -O fileop_netbsd.o -o fileop
	$(CC) -O pit_server.o -o pit_server

#
#
# Now for the machine specific stuff
#

iozone_hpux.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (9.05)"
	@echo ""
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"hpux"' $(CFLAGS) iozone.c  -o iozone_hpux.o
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		$(CFLAGS) libbif.c -o libbif.o

iozone_hpux-11.0.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (11.0)"
	@echo ""
	$(CC) -c +O3 +Oparallel -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DNAME='"hpux-11.0"' -DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) \
		iozone.c  -o iozone_hpux-11.0.o
	$(CC) -c  +O3 +Oparallel -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libasync.c  -o libasync.o
	$(CC) -c  +O3 +Oparallel -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libbif.c  -o libbif.o

iozone_hpux-11.0w.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (11.0w)"
	@echo ""
	$(CC) -c +DD64 +O3 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
	    -DNAME='"hpux-11.0w"' -DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) iozone.c \
	     -o iozone_hpux-11.0w.o
	$(CC) -c +DD64 +O3 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libasync.c  -o libasyncw.o
	$(CC) -c +DD64 +O3 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libbif.c  -o libbif.o

iozone_hpuxs-11.0.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building simple iozone for HP-UX (11.0)"
	@echo ""
	$(CC) -c  -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE -DHAVE_ANSIC_C \
		-DNAME='"hpuxs-11.0"' -DASYNC_IO -DVXFS -DHAVE_PREAD $(CFLAGS) iozone.c  \
		-o iozone_hpuxs-11.0.o
	$(CC) -c  -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE -DHAVE_ANSIC_C \
		-DASYNC_IO  -DVXFS $(CFLAGS) libasync.c  -o libasync.o 
	$(CC) -c  -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE -DHAVE_ANSIC_C \
		-DASYNC_IO -DVXFS $(CFLAGS) libbif.c  -o libbif.o 

fileop_hpuxs-11.0.o:	fileop.c
	@echo ""
	@echo "Building simple fileop for HP-UX (11.0)"
	@echo ""
	$(CC) -c  $(CFLAGS) fileop.c  -o fileop_hpuxs-11.0.o 

pit_server_solaris10gcc-64.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server"
	@echo ""
	$(CC) -c  $(CFLAGS) $(S10GCCFLAGS) pit_server.c  -o pit_server_solaris10gcc-64.o 

pit_server.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server"
	@echo ""
	$(CC) -c  $(CFLAGS) pit_server.c  -o pit_server.o 

pit_server-linux-powerpc64.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server"
	@echo ""
	$(CC) -c  $(CFLAGS) $(FLAG64BIT) pit_server.c -o pit_server-linux-powerpc64.o 

pit_server_solaris10gcc.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server"
	@echo ""
	$(GCC) -c  $(CFLAGS) pit_server.c -o pit_server_solaris10gcc.o 


pit_server_win.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server for Windows"
	@echo ""
	$(GCC) -c  $(CFLAGS) -DWindows pit_server.c  -o pit_server_win.o 

pit_server_sua.o:	pit_server.c
	@echo ""
	@echo "Building the pit_server for Windows SUA"
	@echo ""
	$(GCC) -c  $(CFLAGS) -D_SUA_ pit_server.c  -o pit_server_sua.o 

iozone_hpuxs-11.0w.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building simple iozone for HP-UX (11.0w)"
	@echo ""
	$(CC) -c +DD64 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DNAME='"hpuxs-11.0w"' -DHAVE_ANSIC_C -DASYNC_IO -DVXFS \
		-DHAVE_PREAD $(CFLAGS) iozone.c  -o iozone_hpuxs-11.0w.o
	$(CC) -c +DD64 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libasync.c  -o libasyncw.o 
	$(CC) -c +DD64 -Dunix -D_LARGEFILE64_SOURCE  -D_HPUX_SOURCE \
		-DHAVE_ANSIC_C -DASYNC_IO -DVXFS $(CFLAGS) libbif.c  -o libbif.o 

iozone_hpux-10.1.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (10.1)"
	@echo ""
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"hpux-10.1"' $(CFLAGS) iozone.c  -o iozone_hpux-10.1.o
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		$(CFLAGS) libbif.c  -o libbif.o

iozone_hpux-10.20.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (10.20)"
	@echo ""
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"hpux-10.20"' $(CFLAGS) iozone.c  -o iozone_hpux-10.20.o
	$(C89) +e -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		$(CFLAGS) libbif.c  -o libbif.o

iozone_ghpux.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for GCC HP-UX (9.05) "
	@echo ""
	$(GCC) -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS $(CFLAGS) iozone.c \
		-DNAME='"h=ghpux"' -o iozone_ghpux.o
	$(GCC) -c -O -Dunix -D_HPUX_SOURCE -DHAVE_ANSIC_C -DNO_THREADS \
		$(CFLAGS) libbif.c -o libbif.o

iozone_generic.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone Generic "
	@echo ""
	$(CC) -c -O -Dgeneric -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"Generic"' $(CFLAGS) iozone.c -o iozone_generic.o
	$(CC) -c -O -Dgeneric -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
		$(CFLAGS) libbif.c -o libbif.o

iozone_hpux_no.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for HP-UX (9.05) without ansi compiler"
	@echo ""
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -DNO_THREADS iozone.c \
		-DNAME='"hpux_no_ansi"' -o iozone_hpux_no.o
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -DNO_THREADS \
		libbif.c -o libbif.o

iozone_hpux_no-10.1.o:	iozone.c
	@echo ""
	@echo "Building iozone for HP-UX (10.1) without ansi compiler"
	@echo ""
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -DNO_THREADS iozone.c \
		-DNAME='"hpux_no_ansi_10.1"' -o iozone_hpux_no-10.1.o
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -DNO_THREADS \
		libbif.c -o libbif.o

iozone_linux-powerpc.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux PowerPC"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DDONT_HAVE_O_DIRECT \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-DNAME='"linux-powerpc"' -o iozone_linux-powerpc.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 

iozone_linux-powerpc64.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux PowerPC64"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DNAME='"linux-powerpc64"' \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		$(FLAG64BIT) -o iozone_linux-powerpc64.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c $(FLAG64BIT) -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c $(FLAG64BIT) -o libasync.o 
		

iozone_linux-sparc.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux Sparc"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DDONT_HAVE_O_DIRECT \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-DNAME='"linux-sparc"' -o iozone_linux-sparc.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 

iozone_linux.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux"
	@echo ""
	$(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-DNAME='"linux"' -o iozone_linux.o
	$(CC) -Wall -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -Wall -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 

fileop_AIX.o:	fileop.c
	@echo ""
	@echo "Building fileop for AIX"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_AIX.o

fileop_AIX-LF.o:	fileop.c
	@echo ""
	@echo "Building fileop for AIX-LF"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_AIX-LF.o

fileop_AIX64.o:       fileop.c
	@echo ""
	@echo "Building fileop for AIX64"
	@echo ""
	$(GCC) -maix64 -c -O3 $(CFLAGS) fileop.c -o fileop_AIX64.o

fileop_AIX64-LF.o:    fileop.c
	@echo ""
	@echo "Building fileop for AIX64-LF"
	@echo ""
	$(GCC) -maix64 -c -O3 $(CFLAGS) fileop.c -o fileop_AIX64-LF.o

fileop_bsdi.o:	fileop.c
	@echo ""
	@echo "Building fileop for BSDi"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_bsdi.o

fileop_freebsd.o:	fileop.c
	@echo ""
	@echo "Building fileop for FreeBSD"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_freebsd.o

fileop_netbsd.o:	fileop.c
	@echo ""
	@echo "Building fileop for NetBSD"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_netbsd.o

fileop_Solaris.o:	fileop.c
	@echo ""
	@echo "Building fileop for Solaris"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_Solaris.o

fileop_Solaris10.o:	fileop.c
	@echo ""
	@echo "Building fileop for Solaris10"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_Solaris10.o

fileop_Solaris10cc.o: fileop.c
	@echo ""
	@echo "Building fileop for Solaris10cc"
	@echo ""
	$(CC) -c -O $(CFLAGS) fileop.c -o fileop_Solaris10cc.o


fileop_Solaris10gcc.o:	fileop.c
	@echo ""
	@echo "Building fileop for Solaris10gcc"
	@echo ""
	$(GCC) -c -O $(CFLAGS) fileop.c -o fileop_Solaris10gcc.o

fileop_Solaris10gcc-64.o:	fileop.c
	@echo ""
	@echo "Building fileop for Solaris10gcc-64"
	@echo ""
	$(GCC) -c -O $(CFLAGS) $(S10GCCFLAGS) fileop.c -o fileop_Solaris10gcc-64.o

fileop_Solaris10cc-64.o:      fileop.c
	@echo ""
	@echo "Building fileop for Solaris10cc-64"
	@echo ""
	$(CC) -c -O $(CFLAGS) $(S10CCFLAGS) fileop.c -o fileop_Solaris10cc-64.o


fileop_linux.o:	fileop.c
	@echo ""
	@echo "Building fileop for Linux"
	@echo ""
	$(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux.o

fileop_openbsd.o:	fileop.c
	@echo ""
	@echo "Building fileop for OpenBSD"
	@echo ""
	$(CC) -Wall -c -O $(CFLAGS) fileop.c -o fileop_openbsd.o

fileop_macosx.o:	fileop.c
	@echo ""
	@echo "Building fileop for MAC OS X"
	@echo ""
	$(CC) -Wall -c -O -Dmacosx $(CFLAGS) fileop.c -o fileop_macosx.o

fileop_linux-ia64.o:	fileop.c
	@echo ""
	@echo "Building fileop for Linux-ia64"
	@echo ""
	$(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-ia64.o

fileop_linux-ppc.o:	fileop.c
	@echo ""
	@echo "Building fileop for Linux-powerpc"
	@echo ""
	$(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-ppc.o

fileop_linux-ppc64.o:	fileop.c
	@echo ""
	@echo "Building fileop for Linux-powerpc64"
	@echo ""
	$(CC) -Wall -c -O3 $(CFLAGS) $(FLAG64BIT) fileop.c -o fileop_linux-ppc64.o

fileop_linux-AMD64.o:	fileop.c
	@echo ""
	@echo "Building fileop for Linux-AMD64"
	@echo ""
	$(CC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-AMD64.o

fileop_linux-arm.o:  fileop.c
	@echo ""
	@echo "Building fileop for Linux-arm"
	@echo ""
	$(GCC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-arm.o

fileop_linux-s390.o:  fileop.c
	@echo ""
	@echo "Building fileop for Linux-S390"
	@echo ""
	$(GCC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-s390.o

fileop_linux-s390x.o:  fileop.c
	@echo ""
	@echo "Building fileop for Linux-s390x"
	@echo ""
	$(GCC) -Wall -c -O3 $(CFLAGS) fileop.c -o fileop_linux-s390x.o

fileop_windows.o: fileop.c
	@echo ""
	@echo "Building fileop for Windows"
	@echo ""
	$(GCC) -Wall -c -O3 $(CFLAGS) -DWindows fileop.c -o fileop_windows.o

fileop_sua.o: fileop.c
	@echo ""
	@echo "Building fileop for Windows SUA"
	@echo ""
	$(GCC) -Wall -c -O3 $(CFLAGS) -D_SUA_ fileop.c -o fileop_sua.o

iozone_linux-ia64.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux-ia64"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DNAME='"linux-ia64"' \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-o iozone_linux-ia64.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 

iozone_linux-arm.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux-arm"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
		-DNAME='"linux-arm"' -DLINUX_ARM -DSHARED_MEM \
		-Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-o iozone_linux-arm.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o

iozone_linux-AMD64.o:	iozone.c libbif.c libasync.c 
	@echo ""
	@echo "Building iozone for Linux-AMD64"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DNAME='"linux-AMD64"' \
		-D__AMD64__ -DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE \
		-DHAVE_PREAD $(CFLAGS) iozone.c -o iozone_linux-AMD64.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DSHARED_MEM -Dlinux $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c  -o libasync.o 

iozone_linux-s390.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux-s390"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-DNAME='"linux-s390"' -o iozone_linux-s390.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DSHARED_MEM -Dlinux \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c -o libasync.o

iozone_linux-s390x.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for Linux-s390x"
	@echo ""
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DHAVE_PREAD \
		-DSHARED_MEM -Dlinux -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c \
		-DNAME='"linux-s390x"' -o iozone_linux-s390x.o
	$(CC) -c -O3 -Dunix -DHAVE_ANSIC_C -DSHARED_MEM -Dlinux \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libbif.c -o libbif.o
	$(CC) -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c -o libasync.o


iozone_AIX.o:	iozone.c libbif.c 
	@echo ""
	@echo "Building iozone for AIX"
	@echo ""
	$(CC) -c -O -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C  \
		-DNAME='"AIX"' -DSHARED_MEM  $(CFLAGS) iozone.c -o iozone_AIX.o
	$(CC) -c -O -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C  \
		-DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o

iozone_AIX-LF.o:	iozone.c libbif.c 
	@echo ""
	@echo "Building iozone for AIX with Large files"
	@echo ""
	$(CC) -c -O -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C  \
		-DSHARED_MEM  -D_LARGEFILE64_SOURCE -D_LARGE_FILES \
		-DNAME='"AIX-LF"' $(CFLAGS) iozone.c -o iozone_AIX-LF.o
	$(CC) -c -O -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C  \
		-DSHARED_MEM -D_LARGEFILE64_SOURCE -D_LARGE_FILES \
		$(CFLAGS) libbif.c -o libbif.o

iozone_AIX64.o:       iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for AIX64"
	@echo ""
	$(GCC) -maix64 -c -O3 -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C \
              -DASYNC_IO -DNAME='"AIX64"' -DSHARED_MEM \
              $(CFLAGS) iozone.c -o iozone_AIX64.o
	$(GCC) -maix64 -c -O3 -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C \
              -DASYNC_IO -DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o
	$(GCC) -maix64 -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
              $(CFLAGS) libasync.c -o libasync.o

iozone_AIX64-LF.o:    iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone for AIX64 with Large files"
	@echo ""
	$(GCC) -maix64 -c -O3 -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C \
              -DASYNC_IO -DNAME='"AIX64-LF"' -DSHARED_MEM \
              -D_LARGEFILE64_SOURCE -D_LARGE_FILES \
              $(CFLAGS) iozone.c -o iozone_AIX64-LF.o
	$(GCC) -maix64 -c -O3 -D__AIX__ -D_NO_PROTO -Dunix -DHAVE_ANSIC_C \
              -DASYNC_IO -DSHARED_MEM -D_LARGEFILE64_SOURCE -D_LARGE_FILES \
              $(CFLAGS) libbif.c -o libbif.o
	$(GCC) -maix64 -c -O3 -Dunix -Dlinux -DHAVE_ANSIC_C -DASYNC_IO \
              -D_LARGEFILE64_SOURCE -D_LARGE_FILES \
              $(CFLAGS) libasync.c -o libasync.o

iozone_solaris.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris"
	@echo ""
	$(CC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		-DNAME='"Solaris"' $(CFLAGS) iozone.c -o iozone_solaris.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		$(CFLAGS) libasync.c -o libasync.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		$(CFLAGS) libbif.c -o libbif.o

iozone_solaris7gcc.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris7gcc"
	@echo ""
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		-DNAME='"Solaris7gcc"' $(CFLAGS) libasync.c -o libasync7.o
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		$(CFLAGS) libbif.c -o libbif7.o
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		-DNAME='"Solaris7gcc"' $(CFLAGS) iozone.c -o iozone_solaris7gcc.o

iozone_solaris10.o:  iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris10"
	@echo ""
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        $(CFLAGS) libbif.c -o libbif10.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        -DNAME='"Solaris10"' $(CFLAGS) libasync.c -o libasync10.o
	$(CC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO -Dstudio11 \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        -DNAME='"Solaris10"' $(CFLAGS) iozone.c -o iozone_solaris10.o

iozone_solaris10cc.o:  iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris10cc"
	@echo ""
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        $(CFLAGS) libbif.c -o libbif10cc.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        -DNAME='"Solaris10"' $(CFLAGS) libasync.c -o libasync10cc.o
	$(CC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO -Dstudio11 \
	        -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
	        -DNAME='"Solaris10"' $(CFLAGS) iozone.c -o iozone_solaris10cc.o

iozone_solaris10gcc.o:  iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris10gcc"
	@echo ""
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                $(CFLAGS) libbif.c -o libbif10.o
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                -DNAME='"Solaris10gcc"' $(CFLAGS) libasync.c -o libasync10.o
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                -DNAME='"Solaris10gcc"' $(CFLAGS) iozone.c -o iozone_solaris10gcc.o

iozone_solaris10gcc-64.o:  iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris10gcc-64"
	@echo ""
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                $(CFLAGS) $(S10GCCFLAGS) libbif.c -o libbif10-64.o
	$(GCC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                -DNAME='"Solaris10gcc-64"' $(CFLAGS) $(S10GCCFLAGS) libasync.c -o libasync10-64.o
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
                -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
                -DNAME='"Solaris10gcc-64"' $(CFLAGS) $(S10GCCFLAGS) iozone.c -o iozone_solaris10gcc-64.o

iozone_solaris10cc-64.o:  iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris10cc-64"
	@echo ""
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		$(CFLAGS) $(S10CCFLAGS) libbif.c -o libbif10-64.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D__LP64__ \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		-DNAME='"Solaris10cc-64"' $(CFLAGS) $(S10CCFLAGS) libasync.c -o libasync10-64.o
	$(CC) -c -O -Dunix -DHAVE_ANSIC_C -DASYNC_IO -Dstudio11 \
		-D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Dsolaris \
		-DNAME='"Solaris10cc-64"' $(CFLAGS) $(S10CCFLAGS) iozone.c -o iozone_solaris10cc-64.o


#
#		-DSHARED_MEM -Dsolaris libasync.c -o libasync.o
#		-DSHARED_MEM -Dsolaris iozone.c -o iozone_solaris.o
#

iozone_solaris-2.6.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris-2.6"
	@echo ""
	$(CC) -c -O -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"Solaris-2.6"' -Dsolaris  $(CFLAGS) iozone.c -o iozone_solaris-2.6.o
	$(CC) -O -c  -Dunix -DHAVE_ANSIC_C \
		-Dsolaris $(CFLAGS) libbif.c -o libbif.o

iozone_solaris8-64.o: iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris8-64"
	@echo ""
	$(CC) -fast -xtarget=generic64 -v -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-DNAME='"Solaris8-64"' -Dsolaris -DHAVE_PREAD \
		$(CFLAGS) iozone.c -o iozone_solaris8-64.o
	$(CC) -fast -xtarget=generic64 -v -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-Dsolaris -DHAVE_PREAD $(CFLAGS) libasync.c -o libasync.o
	$(CC) -fast -xtarget=generic64 -v -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-Dsolaris -DHAVE_PREAD $(CFLAGS) libbif.c -o libbif.o

iozone_solaris8-64-VXFS.o: iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for Solaris8-64-VXFS"
	@echo ""
	$(CC) -fast -xtarget=generic64 -v -c -I/opt/VRTSvxfs/include/ -Dunix \
		-DVXFS -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-DNAME='"Solaris8-64"' -Dsolaris -DHAVE_PREAD \
		$(CFLAGS) iozone.c -o iozone_solaris8-64-VXFS.o
	$(CC) -fast -xtarget=generic64 -v -c  -I/opt/VRTSvxfs/include/ -Dunix \
		-DVXFS -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-Dsolaris -DHAVE_PREAD $(CFLAGS) libasync.c -o libasync.o
	$(CC) -fast -xtarget=generic64 -v -c -I/opt/VRTSvxfs/include/ -Dunix \
		-DVXFS -DHAVE_ANSIC_C -DASYNC_IO \
		-D__LP64__ -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 \
		-Dsolaris -DHAVE_PREAD $(CFLAGS) libbif.c -o libbif.o

iozone_windows.o:	iozone.c libasync.c libbif.c fileop.c
	@echo ""
	@echo "Building iozone for Windows (No async I/O)"
	@echo ""
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -DNO_MADVISE  \
		-DWindows $(CFLAGS) -DDONT_HAVE_O_DIRECT iozone.c \
		-o iozone_windows.o
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -DNO_MADVISE \
		-DWindows $(CFLAGS) libbif.c -o libbif.o


#		-D_SUA_ $(CFLAGS) -DDONT_HAVE_O_DIRECT iozone.c \

iozone_sua.o:	iozone.c libasync.c libbif.c fileop.c
	@echo ""
	@echo "Building iozone for Windows SUA (No async I/O)"
	@echo ""
	$(GCC) -c -O -Dunix -DHAVE_ANSIC_C -D_XOPEN_SOURCE -DNO_MADVISE  \
		-D_SUA_ $(CFLAGS) iozone.c \
		-DNAME='"Windows SUA"' -o iozone_sua.o
	$(GCC) -c -O -Dunix -D_SUA_ -D_XOPEN_SOURCE -DHAVE_ANSIC_C \
		-DNO_MADVISE $(CFLAGS) libbif.c -o libbif.o

iozone_uwin.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for UWIN (No threads, No async I/O)"
	@echo ""
	$(GCC) -c -O -DUWIN -Dunix -DHAVE_ANSIC_C -DNO_THREADS  -DNO_MADVISE \
		-DNAME='"UWIN"' -DSHARED_MEM -DWindows $(CFLAGS) iozone.c -o iozone_uwin.o
	$(GCC) -c -O -DUWIN -Dunix -DHAVE_ANSIC_C -DNO_THREADS  -DNO_MADVISE \
		-DSHARED_MEM -DWindows $(CFLAGS) libbif.c -o libbif.o

iozone_IRIX64.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for IRIX64"
	@echo ""
	$(CC) -32 -O -c  -Dunix -DHAVE_ANSIC_C -D_LARGEFILE64_SOURCE -DASYNC_IO \
		-DNAME='"IRIX64"' -DIRIX64 -DSHARED_MEM $(CFLAGS) iozone.c -o iozone_IRIX64.o
	$(CC) -32 -O -c  -Dunix -DHAVE_ANSIC_C -D_LARGEFILE64_SOURCE -DASYNC_IO \
		-DIRIX64 -DSHARED_MEM $(CFLAGS) libasync.c -o libasyncw.o
	$(CC) -32 -O -c  -Dunix -DHAVE_ANSIC_C -D_LARGEFILE64_SOURCE -DASYNC_IO \
		-DIRIX64 -DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o

iozone_IRIX.o:	iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for IRIX"
	@echo ""
	$(CC)  -O -32 -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-DNAME='"IRIX"' -DIRIX -DSHARED_MEM $(CFLAGS) iozone.c -o iozone_IRIX.o
	$(CC)  -O -32 -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-DIRIX -DSHARED_MEM $(CFLAGS) libasync.c -o libasync.o
	$(CC)  -O -32 -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO \
		-DIRIX -DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o

iozone_CrayX1.o: iozone.c libasync.c libbif.c
	@echo ""
	@echo "Building iozone for CrayX1"
	@echo ""
	$(CC)  -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DNAME='"CrayX1"' -DIRIX64 -DSHARED_MEM -D__CrayX1__ \
		$(CFLAGS) iozone.c -o iozone_CrayX1.o
	$(CC)  -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DIRIX64 -DSHARED_MEM -D__CrayX1__ \
		$(CFLAGS) libasync.c -o libasyncw.o
	$(CC)  -O -c  -Dunix -DHAVE_ANSIC_C -DASYNC_IO -D_LARGEFILE64_SOURCE \
		-DIRIX64 -DSHARED_MEM -D__CrayX1__ $(CFLAGS) libbif.c \
		-o libbif.o

iozone_sppux.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for SPP-UX using Convex compiler"
	@echo ""
	$(NACC) -c  -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-DNAME='"sppux"' -Wl,+parallel -DHAVE_ANSIC_C -DHAVE_PREAD \
		-DHAVE_PREADV $(CFLAGS) iozone.c -o iozone_sppux.o
	$(NACC) -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-Wl,+parallel -DHAVE_ANSIC_C -DHAVE_PREAD -DHAVE_PREADV \
		$(CFLAGS) libbif.c -o libbif.o

iozone_sppux-10.1.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for SPP-UX using HP ansic compiler"
	@echo ""
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-DHAVE_ANSIC_C -DHAVE_PREAD -DHAVE_PREADV $(CFLAGS) iozone.c \
		 -DNAME='"sppux-10.1"' -Wl,+parallel -o iozone_sppux-10.1.o
	$(NACC) -c -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-DHAVE_ANSIC_C -DHAVE_PREAD -DHAVE_PREADV \
		$(CFLAGS) libbif.c -Wl,+parallel -o libbif.o

iozone_sppux_no-10.1.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for SPP-UX no ANSI c compiler"
	@echo ""
	$(CCS) -c -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-DNAME='"sppux_no_ansi_10.1"' -Wl,+parallel -DHAVE_PREAD \
		-DHAVE_PREADV $(CFLAGS) iozone.c -o iozone_sppux_no-10.1.o
	$(CCS) -c -O -Dunix -D_HPUX_SOURCE -D__convex_spp \
		-Wl,+parallel -DHAVE_PREAD -DHAVE_PREADV $(CFLAGS) \
		libbif.c -o libbif.o

iozone_convex.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone for Convex 'C' series"
	@echo ""
		$(CC) -c -O -Dunix -DNO_THREADS -Dbsd4_2 $(CFLAGS) iozone.c \
			-DNAME='"Convex"' -o iozone_convex.o 
		$(CC) -c -O -Dunix -DNO_THREADS -Dbsd4_2 \
			$(CFLAGS) libbif.c -o libbif.o 

iozone_bsdi.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for BSD/OS"
	@echo ""
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C \
		-DNAME='"bsdi"' $(CFLAGS) iozone.c -o iozone_bsdi.o
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C \
		$(CFLAGS) libbif.c -o libbif.o

iozone_freebsd.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Build iozone for FreeBSD"
	@echo ""
	$(CC) -c ${CFLAGS}  -DFreeBSD -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DASYNC_IO \
		-DHAVE_PREAD -DNAME='"freebsd"' -DSHARED_MEM \
		$(CFLAGS) iozone.c -o iozone_freebsd.o
	$(CC) -c ${CFLAGS} -DFreeBSD -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DASYNC_IO \
		-DSHARED_MEM -DHAVE_PREAD $(CFLAGS) libbif.c \
		-o libbif.o
	$(CC) -c ${CFLAGS} -DFreeBSD -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DASYNC_IO \
		-DSHARED_MEM -DHAVE_PREAD $(CFLAGS) libasync.c \
		-o libasync.o

iozone_dragonfly.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for DragonFly"
	@echo ""
	$(CC) -c ${CFLAGS}  -D__DragonFly__ -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"dragonfly"' -DSHARED_MEM -DHAVE_PREAD -DHAVE_PREADV \
		$(CFLAGS) iozone.c -o iozone_dragonfly.o
	$(CC) -c ${CFLAGS} -D__DragonFly__ -Dunix -DHAVE_ANSIC_C -DNO_THREADS \
		-DSHARED_MEM -DHAVE_PREAD -DHAVE_PREADV $(CFLAGS) libbif.c \
		-o libbif.o

iozone_macosx.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for MacOSX"
	@echo ""
	$(CC) -c -O -Dunix -Dbsd4_2 -Dmacosx -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"macosx"' -DSHARED_MEM $(CFLAGS) iozone.c -o iozone_macosx.o
	$(CC) -c -O -Dunix -Dbsd4_2 -Dmacosx -DHAVE_ANSIC_C -DNO_THREADS \
		-DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o

iozone_openbsd.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for OpenBSD"
	@echo ""
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"openbsd"' -DSHARED_MEM $(CFLAGS) iozone.c -o iozone_openbsd.o
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DNO_THREADS \
		-DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o

iozone_openbsd-threads.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for OpenBSD with threads"
	@echo ""
	$(CC) -c -O -pthread -Dunix -Dbsd4_4 -DHAVE_ANSIC_C \
		-DNAME='"openbsd-threads"' $(CFLAGS) iozone.c \
		-o iozone_openbsd-threads.o
	$(CC) -c -O -pthread -Dunix -Dbsd4_4 -DHAVE_ANSIC_C \
		$(CFLAGS) libbif.c -o libbif.o

iozone_OSFV3.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for OSFV3"
	@echo ""
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV3 \
		-DNAME='"OSFV3"' -DNO_PRINT_LLD -DOSF_64 $(CFLAGS) iozone.c \
		-o iozone_OSFV3.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV3 \
		-DNO_PRINT_LLD  -DOSF_64 $(CFLAGS) libbif.c -o libbif.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV3 \
		-DNO_PRINT_LLD -DOSF_64 $(CFLAGS) libasync.c -o libasync.o

iozone_OSFV4.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for OSFV4"
	@echo ""
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV4 \
		-DNAME='"OSFV4"' -DNO_PRINT_LLD -DOSF_64 $(CFLAGS) iozone.c \
		-o iozone_OSFV4.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV4 \
		-DNO_PRINT_LLD  -DOSF_64 $(CFLAGS) libbif.c -o libbif.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV4 \
		-DNO_PRINT_LLD -DOSF_64 $(CFLAGS) libasync.c -o libasync.o

iozone_OSFV5.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for OSFV5"
	@echo ""
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 \
		-DNAME='"OSFV5"' -DNO_PRINT_LLD -DOSF_64 $(CFLAGS) iozone.c \
		-o iozone_OSFV5.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 \
		-DNO_PRINT_LLD  -DOSF_64 $(CFLAGS) libbif.c -o libbif.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 \
		-DNO_PRINT_LLD -DOSF_64 $(CFLAGS) libasync.c -o libasync.o

iozone_TRU64.o:	iozone.c libbif.c
	@echo ""
	@echo "Build iozone for TRU64"
	@echo ""
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 -DTRU64 -DHAVE_PREAD \
		-DNAME='"TRU64"' -DNO_PRINT_LLD -DOSF_64 -pthread $(CFLAGS) iozone.c \
		-o iozone_TRU64.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 -DHAVE_PREAD \
		-DNO_PRINT_LLD  -DOSF_64 $(CFLAGS) libbif.c -o libbif.o
	$(CC) -O -c -Dunix -DHAVE_ANSIC_C -DASYNC_IO -DOSFV5 -DHAVE_PREAD \
		-DNO_PRINT_LLD -DOSF_64 $(CFLAGS) libasync.c -o libasync.o

iozone_SCO.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone SCO "
	@echo ""
	$(GCC) -c -O -DSCO -Dunix -DHAVE_ANSIC_C -DNO_THREADS -DNO_MADVISE \
		-DNAME='"SCO"' $(CFLAGS) iozone.c -o iozone_SCO.o
	$(GCC) -c -O -DSCO -Dunix -DHAVE_ANSIC_C -DNO_THREADS -DNO_MADVISE \
		$(CFLAGS) libbif.c -o libbif.o

iozone_SCO_Unixware_gcc.o:	iozone.c libbif.c libasync.c
	@echo ""
	@echo "Building iozone SCO_Unixware_gcc "
	@echo ""
	$(GCC) -c -O -DSCO_Unixware_gcc -Dunix -DHAVE_ANSIC_C  \
		-DASYNC_IO -D_LARGEFILE64_SOURCE $(CFLAGS) iozone.c  \
		-DNAME='"SCO_Unixware_gcc"' -o iozone_SCO_Unixware_gcc.o
	$(GCC) -c -O -DSCO_Unixware_gcc -Dunix -DHAVE_ANSIC_C  \
		-DASYNC_IO -D_LARGEFILE64_SOURCE $(CFLAGS) libbif.c -o libbif.o
	$(GCC) -c -O -DSCO_Unixware_gcc -Dunix -DHAVE_ANSIC_C  \
		-DASYNC_IO -D_LARGEFILE64_SOURCE $(CFLAGS) libasync.c -o libasync.o

iozone_netbsd.o:	iozone.c libbif.c
	@echo ""
	@echo "Building iozone NetBSD "
	@echo ""
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DNO_THREADS \
		-DNAME='"netbsd"' -DSHARED_MEM $(CFLAGS) iozone.c -o iozone_netbsd.o
	$(CC) -c -O -Dunix -Dbsd4_4 -DHAVE_ANSIC_C -DNO_THREADS \
		-DSHARED_MEM $(CFLAGS) libbif.c -o libbif.o
