From c9cacaf0805cd476bb21ba35c20b0ad300b862e9 Mon Sep 17 00:00:00 2001 From: Martin Kojtal Date: Wed, 21 Oct 2020 19:25:47 +0100 Subject: [PATCH] CMake: fix application config These settings like enable_language should be done in the application and just once. We hit the issue when you expose sources to an app (interface or public), CMake errors as some of the internal settings have not been configured. --- CMakeLists.txt | 11 ----------- tools/cmake/app.cmake | 13 +++++++++++++ 2 files changed, 13 insertions(+), 11 deletions(-) create mode 100644 tools/cmake/app.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 61d3475f6f..e26138f78b 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -10,17 +10,6 @@ if(POLICY CMP0076) cmake_policy(SET CMP0076 NEW) endif() -include(${MBED_CONFIG_PATH}/mbed_config.cmake) - -# Set default toolchain file -if(NOT CMAKE_TOOLCHAIN_FILE) - set(CMAKE_TOOLCHAIN_FILE "${MBED_ROOT}/tools/cmake/toolchain.cmake" CACHE INTERNAL "") -endif() - -# Toolchain setup -include(${MBED_ROOT}/tools/cmake/toolchains/${MBED_TOOLCHAIN}.cmake) -enable_language(C CXX ASM) - include(${MBED_ROOT}/tools/cmake/core.cmake) include(${MBED_ROOT}/tools/cmake/profile.cmake) diff --git a/tools/cmake/app.cmake b/tools/cmake/app.cmake new file mode 100644 index 0000000000..b8ac0f0da9 --- /dev/null +++ b/tools/cmake/app.cmake @@ -0,0 +1,13 @@ +# Copyright (c) 2020 ARM Limited. All rights reserved. +# SPDX-License-Identifier: Apache-2.0 + +include(${MBED_CONFIG_PATH}/mbed_config.cmake) + +# Set default toolchain file +if(NOT CMAKE_TOOLCHAIN_FILE) + set(CMAKE_TOOLCHAIN_FILE "${MBED_ROOT}/tools/cmake/toolchain.cmake" CACHE INTERNAL "") +endif() + +# Toolchain setup +include(${MBED_ROOT}/tools/cmake/toolchains/${MBED_TOOLCHAIN}.cmake) +enable_language(C CXX ASM)