blob: 1ac84015480b569be83662221465ccdfcba16f9d [file] [log] [blame]
Kevin Pengaa32cdf2023-09-11 10:38:22 +08001#-------------------------------------------------------------------------------
2# Copyright (c) 2020-2023, Arm Limited. All rights reserved.
3#
4# SPDX-License-Identifier: BSD-3-Clause
5#
6#-------------------------------------------------------------------------------
7
8cmake_minimum_required(VERSION 3.15)
9
10if(NOT TEST_NS_ATTESTATION AND NOT TEST_NS_QCBOR)
11 return()
12endif()
13
14include(FetchContent)
15set(FETCHCONTENT_QUIET FALSE)
16
17# Default configuration of QCBOR repository
18set(QCBOR_PATH "DOWNLOAD" CACHE PATH "Path to qcbor (or DOWNLOAD to fetch automatically")
19set(QCBOR_VERSION "v1.2" CACHE STRING "The version of qcbor to use")
20
21# Entirely disable the floating-point support
22# in the qcbor library to reduce code size.
23set(QCBOR_OPT_DISABLE_FLOAT_HW_USE ON CACHE BOOL "Eliminate dependency on FP hardware and FP instructions" FORCE)
24set(QCBOR_OPT_DISABLE_FLOAT_PREFERRED ON CACHE BOOL "Eliminate support for half-precision and CBOR preferred serialization" FORCE)
25set(QCBOR_OPT_DISABLE_FLOAT_ALL ON CACHE BOOL "Eliminate floating-point support completely" FORCE)
26
27fetch_remote_library(
28 LIB_NAME qcbor
29 LIB_SOURCE_PATH_VAR QCBOR_PATH
30 LIB_PATCH_DIR ${CMAKE_CURRENT_LIST_DIR}
31 LIB_BASE_DIR "${CMAKE_BINARY_DIR}/lib/ext"
32 FETCH_CONTENT_ARGS
33 GIT_REPOSITORY https://github.com/laurencelundblade/QCBOR.git
34 GIT_TAG ${QCBOR_VERSION}
35 GIT_PROGRESS TRUE
36)