Re: [PATCH] dt-bindings: kbuild: Print a warning if yamllint is not found

From: Rob Herring
Date: Fri Mar 04 2022 - 08:56:07 EST


On Fri, Mar 04, 2022 at 09:59:12AM +0100, Geert Uytterhoeven wrote:
> Hi Rob,
>
> On Thu, Mar 3, 2022 at 11:15 PM Rob Herring <robh@xxxxxxxxxx> wrote:
> > Running yamllint is effectively required for binding schemas, so print a
> > warning if not found rather than silently skipping running it.
> >
> > Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
>
> Thanks for your patch!
>
> > --- a/Documentation/devicetree/bindings/Makefile
> > +++ b/Documentation/devicetree/bindings/Makefile
> > @@ -3,7 +3,8 @@ DT_DOC_CHECKER ?= dt-doc-validate
> > DT_EXTRACT_EX ?= dt-extract-example
> > DT_MK_SCHEMA ?= dt-mk-schema
> >
> > -DT_SCHEMA_LINT = $(shell which yamllint)
> > +DT_SCHEMA_LINT := $(shell which yamllint || \
> > + echo "warning: yamllint not installed, skipping. To install, run 'pip install yamllint'" >&2)
>
> Do we want to encourage people to use pip, instead of their distro's
> package manager? At least Debian/Ubuntu provide yamllint packages.
>
> So perhaps drop the install rule?

Okay, that's what I originally had. I'm sure someone will want to
document 'how to install yamllint' somewhere. Maybe I'll say:

warning: python package 'yamllint' not installed, skipping

To give some hint how to install.

I'm not sure exactly, but there is a minimum version of yamllint so it
is possible the distro versions are too old. IIRC, unknown config
settings throw an error. I think at the time I did the config everything
had been around for at least a year or 2 and I don't think anyone has
reported issues.

Rob