From: Juro Bystricky Date: Wed, 15 Mar 2017 16:37:39 +0000 (-0700) Subject: sanity.bbclass: modify check for shell X-Git-Tag: uninative-1.6~188 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=ef51746cdd12e6b08109e9bd90a0a465c3f9f93c;p=openembedded-core.git sanity.bbclass: modify check for shell Due to the recently implemented update-alternatives for bash binary, sanity checker may end up with a (false-positive) error such as: Error, /bin/sh links to /bin/bash.bash, must be dash or bash This patch modifies the test: presence of "/bash" or "/dash" in shell binary name results in pass. [YOCTO#11108] Signed-off-by: Juro Bystricky Signed-off-by: Richard Purdie --- diff --git a/meta/classes/sanity.bbclass b/meta/classes/sanity.bbclass index b5f4756f81..e3be40bf94 100644 --- a/meta/classes/sanity.bbclass +++ b/meta/classes/sanity.bbclass @@ -935,7 +935,9 @@ def check_sanity_everybuild(status, d): # If /bin/sh is a symlink, check that it points to dash or bash if os.path.islink('/bin/sh'): real_sh = os.path.realpath('/bin/sh') - if not real_sh.endswith('/dash') and not real_sh.endswith('/bash'): + # Due to update-alternatives, the shell name may take various + # forms, such as /bin/dash, bin/bash, /bin/bash.bash ... + if '/dash' not in real_sh and '/bash' not in real_sh: status.addresult("Error, /bin/sh links to %s, must be dash or bash\n" % real_sh) def check_sanity(sanity_data):