From 2517bb881a1aba2f148c13b3f1af3e3a3917ef71 Mon Sep 17 00:00:00 2001 From: "Yann E. MORIN\"" Date: Mon, 2 May 2011 18:07:13 +0200 Subject: internals: fix stripping yet once again Fix typo introduced by changeset #055e505f28be. Also, handle older versions of gcc (typically, all versions prior to 4.0.0). Maxime provided a similar patch, missing the case for the legacy versions of gcc. Reported-by: Maxime Bizon Signed-off-by: "Yann E. MORIN" (transplanted from 539a3fa894f00888b02c7f89a2046f02c9d51e75) diff --git a/scripts/build/internals.sh b/scripts/build/internals.sh index f07a619..c1f8313 100644 --- a/scripts/build/internals.sh +++ b/scripts/build/internals.sh @@ -22,7 +22,19 @@ do_finish() { esac CT_DoLog INFO "Stripping all toolchain executables" CT_Pushd "${CT_PREFIX_DIR}" - gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_GCC_VERSION}/gcc/BASE-VER" ) + # We can not use the version in CT_CC_VERSION because + # of the Linaro stuff. So, harvest the version string + # directly from the gcc sources... + # All gcc 4.x seem to have the version in gcc/BASE-VER + # while version prior to 4.x have the version in gcc/version.c + # Of course, here is not the better place to do that... + if [ -f "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/BASE-VER" ]; then + gcc_version=$( cat "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/BASE-VER" ) + else + gcc_version=$( sed -r -e '/version_string/!d; s/^.+= "([^"]+)".*$/\1/;' \ + "${CT_SRC_DIR}/gcc-${CT_CC_VERSION}/gcc/version.c" \ + ) + fi for _t in "bin/${CT_TARGET}-"* \ "${CT_TARGET}/bin/"* \ "libexec/gcc/${CT_TARGET}/${gcc_version}/"* \ -- cgit v0.10.2-6-g49f6