0ee1e5ccbe04e1e49a62023fd3861a613bcaa72c
[platform/upstream/iotivity.git] / service / things-manager / sampleapp / linux / groupsyncaction / makefile
1
2 TGMROOT=../../../
3 IOT_BASE=${TGMROOT}../../resource
4 RST_NAME=.
5 TARGET1=group
6 TARGET2=phone
7 TARGET3=musicplayer
8 TARGET4=speaker
9 BUILD:=release
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)/$(BUILD)/obj/liboc.a
40 LD_LIB += $(IOT_BASE)/csdk/linux/$(BUILD)/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} ${TARGET4}
48
49 ${TARGET1}: ./group.cpp
50         $(CXX) $(CXX_FLAGS) -o ${TARGET1} ./group.cpp   $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
51
52 ${TARGET2}: ./phone.cpp
53         $(CXX) $(CXX_FLAGS) -o ${TARGET2} ./phone.cpp   $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
54
55 ${TARGET3}: ./musicplayer.cpp
56         $(CXX) $(CXX_FLAGS) -o ${TARGET3} ./musicplayer.cpp   $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
57
58 ${TARGET4}: ./speaker.cpp
59         $(CXX) $(CXX_FLAGS) -o ${TARGET4} ./speaker.cpp   $(CXX_INC)  ${LD_LIB} $(TGM_INC) $(SDK_LIB)
60
61 clean:
62         rm -f -v *.o ${TARGET1}
63         rm -f -v *.o ${TARGET2}
64         rm -f -v *.o ${TARGET3}
65         rm -f -v *.o ${TARGET4}