Andrew Geissler | 220dafd | 2023-10-04 10:18:08 -0500 | [diff] [blame^] | 1 | From e62709f8e6f586ace7975b58b8a1c726d120759f Mon Sep 17 00:00:00 2001 |
| 2 | From: Gyorgy Szing <Gyorgy.Szing@arm.com> |
| 3 | Date: Thu, 31 Aug 2023 18:24:50 +0200 |
| 4 | Subject: [PATCH] LazyFetch: allow setting the cmake generator |
| 5 | |
| 6 | Allow configuring the CMake generator used for external components. By |
| 7 | default use the generator the main project is using. |
| 8 | For details see the documentation in tools/cmake/common/LazyFetch.cmake. |
| 9 | |
| 10 | Change-Id: Ie01ea1ae533cf7a40c1f09808de2ad2e83a09db3 |
| 11 | Signed-off-by: Gyorgy Szing <Gyorgy.Szing@arm.com> |
| 12 | |
| 13 | Upstream-Status: Backport |
| 14 | Signed-off-by: Ross Burton <ross.burton@arm.com> |
| 15 | --- |
| 16 | tools/cmake/common/LazyFetch.cmake | 9 +++++++++ |
| 17 | 1 file changed, 9 insertions(+) |
| 18 | |
| 19 | diff --git a/tools/cmake/common/LazyFetch.cmake b/tools/cmake/common/LazyFetch.cmake |
| 20 | index 68e790e..7676201 100644 |
| 21 | --- a/tools/cmake/common/LazyFetch.cmake |
| 22 | +++ b/tools/cmake/common/LazyFetch.cmake |
| 23 | @@ -87,11 +87,20 @@ function(LazyFetch_ConfigAndBuild) |
| 24 | "component specific. Pleas refer to the upstream documentation for more information.") |
| 25 | endif() |
| 26 | |
| 27 | + if(NOT DEFINED ${UC_DEP_NAME}_GENERATOR) |
| 28 | + if(DEFINED ENV{${UC_DEP_NAME}_GENERATOR}) |
| 29 | + set(${UC_DEP_NAME}_GENERATOR ENV{${UC_DEP_NAME}_GENERATOR} CACHE STRING "CMake generator used for ${UC_DEP_NAME}.") |
| 30 | + else() |
| 31 | + set(${UC_DEP_NAME}_GENERATOR ${CMAKE_GENERATOR} CACHE STRING "CMake generator used for ${UC_DEP_NAME}.") |
| 32 | + endif() |
| 33 | + endif() |
| 34 | + |
| 35 | execute_process(COMMAND |
| 36 | ${CMAKE_COMMAND} -E env "CROSS_COMPILE=${CROSS_COMPILE}" |
| 37 | ${CMAKE_COMMAND} |
| 38 | "-C${CONFIGURED_CACHE_FILE}" |
| 39 | -DCMAKE_BUILD_TYPE=${${UC_DEP_NAME}_BUILD_TYPE} |
| 40 | + -G${${UC_DEP_NAME}_GENERATOR} |
| 41 | -S ${BUILD_SRC_DIR} |
| 42 | -B ${BUILD_BIN_DIR} |
| 43 | RESULT_VARIABLE |
| 44 | -- |
| 45 | 2.34.1 |
| 46 | |