[OE-core] [PATCH v3 2/2] cmake: Upgrade 2.8.12.2 -> 3.2.2

Stefan Herbrechtsmeier stefan at herbrechtsmeier.net
Thu Jun 11 19:10:37 UTC 2015


Am 10.06.2015 um 09:36 schrieb Moritz Blume:
> Patches "qt4-fail-silent.patch" and "support-oe-qt4-tools-names.patch"
> were adapted in order to fit to CMake 3.2.2 (refer to the commit
> message in the respective patch for details).
> Patch "cmake-2.8.11.2-FindFreetype.patch" was dropped since it was
> rejected upstream and its functionality otherwise implemented in the
> meantime.
>
> Note that CMake 3 needs to have the full compiler path in the toolchain
> file (see cmake.bbclass).
Why is the full path needed?

Have you try to add STAGING_BINDIR_TOOLCHAIN to the CMAKE_FIND_ROOT_PATH?

<snip>

> diff --git a/meta/classes/cmake.bbclass b/meta/classes/cmake.bbclass
> index 1ebb936..c97fd02 100644
> --- a/meta/classes/cmake.bbclass
> +++ b/meta/classes/cmake.bbclass
> @@ -10,9 +10,11 @@ CCACHE = ""
>   # We want the staging and installing functions from autotools
>   inherit autotools
>   
> -# C/C++ Compiler (without cpu arch/tune arguments)
> -OECMAKE_C_COMPILER ?= "`echo ${CC} | sed 's/^\([^ ]*\).*/\1/'`"
> -OECMAKE_CXX_COMPILER ?= "`echo ${CXX} | sed 's/^\([^ ]*\).*/\1/'`"
> +# Full path to C/C++ Compiler (without cpu arch/tune arguments)
> +C_COMPILER = "$(echo ${CC} | sed 's/^\([^ ]*\).*/\1/')"
> +CXX_COMPILER = "$(echo ${CXX} | sed 's/^\([^ ]*\).*/\1/')"
> +OECMAKE_C_COMPILER ?= "$(which ${C_COMPILER})"
> +OECMAKE_CXX_COMPILER ?= "$(which ${CXX_COMPILER})"
>   OECMAKE_AR ?= "${AR}"
Why you don't use the full path for AR?




More information about the Openembedded-core mailing list