blob: 488687901e59aca14d6ac7b29d27a5baf3e16329 [file] [log] [blame]
telsoa015307bc12018-03-09 13:51:08 +00001#
2# Copyright © 2017 ARM Ltd. All rights reserved.
3# See LICENSE file in the project root for full license information.
4#
5
6ANDROID_NN_DRIVER_LOCAL_PATH := $(call my-dir)
7LOCAL_PATH := $(ANDROID_NN_DRIVER_LOCAL_PATH)
8
9# Configure these paths if you move the source or Khronos headers
10OPENCL_HEADER_PATH := $(LOCAL_PATH)/../mali/product/khronos/original
11NN_HEADER_PATH := $(LOCAL_PATH)/../../../frameworks/ml/nn/runtime/include
12
13###################
14# libarmnn-driver #
15###################
16include $(CLEAR_VARS)
17
18LOCAL_MODULE := libarmnn-driver
19LOCAL_MODULE_TAGS := eng optional
20LOCAL_ARM_MODE := arm
21# Mark source files as dependent on Android.mk
22LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
23
24LOCAL_C_INCLUDES := \
25 $(OPENCL_HEADER_PATH) \
26 $(NN_HEADER_PATH)
27
28LOCAL_CFLAGS := \
29 -std=c++14 \
30 -fexceptions \
31 -Werror \
32 -Wno-format-security
33ifeq ($(ARMNN_DRIVER_DEBUG),1)
34 LOCAL_CFLAGS+= -UNDEBUG
35endif
36
37LOCAL_SRC_FILES := \
38 ArmnnDriver.cpp \
39 ArmnnPreparedModel.cpp \
40 ModelToINetworkConverter.cpp \
41 RequestThread.cpp \
42 Utils.cpp
43
44LOCAL_STATIC_LIBRARIES := \
45 libneuralnetworks_common \
46 libarmnn \
47 libboost_log \
48 libboost_program_options \
49 libboost_system \
50 libboost_thread \
51 armnn-arm_compute \
52
53LOCAL_SHARED_LIBRARIES := \
54 libbase \
55 libhidlbase \
56 libhidltransport \
57 libhidlmemory \
58 liblog \
59 libutils \
60 android.hardware.neuralnetworks@1.0 \
61 android.hidl.allocator@1.0 \
62 android.hidl.memory@1.0 \
63 libOpenCL
64
65include $(BUILD_STATIC_LIBRARY)
66
67#####################################################
68# android.hardware.neuralnetworks@1.0-service-armnn #
69#####################################################
70include $(CLEAR_VARS)
71
72LOCAL_MODULE := android.hardware.neuralnetworks@1.0-service-armnn
73LOCAL_INIT_RC := android.hardware.neuralnetworks@1.0-service-armnn.rc
74LOCAL_MODULE_TAGS := eng optional
75LOCAL_ARM_MODE := arm
76LOCAL_MODULE_RELATIVE_PATH := hw
77LOCAL_PROPRIETARY_MODULE := true
78# Mark source files as dependent on Android.mk
79LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
80
81LOCAL_C_INCLUDES := \
82 $(NN_HEADER_PATH)
83
84LOCAL_CFLAGS := \
85 -std=c++14 \
86 -fexceptions
87ifeq ($(ARMNN_DRIVER_DEBUG),1)
88 LOCAL_CFLAGS+= -UNDEBUG
89endif
90
91LOCAL_SRC_FILES := \
92 service.cpp
93
94LOCAL_STATIC_LIBRARIES := \
95 libarmnn-driver \
96 libneuralnetworks_common \
97 libarmnn \
98 libboost_log \
99 libboost_program_options \
100 libboost_system \
101 libboost_thread \
102 armnn-arm_compute
103
104LOCAL_SHARED_LIBRARIES := \
105 libbase \
106 libhidlbase \
107 libhidltransport \
108 libhidlmemory \
109 libdl \
110 libhardware \
111 libtextclassifier \
112 libtextclassifier_hash \
113 liblog \
114 libutils \
115 android.hardware.neuralnetworks@1.0 \
116 android.hidl.allocator@1.0 \
117 android.hidl.memory@1.0 \
118 libOpenCL
119
120include $(BUILD_EXECUTABLE)
121
122##########################
123# armnn module and tests #
124##########################
125# Note we use ANDROID_NN_DRIVER_LOCAL_PATH rather than LOCAL_PATH because LOCAL_PATH will be overwritten
126# when including other .mk files that set it.
127include $(ANDROID_NN_DRIVER_LOCAL_PATH)/armnn/Android.mk
128include $(ANDROID_NN_DRIVER_LOCAL_PATH)/test/Android.mk