1 EXES=bonnie++ zcav 2 3 all: $(EXES) 4 5 SCRIPTS=bon_csv2html bon_csv2txt 6 7 prefix=/usr/local 8 eprefix=${prefix} 9 #MORE_WARNINGS=-Weffc++ -Wcast-align 10 WFLAGS=-Wall -W -Wshadow -Wpointer-arith -Wwrite-strings -pedantic -ffor-scope $(MORE_WARNINGS) 11 CFLAGS=-O2 -DNDEBUG $(WFLAGS) $(MORECFLAGS) 12 CXX=g++ $(CFLAGS) 13 14 INSTALL=/usr/bin/install -c 15 INSTALL_PROGRAM=${INSTALL} 16 17 BONSRC=bon_io.cpp bon_file.cpp bon_time.cpp semaphore.cpp forkit.cpp \ 18 bon_suid.cpp 19 BONOBJS=$(BONSRC:.cpp=.o) 20 21 MAN1=bon_csv2html.1 bon_csv2txt.1 22 MAN8=bonnie++.8 zcav.8 23 24 ZCAVSRC=bon_suid.cpp 25 ZCAVOBJS=$(ZCAVSRC:.cpp=.o) 26 27 ALLOBJS=$(BONOBJS) $(ZCAVOBJS) 28 29 bonnie++: bonnie++.cpp $(BONOBJS) 30 $(CXX) bonnie++.cpp -o bonnie++ $(BONOBJS) $(LFLAGS) 31 32 zcav: zcav.cpp $(ZCAVOBJS) 33 $(CXX) zcav.cpp -o zcav $(ZCAVOBJS) $(LFLAGS) 34 35 install-bin: $(EXES) 36 mkdir -p $(eprefix)/bin $(eprefix)/sbin 37 ${INSTALL} -s $(EXES) $(eprefix)/sbin 38 ${INSTALL} $(SCRIPTS) $(eprefix)/bin 39 40 install: install-bin 41 mkdir -p ${prefix}/share/man/man1 ${prefix}/share/man/man8 42 ${INSTALL} -m 644 $(MAN1) ${prefix}/share/man/man1 43 ${INSTALL} -m 644 $(MAN8) ${prefix}/share/man/man8 44 45 %.o: %.cpp %.h bonnie.h port.h 46 $(CXX) -c $< 47 48 bon_suid.o: bon_suid.cpp bonnie.h port.h 49 $(CXX) -c $< 50 51 clean: 52 rm -f $(EXES) $(ALLOBJS) build-stamp install-stamp 53 rm -rf debian/tmp core debian/*.debhelper 54 rm -f debian/{substvars,files} config.log 55 56 realclean: clean 57 rm -f config.* Makefile bonnie.h port.h bonnie++.spec bon_csv2html bon_csv2txt sun/pkginfo