[PATCH 4/4] build: fix that LZO file is always rebuilt
Sam Ravnborg
sam at ravnborg.org
Fri Jan 5 23:34:49 PST 2018
Hi Sascha.
> > > +# (needed for the shell)
> > > +make-cmd = $(call escsq,$(subst \#,\\\#,$(subst $$,$$$$,$(cmd_$(1)))))
> > >
> >
> > This doesn't work for me. Without this patch I do not see any rebuilds
> > of lzo files, but with this patch I do.
> >
> > Seems you are using another shell, dash vs. bash? Porting the second
> > hunk of the kernel commit 164f0d2efaaef83 fixes it for me.
$ sh --version
GNU bash, version 4.2.46(1)-release (x86_64-redhat-linux-gnu)
This is a CentOS based system.
>
> Ok, applied with the missing hunk from 164f0d2efaaef83:
>
> @@ -220,7 +222,7 @@ any-prereq = $(filter-out $(PHONY),$?) $(filter-out $(PHONY) $(wildcard $^),$^)
> if_changed = $(if $(strip $(any-prereq) $(arg-check)), \
> @set -e; \
> $(echo-cmd) $(cmd_$(1)); \
> - echo 'cmd_$@ := $(make-cmd)' > $(dot-target).cmd)
> + printf '%s\n' 'cmd_$@ := $(make-cmd)' > $(dot-target).cmd)
>
The above snip have no impact on my system - which is why I left it out.
To try to do minimal changes only.
I should have mentioned this - as well as the specific reference to the
kernel commit.
but in other words - tested with the above change. OK.
Sam
More information about the barebox
mailing list