On 19/12/2021 15.17, Paolo Bonzini wrote:
DIRS is used to create the directory in which the LINKS symbolic links
reside, or to create directories for object files. The former can
be done directly in the symlinking loop, while the latter is done
by Meson already, so DIRS is not necessary.
Reviewed-by: Peter Maydell <peter.mayd...@linaro.org>
Reviewed-by: Alex Bennée <alex.ben...@linaro.org>
Tested-by: Alex Bennée <alex.ben...@linaro.org>
Signed-off-by: Paolo Bonzini <pbonz...@redhat.com>
---
configure | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
diff --git a/configure b/configure
index ba85bbb54b..8ccfe51673 100755
--- a/configure
+++ b/configure
@@ -3762,7 +3762,6 @@ if test "$safe_stack" = "yes"; then
fi
# If we're using a separate build tree, set it up now.
-# DIRS are directories which we simply mkdir in the build tree;
# LINKS are things to symlink back into the source tree
# (these can be both files and directories).
# Caution: do not add files or directories here using wildcards. This
@@ -3774,12 +3773,6 @@ fi
# UNLINK is used to remove symlinks from older development versions
# that might get into the way when doing "git update" without doing
# a "make distclean" in between.
-DIRS="tests tests/tcg tests/qapi-schema tests/qtest/libqos"
-DIRS="$DIRS tests/qtest tests/qemu-iotests tests/vm tests/fp tests/qgraph"
-DIRS="$DIRS docs docs/interop fsdev scsi"
-DIRS="$DIRS pc-bios/optionrom pc-bios/s390-ccw"
-DIRS="$DIRS roms/seabios"
-DIRS="$DIRS contrib/plugins/"
LINKS="Makefile"
LINKS="$LINKS tests/tcg/Makefile.target"
LINKS="$LINKS pc-bios/optionrom/Makefile"
@@ -3807,9 +3800,9 @@ for bios_file in \
do
LINKS="$LINKS pc-bios/$(basename $bios_file)"
done
-mkdir -p $DIRS
for f in $LINKS ; do
if [ -e "$source_path/$f" ]; then
+ mkdir -p `dirname ./$f`
symlink "$source_path/$f" "$f"
fi
done
Hi Paolo,
I think this patch created some warnings with fresh build directories on git
checkouts where roms/seabios is not initialized:
.../qemu/configure: line 3778: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3779: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3780: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3781: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3782: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3783: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3784: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3785: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3786: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3787: roms/seabios/config.mak: No such file or
directory
.../qemu/configure: line 3788: roms/seabios/config.mak: No such file or
directory
It's this block in the configure script which now does not find the
roms/seabios directory anymore:
# temporary config to build submodules
for rom in seabios; do
config_mak=roms/$rom/config.mak
echo "# Automatically generated by configure - do not modify" > $config_mak
echo "SRC_PATH=$source_path/roms/$rom" >> $config_mak
echo "AS=$as" >> $config_mak
echo "CCAS=$ccas" >> $config_mak
echo "CC=$cc" >> $config_mak
echo "BCC=bcc" >> $config_mak
echo "CPP=$cpp" >> $config_mak
echo "OBJCOPY=objcopy" >> $config_mak
echo "IASL=$iasl" >> $config_mak
echo "LD=$ld" >> $config_mak
echo "RANLIB=$ranlib" >> $config_mak
done
If I get that right, we only need config.mak if the seabios submodule has
been checked out? So the right fix might be to skip the creation of
config.mak here if roms/seabios is not available?
Thomas