From: Sean Christopherson <seanjc@google.com>
To: Dan Cross <cross@oxidecomputer.com>
Cc: kvm@vger.kernel.org, Paolo Bonzini <pbonzini@redhat.com>,
Thomas Huth <thuth@redhat.com>, Andrew Jones <drjones@redhat.com>
Subject: Re: [PATCH 2/2] kvm-unit-tests: configure changes for illumos.
Date: Fri, 13 May 2022 14:34:58 +0000 [thread overview]
Message-ID: <Yn5skgiL8SenOHWy@google.com> (raw)
In-Reply-To: <20220513010740.8544-3-cross@oxidecomputer.com>
Adding the official KUT maintainers, they undoubtedly know more about the getopt
stuff than me.
On Fri, May 13, 2022, Dan Cross wrote:
> This change modifies the `configure` script to run under illumos
Nit, use imperative mood. KUT follows the kernel's rules/guidelines for the most
part. From Linux's Documentation/process/submitting-patches.rst:
Describe your changes in imperative mood, e.g. "make xyzzy do frotz"
instead of "[This patch] makes xyzzy do frotz" or "[I] changed xyzzy
to do frotz", as if you are giving orders to the codebase to change
its behaviour.
E.g.
Exempt illumos, which reports itself as SunOS, from the `getopt -T` check
for enhanced getopt. blah blah blah...
> by not probing for, `getopt -T` (illumos `getopt` supports the
> required functionality, but exits with a different return status
> when invoked with `-T`).
>
> Signed-off-by: Dan Cross <cross@oxidecomputer.com>
> ---
> configure | 5 +++--
> 1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/configure b/configure
> index 86c3095..7193811 100755
> --- a/configure
> +++ b/configure
> @@ -15,6 +15,7 @@ objdump=objdump
> ar=ar
> addr2line=addr2line
> arch=$(uname -m | sed -e 's/i.86/i386/;s/arm64/aarch64/;s/arm.*/arm/;s/ppc64.*/ppc64/')
> +os=$(uname -s)
> host=$arch
> cross_prefix=
> endian=""
> @@ -317,9 +318,9 @@ EOF
> rm -f lib-test.{o,S}
> fi
>
> -# require enhanced getopt
> +# require enhanced getopt everywhere except illumos
> getopt -T > /dev/null
> -if [ $? -ne 4 ]; then
> +if [ $? -ne 4 ] && [ "$os" != "SunOS" ]; then
What does illumos return for `getopt -T`? Unless it's a direct collision with
the "old" getopt, why not check for illumos' return? The SunOS check could be
kept (or not). E.g. IMO this is much more self-documenting (though does $? get
clobbered by the check? I'm terrible at shell scripts...).
if [ $? -ne 4 ] && [ "$os" != "SunOS" || $? -ne 666 ]; then
Test if your getopt(1) is this enhanced version or an old version. This
generates no output, and sets the error status to 4. Other implementations of
getopt(1), and this version if the environment variable GETOPT_COMPATIBLE is
set, will return '--' and error status 0.
> echo "Enhanced getopt is not available, add it to your PATH?"
> exit 1
> fi
> --
> 2.31.1
>
next prev parent reply other threads:[~2022-05-13 14:43 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-05-12 20:45 [PATCH] kvm-unit-tests: Build changes for illumos Dan Cross
2022-05-12 22:05 ` Sean Christopherson
2022-05-13 1:07 ` [PATCH 0/2] kvm-unit-tests: Build changes to support illumos Dan Cross
2022-05-13 1:07 ` [PATCH 1/2] kvm-unit-tests: invoke $LD explicitly in Dan Cross
2022-05-13 1:07 ` [PATCH 2/2] kvm-unit-tests: configure changes for illumos Dan Cross
2022-05-13 14:34 ` Sean Christopherson [this message]
2022-05-19 9:53 ` Thomas Huth
2022-05-24 21:20 ` Dan Cross
2022-05-25 7:41 ` Thomas Huth
2022-05-24 21:22 ` Dan Cross
2022-05-25 7:44 ` Thomas Huth
2022-05-26 7:11 ` Andrew Jones
2022-05-26 17:39 ` [PATCH 0/2] kvm-unit-tests: Build changes to support illumos Dan Cross
2022-05-26 17:39 ` [PATCH 1/2] kvm-unit-tests: invoke $LD explicitly in Dan Cross
2022-05-26 21:17 ` Sean Christopherson
2022-06-01 7:03 ` Thomas Huth
2022-06-01 17:09 ` Dan Cross
2022-06-01 17:43 ` Andrew Jones
2022-06-01 21:51 ` Dan Cross
2022-06-01 21:57 ` [PATCH v4 0/2] kvm-unit-tests: Build changes to support illumos Dan Cross
2022-06-01 21:57 ` [PATCH v4 1/2] kvm-unit-tests: configure changes for illumos Dan Cross
2022-06-01 21:57 ` [PATCH v4 2/2] kvm-unit-tests: invoke $LD explicitly Dan Cross
2022-06-02 10:53 ` [PATCH v4 0/2] kvm-unit-tests: Build changes to support illumos Thomas Huth
2022-06-02 11:32 ` Dan Cross
2022-05-26 17:39 ` [PATCH 2/2] kvm-unit-tests: configure changes for illumos Dan Cross
2022-05-26 21:23 ` Sean Christopherson
2022-05-26 22:17 ` Dan Cross
2022-05-27 14:41 ` Sean Christopherson
2022-05-31 17:02 ` Dan Cross
2022-05-26 17:40 ` Dan Cross
[not found] ` <CAA9fzEGdi0k8bkyXQwvt6gFd-gwHNNFF7A89U4DhtGHjKqe4AQ@mail.gmail.com>
2022-05-13 1:27 ` Fwd: [PATCH] kvm-unit-tests: Build " Dan Cross
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=Yn5skgiL8SenOHWy@google.com \
--to=seanjc@google.com \
--cc=cross@oxidecomputer.com \
--cc=drjones@redhat.com \
--cc=kvm@vger.kernel.org \
--cc=pbonzini@redhat.com \
--cc=thuth@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