Hi Alex, On 6/4/21 5:51 PM, Alex Bennée wrote: > Hi, > > I have picked up the baton from Claudio to try and get the ARM > re-factoring across the line. Most of the patches from Claudio remain > unchanged and have just had minor fixups from re-basing against the > moving target. I've done my best to make sure any fixes that have been > made in the meantime weren't lost. > > I've included Phillipe's qtest_has_accel v7 patches (I had problems > with v8) to aid in my aarch64 testing. I'm expecting them to be > up-streamed by Phillipe in due course. I've also nabbed one of > Phillipe's Kconfig tweaks to allow for target specific expression of > some config variables. > > The main thing that enables the --disable-tcg build is the addition of > --with-devices-FOO configure option which is a mechanism to override > the existing default device configurations. The two that I've been > testing are a 64 bit only build on x86: > > '../../configure' '--without-default-features' \ > '--target-list=arm-softmmu,aarch64-softmmu' \ > '--with-devices-aarch64=../../configs/aarch64-softmmu/64bit-only.mak' > > which results in the aarch64-softmmu build only supporting sbsa-ref, > virt and xlnx-versal-virt. > > The second is a KVM only cross build: > > '../../configure' '--disable-docs' \ > '--target-list=aarch64-softmmu' \ > '--enable-kvm' '--disable-tcg' \ > '--cross-prefix=aarch64-linux-gnu-' \ > '--with-devices-aarch64=../../configs/aarch64-softmmu/virt-only.mak' > > Finally I've made a few minor Kconfig and testing tweaks before adding > some gitlab coverage. As a result I was able to drop the Revert: idau > patch because I can properly build an image without stray devices in > the qtree. > > The following need review: > > - gitlab: defend the new stripped down arm64 configs > - tests/qtest: make xlnx-can-test conditional on being configured > - tests/qtest: split the cdrom-test into arm/aarch64 > - hw/arm: add dependency on OR_IRQ for XLNX_VERSAL > - target/arm: move CONFIG_V7M out of default-devices
Without using --with-devices-aarch64, I'm getting: FAILED: libqemu-aarch64-softmmu.fa.p/target_arm_tcg_sysemu_m_helper.c.o cc -Ilibqemu-aarch64-softmmu.fa.p -I. -I../.. -Itarget/arm -I../../target/arm -I../../capstone/include/capstone -Iqapi -Itrace -Iui -Iui/shader -I/usr/include/pixman-1 -I/usr/include/spice-server -I/usr/include/spice-1 -I/usr/include/glib-2.0 -I/usr/lib/aarch64-linux-gnu/glib-2.0/include -fdiagnostics-color=auto -pipe -Wall -Winvalid-pch -Werror -std=gnu99 -O2 -g -isystem /home/phil/qemu/linux-headers -isystem linux-headers -iquote . -iquote /home/phil/qemu -iquote /home/phil/qemu/include -iquote /home/phil/qemu/disas/libvixl -pthread -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -Wstrict-prototypes -Wredundant-decls -Wundef -Wwrite-strings -Wmissing-prototypes -fno-strict-aliasing -fno-common -fwrapv -Wold-style-declaration -Wold-style-definition -Wtype-limits -Wformat-security -Wformat-y2k -Winit-self -Wignored-qualifiers -Wempty-body -Wnested-externs -Wendif-labels -Wexpansion-to-defined -Wimplicit-fallthrough=2 -Wno-missing-include-dirs -Wno-shift-negative-value -Wno-psabi -fstack-protector-strong -fPIE -isystem../../linux-headers -isystemlinux-headers -DNEED_CPU_H '-DCONFIG_TARGET="aarch64-softmmu-config-target.h"' '-DCONFIG_DEVICES="aarch64-softmmu-config-devices.h"' -MD -MQ libqemu-aarch64-softmmu.fa.p/target_arm_tcg_sysemu_m_helper.c.o -MF libqemu-aarch64-softmmu.fa.p/target_arm_tcg_sysemu_m_helper.c.o.d -o libqemu-aarch64-softmmu.fa.p/target_arm_tcg_sysemu_m_helper.c.o -c ../../target/arm/tcg/sysemu/m_helper.c In file included from ../../target/arm/tcg/sysemu/m_helper.c:12: /home/phil/qemu/include/exec/helper-proto.h:41:10: fatal error: trace/generated-helpers.h: No such file or directory 41 | #include "trace/generated-helpers.h" | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ compilation terminated. both --enable-xen and --disable-xen. Is that expected? Thanks, Phil.