blob: 9349a368eb7228f3a8f3f59ac14ac7e2a0daff17 [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+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100112 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000113 android.hardware.neuralnetworks@1.3
114endif # R or later
115
alered017c395b22020-04-03 15:37:24 +0100116ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000117LOCAL_SHARED_LIBRARIES+= \
118 libOpenCL
119endif
120
121include $(BUILD_EXECUTABLE)
122
123ifeq ($(P_OR_LATER),1)
124# The following target is available starting from Android P
125
126##########################
127# armnn-driver-tests@1.1 #
128##########################
129include $(CLEAR_VARS)
130
131LOCAL_MODULE := armnn-driver-tests@1.1
132ifeq ($(Q_OR_LATER),1)
133# "eng" is deprecated in Android Q
134LOCAL_MODULE_TAGS := optional
135else
136LOCAL_MODULE_TAGS := eng optional
137endif
138#PRODUCT_PACKAGES_ENG := libarmnn
139LOCAL_ARM_MODE := arm
140LOCAL_PROPRIETARY_MODULE := true
141# Mark source files as dependent on Android.mk
142LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
143
144LOCAL_C_INCLUDES := \
145 $(OPENCL_HEADER_PATH) \
146 $(NN_HEADER_PATH) \
147 $(ARMNN_HEADER_PATH) \
148 $(ARMNN_DRIVER_HEADER_PATH)
149
150LOCAL_CFLAGS := \
151 -std=$(CPP_VERSION) \
152 -fexceptions \
153 -Werror \
154 -O0 \
155 -UNDEBUG \
Mike Kelly0e415132020-02-11 11:21:25 +0000156 -DARMNN_ANDROID_NN_V1_1
157
Kevin Mayec1e5b82020-02-26 17:00:39 +0000158# Required to build with the changes made to the Android ML framework specific to Android R
159ifeq ($(R_OR_LATER),1)
160LOCAL_CFLAGS+= \
161 -DARMNN_ANDROID_R
162endif # R or later
163
Mike Kelly0e415132020-02-11 11:21:25 +0000164ifeq ($(Q_OR_LATER),1)
165LOCAL_CFLAGS += \
166 -DBOOST_NO_AUTO_PTR
167endif # PLATFORM_VERSION == Q or later
168
169LOCAL_SRC_FILES := \
170 1.0/Convolution2D.cpp \
171 1.1/Convolution2D.cpp \
172 1.1/Mean.cpp \
173 1.1/Transpose.cpp \
174 1.0/Lstm.cpp \
175 1.1/Lstm.cpp \
176 Tests.cpp \
177 UtilsTests.cpp \
178 Concurrent.cpp \
179 FullyConnected.cpp \
180 GenericLayerTests.cpp \
181 DriverTestHelpers.cpp \
182 SystemProperties.cpp \
183 Concat.cpp \
184 TestTensor.cpp
185
186LOCAL_STATIC_LIBRARIES := \
187 libneuralnetworks_common \
188 libboost_log \
189 libboost_system \
190 libboost_unit_test_framework \
191 libboost_thread \
192 libboost_filesystem \
193 arm_compute_library
194
195LOCAL_WHOLE_STATIC_LIBRARIES := \
196 libarmnn-driver@1.1
197
198LOCAL_SHARED_LIBRARIES := \
199 libbase \
200 libhidlbase \
201 libhidltransport \
202 libhidlmemory \
203 liblog \
204 libtextclassifier_hash \
205 libutils \
206 android.hardware.neuralnetworks@1.0 \
207 android.hardware.neuralnetworks@1.1 \
208 android.hidl.allocator@1.0 \
209 android.hidl.memory@1.0
210
211ifeq ($(Q_OR_LATER),1)
212LOCAL_SHARED_LIBRARIES+= \
213 libnativewindow \
214 libui \
215 libfmq \
216 libcutils \
217 android.hardware.neuralnetworks@1.2
218endif # PLATFORM_VERSION == Q
219
Kevin Mayec1e5b82020-02-26 17:00:39 +0000220ifeq ($(R_OR_LATER),1)
221LOCAL_SHARED_LIBRARIES+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100222 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000223 android.hardware.neuralnetworks@1.3
224endif # R or later
225
alered017c395b22020-04-03 15:37:24 +0100226ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000227LOCAL_SHARED_LIBRARIES+= \
228 libOpenCL
229endif
230
231include $(BUILD_EXECUTABLE)
232
233endif # PLATFORM_VERSION == 9
234
235ifeq ($(Q_OR_LATER),1)
236# The following target is available starting from Android Q
237
238##########################
239# armnn-driver-tests@1.2 #
240##########################
241include $(CLEAR_VARS)
242
243LOCAL_MODULE := armnn-driver-tests@1.2
244LOCAL_MODULE_TAGS := optional
245
246LOCAL_ARM_MODE := arm
247LOCAL_PROPRIETARY_MODULE := true
248
249# Mark source files as dependent on Android.mk
250LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
251
252LOCAL_C_INCLUDES := \
253 $(OPENCL_HEADER_PATH) \
254 $(NN_HEADER_PATH) \
255 $(ARMNN_HEADER_PATH) \
256 $(ARMNN_DRIVER_HEADER_PATH)
257
258LOCAL_CFLAGS := \
259 -std=$(CPP_VERSION) \
260 -fexceptions \
261 -Werror \
262 -O0 \
263 -UNDEBUG \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000264 -DBOOST_NO_AUTO_PTR \
Mike Kelly0e415132020-02-11 11:21:25 +0000265 -DARMNN_ANDROID_NN_V1_2
266
Kevin Mayec1e5b82020-02-26 17:00:39 +0000267# Required to build with the changes made to the Android ML framework specific to Android R
268ifeq ($(R_OR_LATER),1)
269LOCAL_CFLAGS+= \
270 -DARMNN_ANDROID_R
271endif # R or later
Mike Kelly0e415132020-02-11 11:21:25 +0000272
273LOCAL_SRC_FILES := \
274 1.0/Convolution2D.cpp \
275 1.1/Convolution2D.cpp \
276 1.1/Mean.cpp \
277 1.1/Transpose.cpp \
278 1.2/Dilation.cpp \
279 1.2/Capabilities.cpp \
280 1.0/Lstm.cpp \
281 1.1/Lstm.cpp \
282 1.2/Lstm.cpp \
283 Tests.cpp \
284 UtilsTests.cpp \
285 Concurrent.cpp \
286 FullyConnected.cpp \
287 GenericLayerTests.cpp \
288 DriverTestHelpers.cpp \
289 SystemProperties.cpp \
290 Concat.cpp \
291 TestTensor.cpp
292
293LOCAL_STATIC_LIBRARIES := \
294 libneuralnetworks_common \
295 libboost_log \
296 libboost_system \
297 libboost_unit_test_framework \
298 libboost_thread \
299 libboost_filesystem \
300 arm_compute_library
301
302LOCAL_WHOLE_STATIC_LIBRARIES := \
303 libarmnn-driver@1.2
304
305LOCAL_SHARED_LIBRARIES := \
306 libbase \
307 libcutils \
308 libfmq \
309 libhidlbase \
310 libhidltransport \
311 libhidlmemory \
312 liblog \
313 libnativewindow \
314 libtextclassifier_hash \
315 libui \
316 libutils \
317 android.hardware.neuralnetworks@1.0 \
318 android.hardware.neuralnetworks@1.1 \
319 android.hardware.neuralnetworks@1.2 \
320 android.hidl.allocator@1.0 \
321 android.hidl.memory@1.0
322
Kevin Mayec1e5b82020-02-26 17:00:39 +0000323ifeq ($(R_OR_LATER),1)
324LOCAL_SHARED_LIBRARIES+= \
Sadik Armagand7be72e2020-04-23 12:56:05 +0100325 libsync \
Kevin Mayec1e5b82020-02-26 17:00:39 +0000326 android.hardware.neuralnetworks@1.3
327endif # R or later
328
alered017c395b22020-04-03 15:37:24 +0100329ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
Mike Kelly0e415132020-02-11 11:21:25 +0000330LOCAL_SHARED_LIBRARIES+= \
331 libOpenCL
332endif
333
334include $(BUILD_EXECUTABLE)
335
Sadik Armagan6a903a72020-05-26 10:41:54 +0100336endif # PLATFORM_VERSION == Q
337
338ifeq ($(R_OR_LATER),1)
339# The following target is available starting from Android R
340
341##########################
342# armnn-driver-tests@1.3 #
343##########################
344include $(CLEAR_VARS)
345
346LOCAL_MODULE := armnn-driver-tests@1.3
347LOCAL_MODULE_TAGS := optional
348
349LOCAL_ARM_MODE := arm
350LOCAL_PROPRIETARY_MODULE := true
351
352# Mark source files as dependent on Android.mk
353LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
354
355LOCAL_C_INCLUDES := \
356 $(OPENCL_HEADER_PATH) \
357 $(NN_HEADER_PATH) \
358 $(ARMNN_HEADER_PATH) \
359 $(ARMNN_DRIVER_HEADER_PATH)
360
361LOCAL_CFLAGS := \
362 -std=$(CPP_VERSION) \
363 -fexceptions \
364 -Werror \
365 -O0 \
366 -UNDEBUG \
367 -DBOOST_NO_AUTO_PTR \
368 -DARMNN_ANDROID_R \
369 -DARMNN_ANDROID_NN_V1_3
370
371LOCAL_SRC_FILES := \
372 1.0/Convolution2D.cpp \
373 1.1/Convolution2D.cpp \
374 1.1/Mean.cpp \
375 1.1/Transpose.cpp \
376 1.2/Dilation.cpp \
377 1.2/Capabilities.cpp \
378 1.0/Lstm.cpp \
379 1.1/Lstm.cpp \
380 1.2/Lstm.cpp \
381 1.3/QLstm.cpp \
382 Tests.cpp \
383 UtilsTests.cpp \
384 Concurrent.cpp \
385 FullyConnected.cpp \
386 GenericLayerTests.cpp \
387 DriverTestHelpers.cpp \
388 SystemProperties.cpp \
389 Concat.cpp \
390 TestTensor.cpp
391
392LOCAL_STATIC_LIBRARIES := \
393 libneuralnetworks_common \
394 libboost_log \
395 libboost_system \
396 libboost_unit_test_framework \
397 libboost_thread \
398 libboost_filesystem \
399 arm_compute_library
400
401LOCAL_WHOLE_STATIC_LIBRARIES := \
402 libarmnn-driver@1.3
403
404LOCAL_SHARED_LIBRARIES := \
405 libbase \
406 libcutils \
407 libfmq \
408 libhidlbase \
409 libhidltransport \
410 libhidlmemory \
411 liblog \
412 libnativewindow \
413 libtextclassifier_hash \
414 libui \
415 libutils \
416 libsync \
417 android.hardware.neuralnetworks@1.0 \
418 android.hardware.neuralnetworks@1.1 \
419 android.hardware.neuralnetworks@1.2 \
420 android.hardware.neuralnetworks@1.3 \
421 android.hidl.allocator@1.0 \
422 android.hidl.memory@1.0
423
424ifeq ($(ARMNN_INCLUDE_LIBOPENCL),1)
425LOCAL_SHARED_LIBRARIES+= \
426 libOpenCL
427endif
428
429include $(BUILD_EXECUTABLE)
430
431endif # PLATFORM_VERSION == R