[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAL_JsqJTEL5Z+Qmerfdwn43KtKYQi02T+M2C1nUGUyqNFhYeTw@mail.gmail.com>
Date: Tue, 17 May 2022 08:38:05 -0500
From: Rob Herring <robh@...nel.org>
To: Masahiro Yamada <masahiroy@...nel.org>
Cc: Krzysztof Kozlowski <krzk+dt@...nel.org>,
DTML <devicetree@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] dt-bindings: Remove example file on dt-extract-example error
On Mon, May 16, 2022 at 10:03 PM Masahiro Yamada <masahiroy@...nel.org> wrote:
>
> On Tue, May 17, 2022 at 10:12 AM Rob Herring <robh@...nel.org> wrote:
> >
> > On Wed, May 11, 2022 at 09:27:00AM +0900, Masahiro Yamada wrote:
> > > On Wed, May 11, 2022 at 7:13 AM Rob Herring <robh@...nel.org> wrote:
> > > >
> > > > As 'dt-extract-example' writes the example dts files to stdout, a file
> > > > is always created even on an error such as Ctrl-C. The resulting empty
> > > > file(s) then cause unexpected errors on subsequent builds. Fix this by
> > > > removing the output file on any error.
> > > >
> > >
> > >
> > > Did you really set it?
> >
> > Set what?
>
> Sorry for the typo. I meant "Did you really see it?"
>
>
> >
> > I'm sure I've gotten empty files which then throw errors on the next
> > run.
>
>
> Hmm, OK.
>
> When you observed this issue, were you using
> a pipe to another program?
>
> For example,
>
> $ make dt_binding_check 2>&1 | tee dt_binding_check.log
>
Indeed, I am. I only do that all the time in my build script...
>
> > > The target deletion on interrupt is automatic
> > > since the following commit:
> > >
> > >
> > >
> > > commit 9c2af1c7377a8a6ef86e5cabf80978f3dbbb25c0
> > > Author: Masahiro Yamada <yamada.masahiro@...ionext.com>
> > > Date: Fri Jul 20 16:46:33 2018 +0900
> > >
> > > kbuild: add .DELETE_ON_ERROR special target
> >
> > You're saying I shouldn't need this change? For some reason I do...
> >
> > Rob
>
>
> If .DELETE_ON_ERROR works as the manual [1] explains,
>
> [1] https://www.gnu.org/software/make/manual/make.html#Special-Targets
>
> the deletion of the target is automatic.
>
>
> Basically, it worked like that, except when Make is piped to another program.
>
> I asked this in GNU Make ML before.
>
> When Make is piped to another program, which is terminated by Ctrl-C,
> Make is also killed by SIGPIPE before cleaning up the incomplete targets.
Humm, that seems to make the feature less useful to rely on.
Rob
Powered by blists - more mailing lists