qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Stefan Weil <weil@mail.berlios.de>
To: Juan Quintela <quintela@redhat.com>
Cc: qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] [PATCH 1/5] substitute all uses of which by type
Date: Wed, 20 Jan 2010 19:40:19 +0100	[thread overview]
Message-ID: <4B574E13.2010102@mail.berlios.de> (raw)
In-Reply-To: <f95b339dffed5629c1cbd0baf8afc134f7f9124b.1264008180.git.quintela@redhat.com>

Juan Quintela schrieb:
> Except in one case, we are only interested in knowing if a command
> exist, not is path. Just create prog_exists() function that does this
> check.
>
> Signed-off-by: Juan Quintela <quintela@redhat.com>

See comments below. The changes proposed are a suggestion, no real need.

Regards,
Stefan

> ---
> configure | 25 ++++++++++++++-----------
> 1 files changed, 14 insertions(+), 11 deletions(-)
>
> diff --git a/configure b/configure
> index 5631bbb..71edaf5 100755
> --- a/configure
> +++ b/configure
> @@ -27,6 +27,11 @@ compile_prog() {
> $cc $QEMU_CFLAGS $local_cflags -o $TMPE $TMPC $LDFLAGS $local_ldflags
> > /dev/null 2> /dev/null
> }
>
> +prog_exist() {
> + prog="$1"
> + type $prog > /dev/null 2> /dev/null

I personally prefer
+ type $prog >/dev/null 2>&1
because it is shorter (no whitespace after >, no duplicate /dev/null).
Currently, all variants to write this pattern are used.
Maybe we can reduce this.

> +}
> +
> # default parameters
> cpu=""
> prefix=""
> @@ -763,21 +768,19 @@ fi
> # Solaris specific configure tool chain decisions
> #
> if test "$solaris" = "yes" ; then
> - solinst=`which $install 2> /dev/null | /usr/bin/grep -v "no $install
> in"`
2>/dev/null
> - if test -z "$solinst" ; then
> + if ! prog_exist "$install" ; then
> echo "Solaris install program not found. Use
> --install=/usr/ucb/install or"
> echo "install fileutils from www.blastwave.org using pkg-get -i fileutils"
> echo "to get ginstall which is used by default (which lives in
> /opt/csw/bin)"
> exit 1
> fi
> - if test "$solinst" = "/usr/sbin/install" ; then
> + if type "$install" 2> /dev/null | grep /usr/bin/install >/dev/null ;
> then
2>/dev/null
> echo "Error: Solaris /usr/sbin/install is not an appropriate install
> program."
> echo "try ginstall from the GNU fileutils available from
> www.blastwave.org"
> echo "using pkg-get -i fileutils, or use --install=/usr/ucb/install"
> exit 1
> fi
> - sol_ar=`which ar 2> /dev/null | /usr/bin/grep -v "no ar in"`
> - if test -z "$sol_ar" ; then
> + if ! prog_exist "ar" ; then
> echo "Error: No path includes ar"
> if test -f /usr/ccs/bin/ar ; then
> echo "Add /usr/ccs/bin to your path and rerun configure"
> @@ -969,7 +972,7 @@ fi
> # pkgconfig probe
>
> pkgconfig="${cross_prefix}pkg-config"
> -if ! test -x "$(which $pkgconfig 2>/dev/null)"; then
> +if ! prog_exist "$pkgconfig" ; then
> # likely not cross compiling, or hope for the best
> pkgconfig=pkg-config
> fi
> @@ -977,7 +980,7 @@ fi
> ##########################################
> # Sparse probe
> if test "$sparse" != "no" ; then
> - if test -x "$(which cgcc 2>/dev/null)"; then
> + if prog_exist "cgcc" ; then
> sparse=yes
> else
> if test "$sparse" = "yes" ; then
> @@ -1419,8 +1422,8 @@ EOF
> fi
> else
> if test "$kvm" = "yes" ; then
> - if [ -x "`which awk 2>/dev/null`" ] && \
> - [ -x "`which grep 2>/dev/null`" ]; then
> + if prog_exist "awk" && \
> + prog_exist "grep"; then
> kvmerr=`LANG=C $cc $QEMU_CFLAGS -o $TMPE $kvm_cflags $TMPC 2>&1 \
> | grep "error: " \
> | awk -F "error: " '{if (NR>1) printf(", "); printf("%s",$2);}'`
> @@ -1689,8 +1692,8 @@ fi
>
> # Check if tools are available to build documentation.
> if test "$docs" != "no" ; then
> - if test -x "`which texi2html 2>/dev/null`" -a \
> - -x "`which pod2man 2>/dev/null`" ; then
> + if prog_exist "texi2html" && \
> + prog_exist "pod2man" ; then
> docs=yes
> else
> if test "$docs" = "yes" ; then

  reply	other threads:[~2010-01-20 18:40 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-01-20 17:27 [Qemu-devel] [PATCH 0/5] Remove which use Juan Quintela
2010-01-20 17:27 ` [Qemu-devel] [PATCH 1/5] substitute all uses of which by type Juan Quintela
2010-01-20 18:40   ` Stefan Weil [this message]
2010-01-20 18:52     ` [Qemu-devel] " Juan Quintela
2010-01-20 17:27 ` [Qemu-devel] [PATCH 2/5] Check for sdl-config before calling it Juan Quintela
2010-01-20 17:27 ` [Qemu-devel] [PATCH 3/5] Add -static earlier to LDFLAGS for compile_prog() Juan Quintela
2010-01-20 17:27 ` [Qemu-devel] [PATCH 4/5] Remove check for grep Juan Quintela
2010-01-20 17:27 ` [Qemu-devel] [PATCH 5/5] Fix missing symbols in .rel/.rela.plt sections Juan Quintela

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=4B574E13.2010102@mail.berlios.de \
    --to=weil@mail.berlios.de \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).