blob: 5f84a62f851ba18eef6bd9b2893fc052ba906456 [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
Mike Kelly0e415132020-02-11 11:21:25 +000011ARMNN_HEADER_PATH := $(LOCAL_PATH)/../armnn/include
Nikhil Raj07648f42021-05-21 14:35:06 +010012ARMNN_PROFILING_PATH := $(LOCAL_PATH)/../armnn/profiling
Colm Donelan08d9a1c2020-09-09 17:56:55 +010013ARMNN_THIRD_PARTY_PATH := $(LOCAL_PATH)/../armnn/third-party
14ARMNN_UTILS_HEADER_PATH := $(LOCAL_PATH)/../armnn/src/armnnUtils
Mike Kelly0e415132020-02-11 11:21:25 +000015ARMNN_DRIVER_HEADER_PATH := $(LOCAL_PATH)/..
16
Sadik Armagan188675f2021-02-12 17:16:42 +000017NN_HEADER_PATH := $(LOCAL_PATH)/../../../../frameworks/ml/nn/runtime/include
18ifeq ($(S_OR_LATER),1)
19NN_HEADER_PATH := $(LOCAL_PATH)/../../../../packages/modules/NeuralNetworks/runtime/include
20endif
21
Mike Kelly0e415132020-02-11 11:21:25 +000022##########################
23# armnn-driver-tests@1.0 #
24##########################
25include $(CLEAR_VARS)
26
27LOCAL_MODULE := armnn-driver-tests@1.0
28ifeq ($(Q_OR_LATER),1)
29# "eng" is deprecated in Android Q
30LOCAL_MODULE_TAGS := optional
31else
32LOCAL_MODULE_TAGS := eng optional
33endif
34LOCAL_ARM_MODE := arm
35LOCAL_PROPRIETARY_MODULE := true
36# Mark source files as dependent on Android.mk
37LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
38
39LOCAL_C_INCLUDES := \
40 $(OPENCL_HEADER_PATH) \
41 $(NN_HEADER_PATH) \
42 $(ARMNN_HEADER_PATH) \
Nikhil Raj07648f42021-05-21 14:35:06 +010043 $(ARMNN_PROFILING_PATH) \
Colm Donelan08d9a1c2020-09-09 17:56:55 +010044 $(ARMNN_THIRD_PARTY_PATH) \
45 $(ARMNN_UTILS_HEADER_PATH) \
Mike Kelly0e415132020-02-11 11:21:25 +000046 $(ARMNN_DRIVER_HEADER_PATH)
47
48LOCAL_CFLAGS := \
49 -std=$(CPP_VERSION) \
50 -fexceptions \
51 -Werror \
52 -O0 \
53 -UNDEBUG
54
Kevin Mayec1e5b82020-02-26 17:00:39 +000055# Required to build with the changes made to the Android ML framework specific to Android R
Sadik Armagan188675f2021-02-12 17:16:42 +000056ifeq ($(ANDROID_R),1)
Mike Kelly0e415132020-02-11 11:21:25 +000057LOCAL_CFLAGS+= \
Kevin Mayec1e5b82020-02-26 17:00:39 +000058 -DARMNN_ANDROID_R
59endif # R or later
Mike Kelly0e415132020-02-11 11:21:25 +000060
Sadik Armagan188675f2021-02-12 17:16:42 +000061ifeq ($(ANDROID_S),1)
62LOCAL_CFLAGS+= \
63 -DARMNN_ANDROID_S
64endif # S or later
65
Mike Kelly0e415132020-02-11 11:21:25 +000066ifeq ($(Q_OR_LATER),1)
67LOCAL_CFLAGS += \
68 -DBOOST_NO_AUTO_PTR
69endif # PLATFORM_VERSION == Q or later
70
71LOCAL_SRC_FILES := \
72 1.0/Convolution2D.cpp \
73 1.0/FullyConnectedReshape.cpp \
74 1.0/Lstm.cpp \
75 Tests.cpp \
76 UtilsTests.cpp \
77 Concurrent.cpp \
78 FullyConnected.cpp \
79 GenericLayerTests.cpp \
80 DriverTestHelpers.cpp \
81 SystemProperties.cpp \
82 Concat.cpp \
83 TestTensor.cpp
84
85LOCAL_STATIC_LIBRARIES := \
86 libneuralnetworks_common \
Mike Kelly0e415132020-02-11 11:21:25 +000087 libboost_unit_test_framework \
Sadik Armaganf36e10b2021-01-11 16:34:01 +000088 libflatbuffers-framework \
Mike Kelly0e415132020-02-11 11:21:25 +000089 arm_compute_library
90
91LOCAL_WHOLE_STATIC_LIBRARIES := \
92 libarmnn-driver@1.0
93
94LOCAL_SHARED_LIBRARIES := \
95 libbase \
96 libhidlbase \
97 libhidltransport \
98 libhidlmemory \
99 liblog \
100 libtextclassifier_hash \
101 libutils \
102 android.hardware.neuralnetworks@1.0 \
103 android.hidl.allocator@1.0 \
104 android.hidl.memory@1.0
105
106ifeq ($(P_OR_LATER),1)
107# Required to build the 1.0 version of the NN Driver on Android P and later versions,
108# as the 1.0 version of the NN API needs the 1.1 HAL headers to be included regardless.
109LOCAL_SHARED_LIBRARIES+= \
110 android.hardware.neuralnetworks@1.1
111endif # PLATFORM_VERSION == 9
112
113ifeq ($(Q_OR_LATER),1)
114LOCAL_SHARED_LIBRARIES+= \
115 libnativewindow \
116 libui \
117 libfmq \
118 libcutils \
119 android.hardware.neuralnetworks@1.2
120endif # PLATFORM_VERSION == Q
121
Kevin Mayec1e5b82020-02-26 17:00:39 +0000122ifeq ($(R_OR_LATER),1)
123LOCAL_SHARED_LIBRARIES+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100124 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000125 android.hardware.neuralnetworks@1.3
126endif # R or later
127
alered017c395b22020-04-03 15:37:24 +0100128ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000129LOCAL_SHARED_LIBRARIES+= \
130 libOpenCL
131endif
132
133include $(BUILD_EXECUTABLE)
134
135ifeq ($(P_OR_LATER),1)
136# The following target is available starting from Android P
137
138##########################
139# armnn-driver-tests@1.1 #
140##########################
141include $(CLEAR_VARS)
142
143LOCAL_MODULE := armnn-driver-tests@1.1
144ifeq ($(Q_OR_LATER),1)
145# "eng" is deprecated in Android Q
146LOCAL_MODULE_TAGS := optional
147else
148LOCAL_MODULE_TAGS := eng optional
149endif
150#PRODUCT_PACKAGES_ENG := libarmnn
151LOCAL_ARM_MODE := arm
152LOCAL_PROPRIETARY_MODULE := true
153# Mark source files as dependent on Android.mk
154LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
155
156LOCAL_C_INCLUDES := \
157 $(OPENCL_HEADER_PATH) \
158 $(NN_HEADER_PATH) \
159 $(ARMNN_HEADER_PATH) \
Nikhil Raj07648f42021-05-21 14:35:06 +0100160 $(ARMNN_PROFILING_PATH) \
Colm Donelan08d9a1c2020-09-09 17:56:55 +0100161 $(ARMNN_THIRD_PARTY_PATH) \
162 $(ARMNN_UTILS_HEADER_PATH) \
Mike Kelly0e415132020-02-11 11:21:25 +0000163 $(ARMNN_DRIVER_HEADER_PATH)
164
165LOCAL_CFLAGS := \
166 -std=$(CPP_VERSION) \
167 -fexceptions \
168 -Werror \
169 -O0 \
170 -UNDEBUG \
Mike Kelly0e415132020-02-11 11:21:25 +0000171 -DARMNN_ANDROID_NN_V1_1
172
Kevin Mayec1e5b82020-02-26 17:00:39 +0000173# Required to build with the changes made to the Android ML framework specific to Android R
Sadik Armagan188675f2021-02-12 17:16:42 +0000174ifeq ($(ANDROID_R),1)
Kevin Mayec1e5b82020-02-26 17:00:39 +0000175LOCAL_CFLAGS+= \
176 -DARMNN_ANDROID_R
177endif # R or later
178
Sadik Armagan188675f2021-02-12 17:16:42 +0000179ifeq ($(ANDROID_S),1)
180LOCAL_CFLAGS+= \
181 -DARMNN_ANDROID_S
182endif # S or later
183
Mike Kelly0e415132020-02-11 11:21:25 +0000184ifeq ($(Q_OR_LATER),1)
185LOCAL_CFLAGS += \
186 -DBOOST_NO_AUTO_PTR
187endif # PLATFORM_VERSION == Q or later
188
189LOCAL_SRC_FILES := \
190 1.0/Convolution2D.cpp \
191 1.1/Convolution2D.cpp \
192 1.1/Mean.cpp \
193 1.1/Transpose.cpp \
194 1.0/Lstm.cpp \
195 1.1/Lstm.cpp \
196 Tests.cpp \
197 UtilsTests.cpp \
198 Concurrent.cpp \
199 FullyConnected.cpp \
200 GenericLayerTests.cpp \
201 DriverTestHelpers.cpp \
202 SystemProperties.cpp \
203 Concat.cpp \
204 TestTensor.cpp
205
206LOCAL_STATIC_LIBRARIES := \
207 libneuralnetworks_common \
Mike Kelly0e415132020-02-11 11:21:25 +0000208 libboost_unit_test_framework \
Sadik Armaganf36e10b2021-01-11 16:34:01 +0000209 libflatbuffers-framework \
Mike Kelly0e415132020-02-11 11:21:25 +0000210 arm_compute_library
211
212LOCAL_WHOLE_STATIC_LIBRARIES := \
213 libarmnn-driver@1.1
214
215LOCAL_SHARED_LIBRARIES := \
216 libbase \
217 libhidlbase \
218 libhidltransport \
219 libhidlmemory \
220 liblog \
221 libtextclassifier_hash \
222 libutils \
223 android.hardware.neuralnetworks@1.0 \
224 android.hardware.neuralnetworks@1.1 \
225 android.hidl.allocator@1.0 \
226 android.hidl.memory@1.0
227
228ifeq ($(Q_OR_LATER),1)
229LOCAL_SHARED_LIBRARIES+= \
230 libnativewindow \
231 libui \
232 libfmq \
233 libcutils \
234 android.hardware.neuralnetworks@1.2
235endif # PLATFORM_VERSION == Q
236
Kevin Mayec1e5b82020-02-26 17:00:39 +0000237ifeq ($(R_OR_LATER),1)
238LOCAL_SHARED_LIBRARIES+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100239 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000240 android.hardware.neuralnetworks@1.3
241endif # R or later
242
alered017c395b22020-04-03 15:37:24 +0100243ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000244LOCAL_SHARED_LIBRARIES+= \
245 libOpenCL
246endif
247
248include $(BUILD_EXECUTABLE)
249
250endif # PLATFORM_VERSION == 9
251
252ifeq ($(Q_OR_LATER),1)
253# The following target is available starting from Android Q
254
255##########################
256# armnn-driver-tests@1.2 #
257##########################
258include $(CLEAR_VARS)
259
260LOCAL_MODULE := armnn-driver-tests@1.2
261LOCAL_MODULE_TAGS := optional
262
263LOCAL_ARM_MODE := arm
264LOCAL_PROPRIETARY_MODULE := true
265
266# Mark source files as dependent on Android.mk
267LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
268
269LOCAL_C_INCLUDES := \
270 $(OPENCL_HEADER_PATH) \
271 $(NN_HEADER_PATH) \
272 $(ARMNN_HEADER_PATH) \
Nikhil Raj07648f42021-05-21 14:35:06 +0100273 $(ARMNN_PROFILING_PATH) \
Colm Donelan08d9a1c2020-09-09 17:56:55 +0100274 $(ARMNN_THIRD_PARTY_PATH) \
275 $(ARMNN_UTILS_HEADER_PATH) \
Mike Kelly0e415132020-02-11 11:21:25 +0000276 $(ARMNN_DRIVER_HEADER_PATH)
277
278LOCAL_CFLAGS := \
279 -std=$(CPP_VERSION) \
280 -fexceptions \
281 -Werror \
282 -O0 \
283 -UNDEBUG \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000284 -DBOOST_NO_AUTO_PTR \
Mike Kelly0e415132020-02-11 11:21:25 +0000285 -DARMNN_ANDROID_NN_V1_2
286
Kevin Mayec1e5b82020-02-26 17:00:39 +0000287# Required to build with the changes made to the Android ML framework specific to Android R
Sadik Armagan188675f2021-02-12 17:16:42 +0000288ifeq ($(ANDROID_R),1)
Kevin Mayec1e5b82020-02-26 17:00:39 +0000289LOCAL_CFLAGS+= \
290 -DARMNN_ANDROID_R
291endif # R or later
Mike Kelly0e415132020-02-11 11:21:25 +0000292
Sadik Armagan188675f2021-02-12 17:16:42 +0000293ifeq ($(ANDROID_S),1)
294LOCAL_CFLAGS+= \
295 -DARMNN_ANDROID_S
296endif # S or later
297
Mike Kelly0e415132020-02-11 11:21:25 +0000298LOCAL_SRC_FILES := \
299 1.0/Convolution2D.cpp \
300 1.1/Convolution2D.cpp \
301 1.1/Mean.cpp \
302 1.1/Transpose.cpp \
303 1.2/Dilation.cpp \
304 1.2/Capabilities.cpp \
305 1.0/Lstm.cpp \
306 1.1/Lstm.cpp \
307 1.2/Lstm.cpp \
308 Tests.cpp \
309 UtilsTests.cpp \
310 Concurrent.cpp \
311 FullyConnected.cpp \
312 GenericLayerTests.cpp \
313 DriverTestHelpers.cpp \
314 SystemProperties.cpp \
315 Concat.cpp \
316 TestTensor.cpp
317
318LOCAL_STATIC_LIBRARIES := \
319 libneuralnetworks_common \
Mike Kelly0e415132020-02-11 11:21:25 +0000320 libboost_unit_test_framework \
Sadik Armaganf36e10b2021-01-11 16:34:01 +0000321 libflatbuffers-framework \
Mike Kelly0e415132020-02-11 11:21:25 +0000322 arm_compute_library
323
324LOCAL_WHOLE_STATIC_LIBRARIES := \
325 libarmnn-driver@1.2
326
327LOCAL_SHARED_LIBRARIES := \
328 libbase \
329 libcutils \
330 libfmq \
331 libhidlbase \
332 libhidltransport \
333 libhidlmemory \
334 liblog \
335 libnativewindow \
336 libtextclassifier_hash \
337 libui \
338 libutils \
339 android.hardware.neuralnetworks@1.0 \
340 android.hardware.neuralnetworks@1.1 \
341 android.hardware.neuralnetworks@1.2 \
342 android.hidl.allocator@1.0 \
343 android.hidl.memory@1.0
344
Kevin Mayec1e5b82020-02-26 17:00:39 +0000345ifeq ($(R_OR_LATER),1)
346LOCAL_SHARED_LIBRARIES+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100347 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000348 android.hardware.neuralnetworks@1.3
349endif # R or later
350
alered017c395b22020-04-03 15:37:24 +0100351ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000352LOCAL_SHARED_LIBRARIES+= \
353 libOpenCL
354endif
355
356include $(BUILD_EXECUTABLE)
357
Sadik Armagan6a903a72020-05-26 10:41:54 +0100358endif # PLATFORM_VERSION == Q
359
360ifeq ($(R_OR_LATER),1)
361# The following target is available starting from Android R
362
363##########################
364# armnn-driver-tests@1.3 #
365##########################
366include $(CLEAR_VARS)
367
368LOCAL_MODULE := armnn-driver-tests@1.3
369LOCAL_MODULE_TAGS := optional
370
371LOCAL_ARM_MODE := arm
372LOCAL_PROPRIETARY_MODULE := true
373
374# Mark source files as dependent on Android.mk
375LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
376
377LOCAL_C_INCLUDES := \
378 $(OPENCL_HEADER_PATH) \
379 $(NN_HEADER_PATH) \
380 $(ARMNN_HEADER_PATH) \
Nikhil Raj07648f42021-05-21 14:35:06 +0100381 $(ARMNN_PROFILING_PATH) \
Colm Donelan08d9a1c2020-09-09 17:56:55 +0100382 $(ARMNN_THIRD_PARTY_PATH) \
383 $(ARMNN_UTILS_HEADER_PATH) \
Sadik Armagan6a903a72020-05-26 10:41:54 +0100384 $(ARMNN_DRIVER_HEADER_PATH)
385
386LOCAL_CFLAGS := \
387 -std=$(CPP_VERSION) \
388 -fexceptions \
389 -Werror \
390 -O0 \
391 -UNDEBUG \
392 -DBOOST_NO_AUTO_PTR \
Sadik Armagan6a903a72020-05-26 10:41:54 +0100393 -DARMNN_ANDROID_NN_V1_3
394
Sadik Armagan188675f2021-02-12 17:16:42 +0000395ifeq ($(ANDROID_R),1)
396LOCAL_CFLAGS+= \
397 -DARMNN_ANDROID_R
398endif
399
400ifeq ($(ANDROID_S),1)
401LOCAL_CFLAGS+= \
402 -DARMNN_ANDROID_S
403endif
404
Sadik Armagan6a903a72020-05-26 10:41:54 +0100405LOCAL_SRC_FILES := \
406 1.0/Convolution2D.cpp \
407 1.1/Convolution2D.cpp \
408 1.1/Mean.cpp \
409 1.1/Transpose.cpp \
410 1.2/Dilation.cpp \
411 1.2/Capabilities.cpp \
412 1.0/Lstm.cpp \
413 1.1/Lstm.cpp \
414 1.2/Lstm.cpp \
415 1.3/QLstm.cpp \
David Monahan82609562020-08-31 15:50:32 +0100416 1.3/QosTests.cpp \
Sadik Armagan6a903a72020-05-26 10:41:54 +0100417 Tests.cpp \
418 UtilsTests.cpp \
419 Concurrent.cpp \
420 FullyConnected.cpp \
421 GenericLayerTests.cpp \
422 DriverTestHelpers.cpp \
423 SystemProperties.cpp \
424 Concat.cpp \
425 TestTensor.cpp
426
427LOCAL_STATIC_LIBRARIES := \
428 libneuralnetworks_common \
Sadik Armagan6a903a72020-05-26 10:41:54 +0100429 libboost_unit_test_framework \
Sadik Armaganf36e10b2021-01-11 16:34:01 +0000430 libflatbuffers-framework \
Sadik Armagan6a903a72020-05-26 10:41:54 +0100431 arm_compute_library
432
433LOCAL_WHOLE_STATIC_LIBRARIES := \
434 libarmnn-driver@1.3
435
436LOCAL_SHARED_LIBRARIES := \
437 libbase \
438 libcutils \
439 libfmq \
440 libhidlbase \
441 libhidltransport \
442 libhidlmemory \
443 liblog \
444 libnativewindow \
445 libtextclassifier_hash \
446 libui \
447 libutils \
448 libsync \
449 android.hardware.neuralnetworks@1.0 \
450 android.hardware.neuralnetworks@1.1 \
451 android.hardware.neuralnetworks@1.2 \
452 android.hardware.neuralnetworks@1.3 \
453 android.hidl.allocator@1.0 \
454 android.hidl.memory@1.0
455
456ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
457LOCAL_SHARED_LIBRARIES+= \
458 libOpenCL
459endif
460
461include $(BUILD_EXECUTABLE)
462
463endif # PLATFORM_VERSION == R