On Thu, Mar 28, 2024 at 11:27:50AM +0100, Anthony Harivel wrote: > Hi Daniel, > > My apologies for all the missed feedback in v2. > I'll be more organized for my next iteration. > > For this specific comment below, I would like to make sure I'm testing > the right way. > > > > diff --git a/meson.build b/meson.build > > > index b375248a7614..376da49b60ab 100644 > > > --- a/meson.build > > > +++ b/meson.build > > > @@ -4052,6 +4052,11 @@ if have_tools > > > dependencies: [authz, crypto, io, qom, qemuutil, > > > libcap_ng, mpathpersist], > > > install: true) > > > + > > > + executable('qemu-vmsr-helper', > > > files('tools/i386/qemu-vmsr-helper.c'), > > > + dependencies: [authz, crypto, io, qom, qemuutil, > > > + libcap_ng, mpathpersist], > > > + install: true) > > > endif > > > > Missed feedback from v2 saying this must /only/ be built > > on x86 architectures. It fails to build on others due > > to the ASM usage eg > > > > https://gitlab.com/berrange/qemu/-/jobs/6445384073 > > > > To recreate your build system, I need to, for example, compile with the > following configuration for arm64 (aarch64): > > ../configure --enable-werror --disable-docs --enable-fdt=system > --disable-user --cross-prefix=aarch64-linux-gnu- > --target-list-exclude="arm-softmmu cris-softmmu i386-softmmu > microblaze-softmmu mips-softmmu mipsel-softmmu mips64-softmmu > ppc-softmmu riscv32-softmmu sh4-softmmu sparc-softmmu xtensa-softmmu" > > This is cross-compiling on x86 right? > Because on my laptop I've got the following error: > > WARNING: unrecognized host CPU, proceeding with 'uname -m' output 'x86_64' > python determined to be '/usr/bin/python3' > python version: Python 3.12.2 > mkvenv: Creating non-isolated virtual environment at 'pyvenv' > mkvenv: checking for meson>=0.63.0 > > ERROR: Unrecognized host OS (uname -s reports 'Linux') > > It looks like it wants to build natively on aarch64. > Maybe I need to create a VM with aarch64 Debian and compile natively? > Might take a long time but I'm not sure this is the best way.
You can do this all with our Debian cross build containers locally Either build the container fresh podman build --tag qemuarm64 -f tests/docker/dockerfiles/debian-arm64-cross.docker Or pull down the one from CI podman pull registry.gitlab.com/qemu-project/qemu/qemu/debian-arm64-cross Inside the container you just need to clone your QEMU repo and then run ./configure $QEMU_CONFIGURE_OPTS --target-list=x86_64-softmmu $QEMU_CONFIGURE_OPTS expands to the args needed for a cross-compile, as it set by the container itself. Alternatively fork the project on gitlab, and then push your branch to your fork, while requesting CI git push -o ci.variable=QEMU_CI=1 <gitlab remote> <branch name> then in the gitlab UI, you can press play on the individual jobs you want to test. See docs/devel/testing.rst for info on that. With 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 :|