On Tue, Apr 21, 2020 at 2:31 PM Rob Herring <robh@xxxxxxxxxx> wrote: > > On Tue, Apr 21, 2020 at 11:57 AM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote: > > > > Hi Rob, > > > > > > On Tue, Apr 21, 2020 at 11:01 PM Rob Herring <robh@xxxxxxxxxx> wrote: > > > > > > > > It seems to only fail with out of tree builds (O=...). I expect that > > > > failures will become more common the more YAML bindings we have, even > > > > without long directory names. > > > > > > dt-mk-schema can take and recurse a single directory already, so does > > > this fix it for you: > > > > > > @@ -22,7 +22,7 @@ $(obj)/%.example.dts: $(src)/%.yaml > > > check_dtschema_version FORCE > > > DT_TMP_SCHEMA := $(obj)/processed-schema-examples.yaml > > > > > > quiet_cmd_mk_schema = SCHEMA $@ > > > - cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ > > > $(real-prereqs) > > > + cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ > > > $(srctree)/$(src) > > > > > > I am just curious. > > > > How come the tool excludes 'processed-schema*' and '*.example.dt.yaml' > > from $(srctree)/$(src) ? > > Uggg, it wouldn't. Can't everyone build out of tree. ;) I guess the options are: > > - Call dt-mk-schema on each file individually appending the result > - Make dt-mk-schema take stdin or a file with a list of files as > Masahiro suggested > > I'd like to avoid a dt-mk-schema change so I'll try to make the former > work. It's only been a day since adding a minimum version. :( Laurent, does this work for you? I've reproduced the problem, but just double checking. DT_TMP_SCHEMA := $(obj)/processed-schema-examples.yaml quiet_cmd_mk_schema = SCHEMA $@ - cmd_mk_schema = $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ $(real-prereqs) + cmd_mk_schema = $(file >$@.tmp, $(real-prereqs)) \ + cat $@.tmp | xargs $(DT_MK_SCHEMA) $(DT_MK_SCHEMA_FLAGS) -o $@ DT_DOCS = $(addprefix $(src)/, \ $(shell \