<div>Hi.</div><div> </div><div>On cross compile, I found an abnormal operation of make.sh.</div><div> </div><div>In a cross compile system, mkflags excutable gives wrong result code although completely created generated/flags.h</div><div>So, it goes to "exit 1".</div><div> </div><div>line 177 - 178 in scripts/make.sh -------------------------------------------------------------------------------------------------</div><div><em><font color="#666666">done | sort -s | sed -n 's/ A / /;t pair;h;s/\([^ ]*\).*/\1 " "/;x;b single;:pair;h;n;:single;s/[^ ]* B //;H;g;s/\n/ /;p' |\<br>generated/mkflags > generated/flags.h || exit 1</font></em></div><div>---------------------------------------------------------------------------------------------------------------------------------------------</div><div> </div><div>Because above, I analyzed mkflags.c to find the reason why mkflags gives wrong result code.</div><div>The result is that main() returns nothing if it normally exits.</div><div>main() function has int return type and it affacts an build process  on a system.</div><div> </div><div>plz, have a look. </div><div> </div><div> </div><div>diff --git a/scripts/mkflags.c b/scripts/mkflags.c<br>index 454fc03..1ae4c40 100644<br>--- a/scripts/mkflags.c<br>+++ b/scripts/mkflags.c<br>@@ -206,4 +206,5 @@ int main(int argc, char *argv[])<br>     if (i<0) return 1;<br>     out += i;<br>   }<br>+  return 0;<br> }</div>