* [PATCH for 6.1 v1 0/2] tricore fixes
@ 2021-07-19 19:50 Alex Bennée
2021-07-19 19:50 ` [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard Alex Bennée
2021-07-19 19:50 ` [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container Alex Bennée
0 siblings, 2 replies; 10+ messages in thread
From: Alex Bennée @ 2021-07-19 19:50 UTC (permalink / raw)
To: qemu-devel; +Cc: Alex Bennée
Hi,
This fixes check-tcg for tricore and adds a test to the gitlab matrix
so we don't miss it breaking again.
Please review:
- gitlab: enable a very minimal build with the tricore container
- hw/tricore: fix inclusion of tricore_testboard
Alex Bennée (2):
hw/tricore: fix inclusion of tricore_testboard
gitlab: enable a very minimal build with the tricore container
configs/devices/tricore-softmmu/default.mak | 1 +
.gitlab-ci.d/buildtest.yml | 11 +++++
hw/tricore/Kconfig | 3 +-
hw/tricore/meson.build | 4 +-
.../dockerfiles/debian-tricore-cross.docker | 48 +++++++++++++++++--
5 files changed, 58 insertions(+), 9 deletions(-)
--
2.32.0.264.g75ae10bc75
^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-19 19:50 [PATCH for 6.1 v1 0/2] tricore fixes Alex Bennée
@ 2021-07-19 19:50 ` Alex Bennée
2021-07-19 21:21 ` Peter Maydell
2021-07-19 23:09 ` Philippe Mathieu-Daudé
2021-07-19 19:50 ` [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container Alex Bennée
1 sibling, 2 replies; 10+ messages in thread
From: Alex Bennée @ 2021-07-19 19:50 UTC (permalink / raw)
To: qemu-devel; +Cc: Bastian Koppelmann, Alex Bennée
We inadvertently added a symbol clash causing the build not to include
the testboard needed for check-tcg.
Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
configs/devices/tricore-softmmu/default.mak | 1 +
hw/tricore/Kconfig | 3 +--
hw/tricore/meson.build | 4 ++--
3 files changed, 4 insertions(+), 4 deletions(-)
diff --git a/configs/devices/tricore-softmmu/default.mak b/configs/devices/tricore-softmmu/default.mak
index 5cc91cebce..724cb85de7 100644
--- a/configs/devices/tricore-softmmu/default.mak
+++ b/configs/devices/tricore-softmmu/default.mak
@@ -1 +1,2 @@
+CONFIG_TRITEST=y
CONFIG_TRIBOARD=y
diff --git a/hw/tricore/Kconfig b/hw/tricore/Kconfig
index 506e6183c1..a1b2438d99 100644
--- a/hw/tricore/Kconfig
+++ b/hw/tricore/Kconfig
@@ -1,9 +1,8 @@
-config TRICORE
+config TRITEST
bool
config TRIBOARD
bool
- select TRICORE
select TC27X_SOC
config TC27X_SOC
diff --git a/hw/tricore/meson.build b/hw/tricore/meson.build
index 47e36bb077..692a4708ba 100644
--- a/hw/tricore/meson.build
+++ b/hw/tricore/meson.build
@@ -1,6 +1,6 @@
tricore_ss = ss.source_set()
-tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testboard.c'))
-tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testdevice.c'))
+tricore_ss.add(when: 'CONFIG_TRITEST', if_true: files('tricore_testboard.c'))
+tricore_ss.add(when: 'CONFIG_TRITEST', if_true: files('tricore_testdevice.c'))
tricore_ss.add(when: 'CONFIG_TRIBOARD', if_true: files('triboard.c'))
tricore_ss.add(when: 'CONFIG_TC27X_SOC', if_true: files('tc27x_soc.c'))
--
2.32.0.264.g75ae10bc75
^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container
2021-07-19 19:50 [PATCH for 6.1 v1 0/2] tricore fixes Alex Bennée
2021-07-19 19:50 ` [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard Alex Bennée
@ 2021-07-19 19:50 ` Alex Bennée
2021-07-19 21:36 ` Alex Bennée
1 sibling, 1 reply; 10+ messages in thread
From: Alex Bennée @ 2021-07-19 19:50 UTC (permalink / raw)
To: qemu-devel
Cc: Willian Rampazzo, Thomas Huth, Alex Bennée,
Philippe Mathieu-Daudé,
Wainer dos Santos Moschetta
We do the same thing as hexagon and do a two stage build that provides
the minimal dependencies to build qemu-tricore-system and it's
check-tcg tests.
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
.gitlab-ci.d/buildtest.yml | 11 +++++
.../dockerfiles/debian-tricore-cross.docker | 48 +++++++++++++++++--
2 files changed, 54 insertions(+), 5 deletions(-)
diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
index 89df51517c..1f3fbcd965 100644
--- a/.gitlab-ci.d/buildtest.yml
+++ b/.gitlab-ci.d/buildtest.yml
@@ -354,6 +354,17 @@ build-some-softmmu:
TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
MAKE_CHECK_ARGS: check-tcg
+# We build tricore in a very minimal tricore only container
+build-tricore-softmmu:
+ extends: .native_build_job_template
+ needs:
+ job: debian-tricore-cross-container
+ variables:
+ IMAGE: debian-tricore-cross
+ CONFIGURE_ARGS: --disable-tools --enable-debug
+ TARGETS: tricore-softmmu
+ MAKE_CHECK_ARGS: check-tcg
+
clang-system:
extends: .native_build_job_template
needs:
diff --git a/tests/docker/dockerfiles/debian-tricore-cross.docker b/tests/docker/dockerfiles/debian-tricore-cross.docker
index 985925134c..50c87f251f 100644
--- a/tests/docker/dockerfiles/debian-tricore-cross.docker
+++ b/tests/docker/dockerfiles/debian-tricore-cross.docker
@@ -15,9 +15,47 @@ RUN git clone --single-branch \
https://github.com/bkoppelmann/tricore-binutils.git \
/usr/src/binutils && \
cd /usr/src/binutils && chmod +x missing && \
- CFLAGS=-w ./configure --prefix=/usr --disable-nls --target=tricore && \
- make && make install && \
- rm -rf /usr/src/binutils
+ CFLAGS=-w ./configure --prefix=/usr/local --disable-nls --target=tricore && \
+ make && make install
-# This image isn't designed for building QEMU but building tests
-ENV QEMU_CONFIGURE_OPTS --disable-system --disable-user
+FROM debian:buster-slim
+# Duplicate deb line as deb-src
+RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
+# Install QEMU build deps for use in CI
+RUN apt update && \
+ DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
+ DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \
+ build-essential \
+ git \
+ libglib2.0-dev \
+ libpixman-1-dev \
+ ninja-build \
+ python3 \
+ pkg-config
+ bzip2 \
+ ca-certificates \
+ ccache \
+ diffutils \
+ findutils \
+ g++ \
+ gcc \
+ git \
+ libcapstone-dev \
+ libfdt-dev \
+ libglib2.0-dev \
+ libpixman-1-dev \
+ libtest-harness-perl \
+ locales \
+ make \
+ ninja-build \
+ perl-base \
+ pkgconf \
+ python3-pip \
+ python3-setuptools \
+ python3-wheel
+COPY --from=0 /usr/local /usr/local
+ENV PATH $PATH:/usr/local/bin/
+
+# This image can only build a very minimal QEMU as well as the tests
+ENV DEF_TARGET_LIST tricore-softmmu
+ENV QEMU_CONFIGURE_OPTS --disable-user --disable-tools
--
2.32.0.264.g75ae10bc75
^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-19 19:50 ` [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard Alex Bennée
@ 2021-07-19 21:21 ` Peter Maydell
2021-07-20 9:46 ` Alex Bennée
2021-07-19 23:09 ` Philippe Mathieu-Daudé
1 sibling, 1 reply; 10+ messages in thread
From: Peter Maydell @ 2021-07-19 21:21 UTC (permalink / raw)
To: Alex Bennée
Cc: Bastian Koppelmann, f4bug, QEMU Developers, Paolo Bonzini
On Mon, 19 Jul 2021 at 20:52, Alex Bennée <alex.bennee@linaro.org> wrote:
>
> We inadvertently added a symbol clash causing the build not to include
> the testboard needed for check-tcg.
>
> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> configs/devices/tricore-softmmu/default.mak | 1 +
> hw/tricore/Kconfig | 3 +--
> hw/tricore/meson.build | 4 ++--
> 3 files changed, 4 insertions(+), 4 deletions(-)
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
as far as this fix goes (though maybe CONFIG_TRICORE_TESTBOARD would be better?)
But I still don't understand and would like to know:
(1) why doesn't CONFIG_TRICORE get set by Kconfig anyway, as
f4063f9c31 claims to be doing?
(2) what are the CONFIG_$ARCH flags for? Apart from this, we
don't seem to be using any of them, as demonstrated by the fact
that nothing else broke :-)
thanks
-- PMM
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container
2021-07-19 19:50 ` [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container Alex Bennée
@ 2021-07-19 21:36 ` Alex Bennée
0 siblings, 0 replies; 10+ messages in thread
From: Alex Bennée @ 2021-07-19 21:36 UTC (permalink / raw)
To: qemu-devel
Cc: Willian Rampazzo, Thomas Huth, Alex Bennée,
Philippe Mathieu-Daudé,
Wainer dos Santos Moschetta
Alex Bennée <alex.bennee@linaro.org> writes:
> We do the same thing as hexagon and do a two stage build that provides
> the minimal dependencies to build qemu-tricore-system and it's
> check-tcg tests.
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> .gitlab-ci.d/buildtest.yml | 11 +++++
> .../dockerfiles/debian-tricore-cross.docker | 48 +++++++++++++++++--
> 2 files changed, 54 insertions(+), 5 deletions(-)
>
> diff --git a/.gitlab-ci.d/buildtest.yml b/.gitlab-ci.d/buildtest.yml
> index 89df51517c..1f3fbcd965 100644
> --- a/.gitlab-ci.d/buildtest.yml
> +++ b/.gitlab-ci.d/buildtest.yml
> @@ -354,6 +354,17 @@ build-some-softmmu:
> TARGETS: xtensa-softmmu arm-softmmu aarch64-softmmu alpha-softmmu
> MAKE_CHECK_ARGS: check-tcg
>
> +# We build tricore in a very minimal tricore only container
> +build-tricore-softmmu:
> + extends: .native_build_job_template
> + needs:
> + job: debian-tricore-cross-container
> + variables:
> + IMAGE: debian-tricore-cross
> + CONFIGURE_ARGS: --disable-tools --enable-debug
> + TARGETS: tricore-softmmu
> + MAKE_CHECK_ARGS: check-tcg
> +
> clang-system:
> extends: .native_build_job_template
> needs:
> diff --git a/tests/docker/dockerfiles/debian-tricore-cross.docker b/tests/docker/dockerfiles/debian-tricore-cross.docker
> index 985925134c..50c87f251f 100644
> --- a/tests/docker/dockerfiles/debian-tricore-cross.docker
> +++ b/tests/docker/dockerfiles/debian-tricore-cross.docker
> @@ -15,9 +15,47 @@ RUN git clone --single-branch \
> https://github.com/bkoppelmann/tricore-binutils.git \
> /usr/src/binutils && \
> cd /usr/src/binutils && chmod +x missing && \
> - CFLAGS=-w ./configure --prefix=/usr --disable-nls --target=tricore && \
> - make && make install && \
> - rm -rf /usr/src/binutils
> + CFLAGS=-w ./configure --prefix=/usr/local --disable-nls --target=tricore && \
> + make && make install
>
> -# This image isn't designed for building QEMU but building tests
> -ENV QEMU_CONFIGURE_OPTS --disable-system --disable-user
> +FROM debian:buster-slim
> +# Duplicate deb line as deb-src
> +RUN cat /etc/apt/sources.list | sed "s/^deb\ /deb-src /" >> /etc/apt/sources.list
> +# Install QEMU build deps for use in CI
> +RUN apt update && \
> + DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
> + DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \
> + build-essential \
> + git \
> + libglib2.0-dev \
> + libpixman-1-dev \
> + ninja-build \
> + python3 \
> + pkg-config
> + bzip2 \
> + ca-certificates \
> + ccache \
> + diffutils \
> + findutils \
> + g++ \
> + gcc \
> + git \
> + libcapstone-dev \
> + libfdt-dev \
> + libglib2.0-dev \
> + libpixman-1-dev \
> + libtest-harness-perl \
> + locales \
> + make \
> + ninja-build \
> + perl-base \
> + pkgconf \
> + python3-pip \
> + python3-setuptools \
> + python3-wheel
Oops that combined the two lists, it should be:
# Install very minimal QEMU build deps for use in CI
# $ lcitool variables debian-10 qemu+minimal
RUN apt update && \
DEBIAN_FRONTEND=noninteractive apt install -yy eatmydata && \
DEBIAN_FRONTEND=noninteractive eatmydata apt install -yy \
bzip2 \
ca-certificates \
ccache \
g++ \
gcc \
git \
libcapstone-dev \
libfdt-dev \
libglib2.0-dev \
libpixman-1-dev \
libtest-harness-perl \
locales \
make \
ninja-build \
perl-base \
pkgconf \
python3-pip \
python3-setuptools \
python3-wheel
> +COPY --from=0 /usr/local /usr/local
> +ENV PATH $PATH:/usr/local/bin/
> +
> +# This image can only build a very minimal QEMU as well as the tests
> +ENV DEF_TARGET_LIST tricore-softmmu
> +ENV QEMU_CONFIGURE_OPTS --disable-user --disable-tools
--
Alex Bennée
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-19 19:50 ` [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard Alex Bennée
2021-07-19 21:21 ` Peter Maydell
@ 2021-07-19 23:09 ` Philippe Mathieu-Daudé
1 sibling, 0 replies; 10+ messages in thread
From: Philippe Mathieu-Daudé @ 2021-07-19 23:09 UTC (permalink / raw)
To: Alex Bennée, qemu-devel; +Cc: Bastian Koppelmann
On 7/19/21 9:50 PM, Alex Bennée wrote:
> We inadvertently added a symbol clash causing the build not to include
> the testboard needed for check-tcg.
>
> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
Sorry for the mess, I remember having tested this carefully.
OK, so my patch was sent/tested first:
commit f4063f9c319e3924b0c6d09dfe43e94d01253ee0
Message-Id: <20210131111316.232778-6-f4bug@amsat.org>
but got merged *after* Bastian's series:
commit 582079c9d27fc8cfff9f495072300416e0e4aafe
Message-Id: <20210305170045.869437-4-kbastian@mail.uni-paderborn.de>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> ---
> configs/devices/tricore-softmmu/default.mak | 1 +
> hw/tricore/Kconfig | 3 +--
> hw/tricore/meson.build | 4 ++--
> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/configs/devices/tricore-softmmu/default.mak b/configs/devices/tricore-softmmu/default.mak
> index 5cc91cebce..724cb85de7 100644
> --- a/configs/devices/tricore-softmmu/default.mak
> +++ b/configs/devices/tricore-softmmu/default.mak
> @@ -1 +1,2 @@
> +CONFIG_TRITEST=y
> CONFIG_TRIBOARD=y
> diff --git a/hw/tricore/Kconfig b/hw/tricore/Kconfig
> index 506e6183c1..a1b2438d99 100644
> --- a/hw/tricore/Kconfig
> +++ b/hw/tricore/Kconfig
> @@ -1,9 +1,8 @@
> -config TRICORE
> +config TRITEST
> bool
>
> config TRIBOARD
> bool
> - select TRICORE
> select TC27X_SOC
>
> config TC27X_SOC
> diff --git a/hw/tricore/meson.build b/hw/tricore/meson.build
> index 47e36bb077..692a4708ba 100644
> --- a/hw/tricore/meson.build
> +++ b/hw/tricore/meson.build
> @@ -1,6 +1,6 @@
> tricore_ss = ss.source_set()
> -tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testboard.c'))
> -tricore_ss.add(when: 'CONFIG_TRICORE', if_true: files('tricore_testdevice.c'))
> +tricore_ss.add(when: 'CONFIG_TRITEST', if_true: files('tricore_testboard.c'))
> +tricore_ss.add(when: 'CONFIG_TRITEST', if_true: files('tricore_testdevice.c'))
> tricore_ss.add(when: 'CONFIG_TRIBOARD', if_true: files('triboard.c'))
> tricore_ss.add(when: 'CONFIG_TC27X_SOC', if_true: files('tc27x_soc.c'))
>
>
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-19 21:21 ` Peter Maydell
@ 2021-07-20 9:46 ` Alex Bennée
2021-07-20 9:52 ` Peter Maydell
0 siblings, 1 reply; 10+ messages in thread
From: Alex Bennée @ 2021-07-20 9:46 UTC (permalink / raw)
To: Peter Maydell; +Cc: Bastian Koppelmann, f4bug, QEMU Developers, Paolo Bonzini
Peter Maydell <peter.maydell@linaro.org> writes:
> On Mon, 19 Jul 2021 at 20:52, Alex Bennée <alex.bennee@linaro.org> wrote:
>>
>> We inadvertently added a symbol clash causing the build not to include
>> the testboard needed for check-tcg.
>>
>> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> ---
>> configs/devices/tricore-softmmu/default.mak | 1 +
>> hw/tricore/Kconfig | 3 +--
>> hw/tricore/meson.build | 4 ++--
>> 3 files changed, 4 insertions(+), 4 deletions(-)
>
> Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
> as far as this fix goes (though maybe CONFIG_TRICORE_TESTBOARD would be better?)
>
> But I still don't understand and would like to know:
> (1) why doesn't CONFIG_TRICORE get set by Kconfig anyway, as
> f4063f9c31 claims to be doing?
It does (or should) thanks to meson:
'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'
> (2) what are the CONFIG_$ARCH flags for? Apart from this, we
> don't seem to be using any of them, as demonstrated by the fact
> that nothing else broke :-)
They need to be declared in Kconfig otherwise minikconf complains about
them not being defined when you pass it in. This is part of minikconf's
sanity checking code.
>
> thanks
> -- PMM
--
Alex Bennée
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-20 9:46 ` Alex Bennée
@ 2021-07-20 9:52 ` Peter Maydell
2021-07-20 10:35 ` Alex Bennée
0 siblings, 1 reply; 10+ messages in thread
From: Peter Maydell @ 2021-07-20 9:52 UTC (permalink / raw)
To: Alex Bennée
Cc: Bastian Koppelmann, f4bug, QEMU Developers, Paolo Bonzini
On Tue, 20 Jul 2021 at 10:47, Alex Bennée <alex.bennee@linaro.org> wrote:
>
>
> Peter Maydell <peter.maydell@linaro.org> writes:
>
> > On Mon, 19 Jul 2021 at 20:52, Alex Bennée <alex.bennee@linaro.org> wrote:
> >>
> >> We inadvertently added a symbol clash causing the build not to include
> >> the testboard needed for check-tcg.
> >>
> >> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
> >> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> >> ---
> >> configs/devices/tricore-softmmu/default.mak | 1 +
> >> hw/tricore/Kconfig | 3 +--
> >> hw/tricore/meson.build | 4 ++--
> >> 3 files changed, 4 insertions(+), 4 deletions(-)
> >
> > Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
> > as far as this fix goes (though maybe CONFIG_TRICORE_TESTBOARD would be better?)
> >
> > But I still don't understand and would like to know:
> > (1) why doesn't CONFIG_TRICORE get set by Kconfig anyway, as
> > f4063f9c31 claims to be doing?
>
> It does (or should) thanks to meson:
>
> 'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'
Yeah, but it doesn't, as you can see if you look at the meson build
log: we do pass CONFIG_TRICORE=y on the minikconf command line,
but it doesn't appear in minikconf's output!
> > (2) what are the CONFIG_$ARCH flags for? Apart from this, we
> > don't seem to be using any of them, as demonstrated by the fact
> > that nothing else broke :-)
>
> They need to be declared in Kconfig otherwise minikconf complains about
> them not being defined when you pass it in. This is part of minikconf's
> sanity checking code.
No, I mean, if nothing anywhere in the build system is conditional
on these flags, why do we have them at all ? We know we don't
have anything that cares about them, because right now we have
a bug where they're never set...
-- PMM
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-20 9:52 ` Peter Maydell
@ 2021-07-20 10:35 ` Alex Bennée
2021-07-20 11:00 ` Alex Bennée
0 siblings, 1 reply; 10+ messages in thread
From: Alex Bennée @ 2021-07-20 10:35 UTC (permalink / raw)
To: Peter Maydell; +Cc: Bastian Koppelmann, f4bug, QEMU Developers, Paolo Bonzini
Peter Maydell <peter.maydell@linaro.org> writes:
> On Tue, 20 Jul 2021 at 10:47, Alex Bennée <alex.bennee@linaro.org> wrote:
>>
>>
>> Peter Maydell <peter.maydell@linaro.org> writes:
>>
>> > On Mon, 19 Jul 2021 at 20:52, Alex Bennée <alex.bennee@linaro.org> wrote:
>> >>
>> >> We inadvertently added a symbol clash causing the build not to include
>> >> the testboard needed for check-tcg.
>> >>
>> >> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
>> >> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> >> ---
>> >> configs/devices/tricore-softmmu/default.mak | 1 +
>> >> hw/tricore/Kconfig | 3 +--
>> >> hw/tricore/meson.build | 4 ++--
>> >> 3 files changed, 4 insertions(+), 4 deletions(-)
>> >
>> > Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>> > as far as this fix goes (though maybe CONFIG_TRICORE_TESTBOARD would be better?)
>> >
>> > But I still don't understand and would like to know:
>> > (1) why doesn't CONFIG_TRICORE get set by Kconfig anyway, as
>> > f4063f9c31 claims to be doing?
>>
>> It does (or should) thanks to meson:
>>
>> 'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'
>
> Yeah, but it doesn't, as you can see if you look at the meson build
> log: we do pass CONFIG_TRICORE=y on the minikconf command line,
> but it doesn't appear in minikconf's output!
>
>> > (2) what are the CONFIG_$ARCH flags for? Apart from this, we
>> > don't seem to be using any of them, as demonstrated by the fact
>> > that nothing else broke :-)
>>
>> They need to be declared in Kconfig otherwise minikconf complains about
>> them not being defined when you pass it in. This is part of minikconf's
>> sanity checking code.
>
> No, I mean, if nothing anywhere in the build system is conditional
> on these flags, why do we have them at all ? We know we don't
> have anything that cares about them, because right now we have
> a bug where they're never set...
Well we have one place at the moment to ensure v7m gets included even if
you don't include the various M profile boards:
default y if TCG && (ARM || AARCH64)
which is because translate.c still currently has a dependency on those
bits. Without that you'll get a linker failure with the following build:
'../../configure' '--without-default-features' '--target-list=arm-softmmu,aarch64-softmmu' '--with-devices-aarch64=minimal'
I thought I'd added that to the build matrix but I can't find it now.
>
> -- PMM
--
Alex Bennée
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard
2021-07-20 10:35 ` Alex Bennée
@ 2021-07-20 11:00 ` Alex Bennée
0 siblings, 0 replies; 10+ messages in thread
From: Alex Bennée @ 2021-07-20 11:00 UTC (permalink / raw)
To: Peter Maydell; +Cc: Bastian Koppelmann, f4bug, QEMU Developers, Paolo Bonzini
Alex Bennée <alex.bennee@linaro.org> writes:
> Peter Maydell <peter.maydell@linaro.org> writes:
>
>> On Tue, 20 Jul 2021 at 10:47, Alex Bennée <alex.bennee@linaro.org> wrote:
>>>
>>>
>>> Peter Maydell <peter.maydell@linaro.org> writes:
>>>
>>> > On Mon, 19 Jul 2021 at 20:52, Alex Bennée <alex.bennee@linaro.org> wrote:
>>> >>
>>> >> We inadvertently added a symbol clash causing the build not to include
>>> >> the testboard needed for check-tcg.
>>> >>
>>> >> Fixes: f4063f9c31 ("meson: Introduce target-specific Kconfig")
>>> >> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>>> >> ---
>>> >> configs/devices/tricore-softmmu/default.mak | 1 +
>>> >> hw/tricore/Kconfig | 3 +--
>>> >> hw/tricore/meson.build | 4 ++--
>>> >> 3 files changed, 4 insertions(+), 4 deletions(-)
>>> >
>>> > Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
>>> > as far as this fix goes (though maybe CONFIG_TRICORE_TESTBOARD would be better?)
>>> >
>>> > But I still don't understand and would like to know:
>>> > (1) why doesn't CONFIG_TRICORE get set by Kconfig anyway, as
>>> > f4063f9c31 claims to be doing?
>>>
>>> It does (or should) thanks to meson:
>>>
>>> 'CONFIG_' + config_target['TARGET_ARCH'].to_upper() + '=y'
>>
>> Yeah, but it doesn't, as you can see if you look at the meson build
>> log: we do pass CONFIG_TRICORE=y on the minikconf command line,
>> but it doesn't appear in minikconf's output!
>>
>>> > (2) what are the CONFIG_$ARCH flags for? Apart from this, we
>>> > don't seem to be using any of them, as demonstrated by the fact
>>> > that nothing else broke :-)
>>>
>>> They need to be declared in Kconfig otherwise minikconf complains about
>>> them not being defined when you pass it in. This is part of minikconf's
>>> sanity checking code.
>>
>> No, I mean, if nothing anywhere in the build system is conditional
>> on these flags, why do we have them at all ? We know we don't
>> have anything that cares about them, because right now we have
>> a bug where they're never set...
>
> Well we have one place at the moment to ensure v7m gets included even if
> you don't include the various M profile boards:
>
> default y if TCG && (ARM || AARCH64)
>
> which is because translate.c still currently has a dependency on those
> bits. Without that you'll get a linker failure with the following build:
>
> '../../configure' '--without-default-features' '--target-list=arm-softmmu,aarch64-softmmu' '--with-devices-aarch64=minimal'
>
> I thought I'd added that to the build matrix but I can't find it now.
Ahh still part of the larger series:
Subject: [PATCH v16 99/99] gitlab: defend the new stripped down arm64 configs
Date: Fri, 4 Jun 2021 16:53:12 +0100
Message-Id: <20210604155312.15902-100-alex.bennee@linaro.org>
>
>>
>> -- PMM
--
Alex Bennée
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2021-07-20 11:02 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-19 19:50 [PATCH for 6.1 v1 0/2] tricore fixes Alex Bennée
2021-07-19 19:50 ` [PATCH v1 1/2] hw/tricore: fix inclusion of tricore_testboard Alex Bennée
2021-07-19 21:21 ` Peter Maydell
2021-07-20 9:46 ` Alex Bennée
2021-07-20 9:52 ` Peter Maydell
2021-07-20 10:35 ` Alex Bennée
2021-07-20 11:00 ` Alex Bennée
2021-07-19 23:09 ` Philippe Mathieu-Daudé
2021-07-19 19:50 ` [PATCH v1 2/2] gitlab: enable a very minimal build with the tricore container Alex Bennée
2021-07-19 21:36 ` Alex Bennée
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.