diff options
author | Samuli Piippo <samuli.piippo@qt.io> | 2020-06-16 14:35:41 +0300 |
---|---|---|
committer | Samuli Piippo <samuli.piippo@qt.io> | 2020-06-16 16:01:38 +0300 |
commit | 3e639c94c75c1b9c5c42587ff513284dbdb8d5ed (patch) | |
tree | 52615581e185ff4786b8d146292295d3823f543c | |
parent | 713b97684910b1ffb333f7b1e8e19b6379cc39f0 (diff) |
cmake: allow chainloading of the toolchain file
Override the default OEToolchainConfig.cmake file to use path from
CMAKE_CURRENT_LIST_FILE to load the subscripts. This allows the
toolchain file to be chainloaded from another toolchain file,
namely qt.toolchain.cmake from Qt6.
Task-number: QTBUG-85067
Change-Id: I34c6607306001f5685f8a519ac3f34a3662f30b6
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
Reviewed-by: Mikko Gronoff <mikko.gronoff@qt.io>
-rw-r--r-- | meta-boot2qt-distro/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake | 25 | ||||
-rw-r--r-- | meta-boot2qt-distro/recipes-devtools/cmake/cmake_%.bbappend | 4 |
2 files changed, 28 insertions, 1 deletions
diff --git a/meta-boot2qt-distro/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake b/meta-boot2qt-distro/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake new file mode 100644 index 00000000..8f6f3a27 --- /dev/null +++ b/meta-boot2qt-distro/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake @@ -0,0 +1,25 @@ +set( CMAKE_SYSTEM_NAME Linux ) +set( CMAKE_C_FLAGS $ENV{CFLAGS} CACHE STRING "" FORCE ) +set( CMAKE_CXX_FLAGS $ENV{CXXFLAGS} CACHE STRING "" FORCE ) +set( CMAKE_ASM_FLAGS ${CMAKE_C_FLAGS} CACHE STRING "" FORCE ) +set( CMAKE_LDFLAGS_FLAGS ${CMAKE_CXX_FLAGS} CACHE STRING "" FORCE ) +set( CMAKE_SYSROOT $ENV{OECORE_TARGET_SYSROOT} ) + +set( CMAKE_FIND_ROOT_PATH $ENV{OECORE_TARGET_SYSROOT} ) +set( CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER ) +set( CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY ) +set( CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY ) +set( CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY ) + +set(CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX "$ENV{OE_CMAKE_FIND_LIBRARY_CUSTOM_LIB_SUFFIX}") + +# Set CMAKE_SYSTEM_PROCESSOR from the sysroot name (assuming processor-distro-os). +if ($ENV{SDKTARGETSYSROOT} MATCHES "/sysroots/([a-zA-Z0-9_-]+)-.+-.+") + set(CMAKE_SYSTEM_PROCESSOR ${CMAKE_MATCH_1}) +endif() + +# Include the toolchain configuration subscripts +file( GLOB toolchain_config_files "${CMAKE_CURRENT_LIST_FILE}.d/*.cmake" ) +foreach(config ${toolchain_config_files}) + include(${config}) +endforeach() diff --git a/meta-boot2qt-distro/recipes-devtools/cmake/cmake_%.bbappend b/meta-boot2qt-distro/recipes-devtools/cmake/cmake_%.bbappend index d3603bf8..85da6aee 100644 --- a/meta-boot2qt-distro/recipes-devtools/cmake/cmake_%.bbappend +++ b/meta-boot2qt-distro/recipes-devtools/cmake/cmake_%.bbappend @@ -1,6 +1,6 @@ ############################################################################ ## -## Copyright (C) 2018 The Qt Company Ltd. +## Copyright (C) 2020 The Qt Company Ltd. ## Contact: https://www.qt.io/licensing/ ## ## This file is part of the Boot to Qt meta layer. @@ -27,6 +27,8 @@ ## ############################################################################ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + DEPENDS_remove_mingw32 = "ncurses" cmake_do_generate_toolchain_file_append_mingw32() { |