configure: move tests/tcg/Makefile.prereqs to root build directory

It will not be specific to tests/tcg anymore, since it will be possible to
build firmware using container-based cross compilers too.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20220929114231.583801-26-alex.bennee@linaro.org>
This commit is contained in:
Paolo Bonzini 2022-09-29 12:42:05 +01:00 committed by Alex Bennée
parent 15b273f8e6
commit b898bf2846
3 changed files with 11 additions and 12 deletions

View file

@ -42,6 +42,9 @@ configure: ;
ifneq ($(wildcard config-host.mak),) ifneq ($(wildcard config-host.mak),)
include config-host.mak include config-host.mak
include Makefile.prereqs
Makefile.prereqs: config-host.mak
git-submodule-update: git-submodule-update:
.git-submodule-status: git-submodule-update config-host.mak .git-submodule-status: git-submodule-update config-host.mak
Makefile: .git-submodule-status Makefile: .git-submodule-status
@ -217,7 +220,7 @@ qemu-%.tar.bz2:
distclean: clean recurse-distclean distclean: clean recurse-distclean
-$(quiet-@)test -f build.ninja && $(NINJA) $(NINJAFLAGS) -t clean -g || : -$(quiet-@)test -f build.ninja && $(NINJA) $(NINJAFLAGS) -t clean -g || :
rm -f config-host.mak qemu-bundle rm -f config-host.mak Makefile.prereqs qemu-bundle
rm -f tests/tcg/config-*.mak rm -f tests/tcg/config-*.mak
rm -f config.status rm -f config.status
rm -f roms/seabios/config.mak rm -f roms/seabios/config.mak

15
configure vendored
View file

@ -2154,6 +2154,7 @@ write_target_makefile() {
} }
write_container_target_makefile() { write_container_target_makefile() {
echo "$1: docker-image-$container_image" >> Makefile.prereqs
echo "EXTRA_CFLAGS=$target_cflags" echo "EXTRA_CFLAGS=$target_cflags"
if test -n "$container_cross_cc"; then if test -n "$container_cross_cc"; then
echo "CC=$docker_py cc --cc $container_cross_cc -i qemu/$container_image -s $source_path --" echo "CC=$docker_py cc --cc $container_cross_cc -i qemu/$container_image -s $source_path --"
@ -2258,6 +2259,8 @@ for f in $LINKS ; do
fi fi
done done
echo "# Automatically generated by configure - do not modify" > Makefile.prereqs
# Mac OS X ships with a broken assembler # Mac OS X ships with a broken assembler
roms= roms=
if test "$targetos" != "darwin" && test "$targetos" != "sunos" && \ if test "$targetos" != "darwin" && test "$targetos" != "sunos" && \
@ -2452,10 +2455,7 @@ if test "$safe_stack" = "yes"; then
fi fi
# tests/tcg configuration # tests/tcg configuration
(makefile=tests/tcg/Makefile.prereqs (config_host_mak=tests/tcg/config-host.mak
echo "# Automatically generated by configure - do not modify" > $makefile
config_host_mak=tests/tcg/config-host.mak
mkdir -p tests/tcg mkdir -p tests/tcg
echo "# Automatically generated by configure - do not modify" > $config_host_mak echo "# Automatically generated by configure - do not modify" > $config_host_mak
echo "SRC_PATH=$source_path" >> $config_host_mak echo "SRC_PATH=$source_path" >> $config_host_mak
@ -2493,8 +2493,7 @@ for target in $target_list; do
write_target_makefile >> "$config_target_mak" write_target_makefile >> "$config_target_mak"
elif test -n "$container_image"; then elif test -n "$container_image"; then
build_static=y build_static=y
echo "build-tcg-tests-$target: docker-image-$container_image" >> $makefile write_container_target_makefile build-tcg-tests-$target >> "$config_target_mak"
write_container_target_makefile >> "$config_target_mak"
got_cross_cc=yes got_cross_cc=yes
fi fi
if test $got_cross_cc = yes; then if test $got_cross_cc = yes; then
@ -2504,11 +2503,11 @@ for target in $target_list; do
echo "TARGET=$target" >> "$config_target_mak" echo "TARGET=$target" >> "$config_target_mak"
echo "QEMU=$PWD/$qemu" >> "$config_target_mak" echo "QEMU=$PWD/$qemu" >> "$config_target_mak"
echo "BUILD_STATIC=$build_static" >> "$config_target_mak" echo "BUILD_STATIC=$build_static" >> "$config_target_mak"
echo "run-tcg-tests-$target: $qemu\$(EXESUF)" >> $makefile echo "run-tcg-tests-$target: $qemu\$(EXESUF)" >> Makefile.prereqs
tcg_tests_targets="$tcg_tests_targets $target" tcg_tests_targets="$tcg_tests_targets $target"
fi fi
done done
echo "TCG_TESTS_TARGETS=$tcg_tests_targets" >> $makefile) echo "TCG_TESTS_TARGETS=$tcg_tests_targets" >> config-host.mak)
if test "$skip_meson" = no; then if test "$skip_meson" = no; then
cross="config-meson.cross.new" cross="config-meson.cross.new"

View file

@ -36,9 +36,6 @@ export SRC_PATH
SPEED = quick SPEED = quick
-include tests/tcg/Makefile.prereqs
tests/tcg/Makefile.prereqs: config-host.mak
# Per guest TCG tests # Per guest TCG tests
BUILD_TCG_TARGET_RULES=$(patsubst %,build-tcg-tests-%, $(TCG_TESTS_TARGETS)) BUILD_TCG_TARGET_RULES=$(patsubst %,build-tcg-tests-%, $(TCG_TESTS_TARGETS))
CLEAN_TCG_TARGET_RULES=$(patsubst %,clean-tcg-tests-%, $(TCG_TESTS_TARGETS)) CLEAN_TCG_TARGET_RULES=$(patsubst %,clean-tcg-tests-%, $(TCG_TESTS_TARGETS))