IVGCVSW-3656 Make the reference backend optional
[platform/upstream/armnn.git] / src / backends / cl / backend.mk
1 #
2 # Copyright © 2017 ARM Ltd. All rights reserved.
3 # SPDX-License-Identifier: MIT
4 #
5
6 # BACKEND_SOURCES contains the list of files to be included
7 # in the Android build and it is picked up by the Android.mk
8 # file in the root of ArmNN
9
10 # The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED is declared in android-nn-driver/Android.mk)
11 ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1)
12
13 # ARMNN_COMPUTE_CL_ENABLED == 1
14 # Include the source files for the CL backend
15
16 BACKEND_SOURCES := \
17         ClBackend.cpp \
18         ClBackendContext.cpp \
19         ClContextControl.cpp \
20         ClLayerSupport.cpp \
21         ClRegistryInitializer.cpp \
22         ClTensorHandleFactory.cpp \
23         ClWorkloadFactory.cpp \
24         OpenClTimer.cpp \
25         workloads/ClActivationWorkload.cpp \
26         workloads/ClAdditionWorkload.cpp \
27         workloads/ClBatchNormalizationFloatWorkload.cpp \
28         workloads/ClBatchToSpaceNdWorkload.cpp \
29         workloads/ClConcatWorkload.cpp \
30         workloads/ClConstantWorkload.cpp \
31         workloads/ClConvertFp16ToFp32Workload.cpp \
32         workloads/ClConvertFp32ToFp16Workload.cpp \
33         workloads/ClConvolution2dWorkload.cpp \
34         workloads/ClDepthwiseConvolutionWorkload.cpp \
35         workloads/ClDequantizeWorkload.cpp \
36         workloads/ClDivisionFloatWorkload.cpp \
37         workloads/ClFloorFloatWorkload.cpp \
38         workloads/ClFullyConnectedWorkload.cpp \
39         workloads/ClGreaterWorkload.cpp \
40         workloads/ClL2NormalizationFloatWorkload.cpp \
41         workloads/ClLstmFloatWorkload.cpp \
42         workloads/ClMaximumWorkload.cpp \
43         workloads/ClMeanWorkload.cpp \
44         workloads/ClMinimumWorkload.cpp \
45         workloads/ClMultiplicationWorkload.cpp \
46         workloads/ClNormalizationFloatWorkload.cpp \
47         workloads/ClPadWorkload.cpp \
48         workloads/ClPermuteWorkload.cpp \
49         workloads/ClPooling2dWorkload.cpp \
50         workloads/ClPreluWorkload.cpp \
51         workloads/ClQuantizedLstmWorkload.cpp \
52         workloads/ClQuantizeWorkload.cpp \
53         workloads/ClReshapeWorkload.cpp \
54         workloads/ClResizeWorkload.cpp \
55         workloads/ClSoftmaxBaseWorkload.cpp \
56         workloads/ClSoftmaxFloatWorkload.cpp \
57         workloads/ClSoftmaxUint8Workload.cpp \
58         workloads/ClSpaceToBatchNdWorkload.cpp \
59         workloads/ClSpaceToDepthWorkload.cpp \
60         workloads/ClSplitterWorkload.cpp \
61         workloads/ClStackWorkload.cpp \
62         workloads/ClStridedSliceWorkload.cpp \
63         workloads/ClSubtractionWorkload.cpp \
64         workloads/ClTransposeConvolution2dWorkload.cpp
65 else
66
67 # ARMNN_COMPUTE_CL_ENABLED == 0
68 # No source file will be compiled for the CL backend
69
70 BACKEND_SOURCES :=
71
72 endif
73
74 # BACKEND_TEST_SOURCES contains the list of files to be included
75 # in the Android unit test build (armnn-tests) and it is picked
76 # up by the Android.mk file in the root of ArmNN
77
78 # The variable to enable/disable the CL backend (ARMNN_COMPUTE_CL_ENABLED is declared in android-nn-driver/Android.mk)
79 ifeq ($(ARMNN_COMPUTE_CL_ENABLED),1)
80
81 # ARMNN_COMPUTE_CL_ENABLED == 1
82 # Include the source files for the CL backend tests
83
84 BACKEND_TEST_SOURCES := \
85         test/ClCreateWorkloadTests.cpp \
86         test/ClEndToEndTests.cpp \
87         test/ClJsonPrinterTests.cpp \
88         test/ClLayerSupportTests.cpp \
89         test/ClLayerTests.cpp \
90         test/ClOptimizedNetworkTests.cpp \
91         test/ClRuntimeTests.cpp \
92         test/Fp16SupportTest.cpp \
93         test/OpenClTimerTest.cpp
94
95 ifeq ($(ARMNN_COMPUTE_REF_ENABLED),1)
96 BACKEND_TEST_SOURCES += \
97         test/ClMemCopyTests.cpp
98 endif # ARMNN_COMPUTE_REF_ENABLED == 1
99
100 else
101
102 # ARMNN_COMPUTE_CL_ENABLED == 0
103 # No source file will be compiled for the CL backend tests
104
105 BACKEND_TEST_SOURCES :=
106
107 endif