Hi Rasmus, Thanks for the patch, I've tested it.
On Thu, Apr 22, 2021 at 10:44 AM Rasmus Villemoes <rasmus.villem...@prevas.dk> wrote: > > When CONFIG_USE_DEFAULT_ENV_FILE=y and the file > CONFIG_DEFAULT_ENV_FILE is empty (or at least doesn't contain any > non-comment, non-empty lines), we end up feeding nothing into xxd, > which in turn then outputs nothing. Then blindly appending ", 0x00" > means that we end up trying to compile (roughly) > > const char defaultenv[] = { , 0x00 } > > which is of course broken. > > To fix that, change the frobbing of the text file so that we always > end up printing an extra empty line (which gets turned into that extra > nul byte we need) - that corresponds better to the binary format > consisting of a series of key=val nul terminated strings, terminated > by an empty string. > > Reported-by: Oleksandr Suvorov <oleksandr.suvo...@toradex.com> > Signed-off-by: Rasmus Villemoes <rasmus.villem...@prevas.dk> Reviewed-by: Oleksandr Suvorov <oleksandr.suvo...@toradex.com> > --- > Makefile | 5 ++--- > 1 file changed, 2 insertions(+), 3 deletions(-) > > diff --git a/Makefile b/Makefile > index 3fc9777b0b..b7af2b936d 100644 > --- a/Makefile > +++ b/Makefile > @@ -1854,11 +1854,10 @@ define filechk_timestamp.h > endef > > define filechk_defaultenv.h > - (grep -v '^#' | \ > - grep -v '^$$' | \ > + ( { grep -v '^#' | grep -v '^$$' || true ; echo '' ; } | \ > tr '\n' '\0' | \ > sed -e 's/\\\x0\s*//g' | \ > - xxd -i ; echo ", 0x00" ; ) > + xxd -i ; ) > endef > > define filechk_dt.h > -- > 2.29.2 > -- Best regards Oleksandr Suvorov Toradex AG Ebenaustrasse 10 | 6048 Horw | Switzerland | T: +41 41 500 48 00