Remove wheel submodule - will re-add later with new URL
[dmon:dmon.git] / Makefile
1 #
2 # Makefile
3 # Adrian Perez, 2010-07-28 00:44
4 #
5
6
7 CFLAGS  ?= -Os -g -Wall -W
8 DESTDIR ?=
9 prefix  ?= /usr/local
10
11 libwheel_PATH := wheel
12
13 MULTICALL ?= 1
14 LIBNOFORK ?= 0
15
16 MULTICALL := $(strip $(MULTICALL))
17 LIBNOFORK := $(strip $(LIBNOFORK))
18 ROTLOG    := $(strip $(ROTLOG))
19
20 ifeq ($(MULTICALL),0)
21   CPPFLAGS += -DNO_MULTICALL
22 endif
23
24 all: dmon dlog dslog drlog
25
26 libwheel_STDIO   := 0
27 libwheel_PTHREAD := 0
28 include $(libwheel_PATH)/Makefile.libwheel
29
30 dmon: dmon.o util.o task.o $(libwheel)
31
32
33 ifneq ($(LIBNOFORK),0)
34 all: libnofork.so
35 libnofork.so: CFLAGS += -fPIC
36 libnofork.so: nofork.o -lc
37         $(LD) $(LDFLAGS) -shared -o $@ $^
38 endif
39
40
41 ifneq ($(MULTICALL),0)
42 dmon: dlog.o dslog.o drlog.o multicall.o
43 dlog drlog dslog: dmon
44         ln -sf $< $@
45 else
46 dslog: dslog.o util.o $(libwheel)
47 drlog: drlog.o util.o $(libwheel)
48 dlog: dlog.o util.o $(libwheel)
49 endif
50
51 man: dmon.8 dlog.8 dslog.8 drlog.8
52
53 %.8: %.rst
54         rst2man $< $@
55
56 ifneq ($(MULTICALL),0)
57 strip: dmon
58 else
59 strip: dmon dslog drlog dlog
60 endif
61         strip -x --strip-unneeded $^
62
63
64 clean:
65         $(RM) dmon.o dlog.o dslog.o util.o multicall.o task.o drlog.o
66         $(RM) dmon dlog dslog drlog
67 ifneq ($(LIBNOFORK),0)
68         $(RM) libnofork.so nofork.o
69 endif
70
71 install: all
72         install -d $(DESTDIR)$(prefix)/share/man/man8
73         install -m 644 dmon.8 dlog.8 dslog.8 drlog.8 \
74                 $(DESTDIR)$(prefix)/share/man/man8
75         install -d $(DESTDIR)$(prefix)/bin
76 ifneq ($(LIBNOFORK),0)
77         install -d $(DESTDIR)$(prefix)/lib
78         install -m 644 libnofork.so \
79                 $(DESTDIR)$(prefix)/lib
80 endif
81 ifneq ($(MULTICALL),0)
82         install -m 755 dmon $(DESTDIR)$(prefix)/bin
83         ln -fs dmon $(DESTDIR)$(prefix)/bin/drlog
84         ln -fs dmon $(DESTDIR)$(prefix)/bin/dslog
85         ln -fs dmon $(DESTDIR)$(prefix)/bin/dlog
86 else
87         install -m 755 dmon dlog dslog drlog \
88                 $(DESTDIR)$(prefix)/bin
89 endif
90
91 .PHONY: man install strip
92
93 # vim:ft=make
94 #
95