#
# Copyright © 2017 Arm Ltd. All rights reserved.
# SPDX-License-Identifier: MIT
#

list(APPEND armnnRefBackendWorkloads_sources
    Activation.cpp
    Activation.hpp
    BatchNormImpl.hpp
    BatchToSpaceNd.cpp
    BatchToSpaceNd.hpp
    Broadcast.cpp
    Broadcast.hpp
    ConvImpl.cpp
    ConvImpl.hpp
    Debug.cpp
    Debug.hpp
    DetectionPostProcess.cpp
    DetectionPostProcess.hpp
    ElementwiseFunction.cpp
    ElementwiseFunction.hpp
    FullyConnected.cpp
    FullyConnected.hpp
    Gather.cpp
    Gather.hpp
    Maximum.hpp
    Merger.hpp
    Merger.cpp
    Minimum.hpp
    Pad.cpp
    Pad.hpp
    Pooling2d.cpp
    Pooling2d.hpp
    RefActivationFloat32Workload.cpp
    RefActivationFloat32Workload.hpp
    RefActivationUint8Workload.cpp
    RefActivationUint8Workload.hpp
    RefBatchNormalizationFloat32Workload.cpp
    RefBatchNormalizationFloat32Workload.hpp
    RefBatchNormalizationUint8Workload.cpp
    RefBatchNormalizationUint8Workload.hpp
    RefBatchToSpaceNdFloat32Workload.cpp
    RefBatchToSpaceNdFloat32Workload.hpp
    RefBatchToSpaceNdUint8Workload.cpp
    RefBatchToSpaceNdUint8Workload.hpp
    RefComparisonWorkload.cpp
    RefComparisonWorkload.hpp
    RefConstantWorkload.cpp
    RefConstantWorkload.hpp
    RefConvertFp16ToFp32Workload.cpp
    RefConvertFp16ToFp32Workload.hpp
    RefConvertFp32ToFp16Workload.cpp
    RefConvertFp32ToFp16Workload.hpp
    RefConvolution2dFloat32Workload.cpp
    RefConvolution2dFloat32Workload.hpp
    RefConvolution2dUint8Workload.cpp
    RefConvolution2dUint8Workload.hpp
    RefElementwiseWorkload.cpp
    RefElementwiseWorkload.hpp
    RefDebugWorkload.cpp
    RefDebugWorkload.hpp
    RefDepthwiseConvolution2dFloat32Workload.cpp
    RefDepthwiseConvolution2dFloat32Workload.hpp
    RefDepthwiseConvolution2dUint8Workload.cpp
    RefDepthwiseConvolution2dUint8Workload.hpp
    RefDetectionPostProcessUint8Workload.cpp
    RefDetectionPostProcessUint8Workload.hpp
    RefDetectionPostProcessFloat32Workload.cpp
    RefDetectionPostProcessFloat32Workload.hpp
    RefFakeQuantizationFloat32Workload.cpp
    RefFakeQuantizationFloat32Workload.hpp
    RefFloorFloat32Workload.cpp
    RefFloorFloat32Workload.hpp
    RefFullyConnectedFloat32Workload.cpp
    RefFullyConnectedFloat32Workload.hpp
    RefFullyConnectedUint8Workload.cpp
    RefFullyConnectedUint8Workload.hpp
    RefGatherWorkload.cpp
    RefGatherWorkload.hpp
    RefL2NormalizationFloat32Workload.cpp
    RefL2NormalizationFloat32Workload.hpp
    RefLstmFloat32Workload.cpp
    RefLstmFloat32Workload.hpp
    RefMergerFloat32Workload.cpp
    RefMergerFloat32Workload.hpp
    RefMergerUint8Workload.cpp
    RefMergerUint8Workload.hpp
    RefNormalizationFloat32Workload.cpp
    RefNormalizationFloat32Workload.hpp
    RefPadWorkload.cpp
    RefPadWorkload.hpp
    RefPermuteWorkload.cpp
    RefPermuteWorkload.hpp
    RefPooling2dFloat32Workload.cpp
    RefPooling2dFloat32Workload.hpp
    RefPooling2dUint8Workload.cpp
    RefPooling2dUint8Workload.hpp
    RefReshapeFloat32Workload.cpp
    RefReshapeFloat32Workload.hpp
    RefReshapeUint8Workload.cpp
    RefReshapeUint8Workload.hpp
    RefResizeBilinearFloat32Workload.cpp
    RefResizeBilinearFloat32Workload.hpp
    RefResizeBilinearUint8Workload.cpp
    RefResizeBilinearUint8Workload.hpp
    RefRsqrtFloat32Workload.cpp
    RefRsqrtFloat32Workload.hpp
    RefSoftmaxFloat32Workload.cpp
    RefSoftmaxFloat32Workload.hpp
    RefSoftmaxUint8Workload.cpp
    RefSoftmaxUint8Workload.hpp
    RefSpaceToBatchNdWorkload.cpp
    RefSpaceToBatchNdWorkload.hpp
    RefSplitterFloat32Workload.cpp
    RefSplitterFloat32Workload.hpp
    RefSplitterUint8Workload.cpp
    RefSplitterUint8Workload.hpp
    RefStridedSliceWorkload.cpp
    RefStridedSliceWorkload.hpp
    RefWorkloads.hpp
    RefWorkloadUtils.hpp
    ResizeBilinear.cpp
    ResizeBilinear.hpp
    Rsqrt.cpp
    Rsqrt.hpp
    Softmax.cpp
    Softmax.hpp
    SpaceToBatchNd.hpp
    SpaceToBatchNd.cpp
    Splitter.hpp
    StridedSlice.hpp
    StridedSlice.cpp
    StringMapping.cpp
    StringMapping.hpp
    TensorBufferArrayView.hpp
    Mean.cpp
    Mean.hpp
    RefMeanFloat32Workload.cpp
    RefMeanFloat32Workload.hpp
    RefMeanUint8Workload.cpp
    RefMeanUint8Workload.hpp
)

add_library(armnnRefBackendWorkloads OBJECT ${armnnRefBackendWorkloads_sources})
target_include_directories(armnnRefBackendWorkloads PRIVATE ${PROJECT_SOURCE_DIR}/src/armnn)
target_include_directories(armnnRefBackendWorkloads PRIVATE ${PROJECT_SOURCE_DIR}/src/armnnUtils)
target_include_directories(armnnRefBackendWorkloads PRIVATE ${PROJECT_SOURCE_DIR}/src/backends)
