Tizen, Android BT , BLE optimization - making similar to wifi, eth adapters
[platform/upstream/iotivity.git] / resource / csdk / connectivity / build / android / jni / Android.mk
1 #define build type
2 BUILD = debug
3
4 PROJECT_ROOT_PATH                       ?= ../..
5 PROJECT_API_PATH                        = $(PROJECT_ROOT_PATH)/api
6 PROJECT_INC_PATH                        = $(PROJECT_ROOT_PATH)/inc
7 PROJECT_SRC_PATH                        = $(PROJECT_ROOT_PATH)/src
8 PROJECT_COMMON_PATH                     = $(PROJECT_ROOT_PATH)/common
9 PROJECT_COMMON_INC_PATH         = $(PROJECT_COMMON_PATH)/inc
10 PROJECT_COMMON_SRC_PATH         = $(PROJECT_COMMON_PATH)/src
11 PROJECT_LIB_PATH                        = $(PROJECT_ROOT_PATH)/lib
12 PROJECT_EXTERNAL_PATH   = $(PROJECT_ROOT_PATH)/external/inc
13 DTLS_LIB                                        = $(PROJECT_LIB_PATH)/tinydtls
14
15 #Modify below values to enable/disable the Adapter
16 #Suffix "NO_" to disable given adapter
17 EDR                     = EDR_ADAPTER
18 WIFI            = WIFI_ADAPTER
19 LE                      = LE_ADAPTER
20 ETHERNET        = NO_ETHERNET_ADAPTER
21
22 #Add Pre processor definitions
23 DEFINE_FLAG =  -DWITH_POSIX -D__ANDROID__ -D__WITH_DTLS__
24 DEFINE_FLAG += -D$(EDR) -D$(LE) -D$(WIFI) -D$(ETHERNET) 
25
26 #Add Debug flags here
27 DEBUG_FLAG      = -DTB_LOG
28 #DEBUG_FLAG     += -DADB_SHELL
29
30 BUILD_FLAG.debug        = $(DEFINE_FLAG) $(DEBUG_FLAG) 
31 BUILD_FLAG.release      =       $(DEFINE_FLAG)
32 BUILD_FLAG = $(BUILD_FLAG.$(BUILD))
33
34 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
35 #include glib
36
37 include $(CLEAR_VARS)
38 LOCAL_PATH = $(PROJECT_LIB_PATH)/android
39 LOCAL_MODULE = Glib
40 LOCAL_SRC_FILES := libglib-2.0.so
41 LOCAL_EXPORT_C_INCLUDES = $(PROJECT_LIB_PATH)/android/glib-master \
42                           $(PROJECT_LIB_PATH)/android/glib-master/android
43 include $(PREBUILT_SHARED_LIBRARY)
44
45 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
46 #include glibthread
47
48 include $(CLEAR_VARS)
49 LOCAL_PATH = $(PROJECT_LIB_PATH)/android
50 LOCAL_MODULE = GLibThread
51 LOCAL_SRC_FILES := libgthread-2.0.so
52 LOCAL_EXPORT_C_INCLUDES = $(PROJECT_LIB_PATH)/android/glib-master \
53                           $(PROJECT_LIB_PATH)/android/glib-master/android
54
55 include $(PREBUILT_SHARED_LIBRARY)
56
57 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
58
59 #include TinyDtls
60
61 include $(CLEAR_VARS)
62 include $(DTLS_LIB)/Android.mk
63
64 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
65 #Build CACommon
66
67 include $(CLEAR_VARS)
68
69 #Build Common Libraries
70 LOCAL_PATH = $(PROJECT_COMMON_SRC_PATH)
71 LOCAL_MODULE = CACommon
72 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
73
74 LOCAL_SHARED_LIBRARIES = Glib GLibThread
75 LOCAL_CFLAGS = -D__ANDROID__ $(DEBUG_FLAG)
76
77 LOCAL_C_INCLUDES = $(PROJECT_COMMON_INC_PATH)
78 LOCAL_C_INCLUDES += $(PROJECT_API_PATH)
79
80 LOCAL_SRC_FILES =       oic_logger.c \
81                                         oic_console_logger.c logger.c oic_malloc.c \
82                                         uarraylist.c uqueue.c oic_string.c \
83                                         uthreadpool.c umutex.c
84
85 include $(BUILD_STATIC_LIBRARY)
86
87 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
88 #Build CACoap
89
90 include $(CLEAR_VARS)
91
92 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
93 LOCAL_PATH = $(PROJECT_LIB_PATH)/libcoap-4.1.1
94 LOCAL_MODULE = CACoap
95 LOCAL_EXPORT_C_INCLUDES = $(PROJECT_LIB_PATH)/libcoap-4.1.1
96 LOCAL_CFLAGS = -DWITH_POSIX
97 LOCAL_SRC_FILES = pdu.c net.c debug.c encode.c uri.c coap_list.c resource.c hashkey.c \
98                                         str.c option.c async.c subscribe.c block.c
99
100 include $(BUILD_STATIC_LIBRARY)
101
102 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
103 #Build CA
104
105 #Relative path to LOCAL_PATH (PROJECT_SRC_PATH)
106 LOCAL_PLATFORM                          = android
107
108 ENET_ADAPTER_PATH                       = ethernet_adapter/$(LOCAL_PLATFORM)
109 EDR_ADAPTER_PATH                        = bt_edr_adapter/$(LOCAL_PLATFORM)
110 LE_ADAPTER_PATH                         = bt_le_adapter/$(LOCAL_PLATFORM)
111 WIFI_ADAPTER_PATH                       = wifi_adapter/$(LOCAL_PLATFORM)
112 ADAPTER_UTILS                           = adapter_util
113
114 include $(CLEAR_VARS)
115
116 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
117 LOCAL_PATH = $(PROJECT_SRC_PATH)
118 LOCAL_MODULE = CA
119
120 LOCAL_STATIC_LIBRARIES = CACommon CACoap TinyDtls
121
122 LOCAL_C_INCLUDES = $(PROJECT_API_PATH)
123 LOCAL_C_INCLUDES += $(PROJECT_COMMON_INC_PATH)
124 LOCAL_C_INCLUDES += $(PROJECT_INC_PATH)
125 LOCAL_C_INCLUDES += $(PROJECT_LIB_PATH)/libcoap-4.1.1
126 LOCAL_C_INCLUDES += $(PROJECT_EXTERNAL_PATH)
127 LOCAL_C_INCLUDES += $(DTLS_LIB)
128
129 LOCAL_CFLAGS += $(BUILD_FLAG)
130
131 LOCAL_SRC_FILES = \
132                                         caconnectivitymanager.c caremotehandler.c cainterfacecontroller.c \
133                                         camessagehandler.c canetworkconfigurator.c caprotocolmessage.c \
134                                         caretransmission.c caqueueingthread.c \
135                                         $(ADAPTER_UTILS)/caadapternetdtls.c $(ADAPTER_UTILS)/caadapterutils.c \
136                                         $(ADAPTER_UTILS)/camsgparser.c $(EDR_ADAPTER_PATH)/caedradapter.c \
137                                         $(LE_ADAPTER_PATH)/caleadapter.c $(LE_ADAPTER_PATH)/caleclient.c \
138                                         $(LE_ADAPTER_PATH)/caleserver.c $(LE_ADAPTER_PATH)/caleutils.c \
139                                         $(LE_ADAPTER_PATH)/calenwmonitor.c \
140                                         $(EDR_ADAPTER_PATH)/caedrcore.c \
141                                         wifi_adapter/cawifiadapter.c $(WIFI_ADAPTER_PATH)/cawifiserver.c \
142                                         $(WIFI_ADAPTER_PATH)/cawificlient.c $(WIFI_ADAPTER_PATH)/cawifinwmonitor.c \
143
144 include $(BUILD_STATIC_LIBRARY)