[props] Extract connection
[platform/core/ml/nntrainer.git] / Applications / TransferLearning / Draw_Classification / jni / Android.mk
1 LOCAL_PATH := $(call my-dir)
2
3 include $(CLEAR_VARS)
4
5 # ndk path
6 ifndef ANDROID_NDK
7 $(error ANDROID_NDK is not defined!)
8 endif
9
10 ifndef NNTRAINER_ROOT
11 NNTRAINER_ROOT := $(LOCAL_PATH)/../../../../
12 endif
13
14 NNTRAINER_INCLUDES := $(NNTRAINER_ROOT)/nntrainer \
15         $(NNTRAINER_ROOT)/nntrainer/dataset \
16         $(NNTRAINER_ROOT)/nntrainer/layers \
17         $(NNTRAINER_ROOT)/nntrainer/compiler \
18         $(NNTRAINER_ROOT)/nntrainer/models \
19         $(NNTRAINER_ROOT)/nntrainer/graph \
20         $(NNTRAINER_ROOT)/nntrainer/tensor \
21         $(NNTRAINER_ROOT)/nntrainer/optimizers \
22         $(NNTRAINER_ROOT)/nntrainer/utils \
23         $(NNTRAINER_ROOT)/api \
24         $(NNTRAINER_ROOT)/api/ccapi/include \
25         $(NNTRAINER_ROOT)/api/capi/include
26
27 NNTRAINER_APPLICATION := $(NNTRAINER_ROOT)/Applications
28
29 ML_API_COMMON_ROOT := ${NNTRAINER_ROOT}/ml_api_common
30
31 include $(CLEAR_VARS)
32
33 LOCAL_MODULE := gstreamer
34 LOCAL_SRC_FILES := ${ML_API_COMMON_ROOT}/lib/arm64-v8a/libgstreamer_android.so
35
36 include $(PREBUILT_SHARED_LIBRARY)
37
38 include $(CLEAR_VARS)
39
40 LOCAL_MODULE := ml-api-inference
41 LOCAL_SRC_FILES :=  ${ML_API_COMMON_ROOT}/lib/arm64-v8a/libnnstreamer-native.so
42 LOCAL_SHARED_LIBRARIES := gstreamer
43 LOCAL_EXPORT_C_INCLUDES := $(ML_API_COMMON_ROOT)/include
44 LOCAL_EXPORT_CFLAGS += -DUSE_BLAS=1
45
46 include $(PREBUILT_SHARED_LIBRARY)
47
48 include $(CLEAR_VARS)
49
50 LOCAL_MODULE := app_utils
51 LOCAL_SRC_FILES := $(NNTRAINER_ROOT)/Applications/utils/libs/$(TARGET_ARCH_ABI)/libapp_utils.so
52 APP_UTILS_INCLUDES := $(NNTRAINER_ROOT)/Applications/utils/jni/includes
53
54 include $(PREBUILT_SHARED_LIBRARY)
55
56 include $(CLEAR_VARS)
57
58 LOCAL_MODULE := nntrainer
59 LOCAL_SRC_FILES := $(NNTRAINER_ROOT)/libs/$(TARGET_ARCH_ABI)/libnntrainer.so
60
61 include $(PREBUILT_SHARED_LIBRARY)
62
63 include $(CLEAR_VARS)
64
65 LOCAL_MODULE := ccapi-nntrainer
66 LOCAL_SRC_FILES := $(NNTRAINER_ROOT)/libs/$(TARGET_ARCH_ABI)/libccapi-nntrainer.so
67 LOCAL_SHARED_LIBRARIES := nntrainer
68
69 include $(PREBUILT_SHARED_LIBRARY)
70
71 include $(CLEAR_VARS)
72
73 LOCAL_MODULE := capi-nntrainer
74 LOCAL_SRC_FILES := $(NNTRAINER_ROOT)/libs/$(TARGET_ARCH_ABI)/libcapi-nntrainer.so
75 LOCAL_SHARED_LIBRARIES := ccapi-nntrainer ml-api-inference
76
77 include $(PREBUILT_SHARED_LIBRARY)
78
79 include $(CLEAR_VARS)
80
81 LOCAL_ARM_NEON := true
82 LOCAL_CFLAGS += -std=c++17 -Ofast -mcpu=cortex-a53 -Ilz4-nougat/lib
83 LOCAL_LDFLAGS += -Llz4-nougat/lib/obj/local/$(TARGET_ARCH_ABI)/
84 LOCAL_CXXFLAGS += -std=c++17 -frtti
85 LOCAL_CFLAGS += -pthread -fexceptions -fopenmp
86 LOCAL_LDFLAGS += -fexceptions
87 LOCAL_MODULE_TAGS := optional
88 LOCAL_ARM_MODE := arm
89 LOCAL_MODULE := nntrainer_training
90 LOCAL_LDLIBS := -llog -landroid -fopenmp
91
92 LOCAL_SRC_FILES := main.cpp
93
94 # @todo add api for context
95 LOCAL_SHARED_LIBRARIES := nntrainer capi-nntrainer app_utils
96
97 LOCAL_C_INCLUDES += $(TFLITE_INCLUDES) $(NNTRAINER_INCLUDES) $(APP_UTILS_INCLUDES)
98
99 include $(BUILD_EXECUTABLE)