]> git.proxmox.com Git - pve-cluster.git/blob - data/src/Makefile
buildsys: replace autotools with plain makefiles
[pve-cluster.git] / data / src / Makefile
1
2 DEPENDENCIES=libcpg libcmap libquorum libqb glib-2.0 fuse sqlite3 librrd
3
4 CC = gcc
5 CFLAGS += -std=gnu99
6 CFLAGS += -Wall -Werror -Wno-unknown-pragmas -Wno-strict-aliasing
7 CFLAGS += -g -O2 -Wl,-z,relro
8 CFLAGS += -I.
9 CFLAGS += $(shell pkg-config --cflags ${DEPENDENCIES})
10
11 LDFLAGS += $(shell pkg-config --libs ${DEPENDENCIES})
12
13 AR = ar
14 ARFLAGS = crs
15
16 .c.o:
17 $(CC) $(CFLAGS) -c -o $@ $<
18
19 all: pmxcfs create_pmxcfs_db logtest check_memdb
20
21 libpmxcfs.a: logger.o loop.o server.o status.o confdb.o quorum.o dcdb.o dfsm.o
22 libpmxcfs.a: cfs-plug.o cfs-plug-memdb.o cfs-plug-link.o cfs-plug-func.o
23 libpmxcfs.a: cfs-utils.o memdb.o database.o
24 libpmxcfs.a:
25 $(AR) $(ARFLAGS) $@ $^
26
27 pmxcfs: pmxcfs.o libpmxcfs.a
28 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
29
30
31 create_pmxcfs_db: create_pmxcfs_db.o libpmxcfs.a
32 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
33
34 logtest: logtest.o libpmxcfs.a
35 $(CC) $(CFLAGS) $(LDFLAGS) -o $@ $^
36
37 check_memdb: check_memdb.o libpmxcfs.a
38 $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(shell pkg-config --libs check)
39
40 pmxcfs.8:
41
42 export NOVIEW=1
43 -include /usr/share/pve-doc-generator/pve-doc-generator.mk
44
45 .PHONY: install
46 install: pmxcfs create_pmxcfs_db pmxcfs.8
47 install -D -m 0755 pmxcfs ${DESTDIR}/usr/bin/pmxcfs
48 install -D -m 0755 create_pmxcfs_db ${DESTDIR}/usr/bin/create_pmxcfs_db
49 install -D pmxcfs.8 ${DESTDIR}/usr/share/man/man8/pmxcfs.8
50
51 .PHONY: check
52 check: check_memdb
53 ./check_memdb
54
55 .PHONY: clean
56 clean:
57 rm -f *.o *.a pmxcfs create_pmxcfs_db check_memdb logtest pmxcfs.8