toolchain-shar-extract: compare SDK and host gcc versions
If ext sdk is built by gcc version higher than host gcc version and host gcc version is 4.8 or 4.9 the installation is known to fail due to the way uninative sstate package is built. It's a known issue and we don't have a way to fix it for above mentioned combinations of build and host gcc versions. Detected non-installable combinations of gcc versions and print an installation error. [YOCTO #10881] (From OE-Core rev: bfb9ea2604557804bd8c16adb57ccdd868a4020f) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
b7d212dc2f
commit
5302fb4620
|
@ -226,6 +226,7 @@ EOF
|
|||
-e 's#@SDK_VERSION@#${SDK_VERSION}#g' \
|
||||
-e '/@SDK_PRE_INSTALL_COMMAND@/d' \
|
||||
-e '/@SDK_POST_INSTALL_COMMAND@/d' \
|
||||
-e 's#@SDK_GCC_VER@#${@oe.utils.host_gcc_version(d)}#g' \
|
||||
${SDKDEPLOYDIR}/${TOOLCHAIN_OUTPUTNAME}.sh
|
||||
|
||||
# add execution permission
|
||||
|
|
|
@ -11,6 +11,9 @@ export PATH=`echo "$PATH" | sed -e 's/:\.//' -e 's/::/:/'`
|
|||
INST_ARCH=$(uname -m | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
|
||||
SDK_ARCH=$(echo @SDK_ARCH@ | sed -e "s/i[3-6]86/ix86/" -e "s/x86[-_]64/x86_64/")
|
||||
|
||||
INST_GCC_VER=$(gcc --version | sed -ne 's/.* \([0-9]\+\.[0-9]\+\)\.[0-9]\+.*/\1/p')
|
||||
SDK_GCC_VER='@SDK_GCC_VER@'
|
||||
|
||||
verlte () {
|
||||
[ "$1" = "`printf "$1\n$2" | sort -V | head -n1`" ]
|
||||
}
|
||||
|
@ -112,6 +115,11 @@ fi
|
|||
# SDK_EXTENSIBLE is exposed from the SDK_PRE_INSTALL_COMMAND above
|
||||
if [ "$SDK_EXTENSIBLE" = "1" ]; then
|
||||
DEFAULT_INSTALL_DIR="@SDKEXTPATH@"
|
||||
if [ "$INST_GCC_VER" = '4.8' -a "$SDK_GCC_VER" = '4.9' ] || [ "$INST_GCC_VER" = '4.8' -a "$SDK_GCC_VER" = '' ] || \
|
||||
[ "$INST_GCC_VER" = '4.9' -a "$SDK_GCC_VER" = '' ]; then
|
||||
echo "Error: Incompatible SDK installer! Your host gcc version is $INST_GCC_VER and this SDK was built by gcc higher version."
|
||||
exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$target_sdk_dir" = "" ]; then
|
||||
|
|
Loading…
Reference in New Issue