1 # //******************************************************************
3 # // Copyright 2014 Intel Mobile Communications GmbH All Rights Reserved.
5 # //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
7 # // Licensed under the Apache License, Version 2.0 (the "License");
8 # // you may not use this file except in compliance with the License.
9 # // You may obtain a copy of the License at
11 # // http://www.apache.org/licenses/LICENSE-2.0
13 # // Unless required by applicable law or agreed to in writing, software
14 # // distributed under the License is distributed on an "AS IS" BASIS,
15 # // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # // See the License for the specific language governing permissions and
17 # // limitations under the License.
19 # //-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
21 # override with `make BUILD=release`
22 # default to release build
26 OUT_DIR := $(PWD)/$(BUILD)
28 CXX_FLAGS.debug := -O0 -g3 -std=c++0x -Wall -pthread
30 CXX_FLAGS.release := -O3 -std=c++0x -Wall -pthread
32 CXX_INC := -I../include/
33 CXX_INC += -I../oc_logger/include
35 CXX_INC += -I../csdk/stack/include
36 CXX_INC += -I../csdk/ocsocket/include
37 CXX_INC += -I../csdk/ocrandom/include
38 CXX_INC += -I../csdk/logger/include
39 CXX_INC += -I../csdk/libcoap
41 LIB_OC_LOGGER := ../oc_logger/lib/oc_logger.a
43 CXX_LIBS := ../$(BUILD)/obj/liboc.a ../csdk/$(BUILD)/liboctbstack.a $(LIB_OC_LOGGER)
47 APPS += simpleclientserver
50 APPS += presenceserver
51 APPS += presenceclient
56 # Force metatargets to build:
57 .PHONY: prep_dirs oc_cpp_sdk $(APPS)
61 apps: prep_dirs $(APPS)
67 cd ../ && $(MAKE) cpp_sdk "BUILD=$(BUILD)"
69 simpleserver: simpleserver.cpp
70 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ simpleserver.cpp $(CXX_INC) $(CXX_LIBS)
72 simpleclient: simpleclient.cpp
73 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ simpleclient.cpp $(CXX_INC) $(CXX_LIBS)
75 fridgeserver: fridgeserver.cpp
76 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ fridgeserver.cpp $(CXX_INC) $(CXX_LIBS)
78 fridgeclient: fridgeclient.cpp
79 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ fridgeclient.cpp $(CXX_INC) $(CXX_LIBS)
81 presenceserver: presenceserver.cpp
82 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ presenceserver.cpp $(CXX_INC) $(CXX_LIBS)
84 presenceclient: presenceclient.cpp
85 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ presenceclient.cpp $(CXX_INC) $(CXX_LIBS)
87 simpleclientserver: simpleclientserver.cpp
88 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ simpleclientserver.cpp $(CXX_INC) $(CXX_LIBS)
90 roomserver: roomserver.cpp
91 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ roomserver.cpp $(CXX_INC) $(CXX_LIBS)
93 roomclient: roomclient.cpp
94 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ roomclient.cpp $(CXX_INC) $(CXX_LIBS)
96 garageserver: garageserver.cpp
97 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ garageserver.cpp $(CXX_INC) $(CXX_LIBS)
99 garageclient: garageclient.cpp
100 $(CXX) $(CXX_FLAGS.$(BUILD)) -o $(OUT_DIR)/$@ garageclient.cpp $(CXX_INC) $(CXX_LIBS)
103 cd ocicuc && $(MAKE) apps
107 cd ../ && $(MAKE) clean_cpp_sdk
108 cd ocicuc && $(MAKE) clean_apps
112 cd ocicuc && $(MAKE) clean_apps