* [PATCH v2 01/19] tests/vm/openbsd: Use the system dtc package
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 02/19] tests/tcg: Add -fno-stack-protector Alex Bennée
` (17 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
From: Thomas Huth <thuth@redhat.com>
We can use the pre-packaged libfdt from the dtc package to avoid
that we have to compile this code each time again and again.
While we're at it, the "--python=python3" does not seemt to be
necessary anymore, so we can drop it.
Signed-off-by: Thomas Huth <thuth@redhat.com>
Message-Id: <20231016154049.37147-1-thuth@redhat.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-2-alex.bennee@linaro.org>
---
tests/vm/openbsd | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tests/vm/openbsd b/tests/vm/openbsd
index 6b4fc29793..85c5bb3536 100755
--- a/tests/vm/openbsd
+++ b/tests/vm/openbsd
@@ -27,6 +27,7 @@ class OpenBSDVM(basevm.BaseVM):
size = "20G"
pkgs = [
# tools
+ "dtc",
"git",
"pkgconf",
"bzip2", "xz",
@@ -67,8 +68,9 @@ class OpenBSDVM(basevm.BaseVM):
cd $(mktemp -d /home/qemu/qemu-test.XXXXXX);
mkdir src build; cd src;
tar -xf /dev/rsd1c;
- cd ../build
- ../src/configure --cc=cc --python=python3 {configure_opts};
+ cd ../build;
+ ../src/configure --cc=cc --extra-cflags=-I/usr/local/include \
+ --extra-ldflags=-L/usr/local/lib {configure_opts};
gmake --output-sync -j{jobs} {target} {verbose};
"""
poweroff = "halt -p"
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 02/19] tests/tcg: Add -fno-stack-protector
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
2023-10-29 14:50 ` [PATCH v2 01/19] tests/vm/openbsd: Use the system dtc package Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 03/19] gitlab: split alpha testing into a legacy container Alex Bennée
` (16 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss, Akihiko Odaki
From: Akihiko Odaki <akihiko.odaki@daynix.com>
A build of GCC 13.2 will have stack protector enabled by default if it
was configured with --enable-default-ssp option. For such a compiler,
it is necessary to explicitly disable stack protector when linking
without standard libraries.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20230731091042.139159-3-akihiko.odaki@daynix.com>
[AJB: fix comment string typo]
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-3-alex.bennee@linaro.org>
---
tests/tcg/mips/hello-mips.c | 4 ++--
tests/tcg/Makefile.target | 2 +-
tests/tcg/aarch64/Makefile.target | 2 +-
tests/tcg/arm/Makefile.target | 2 +-
tests/tcg/cris/Makefile.target | 2 +-
tests/tcg/hexagon/Makefile.target | 2 +-
tests/tcg/i386/Makefile.target | 2 +-
tests/tcg/minilib/Makefile.target | 2 +-
tests/tcg/mips/Makefile.target | 2 +-
9 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/tests/tcg/mips/hello-mips.c b/tests/tcg/mips/hello-mips.c
index 4e1cf501af..38e22d00e3 100644
--- a/tests/tcg/mips/hello-mips.c
+++ b/tests/tcg/mips/hello-mips.c
@@ -5,8 +5,8 @@
* http://www.linux-mips.org/wiki/MIPSABIHistory
* http://www.linux.com/howtos/Assembly-HOWTO/mips.shtml
*
-* mipsel-linux-gcc -nostdlib -mno-abicalls -fno-PIC -mabi=32 \
-* -O2 -static -o hello-mips hello-mips.c
+* mipsel-linux-gcc -nostdlib -mno-abicalls -fno-PIC -fno-stack-protector \
+* -mabi=32 -O2 -static -o hello-mips hello-mips.c
*
*/
#define __NR_SYSCALL_BASE 4000
diff --git a/tests/tcg/Makefile.target b/tests/tcg/Makefile.target
index f3a189c9d4..8cf65f68dd 100644
--- a/tests/tcg/Makefile.target
+++ b/tests/tcg/Makefile.target
@@ -123,7 +123,7 @@ else
# For system targets we include a different Makefile fragment as the
# build options for bare programs are usually pretty different. They
# are expected to provide their own build recipes.
-EXTRA_CFLAGS += -ffreestanding
+EXTRA_CFLAGS += -ffreestanding -fno-stack-protector
-include $(SRC_PATH)/tests/tcg/minilib/Makefile.target
-include $(SRC_PATH)/tests/tcg/multiarch/system/Makefile.softmmu-target
-include $(SRC_PATH)/tests/tcg/$(TARGET_NAME)/Makefile.softmmu-target
diff --git a/tests/tcg/aarch64/Makefile.target b/tests/tcg/aarch64/Makefile.target
index 62b38c792f..0c84b61ae0 100644
--- a/tests/tcg/aarch64/Makefile.target
+++ b/tests/tcg/aarch64/Makefile.target
@@ -53,7 +53,7 @@ endif
# bti-1 tests the elf notes, so we require special compiler support.
ifneq ($(CROSS_CC_HAS_ARMV8_BTI),)
AARCH64_TESTS += bti-1 bti-3
-bti-1 bti-3: CFLAGS += -mbranch-protection=standard
+bti-1 bti-3: CFLAGS += -fno-stack-protector -mbranch-protection=standard
bti-1 bti-3: LDFLAGS += -nostdlib
endif
# bti-2 tests PROT_BTI, so no special compiler support required.
diff --git a/tests/tcg/arm/Makefile.target b/tests/tcg/arm/Makefile.target
index 0038cef02c..3473f4619e 100644
--- a/tests/tcg/arm/Makefile.target
+++ b/tests/tcg/arm/Makefile.target
@@ -12,7 +12,7 @@ float_madds: CFLAGS+=-mfpu=neon-vfpv4
# Basic Hello World
ARM_TESTS = hello-arm
-hello-arm: CFLAGS+=-marm -ffreestanding
+hello-arm: CFLAGS+=-marm -ffreestanding -fno-stack-protector
hello-arm: LDFLAGS+=-nostdlib
# IWMXT floating point extensions
diff --git a/tests/tcg/cris/Makefile.target b/tests/tcg/cris/Makefile.target
index 43587d2769..713e2a5b6c 100644
--- a/tests/tcg/cris/Makefile.target
+++ b/tests/tcg/cris/Makefile.target
@@ -30,7 +30,7 @@ AS = $(CC) -x assembler-with-cpp
LD = $(CC)
# we rely on GCC inline:ing the stuff we tell it to in many places here.
-CFLAGS = -Winline -Wall -g -O2 -static
+CFLAGS = -Winline -Wall -g -O2 -static -fno-stack-protector
NOSTDFLAGS = -nostartfiles -nostdlib
ASFLAGS += -mcpu=v10 -g -Wa,-I,$(SRC_PATH)/tests/tcg/cris/bare
CRT_FILES = crt.o sys.o
diff --git a/tests/tcg/hexagon/Makefile.target b/tests/tcg/hexagon/Makefile.target
index 87ed2c90b9..f839b2c0d5 100644
--- a/tests/tcg/hexagon/Makefile.target
+++ b/tests/tcg/hexagon/Makefile.target
@@ -19,7 +19,7 @@
EXTRA_RUNS =
CFLAGS += -Wno-incompatible-pointer-types -Wno-undefined-internal
-CFLAGS += -fno-unroll-loops
+CFLAGS += -fno-unroll-loops -fno-stack-protector
HEX_SRC=$(SRC_PATH)/tests/tcg/hexagon
VPATH += $(HEX_SRC)
diff --git a/tests/tcg/i386/Makefile.target b/tests/tcg/i386/Makefile.target
index fdf757c6ce..3dec7c6c42 100644
--- a/tests/tcg/i386/Makefile.target
+++ b/tests/tcg/i386/Makefile.target
@@ -35,7 +35,7 @@ run-test-aes: QEMU_OPTS += -cpu max
#
# hello-i386 is a barebones app
#
-hello-i386: CFLAGS+=-ffreestanding
+hello-i386: CFLAGS+=-ffreestanding -fno-stack-protector
hello-i386: LDFLAGS+=-nostdlib
# test-386 includes a couple of additional objects that need to be
diff --git a/tests/tcg/minilib/Makefile.target b/tests/tcg/minilib/Makefile.target
index c821d2806a..af0bf54be9 100644
--- a/tests/tcg/minilib/Makefile.target
+++ b/tests/tcg/minilib/Makefile.target
@@ -12,7 +12,7 @@ SYSTEM_MINILIB_SRC=$(SRC_PATH)/tests/tcg/minilib
MINILIB_SRCS=$(wildcard $(SYSTEM_MINILIB_SRC)/*.c)
MINILIB_OBJS=$(patsubst $(SYSTEM_MINILIB_SRC)/%.c, %.o, $(MINILIB_SRCS))
-MINILIB_CFLAGS+=-nostdlib -ggdb -O0
+MINILIB_CFLAGS+=-nostdlib -fno-stack-protector -ggdb -O0
MINILIB_INC=-isystem $(SYSTEM_MINILIB_SRC)
.PRECIOUS: $(MINILIB_OBJS)
diff --git a/tests/tcg/mips/Makefile.target b/tests/tcg/mips/Makefile.target
index 1a994d5525..5d17c1706e 100644
--- a/tests/tcg/mips/Makefile.target
+++ b/tests/tcg/mips/Makefile.target
@@ -14,6 +14,6 @@ MIPS_TESTS=hello-mips
TESTS += $(MIPS_TESTS)
-hello-mips: CFLAGS+=-mno-abicalls -fno-PIC -mabi=32
+hello-mips: CFLAGS+=-mno-abicalls -fno-PIC -fno-stack-protector -mabi=32
hello-mips: LDFLAGS+=-nostdlib
endif
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 03/19] gitlab: split alpha testing into a legacy container
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
2023-10-29 14:50 ` [PATCH v2 01/19] tests/vm/openbsd: Use the system dtc package Alex Bennée
2023-10-29 14:50 ` [PATCH v2 02/19] tests/tcg: Add -fno-stack-protector Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 16:47 ` Richard Henderson
2023-10-29 14:50 ` [PATCH v2 04/19] gitlab: clean-up build-soft-softmmu job Alex Bennée
` (15 subsequent siblings)
18 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
The current bookworm compiler doesn't build the static binaries due to
bug #1054412 and it might be awhile before it gets fixed. The problem
of keeping older architecture compilers running isn't going to go away
so lets prepare the ground. Create a legacy container and move some
tests around so the others can get upgraded.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-4-alex.bennee@linaro.org>
---
v2
- split other softmmu patches into a new patch
---
.gitlab-ci.d/buildtest.yml | 19 ++++++--
.gitlab-ci.d/container-cross.yml | 6 +++
.../dockerfiles/debian-all-test-cross.docker | 4 +-
.../debian-legacy-test-cross.docker | 46 +++++++++++++++++++
4 files changed, 69 insertions(+), 6 deletions(-)
create mode 100644 tests/docker/dockerfiles/debian-legacy-test-cross.docker
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 25af1bc41e..bb24e052f6 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -256,6 +256,7 @@ build-user:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system
+ --target-list-exclude=alpha-linux-user
MAKE_CHECK_ARGS: check-tcg
build-user-static:
@@ -265,6 +266,18 @@ build-user-static:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system --static
+ --target-list-exclude=alpha-linux-user
+ MAKE_CHECK_ARGS: check-tcg
+
+# targets stuck on older compilers
+build-legacy:
+ extends: .native_build_job_template
+ needs:
+ job: amd64-debian-legacy-cross-container
+ variables:
+ IMAGE: debian-legacy-test-cross
+ TARGETS: alpha-linux-user alpha-softmmu
+ CONFIGURE_ARGS: --disable-tools
MAKE_CHECK_ARGS: check-tcg
build-user-hexagon:
@@ -285,7 +298,7 @@ build-some-softmmu:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --enable-debug
- TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
+ TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu
MAKE_CHECK_ARGS: check-tcg
# We build tricore in a very minimal tricore only container
@@ -318,7 +331,7 @@ clang-user:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --cc=clang --cxx=clang++ --disable-system
- --target-list-exclude=microblazeel-linux-user,aarch64_be-linux-user,i386-linux-user,m68k-linux-user,mipsn32el-linux-user,xtensaeb-linux-user
+ --target-list-exclude=alpha-linux-user,microblazeel-linux-user,aarch64_be-linux-user,i386-linux-user,m68k-linux-user,mipsn32el-linux-user,xtensaeb-linux-user
--extra-cflags=-fsanitize=undefined --extra-cflags=-fno-sanitize-recover=undefined
MAKE_CHECK_ARGS: check-unit check-tcg
@@ -505,7 +518,7 @@ build-tci:
variables:
IMAGE: debian-all-test-cross
script:
- - TARGETS="aarch64 alpha arm hppa m68k microblaze ppc64 s390x x86_64"
+ - TARGETS="aarch64 arm hppa m68k microblaze ppc64 s390x x86_64"
- mkdir build
- cd build
- ../configure --enable-tcg-interpreter --disable-docs --disable-gtk --disable-vnc
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 2848166ba3..80c540230a 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -16,6 +16,12 @@ amd64-debian-user-cross-container:
variables:
NAME: debian-all-test-cross
+amd64-debian-legacy-cross-container:
+ extends: .container_job_template
+ stage: containers
+ variables:
+ NAME: debian-legacy-test-cross
+
arm64-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index 54e957d5e7..205173b0a5 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -28,8 +28,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
ninja-build \
gcc-aarch64-linux-gnu \
libc6-dev-arm64-cross \
- gcc-alpha-linux-gnu \
- libc6.1-dev-alpha-cross \
gcc-arm-linux-gnueabihf \
libc6-dev-armhf-cross \
gcc-hppa-linux-gnu \
@@ -66,7 +64,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
-ENV DEF_TARGET_LIST aarch64-linux-user,alpha-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
+ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/docker/dockerfiles/debian-legacy-test-cross.docker b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
new file mode 100644
index 0000000000..763d36dfe3
--- /dev/null
+++ b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
@@ -0,0 +1,46 @@
+# Docker legacy cross-compiler target (tests and minimal qemu)
+#
+# Compilers for some of our older targets which we cant currently
+# upgrade. Currently:
+#
+# libc6.1-dev-alpha-cross: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1054412
+#
+# As we are targeting check-tcg here we only need minimal qemu
+# dependencies and the relevant cross compilers.
+
+FROM docker.io/library/debian:11-slim
+
+# Duplicate deb line as deb-src
+RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
+
+RUN export DEBIAN_FRONTEND=noninteractive && \
+ apt-get update && \
+ apt-get install -y eatmydata && \
+ eatmydata apt-get dist-upgrade -y && \
+ apt build-dep -yy qemu
+
+# Add extra build tools and as many cross compilers as we can for testing
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt install -y --no-install-recommends \
+ bison \
+ ccache \
+ clang \
+ flex \
+ git \
+ ninja-build \
+ gcc-alpha-linux-gnu \
+ libc6.1-dev-alpha-cross \
+ python3-pip \
+ python3-setuptools \
+ python3-venv \
+ python3-wheel
+
+RUN /usr/bin/pip3 install tomli
+
+ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
+ENV DEF_TARGET_LIST alpha-linux-user
+# As a final step configure the user (if env is defined)
+ARG USER
+ARG UID
+RUN if [ "${USER}" ]; then \
+ id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v2 03/19] gitlab: split alpha testing into a legacy container
2023-10-29 14:50 ` [PATCH v2 03/19] gitlab: split alpha testing into a legacy container Alex Bennée
@ 2023-10-29 16:47 ` Richard Henderson
0 siblings, 0 replies; 27+ messages in thread
From: Richard Henderson @ 2023-10-29 16:47 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
On 10/29/23 07:50, Alex Bennée wrote:
> The current bookworm compiler doesn't build the static binaries due to
> bug #1054412 and it might be awhile before it gets fixed. The problem
> of keeping older architecture compilers running isn't going to go away
> so lets prepare the ground. Create a legacy container and move some
> tests around so the others can get upgraded.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Message-Id: <20231028103311.347104-4-alex.bennee@linaro.org>
>
> ---
> v2
> - split other softmmu patches into a new patch
> ---
> .gitlab-ci.d/buildtest.yml | 19 ++++++--
> .gitlab-ci.d/container-cross.yml | 6 +++
> .../dockerfiles/debian-all-test-cross.docker | 4 +-
> .../debian-legacy-test-cross.docker | 46 +++++++++++++++++++
> 4 files changed, 69 insertions(+), 6 deletions(-)
> create mode 100644 tests/docker/dockerfiles/debian-legacy-test-cross.docker
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v2 04/19] gitlab: clean-up build-soft-softmmu job
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (2 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 03/19] gitlab: split alpha testing into a legacy container Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 16:48 ` Richard Henderson
2023-10-29 14:50 ` [PATCH v2 05/19] gitlab: add build-loongarch to matrix Alex Bennée
` (14 subsequent siblings)
18 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Having dropped alpha we also now drop xtensa as we don't have the
compiler in this image. It's not all doom and gloom though as a number
of other targets have gained softmmu TCG tests so we can add them. We
will take care of the other targets with their own containers in
future commits.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.gitlab-ci.d/buildtest.yml | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index bb24e052f6..5e9cbf9385 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -290,7 +290,9 @@ build-user-hexagon:
CONFIGURE_ARGS: --disable-tools --disable-docs --enable-debug-tcg
MAKE_CHECK_ARGS: check-tcg
-# Only build the softmmu targets we have check-tcg tests for
+# Build the softmmu targets we have check-tcg tests and compilers in
+# our omnibus all-test-cross container. Those targets that haven't got
+# Debian cross compiler support need to use special containers.
build-some-softmmu:
extends: .native_build_job_template
needs:
@@ -298,7 +300,9 @@ build-some-softmmu:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --enable-debug
- TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu
+ TARGETS: arm-softmmu aarch64-softmmu i386-softmmu riscv64-softmmu
+ s390x-softmmu x86_64-softmmu
+ MAKE_CHECK_ARGS: check-tcg
MAKE_CHECK_ARGS: check-tcg
# We build tricore in a very minimal tricore only container
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v2 04/19] gitlab: clean-up build-soft-softmmu job
2023-10-29 14:50 ` [PATCH v2 04/19] gitlab: clean-up build-soft-softmmu job Alex Bennée
@ 2023-10-29 16:48 ` Richard Henderson
0 siblings, 0 replies; 27+ messages in thread
From: Richard Henderson @ 2023-10-29 16:48 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
On 10/29/23 07:50, Alex Bennée wrote:
> Having dropped alpha we also now drop xtensa as we don't have the
> compiler in this image. It's not all doom and gloom though as a number
> of other targets have gained softmmu TCG tests so we can add them. We
> will take care of the other targets with their own containers in
> future commits.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> .gitlab-ci.d/buildtest.yml | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v2 05/19] gitlab: add build-loongarch to matrix
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (3 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 04/19] gitlab: clean-up build-soft-softmmu job Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 16:57 ` Richard Henderson
2023-10-29 14:50 ` [PATCH v2 06/19] tests/docker: use debian-legacy-test-cross for alpha Alex Bennée
` (13 subsequent siblings)
18 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
We have the compiler and with a few updates a container that can build
QEMU so we should at least run the check-tcg smoke tests.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.gitlab-ci.d/buildtest.yml | 9 ++++++++
.gitlab-ci.d/container-cross.yml | 6 +++++
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-loongarch-cross.docker | 22 ++++++++++++++++++-
4 files changed, 36 insertions(+), 2 deletions(-)
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 5e9cbf9385..9500ea6e2c 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -303,6 +303,15 @@ build-some-softmmu:
TARGETS: arm-softmmu aarch64-softmmu i386-softmmu riscv64-softmmu
s390x-softmmu x86_64-softmmu
MAKE_CHECK_ARGS: check-tcg
+
+build-loongarch64:
+ extends: .native_build_job_template
+ needs:
+ job: loongarch-debian-cross-container
+ variables:
+ IMAGE: debian-loongarch-cross
+ CONFIGURE_ARGS: --disable-tools --enable-debug
+ TARGETS: loongarch64-linux-user loongarch64-softmmu
MAKE_CHECK_ARGS: check-tcg
# We build tricore in a very minimal tricore only container
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 80c540230a..d200f3e00d 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -52,6 +52,12 @@ hppa-debian-cross-container:
variables:
NAME: debian-hppa-cross
+loongarch-debian-cross-container:
+ extends: .container_job_template
+ stage: containers
+ variables:
+ NAME: debian-loongarch-cross
+
m68k-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index ab68b2dbad..5635d1537f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -125,7 +125,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
DOCKER_PARTIAL_IMAGES += debian-alpha-cross
DOCKER_PARTIAL_IMAGES += debian-powerpc-test-cross
DOCKER_PARTIAL_IMAGES += debian-hppa-cross
-DOCKER_PARTIAL_IMAGES += debian-loongarch-cross
DOCKER_PARTIAL_IMAGES += debian-m68k-cross debian-mips64-cross
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
diff --git a/tests/docker/dockerfiles/debian-loongarch-cross.docker b/tests/docker/dockerfiles/debian-loongarch-cross.docker
index b4bf265717..b25e779a2c 100644
--- a/tests/docker/dockerfiles/debian-loongarch-cross.docker
+++ b/tests/docker/dockerfiles/debian-loongarch-cross.docker
@@ -9,22 +9,42 @@ FROM docker.io/library/debian:11-slim
# Duplicate deb line as deb-src
RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
+RUN export DEBIAN_FRONTEND=noninteractive && \
+ apt-get update && \
+ apt-get install -y eatmydata && \
+ eatmydata apt-get dist-upgrade -y && \
+ apt build-dep -yy qemu
+
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata \
apt-get install -y --no-install-recommends \
build-essential \
+ bison \
ca-certificates \
+ ccache \
+ clang \
+ flex \
curl \
gettext \
git \
- python3-minimal
+ ninja-build \
+ python3-pip \
+ python3-setuptools \
+ python3-venv \
+ python3-wheel
+
+RUN /usr/bin/pip3 install tomli
RUN curl -#SL https://github.com/loongson/build-tools/releases/download/2023.08.08/CLFS-loongarch64-8.1-x86_64-cross-tools-gcc-glibc.tar.xz \
| tar -xJC /opt
ENV PATH $PATH:/opt/cross-tools/bin
ENV LD_LIBRARY_PATH /opt/cross-tools/lib:/opt/cross-tools/loongarch64-unknown-linux-gnu/lib:$LD_LIBRARY_PATH
+
+ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
+ENV DEF_TARGET_LIST loongarch64-linux-user,loongarch-softmmu
+
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v2 05/19] gitlab: add build-loongarch to matrix
2023-10-29 14:50 ` [PATCH v2 05/19] gitlab: add build-loongarch to matrix Alex Bennée
@ 2023-10-29 16:57 ` Richard Henderson
0 siblings, 0 replies; 27+ messages in thread
From: Richard Henderson @ 2023-10-29 16:57 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
On 10/29/23 07:50, Alex Bennée wrote:
> We have the compiler and with a few updates a container that can build
> QEMU so we should at least run the check-tcg smoke tests.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> .gitlab-ci.d/buildtest.yml | 9 ++++++++
> .gitlab-ci.d/container-cross.yml | 6 +++++
> tests/docker/Makefile.include | 1 -
> .../dockerfiles/debian-loongarch-cross.docker | 22 ++++++++++++++++++-
> 4 files changed, 36 insertions(+), 2 deletions(-)
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v2 06/19] tests/docker: use debian-legacy-test-cross for alpha
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (4 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 05/19] gitlab: add build-loongarch to matrix Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 07/19] tests/docker: move sh4 to use debian-legacy-test-cross Alex Bennée
` (12 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-5-alex.bennee@linaro.org>
---
configure | 5 +++++
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-alpha-cross.docker | 19 -------------------
4 files changed, 5 insertions(+), 26 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-alpha-cross.docker
diff --git a/configure b/configure
index b4ea78c77d..c8d0d4f7cb 100755
--- a/configure
+++ b/configure
@@ -1281,6 +1281,11 @@ probe_target_compiler() {
container_cross_prefix=aarch64-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc
;;
+ alpha)
+ container_image=debian-legacy-test-cross
+ container_cross_prefix=alpha-linux-gnu-
+ container_cross_cc=${container_cross_prefix}gcc
+ ;;
arm)
# We don't have any bigendian build tools so we only use this for ARM
container_image=debian-armhf-cross
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index d200f3e00d..0de1929e74 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -1,9 +1,3 @@
-alpha-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-alpha-cross
-
amd64-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 5635d1537f..8270bdff6c 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -122,7 +122,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
$(call debian-toolchain, $@)
# These images may be good enough for building tests but not for test builds
-DOCKER_PARTIAL_IMAGES += debian-alpha-cross
DOCKER_PARTIAL_IMAGES += debian-powerpc-test-cross
DOCKER_PARTIAL_IMAGES += debian-hppa-cross
DOCKER_PARTIAL_IMAGES += debian-m68k-cross debian-mips64-cross
diff --git a/tests/docker/dockerfiles/debian-alpha-cross.docker b/tests/docker/dockerfiles/debian-alpha-cross.docker
deleted file mode 100644
index 7fa7bf1bde..0000000000
--- a/tests/docker/dockerfiles/debian-alpha-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-alpha-linux-gnu \
- libc6.1-dev-alpha-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 07/19] tests/docker: move sh4 to use debian-legacy-test-cross
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (5 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 06/19] tests/docker: use debian-legacy-test-cross for alpha Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 18:52 ` Richard Henderson
2023-10-29 14:50 ` [PATCH v2 08/19] tests/docker: use debian-all-test-cross for power Alex Bennée
` (11 subsequent siblings)
18 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
sh4 is another target which doesn't work with bookworm compilers. To
keep on buster move across to the debian-legacy-test-cross image and
update accordingly.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-6-alex.bennee@linaro.org>
---
v2
- fix missing exclude from build-user
- merge fixes
---
configure | 4 ++++
.gitlab-ci.d/buildtest.yml | 4 ++--
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 2 +-
.../dockerfiles/debian-all-test-cross.docker | 4 +---
.../debian-legacy-test-cross.docker | 3 ++-
.../dockerfiles/debian-sh4-cross.docker | 19 -------------------
7 files changed, 10 insertions(+), 32 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-sh4-cross.docker
diff --git a/configure b/configure
index c8d0d4f7cb..37d1b10b87 100755
--- a/configure
+++ b/configure
@@ -1334,6 +1334,10 @@ probe_target_compiler() {
container_cross_prefix=powerpc${target_arch#ppc}-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc-10
;;
+ sh4)
+ container_image=debian-legacy-test-cross
+ container_cross_prefix=sh4-linux-gnu-
+ ;;
tricore)
container_image=debian-tricore-cross
container_cross_prefix=tricore-
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 9500ea6e2c..b66d05038f 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -266,7 +266,7 @@ build-user-static:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system --static
- --target-list-exclude=alpha-linux-user
+ --target-list-exclude=alpha-linux-user,sh4-linux-user
MAKE_CHECK_ARGS: check-tcg
# targets stuck on older compilers
@@ -276,7 +276,7 @@ build-legacy:
job: amd64-debian-legacy-cross-container
variables:
IMAGE: debian-legacy-test-cross
- TARGETS: alpha-linux-user alpha-softmmu
+ TARGETS: alpha-linux-user alpha-softmmu sh4-linux-user
CONFIGURE_ARGS: --disable-tools
MAKE_CHECK_ARGS: check-tcg
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 0de1929e74..3e6d741f62 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -116,12 +116,6 @@ s390x-debian-cross-container:
variables:
NAME: debian-s390x-cross
-sh4-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-sh4-cross
-
sparc64-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 8270bdff6c..f61d97102f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -129,7 +129,7 @@ DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
DOCKER_PARTIAL_IMAGES += debian-riscv64-test-cross
-DOCKER_PARTIAL_IMAGES += debian-sh4-cross debian-sparc64-cross
+DOCKER_PARTIAL_IMAGES += debian-sparc64-cross
DOCKER_PARTIAL_IMAGES += debian-xtensa-cross
DOCKER_PARTIAL_IMAGES += fedora-cris-cross
diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index 205173b0a5..43cc083318 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -52,8 +52,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libc6-dev-riscv64-cross \
gcc-s390x-linux-gnu \
libc6-dev-s390x-cross \
- gcc-sh4-linux-gnu \
- libc6-dev-sh4-cross \
gcc-sparc64-linux-gnu \
libc6-dev-sparc64-cross \
python3-pip \
@@ -64,7 +62,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
-ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
+ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sparc64-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/docker/dockerfiles/debian-legacy-test-cross.docker b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
index 763d36dfe3..d9b37995a2 100644
--- a/tests/docker/dockerfiles/debian-legacy-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
@@ -4,6 +4,7 @@
# upgrade. Currently:
#
# libc6.1-dev-alpha-cross: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1054412
+# sh4-linux-user: binaries don't run with bookworm compiler
#
# As we are targeting check-tcg here we only need minimal qemu
# dependencies and the relevant cross compilers.
@@ -38,7 +39,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
-ENV DEF_TARGET_LIST alpha-linux-user
+ENV DEF_TARGET_LIST alpha-linux-user,sh4-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/docker/dockerfiles/debian-sh4-cross.docker b/tests/docker/dockerfiles/debian-sh4-cross.docker
deleted file mode 100644
index 6bd8171d33..0000000000
--- a/tests/docker/dockerfiles/debian-sh4-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-sh4-linux-gnu \
- libc6-dev-sh4-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v2 07/19] tests/docker: move sh4 to use debian-legacy-test-cross
2023-10-29 14:50 ` [PATCH v2 07/19] tests/docker: move sh4 to use debian-legacy-test-cross Alex Bennée
@ 2023-10-29 18:52 ` Richard Henderson
2023-10-30 13:57 ` [PATCH v3] " Alex Bennée
0 siblings, 1 reply; 27+ messages in thread
From: Richard Henderson @ 2023-10-29 18:52 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
On 10/29/23 07:50, Alex Bennée wrote:
> diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
> index 205173b0a5..43cc083318 100644
> --- a/tests/docker/dockerfiles/debian-all-test-cross.docker
> +++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
> @@ -52,8 +52,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> libc6-dev-riscv64-cross \
> gcc-s390x-linux-gnu \
> libc6-dev-s390x-cross \
> - gcc-sh4-linux-gnu \
> - libc6-dev-sh4-cross \
compiler removed here...
> diff --git a/tests/docker/dockerfiles/debian-legacy-test-cross.docker b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
> index 763d36dfe3..d9b37995a2 100644
> --- a/tests/docker/dockerfiles/debian-legacy-test-cross.docker
> +++ b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
> @@ -4,6 +4,7 @@
> # upgrade. Currently:
> #
> # libc6.1-dev-alpha-cross: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1054412
> +# sh4-linux-user: binaries don't run with bookworm compiler
> #
> # As we are targeting check-tcg here we only need minimal qemu
> # dependencies and the relevant cross compilers.
> @@ -38,7 +39,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
> RUN /usr/bin/pip3 install tomli
>
> ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
> -ENV DEF_TARGET_LIST alpha-linux-user
> +ENV DEF_TARGET_LIST alpha-linux-user,sh4-linux-user
... but not added here.
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v3] tests/docker: move sh4 to use debian-legacy-test-cross
2023-10-29 18:52 ` Richard Henderson
@ 2023-10-30 13:57 ` Alex Bennée
2023-10-30 20:25 ` Richard Henderson
0 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-30 13:57 UTC (permalink / raw)
To: qemu-devel
Cc: richard.henderson, Alex Bennée, Philippe Mathieu-Daudé,
Thomas Huth, Wainer dos Santos Moschetta, Beraldo Leal,
Paolo Bonzini
sh4 is another target which doesn't work with bookworm compilers. To
keep on buster move across to the debian-legacy-test-cross image and
update accordingly.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231029145033.592566-8-alex.bennee@linaro.org>
---
configure | 4 ++++
.gitlab-ci.d/buildtest.yml | 4 ++--
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 2 +-
.../dockerfiles/debian-all-test-cross.docker | 4 +---
.../debian-legacy-test-cross.docker | 5 ++++-
.../dockerfiles/debian-sh4-cross.docker | 19 -------------------
7 files changed, 12 insertions(+), 32 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-sh4-cross.docker
diff --git a/configure b/configure
index c8d0d4f7cb..37d1b10b87 100755
--- a/configure
+++ b/configure
@@ -1334,6 +1334,10 @@ probe_target_compiler() {
container_cross_prefix=powerpc${target_arch#ppc}-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc-10
;;
+ sh4)
+ container_image=debian-legacy-test-cross
+ container_cross_prefix=sh4-linux-gnu-
+ ;;
tricore)
container_image=debian-tricore-cross
container_cross_prefix=tricore-
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 9500ea6e2c..b66d05038f 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -266,7 +266,7 @@ build-user-static:
variables:
IMAGE: debian-all-test-cross
CONFIGURE_ARGS: --disable-tools --disable-system --static
- --target-list-exclude=alpha-linux-user
+ --target-list-exclude=alpha-linux-user,sh4-linux-user
MAKE_CHECK_ARGS: check-tcg
# targets stuck on older compilers
@@ -276,7 +276,7 @@ build-legacy:
job: amd64-debian-legacy-cross-container
variables:
IMAGE: debian-legacy-test-cross
- TARGETS: alpha-linux-user alpha-softmmu
+ TARGETS: alpha-linux-user alpha-softmmu sh4-linux-user
CONFIGURE_ARGS: --disable-tools
MAKE_CHECK_ARGS: check-tcg
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 0de1929e74..3e6d741f62 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -116,12 +116,6 @@ s390x-debian-cross-container:
variables:
NAME: debian-s390x-cross
-sh4-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-sh4-cross
-
sparc64-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 8270bdff6c..f61d97102f 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -129,7 +129,7 @@ DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
DOCKER_PARTIAL_IMAGES += debian-riscv64-test-cross
-DOCKER_PARTIAL_IMAGES += debian-sh4-cross debian-sparc64-cross
+DOCKER_PARTIAL_IMAGES += debian-sparc64-cross
DOCKER_PARTIAL_IMAGES += debian-xtensa-cross
DOCKER_PARTIAL_IMAGES += fedora-cris-cross
diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index 205173b0a5..43cc083318 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -52,8 +52,6 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
libc6-dev-riscv64-cross \
gcc-s390x-linux-gnu \
libc6-dev-s390x-cross \
- gcc-sh4-linux-gnu \
- libc6-dev-sh4-cross \
gcc-sparc64-linux-gnu \
libc6-dev-sparc64-cross \
python3-pip \
@@ -64,7 +62,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
-ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sh4-linux-user,sparc64-linux-user
+ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sparc64-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/docker/dockerfiles/debian-legacy-test-cross.docker b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
index 763d36dfe3..8cc68bc912 100644
--- a/tests/docker/dockerfiles/debian-legacy-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-legacy-test-cross.docker
@@ -4,6 +4,7 @@
# upgrade. Currently:
#
# libc6.1-dev-alpha-cross: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1054412
+# sh4-linux-user: binaries don't run with bookworm compiler
#
# As we are targeting check-tcg here we only need minimal qemu
# dependencies and the relevant cross compilers.
@@ -30,6 +31,8 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
ninja-build \
gcc-alpha-linux-gnu \
libc6.1-dev-alpha-cross \
+ gcc-sh4-linux-gnu \
+ libc6-dev-sh4-cross \
python3-pip \
python3-setuptools \
python3-venv \
@@ -38,7 +41,7 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
-ENV DEF_TARGET_LIST alpha-linux-user
+ENV DEF_TARGET_LIST alpha-linux-user,sh4-linux-user
# As a final step configure the user (if env is defined)
ARG USER
ARG UID
diff --git a/tests/docker/dockerfiles/debian-sh4-cross.docker b/tests/docker/dockerfiles/debian-sh4-cross.docker
deleted file mode 100644
index 6bd8171d33..0000000000
--- a/tests/docker/dockerfiles/debian-sh4-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-sh4-linux-gnu \
- libc6-dev-sh4-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v3] tests/docker: move sh4 to use debian-legacy-test-cross
2023-10-30 13:57 ` [PATCH v3] " Alex Bennée
@ 2023-10-30 20:25 ` Richard Henderson
0 siblings, 0 replies; 27+ messages in thread
From: Richard Henderson @ 2023-10-30 20:25 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
Cc: Philippe Mathieu-Daudé, Thomas Huth,
Wainer dos Santos Moschetta, Beraldo Leal, Paolo Bonzini
On 10/30/23 06:57, Alex Bennée wrote:
> sh4 is another target which doesn't work with bookworm compilers. To
> keep on buster move across to the debian-legacy-test-cross image and
> update accordingly.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Message-Id: <20231029145033.592566-8-alex.bennee@linaro.org>
> ---
> configure | 4 ++++
> .gitlab-ci.d/buildtest.yml | 4 ++--
> .gitlab-ci.d/container-cross.yml | 6 ------
> tests/docker/Makefile.include | 2 +-
> .../dockerfiles/debian-all-test-cross.docker | 4 +---
> .../debian-legacy-test-cross.docker | 5 ++++-
> .../dockerfiles/debian-sh4-cross.docker | 19 -------------------
> 7 files changed, 12 insertions(+), 32 deletions(-)
> delete mode 100644 tests/docker/dockerfiles/debian-sh4-cross.docker
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v2 08/19] tests/docker: use debian-all-test-cross for power
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (6 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 07/19] tests/docker: move sh4 to use debian-legacy-test-cross Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 09/19] tests/docker: use debian-all-test-cross for hppa Alex Bennée
` (10 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-7-alex.bennee@linaro.org>
---
configure | 4 ++--
.gitlab-ci.d/container-cross.yml | 6 -----
tests/docker/Makefile.include | 1 -
.../debian-powerpc-test-cross.docker | 23 -------------------
4 files changed, 2 insertions(+), 32 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-powerpc-test-cross.docker
diff --git a/configure b/configure
index 37d1b10b87..8707bd2e78 100755
--- a/configure
+++ b/configure
@@ -1325,12 +1325,12 @@ probe_target_compiler() {
container_cross_prefix=nios2-linux-gnu-
;;
ppc)
- container_image=debian-powerpc-test-cross
+ container_image=debian-all-test-cross
container_cross_prefix=powerpc-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc
;;
ppc64|ppc64le)
- container_image=debian-powerpc-test-cross
+ container_image=debian-all-test-cross
container_cross_prefix=powerpc${target_arch#ppc}-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc-10
;;
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 3e6d741f62..a1dac0a45f 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -82,12 +82,6 @@ mipsel-debian-cross-container:
variables:
NAME: debian-mipsel-cross
-powerpc-test-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-powerpc-test-cross
-
ppc64el-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index f61d97102f..82e06d84b3 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -122,7 +122,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
$(call debian-toolchain, $@)
# These images may be good enough for building tests but not for test builds
-DOCKER_PARTIAL_IMAGES += debian-powerpc-test-cross
DOCKER_PARTIAL_IMAGES += debian-hppa-cross
DOCKER_PARTIAL_IMAGES += debian-m68k-cross debian-mips64-cross
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
diff --git a/tests/docker/dockerfiles/debian-powerpc-test-cross.docker b/tests/docker/dockerfiles/debian-powerpc-test-cross.docker
deleted file mode 100644
index 23779413d3..0000000000
--- a/tests/docker/dockerfiles/debian-powerpc-test-cross.docker
+++ /dev/null
@@ -1,23 +0,0 @@
-#
-# Docker powerpc/ppc64/ppc64le cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-powerpc-linux-gnu \
- libc6-dev-powerpc-cross \
- gcc-10-powerpc64-linux-gnu \
- libc6-dev-ppc64-cross \
- gcc-10-powerpc64le-linux-gnu \
- libc6-dev-ppc64el-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 09/19] tests/docker: use debian-all-test-cross for hppa
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (7 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 08/19] tests/docker: use debian-all-test-cross for power Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 10/19] tests/docker: use debian-all-test-cross for m68k Alex Bennée
` (9 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-8-alex.bennee@linaro.org>
---
configure | 5 +++++
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-hppa-cross.docker | 19 -------------------
4 files changed, 5 insertions(+), 26 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-hppa-cross.docker
diff --git a/configure b/configure
index 8707bd2e78..0a755c71a0 100755
--- a/configure
+++ b/configure
@@ -1300,6 +1300,11 @@ probe_target_compiler() {
container_cross_prefix=hexagon-unknown-linux-musl-
container_cross_cc=${container_cross_prefix}clang
;;
+ hppa)
+ container_image=debian-all-test-cross
+ container_cross_prefix=hppa-linux-gnu-
+ container_cross_cc=${container_cross_prefix}gcc
+ ;;
i386)
container_image=fedora-i386-cross
container_cross_prefix=
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index a1dac0a45f..66b8844246 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -40,12 +40,6 @@ hexagon-cross-container:
variables:
NAME: debian-hexagon-cross
-hppa-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-hppa-cross
-
loongarch-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 82e06d84b3..47e58a248e 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -122,7 +122,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
$(call debian-toolchain, $@)
# These images may be good enough for building tests but not for test builds
-DOCKER_PARTIAL_IMAGES += debian-hppa-cross
DOCKER_PARTIAL_IMAGES += debian-m68k-cross debian-mips64-cross
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
diff --git a/tests/docker/dockerfiles/debian-hppa-cross.docker b/tests/docker/dockerfiles/debian-hppa-cross.docker
deleted file mode 100644
index dd47ffdfa4..0000000000
--- a/tests/docker/dockerfiles/debian-hppa-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-hppa-linux-gnu \
- libc6-dev-hppa-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 10/19] tests/docker: use debian-all-test-cross for m68k
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (8 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 09/19] tests/docker: use debian-all-test-cross for hppa Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 11/19] tests/docker: use debian-all-test-cross for mips64 Alex Bennée
` (8 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-9-alex.bennee@linaro.org>
---
configure | 5 +++++
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 2 +-
.../dockerfiles/debian-m68k-cross.docker | 19 -------------------
4 files changed, 6 insertions(+), 26 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-m68k-cross.docker
diff --git a/configure b/configure
index 0a755c71a0..c7c811fb02 100755
--- a/configure
+++ b/configure
@@ -1313,6 +1313,11 @@ probe_target_compiler() {
container_image=debian-loongarch-cross
container_cross_prefix=loongarch64-unknown-linux-gnu-
;;
+ m68k)
+ container_image=debian-all-test-cross
+ container_cross_prefix=m68k-linux-gnu-
+ container_cross_cc=${container_cross_prefix}gcc
+ ;;
microblaze)
container_image=debian-microblaze-cross
container_cross_prefix=microblaze-linux-musl-
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 66b8844246..d42d89b26e 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -46,12 +46,6 @@ loongarch-debian-cross-container:
variables:
NAME: debian-loongarch-cross
-m68k-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-m68k-cross
-
mips64-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 47e58a248e..fb93eca537 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -122,7 +122,7 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
$(call debian-toolchain, $@)
# These images may be good enough for building tests but not for test builds
-DOCKER_PARTIAL_IMAGES += debian-m68k-cross debian-mips64-cross
+DOCKER_PARTIAL_IMAGES += debian-mips64-cross
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
diff --git a/tests/docker/dockerfiles/debian-m68k-cross.docker b/tests/docker/dockerfiles/debian-m68k-cross.docker
deleted file mode 100644
index 25dd1c1e68..0000000000
--- a/tests/docker/dockerfiles/debian-m68k-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-m68k-linux-gnu \
- libc6-dev-m68k-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 11/19] tests/docker: use debian-all-test-cross for mips64
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (9 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 10/19] tests/docker: use debian-all-test-cross for m68k Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 12/19] tests/docker: use debian-all-test-cross for mips Alex Bennée
` (7 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-10-alex.bennee@linaro.org>
---
configure | 2 +-
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-mips64-cross.docker | 19 -------------------
4 files changed, 1 insertion(+), 27 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-mips64-cross.docker
diff --git a/configure b/configure
index c7c811fb02..2bcbf0fc36 100755
--- a/configure
+++ b/configure
@@ -1327,7 +1327,7 @@ probe_target_compiler() {
container_cross_prefix=mips64el-linux-gnuabi64-
;;
mips64)
- container_image=debian-mips64-cross
+ container_image=debian-all-test-cross
container_cross_prefix=mips64-linux-gnuabi64-
;;
nios2)
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index d42d89b26e..df5eb3ccb6 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -46,12 +46,6 @@ loongarch-debian-cross-container:
variables:
NAME: debian-loongarch-cross
-mips64-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-mips64-cross
-
mips64el-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index fb93eca537..5831744a39 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -122,7 +122,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
$(call debian-toolchain, $@)
# These images may be good enough for building tests but not for test builds
-DOCKER_PARTIAL_IMAGES += debian-mips64-cross
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-mips-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
diff --git a/tests/docker/dockerfiles/debian-mips64-cross.docker b/tests/docker/dockerfiles/debian-mips64-cross.docker
deleted file mode 100644
index ba965cf564..0000000000
--- a/tests/docker/dockerfiles/debian-mips64-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-mips64-linux-gnuabi64 \
- libc6-dev-mips64-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 12/19] tests/docker: use debian-all-test-cross for mips
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (10 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 11/19] tests/docker: use debian-all-test-cross for mips64 Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 13/19] tests/docker: use debian-all-test-cross for riscv64 Alex Bennée
` (6 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-11-alex.bennee@linaro.org>
---
configure | 4 ++++
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-mips-cross.docker | 19 -------------------
4 files changed, 4 insertions(+), 26 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-mips-cross.docker
diff --git a/configure b/configure
index 2bcbf0fc36..2d8c7a0312 100755
--- a/configure
+++ b/configure
@@ -1330,6 +1330,10 @@ probe_target_compiler() {
container_image=debian-all-test-cross
container_cross_prefix=mips64-linux-gnuabi64-
;;
+ mips)
+ container_image=debian-all-test-cross
+ container_cross_prefix=mips-linux-gnu-
+ ;;
nios2)
container_image=debian-nios2-cross
container_cross_prefix=nios2-linux-gnu-
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index df5eb3ccb6..053330d6f4 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -52,12 +52,6 @@ mips64el-debian-cross-container:
variables:
NAME: debian-mips64el-cross
-mips-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-mips-cross
-
mipsel-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index 5831744a39..dfa9617bb9 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -123,7 +123,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
# These images may be good enough for building tests but not for test builds
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
-DOCKER_PARTIAL_IMAGES += debian-mips-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
DOCKER_PARTIAL_IMAGES += debian-riscv64-test-cross
DOCKER_PARTIAL_IMAGES += debian-sparc64-cross
diff --git a/tests/docker/dockerfiles/debian-mips-cross.docker b/tests/docker/dockerfiles/debian-mips-cross.docker
deleted file mode 100644
index 2cbc568ed1..0000000000
--- a/tests/docker/dockerfiles/debian-mips-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker mips cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-mips-linux-gnu \
- libc6-dev-mips-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 13/19] tests/docker: use debian-all-test-cross for riscv64
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (11 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 12/19] tests/docker: use debian-all-test-cross for mips Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 14/19] tests/docker: use debian-all-test-cross for sparc64 Alex Bennée
` (5 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-12-alex.bennee@linaro.org>
---
configure | 4 ++++
.gitlab-ci.d/container-cross.yml | 7 -------
tests/docker/Makefile.include | 1 -
.../debian-riscv64-test-cross.docker | 19 -------------------
4 files changed, 4 insertions(+), 27 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-riscv64-test-cross.docker
diff --git a/configure b/configure
index 2d8c7a0312..20247bc149 100755
--- a/configure
+++ b/configure
@@ -1348,6 +1348,10 @@ probe_target_compiler() {
container_cross_prefix=powerpc${target_arch#ppc}-linux-gnu-
container_cross_cc=${container_cross_prefix}gcc-10
;;
+ riscv64)
+ container_image=debian-all-test-cross
+ container_cross_prefix=risc64-linux-gnu-
+ ;;
sh4)
container_image=debian-legacy-test-cross
container_cross_prefix=sh4-linux-gnu-
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 053330d6f4..98940d0f3b 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -73,13 +73,6 @@ riscv64-debian-cross-container:
NAME: debian-riscv64-cross
QEMU_JOB_OPTIONAL: 1
-# we can however build TCG tests using a non-sid base
-riscv64-debian-test-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-riscv64-test-cross
-
s390x-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index dfa9617bb9..dc55ecf001 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -124,7 +124,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
# These images may be good enough for building tests but not for test builds
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
-DOCKER_PARTIAL_IMAGES += debian-riscv64-test-cross
DOCKER_PARTIAL_IMAGES += debian-sparc64-cross
DOCKER_PARTIAL_IMAGES += debian-xtensa-cross
DOCKER_PARTIAL_IMAGES += fedora-cris-cross
diff --git a/tests/docker/dockerfiles/debian-riscv64-test-cross.docker b/tests/docker/dockerfiles/debian-riscv64-test-cross.docker
deleted file mode 100644
index 6e631295bc..0000000000
--- a/tests/docker/dockerfiles/debian-riscv64-test-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-riscv64-linux-gnu \
- libc6-dev-riscv64-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 14/19] tests/docker: use debian-all-test-cross for sparc64
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (12 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 13/19] tests/docker: use debian-all-test-cross for riscv64 Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 19:02 ` Richard Henderson
2023-10-29 14:50 ` [PATCH v2 15/19] tests/docker: upgrade debian-all-test-cross to bookworm Alex Bennée
` (4 subsequent siblings)
18 siblings, 1 reply; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
Maintaining two sets of containers for test building is silly. While
it makes sense for the QEMU cross-compile targets to have their own
fat containers built by lcitool we might as well merge the other
random debian based compilers into the same one used on gitlab.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-13-alex.bennee@linaro.org>
---
v2
- s/debian-test-cross/debian-all-test-cross/
---
configure | 4 ++++
.gitlab-ci.d/container-cross.yml | 6 ------
tests/docker/Makefile.include | 1 -
.../dockerfiles/debian-sparc64-cross.docker | 19 -------------------
4 files changed, 4 insertions(+), 26 deletions(-)
delete mode 100644 tests/docker/dockerfiles/debian-sparc64-cross.docker
diff --git a/configure b/configure
index 20247bc149..0b9d6a8863 100755
--- a/configure
+++ b/configure
@@ -1356,6 +1356,10 @@ probe_target_compiler() {
container_image=debian-legacy-test-cross
container_cross_prefix=sh4-linux-gnu-
;;
+ sparc64)
+ container_image=debian-all-test-cross
+ container_cross_prefix=sparc64-linux-gnu-
+ ;;
tricore)
container_image=debian-tricore-cross
container_cross_prefix=tricore-
diff --git a/.gitlab-ci.d/container-cross.yml b/.gitlab-ci.d/container-cross.yml
index 98940d0f3b..463ac493ad 100644
--- a/.gitlab-ci.d/container-cross.yml
+++ b/.gitlab-ci.d/container-cross.yml
@@ -79,12 +79,6 @@ s390x-debian-cross-container:
variables:
NAME: debian-s390x-cross
-sparc64-debian-cross-container:
- extends: .container_job_template
- stage: containers
- variables:
- NAME: debian-sparc64-cross
-
tricore-debian-cross-container:
extends: .container_job_template
stage: containers
diff --git a/tests/docker/Makefile.include b/tests/docker/Makefile.include
index dc55ecf001..cd4688bf07 100644
--- a/tests/docker/Makefile.include
+++ b/tests/docker/Makefile.include
@@ -124,7 +124,6 @@ docker-image-debian-nios2-cross: $(DOCKER_FILES_DIR)/debian-toolchain.docker \
# These images may be good enough for building tests but not for test builds
DOCKER_PARTIAL_IMAGES += debian-microblaze-cross
DOCKER_PARTIAL_IMAGES += debian-nios2-cross
-DOCKER_PARTIAL_IMAGES += debian-sparc64-cross
DOCKER_PARTIAL_IMAGES += debian-xtensa-cross
DOCKER_PARTIAL_IMAGES += fedora-cris-cross
diff --git a/tests/docker/dockerfiles/debian-sparc64-cross.docker b/tests/docker/dockerfiles/debian-sparc64-cross.docker
deleted file mode 100644
index 1ef735f223..0000000000
--- a/tests/docker/dockerfiles/debian-sparc64-cross.docker
+++ /dev/null
@@ -1,19 +0,0 @@
-#
-# Docker cross-compiler target
-#
-# This docker target builds on the Debian Bullseye base image.
-#
-FROM docker.io/library/debian:11-slim
-
-RUN export DEBIAN_FRONTEND=noninteractive && \
- apt-get update && \
- apt-get install -y eatmydata && \
- eatmydata apt-get dist-upgrade -y && \
- eatmydata apt-get install --no-install-recommends -y \
- gcc-sparc64-linux-gnu \
- libc6-dev-sparc64-cross
-# As a final step configure the user (if env is defined)
-ARG USER
-ARG UID
-RUN if [ "${USER}" ]; then \
- id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* Re: [PATCH v2 14/19] tests/docker: use debian-all-test-cross for sparc64
2023-10-29 14:50 ` [PATCH v2 14/19] tests/docker: use debian-all-test-cross for sparc64 Alex Bennée
@ 2023-10-29 19:02 ` Richard Henderson
0 siblings, 0 replies; 27+ messages in thread
From: Richard Henderson @ 2023-10-29 19:02 UTC (permalink / raw)
To: Alex Bennée, qemu-devel
On 10/29/23 07:50, Alex Bennée wrote:
> Maintaining two sets of containers for test building is silly. While
> it makes sense for the QEMU cross-compile targets to have their own
> fat containers built by lcitool we might as well merge the other
> random debian based compilers into the same one used on gitlab.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Message-Id: <20231028103311.347104-13-alex.bennee@linaro.org>
>
> ---
> v2
> - s/debian-test-cross/debian-all-test-cross/
> ---
> configure | 4 ++++
> .gitlab-ci.d/container-cross.yml | 6 ------
> tests/docker/Makefile.include | 1 -
> .../dockerfiles/debian-sparc64-cross.docker | 19 -------------------
> 4 files changed, 4 insertions(+), 26 deletions(-)
> delete mode 100644 tests/docker/dockerfiles/debian-sparc64-cross.docker
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
r~
^ permalink raw reply [flat|nested] 27+ messages in thread
* [PATCH v2 15/19] tests/docker: upgrade debian-all-test-cross to bookworm
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (13 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 14/19] tests/docker: use debian-all-test-cross for sparc64 Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 16/19] gdbstub: Check if gdb_regs is NULL Alex Bennée
` (3 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss
This requires a few more tweaks than usual as:
- the default sources format has changed
- bring in python3-tomli from the repos
- split base install from cross compilers
- also include libclang-rt-dev for sanitiser builds
Acked-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-14-alex.bennee@linaro.org>
---
.../dockerfiles/debian-all-test-cross.docker | 20 +++++++++++--------
1 file changed, 12 insertions(+), 8 deletions(-)
diff --git a/tests/docker/dockerfiles/debian-all-test-cross.docker b/tests/docker/dockerfiles/debian-all-test-cross.docker
index 43cc083318..2cc7a24d4d 100644
--- a/tests/docker/dockerfiles/debian-all-test-cross.docker
+++ b/tests/docker/dockerfiles/debian-all-test-cross.docker
@@ -6,10 +6,10 @@
# basic compilers for as many targets as possible. We shall use this
# to build and run linux-user tests on GitLab
#
-FROM docker.io/library/debian:11-slim
+FROM docker.io/library/debian:12-slim
# Duplicate deb line as deb-src
-RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
+RUN sed -in "s/Types: deb/Types: deb deb-src/g" /etc/apt/sources.list.d/debian.sources
RUN export DEBIAN_FRONTEND=noninteractive && \
apt-get update && \
@@ -25,7 +25,16 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
clang \
flex \
git \
+ libclang-rt-dev \
ninja-build \
+ python3-pip \
+ python3-setuptools \
+ python3-tomli \
+ python3-venv \
+ python3-wheel
+
+RUN DEBIAN_FRONTEND=noninteractive eatmydata \
+ apt install -y --no-install-recommends \
gcc-aarch64-linux-gnu \
libc6-dev-arm64-cross \
gcc-arm-linux-gnueabihf \
@@ -53,13 +62,8 @@ RUN DEBIAN_FRONTEND=noninteractive eatmydata \
gcc-s390x-linux-gnu \
libc6-dev-s390x-cross \
gcc-sparc64-linux-gnu \
- libc6-dev-sparc64-cross \
- python3-pip \
- python3-setuptools \
- python3-venv \
- python3-wheel
+ libc6-dev-sparc64-cross
-RUN /usr/bin/pip3 install tomli
ENV QEMU_CONFIGURE_OPTS --disable-system --disable-docs --disable-tools
ENV DEF_TARGET_LIST aarch64-linux-user,arm-linux-user,hppa-linux-user,i386-linux-user,m68k-linux-user,mips-linux-user,mips64-linux-user,mips64el-linux-user,mipsel-linux-user,ppc-linux-user,ppc64-linux-user,ppc64le-linux-user,riscv64-linux-user,s390x-linux-user,sparc64-linux-user
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 16/19] gdbstub: Check if gdb_regs is NULL
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (14 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 15/19] tests/docker: upgrade debian-all-test-cross to bookworm Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 17/19] semihosting: fix memleak at semihosting_arg_fallback Alex Bennée
` (2 subsequent siblings)
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss, Akihiko Odaki,
Fabiano Rosas
From: Akihiko Odaki <akihiko.odaki@daynix.com>
cpu->gdb_regs may be NULL if no coprocessor is registered.
Fixes: 73c392c26b ("gdbstub: Replace gdb_regs with an array")
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20231019101030.128431-2-akihiko.odaki@daynix.com>
Tested-by: Fabiano Rosas <farosas@suse.de>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Tested-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-15-alex.bennee@linaro.org>
---
gdbstub/gdbstub.c | 34 ++++++++++++++++++++--------------
1 file changed, 20 insertions(+), 14 deletions(-)
diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c
index 1e96a71c0c..29540a0284 100644
--- a/gdbstub/gdbstub.c
+++ b/gdbstub/gdbstub.c
@@ -385,12 +385,14 @@ static const char *get_feature_xml(const char *p, const char **newp,
xml,
g_markup_printf_escaped("<xi:include href=\"%s\"/>",
cc->gdb_core_xml_file));
- for (guint i = 0; i < cpu->gdb_regs->len; i++) {
- r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
- g_ptr_array_add(
- xml,
- g_markup_printf_escaped("<xi:include href=\"%s\"/>",
- r->xml));
+ if (cpu->gdb_regs) {
+ for (guint i = 0; i < cpu->gdb_regs->len; i++) {
+ r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
+ g_ptr_array_add(
+ xml,
+ g_markup_printf_escaped("<xi:include href=\"%s\"/>",
+ r->xml));
+ }
}
g_ptr_array_add(xml, g_strdup("</target>"));
g_ptr_array_add(xml, NULL);
@@ -430,10 +432,12 @@ static int gdb_read_register(CPUState *cpu, GByteArray *buf, int reg)
return cc->gdb_read_register(cpu, buf, reg);
}
- for (guint i = 0; i < cpu->gdb_regs->len; i++) {
- r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
- if (r->base_reg <= reg && reg < r->base_reg + r->num_regs) {
- return r->get_reg(env, buf, reg - r->base_reg);
+ if (cpu->gdb_regs) {
+ for (guint i = 0; i < cpu->gdb_regs->len; i++) {
+ r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
+ if (r->base_reg <= reg && reg < r->base_reg + r->num_regs) {
+ return r->get_reg(env, buf, reg - r->base_reg);
+ }
}
}
return 0;
@@ -449,10 +453,12 @@ static int gdb_write_register(CPUState *cpu, uint8_t *mem_buf, int reg)
return cc->gdb_write_register(cpu, mem_buf, reg);
}
- for (guint i = 0; i < cpu->gdb_regs->len; i++) {
- r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
- if (r->base_reg <= reg && reg < r->base_reg + r->num_regs) {
- return r->set_reg(env, mem_buf, reg - r->base_reg);
+ if (cpu->gdb_regs) {
+ for (guint i = 0; i < cpu->gdb_regs->len; i++) {
+ r = &g_array_index(cpu->gdb_regs, GDBRegisterState, i);
+ if (r->base_reg <= reg && reg < r->base_reg + r->num_regs) {
+ return r->set_reg(env, mem_buf, reg - r->base_reg);
+ }
}
}
return 0;
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 17/19] semihosting: fix memleak at semihosting_arg_fallback
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (15 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 16/19] gdbstub: Check if gdb_regs is NULL Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 18/19] plugins: Remove an extra parameter Alex Bennée
2023-10-29 14:50 ` [PATCH v2 19/19] contrib/plugins: Close file descriptor on error return Alex Bennée
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss,
Matheus Tavares Bernardino
From: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
We duplicate "cmd" as strtok may modify its argument, but we forgot
to free it later. Furthermore, add_semihosting_arg doesn't take
responsibility for this memory either (it strdup's the argument).
Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <03d81c56bfc3d08224e4106efca5949d8894cfa5.1697801632.git.quic_mathbern@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-16-alex.bennee@linaro.org>
---
semihosting/config.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/semihosting/config.c b/semihosting/config.c
index 249a377ae8..56283b5c3c 100644
--- a/semihosting/config.c
+++ b/semihosting/config.c
@@ -113,12 +113,13 @@ static int add_semihosting_arg(void *opaque,
void semihosting_arg_fallback(const char *file, const char *cmd)
{
char *cmd_token;
+ g_autofree char *cmd_dup = g_strdup(cmd);
/* argv[0] */
add_semihosting_arg(&semihosting, "arg", file, NULL);
/* split -append and initialize argv[1..n] */
- cmd_token = strtok(g_strdup(cmd), " ");
+ cmd_token = strtok(cmd_dup, " ");
while (cmd_token) {
add_semihosting_arg(&semihosting, "arg", cmd_token, NULL);
cmd_token = strtok(NULL, " ");
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 18/19] plugins: Remove an extra parameter
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (16 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 17/19] semihosting: fix memleak at semihosting_arg_fallback Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
2023-10-29 14:50 ` [PATCH v2 19/19] contrib/plugins: Close file descriptor on error return Alex Bennée
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss, Akihiko Odaki
From: Akihiko Odaki <akihiko.odaki@daynix.com>
copy_call() has an unused parameter so remove it.
Signed-off-by: Akihiko Odaki <akihiko.odaki@daynix.com>
Message-Id: <20231019101030.128431-7-akihiko.odaki@daynix.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20231028103311.347104-17-alex.bennee@linaro.org>
---
accel/tcg/plugin-gen.c | 9 +++------
1 file changed, 3 insertions(+), 6 deletions(-)
diff --git a/accel/tcg/plugin-gen.c b/accel/tcg/plugin-gen.c
index 39b3c9351f..78b331b251 100644
--- a/accel/tcg/plugin-gen.c
+++ b/accel/tcg/plugin-gen.c
@@ -327,8 +327,7 @@ static TCGOp *copy_st_ptr(TCGOp **begin_op, TCGOp *op)
return op;
}
-static TCGOp *copy_call(TCGOp **begin_op, TCGOp *op, void *empty_func,
- void *func, int *cb_idx)
+static TCGOp *copy_call(TCGOp **begin_op, TCGOp *op, void *func, int *cb_idx)
{
TCGOp *old_op;
int func_idx;
@@ -372,8 +371,7 @@ static TCGOp *append_udata_cb(const struct qemu_plugin_dyn_cb *cb,
}
/* call */
- op = copy_call(&begin_op, op, HELPER(plugin_vcpu_udata_cb),
- cb->f.vcpu_udata, cb_idx);
+ op = copy_call(&begin_op, op, cb->f.vcpu_udata, cb_idx);
return op;
}
@@ -420,8 +418,7 @@ static TCGOp *append_mem_cb(const struct qemu_plugin_dyn_cb *cb,
if (type == PLUGIN_GEN_CB_MEM) {
/* call */
- op = copy_call(&begin_op, op, HELPER(plugin_vcpu_mem_cb),
- cb->f.vcpu_udata, cb_idx);
+ op = copy_call(&begin_op, op, cb->f.vcpu_udata, cb_idx);
}
return op;
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread
* [PATCH v2 19/19] contrib/plugins: Close file descriptor on error return
2023-10-29 14:50 [PATCH v2 00/19] Maintainer updates for testing, gdb, semihosting and plugins (pre-PR) Alex Bennée
` (17 preceding siblings ...)
2023-10-29 14:50 ` [PATCH v2 18/19] plugins: Remove an extra parameter Alex Bennée
@ 2023-10-29 14:50 ` Alex Bennée
18 siblings, 0 replies; 27+ messages in thread
From: Alex Bennée @ 2023-10-29 14:50 UTC (permalink / raw)
To: qemu-devel
Cc: Philippe Mathieu-Daudé, Richard Henderson, Paolo Bonzini,
Mahmoud Mandour, Wainer dos Santos Moschetta, Brad Smith,
Aleksandar Rikalo, Kyle Evans, Aurelien Jarno, Jiaxun Yang,
qemu-arm, Peter Maydell, Thomas Huth, Warner Losh,
Edgar E. Iglesias, Eduardo Habkost, Alex Bennée,
Beraldo Leal, Brian Cain, Alexandre Iooss, Cong Liu
From: Cong Liu <liucong2@kylinos.cn>
This patch closes the file descriptor fd on error return to avoid
resource leak.
Fixes: ec7ee95db909 ("contrib/plugins: fix coverity warning in lockstep")
Signed-off-by: Cong Liu <liucong2@kylinos.cn>
Message-Id: <20231018025225.1640122-1-liucong2@kylinos.cn>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20231028103311.347104-18-alex.bennee@linaro.org>
---
contrib/plugins/lockstep.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/contrib/plugins/lockstep.c b/contrib/plugins/lockstep.c
index f0cb8792c6..237543b43a 100644
--- a/contrib/plugins/lockstep.c
+++ b/contrib/plugins/lockstep.c
@@ -257,6 +257,7 @@ static bool setup_socket(const char *path)
sockaddr.sun_family = AF_UNIX;
if (g_strlcpy(sockaddr.sun_path, path, pathlen) >= pathlen) {
perror("bad path");
+ close(fd);
return false;
}
@@ -303,6 +304,7 @@ static bool connect_socket(const char *path)
sockaddr.sun_family = AF_UNIX;
if (g_strlcpy(sockaddr.sun_path, path, pathlen) >= pathlen) {
perror("bad path");
+ close(fd);
return false;
}
--
2.39.2
^ permalink raw reply related [flat|nested] 27+ messages in thread