blob: 0448d1870856f3f764bc14097f5410c427e7cf24 [file] [log] [blame]
Mike Kelly0e415132020-02-11 11:21:25 +00001#
2# Copyright © 2017 ARM Ltd. All rights reserved.
3# SPDX-License-Identifier: MIT
4#
5
6LOCAL_PATH := $(call my-dir)
7
8# Configure these paths if you move the source or Khronos headers
9#
10OPENCL_HEADER_PATH := $(LOCAL_PATH)/../../mali/product/khronos/original
11NN_HEADER_PATH := $(LOCAL_PATH)/../../../../frameworks/ml/nn/runtime/include
12ARMNN_HEADER_PATH := $(LOCAL_PATH)/../armnn/include
13ARMNN_DRIVER_HEADER_PATH := $(LOCAL_PATH)/..
14
15##########################
16# armnn-driver-tests@1.0 #
17##########################
18include $(CLEAR_VARS)
19
20LOCAL_MODULE := armnn-driver-tests@1.0
21ifeq ($(Q_OR_LATER),1)
22# "eng" is deprecated in Android Q
23LOCAL_MODULE_TAGS := optional
24else
25LOCAL_MODULE_TAGS := eng optional
26endif
27LOCAL_ARM_MODE := arm
28LOCAL_PROPRIETARY_MODULE := true
29# Mark source files as dependent on Android.mk
30LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
31
32LOCAL_C_INCLUDES := \
33 $(OPENCL_HEADER_PATH) \
34 $(NN_HEADER_PATH) \
35 $(ARMNN_HEADER_PATH) \
36 $(ARMNN_DRIVER_HEADER_PATH)
37
38LOCAL_CFLAGS := \
39 -std=$(CPP_VERSION) \
40 -fexceptions \
41 -Werror \
42 -O0 \
43 -UNDEBUG
44
Kevin Mayec1e5b82020-02-26 17:00:39 +000045# Required to build with the changes made to the Android ML framework specific to Android R
46ifeq ($(R_OR_LATER),1)
Mike Kelly0e415132020-02-11 11:21:25 +000047LOCAL_CFLAGS+= \
Kevin Mayec1e5b82020-02-26 17:00:39 +000048 -DARMNN_ANDROID_R
49endif # R or later
Mike Kelly0e415132020-02-11 11:21:25 +000050
51ifeq ($(Q_OR_LATER),1)
52LOCAL_CFLAGS += \
53 -DBOOST_NO_AUTO_PTR
54endif # PLATFORM_VERSION == Q or later
55
56LOCAL_SRC_FILES := \
57 1.0/Convolution2D.cpp \
58 1.0/FullyConnectedReshape.cpp \
59 1.0/Lstm.cpp \
60 Tests.cpp \
61 UtilsTests.cpp \
62 Concurrent.cpp \
63 FullyConnected.cpp \
64 GenericLayerTests.cpp \
65 DriverTestHelpers.cpp \
66 SystemProperties.cpp \
67 Concat.cpp \
68 TestTensor.cpp
69
70LOCAL_STATIC_LIBRARIES := \
71 libneuralnetworks_common \
72 libboost_log \
73 libboost_system \
74 libboost_unit_test_framework \
75 libboost_thread \
76 libboost_filesystem \
77 arm_compute_library
78
79LOCAL_WHOLE_STATIC_LIBRARIES := \
80 libarmnn-driver@1.0
81
82LOCAL_SHARED_LIBRARIES := \
83 libbase \
84 libhidlbase \
85 libhidltransport \
86 libhidlmemory \
87 liblog \
88 libtextclassifier_hash \
89 libutils \
90 android.hardware.neuralnetworks@1.0 \
91 android.hidl.allocator@1.0 \
92 android.hidl.memory@1.0
93
94ifeq ($(P_OR_LATER),1)
95# Required to build the 1.0 version of the NN Driver on Android P and later versions,
96# as the 1.0 version of the NN API needs the 1.1 HAL headers to be included regardless.
97LOCAL_SHARED_LIBRARIES+= \
98 android.hardware.neuralnetworks@1.1
99endif # PLATFORM_VERSION == 9
100
101ifeq ($(Q_OR_LATER),1)
102LOCAL_SHARED_LIBRARIES+= \
103 libnativewindow \
104 libui \
105 libfmq \
106 libcutils \
107 android.hardware.neuralnetworks@1.2
108endif # PLATFORM_VERSION == Q
109
Kevin Mayec1e5b82020-02-26 17:00:39 +0000110ifeq ($(R_OR_LATER),1)
111LOCAL_SHARED_LIBRARIES+= \
112 android.hardware.neuralnetworks@1.3
113endif # R or later
114
Mike Kelly0e415132020-02-11 11:21:25 +0000115ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1)
116LOCAL_SHARED_LIBRARIES+= \
117 libOpenCL
118endif
119
120include $(BUILD_EXECUTABLE)
121
122ifeq ($(P_OR_LATER),1)
123# The following target is available starting from Android P
124
125##########################
126# armnn-driver-tests@1.1 #
127##########################
128include $(CLEAR_VARS)
129
130LOCAL_MODULE := armnn-driver-tests@1.1
131ifeq ($(Q_OR_LATER),1)
132# "eng" is deprecated in Android Q
133LOCAL_MODULE_TAGS := optional
134else
135LOCAL_MODULE_TAGS := eng optional
136endif
137#PRODUCT_PACKAGES_ENG := libarmnn
138LOCAL_ARM_MODE := arm
139LOCAL_PROPRIETARY_MODULE := true
140# Mark source files as dependent on Android.mk
141LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
142
143LOCAL_C_INCLUDES := \
144 $(OPENCL_HEADER_PATH) \
145 $(NN_HEADER_PATH) \
146 $(ARMNN_HEADER_PATH) \
147 $(ARMNN_DRIVER_HEADER_PATH)
148
149LOCAL_CFLAGS := \
150 -std=$(CPP_VERSION) \
151 -fexceptions \
152 -Werror \
153 -O0 \
154 -UNDEBUG \
Mike Kelly0e415132020-02-11 11:21:25 +0000155 -DARMNN_ANDROID_NN_V1_1
156
Kevin Mayec1e5b82020-02-26 17:00:39 +0000157# Required to build with the changes made to the Android ML framework specific to Android R
158ifeq ($(R_OR_LATER),1)
159LOCAL_CFLAGS+= \
160 -DARMNN_ANDROID_R
161endif # R or later
162
Mike Kelly0e415132020-02-11 11:21:25 +0000163ifeq ($(Q_OR_LATER),1)
164LOCAL_CFLAGS += \
165 -DBOOST_NO_AUTO_PTR
166endif # PLATFORM_VERSION == Q or later
167
168LOCAL_SRC_FILES := \
169 1.0/Convolution2D.cpp \
170 1.1/Convolution2D.cpp \
171 1.1/Mean.cpp \
172 1.1/Transpose.cpp \
173 1.0/Lstm.cpp \
174 1.1/Lstm.cpp \
175 Tests.cpp \
176 UtilsTests.cpp \
177 Concurrent.cpp \
178 FullyConnected.cpp \
179 GenericLayerTests.cpp \
180 DriverTestHelpers.cpp \
181 SystemProperties.cpp \
182 Concat.cpp \
183 TestTensor.cpp
184
185LOCAL_STATIC_LIBRARIES := \
186 libneuralnetworks_common \
187 libboost_log \
188 libboost_system \
189 libboost_unit_test_framework \
190 libboost_thread \
191 libboost_filesystem \
192 arm_compute_library
193
194LOCAL_WHOLE_STATIC_LIBRARIES := \
195 libarmnn-driver@1.1
196
197LOCAL_SHARED_LIBRARIES := \
198 libbase \
199 libhidlbase \
200 libhidltransport \
201 libhidlmemory \
202 liblog \
203 libtextclassifier_hash \
204 libutils \
205 android.hardware.neuralnetworks@1.0 \
206 android.hardware.neuralnetworks@1.1 \
207 android.hidl.allocator@1.0 \
208 android.hidl.memory@1.0
209
210ifeq ($(Q_OR_LATER),1)
211LOCAL_SHARED_LIBRARIES+= \
212 libnativewindow \
213 libui \
214 libfmq \
215 libcutils \
216 android.hardware.neuralnetworks@1.2
217endif # PLATFORM_VERSION == Q
218
Kevin Mayec1e5b82020-02-26 17:00:39 +0000219ifeq ($(R_OR_LATER),1)
220LOCAL_SHARED_LIBRARIES+= \
221 android.hardware.neuralnetworks@1.3
222endif # R or later
223
Mike Kelly0e415132020-02-11 11:21:25 +0000224ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1)
225LOCAL_SHARED_LIBRARIES+= \
226 libOpenCL
227endif
228
229include $(BUILD_EXECUTABLE)
230
231endif # PLATFORM_VERSION == 9
232
233ifeq ($(Q_OR_LATER),1)
234# The following target is available starting from Android Q
235
236##########################
237# armnn-driver-tests@1.2 #
238##########################
239include $(CLEAR_VARS)
240
241LOCAL_MODULE := armnn-driver-tests@1.2
242LOCAL_MODULE_TAGS := optional
243
244LOCAL_ARM_MODE := arm
245LOCAL_PROPRIETARY_MODULE := true
246
247# Mark source files as dependent on Android.mk
248LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
249
250LOCAL_C_INCLUDES := \
251 $(OPENCL_HEADER_PATH) \
252 $(NN_HEADER_PATH) \
253 $(ARMNN_HEADER_PATH) \
254 $(ARMNN_DRIVER_HEADER_PATH)
255
256LOCAL_CFLAGS := \
257 -std=$(CPP_VERSION) \
258 -fexceptions \
259 -Werror \
260 -O0 \
261 -UNDEBUG \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000262 -DBOOST_NO_AUTO_PTR \
Mike Kelly0e415132020-02-11 11:21:25 +0000263 -DARMNN_ANDROID_NN_V1_2
264
Kevin Mayec1e5b82020-02-26 17:00:39 +0000265# Required to build with the changes made to the Android ML framework specific to Android R
266ifeq ($(R_OR_LATER),1)
267LOCAL_CFLAGS+= \
268 -DARMNN_ANDROID_R
269endif # R or later
Mike Kelly0e415132020-02-11 11:21:25 +0000270
271LOCAL_SRC_FILES := \
272 1.0/Convolution2D.cpp \
273 1.1/Convolution2D.cpp \
274 1.1/Mean.cpp \
275 1.1/Transpose.cpp \
276 1.2/Dilation.cpp \
277 1.2/Capabilities.cpp \
278 1.0/Lstm.cpp \
279 1.1/Lstm.cpp \
280 1.2/Lstm.cpp \
281 Tests.cpp \
282 UtilsTests.cpp \
283 Concurrent.cpp \
284 FullyConnected.cpp \
285 GenericLayerTests.cpp \
286 DriverTestHelpers.cpp \
287 SystemProperties.cpp \
288 Concat.cpp \
289 TestTensor.cpp
290
291LOCAL_STATIC_LIBRARIES := \
292 libneuralnetworks_common \
293 libboost_log \
294 libboost_system \
295 libboost_unit_test_framework \
296 libboost_thread \
297 libboost_filesystem \
298 arm_compute_library
299
300LOCAL_WHOLE_STATIC_LIBRARIES := \
301 libarmnn-driver@1.2
302
303LOCAL_SHARED_LIBRARIES := \
304 libbase \
305 libcutils \
306 libfmq \
307 libhidlbase \
308 libhidltransport \
309 libhidlmemory \
310 liblog \
311 libnativewindow \
312 libtextclassifier_hash \
313 libui \
314 libutils \
315 android.hardware.neuralnetworks@1.0 \
316 android.hardware.neuralnetworks@1.1 \
317 android.hardware.neuralnetworks@1.2 \
318 android.hidl.allocator@1.0 \
319 android.hidl.memory@1.0
320
Kevin Mayec1e5b82020-02-26 17:00:39 +0000321ifeq ($(R_OR_LATER),1)
322LOCAL_SHARED_LIBRARIES+= \
323 android.hardware.neuralnetworks@1.3
324endif # R or later
325
Mike Kelly0e415132020-02-11 11:21:25 +0000326ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1)
327LOCAL_SHARED_LIBRARIES+= \
328 libOpenCL
329endif
330
331include $(BUILD_EXECUTABLE)
332
Kevin Mayec1e5b82020-02-26 17:00:39 +0000333endif # PLATFORM_VERSION == Q