From: Yann E. MORIN <yann.morin.1998@free.fr>
To: buildroot@busybox.net
Subject: [Buildroot] [PATCH v2 2/4] core: allow check-host-cmake.sh to try several candidates
Date: Sun, 7 May 2017 11:47:06 +0200 [thread overview]
Message-ID: <20170507094706.GB2949@scaer> (raw)
In-Reply-To: <1494131541-2960-2-git-send-email-casantos@datacom.ind.br>
Carlos, All,
On 2017-05-07 01:32 -0300, Carlos Santos spake thusly:
> This is useful on CentOS 7 whose "cmake" package provides cmake 2.8.12,
> which is too old, but the "cmake3" package (from EPEL) provides version
> 3.6.3, which is satisfactory. Examples:
>
> $ sh support/dependencies/check-host-cmake.sh 2.8 cmake cmake3
> /usr/bin/cmake
>
> $ sh support/dependencies/check-host-cmake.sh 3.1 cmake cmake3
> /usr/bin/cmake3
>
> $ sh support/dependencies/check-host-cmake.sh 3.8 cmake cmake3
> (nothing)
>
> Signed-off-by: Carlos Santos <casantos@datacom.ind.br>
Acked-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
However, there is a small nit-pick I'd like to point out...
[--SNIP--]
> +for candidate; do
> +
> + # Try to locate the candidate. Discard it if not located.
> + cmake=`which "${candidate}" 2>/dev/null`
> + [ -n "${cmake}" ] || continue
> +
> + # Extract version X.Y from versions in the form X.Y or X.Y.Z
> + # with X, Y and Z numbers with one or more digits each, e.g.
> + # 3.2 -> 3.2
> + # 3.2.3 -> 3.2
> + # 3.2.42 -> 3.2
> + # 3.10 -> 3.10
> + # 3.10.4 -> 3.10
> + # 3.10.42 -> 3.10
> + # Discard the candidate if no version can be obtained
> + version="$(${cmake} --version \
> + |sed -r -e '/.* ([[:digit:]]+\.[[:digit:]]+).*$/!d;' \
> + -e 's//\1/'
> + )"
> + [ -n "${version}" ] || continue
... here: the check that version is not empty is new, and semantically
it looks like it should have been in a spearate patch (prossibly before
that one).
Unless it is the act of testing multiple candidates that introduces a
case where the version is empty, but I fil to see how that would be.
In any case, don't re-spin just for that.
Regards,
Yann E. MORIN.
> + major="${version%.*}"
> + minor="${version#*.}"
> +
> + if [ ${major} -gt ${major_min} ]; then
> echo "${cmake}"
> - else
> - # echo nothing: no suitable cmake found
> - exit 1
> + exit
> + elif [ ${major} -eq ${major_min} -a ${minor} -ge ${minor_min} ]; then
> + echo "${cmake}"
> + exit
> fi
> -fi
> +done
> +
> +# echo nothing: no suitable cmake found
> +exit 1
> --
> 2.7.4
>
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 223 225 172 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
next prev parent reply other threads:[~2017-05-07 9:47 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-07 4:32 [Buildroot] [PATCH v2 1/4] core: reverse the argument order in check-host-cmake Carlos Santos
2017-05-07 4:32 ` [Buildroot] [PATCH v2 2/4] core: allow check-host-cmake.sh to try several candidates Carlos Santos
2017-05-07 9:47 ` Yann E. MORIN [this message]
2017-05-07 15:28 ` Carlos Santos
2017-05-07 16:11 ` Yann E. MORIN
2017-05-08 17:14 ` Carlos Santos
2017-05-07 4:32 ` [Buildroot] [PATCH v2 3/4] core: allow having a list of "cmake" candidates Carlos Santos
2017-05-07 4:32 ` [Buildroot] [PATCH v2 4/4] core: add "cmake3" to the list of cmake candidates Carlos Santos
2017-05-07 9:40 ` [Buildroot] [PATCH v2 1/4] core: reverse the argument order in check-host-cmake Yann E. MORIN
2017-06-24 19:46 ` Thomas Petazzoni
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=20170507094706.GB2949@scaer \
--to=yann.morin.1998@free.fr \
--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.