cmake: set CMAKE_NO_SYSTEM_FROM_IMPORTED to ON
PATCH 1/1 cmake: set CMAKE_NO_SYSTEM_FROM_IMPORTED to ON
From: Jack Mitchell <[email protected]>
set CMAKE_NO_SYSTEM_FROM_IMPORTED to ON in the bbclass and also the toolchain file. This is required as GCC6 has become more tetchy about the use of -isystem in the compiler flags.
Imported targets aren't used much in cmake at the moment which is why errors have been rare and probably worked around in different ways prior to this patch.
--- meta/classes/cmake.bbclass | 1 + meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake | 1 + 2 files changed, 2 insertions(+)
meta/classes/cmake.bbclass +1 -0
@@ -57,6 +57,7 @@ set( CMAKE_CXX_FLAGS_RELEASE "${OECMAKE_CXX_FLAGS_RELEASE}" CACHE STRING "Additi set( CMAKE_ASM_FLAGS_RELEASE "${OECMAKE_C_FLAGS_RELEASE}" CACHE STRING "Additional ASM FLAGS for release" ) set( CMAKE_C_LINK_FLAGS "${OECMAKE_C_LINK_FLAGS}" CACHE STRING "LDFLAGS" ) set( CMAKE_CXX_LINK_FLAGS "${OECMAKE_CXX_LINK_FLAGS}" CACHE STRING "LDFLAGS" ) +set( CMAKE_NO_SYSTEM_FROM_IMPORTED ON ) # only search in the paths provided so cmake doesnt pick # up libraries and tools from the native build machine
meta/recipes-devtools/cmake/cmake/OEToolchainConfig.cmake +1 -0
@@ -7,6 +7,7 @@ set( CMAKE_FIND_ROOT_PATH $ENV{OECORE_TARGET_SYSROOT} $ENV{OECORE_NATIVE_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_NO_SYSTEM_FROM_IMPORTED ON ) string(REGEX MATCH "sysroots/([a-zA-Z0-9]+)" CMAKE_SYSTEM_PROCESSOR $ENV{SDKTARGETSYSROOT}) string(REGEX REPLACE "sysroots/" "" CMAKE_SYSTEM_PROCESSOR ${CMAKE_SYSTEM_PROCESSOR})
Signature · 1 line
2.9.3