Re: [PATCH] configure: map x32 to cpu_family x86_64 for meson
On 09/06/21 14:28, David Michael wrote: The meson.build file defines supported_cpus which does not contain x32, and x32 is not one of meson's stable built-in values: https://mesonbuild.com/Reference-tables.html#cpu-families Signed-off-by: David Michael --- Hi, QEMU fails to build for x32 due to that cpu_family not being defined in supported_cpus. Can something like this be applied? Alternatively, maybe it could be added to supported_cpus and accepted everywhere that matches x86 in meson.build, but upstream meson does not define a CPU type for x32. Thanks. David Queued, thanks. Paolo configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure index 8dcb9965b2..4478f3889a 100755 --- a/configure +++ b/configure @@ -6384,7 +6384,7 @@ if test "$skip_meson" = no; then i386) echo "cpu_family = 'x86'" >> $cross ;; -x86_64) +x86_64|x32) echo "cpu_family = 'x86_64'" >> $cross ;; ppc64le)
Re: [PATCH] configure: map x32 to cpu_family x86_64 for meson
On Wed, Jun 09, 2021 at 02:30:09PM +0100, Peter Maydell wrote: > On Wed, 9 Jun 2021 at 13:48, Daniel P. Berrangé wrote: > > > > On Wed, Jun 09, 2021 at 08:28:39AM -0400, David Michael wrote: > > > The meson.build file defines supported_cpus which does not contain > > > x32, and x32 is not one of meson's stable built-in values: > > > https://mesonbuild.com/Reference-tables.html#cpu-families > > > > > > Signed-off-by: David Michael > > > --- > > > > > > Hi, > > > > > > QEMU fails to build for x32 due to that cpu_family not being defined in > > > supported_cpus. Can something like this be applied? > > > > > > Alternatively, maybe it could be added to supported_cpus and accepted > > > everywhere that matches x86 in meson.build, but upstream meson does not > > > define a CPU type for x32. > > > > "supported_cpus" serves two distinct purposes in meson.build > > > > - Identifies whether TCG supports the target > > - Identifies whether QEMU maintainers consider the target supported > > > > The change proposed below makes x32 be treated the same as x86_64. > > I feel like it's more "fixing a regression we introduced by accident > at some point". Looking at the 5.1 configure script (which predates > the meson conversion) x32 is marked as a supported cpu. Currently it > isn't, so that's a regression. (I don't have the setup to bisect that > right now, but it would be interesting to confirm where it stopped > working.) Whether we feel that we no longer want to support x32 is > a separate question and we'd need to go through our usual deprecation > process if we did want to drop it. Ah, I missed that it was previously working. Regards, Daniel -- |: https://berrange.com -o-https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o-https://fstop138.berrange.com :| |: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|
Re: [PATCH] configure: map x32 to cpu_family x86_64 for meson
On Wed, 9 Jun 2021 at 13:48, Daniel P. Berrangé wrote: > > On Wed, Jun 09, 2021 at 08:28:39AM -0400, David Michael wrote: > > The meson.build file defines supported_cpus which does not contain > > x32, and x32 is not one of meson's stable built-in values: > > https://mesonbuild.com/Reference-tables.html#cpu-families > > > > Signed-off-by: David Michael > > --- > > > > Hi, > > > > QEMU fails to build for x32 due to that cpu_family not being defined in > > supported_cpus. Can something like this be applied? > > > > Alternatively, maybe it could be added to supported_cpus and accepted > > everywhere that matches x86 in meson.build, but upstream meson does not > > define a CPU type for x32. > > "supported_cpus" serves two distinct purposes in meson.build > > - Identifies whether TCG supports the target > - Identifies whether QEMU maintainers consider the target supported > > The change proposed below makes x32 be treated the same as x86_64. I feel like it's more "fixing a regression we introduced by accident at some point". Looking at the 5.1 configure script (which predates the meson conversion) x32 is marked as a supported cpu. Currently it isn't, so that's a regression. (I don't have the setup to bisect that right now, but it would be interesting to confirm where it stopped working.) Whether we feel that we no longer want to support x32 is a separate question and we'd need to go through our usual deprecation process if we did want to drop it. thanks -- PMM
Re: [PATCH] configure: map x32 to cpu_family x86_64 for meson
On Wed, Jun 9, 2021 at 8:45 AM Daniel P. Berrangé wrote: > On Wed, Jun 09, 2021 at 08:28:39AM -0400, David Michael wrote: > > The meson.build file defines supported_cpus which does not contain > > x32, and x32 is not one of meson's stable built-in values: > > https://mesonbuild.com/Reference-tables.html#cpu-families > > > > Signed-off-by: David Michael > > --- > > > > Hi, > > > > QEMU fails to build for x32 due to that cpu_family not being defined in > > supported_cpus. Can something like this be applied? > > > > Alternatively, maybe it could be added to supported_cpus and accepted > > everywhere that matches x86 in meson.build, but upstream meson does not > > define a CPU type for x32. > > "supported_cpus" serves two distinct purposes in meson.build > > - Identifies whether TCG supports the target > - Identifies whether QEMU maintainers consider the target supported > > The change proposed below makes x32 be treated the same as x86_64. > > Maybe that's right for the question of TCG support, but I'm less > sure it is right from POV of QEMU maintainers expectations around > the x32 target status. AFAIK, we don't have any CI for x32 and > IIUC no maintainers are actively testing it manually, so it ought > to be in the unsupported category. Okay, then can something be done to change this line? https://gitlab.com/qemu-project/qemu/-/blob/master/meson.build#L247 It's what causes the build to fail if it doesn't force the interpreter due to x32 not being in supported_cpus, but then the following (unreachable) code expects that x32 is not using the interpreter. https://gitlab.com/qemu-project/qemu/-/blob/master/meson.build#L263 Thanks. David
Re: [PATCH] configure: map x32 to cpu_family x86_64 for meson
On Wed, Jun 09, 2021 at 08:28:39AM -0400, David Michael wrote: > The meson.build file defines supported_cpus which does not contain > x32, and x32 is not one of meson's stable built-in values: > https://mesonbuild.com/Reference-tables.html#cpu-families > > Signed-off-by: David Michael > --- > > Hi, > > QEMU fails to build for x32 due to that cpu_family not being defined in > supported_cpus. Can something like this be applied? > > Alternatively, maybe it could be added to supported_cpus and accepted > everywhere that matches x86 in meson.build, but upstream meson does not > define a CPU type for x32. "supported_cpus" serves two distinct purposes in meson.build - Identifies whether TCG supports the target - Identifies whether QEMU maintainers consider the target supported The change proposed below makes x32 be treated the same as x86_64. Maybe that's right for the question of TCG support, but I'm less sure it is right from POV of QEMU maintainers expectations around the x32 target status. AFAIK, we don't have any CI for x32 and IIUC no maintainers are actively testing it manually, so it ought to be in the unsupported category. > configure | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/configure b/configure > index 8dcb9965b2..4478f3889a 100755 > --- a/configure > +++ b/configure > @@ -6384,7 +6384,7 @@ if test "$skip_meson" = no; then > i386) > echo "cpu_family = 'x86'" >> $cross > ;; > -x86_64) > +x86_64|x32) > echo "cpu_family = 'x86_64'" >> $cross > ;; > ppc64le) Regards, Daniel -- |: https://berrange.com -o-https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o-https://fstop138.berrange.com :| |: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|
[PATCH] configure: map x32 to cpu_family x86_64 for meson
The meson.build file defines supported_cpus which does not contain x32, and x32 is not one of meson's stable built-in values: https://mesonbuild.com/Reference-tables.html#cpu-families Signed-off-by: David Michael --- Hi, QEMU fails to build for x32 due to that cpu_family not being defined in supported_cpus. Can something like this be applied? Alternatively, maybe it could be added to supported_cpus and accepted everywhere that matches x86 in meson.build, but upstream meson does not define a CPU type for x32. Thanks. David configure | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/configure b/configure index 8dcb9965b2..4478f3889a 100755 --- a/configure +++ b/configure @@ -6384,7 +6384,7 @@ if test "$skip_meson" = no; then i386) echo "cpu_family = 'x86'" >> $cross ;; -x86_64) +x86_64|x32) echo "cpu_family = 'x86_64'" >> $cross ;; ppc64le) -- 2.31.1