~ubuntu-branches/ubuntu/trusty/dlm/trusty

« back to all changes in this revision

Viewing changes to dlm_controld/Makefile

  • Committer: Package Import Robot
  • Author(s): Andres Rodriguez
  • Date: 2013-07-23 15:50:10 UTC
  • Revision ID: package-import@ubuntu.com-20130723155010-khpwf6vc04wjho2a
Tags: upstream-4.0.1
ImportĀ upstreamĀ versionĀ 4.0.1

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
DESTDIR=
 
2
PREFIX=/usr
 
3
LIBNUM=/lib64
 
4
BINDIR=$(PREFIX)/sbin
 
5
LIBDIR=$(PREFIX)/$(LIBNUM)
 
6
HDRDIR=$(PREFIX)/include 
 
7
MANDIR=$(PREFIX)/share/man
 
8
 
 
9
USE_SD_NOTIFY=yes
 
10
 
 
11
BIN_TARGET = dlm_controld
 
12
 
 
13
LIB_NAME = libdlmcontrol
 
14
LIB_MAJOR = 3
 
15
LIB_MINOR = 1
 
16
LIB_SO = $(LIB_NAME).so
 
17
LIB_SMAJOR = $(LIB_SO).$(LIB_MAJOR)
 
18
LIB_TARGET = $(LIB_SO).$(LIB_MAJOR).$(LIB_MINOR)
 
19
 
 
20
BIN_SOURCE = action.c \
 
21
             cpg.c \
 
22
             daemon_cpg.c \
 
23
             crc.c \
 
24
             fence_config.c \
 
25
             fence.c \
 
26
             main.c \
 
27
             plock.c \
 
28
             config.c \
 
29
             member.c \
 
30
             logging.c \
 
31
             rbtree.c
 
32
LIB_SOURCE = lib.c
 
33
 
 
34
BIN_CFLAGS += -D_GNU_SOURCE -O2 -ggdb \
 
35
        -Wall \
 
36
        -Wformat \
 
37
        -Wformat-security \
 
38
        -Wmissing-prototypes \
 
39
        -Wnested-externs \
 
40
        -Wpointer-arith \
 
41
        -Wextra -Wshadow \
 
42
        -Wcast-align \
 
43
        -Wwrite-strings \
 
44
        -Waggregate-return \
 
45
        -Wstrict-prototypes \
 
46
        -Winline \
 
47
        -Wredundant-decls \
 
48
        -Wno-sign-compare \
 
49
        -Wno-unused-parameter \
 
50
        -Wp,-D_FORTIFY_SOURCE=2 \
 
51
        -fexceptions \
 
52
        -fasynchronous-unwind-tables \
 
53
        -fdiagnostics-show-option \
 
54
 
 
55
BIN_CFLAGS += -fPIE -DPIE
 
56
BIN_CFLAGS += -I../include -I../libdlm
 
57
 
 
58
BIN_LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
 
59
BIN_LDFLAGS += -lpthread -lrt -lcpg -lcmap -lcfg -lquorum
 
60
 
 
61
LIB_CFLAGS += $(BIN_CFLAGS)
 
62
LIB_LDFLAGS += -Wl,-z,relro -pie
 
63
 
 
64
ifeq ($(USE_SD_NOTIFY),yes)
 
65
        BIN_CFLAGS += $(shell pkg-config --cflags libsystemd-daemon) \
 
66
                      -DUSE_SD_NOTIFY
 
67
        BIN_LDFLAGS += $(shell pkg-config --libs libsystemd-daemon)
 
68
endif
 
69
 
 
70
all: $(LIB_TARGET) $(BIN_TARGET)
 
71
 
 
72
$(BIN_TARGET): $(BIN_SOURCE)
 
73
        $(CC) $(BIN_SOURCE) $(BIN_CFLAGS) $(BIN_LDFLAGS) -o $@ -L.
 
74
 
 
75
$(LIB_TARGET): $(LIB_SOURCE)
 
76
        $(CC) $^ $(LIB_CFLAGS) $(LIB_LDFLAGS) -shared -fPIC -o $@ -Wl,-soname=$(LIB_SMAJOR)
 
77
        ln -sf $(LIB_TARGET) $(LIB_SO)
 
78
        ln -sf $(LIB_TARGET) $(LIB_SMAJOR)
 
79
 
 
80
clean:
 
81
        rm -f *.o *.so *.so.* $(BIN_TARGET) $(LIB_TARGET)
 
82
 
 
83
 
 
84
INSTALL=$(shell which install)
 
85
 
 
86
.PHONY: install
 
87
install: all
 
88
        $(INSTALL) -d $(DESTDIR)/$(BINDIR)
 
89
        $(INSTALL) -d $(DESTDIR)/$(LIBDIR)
 
90
        $(INSTALL) -d $(DESTDIR)/$(HDRDIR)
 
91
        $(INSTALL) -d $(DESTDIR)/$(MANDIR)/man8
 
92
        $(INSTALL) -d $(DESTDIR)/$(MANDIR)/man5
 
93
        $(INSTALL) -m 755 $(BIN_TARGET) $(DESTDIR)/$(BINDIR)
 
94
        $(INSTALL) -m 755 $(LIB_TARGET) $(DESTDIR)/$(LIBDIR)
 
95
        cp -a $(LIB_SO) $(DESTDIR)/$(LIBDIR)
 
96
        cp -a $(LIB_SMAJOR) $(DESTDIR)/$(LIBDIR)
 
97
        $(INSTALL) -m 644 libdlmcontrol.h $(DESTDIR)/$(HDRDIR)
 
98
        $(INSTALL) -m 644 dlm_controld.8 $(DESTDIR)/$(MANDIR)/man8/
 
99
        $(INSTALL) -m 644 dlm.conf.5 $(DESTDIR)/$(MANDIR)/man5/
 
100