Imported Upstream version 0.9.1
[platform/upstream/iotivity.git] / resource / csdk / connectivity / build / android / jni / Android.mk
1 $(info TC_PREFIX=$(TOOLCHAIN_PREFIX))
2 $(info CFLAGS=$(TARGET_CFLAGS))
3 $(info CXXFLAGS=$(TARGET_CXXFLAGS) $(TARGET_NO_EXECUTE_CFLAGS))
4 $(info CPPPATH=$(TARGET_C_INCLUDES) $(__ndk_modules.$(APP_STL).EXPORT_C_INCLUDES))
5 $(info SYSROOT=$(SYSROOT_LINK))
6 $(info LDFLAGS=$(TARGET_LDFLAGS) $(TARGET_NO_EXECUTE_LDFLAGS) $(TARGET_NO_UNDEFINED_LDFLAGS) $(TARGET_RELRO_LDFLAGS))
7 $(info TC_VER=$(TOOLCHAIN_VERSION))
8 $(info PLATFORM=$(APP_PLATFORM))
9
10
11 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
12 #define build type
13 BUILD = debug
14
15 PROJECT_ROOT_PATH                       ?= ../..
16 EXT_LIB_PATH                            = ../../../../../../extlibs
17 PROJECT_API_PATH                        = $(PROJECT_ROOT_PATH)/api
18 PROJECT_INC_PATH                        = $(PROJECT_ROOT_PATH)/inc
19 PROJECT_SRC_PATH                        = $(PROJECT_ROOT_PATH)/src
20 PROJECT_COMMON_PATH                     = $(PROJECT_ROOT_PATH)/common
21 PROJECT_COMMON_INC_PATH                 = $(PROJECT_COMMON_PATH)/inc
22 PROJECT_COMMON_SRC_PATH                 = $(PROJECT_COMMON_PATH)/src
23 PROJECT_LIB_PATH                        = $(PROJECT_ROOT_PATH)/lib
24 PROJECT_EXTERNAL_PATH                   = $(PROJECT_ROOT_PATH)/external/inc
25 DTLS_LIB                                = $(EXT_LIB_PATH)/tinydtls
26 #GLIB_PATH                               = ../../../../../../extlibs/glib/glib-2.40.2
27
28 #Modify below values to enable/disable the Adapter
29 #Suffix "NO_" to disable given adapter
30 EDR             = EDR_ADAPTER
31 IP              = IP_ADAPTER
32 LE              = LE_ADAPTER
33
34 #Add Pre processor definitions
35 DEFINE_FLAG =  -DWITH_POSIX -D__ANDROID__
36 DEFINE_FLAG =  -D__WITH_DTLS__
37 DEFINE_FLAG += -D$(EDR) -D$(LE) -D$(IP)
38
39 #Add Debug flags here
40 DEBUG_FLAG      = -DTB_LOG
41
42 BUILD_FLAG.debug        = $(DEFINE_FLAG) $(DEBUG_FLAG)
43 BUILD_FLAG.release      =       $(DEFINE_FLAG)
44 BUILD_FLAG = $(BUILD_FLAG.$(BUILD))
45
46 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
47 #include glib
48
49 #include $(CLEAR_VARS)
50 #LOCAL_PATH = $(PROJECT_LIB_PATH)/android
51 #LOCAL_MODULE = Glib
52 #LOCAL_SRC_FILES := libglib-2.40.2.so
53 #LOCAL_EXPORT_C_INCLUDES = $(GLIB_PATH) \
54 #                          $(GLIB_PATH)/glib
55 #
56 #include $(PREBUILT_SHARED_LIBRARY)
57
58 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
59 #include glibthread
60
61 #include $(CLEAR_VARS)
62 #LOCAL_PATH = $(PROJECT_LIB_PATH)/android
63 #LOCAL_MODULE = GLibThread
64 #LOCAL_SRC_FILES := libgthread-2.40.2.so
65 #LOCAL_EXPORT_C_INCLUDES = $(GLIB_PATH) \
66 #                          $(GLIB_PATH)/glib
67 #
68 #include $(PREBUILT_SHARED_LIBRARY)
69
70 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
71 #Build TinyDtls
72
73 include $(CLEAR_VARS)
74 include $(DTLS_LIB)/Android.mk
75
76 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
77 #Build CACommon
78
79 include $(CLEAR_VARS)
80
81 #Build Common Libraries
82 LOCAL_PATH = $(PROJECT_COMMON_SRC_PATH)
83 LOCAL_MODULE = CACommon
84 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
85 #LOCAL_SHARED_LIBRARIES = Glib GLibThread
86 LOCAL_STATIC_LIBRARIES = rt pthread
87
88 LOCAL_CFLAGS = -D__ANDROID__ $(DEBUG_FLAG)
89 LOCAL_CFLAGS += -std=c99
90
91 LOCAL_C_INCLUDES = $(PROJECT_COMMON_INC_PATH)
92 LOCAL_C_INCLUDES += $(PROJECT_API_PATH)
93
94 LOCAL_SRC_FILES =       oic_logger.c \
95                         oic_console_logger.c logger.c oic_malloc.c \
96                         uarraylist.c uqueue.c oic_string.c \
97                         cathreadpool_pthreads.c camutex_pthreads.c
98
99 include $(BUILD_STATIC_LIBRARY)
100
101 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
102 #Build CACoap
103
104 include $(CLEAR_VARS)
105
106 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
107 LOCAL_PATH = $(PROJECT_LIB_PATH)/libcoap-4.1.1
108 LOCAL_MODULE = CACoap
109 LOCAL_EXPORT_C_INCLUDES = $(PROJECT_LIB_PATH)/libcoap-4.1.1
110 LOCAL_CFLAGS = -DWITH_POSIX
111 LOCAL_SRC_FILES = pdu.c net.c debug.c encode.c uri.c coap_list.c resource.c hashkey.c \
112                                         str.c option.c async.c subscribe.c block.c
113
114 include $(BUILD_STATIC_LIBRARY)
115
116 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
117 #Build CA
118
119 #Relative path to LOCAL_PATH (PROJECT_SRC_PATH)
120 LOCAL_PLATFORM                          = android
121
122 ENET_ADAPTER_PATH                       = ethernet_adapter/$(LOCAL_PLATFORM)
123 EDR_ADAPTER_PATH                        = bt_edr_adapter/$(LOCAL_PLATFORM)
124 LE_ADAPTER_PATH                         = bt_le_adapter/$(LOCAL_PLATFORM)
125 IP_ADAPTER_PATH                         = ip_adapter
126 ADAPTER_UTILS                           = adapter_util
127
128 include $(CLEAR_VARS)
129
130 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
131 LOCAL_PATH = $(PROJECT_SRC_PATH)
132 LOCAL_MODULE = CA
133
134 LOCAL_STATIC_LIBRARIES = CACommon CACoap TinyDtls
135
136 LOCAL_C_INCLUDES = $(PROJECT_API_PATH)
137 LOCAL_C_INCLUDES += $(PROJECT_COMMON_INC_PATH)
138 LOCAL_C_INCLUDES += $(PROJECT_INC_PATH)
139 LOCAL_C_INCLUDES += $(PROJECT_LIB_PATH)/libcoap-4.1.1
140 LOCAL_C_INCLUDES += $(PROJECT_EXTERNAL_PATH)
141 LOCAL_C_INCLUDES += $(DTLS_LIB)
142
143 LOCAL_CFLAGS += $(BUILD_FLAG)
144 LOCAL_CFLAGS += -std=c99 -DWITH_POSIX
145
146 LOCAL_SRC_FILES = \
147                 caconnectivitymanager.c caremotehandler.c cainterfacecontroller.c \
148                 camessagehandler.c canetworkconfigurator.c caprotocolmessage.c \
149                 caretransmission.c caqueueingthread.c \
150                 $(ADAPTER_UTILS)/caadapternetdtls.c $(ADAPTER_UTILS)/caadapterutils.c \
151                 $(ADAPTER_UTILS)/camsgparser.c \
152                 bt_le_adapter/caleadapter.c $(LE_ADAPTER_PATH)/caleclient.c \
153                 $(LE_ADAPTER_PATH)/caleserver.c $(LE_ADAPTER_PATH)/caleutils.c \
154                 $(LE_ADAPTER_PATH)/calenwmonitor.c \
155                 bt_edr_adapter/caedradapter.c $(EDR_ADAPTER_PATH)/caedrutils.c \
156                 $(EDR_ADAPTER_PATH)/caedrclient.c $(EDR_ADAPTER_PATH)/caedrserver.c \
157                 $(EDR_ADAPTER_PATH)/caedrnwmonitor.c \
158                 $(IP_ADAPTER_PATH)/caipadapter.c $(IP_ADAPTER_PATH)/caipserver.c \
159                 $(IP_ADAPTER_PATH)/caipclient.c $(IP_ADAPTER_PATH)/android/caipnwmonitor.c \
160
161 include $(BUILD_STATIC_LIBRARY)
162