mirror of https://github.com/xemu-project/xemu.git
configure, tests/tcg: simplify GDB conditionals
Unify HAVE_GDB_BIN (currently in config-host.mak) and HOST_GDB_SUPPORTS_ARCH into a single GDB variable in config-target.mak. Reviewed-by: Emmanouil Pitsidianakis <manos.pitsidianakis@linaro.org> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
730be6138e
commit
a47dd5c516
|
@ -1140,6 +1140,18 @@ if test "$tcg" = "auto"; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# gdb test
|
||||||
|
|
||||||
|
if test -n "$gdb_bin"; then
|
||||||
|
gdb_version=$($gdb_bin --version | head -n 1)
|
||||||
|
if version_ge ${gdb_version##* } 9.1; then
|
||||||
|
gdb_arches=$($python "$source_path/scripts/probe-gdb-support.py" $gdb_bin)
|
||||||
|
else
|
||||||
|
gdb_bin=""
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
##########################################
|
##########################################
|
||||||
# big/little endian test
|
# big/little endian test
|
||||||
cat > $TMPC << EOF
|
cat > $TMPC << EOF
|
||||||
|
@ -1660,17 +1672,7 @@ fi
|
||||||
|
|
||||||
echo "SRC_PATH=$source_path" >> $config_host_mak
|
echo "SRC_PATH=$source_path" >> $config_host_mak
|
||||||
echo "TARGET_DIRS=$target_list" >> $config_host_mak
|
echo "TARGET_DIRS=$target_list" >> $config_host_mak
|
||||||
|
echo "GDB=$gdb_bin" >> $config_host_mak
|
||||||
if test -n "$gdb_bin"; then
|
|
||||||
gdb_version=$($gdb_bin --version | head -n 1)
|
|
||||||
if version_ge ${gdb_version##* } 9.1; then
|
|
||||||
echo "HAVE_GDB_BIN=$gdb_bin" >> $config_host_mak
|
|
||||||
gdb_arches=$($python "$source_path/scripts/probe-gdb-support.py" $gdb_bin)
|
|
||||||
else
|
|
||||||
gdb_bin=""
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test "$container" != no; then
|
if test "$container" != no; then
|
||||||
echo "RUNC=$runc" >> $config_host_mak
|
echo "RUNC=$runc" >> $config_host_mak
|
||||||
fi
|
fi
|
||||||
|
@ -1715,10 +1717,6 @@ 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
|
||||||
|
|
||||||
# versioned checked in the main config_host.mak above
|
|
||||||
if test -n "$gdb_bin"; then
|
|
||||||
echo "HAVE_GDB_BIN=$gdb_bin" >> $config_host_mak
|
|
||||||
fi
|
|
||||||
if test "$plugins" = "yes" ; then
|
if test "$plugins" = "yes" ; then
|
||||||
echo "CONFIG_PLUGIN=y" >> $config_host_mak
|
echo "CONFIG_PLUGIN=y" >> $config_host_mak
|
||||||
fi
|
fi
|
||||||
|
@ -1755,7 +1753,7 @@ for target in $target_list; do
|
||||||
|
|
||||||
# will GDB work with these binaries?
|
# will GDB work with these binaries?
|
||||||
if test "${gdb_arches#*$arch}" != "$gdb_arches"; then
|
if test "${gdb_arches#*$arch}" != "$gdb_arches"; then
|
||||||
echo "HOST_GDB_SUPPORTS_ARCH=y" >> "$config_target_mak"
|
echo "GDB=$gdb_bin" >> $config_target_mak
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "run-tcg-tests-$target: $qemu\$(EXESUF)" >> Makefile.prereqs
|
echo "run-tcg-tests-$target: $qemu\$(EXESUF)" >> Makefile.prereqs
|
||||||
|
|
|
@ -4021,8 +4021,8 @@ summary(summary_info, bool_yn: true, section: 'Directories')
|
||||||
summary_info = {}
|
summary_info = {}
|
||||||
summary_info += {'python': '@0@ (version: @1@)'.format(python.full_path(), python.language_version())}
|
summary_info += {'python': '@0@ (version: @1@)'.format(python.full_path(), python.language_version())}
|
||||||
summary_info += {'sphinx-build': sphinx_build}
|
summary_info += {'sphinx-build': sphinx_build}
|
||||||
if config_host.has_key('HAVE_GDB_BIN')
|
if config_host.has_key('GDB')
|
||||||
summary_info += {'gdb': config_host['HAVE_GDB_BIN']}
|
summary_info += {'gdb': config_host['GDB']}
|
||||||
endif
|
endif
|
||||||
summary_info += {'iasl': iasl}
|
summary_info += {'iasl': iasl}
|
||||||
summary_info += {'genisoimage': config_host['GENISOIMAGE']}
|
summary_info += {'genisoimage': config_host['GENISOIMAGE']}
|
||||||
|
|
|
@ -105,19 +105,19 @@ sha512-sve: sha512.c
|
||||||
|
|
||||||
TESTS += sha512-sve
|
TESTS += sha512-sve
|
||||||
|
|
||||||
ifeq ($(HOST_GDB_SUPPORTS_ARCH),y)
|
ifneq ($(GDB),)
|
||||||
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
||||||
|
|
||||||
run-gdbstub-sysregs: sysregs
|
run-gdbstub-sysregs: sysregs
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(AARCH64_SRC)/gdbstub/test-sve.py, \
|
--bin $< --test $(AARCH64_SRC)/gdbstub/test-sve.py, \
|
||||||
basic gdbstub SVE support)
|
basic gdbstub SVE support)
|
||||||
|
|
||||||
run-gdbstub-sve-ioctls: sve-ioctls
|
run-gdbstub-sve-ioctls: sve-ioctls
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(AARCH64_SRC)/gdbstub/test-sve-ioctl.py, \
|
--bin $< --test $(AARCH64_SRC)/gdbstub/test-sve-ioctl.py, \
|
||||||
basic gdbstub SVE ZLEN support)
|
basic gdbstub SVE ZLEN support)
|
||||||
|
|
|
@ -63,45 +63,39 @@ run-test-mmap: test-mmap
|
||||||
run-test-mmap-%: test-mmap
|
run-test-mmap-%: test-mmap
|
||||||
$(call run-test, test-mmap-$*, $(QEMU) -p $* $<, $< ($* byte pages))
|
$(call run-test, test-mmap-$*, $(QEMU) -p $* $<, $< ($* byte pages))
|
||||||
|
|
||||||
ifneq ($(HAVE_GDB_BIN),)
|
ifneq ($(GDB),)
|
||||||
ifeq ($(HOST_GDB_SUPPORTS_ARCH),y)
|
|
||||||
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
||||||
|
|
||||||
run-gdbstub-sha1: sha1
|
run-gdbstub-sha1: sha1
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(MULTIARCH_SRC)/gdbstub/sha1.py, \
|
--bin $< --test $(MULTIARCH_SRC)/gdbstub/sha1.py, \
|
||||||
basic gdbstub support)
|
basic gdbstub support)
|
||||||
|
|
||||||
run-gdbstub-qxfer-auxv-read: sha1
|
run-gdbstub-qxfer-auxv-read: sha1
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-qxfer-auxv-read.py, \
|
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-qxfer-auxv-read.py, \
|
||||||
basic gdbstub qXfer:auxv:read support)
|
basic gdbstub qXfer:auxv:read support)
|
||||||
|
|
||||||
run-gdbstub-proc-mappings: sha1
|
run-gdbstub-proc-mappings: sha1
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-proc-mappings.py, \
|
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-proc-mappings.py, \
|
||||||
proc mappings support)
|
proc mappings support)
|
||||||
|
|
||||||
run-gdbstub-thread-breakpoint: testthread
|
run-gdbstub-thread-breakpoint: testthread
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-thread-breakpoint.py, \
|
--bin $< --test $(MULTIARCH_SRC)/gdbstub/test-thread-breakpoint.py, \
|
||||||
hitting a breakpoint on non-main thread)
|
hitting a breakpoint on non-main thread)
|
||||||
|
|
||||||
else
|
else
|
||||||
run-gdbstub-%:
|
run-gdbstub-%:
|
||||||
$(call skip-test, "gdbstub test $*", "no guest arch support")
|
$(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support")
|
||||||
endif
|
|
||||||
else
|
|
||||||
run-gdbstub-%:
|
|
||||||
$(call skip-test, "gdbstub test $*", "need working gdb")
|
|
||||||
endif
|
endif
|
||||||
EXTRA_RUNS += run-gdbstub-sha1 run-gdbstub-qxfer-auxv-read \
|
EXTRA_RUNS += run-gdbstub-sha1 run-gdbstub-qxfer-auxv-read \
|
||||||
run-gdbstub-proc-mappings run-gdbstub-thread-breakpoint
|
run-gdbstub-proc-mappings run-gdbstub-thread-breakpoint
|
||||||
|
|
|
@ -14,13 +14,12 @@ VPATH+=$(MULTIARCH_SYSTEM_SRC)
|
||||||
MULTIARCH_TEST_SRCS=$(wildcard $(MULTIARCH_SYSTEM_SRC)/*.c)
|
MULTIARCH_TEST_SRCS=$(wildcard $(MULTIARCH_SYSTEM_SRC)/*.c)
|
||||||
MULTIARCH_TESTS = $(patsubst $(MULTIARCH_SYSTEM_SRC)/%.c, %, $(MULTIARCH_TEST_SRCS))
|
MULTIARCH_TESTS = $(patsubst $(MULTIARCH_SYSTEM_SRC)/%.c, %, $(MULTIARCH_TEST_SRCS))
|
||||||
|
|
||||||
ifneq ($(HAVE_GDB_BIN),)
|
ifneq ($(GDB),)
|
||||||
ifeq ($(HOST_GDB_SUPPORTS_ARCH),y)
|
|
||||||
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
||||||
|
|
||||||
run-gdbstub-memory: memory
|
run-gdbstub-memory: memory
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) \
|
--qemu $(QEMU) \
|
||||||
--output $<.gdb.out \
|
--output $<.gdb.out \
|
||||||
--qargs \
|
--qargs \
|
||||||
|
@ -29,7 +28,7 @@ run-gdbstub-memory: memory
|
||||||
softmmu gdbstub support)
|
softmmu gdbstub support)
|
||||||
run-gdbstub-interrupt: interrupt
|
run-gdbstub-interrupt: interrupt
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) \
|
--qemu $(QEMU) \
|
||||||
--output $<.gdb.out \
|
--output $<.gdb.out \
|
||||||
--qargs \
|
--qargs \
|
||||||
|
@ -38,7 +37,7 @@ run-gdbstub-interrupt: interrupt
|
||||||
softmmu gdbstub support)
|
softmmu gdbstub support)
|
||||||
run-gdbstub-untimely-packet: hello
|
run-gdbstub-untimely-packet: hello
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--gdb-args "-ex 'set debug remote 1'" \
|
--gdb-args "-ex 'set debug remote 1'" \
|
||||||
--output untimely-packet.gdb.out \
|
--output untimely-packet.gdb.out \
|
||||||
--stderr untimely-packet.gdb.err \
|
--stderr untimely-packet.gdb.err \
|
||||||
|
@ -51,11 +50,7 @@ run-gdbstub-untimely-packet: hello
|
||||||
"GREP", file untimely-packet.gdb.err)
|
"GREP", file untimely-packet.gdb.err)
|
||||||
else
|
else
|
||||||
run-gdbstub-%:
|
run-gdbstub-%:
|
||||||
$(call skip-test, "gdbstub test $*", "no guest arch support")
|
$(call skip-test, "gdbstub test $*", "need working gdb with $(patsubst -%,,$(TARGET_NAME)) support")
|
||||||
endif
|
|
||||||
else
|
|
||||||
run-gdbstub-%:
|
|
||||||
$(call skip-test, "gdbstub test $*", "need working gdb")
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
MULTIARCH_RUNS += run-gdbstub-memory run-gdbstub-interrupt run-gdbstub-untimely-packet
|
MULTIARCH_RUNS += run-gdbstub-memory run-gdbstub-interrupt run-gdbstub-untimely-packet
|
||||||
|
|
|
@ -81,12 +81,12 @@ $(Z15_TESTS): CFLAGS+=-march=z15 -O2
|
||||||
TESTS+=$(Z15_TESTS)
|
TESTS+=$(Z15_TESTS)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(HOST_GDB_SUPPORTS_ARCH),y)
|
ifneq ($(GDB),)
|
||||||
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
GDB_SCRIPT=$(SRC_PATH)/tests/guest-debug/run-test.py
|
||||||
|
|
||||||
run-gdbstub-signals-s390x: signals-s390x
|
run-gdbstub-signals-s390x: signals-s390x
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(S390X_SRC)/gdbstub/test-signals-s390x.py, \
|
--bin $< --test $(S390X_SRC)/gdbstub/test-signals-s390x.py, \
|
||||||
mixing signals and debugging)
|
mixing signals and debugging)
|
||||||
|
@ -95,7 +95,7 @@ hello-s390x-asm: CFLAGS+=-nostdlib
|
||||||
|
|
||||||
run-gdbstub-svc: hello-s390x-asm
|
run-gdbstub-svc: hello-s390x-asm
|
||||||
$(call run-test, $@, $(GDB_SCRIPT) \
|
$(call run-test, $@, $(GDB_SCRIPT) \
|
||||||
--gdb $(HAVE_GDB_BIN) \
|
--gdb $(GDB) \
|
||||||
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
--qemu $(QEMU) --qargs "$(QEMU_OPTS)" \
|
||||||
--bin $< --test $(S390X_SRC)/gdbstub/test-svc.py, \
|
--bin $< --test $(S390X_SRC)/gdbstub/test-svc.py, \
|
||||||
single-stepping svc)
|
single-stepping svc)
|
||||||
|
|
Loading…
Reference in New Issue