On 27.10.21 19:02, Ian Jackson wrote:
The existing code depends on precisely whether the non-default option
appearing in the configure script is indeed the opposite of the option
we want to pass.

Right now it seems to be working but this seems fragile.  Do it
differently.

I have verified that with current Xen, on arm64:

    + egrep -q -- '--disable-xend|--enable-xend' tools/configure
    + egrep -q -- '--disable-ovmf|--enable-ovmf' tools/configure
    + enable_opts=' --enable-ovmf'
    + egrep -q -- '--disable-qemu-traditional|--enable-qemu-traditional' 
tools/configure
    + enable_opts=' --enable-ovmf --disable-qemu-traditional'
    + ./configure --sysconfdir=/etc --enable-ovmf --disable-qemu-traditional

and on amd64:

    + egrep -q -- '--disable-xend|--enable-xend' tools/configure
    + egrep -q -- '--disable-ovmf|--enable-ovmf' tools/configure
    + enable_opts=' --enable-ovmf'
    + egrep -q -- '--disable-qemu-traditional|--enable-qemu-traditional' 
tools/configure
    + enable_opts=' --enable-ovmf --enable-qemu-traditional'
    + ./configure --sysconfdir=/etc --enable-ovmf --enable-qemu-traditional

Juergen, I would appreciate a review from you.  I think I would like
this in osstest production before changing the qemu trad build default
in Xen.

Far from being a Perl expert I agree this is a sensible approach and it
should do the right thing.

It will still depend on no unsupported option being mentioned in any
comment, e.g. "# option --enable-foo is no longer supported" will result
in a wrong positive when testing for feature "foo". In the end this will
break the build, so it should be easy to detect in case this happens
some time in the future.

As there is no way to print out all supported options, this could only
be solved by adding "--disable-option-checking", which has other
disadvantages.

You can add my:

Reviewed-by: Juergen Gross <[email protected]>


Juergen

Attachment: OpenPGP_0xB0DE9DD628BF132F.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to