On 06/05/2021 09.38, Peter Maydell wrote:
On Thu, 6 May 2021 at 08:01, Thomas Huth <th...@redhat.com> wrote:
On 05/05/2021 20.06, Peter Maydell wrote:
On Mon, 3 May 2021 at 11:45, Thomas Huth <th...@redhat.com> wrote:
Hi Peter,
the following changes since commit 53c5433e84e8935abed8e91d4a2eb813168a0ecf:
Merge remote-tracking branch 'remotes/rth-gitlab/tags/pull-tcg-20210501'
into staging (2021-05-02 12:02:46 +0100)
are available in the Git repository at:
https://gitlab.com/thuth/qemu.git tags/pull-request-2021-05-03
for you to fetch changes up to 8f582fa290e5d5d0a00db23eaf1ab1bb3d3ae68d:
util/compatfd.c: Replaced a malloc call with g_malloc. (2021-05-03 11:40:40
+0200)
----------------------------------------------------------------
* Removal of the deprecated moxie target
* Replace some YAML anchors by "extends" in the Gitlab-CI
* Some small improvements for using the qtests
* Some other small misc patches
This fails to build as an incremental (not from-clean) build:
[...]
../../meson.build:1291:2: ERROR: Failed to load
/home/ubuntu/qemu/default-configs/targets/moxie-softmmu.mak: [Errno 2]
No such file or directory:
'/home/ubuntu/qemu/default-configs/targets/moxie-softmmu.mak'
D'oh! I think I can work-around the problem with a patch like
this on top:
diff a/configure b/configure
--- a/configure
+++ b/configure
@@ -1686,6 +1686,11 @@ fi
for config in $mak_wilds; do
target="$(basename "$config" .mak)"
+ if [ "$target" = "moxie-softmmu" ]; then
+ # This is a work-around to make incremental builds pass after
+ # moxie-softmmu has been removed. It can be removed later.
+ continue
+ fi
if echo "$target_list_exclude" | grep -vq "$target"; then
default_target_list="${default_target_list} $target"
fi
diff a/default-configs/targets/moxie-softmmu.mak
b/default-configs/targets/moxie-softmmu.mak
new file mode 100644
index 0000000000..23fd596b66
--- /dev/null
+++ b/default-configs/targets/moxie-softmmu.mak
@@ -0,0 +1,2 @@
+# This is just a dummy file to avoid that incremental builds are failing.
+# It can be removed as soon as all builders have been updated.
Does that look acceptable? If yes, I'll respin my PR with that
squashed into the moxie patch.
Ugly, but I guess so. It would be nice to fix the underlying cause, though:
meson/ninja should just DTRT if we remove a target. We have a couple
of other target removals coming through as well...
Ok, after having another close look, I think the main problem here is that
"configure" does not get re-run, and thus a wrong set of TARGET_DIRS get
supplied to meson. I think this should fix it:
diff --git a/Makefile b/Makefile
index bcbbec71a1..3088502329 100644
--- a/Makefile
+++ b/Makefile
@@ -85,7 +85,8 @@ x := $(shell rm -rf meson-private meson-info meson-logs)
endif
# 1. ensure config-host.mak is up-to-date
-config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios $(SRC_PATH)/VERSION
+config-host.mak: $(SRC_PATH)/configure $(SRC_PATH)/pc-bios $(SRC_PATH)/VERSION
\
+ $(SRC_PATH)/default-configs/targets
@echo config-host.mak is out-of-date, running configure
@if test -f meson-private/coredata.dat; then \
./config.status --skip-meson; \
I.e. re-run configure if somethings in default-configs/targets changed.
Does that look sane?
Thomas