Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 1 | #------------------------------------------------------------------------------- |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 2 | # Copyright (c) 2020-2022, Arm Limited and Contributors. All rights reserved. |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 3 | # |
| 4 | # SPDX-License-Identifier: BSD-3-Clause |
| 5 | # |
| 6 | #------------------------------------------------------------------------------- |
| 7 | |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 8 | |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 9 | set(CPPUTEST_URL "https://github.com/cpputest/cpputest.git" CACHE STRING "CppUTest repository URL") |
| 10 | set(CPPUTEST_REFSPEC "v3.8" CACHE STRING "CppUTest git refspec") |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 11 | set(CPPUTEST_INSTALL_DIR ${CMAKE_CURRENT_BINARY_DIR}/CppUTest_install CACHE PATH "CppUTest installation directory") |
| 12 | set(CPPUTEST_SOURCE_DIR ${CMAKE_CURRENT_BINARY_DIR}/_deps/cpputest-src CACHE PATH "CppUTest source directory") |
Gyorgy Szing | 34aaf21 | 2022-10-20 07:26:23 +0200 | [diff] [blame^] | 13 | set(CPPUTEST_BUILD_TYPE "Release" CACHE STRING "CppUTest build type") |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 14 | |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 15 | set(GIT_OPTIONS |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 16 | GIT_REPOSITORY ${CPPUTEST_URL} |
| 17 | GIT_TAG ${CPPUTEST_REFSPEC} |
Julian Hall | a628af3 | 2022-04-01 10:08:18 +0100 | [diff] [blame] | 18 | GIT_SHALLOW FALSE |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 19 | PATCH_COMMAND git stash |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 20 | COMMAND git apply ${CMAKE_CURRENT_LIST_DIR}/cpputest-cmake-fix.patch |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 21 | ) |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 22 | |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 23 | include(${TS_ROOT}/tools/cmake/common/LazyFetch.cmake REQUIRED) |
| 24 | LazyFetch_MakeAvailable(DEP_NAME CppUTest |
| 25 | FETCH_OPTIONS "${GIT_OPTIONS}" |
| 26 | INSTALL_DIR ${CPPUTEST_INSTALL_DIR} |
| 27 | PACKAGE_DIR ${CPPUTEST_INSTALL_DIR}/lib/CppUTest/cmake |
| 28 | CACHE_FILE "${TS_ROOT}/external/CppUTest/cpputest-init-cache.cmake.in" |
| 29 | SOURCE_DIR ${CPPUTEST_SOURCE_DIR} |
| 30 | ) |
| 31 | |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 32 | # CppUTest package files do not set include path properties on the targets. |
| 33 | # Fix this here. |
| 34 | foreach(_cpputest_target IN LISTS CppUTest_LIBRARIES) |
Gyorgy Szing | 9666994 | 2021-12-08 04:19:50 +0100 | [diff] [blame] | 35 | if (TARGET ${_cpputest_target}) |
Julian Hall | 3d844c2 | 2020-11-23 18:22:43 +0100 | [diff] [blame] | 36 | target_include_directories(${_cpputest_target} INTERFACE ${CppUTest_INCLUDE_DIRS}) |
| 37 | target_compile_features(${_cpputest_target} INTERFACE cxx_std_11) |
| 38 | endif() |
| 39 | endforeach() |