iotivity 0.9.0
[platform/upstream/iotivity.git] / service / things-manager / sampleapp / linux / configuration / makefile
1 TGMROOT=../../../
2 IOT_BASE=${TGMROOT}../../resource
3 RST_NAME=.
4 TARGET1=con-server
5 TARGET2=con-client
6 TARGET3=bootstrapserver
7
8 OBJS = ConfigurationCollection.o DiagnosticsCollection.o FactorySetCollection.o con-server.o
9 SRCS = $(OBJS:.o=.c)
10
11 # C++ type Compile Flag define.
12 CXX=g++
13 CXX_FLAGS=-std=c++0x -Wall -pthread -DLINUX -ldl
14
15 CXX_INC := -I../../ -I../../inc/ -I../../../sdk/inc/ -I../../../sdk/src/
16 CXX_INC += -I${IOT_BASE}/include/
17 CXX_INC         += -I${IOT_BASE}/oc_logger/include
18 CXX_INC += -I${IOT_BASE}/csdk/stack/include
19 CXX_INC += -I${IOT_BASE}/csdk/ocsocket/include
20 CXX_INC += -I${IOT_BASE}/csdk/ocrandom/include
21 CXX_INC += -I${IOT_BASE}/csdk/logger/include
22 CXX_INC += -I${IOT_BASE}/dependencies/cereal/include
23
24 CXX_LIB=-L""
25
26 CXX_SRCPATH=${wildcard ../../src/*.cpp}
27 CXX_SRCLIST=${notdir ${CXX_SRCPATH}}
28 CXX_USESRCS=${filter-out ${EXCLUDE_LIST}, ${CXX_SRCLIST}}
29 CXX_OBJLIST=${CXX_USESRCS:.cpp=.o}
30
31
32 TGM = ../../
33 SDK = ${TGMROOT}sdk
34 TGM_INC = -I${TGMROOT}sdk/inc
35 SDK_LIB = ${TGMROOT}sdk/build/linux/libTGMSDKLibrary.a
36
37 LIB_OC_LOGGER := $(IOT_BASE)/oc_logger/lib/oc_logger.a
38
39 LD_LIB := $(IOT_BASE)/release/obj/liboc.a
40 LD_LIB += $(IOT_BASE)/csdk/linux/release/liboctbstack.a
41 LD_LIB += $(LIB_OC_LOGGER)
42
43
44 # Force metatargets to build:
45 .PHONY: all clean
46
47 all: ${TARGET1} ${TARGET2} ${TARGET3}
48
49 .cpp.o:
50         $(CXX) $(CXX_FLAGS) -c -o $@ $<  $(CXX_INC)  $(TGM_INC)
51
52 $(TARGET1): $(OBJS)
53         $(CXX) $(CXX_FLAGS) -o $@ ${OBJS} $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
54
55 ${TARGET2}: con-client.cpp
56         $(CXX) $(CXX_FLAGS) -o ${TARGET2} $<  $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
57
58 ${TARGET3}: bootstrapserver.cpp
59         $(CXX) $(CXX_FLAGS) -o ${TARGET3} $<  $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
60
61
62 dep:
63         gccmakedep $(SRCS)
64
65 clean:
66         rm -f -v *.o con-client
67         rm -f -v *.o con-server
68         rm -f -v *.o bootstrapserver
69
70 #dep:
71 #       gccmakedep $(SRCS)