From: Hans-Christian Egtvedt <hans-christian.egtvedt@atmel.com>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH] Robusitfy compiler version checks
Date: Tue, 12 Aug 2008 13:19:25 +0200 [thread overview]
Message-ID: <1218539965.7930.16.camel@localhost> (raw)
In-Reply-To: <1218003482.29697.6.camel@localhost>
On Wed, 2008-08-06 at 08:18 +0200, Hans-Christian Egtvedt wrote:
Bump
> The output of "gcc --version" (and equivalently for g++) is somewhat
> volatile. Specifically, the output from GCC 4.3.1 prerelease which
> ships with OpenSUSE 11.0 doesn't come close to matching the required
> pattern in the dependency check script.
>
> The output of gcc -v however is standard between releases and across
> platforms. It contains a line of the form
>
> gcc version <version> <spoodge>
>
> We can match this reliably and safely, so let's do that instead.
>
> This has been tested across all the systems I have to hand - openSUSE
> 10.3, 11.0, Xandros, Debian and Cygwin.
>
> Someone with a black belt in sed-fu might be able to simplify this a
> bit :-)
>
> Signed-off-by: Ben Nizette <bn@niasdigital.com>
> ---
>
> diff --git a/toolchain/dependencies/dependencies.sh b/toolchain/dependencies/dependencies.sh
> index 6b026fd..0d67e3a 100755
> --- a/toolchain/dependencies/dependencies.sh
> +++ b/toolchain/dependencies/dependencies.sh
> @@ -194,7 +194,8 @@ if [ -z "$COMPILER" ]; then
> exit 1
> fi
>
> -COMPILER_VERSION=$($COMPILER --version 2>&1 | $XSED -e 's/^.*(.CC) \([0-9\.]\)/\1/g' -e "s/[-\ ].*//g" -e '1q')
> +COMPILER_VERSION=$($COMPILER -v 2>&1 | $XSED -n '/^gcc version/p' |
> + $XSED -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q')
> if [ -z "$COMPILER_VERSION" ]; then
> echo "gcc installed: FALSE"
> /bin/echo -e "\n\nYou must install 'gcc' on your build machine\n"
> @@ -224,7 +225,8 @@ if [ -z "$CXXCOMPILER" ]; then
> /bin/echo -e "\nYou may have to install 'g++' on your build machine\n"
> #exit 1
> else
> - CXXCOMPILER_VERSION=$($CXXCOMPILER --version 2>&1 | $XSED -e 's/^.*(.CC) \([0-9\.]\)/\1/g' -e "s/[-\ ].*//g" -e '1q')
> + CXXCOMPILER_VERSION=$($CXXCOMPILER -v 2>&1 | $XSED -n '/^gcc version/p' |
> + $XSED -e 's/^gcc version \([0-9\.]\)/\1/g' -e 's/[-\ ].*//g' -e '1q')
> if [ -z "$CXXCOMPILER_VERSION" ]; then
> echo "c++ installed: FALSE"
> /bin/echo -e "\nYou may have to install 'g++' on your build machine\n"
>
>
>
> _______________________________________________
> buildroot mailing list
> buildroot at uclibc.org
> http://busybox.net/mailman/listinfo/buildroot
--
With kind regards,
Hans-Christian Egtvedt, Applications Engineer
prev parent reply other threads:[~2008-08-12 11:19 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-08-06 6:18 [Buildroot] [PATCH] Robusitfy compiler version checks Hans-Christian Egtvedt
2008-08-12 11:19 ` Hans-Christian Egtvedt [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1218539965.7930.16.camel@localhost \
--to=hans-christian.egtvedt@atmel.com \
--cc=buildroot@busybox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.