blob: c4064ba4529f54abd17c1de3801a4a6dd7e0ae7d [file] [log] [blame]
Kshitij Sisodiaaa4bcb12022-05-06 09:13:03 +01001#----------------------------------------------------------------------------
Kshitij Sisodia26bc9232023-03-10 16:33:23 +00002# SPDX-FileCopyrightText: Copyright 2022-2023 Arm Limited and/or its affiliates <open-source-office@arm.com>
Kshitij Sisodiaaa4bcb12022-05-06 09:13:03 +01003# SPDX-License-Identifier: Apache-2.0
4#
5# Licensed under the Apache License, Version 2.0 (the "License");
6# you may not use this file except in compliance with the License.
7# You may obtain a copy of the License at
8#
9# http://www.apache.org/licenses/LICENSE-2.0
10#
11# Unless required by applicable law or agreed to in writing, software
12# distributed under the License is distributed on an "AS IS" BASIS,
13# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14# See the License for the specific language governing permissions and
15# limitations under the License.
16#----------------------------------------------------------------------------
17
18#########################################################
19# Common utility library used by use case libraries. #
20# NOTE: this library should not depend on HAL. #
21#########################################################
22
Kshitij Sisodia9c6f9f82022-05-20 14:30:02 +010023cmake_minimum_required(VERSION 3.21.0)
Kshitij Sisodiaaa4bcb12022-05-06 09:13:03 +010024
25set(COMMON_UC_UTILS_TARGET common_api)
26project(${COMMON_UC_UTILS_TARGET}
27 DESCRIPTION "Common Utilities library"
28 LANGUAGES CXX)
29
30# Create static library
31add_library(${COMMON_UC_UTILS_TARGET} STATIC)
32
33## Include directories - public
34target_include_directories(${COMMON_UC_UTILS_TARGET}
35 PUBLIC
36 include
Kshitij Sisodia26bc9232023-03-10 16:33:23 +000037 ${TENSORFLOW_SRC_PATH}/tensorflow/lite/micro/tools/make/downloads/flatbuffers/include
38 ${TENSORFLOW_SRC_PATH}/tensorflow/lite/micro/tools/make/downloads/gemmlowp)
Kshitij Sisodiaaa4bcb12022-05-06 09:13:03 +010039
40## Sources
41target_sources(${COMMON_UC_UTILS_TARGET}
42 PRIVATE
43 source/Classifier.cc
44 source/ImageUtils.cc
45 source/Mfcc.cc
46 source/Model.cc
47 source/TensorFlowLiteMicro.cc)
48
49# Link time library targets:
50target_link_libraries(${COMMON_UC_UTILS_TARGET}
51 PUBLIC
52 log # Logging functions
53 arm_math # Math functions
54 tensorflow-lite-micro) # TensorFlow Lite Micro library
55
56# Display status:
57message(STATUS "*******************************************************")
58message(STATUS "Library : " ${COMMON_UC_UTILS_TARGET})
59message(STATUS "CMAKE_SYSTEM_PROCESSOR : " ${CMAKE_SYSTEM_PROCESSOR})
60message(STATUS "*******************************************************")