Un-clean scripts/dtc causing buildman failure

Marcel Ziswiler marcel at ziswiler.com
Sun Jan 9 01:02:52 CET 2022


Hi Simon

On Sat, 2022-01-08 at 07:54 -0700, Simon Glass wrote:
> Hi Marcel,
> 
> On Sat, 8 Jan 2022 at 07:22, Marcel Ziswiler <marcel at ziswiler.com> wrote:
> > 
> > Hi Simon et al.
> > 
> > Somehow doing an mrproper does not seem to clean intermediate file in scripts/dtc:
> > 
> > ⬢[zim at toolbox u-boot.git]$ make mrproper
> > ⬢[zim at toolbox u-boot.git]$ git status --ignored scripts/dtc
> > On branch master
> > Your branch is up to date with 'origin/master'.
> > 
> > Ignored files:
> >   (use "git add -f <file>..." to include in what will be committed)
> >         scripts/dtc/dtc
> >         scripts/dtc/pylibfdt/libfdt.i
> >         scripts/dtc/pylibfdt/libfdt.py
> >         scripts/dtc/pylibfdt/libfdt_wrap.c
> > 
> > nothing to commit, working tree clean
> > 
> > Unfortunately later running buildman off such a tree than fails:
> > 
> > ⬢[zim at toolbox u-boot.git]$ tools/buildman/buildman verdin-imx8mm
> > Building current source for 1 boards (1 thread, 16 jobs per thread)
> >    aarch64:  +   verdin-imx8mm
> > +/usr/bin/which: no dtc in (./scripts/dtc)
> > +Unable to find file 'scripts/dtc/pylibfdt/libfdt.i'.
> > +error: command '/usr/bin/swig' failed with exit code 1
> > +make[3]: *** [scripts/dtc/pylibfdt/Makefile:30: rebuild] Error 1
> > +make[2]: *** [scripts/Makefile.build:394: scripts/dtc/pylibfdt] Error 2
> > +make[1]: *** [Makefile:1970: scripts_dtc] Error 2
> > +make: *** [Makefile:177: sub-make] Error 2
> >     0    0    1 /1              verdin-imx8mm
> > Completed: 1 total built, duration 0:00:05, rate 0.20
> > 
> > Is this a known issue? Shouldn't a mrproper also clean such intermediate files?
> 
> Yes, that seems like a bug.

I had a look at it but, unfortunately, I am not too proficient with U-Boot's Makefile stuff. What I found out
is that scripts/dtc/pylibfdt/Makefile actually ads them all to clean-files. However, I guess that is never
actually used anywhere at least in U-Boot and upstream libfdt seems to have changed considerably in that area.

Anyway, the root Makefile has a whole section about cleaning plus there is also a scripts/Makefile.clean.
However, I can't quite figure out how this all works together.

> > BTW: Any news on getting that libfdt stuff updated to work with latest tooling (e.g. as used in Fedora 35)?
> 
> Can you give me more detail on this?

Sorry, I thought I inquired about this once before. This is what I am talking about:

⬢[zim at toolbox u-boot.git]$ cat /etc/fedora-release 
Fedora release 35 (Thirty Five)
⬢[zim at toolbox u-boot.git]$ tools/buildman/buildman verdin-imx8mm
Building current source for 1 boards (1 thread, 16 jobs per thread)
   aarch64:  w+   verdin-imx8mm             
+/usr/bin/which: no dtc in (./scripts/dtc)
+scripts/dtc/pylibfdt/setup.py:21: DeprecationWarning: The distutils package is deprecated and slated for
removal in Python 3.12. Use setuptools or check PEP 632 for potential alternatives
+  from distutils.core import setup, Extension
+tools/binman/binman:12: DeprecationWarning: The distutils package is deprecated and slated for removal in
Python 3.12. Use setuptools or check PEP 632 for potential alternatives
+  from distutils.sysconfig import get_python_lib
+tools/binman/binman:12: DeprecationWarning: The distutils.sysconfig module is deprecated, use sysconfig
instead
    0    1    0 /1              verdin-imx8mm
Completed: 1 total built, duration 0:00:16, rate 0.06

> Regards,
> Simon

Cheers

Marcel


More information about the U-Boot mailing list