diff mbox series

[v3,3/3] RFC: CI: Skip building dtc for world builds

Message ID 20240815195746.749042-4-sjg@chromium.org
State New
Delegated to: Simon Glass
Headers show
Series This series adds a few patches to make it easy to use the system dtc in | expand

Commit Message

Simon Glass Aug. 15, 2024, 7:57 p.m. UTC
This is quite a significant waste of time in the world builds as dtc is
built separately for each board. Skip this to speed up the builds.

Unfortunately the newer dtc produces a lot of warnings, which causes CI
to fail. I am not sure what we can do about this.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

Changes in v3:
- Drop patches previously applied
- Add dtc patches

 .azure-pipelines.yml | 2 +-
 .gitlab-ci.yml       | 8 ++++----
 2 files changed, 5 insertions(+), 5 deletions(-)

Comments

Simon Glass Oct. 10, 2024, 6:50 p.m. UTC | #1
Hi Tom,

On Thu, 15 Aug 2024 at 13:58, Simon Glass <sjg@chromium.org> wrote:
>
> This is quite a significant waste of time in the world builds as dtc is
> built separately for each board. Skip this to speed up the builds.
>
> Unfortunately the newer dtc produces a lot of warnings, which causes CI
> to fail. I am not sure what we can do about this.

What do you think about this one?

We could install an older dtc in the container, perhaps?

>
> Signed-off-by: Simon Glass <sjg@chromium.org>
> ---
>
> Changes in v3:
> - Drop patches previously applied
> - Add dtc patches
>
>  .azure-pipelines.yml | 2 +-
>  .gitlab-ci.yml       | 8 ++++----
>  2 files changed, 5 insertions(+), 5 deletions(-)
>
> diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
> index e1b2f87b974..4bdf1daa59c 100644
> --- a/.azure-pipelines.yml
> +++ b/.azure-pipelines.yml
> @@ -561,7 +561,7 @@ stages:
>            cat << "EOF" >> build.sh
>            if [[ "${BUILDMAN}" != "" ]]; then
>                ret=0;
> -              tools/buildman/buildman -o /tmp -PEWM ${BUILDMAN} ${OVERRIDE} || ret=$?;
> +              tools/buildman/buildman -o /tmp -PEWM --dtc-skip ${BUILDMAN} ${OVERRIDE} || ret=$?;
>                if [[ $ret -ne 0 ]]; then
>                    tools/buildman/buildman -o /tmp -seP ${BUILDMAN};
>                    exit $ret;
> diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
> index 0a15b7352cd..b231b6cd5a4 100644
> --- a/.gitlab-ci.yml
> +++ b/.gitlab-ci.yml
> @@ -104,7 +104,7 @@ build all 32bit ARM platforms:
>      - ret=0;
>        git config --global --add safe.directory "${CI_PROJECT_DIR}";
>        pip install -r tools/buildman/requirements.txt;
> -      ./tools/buildman/buildman -o /tmp -PEWM arm -x aarch64 || ret=$?;
> +      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip arm -x aarch64 || ret=$?;
>        if [[ $ret -ne 0 ]]; then
>          ./tools/buildman/buildman -o /tmp -seP;
>          exit $ret;
> @@ -118,7 +118,7 @@ build all 64bit ARM platforms:
>      - ret=0;
>        git config --global --add safe.directory "${CI_PROJECT_DIR}";
>        pip install -r tools/buildman/requirements.txt;
> -      ./tools/buildman/buildman -o /tmp -PEWM aarch64 || ret=$?;
> +      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip aarch64 || ret=$?;
>        if [[ $ret -ne 0 ]]; then
>          ./tools/buildman/buildman -o /tmp -seP;
>          exit $ret;
> @@ -129,7 +129,7 @@ build all PowerPC platforms:
>    script:
>      - ret=0;
>        git config --global --add safe.directory "${CI_PROJECT_DIR}";
> -      ./tools/buildman/buildman -o /tmp -P -E -W powerpc || ret=$?;
> +      ./tools/buildman/buildman -o /tmp -PEW --dtc-skip powerpc || ret=$?;
>        if [[ $ret -ne 0 ]]; then
>          ./tools/buildman/buildman -o /tmp -seP;
>          exit $ret;
> @@ -140,7 +140,7 @@ build all other platforms:
>    script:
>      - ret=0;
>        git config --global --add safe.directory "${CI_PROJECT_DIR}";
> -      ./tools/buildman/buildman -o /tmp -PEWM -x arm,powerpc || ret=$?;
> +      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip -x arm,powerpc || ret=$?;
>        if [[ $ret -ne 0 ]]; then
>          ./tools/buildman/buildman -o /tmp -seP;
>          exit $ret;
> --
> 2.34.1
>

Regards,
SImon
Tom Rini Oct. 10, 2024, 7:01 p.m. UTC | #2
On Thu, Oct 10, 2024 at 12:50:11PM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Thu, 15 Aug 2024 at 13:58, Simon Glass <sjg@chromium.org> wrote:
> >
> > This is quite a significant waste of time in the world builds as dtc is
> > built separately for each board. Skip this to speed up the builds.
> >
> > Unfortunately the newer dtc produces a lot of warnings, which causes CI
> > to fail. I am not sure what we can do about this.
> 
> What do you think about this one?
> 
> We could install an older dtc in the container, perhaps?

