CA Android Sample application Changes
[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 PROJECT_API_PATH                        = $(PROJECT_ROOT_PATH)/api
17 PROJECT_INC_PATH                        = $(PROJECT_ROOT_PATH)/inc
18 PROJECT_SRC_PATH                        = $(PROJECT_ROOT_PATH)/src
19 PROJECT_COMMON_PATH                     = $(PROJECT_ROOT_PATH)/common
20 PROJECT_COMMON_INC_PATH                 = $(PROJECT_COMMON_PATH)/inc
21 PROJECT_COMMON_SRC_PATH                 = $(PROJECT_COMMON_PATH)/src
22 PROJECT_LIB_PATH                        = $(PROJECT_ROOT_PATH)/lib
23 PROJECT_EXTERNAL_PATH                   = $(PROJECT_ROOT_PATH)/external/inc
24 DTLS_LIB                                = $(PROJECT_LIB_PATH)/tinydtls
25 GLIB_PATH                               = ../../../../../../extlibs/glib/glib-2.40.2
26
27 #Modify below values to enable/disable the Adapter
28 #Suffix "NO_" to disable given adapter
29 EDR             = NO_EDR_ADAPTER
30 WIFI            = WIFI_ADAPTER
31 LE              = NO_LE_ADAPTER
32 ETHERNET        = NO_ETHERNET_ADAPTER
33
34 #Add Pre processor definitions
35 DEFINE_FLAG =  -DWITH_POSIX -D__ANDROID__
36 DEFINE_FLAG += -D$(EDR) -D$(LE) -D$(WIFI) -D$(ETHERNET)
37
38 #Add Debug flags here
39 DEBUG_FLAG      = -DTB_LOG
40 #DEBUG_FLAG     += -DADB_SHELL
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
86 LOCAL_SHARED_LIBRARIES = Glib GLibThread
87
88 LOCAL_CFLAGS = -D__ANDROID__ $(DEBUG_FLAG)
89
90 LOCAL_C_INCLUDES = $(PROJECT_COMMON_INC_PATH)
91 LOCAL_C_INCLUDES += $(PROJECT_API_PATH)
92
93 LOCAL_SRC_FILES =       oic_logger.c \
94                                         oic_console_logger.c logger.c oic_malloc.c \
95                                         uarraylist.c uqueue.c oic_string.c \
96                                         uthreadpool.c umutex.c
97
98 include $(BUILD_STATIC_LIBRARY)
99
100 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
101 #Build CACoap
102
103 include $(CLEAR_VARS)
104
105 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
106 LOCAL_PATH = $(PROJECT_LIB_PATH)/libcoap-4.1.1
107 LOCAL_MODULE = CACoap
108 LOCAL_EXPORT_C_INCLUDES = $(PROJECT_LIB_PATH)/libcoap-4.1.1
109 LOCAL_CFLAGS = -DWITH_POSIX
110 LOCAL_SRC_FILES = pdu.c net.c debug.c encode.c uri.c coap_list.c resource.c hashkey.c \
111                                         str.c option.c async.c subscribe.c block.c
112
113 include $(BUILD_STATIC_LIBRARY)
114
115 #+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
116 #Build CA
117
118 #Relative path to LOCAL_PATH (PROJECT_SRC_PATH)
119 LOCAL_PLATFORM                          = android
120
121 ENET_ADAPTER_PATH                       = ethernet_adapter/$(LOCAL_PLATFORM)
122 EDR_ADAPTER_PATH                        = bt_edr_adapter/$(LOCAL_PLATFORM)
123 LE_ADAPTER_PATH                         = bt_le_adapter/$(LOCAL_PLATFORM)
124 WIFI_ADAPTER_PATH                       = wifi_adapter/$(LOCAL_PLATFORM)
125 ADAPTER_UTILS                           = adapter_util
126
127 include $(CLEAR_VARS)
128
129 LOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llog
130 LOCAL_PATH = $(PROJECT_SRC_PATH)
131 LOCAL_MODULE = CA
132
133 LOCAL_STATIC_LIBRARIES = CACommon CACoap TinyDtls
134
135 LOCAL_C_INCLUDES = $(PROJECT_API_PATH)
136 LOCAL_C_INCLUDES += $(PROJECT_COMMON_INC_PATH)
137 LOCAL_C_INCLUDES += $(PROJECT_INC_PATH)
138 LOCAL_C_INCLUDES += $(PROJECT_LIB_PATH)/libcoap-4.1.1
139 LOCAL_C_INCLUDES += $(PROJECT_EXTERNAL_PATH)
140 LOCAL_C_INCLUDES += $(DTLS_LIB)
141
142 LOCAL_CFLAGS += $(BUILD_FLAG)
143 LOCAL_CFLAGS += -std=c99
144
145 LOCAL_SRC_FILES = \
146                 caconnectivitymanager.c caremotehandler.c cainterfacecontroller.c \
147                 camessagehandler.c canetworkconfigurator.c caprotocolmessage.c \
148                 caretransmission.c caqueueingthread.c \
149                 $(ADAPTER_UTILS)/caadapterutils.c \
150                 $(ADAPTER_UTILS)/camsgparser.c \
151                 bt_le_adapter/caleadapter.c $(LE_ADAPTER_PATH)/caleclient.c \
152                 $(LE_ADAPTER_PATH)/caleserver.c $(LE_ADAPTER_PATH)/caleutils.c \
153                 $(LE_ADAPTER_PATH)/calenwmonitor.c \
154                 bt_edr_adapter/caedradapter.c $(EDR_ADAPTER_PATH)/caedrutils.c \
155                 $(EDR_ADAPTER_PATH)/caedrclient.c $(EDR_ADAPTER_PATH)/caedrserver.c \
156                 $(EDR_ADAPTER_PATH)/caedrnwmonitor.c \
157                 wifi_adapter/cawifiadapter.c $(WIFI_ADAPTER_PATH)/cawifiserver.c \
158                 $(WIFI_ADAPTER_PATH)/cawificlient.c $(WIFI_ADAPTER_PATH)/cawifinwmonitor.c \
159
160 include $(BUILD_STATIC_LIBRARY)
161