forked from mesos/mesos
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Makefile.in
124 lines (99 loc) · 3.31 KB
/
Makefile.in
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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
# Makefile.
SHELL = '/bin/sh'
BINDIR = @top_builddir@/bin
LIBDIR = @top_builddir@/lib
CONFDIR = @top_builddir@/conf
DEPLOYDIR = @top_builddir@/deploy
OS_NAME = @OS_NAME@
MESOS_HOME = @prefix@/mesos
WITH_INCLUDED_ZOOKEEPER = @WITH_INCLUDED_ZOOKEEPER@
LIBPROCESS = third_party/libprocess
ZOOKEEPER = third_party/zookeeper-3.3.1/src/c
GLOG = third_party/glog-0.3.1
GMOCK = third_party/gmock-1.5.0
default: all
src: third_party
$(MAKE) -C src
third_party:
$(MAKE) -C $(LIBPROCESS)
$(MAKE) -C $(GLOG)
$(MAKE) -C $(GMOCK)
ifeq ($(WITH_INCLUDED_ZOOKEEPER),1)
$(MAKE) -C $(ZOOKEEPER)
endif
install:
if test ! -d $(MESOS_HOME)/bin; \
then mkdir -p $(MESOS_HOME)/bin; \
fi
if test ! -d $(MESOS_HOME)/lib; \
then mkdir -p $(MESOS_HOME)/lib; \
fi
if test ! -d $(MESOS_HOME)/lib/java; \
then mkdir -p $(MESOS_HOME)/lib/java; \
fi
if test ! -d $(MESOS_HOME)/lib/python; \
then mkdir -p $(MESOS_HOME)/lib/python; \
fi
if test ! -d $(MESOS_HOME)/conf; \
then mkdir -p $(MESOS_HOME)/conf; \
fi
if test ! -d $(MESOS_HOME)/deploy; \
then mkdir -p $(MESOS_HOME)/deploy; \
fi
install -m 755 $(BINDIR)/mesos-master $(MESOS_HOME)/bin
install -m 755 $(BINDIR)/mesos-slave $(MESOS_HOME)/bin
install -m 755 $(BINDIR)/mesos-local $(MESOS_HOME)/bin
install -m 755 $(BINDIR)/mesos-launcher $(MESOS_HOME)/bin
install -m 755 $(BINDIR)/mesos-getconf $(MESOS_HOME)/bin
rsync -avz $(BINDIR)/webui $(MESOS_HOME)/bin
rsync -avz $(DEPLOYDIR) $(MESOS_HOME)
install -m 755 $(LIBDIR)/libmesos_exec.a $(MESOS_HOME)/lib
install -m 755 $(LIBDIR)/libmesos_sched.a $(MESOS_HOME)/lib
ifeq ($(OS_NAME),darwin)
install -m 755 $(LIBDIR)/libmesos.dylib $(MESOS_HOME)/lib
install -m 755 $(LIBDIR)/java/libmesos.dylib $(MESOS_HOME)/lib/java
else
install -m 755 $(LIBDIR)/libmesos.so $(MESOS_HOME)/lib
install -m 755 $(LIBDIR)/java/libmesos.so $(MESOS_HOME)/lib/java
endif
install -m 755 $(LIBDIR)/java/mesos.jar $(MESOS_HOME)/lib/java
install -m 755 $(LIBDIR)/python/_mesos.so $(MESOS_HOME)/lib/python
install -m 755 $(LIBDIR)/python/mesos.py $(MESOS_HOME)/lib/python
uninstall:
$(error unimplemented)
dist:
$(error unimplemented)
distclean:
$(MAKE) -C src clean
$(MAKE) -C $(LIBPROCESS) distclean
$(MAKE) -C $(GLOG) distclean
$(MAKE) -C $(GMOCK) distclean
ifeq ($(WITH_INCLUDED_ZOOKEEPER),1)
$(MAKE) -C $(ZOOKEEPER) distclean
endif
doxygen:
doxygen
etags:
find src -name "*.cpp" -o -name "*.hpp" | grep -v "\~$$" | xargs etags -o src/TAGS
CTAGS = ctags
ctags:
cd src; $(CTAGS) ../include/*.h ../include/*.hpp *.h *.c *.hpp *.cpp
#TODO(*): make the above use conditionals to handle old-school UNIX style ctags too.
#cd src; ctags --typedefs-and-c++ -I -members --declarations ../include/*.h ../include/*.c ../include/*.hpp ../include/*.cpp -o tags
# To use scope from the command line with file generated by csope below (cscope.out),
# run: cscope -R. In vim, you do :chdir MESOS_HOME, then :cscope add cscope.out, see
# also http://cscope.sourceforge.net/cscope_vim_tutorial.html
cscope:
find * -name *.hpp -o -name *.cpp -o -name *.c -o -name *.h | cscope -b -i -
test: all
$(MAKE) -C src test
all: src
clean:
$(MAKE) -C src clean
$(MAKE) -C $(LIBPROCESS) clean
$(MAKE) -C $(GLOG) clean
$(MAKE) -C $(GMOCK) clean
ifeq ($(WITH_INCLUDED_ZOOKEEPER),1)
$(MAKE) -C $(ZOOKEEPER) clean
endif
.PHONY: default src third_party install uninstall dist test all clean