summaryrefslogtreecommitdiff
path: root/Makefile
blob: 7058b08898223d6578746da4b0b5f1a7a20488b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
CC=gcc
CFLAGS = -g -Wall -Werror
headers = radix-tree.h ctree.h disk-io.h kerncompat.h print-tree.h list.h \
	  transaction.h ioctl.h
objects = ctree.o disk-io.o radix-tree.o extent-tree.o print-tree.o \
	  root-tree.o dir-item.o hash.o file-item.o inode-item.o \
	  inode-map.o \
#
# if you don't have sparse installed, use ls instead
CHECKFLAGS=-D__linux__ -Dlinux -D__STDC__ -Dunix -D__unix__ -Wbitwise \
		-Wcontext -Wcast-truncate -Wuninitialized -Wshadow -Wundef
check=sparse $(CHECKFLAGS)
#check=ls

.c.o:
	$(check) $<
	$(CC) $(CFLAGS) -c $<

all: bit-radix-test tester debug-tree quick-test dir-test tags mkfs.btrfs \
	btrfsctl

btrfsctl: ioctl.h btrfsctl.o
	gcc $(CFLAGS) -o btrfsctl btrfsctl.o

mkfs.btrfs: $(objects) mkfs.o
	gcc $(CFLAGS) -o mkfs.btrfs $(objects) mkfs.o -luuid

bit-radix-test: $(objects) bit-radix.o
	gcc $(CFLAGS) -o bit-radix-test $(objects) bit-radix.o

debug-tree: $(objects) debug-tree.o
	gcc $(CFLAGS) -o debug-tree $(objects) debug-tree.o -luuid

tester: $(objects) random-test.o
	gcc $(CFLAGS) -o tester $(objects) random-test.o

dir-test: $(objects) dir-test.o
	gcc $(CFLAGS) -o dir-test $(objects) dir-test.o
quick-test: $(objects) quick-test.o
	gcc $(CFLAGS) -o quick-test $(objects) quick-test.o

$(objects): $(headers)

clean :
	rm debug-tree mkfs.btrfs btrfsctl *.o