On 05/16/2017 08:36 AM, Belal, Awais wrote:
The standard way to fix too long #! lines in oe is to patch
upstream code to use #!/usr/bin/env something (where something is
just the binary name).

Why not simply replace ${POSIX_SHELL} with /bin/sh? Where and how
is it set?

POSIX_SHELL is being set to "/usr/bin/env sh" already through the
recipe but it gets resolved/expanded to
<build-dir>/hosttools/<shell-bin> during the configuration process so
it's not usable for shebang in deep directory hierarchy scenarios. I
guess a better way would be simply to use the same technique that
we're using for perl. So for shell we'll have

#!/usr/bin/env sh

in mk-tpl-config.sh directly. I'll submit the change as v2 if you
think this is okay.

You should not patch out the use of POSIX_SHELL after the fact. Find where it is resolved/expanded in the source code in the first place, and patch it there. Also, please check why setting POSIX_SHELL in the recipe no longer has any effect - there is a patch called 0001-config-libopts.m4-regenerate-it-from-config-libopts.patch which should do the trick, but does not.

Alex

--
_______________________________________________
Openembedded-core mailing list
[email protected]
http://lists.openembedded.org/mailman/listinfo/openembedded-core

Reply via email to