From: Daniel Henrique Barboza <danielhb413@gmail.com>
To: "Alex Bennée" <alex.bennee@linaro.org>, qemu-devel@nongnu.org
Cc: fam@euphon.net, berrange@redhat.com, f4bug@amsat.org,
aurelien@aurel32.net, pbonzini@redhat.com, stefanha@redhat.com,
crosa@redhat.com
Subject: Re: [PATCH v1 3/4] Revert "configure: build ROMs with container-based cross compilers"
Date: Tue, 11 Oct 2022 15:38:25 -0300 [thread overview]
Message-ID: <38bf39f9-4c67-eb20-516d-ecd613c1caf8@gmail.com> (raw)
In-Reply-To: <20221011113417.794841-4-alex.bennee@linaro.org>
On 10/11/22 08:34, Alex Bennée wrote:
> This reverts commit 730fe750fba63023e294ff0acf0f874369f1946f.
>
> Unconditionally building all the bios for all arches was a little too
> far too fast.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: Paolo Bonzini <pbonzini@redhat.com>
> ---
Thanks for this patch. I was having problems building the ppc64 targets in
an x86 Intel Xeon host today. 'make -j' was being spammed with errors like
this:
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:32: strstr.o] Error 1
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:44: sbrk.o] Error 1
make[1]: *** [Makefile:24: virtio.o] Error 1
Traceback (most recent call last):
File "/home/danielhb/qemu/tests/docker/docker.py", line 683, in <module>
sys.exit(main())
File "/home/danielhb/qemu/tests/docker/docker.py", line 679, in main
return args.cmdobj.run(args, argv)
File "/home/danielhb/qemu/tests/docker/docker.py", line 657, in run
return Docker().run(cmd, False, quiet=args.quiet,
File "/home/danielhb/qemu/tests/docker/docker.py", line 370, in run
ret = self._do_check(["run", "--rm", "--label",
File "/home/danielhb/qemu/tests/docker/docker.py", line 247, in _do_check
return subprocess.check_call(self._command + cmd, **kwargs)
File "/usr/lib64/python3.9/subprocess.py", line 373, in check_call
raise CalledProcessError(retcode, cmd)
subprocess.CalledProcessError: Command '['podman', 'run', '--rm', '--label', 'com.qemu.instance.uuid=7782aa219ff64bc89847adf489cf49c3', '--userns=keep-id', '-u', '1005', '-w', '/home/danielhb/qemu/build/pc-bios/s390-ccw', '-v', '/home/danielhb/qemu/build/pc-bios/s390-ccw:/home/danielhb/qemu/build/pc-bios/s390-ccw:rw', '-v', '/home/danielhb/qemu:/home/danielhb/qemu:ro,z', 'qemu/debian-s390x-cross', 's390x-linux-gnu-gcc', '-Wall', '-ffreestanding', '-fno-delete-null-pointer-checks', '-fno-common', '-fPIE', '-fwrapv', '-fno-strict-aliasing', '-fno-asynchronous-unwind-tables', '-msoft-float', '-std=gnu99', '-march=z10', '-O2', '-g', '-nostdinc', '-I/home/danielhb/qemu/pc-bios/s390-ccw/../../roms/SLOF/lib/libc/include', '-I/home/danielhb/qemu/pc-bios/s390-ccw/../../roms/SLOF/lib/libnet', '-MMD', '-MP', '-MT', 'rand.o', '-MF', 'rand.d', '-c', '-o', 'rand.o', '/home/danielhb/qemu/pc-bios/s390-ccw/../../roms/SLOF/lib/libc/stdlib/rand.c']' returned non-zero exit status 127.
filter=--filter=label=com.qemu.instance.uuid=7782aa219ff64bc89847adf489cf49c3
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:41: fprintf.o] Error 1
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:32: strncasecmp.o] Error 1
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:26: isdigit.o] Error 1
make[1]: *** [/home/danielhb/qemu/pc-bios/s390-ccw/netboot.mak:36: rand.o] Error 1
make: *** [Makefile:195: pc-bios/s390-ccw/all] Error 2
I don't see this error in my development box though. I was going to check whether I
was missing packages from one system to the other.
But this patch makes 'make -j' functional again for me.
Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com>
Tested-by: Daniel Henrique Barboza <danielhb413@gmail.com>
> configure | 30 ++++++++++++------------------
> 1 file changed, 12 insertions(+), 18 deletions(-)
>
> diff --git a/configure b/configure
> index baa69189f0..45ee6f4eb3 100755
> --- a/configure
> +++ b/configure
> @@ -2121,7 +2121,7 @@ probe_target_compiler() {
> target_ranlib=
> target_strip=
> fi
> - test -n "$target_cc" || test -n "$container_image"
> + test -n "$target_cc"
> }
>
> write_target_makefile() {
> @@ -2268,7 +2268,7 @@ if test "$targetos" != "darwin" && test "$targetos" != "sunos" && \
> config_mak=pc-bios/optionrom/config.mak
> echo "# Automatically generated by configure - do not modify" > $config_mak
> echo "TOPSRC_DIR=$source_path" >> $config_mak
> - write_target_makefile pc-bios/optionrom/all >> $config_mak
> + write_target_makefile >> $config_mak
> fi
>
> if test "$softmmu" = yes && probe_target_compiler ppc-softmmu; then
> @@ -2276,31 +2276,25 @@ if test "$softmmu" = yes && probe_target_compiler ppc-softmmu; then
> config_mak=pc-bios/vof/config.mak
> echo "# Automatically generated by configure - do not modify" > $config_mak
> echo "SRC_DIR=$source_path/pc-bios/vof" >> $config_mak
> - write_target_makefile pc-bios/vof/all >> $config_mak
> + write_target_makefile >> $config_mak
> fi
>
> # Only build s390-ccw bios if the compiler has -march=z900 or -march=z10
> # (which is the lowest architecture level that Clang supports)
> if test "$softmmu" = yes && probe_target_compiler s390x-softmmu; then
> - got_cross_cc=no
> - if test -n "$target_cc"; then
> - write_c_skeleton
> - do_compiler "$target_cc" $target_cc_cflags -march=z900 -o $TMPO -c $TMPC
> - has_z900=$?
> - if [ $has_z900 = 0 ] || do_compiler "$target_cc" $target_cc_cflags -march=z10 -msoft-float -Werror -o $TMPO -c $TMPC; then
> - if [ $has_z900 != 0 ]; then
> - echo "WARNING: Your compiler does not support the z900!"
> - echo " The s390-ccw bios will only work with guest CPUs >= z10."
> - fi
> - got_cross_cc=yes
> + write_c_skeleton
> + do_compiler "$target_cc" $target_cc_cflags -march=z900 -o $TMPO -c $TMPC
> + has_z900=$?
> + if [ $has_z900 = 0 ] || do_compiler "$target_cc" $target_cc_cflags -march=z10 -msoft-float -Werror -o $TMPO -c $TMPC; then
> + if [ $has_z900 != 0 ]; then
> + echo "WARNING: Your compiler does not support the z900!"
> + echo " The s390-ccw bios will only work with guest CPUs >= z10."
> fi
> - fi
> - if test "$got_cross_cc" = yes || test -n "$container_image"; then
> roms="$roms pc-bios/s390-ccw"
> config_mak=pc-bios/s390-ccw/config-host.mak
> echo "# Automatically generated by configure - do not modify" > $config_mak
> echo "SRC_PATH=$source_path/pc-bios/s390-ccw" >> $config_mak
> - write_target_makefile pc-bios/s390-ccw/all >> $config_mak
> + write_target_makefile >> $config_mak
> # SLOF is required for building the s390-ccw firmware on s390x,
> # since it is using the libnet code from SLOF for network booting.
> git_submodules="${git_submodules} roms/SLOF"
> @@ -2488,7 +2482,7 @@ for target in $target_list; do
> ;;
> esac
>
> - if probe_target_compiler $target; then
> + if probe_target_compiler $target || test -n "$container_image"; then
> test -n "$container_image" && build_static=y
> mkdir -p "tests/tcg/$target"
> config_target_mak=tests/tcg/$target/config-target.mak
next prev parent reply other threads:[~2022-10-11 18:43 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-11 11:34 [PATCH v1 0/4] testing/next hotfix (revert bios build, mingw) Alex Bennée
2022-10-11 11:34 ` [PATCH v1 1/4] tests/docker: update fedora-win[32|64]-cross with lcitool Alex Bennée
2022-10-11 14:26 ` Stefan Hajnoczi
2022-10-11 16:53 ` Alex Bennée
2022-10-11 11:34 ` [PATCH v1 2/4] tests/docker: update test-mingw to run single build Alex Bennée
2022-10-11 11:34 ` [PATCH v1 3/4] Revert "configure: build ROMs with container-based cross compilers" Alex Bennée
2022-10-11 18:38 ` Daniel Henrique Barboza [this message]
2022-10-11 11:34 ` [PATCH v1 4/4] configure: expose the direct container command Alex Bennée
2022-10-11 18:58 ` [PATCH v1 0/4] testing/next hotfix (revert bios build, mingw) Stefan Hajnoczi
2022-10-11 19:29 ` Alex Bennée
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=38bf39f9-4c67-eb20-516d-ecd613c1caf8@gmail.com \
--to=danielhb413@gmail.com \
--cc=alex.bennee@linaro.org \
--cc=aurelien@aurel32.net \
--cc=berrange@redhat.com \
--cc=crosa@redhat.com \
--cc=f4bug@amsat.org \
--cc=fam@euphon.net \
--cc=pbonzini@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=stefanha@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.