| 1 | CC = gcc |
| 2 | CFLAGS = -Wall -O2 -g -W |
| 3 | ALL_CFLAGS = $(CFLAGS) -D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 |
| 4 | PROGS = blkparse blktrace verify_blkparse blkrawverify |
| 5 | LIBS = -lpthread |
| 6 | SCRIPTS = btrace |
| 7 | |
| 8 | all: depend $(PROGS) $(SCRIPTS) |
| 9 | |
| 10 | %.o: %.c |
| 11 | $(CC) -o $*.o -c $(ALL_CFLAGS) $< |
| 12 | |
| 13 | blkparse: blkparse.o blkparse_fmt.o rbtree.o act_mask.o |
| 14 | $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) |
| 15 | |
| 16 | blktrace: blktrace.o act_mask.o $(LIBS) |
| 17 | $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) $(LIBS) |
| 18 | |
| 19 | verify_blkparse: verify_blkparse.o |
| 20 | $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) |
| 21 | |
| 22 | blkrawverify: blkrawverify.o |
| 23 | $(CC) $(ALL_CFLAGS) -o $@ $(filter %.o,$^) |
| 24 | |
| 25 | docs: |
| 26 | $(MAKE) -C doc all |
| 27 | |
| 28 | docsclean: |
| 29 | $(MAKE) -C doc clean |
| 30 | |
| 31 | depend: |
| 32 | @$(CC) -MM $(ALL_CFLAGS) *.c 1> .depend |
| 33 | |
| 34 | INSTALL = install |
| 35 | prefix = /usr/local |
| 36 | bindir = $(prefix)/bin |
| 37 | RPMBUILD = rpmbuild |
| 38 | TAR = tar |
| 39 | |
| 40 | export prefix INSTALL TAR |
| 41 | |
| 42 | dist: btrace.spec |
| 43 | git-tar-tree HEAD btrace-1.0 > btrace-1.0.tar |
| 44 | @mkdir -p btrace-1.0 |
| 45 | @cp btrace.spec btrace-1.0 |
| 46 | $(TAR) rf btrace-1.0.tar btrace-1.0/btrace.spec |
| 47 | @rm -rf btrace-1.0 |
| 48 | @bzip2 btrace-1.0.tar |
| 49 | |
| 50 | rpm: dist |
| 51 | $(RPMBUILD) -ta btrace-1.0.tar.bz2 |
| 52 | |
| 53 | clean: docsclean |
| 54 | -rm -f *.o $(PROGS) .depend btrace-1.0.tar.bz2 |
| 55 | |
| 56 | install: $(PROGS) $(SCRIPTS) |
| 57 | $(INSTALL) -m755 -d $(DESTDIR)$(bindir) |
| 58 | $(INSTALL) $(PROGS) $(SCRIPTS) $(DESTDIR)$(bindir) |
| 59 | |
| 60 | ifneq ($(wildcard .depend),) |
| 61 | include .depend |
| 62 | endif |