Is backporting applying whatever dtc flags we need to ignore problems
that Linux isn't enforcing so difficult? That would then tell us just
how much work it is / isn't to deal with the rest of the dts files (or
poke maintainers to switch to OF_UPSTREAM where the issues are likely
fixed).
Simon Glass Oct. 14, 2024, 7:13 p.m. UTC | #3
Hi Tom,

On Thu, 10 Oct 2024 at 13:01, Tom Rini <trini@konsulko.com> wrote:
>
> On Thu, Oct 10, 2024 at 12:50:11PM -0600, Simon Glass wrote:
> > Hi Tom,
> >
> > On Thu, 15 Aug 2024 at 13:58, Simon Glass <sjg@chromium.org> wrote:
> > >
> > > This is quite a significant waste of time in the world builds as dtc is
> > > built separately for each board. Skip this to speed up the builds.
> > >
> > > Unfortunately the newer dtc produces a lot of warnings, which causes CI
> > > to fail. I am not sure what we can do about this.
> >
> > What do you think about this one?
> >
> > We could install an older dtc in the container, perhaps?
>
> Is backporting applying whatever dtc flags we need to ignore problems
> that Linux isn't enforcing so difficult? That would then tell us just
> how much work it is / isn't to deal with the rest of the dts files (or
> poke maintainers to switch to OF_UPSTREAM where the issues are likely
> fixed).

That could work. Shall I give it a try and then we apply this patch if
I figure it out?

Regards,
Simon
Tom Rini Oct. 14, 2024, 10:43 p.m. UTC | #4
On Mon, Oct 14, 2024 at 01:13:26PM -0600, Simon Glass wrote:
> Hi Tom,
> 
> On Thu, 10 Oct 2024 at 13:01, Tom Rini <trini@konsulko.com> wrote:
> >
> > On Thu, Oct 10, 2024 at 12:50:11PM -0600, Simon Glass wrote:
> > > Hi Tom,
> > >
> > > On Thu, 15 Aug 2024 at 13:58, Simon Glass <sjg@chromium.org> wrote:
> > > >
> > > > This is quite a significant waste of time in the world builds as dtc is
> > > > built separately for each board. Skip this to speed up the builds.
> > > >
> > > > Unfortunately the newer dtc produces a lot of warnings, which causes CI
> > > > to fail. I am not sure what we can do about this.
> > >
> > > What do you think about this one?
> > >
> > > We could install an older dtc in the container, perhaps?
> >
> > Is backporting applying whatever dtc flags we need to ignore problems
> > that Linux isn't enforcing so difficult? That would then tell us just
> > how much work it is / isn't to deal with the rest of the dts files (or
> > poke maintainers to switch to OF_UPSTREAM where the issues are likely
> > fixed).
> 
> That could work. Shall I give it a try and then we apply this patch if
> I figure it out?

Sure, thanks.
diff mbox series

Patch

diff --git a/.azure-pipelines.yml b/.azure-pipelines.yml
index e1b2f87b974..4bdf1daa59c 100644
--- a/.azure-pipelines.yml
+++ b/.azure-pipelines.yml
@@ -561,7 +561,7 @@  stages:
           cat << "EOF" >> build.sh
           if [[ "${BUILDMAN}" != "" ]]; then
               ret=0;
-              tools/buildman/buildman -o /tmp -PEWM ${BUILDMAN} ${OVERRIDE} || ret=$?;
+              tools/buildman/buildman -o /tmp -PEWM --dtc-skip ${BUILDMAN} ${OVERRIDE} || ret=$?;
               if [[ $ret -ne 0 ]]; then
                   tools/buildman/buildman -o /tmp -seP ${BUILDMAN};
                   exit $ret;
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 0a15b7352cd..b231b6cd5a4 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -104,7 +104,7 @@  build all 32bit ARM platforms:
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
       pip install -r tools/buildman/requirements.txt;
-      ./tools/buildman/buildman -o /tmp -PEWM arm -x aarch64 || ret=$?;
+      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip arm -x aarch64 || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
         exit $ret;
@@ -118,7 +118,7 @@  build all 64bit ARM platforms:
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
       pip install -r tools/buildman/requirements.txt;
-      ./tools/buildman/buildman -o /tmp -PEWM aarch64 || ret=$?;
+      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip aarch64 || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
         exit $ret;
@@ -129,7 +129,7 @@  build all PowerPC platforms:
   script:
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
-      ./tools/buildman/buildman -o /tmp -P -E -W powerpc || ret=$?;
+      ./tools/buildman/buildman -o /tmp -PEW --dtc-skip powerpc || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
         exit $ret;
@@ -140,7 +140,7 @@  build all other platforms:
   script:
     - ret=0;
       git config --global --add safe.directory "${CI_PROJECT_DIR}";
-      ./tools/buildman/buildman -o /tmp -PEWM -x arm,powerpc || ret=$?;
+      ./tools/buildman/buildman -o /tmp -PEWM --dtc-skip -x arm,powerpc || ret=$?;
       if [[ $ret -ne 0 ]]; then
         ./tools/buildman/buildman -o /tmp -seP;
         exit $ret;