[Qemu-devel] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900

Thomas Huth posted 1 patch 6 years, 9 months ago
Test asan passed
Test checkpatch passed
Test docker-clang@ubuntu passed
Test docker-mingw@fedora passed
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/1547470346-18416-1-git-send-email-thuth@redhat.com
Maintainers: Cornelia Huck <cohuck@redhat.com>
configure | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
[Qemu-devel] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900
Posted by Thomas Huth 6 years, 9 months ago
We want to build our s390-ccw bios with -march=z900 so that it also
works with the oldest s390x CPU that we support with TCG. However,
Clang on s390x does not support -march=z900 anymore, so we can not
use this compiler to build the s390-ccw bios. Thus add a proper test
to the configure script to see whether the compiler is usable.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 v2: Use compile_prog as suggested by Peter

 configure | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 05b7e85..2b9ba7d 100755
--- a/configure
+++ b/configure
@@ -5905,8 +5905,12 @@ if test "$cpu" = "ppc64" -a "$targetos" != "Darwin" ; then
   roms="$roms spapr-rtas"
 fi
 
+# Only build s390-ccw bios if we're on s390x and the compiler has -march=z900
 if test "$cpu" = "s390x" ; then
-  roms="$roms s390-ccw"
+  write_c_skeleton
+  if compile_prog "-march=z900" ""; then
+    roms="$roms s390-ccw"
+  fi
 fi
 
 # Probe for the need for relocating the user-only binary.
-- 
1.8.3.1


Re: [Qemu-devel] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900
Posted by Cornelia Huck 6 years, 9 months ago
On Mon, 14 Jan 2019 13:52:26 +0100
Thomas Huth <thuth@redhat.com> wrote:

> We want to build our s390-ccw bios with -march=z900 so that it also
> works with the oldest s390x CPU that we support with TCG. However,
> Clang on s390x does not support -march=z900 anymore, so we can not
> use this compiler to build the s390-ccw bios. Thus add a proper test
> to the configure script to see whether the compiler is usable.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  v2: Use compile_prog as suggested by Peter
> 
>  configure | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)

With this, the fpu/softfloat patch, and Marcel's rdma patches, I can
compile with clang on my Fedora 29 s390x system. Yeah!

Should this patch go through the s390 tree, or take some other path?

Re: [Qemu-devel] [qemu-s390x] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900
Posted by Thomas Huth 6 years, 9 months ago
On 2019-01-14 16:20, Cornelia Huck wrote:
> On Mon, 14 Jan 2019 13:52:26 +0100
> Thomas Huth <thuth@redhat.com> wrote:
> 
>> We want to build our s390-ccw bios with -march=z900 so that it also
>> works with the oldest s390x CPU that we support with TCG. However,
>> Clang on s390x does not support -march=z900 anymore, so we can not
>> use this compiler to build the s390-ccw bios. Thus add a proper test
>> to the configure script to see whether the compiler is usable.
>>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>>  v2: Use compile_prog as suggested by Peter
>>
>>  configure | 6 +++++-
>>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> With this, the fpu/softfloat patch, and Marcel's rdma patches, I can
> compile with clang on my Fedora 29 s390x system. Yeah!
> 
> Should this patch go through the s390 tree, or take some other path?

There is no dedicated maintainer for the configure script, so please
take it through the s390 tree.

 Thanks,
  Thomas

Re: [Qemu-devel] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900
Posted by Cornelia Huck 6 years, 9 months ago
On Mon, 14 Jan 2019 13:52:26 +0100
Thomas Huth <thuth@redhat.com> wrote:

> We want to build our s390-ccw bios with -march=z900 so that it also
> works with the oldest s390x CPU that we support with TCG. However,
> Clang on s390x does not support -march=z900 anymore, so we can not
> use this compiler to build the s390-ccw bios. Thus add a proper test
> to the configure script to see whether the compiler is usable.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  v2: Use compile_prog as suggested by Peter
> 
>  configure | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)

Thanks, applied.

Re: [Qemu-devel] [qemu-s390x] [PATCH v2] configure: Only build the s390-ccw bios if the compiler supports -march=z900
Posted by Christian Borntraeger 6 years, 9 months ago

On 14.01.2019 13:52, Thomas Huth wrote:
> We want to build our s390-ccw bios with -march=z900 so that it also
> works with the oldest s390x CPU that we support with TCG. However,
> Clang on s390x does not support -march=z900 anymore, so we can not
> use this compiler to build the s390-ccw bios. Thus add a proper test
> to the configure script to see whether the compiler is usable.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>

Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>

> ---
>  v2: Use compile_prog as suggested by Peter
> 
>  configure | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/configure b/configure
> index 05b7e85..2b9ba7d 100755
> --- a/configure
> +++ b/configure
> @@ -5905,8 +5905,12 @@ if test "$cpu" = "ppc64" -a "$targetos" != "Darwin" ; then
>    roms="$roms spapr-rtas"
>  fi
>  
> +# Only build s390-ccw bios if we're on s390x and the compiler has -march=z900
>  if test "$cpu" = "s390x" ; then
> -  roms="$roms s390-ccw"
> +  write_c_skeleton
> +  if compile_prog "-march=z900" ""; then
> +    roms="$roms s390-ccw"
> +  fi
>  fi
>  
>  # Probe for the need for relocating the user-only binary.
>