1 #/******************************************************************
3 # * Copyright 2014 Samsung Electronics All Rights Reserved.
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 #******************************************************************/
25 PROJECT_NAME = connectivity_abstraction
26 PROJECT_ROOT_PATH = ../..
27 PROJECT_API_PATH = $(PROJECT_ROOT_PATH)/api
28 PROJECT_INC_PATH = $(PROJECT_ROOT_PATH)/inc
29 PROJECT_SRC_PATH = $(PROJECT_ROOT_PATH)/src
30 PROJECT_COMMON_PATH = $(PROJECT_ROOT_PATH)/common
31 PROJECT_SEC_PATH = $(PROJECT_ROOT_PATH)/../stack/include
32 PROJECT_OUT_PATH = $(PROJECT_ROOT_PATH)/build/out
33 COMPONENT_OUT_PATH = ./out
34 COMPONENT_OBJ_PATH = ./.objs
55 COMPONENT_SRCS = sample_main.c \
57 COMPONENT_OBJS = $(COMPONENT_SRCS:%.c=$(COMPONENT_OBJ_PATH)/%.o)
62 LIBS = -lconnectivity_abstraction -L$(PROJECT_OUT_PATH)
64 CFLAGS = -g -c -Wall -fPIC
66 LFLAGS = -ldl -lpthread
68 IFLAGS = -I$(PROJECT_API_PATH) -I$(PROJECT_SEC_PATH)
70 DFLAGS = -DLINUX -DTB_LOG
73 ## compile and link rules
77 $(COMPONENT_OBJ_PATH)/%.o: %.c
79 $(CC) -o $@ $(CFLAGS) $(DFLAGS) $(IFLAGS) $<
83 @echo "======================"
85 @echo "======================"
87 $(TARGET) : $(COMPONENT_OBJS)
88 @$(MAKE_COMPONENT_OUT_PATH)
89 $(CC) -o $@ $(COMPONENT_OBJS) $(LIBS) $(LFLAGS)
90 @$(MV) $(TARGET) $(COMPONENT_OUT_PATH)/.
93 @$(RM) $(COMPONENT_OBJ_PATH) \
97 @$(MAKE_COMPONENT_OUT_PATH)
98 @$(CP) $(PROJECT_OUT_PATH)/* $(COMPONENT_OUT_PATH)/.
104 @if [ ! -d $(COMPONENT_OBJ_PATH) ]; then \
105 mkdir $(COMPONENT_OBJ_PATH); \
113 define MAKE_COMPONENT_OUT_PATH
114 @if [ ! -d $(COMPONENT_OUT_PATH) ]; then \
115 mkdir $(COMPONENT_OUT_PATH); \
119 .PHONY: all clean install