Because the target/i386/hvf/meson.build rule culls hvf support
on non-Darwin systems, a --enable-hvf build is succeeding.
To fix this, just try the compilation test every time someone
passes --enable-hvf.
Reported-by: Christophe de Dinechin <dinechin@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
---
configure | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index b4c0e0d07c..14b06a2510 100755
--- a/configure
+++ b/configure
@@ -863,7 +863,7 @@ Darwin)
bsd="yes"
darwin="yes"
hax="yes"
- hvf="yes"
+ hvf=""
if [ "$cpu" = "x86_64" ] ; then
QEMU_CFLAGS="-arch x86_64 $QEMU_CFLAGS"
QEMU_LDFLAGS="-arch x86_64 $QEMU_LDFLAGS"
@@ -5867,16 +5867,18 @@ fi
#################################################
# Check to see if we have the Hypervisor framework
-if [ "$darwin" = "yes" ] ; then
+if [ "$hvf" != "no" ] ; then
cat > $TMPC << EOF
#include <Hypervisor/hv.h>
int main() { return 0;}
EOF
if ! compile_object ""; then
+ if test "$hvf" = "yes"; then
+ error_exit "Hypervisor.framework not available"
+ fi
hvf='no'
else
hvf='yes'
- QEMU_LDFLAGS="-framework Hypervisor $QEMU_LDFLAGS"
fi
fi
--
2.26.2
On Wed, Sep 16, 2020 at 04:11:31AM -0400, Paolo Bonzini wrote: > Because the target/i386/hvf/meson.build rule culls hvf support > on non-Darwin systems, a --enable-hvf build is succeeding. > To fix this, just try the compilation test every time someone > passes --enable-hvf. > > Reported-by: Christophe de Dinechin <dinechin@redhat.com> > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > configure | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/configure b/configure > index b4c0e0d07c..14b06a2510 100755 > --- a/configure > +++ b/configure > @@ -863,7 +863,7 @@ Darwin) > bsd="yes" > darwin="yes" > hax="yes" > - hvf="yes" > + hvf="" > if [ "$cpu" = "x86_64" ] ; then > QEMU_CFLAGS="-arch x86_64 $QEMU_CFLAGS" > QEMU_LDFLAGS="-arch x86_64 $QEMU_LDFLAGS" > @@ -5867,16 +5867,18 @@ fi > > ################################################# > # Check to see if we have the Hypervisor framework > -if [ "$darwin" = "yes" ] ; then > +if [ "$hvf" != "no" ] ; then > cat > $TMPC << EOF > #include <Hypervisor/hv.h> > int main() { return 0;} > EOF > if ! compile_object ""; then > + if test "$hvf" = "yes"; then > + error_exit "Hypervisor.framework not available" > + fi > hvf='no' > else > hvf='yes' > - QEMU_LDFLAGS="-framework Hypervisor $QEMU_LDFLAGS" > fi > fi > > -- > 2.26.2 > Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com> Tested-by: Roman Bolshakov <r.bolshakov@yadro.com> Thanks, Roman
On Wed, Sep 16, 2020 at 04:11:31AM -0400, Paolo Bonzini wrote: > Because the target/i386/hvf/meson.build rule culls hvf support > on non-Darwin systems, a --enable-hvf build is succeeding. > To fix this, just try the compilation test every time someone > passes --enable-hvf. > > Reported-by: Christophe de Dinechin <dinechin@redhat.com> > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > configure | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) > > diff --git a/configure b/configure > index b4c0e0d07c..14b06a2510 100755 > --- a/configure > +++ b/configure > @@ -863,7 +863,7 @@ Darwin) > bsd="yes" > darwin="yes" > hax="yes" > - hvf="yes" > + hvf="" > if [ "$cpu" = "x86_64" ] ; then > QEMU_CFLAGS="-arch x86_64 $QEMU_CFLAGS" > QEMU_LDFLAGS="-arch x86_64 $QEMU_LDFLAGS" > @@ -5867,16 +5867,18 @@ fi > > ################################################# > # Check to see if we have the Hypervisor framework > -if [ "$darwin" = "yes" ] ; then > +if [ "$hvf" != "no" ] ; then > cat > $TMPC << EOF > #include <Hypervisor/hv.h> > int main() { return 0;} > EOF > if ! compile_object ""; then > + if test "$hvf" = "yes"; then > + error_exit "Hypervisor.framework not available" > + fi > hvf='no' > else > hvf='yes' > - QEMU_LDFLAGS="-framework Hypervisor $QEMU_LDFLAGS" > fi > fi > > -- > 2.26.2 > After reading "configure: move cocoa option to Meson", I think the patch should follow meson-driven configuration like the cocoa patch. That'd be a step closer to make configure a thin shim to "meson configure". Roman
On 17/09/20 19:51, Roman Bolshakov wrote: > On Wed, Sep 16, 2020 at 04:11:31AM -0400, Paolo Bonzini wrote: >> Because the target/i386/hvf/meson.build rule culls hvf support >> on non-Darwin systems, a --enable-hvf build is succeeding. >> To fix this, just try the compilation test every time someone >> passes --enable-hvf. >> >> Reported-by: Christophe de Dinechin <dinechin@redhat.com> >> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> >> --- >> configure | 8 +++++--- >> 1 file changed, 5 insertions(+), 3 deletions(-) >> >> diff --git a/configure b/configure >> index b4c0e0d07c..14b06a2510 100755 >> --- a/configure >> +++ b/configure >> @@ -863,7 +863,7 @@ Darwin) >> bsd="yes" >> darwin="yes" >> hax="yes" >> - hvf="yes" >> + hvf="" >> if [ "$cpu" = "x86_64" ] ; then >> QEMU_CFLAGS="-arch x86_64 $QEMU_CFLAGS" >> QEMU_LDFLAGS="-arch x86_64 $QEMU_LDFLAGS" >> @@ -5867,16 +5867,18 @@ fi >> >> ################################################# >> # Check to see if we have the Hypervisor framework >> -if [ "$darwin" = "yes" ] ; then >> +if [ "$hvf" != "no" ] ; then >> cat > $TMPC << EOF >> #include <Hypervisor/hv.h> >> int main() { return 0;} >> EOF >> if ! compile_object ""; then >> + if test "$hvf" = "yes"; then >> + error_exit "Hypervisor.framework not available" >> + fi >> hvf='no' >> else >> hvf='yes' >> - QEMU_LDFLAGS="-framework Hypervisor $QEMU_LDFLAGS" >> fi >> fi >> >> -- >> 2.26.2 >> > > After reading "configure: move cocoa option to Meson", I think the patch > should follow meson-driven configuration like the cocoa patch. That'd be > a step closer to make configure a thin shim to "meson configure". That's unfortunately not yet possible because supported_hvf_target() uses $hvf. The idea is to move accelerator detection to meson so that config-target.mak becomes essentially constant and could for example be moved to default-configs/. Paolo Paolo
On 9/16/20 1:11 AM, Paolo Bonzini wrote: > Because the target/i386/hvf/meson.build rule culls hvf support > on non-Darwin systems, a --enable-hvf build is succeeding. > To fix this, just try the compilation test every time someone > passes --enable-hvf. > > Reported-by: Christophe de Dinechin <dinechin@redhat.com> > Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> > --- > configure | 8 +++++--- > 1 file changed, 5 insertions(+), 3 deletions(-) Reviewed-by: Richard Henderson <richard.henderson@linaro.org> r~
© 2016 - 2024 Red Hat, Inc.